barsa-sap-ui 2.2.55 → 2.2.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +3 -12
- package/esm2022/lib/barsa-chat/chat.model.mjs +1 -1
- package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +68 -17
- package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +5 -4
- package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +9 -3
- package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +5 -3
- package/esm2022/lib/column-renderer/column-renderer.component.mjs +3 -3
- package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +2 -2
- package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +2 -2
- package/esm2022/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +3 -3
- package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +3 -3
- package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +7 -1
- package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +2 -2
- package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +2 -2
- package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +4 -3
- package/fesm2022/barsa-sap-ui.mjs +109 -55
- package/fesm2022/barsa-sap-ui.mjs.map +1 -1
- package/lib/barsa-chat/barsa-chat.component.d.ts +0 -1
- package/lib/barsa-chat/chat.model.d.ts +1 -1
- package/lib/barsa-chat-list/barsa-chat-list.component.d.ts +12 -4
- package/lib/barsa-table-header/barsa-table-header.component.d.ts +1 -0
- package/lib/barsa-ulv-main/barsa-ulv-main.component.d.ts +2 -1
- package/lib/ui-report-container/ui-report-container.component.d.ts +1 -0
- package/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -30,17 +30,8 @@ export class BarsaChatComponent extends FormBaseComponent {
|
|
|
30
30
|
ngOnDestroy() {
|
|
31
31
|
document.body.classList.remove('chat-mode');
|
|
32
32
|
}
|
|
33
|
-
scrollToBottom(force = false, instant = false) {
|
|
34
|
-
const container = (this._el?.nativeElement).querySelector('#chatContentElement');
|
|
35
|
-
if (force || (container && container.scrollTopMax - container.scrollTop < 300)) {
|
|
36
|
-
setTimeout(() => container?.scrollTo({
|
|
37
|
-
top: container.scrollHeight,
|
|
38
|
-
behavior: instant ? 'instant' : 'smooth'
|
|
39
|
-
}));
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
33
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaChatComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaChatComponent, selector: "bsu-barsa-chat", inputs: { simple: "simple" }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"tw-flex tw-w-full tw-bg-gradient-to-r tw-from-[#5d6e7f] tw-to-[#354a5f] dark:tw-from-[#253443] dark:tw-to-[#10161c]\"\r\n fillEmptySpace\r\n [class.tw-h-screen]=\"!simple\"\r\n [class.tw-justify-center]=\"simple\"\r\n>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n <div\r\n class=\"tw-h-full tw-flex 2xl:tw-container max-w-[80rem] tw-shrink-0 tw-relative\"\r\n [ngClass]=\"{\r\n 'tw-grow 2xl:tw-grow-0': !simple,\r\n 'tw-w-full': simple\r\n }\"\r\n >\r\n @if (!simple) {\r\n <div class=\"tw-grow-0 tw-shrink-0 tw-w-full md:tw-w-96 tw-p-0 md:tw-p-6\">\r\n <div\r\n class=\"tw-flex tw-flex-col tw-w-full tw-h-full tw-overflow-hidden tw-border-l tw-border-l-gray-300 md:tw-rounded-2xl md:tw-border md:tw-border-l-gray-300 md:tw-border-gray-300 dark:tw-border-l-gray-600 md:dark:tw-border-l-gray-600 md:dark:tw-border-gray-600\"\r\n >\r\n <bsu-barsa-chat-threads-list-toolbar></bsu-barsa-chat-threads-list-toolbar>\r\n <bsu-barsa-chat-threads-list>\r\n <!-- @for (thread of threads; track thread.id) {\r\n <bsu-barsa-chat-thread [thread]=\"thread\" ></bsu-barsa-chat-thread>\r\n } -->\r\n </bsu-barsa-chat-threads-list>\r\n </div>\r\n </div>\r\n } @else {\r\n <div\r\n class=\"tw-absolute tw-top-0 tw-left-0 tw-w-full tw-h-full tw-bg-[url('assets/chat-bg.png')] tw-bg-fixed tw-opacity-25\"\r\n ></div>\r\n }\r\n <div\r\n class=\"tw-grow tw-shrink tw-relative\"\r\n [ngClass]=\"{\r\n 'md:tw-py-6 md:tw-pl-6 tw-hidden md:tw-flex': !simple,\r\n 'tw-flex': simple\r\n }\"\r\n >\r\n\r\n <div\r\n @inContentAnimation\r\n class=\"tw-h-full tw-w-full tw-flex tw-flex-col tw-relative md:tw-border-gray-300 md:dark:tw-border-gray-600 tw-overflow-hidden\"\r\n [ngClass]=\"{\r\n 'md:tw-border md:tw-rounded-2xl': !simple\r\n }\"\r\n >\r\n\r\n <bsu-barsa-chat-content id=\"chat-container\">\r\n @if(layout94$ | async;as layout94){ @if ('\u0644\u06CC\u0633\u062A \u06AF\u0641\u062A\u06AF\u0648' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </bsu-barsa-chat-content>\r\n <div\r\n class=\"tw-w-full\"\r\n [ngClass]=\"{\r\n 'tw-relative': !simple,\r\n '2xl:tw-rounded-t-xl tw-grow-0 tw-shrink-0': simple\r\n }\"\r\n >\r\n @if (replyingMessage()) {\r\n <div\r\n @inOutReplyingMessage\r\n class=\"tw-w-full tw-px-2 tw-py-1 tw-border-r-4 tw-border-r-bubble-mine tw-flex tw-gap-2 te-items-center tw-absolute tw-z-0 tw-bg-default tw-right-0 -tw-top-14\"\r\n >\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n class=\"tw-grow-0 tw-shrink-0\"\r\n (click)=\"replyingMessage.set(null)\"\r\n ></button>\r\n <div class=\"tw-flex tw-flex-col tw-grow tw-shrink tw-overflow-hidden\">\r\n <span class=\"tw-font-bold\">{{ replyingMessage().owner.name }}</span>\r\n <span class=\"tw-truncate\">{{\r\n replyingMessage().text ?? replyingMessage().file?.name ?? replyingMessage().image?.name\r\n }}</span>\r\n </div>\r\n <div class=\"tw-w-8 tw-shrink-0 tw-grow-0\"></div>\r\n </div>\r\n }\r\n <div\r\n class=\"tw-w-full tw-p-2 tw-flex tw-gap-2 tw-border-t tw-border-t-gray-300 dark:tw-border-t-gray-600 tw-bg-default tw-items-end tw-z-10\"\r\n >\r\n @if(layout94$ | async;as layout94){ @if ('\u0631\u062F\u06CC\u0641 \u06AF\u0641\u062A\u06AF\u0648 \u0645\u0648\u062C\u0648\u062F\u06CC\u062A' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div\r\n class=\"tw-absolute tw-top-1/2 -tw-translate-y-1/2 tw-left-1/2 -tw-translate-x-1/2 tw-flex tw-flex-col tw-gap-8 tw-items-center\"\r\n >\r\n <img src=\"assets/not-selected-chat.png\" class=\"tw-w-64 tw-opacity-25\"
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaChatComponent, selector: "bsu-barsa-chat", inputs: { simple: "simple" }, providers: [FormPanelService], usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"tw-flex tw-w-full tw-bg-gradient-to-r tw-from-[#5d6e7f] tw-to-[#354a5f] dark:tw-from-[#253443] dark:tw-to-[#10161c]\"\r\n fillEmptySpace\r\n [class.tw-h-screen]=\"!simple\"\r\n [class.tw-justify-center]=\"simple\"\r\n>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n <div\r\n class=\"tw-h-full tw-flex 2xl:tw-container max-w-[80rem] tw-shrink-0 tw-relative\"\r\n [ngClass]=\"{\r\n 'tw-grow 2xl:tw-grow-0': !simple,\r\n 'tw-w-full': simple\r\n }\"\r\n >\r\n @if (!simple) {\r\n <div class=\"tw-grow-0 tw-shrink-0 tw-w-full md:tw-w-96 tw-p-0 md:tw-p-6\">\r\n <div\r\n class=\"tw-flex tw-flex-col tw-w-full tw-h-full tw-overflow-hidden tw-border-l tw-border-l-gray-300 md:tw-rounded-2xl md:tw-border md:tw-border-l-gray-300 md:tw-border-gray-300 dark:tw-border-l-gray-600 md:dark:tw-border-l-gray-600 md:dark:tw-border-gray-600\"\r\n >\r\n <bsu-barsa-chat-threads-list-toolbar></bsu-barsa-chat-threads-list-toolbar>\r\n <bsu-barsa-chat-threads-list>\r\n <!-- @for (thread of threads; track thread.id) {\r\n <bsu-barsa-chat-thread [thread]=\"thread\" ></bsu-barsa-chat-thread>\r\n } -->\r\n </bsu-barsa-chat-threads-list>\r\n </div>\r\n </div>\r\n } @else {\r\n <div\r\n class=\"tw-absolute tw-top-0 tw-left-0 tw-w-full tw-h-full tw-bg-[url('assets/chat-bg.png')] tw-bg-fixed tw-opacity-25\"\r\n ></div>\r\n }\r\n <div\r\n class=\"tw-grow tw-shrink tw-relative\"\r\n [ngClass]=\"{\r\n 'md:tw-py-6 md:tw-pl-6 tw-hidden md:tw-flex': !simple,\r\n 'tw-flex': simple\r\n }\"\r\n >\r\n\r\n <div\r\n @inContentAnimation\r\n class=\"tw-h-full tw-w-full tw-flex tw-flex-col tw-relative md:tw-border-gray-300 md:dark:tw-border-gray-600 tw-overflow-hidden\"\r\n [ngClass]=\"{\r\n 'md:tw-border md:tw-rounded-2xl': !simple\r\n }\"\r\n >\r\n\r\n <bsu-barsa-chat-content id=\"chat-container\">\r\n @if(layout94$ | async;as layout94){ @if ('\u0644\u06CC\u0633\u062A \u06AF\u0641\u062A\u06AF\u0648' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\" style=\"flex:1\"></bsu-layout-control>\r\n } }\r\n </bsu-barsa-chat-content>\r\n <div\r\n class=\"tw-w-full\"\r\n [ngClass]=\"{\r\n 'tw-relative': !simple,\r\n '2xl:tw-rounded-t-xl tw-grow-0 tw-shrink-0': simple\r\n }\"\r\n >\r\n @if (replyingMessage()) {\r\n <div\r\n @inOutReplyingMessage\r\n class=\"tw-w-full tw-px-2 tw-py-1 tw-border-r-4 tw-border-r-bubble-mine tw-flex tw-gap-2 te-items-center tw-absolute tw-z-0 tw-bg-default tw-right-0 -tw-top-14\"\r\n >\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n class=\"tw-grow-0 tw-shrink-0\"\r\n (click)=\"replyingMessage.set(null)\"\r\n ></button>\r\n <div class=\"tw-flex tw-flex-col tw-grow tw-shrink tw-overflow-hidden\">\r\n <span class=\"tw-font-bold\">{{ replyingMessage().owner.name }}</span>\r\n <span class=\"tw-truncate\">{{\r\n replyingMessage().text ?? replyingMessage().file?.name ?? replyingMessage().image?.name\r\n }}</span>\r\n </div>\r\n <div class=\"tw-w-8 tw-shrink-0 tw-grow-0\"></div>\r\n </div>\r\n }\r\n <div\r\n class=\"tw-w-full tw-p-2 tw-flex tw-gap-2 tw-border-t tw-border-t-gray-300 dark:tw-border-t-gray-600 tw-bg-default tw-items-end tw-z-10\"\r\n >\r\n @if(layout94$ | async;as layout94){ @if ('\u0631\u062F\u06CC\u0641 \u06AF\u0641\u062A\u06AF\u0648 \u0645\u0648\u062C\u0648\u062F\u06CC\u062A' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div\r\n class=\"tw-absolute tw-top-1/2 -tw-translate-y-1/2 tw-left-1/2 -tw-translate-x-1/2 tw-flex tw-flex-col tw-gap-8 tw-items-center\"\r\n >\r\n <!-- <img src=\"assets/not-selected-chat.png\" class=\"tw-w-64 tw-opacity-25\" /> -->\r\n <!-- <span class=\"tw-text-xl tw-font-bold tw-text-gray-400 dark:tw-text-gray-500\">-->\r\n <!-- \u0628\u0631\u0627\u06CC \u0634\u0631\u0648\u0639 \u06CC\u06A9 \u0686\u062A \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646\u06CC\u062F-->\r\n <!-- </span>-->\r\n </div>\r\n \r\n </div>\r\n </div>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.FillEmptySpaceDirective, selector: "[fillEmptySpace]", inputs: ["containerDom", "decrement", "disable", "height", "dontUseTopBound", "setMinHeight"], outputs: ["heightChanged"], exportAs: ["fillEmptySpace"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.LayoutControlComponent, selector: "bsu-layout-control", inputs: ["inlineEdit", "caption", "focusControl", "showLabel", "maxLabelWidth", "hasHorizontalText", "contentDensity", "flex", "RefreshLabel", "SetVisible"], outputs: ["events"] }, { kind: "component", type: i5.BarsaChatContentComponent, selector: "bsu-barsa-chat-content" }, { kind: "component", type: i6.BarsaChatThreadsListComponent, selector: "bsu-barsa-chat-threads-list" }, { kind: "component", type: i7.BarsaChatThreadsListToolbarComponent, selector: "bsu-barsa-chat-threads-list-toolbar" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.ControlUiPipe, name: "controlUi" }], animations: [
|
|
44
35
|
trigger('inContentAnimation', [
|
|
45
36
|
transition(':enter', [
|
|
46
37
|
style({ opacity: 0, transform: 'scale(50%, 50%)' }),
|
|
@@ -86,8 +77,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
86
77
|
animate('300ms ease-in', style({ opacity: 0, transform: 'translateY(50%)' }))
|
|
87
78
|
])
|
|
88
79
|
])
|
|
89
|
-
], standalone: false, template: "<div\r\n class=\"tw-flex tw-w-full tw-bg-gradient-to-r tw-from-[#5d6e7f] tw-to-[#354a5f] dark:tw-from-[#253443] dark:tw-to-[#10161c]\"\r\n fillEmptySpace\r\n [class.tw-h-screen]=\"!simple\"\r\n [class.tw-justify-center]=\"simple\"\r\n>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n <div\r\n class=\"tw-h-full tw-flex 2xl:tw-container max-w-[80rem] tw-shrink-0 tw-relative\"\r\n [ngClass]=\"{\r\n 'tw-grow 2xl:tw-grow-0': !simple,\r\n 'tw-w-full': simple\r\n }\"\r\n >\r\n @if (!simple) {\r\n <div class=\"tw-grow-0 tw-shrink-0 tw-w-full md:tw-w-96 tw-p-0 md:tw-p-6\">\r\n <div\r\n class=\"tw-flex tw-flex-col tw-w-full tw-h-full tw-overflow-hidden tw-border-l tw-border-l-gray-300 md:tw-rounded-2xl md:tw-border md:tw-border-l-gray-300 md:tw-border-gray-300 dark:tw-border-l-gray-600 md:dark:tw-border-l-gray-600 md:dark:tw-border-gray-600\"\r\n >\r\n <bsu-barsa-chat-threads-list-toolbar></bsu-barsa-chat-threads-list-toolbar>\r\n <bsu-barsa-chat-threads-list>\r\n <!-- @for (thread of threads; track thread.id) {\r\n <bsu-barsa-chat-thread [thread]=\"thread\" ></bsu-barsa-chat-thread>\r\n } -->\r\n </bsu-barsa-chat-threads-list>\r\n </div>\r\n </div>\r\n } @else {\r\n <div\r\n class=\"tw-absolute tw-top-0 tw-left-0 tw-w-full tw-h-full tw-bg-[url('assets/chat-bg.png')] tw-bg-fixed tw-opacity-25\"\r\n ></div>\r\n }\r\n <div\r\n class=\"tw-grow tw-shrink tw-relative\"\r\n [ngClass]=\"{\r\n 'md:tw-py-6 md:tw-pl-6 tw-hidden md:tw-flex': !simple,\r\n 'tw-flex': simple\r\n }\"\r\n >\r\n\r\n <div\r\n @inContentAnimation\r\n class=\"tw-h-full tw-w-full tw-flex tw-flex-col tw-relative md:tw-border-gray-300 md:dark:tw-border-gray-600 tw-overflow-hidden\"\r\n [ngClass]=\"{\r\n 'md:tw-border md:tw-rounded-2xl': !simple\r\n }\"\r\n >\r\n\r\n <bsu-barsa-chat-content id=\"chat-container\">\r\n @if(layout94$ | async;as layout94){ @if ('\u0644\u06CC\u0633\u062A \u06AF\u0641\u062A\u06AF\u0648' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </bsu-barsa-chat-content>\r\n <div\r\n class=\"tw-w-full\"\r\n [ngClass]=\"{\r\n 'tw-relative': !simple,\r\n '2xl:tw-rounded-t-xl tw-grow-0 tw-shrink-0': simple\r\n }\"\r\n >\r\n @if (replyingMessage()) {\r\n <div\r\n @inOutReplyingMessage\r\n class=\"tw-w-full tw-px-2 tw-py-1 tw-border-r-4 tw-border-r-bubble-mine tw-flex tw-gap-2 te-items-center tw-absolute tw-z-0 tw-bg-default tw-right-0 -tw-top-14\"\r\n >\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n class=\"tw-grow-0 tw-shrink-0\"\r\n (click)=\"replyingMessage.set(null)\"\r\n ></button>\r\n <div class=\"tw-flex tw-flex-col tw-grow tw-shrink tw-overflow-hidden\">\r\n <span class=\"tw-font-bold\">{{ replyingMessage().owner.name }}</span>\r\n <span class=\"tw-truncate\">{{\r\n replyingMessage().text ?? replyingMessage().file?.name ?? replyingMessage().image?.name\r\n }}</span>\r\n </div>\r\n <div class=\"tw-w-8 tw-shrink-0 tw-grow-0\"></div>\r\n </div>\r\n }\r\n <div\r\n class=\"tw-w-full tw-p-2 tw-flex tw-gap-2 tw-border-t tw-border-t-gray-300 dark:tw-border-t-gray-600 tw-bg-default tw-items-end tw-z-10\"\r\n >\r\n @if(layout94$ | async;as layout94){ @if ('\u0631\u062F\u06CC\u0641 \u06AF\u0641\u062A\u06AF\u0648 \u0645\u0648\u062C\u0648\u062F\u06CC\u062A' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div\r\n class=\"tw-absolute tw-top-1/2 -tw-translate-y-1/2 tw-left-1/2 -tw-translate-x-1/2 tw-flex tw-flex-col tw-gap-8 tw-items-center\"\r\n >\r\n <img src=\"assets/not-selected-chat.png\" class=\"tw-w-64 tw-opacity-25\"
|
|
80
|
+
], standalone: false, template: "<div\r\n class=\"tw-flex tw-w-full tw-bg-gradient-to-r tw-from-[#5d6e7f] tw-to-[#354a5f] dark:tw-from-[#253443] dark:tw-to-[#10161c]\"\r\n fillEmptySpace\r\n [class.tw-h-screen]=\"!simple\"\r\n [class.tw-justify-center]=\"simple\"\r\n>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n <div\r\n class=\"tw-h-full tw-flex 2xl:tw-container max-w-[80rem] tw-shrink-0 tw-relative\"\r\n [ngClass]=\"{\r\n 'tw-grow 2xl:tw-grow-0': !simple,\r\n 'tw-w-full': simple\r\n }\"\r\n >\r\n @if (!simple) {\r\n <div class=\"tw-grow-0 tw-shrink-0 tw-w-full md:tw-w-96 tw-p-0 md:tw-p-6\">\r\n <div\r\n class=\"tw-flex tw-flex-col tw-w-full tw-h-full tw-overflow-hidden tw-border-l tw-border-l-gray-300 md:tw-rounded-2xl md:tw-border md:tw-border-l-gray-300 md:tw-border-gray-300 dark:tw-border-l-gray-600 md:dark:tw-border-l-gray-600 md:dark:tw-border-gray-600\"\r\n >\r\n <bsu-barsa-chat-threads-list-toolbar></bsu-barsa-chat-threads-list-toolbar>\r\n <bsu-barsa-chat-threads-list>\r\n <!-- @for (thread of threads; track thread.id) {\r\n <bsu-barsa-chat-thread [thread]=\"thread\" ></bsu-barsa-chat-thread>\r\n } -->\r\n </bsu-barsa-chat-threads-list>\r\n </div>\r\n </div>\r\n } @else {\r\n <div\r\n class=\"tw-absolute tw-top-0 tw-left-0 tw-w-full tw-h-full tw-bg-[url('assets/chat-bg.png')] tw-bg-fixed tw-opacity-25\"\r\n ></div>\r\n }\r\n <div\r\n class=\"tw-grow tw-shrink tw-relative\"\r\n [ngClass]=\"{\r\n 'md:tw-py-6 md:tw-pl-6 tw-hidden md:tw-flex': !simple,\r\n 'tw-flex': simple\r\n }\"\r\n >\r\n\r\n <div\r\n @inContentAnimation\r\n class=\"tw-h-full tw-w-full tw-flex tw-flex-col tw-relative md:tw-border-gray-300 md:dark:tw-border-gray-600 tw-overflow-hidden\"\r\n [ngClass]=\"{\r\n 'md:tw-border md:tw-rounded-2xl': !simple\r\n }\"\r\n >\r\n\r\n <bsu-barsa-chat-content id=\"chat-container\">\r\n @if(layout94$ | async;as layout94){ @if ('\u0644\u06CC\u0633\u062A \u06AF\u0641\u062A\u06AF\u0648' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\" style=\"flex:1\"></bsu-layout-control>\r\n } }\r\n </bsu-barsa-chat-content>\r\n <div\r\n class=\"tw-w-full\"\r\n [ngClass]=\"{\r\n 'tw-relative': !simple,\r\n '2xl:tw-rounded-t-xl tw-grow-0 tw-shrink-0': simple\r\n }\"\r\n >\r\n @if (replyingMessage()) {\r\n <div\r\n @inOutReplyingMessage\r\n class=\"tw-w-full tw-px-2 tw-py-1 tw-border-r-4 tw-border-r-bubble-mine tw-flex tw-gap-2 te-items-center tw-absolute tw-z-0 tw-bg-default tw-right-0 -tw-top-14\"\r\n >\r\n <button\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"decline\"\r\n class=\"tw-grow-0 tw-shrink-0\"\r\n (click)=\"replyingMessage.set(null)\"\r\n ></button>\r\n <div class=\"tw-flex tw-flex-col tw-grow tw-shrink tw-overflow-hidden\">\r\n <span class=\"tw-font-bold\">{{ replyingMessage().owner.name }}</span>\r\n <span class=\"tw-truncate\">{{\r\n replyingMessage().text ?? replyingMessage().file?.name ?? replyingMessage().image?.name\r\n }}</span>\r\n </div>\r\n <div class=\"tw-w-8 tw-shrink-0 tw-grow-0\"></div>\r\n </div>\r\n }\r\n <div\r\n class=\"tw-w-full tw-p-2 tw-flex tw-gap-2 tw-border-t tw-border-t-gray-300 dark:tw-border-t-gray-600 tw-bg-default tw-items-end tw-z-10\"\r\n >\r\n @if(layout94$ | async;as layout94){ @if ('\u0631\u062F\u06CC\u0641 \u06AF\u0641\u062A\u06AF\u0648 \u0645\u0648\u062C\u0648\u062F\u06CC\u062A' | controlUi: layout94; as configUi) {\r\n <bsu-layout-control [config]=\"configUi\"></bsu-layout-control>\r\n } }\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div\r\n class=\"tw-absolute tw-top-1/2 -tw-translate-y-1/2 tw-left-1/2 -tw-translate-x-1/2 tw-flex tw-flex-col tw-gap-8 tw-items-center\"\r\n >\r\n <!-- <img src=\"assets/not-selected-chat.png\" class=\"tw-w-64 tw-opacity-25\" /> -->\r\n <!-- <span class=\"tw-text-xl tw-font-bold tw-text-gray-400 dark:tw-text-gray-500\">-->\r\n <!-- \u0628\u0631\u0627\u06CC \u0634\u0631\u0648\u0639 \u06CC\u06A9 \u0686\u062A \u0631\u0627 \u0627\u0646\u062A\u062E\u0627\u0628 \u06A9\u0646\u06CC\u062F-->\r\n <!-- </span>-->\r\n </div>\r\n \r\n </div>\r\n </div>\r\n @if (!simple) {\r\n <div class=\"tw-bg-black/[.3] 2xl:tw-grow tw-shrink tw-h-full\"></div>\r\n }\r\n</div>\r\n" }]
|
|
90
81
|
}], propDecorators: { simple: [{
|
|
91
82
|
type: Input
|
|
92
83
|
}] } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtY2hhdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9iYXJzYS1jaGF0L2JhcnNhLWNoYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtY2hhdC9iYXJzYS1jaGF0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7O0FBK0IzRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsaUJBQWlCO0lBN0J6RDs7UUE4QmEsV0FBTSxHQUFHLElBQUksQ0FBQztRQUV2QixXQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ2pCLG1CQUFjLEdBQStCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxhQUFRLEdBQWlDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RCxvQkFBZSxHQUErQixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0Qsb0JBQWUsR0FBRyxFQUFFLENBQUM7S0FzQnhCO0lBckJHLFlBQVksQ0FBQyxNQUFNO1FBQ2YsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMvQyxDQUFDO0lBQ0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixRQUFRLENBQUMsSUFB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Q0FBQzs2QkFDbkYsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNqQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDO2dDQUNyRCxPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQzs2QkFDaEYsQ0FBQzt5QkFDTCxDQUFDO3dCQUNGLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRTs0QkFDNUIsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDakIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQztnQ0FDbkQsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7NkJBQy9FLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDakIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUM7Z0NBQ2pELE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDOzZCQUNoRixDQUFDO3lCQUNMLENBQUM7cUJBQ0wsY0FDVyxLQUFLOzhCQUdSLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBqbW9tZW50IGZyb20gJ21vbWVudC1qYWxhYWxpJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgRm9ybUJhc2VDb21wb25lbnQsIEZvcm1QYW5lbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LWJhcnNhLWNoYXQnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLWNoYXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2JhcnNhLWNoYXQuY29tcG9uZW50LmNzcycsXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXSxcclxuICAgIGFuaW1hdGlvbnM6IFtcclxuICAgICAgICB0cmlnZ2VyKCdpbkNvbnRlbnRBbmltYXRpb24nLCBbXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAnc2NhbGUoNTAlLCA1MCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdzY2FsZSgxMDAlLCAxMDAlKScgfSkpXHJcbiAgICAgICAgICAgIF0pLFxyXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXHJcbiAgICAgICAgICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3NjYWxlKDEwMCUsIDEwMCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3NjYWxlKDUwJSwgNTAlKScgfSkpXHJcbiAgICAgICAgICAgIF0pXHJcbiAgICAgICAgXSksXHJcbiAgICAgICAgdHJpZ2dlcignaW5PdXRSZXBseWluZ01lc3NhZ2UnLCBbXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg1MCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApJyB9KSlcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSksXHJcbiAgICAgICAgICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDUwJSknIH0pKVxyXG4gICAgICAgICAgICBdKVxyXG4gICAgICAgIF0pXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhcnNhQ2hhdENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgc2ltcGxlID0gdHJ1ZTtcclxuXHJcbiAgICBtb21lbnQgPSBqbW9tZW50O1xyXG4gICAgc2VsZWN0ZWRUaHJlYWQ6IFdyaXRhYmxlU2lnbmFsPGFueSB8IG51bGw+ID0gc2lnbmFsKG51bGwpO1xyXG4gICAgbWVzc2FnZXM6IFdyaXRhYmxlU2lnbmFsPGFueVtdIHwgbnVsbD4gPSBzaWduYWwobnVsbCk7XHJcbiAgICByZXBseWluZ01lc3NhZ2U6IFdyaXRhYmxlU2lnbmFsPGFueSB8IG51bGw+ID0gc2lnbmFsKG51bGwpO1xyXG4gICAgX25ld01lc3NhZ2VUZXh0ID0gJyc7XHJcbiAgICBvblRleHRDaGFuZ2UoJGV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fbmV3TWVzc2FnZVRleHQgPSAkZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2NoYXQtbW9kZScpO1xyXG4gICAgfVxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdjaGF0LW1vZGUnKTtcclxuICAgIH1cclxuICAgIHNjcm9sbFRvQm90dG9tKGZvcmNlID0gZmFsc2UsIGluc3RhbnQgPSBmYWxzZSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGNvbnRhaW5lciA9ICh0aGlzLl9lbD8ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkucXVlcnlTZWxlY3RvcignI2NoYXRDb250ZW50RWxlbWVudCcpIGFzIGFueTtcclxuICAgICAgICBpZiAoZm9yY2UgfHwgKGNvbnRhaW5lciAmJiBjb250YWluZXIuc2Nyb2xsVG9wTWF4IC0gY29udGFpbmVyLnNjcm9sbFRvcCA8IDMwMCkpIHtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PlxyXG4gICAgICAgICAgICAgICAgY29udGFpbmVyPy5zY3JvbGxUbyh7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjb250YWluZXIuc2Nyb2xsSGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiBpbnN0YW50ID8gJ2luc3RhbnQnIDogJ3Ntb290aCdcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxkaXZcclxuICAgIGNsYXNzPVwidHctZmxleCB0dy13LWZ1bGwgdHctYmctZ3JhZGllbnQtdG8tciB0dy1mcm9tLVsjNWQ2ZTdmXSB0dy10by1bIzM1NGE1Zl0gZGFyazp0dy1mcm9tLVsjMjUzNDQzXSBkYXJrOnR3LXRvLVsjMTAxNjFjXVwiXHJcbiAgICBmaWxsRW1wdHlTcGFjZVxyXG4gICAgW2NsYXNzLnR3LWgtc2NyZWVuXT1cIiFzaW1wbGVcIlxyXG4gICAgW2NsYXNzLnR3LWp1c3RpZnktY2VudGVyXT1cInNpbXBsZVwiXHJcbj5cclxuICAgIEBpZiAoIXNpbXBsZSkge1xyXG4gICAgPGRpdiBjbGFzcz1cInR3LWJnLWJsYWNrL1suM10gMnhsOnR3LWdyb3cgdHctc2hyaW5rIHR3LWgtZnVsbFwiPjwvZGl2PlxyXG4gICAgfVxyXG4gICAgPGRpdlxyXG4gICAgICAgIGNsYXNzPVwidHctaC1mdWxsIHR3LWZsZXggMnhsOnR3LWNvbnRhaW5lciBtYXgtdy1bODByZW1dIHR3LXNocmluay0wIHR3LXJlbGF0aXZlXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICd0dy1ncm93IDJ4bDp0dy1ncm93LTAnOiAhc2ltcGxlLFxyXG4gICAgICAgICAgICAndHctdy1mdWxsJzogc2ltcGxlXHJcbiAgICAgICAgfVwiXHJcbiAgICA+XHJcbiAgICAgICAgQGlmICghc2ltcGxlKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInR3LWdyb3ctMCB0dy1zaHJpbmstMCB0dy13LWZ1bGwgbWQ6dHctdy05NiB0dy1wLTAgbWQ6dHctcC02XCI+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidHctZmxleCB0dy1mbGV4LWNvbCB0dy13LWZ1bGwgdHctaC1mdWxsIHR3LW92ZXJmbG93LWhpZGRlbiB0dy1ib3JkZXItbCB0dy1ib3JkZXItbC1ncmF5LTMwMCBtZDp0dy1yb3VuZGVkLTJ4bCBtZDp0dy1ib3JkZXIgbWQ6dHctYm9yZGVyLWwtZ3JheS0zMDAgbWQ6dHctYm9yZGVyLWdyYXktMzAwIGRhcms6dHctYm9yZGVyLWwtZ3JheS02MDAgbWQ6ZGFyazp0dy1ib3JkZXItbC1ncmF5LTYwMCBtZDpkYXJrOnR3LWJvcmRlci1ncmF5LTYwMFwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgIDxic3UtYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QtdG9vbGJhcj48L2JzdS1iYXJzYS1jaGF0LXRocmVhZHMtbGlzdC10b29sYmFyPlxyXG4gICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1jaGF0LXRocmVhZHMtbGlzdD5cclxuICAgICAgICAgICAgICAgICAgICA8IS0tIEBmb3IgKHRocmVhZCBvZiB0aHJlYWRzOyB0cmFjayB0aHJlYWQuaWQpIHtcclxuICAgICAgICAgICAgICAgICAgICA8YnN1LWJhcnNhLWNoYXQtdGhyZWFkIFt0aHJlYWRdPVwidGhyZWFkXCIgPjwvYnN1LWJhcnNhLWNoYXQtdGhyZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIH0gLS0+XHJcbiAgICAgICAgICAgICAgICA8L2JzdS1iYXJzYS1jaGF0LXRocmVhZHMtbGlzdD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICBjbGFzcz1cInR3LWFic29sdXRlIHR3LXRvcC0wIHR3LWxlZnQtMCB0dy13LWZ1bGwgdHctaC1mdWxsIHR3LWJnLVt1cmwoJ2Fzc2V0cy9jaGF0LWJnLnBuZycpXSB0dy1iZy1maXhlZCB0dy1vcGFjaXR5LTI1XCJcclxuICAgICAgICA+PC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJ0dy1ncm93IHR3LXNocmluayB0dy1yZWxhdGl2ZVwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgICAgICdtZDp0dy1weS02IG1kOnR3LXBsLTYgdHctaGlkZGVuIG1kOnR3LWZsZXgnOiAhc2ltcGxlLFxyXG4gICAgICAgICAgICAgICAgJ3R3LWZsZXgnOiBzaW1wbGVcclxuICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgPlxyXG5cclxuICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgQGluQ29udGVudEFuaW1hdGlvblxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0dy1oLWZ1bGwgdHctdy1mdWxsIHR3LWZsZXggdHctZmxleC1jb2wgdHctcmVsYXRpdmUgbWQ6dHctYm9yZGVyLWdyYXktMzAwIG1kOmRhcms6dHctYm9yZGVyLWdyYXktNjAwIHR3LW92ZXJmbG93LWhpZGRlblwiXHJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAgICAgJ21kOnR3LWJvcmRlciBtZDp0dy1yb3VuZGVkLTJ4bCc6ICFzaW1wbGVcclxuICAgICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+XHJcblxyXG4gICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1jaGF0LWNvbnRlbnQgaWQ9XCJjaGF0LWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIEBpZihsYXlvdXQ5NCQgfCBhc3luYzthcyBsYXlvdXQ5NCl7IEBpZiAoJ9mE24zYs9iqINqv2YHYqtqv2YgnIHwgY29udHJvbFVpOiBsYXlvdXQ5NDsgYXMgY29uZmlnVWkpIHtcclxuICAgICAgICAgICAgICAgICAgICA8YnN1LWxheW91dC1jb250cm9sIFtjb25maWddPVwiY29uZmlnVWlcIj48L2JzdS1sYXlvdXQtY29udHJvbD5cclxuICAgICAgICAgICAgICAgICAgICB9IH1cclxuICAgICAgICAgICAgICAgIDwvYnN1LWJhcnNhLWNoYXQtY29udGVudD5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInR3LXctZnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAndHctcmVsYXRpdmUnOiAhc2ltcGxlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnMnhsOnR3LXJvdW5kZWQtdC14bCB0dy1ncm93LTAgdHctc2hyaW5rLTAnOiBzaW1wbGVcclxuICAgICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICBAaWYgKHJlcGx5aW5nTWVzc2FnZSgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5PdXRSZXBseWluZ01lc3NhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0dy13LWZ1bGwgdHctcHgtMiB0dy1weS0xIHR3LWJvcmRlci1yLTQgdHctYm9yZGVyLXItYnViYmxlLW1pbmUgdHctZmxleCB0dy1nYXAtMiB0ZS1pdGVtcy1jZW50ZXIgdHctYWJzb2x1dGUgdHctei0wIHR3LWJnLWRlZmF1bHQgdHctcmlnaHQtMCAtdHctdG9wLTE0XCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHctZ3Jvdy0wIHR3LXNocmluay0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZXBseWluZ01lc3NhZ2Uuc2V0KG51bGwpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctZmxleCB0dy1mbGV4LWNvbCB0dy1ncm93IHR3LXNocmluayB0dy1vdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctZm9udC1ib2xkXCI+e3sgcmVwbHlpbmdNZXNzYWdlKCkub3duZXIubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctdHJ1bmNhdGVcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGx5aW5nTWVzc2FnZSgpLnRleHQgPz8gcmVwbHlpbmdNZXNzYWdlKCkuZmlsZT8ubmFtZSA/PyByZXBseWluZ01lc3NhZ2UoKS5pbWFnZT8ubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctdy04IHR3LXNocmluay0wIHR3LWdyb3ctMFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHctdy1mdWxsIHR3LXAtMiB0dy1mbGV4IHR3LWdhcC0yIHR3LWJvcmRlci10IHR3LWJvcmRlci10LWdyYXktMzAwIGRhcms6dHctYm9yZGVyLXQtZ3JheS02MDAgdHctYmctZGVmYXVsdCB0dy1pdGVtcy1lbmQgdHctei0xMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIEBpZihsYXlvdXQ5NCQgfCBhc3luYzthcyBsYXlvdXQ5NCl7IEBpZiAoJ9ix2K/bjNmBINqv2YHYqtqv2Ygg2YXZiNis2YjYr9uM2KonIHwgY29udHJvbFVpOiBsYXlvdXQ5NDsgYXMgY29uZmlnVWkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJzdS1sYXlvdXQtY29udHJvbCBbY29uZmlnXT1cImNvbmZpZ1VpXCI+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gfVxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInR3LWFic29sdXRlIHR3LXRvcC0xLzIgLXR3LXRyYW5zbGF0ZS15LTEvMiB0dy1sZWZ0LTEvMiAtdHctdHJhbnNsYXRlLXgtMS8yIHR3LWZsZXggdHctZmxleC1jb2wgdHctZ2FwLTggdHctaXRlbXMtY2VudGVyXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGltZyBzcmM9XCJhc3NldHMvbm90LXNlbGVjdGVkLWNoYXQucG5nXCIgY2xhc3M9XCJ0dy13LTY0IHR3LW9wYWNpdHktMjVcIiAvPlxyXG4gICAgICAgICAgICAgICAgPCEtLSAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctdGV4dC14bCB0dy1mb250LWJvbGQgdHctdGV4dC1ncmF5LTQwMCBkYXJrOnR3LXRleHQtZ3JheS01MDBcIj4tLT5cclxuICAgICAgICAgICAgICAgIDwhLS0gICAgICAgICAgICAgICAg2KjYsdin24wg2LTYsdmI2Lkg24zaqSDahtiqINix2Kcg2KfZhtiq2K7Yp9ioINqp2YbbjNivLS0+XHJcbiAgICAgICAgICAgICAgICA8IS0tICAgICAgICAgICAgPC9zcGFuPi0tPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAoIXNpbXBsZSkge1xyXG4gICAgPGRpdiBjbGFzcz1cInR3LWJnLWJsYWNrL1suM10gMnhsOnR3LWdyb3cgdHctc2hyaW5rIHR3LWgtZnVsbFwiPjwvZGl2PlxyXG4gICAgfVxyXG48L2Rpdj5cclxuIl19
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtY2hhdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1zYXAtdWkvc3JjL2xpYi9iYXJzYS1jaGF0L2JhcnNhLWNoYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtY2hhdC9iYXJzYS1jaGF0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWtCLE1BQU0sZUFBZSxDQUFDO0FBQzVGLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7O0FBK0IzRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsaUJBQWlCO0lBN0J6RDs7UUE4QmEsV0FBTSxHQUFHLElBQUksQ0FBQztRQUV2QixXQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ2pCLG1CQUFjLEdBQStCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxhQUFRLEdBQWlDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RCxvQkFBZSxHQUErQixNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0Qsb0JBQWUsR0FBRyxFQUFFLENBQUM7S0FXeEI7SUFWRyxZQUFZLENBQUMsTUFBTTtRQUNmLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDL0MsQ0FBQztJQUNELFFBQVE7UUFDSixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsUUFBUSxDQUFDLElBQUks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QUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7NkJBQy9FLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDakIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLENBQUM7Z0NBQ2pELE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDOzZCQUNoRixDQUFDO3lCQUNMLENBQUM7cUJBQ0wsY0FDVyxLQUFLOzhCQUdSLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBqbW9tZW50IGZyb20gJ21vbWVudC1qYWxhYWxpJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgRm9ybUJhc2VDb21wb25lbnQsIEZvcm1QYW5lbFNlcnZpY2UgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYnN1LWJhcnNhLWNoYXQnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLWNoYXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2JhcnNhLWNoYXQuY29tcG9uZW50LmNzcycsXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtUGFuZWxTZXJ2aWNlXSxcclxuICAgIGFuaW1hdGlvbnM6IFtcclxuICAgICAgICB0cmlnZ2VyKCdpbkNvbnRlbnRBbmltYXRpb24nLCBbXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAnc2NhbGUoNTAlLCA1MCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdzY2FsZSgxMDAlLCAxMDAlKScgfSkpXHJcbiAgICAgICAgICAgIF0pLFxyXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBbXHJcbiAgICAgICAgICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3NjYWxlKDEwMCUsIDEwMCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2UtaW4nLCBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3NjYWxlKDUwJSwgNTAlKScgfSkpXHJcbiAgICAgICAgICAgIF0pXHJcbiAgICAgICAgXSksXHJcbiAgICAgICAgdHJpZ2dlcignaW5PdXRSZXBseWluZ01lc3NhZ2UnLCBbXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSg1MCUpJyB9KSxcclxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApJyB9KSlcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcclxuICAgICAgICAgICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScgfSksXHJcbiAgICAgICAgICAgICAgICBhbmltYXRlKCczMDBtcyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDUwJSknIH0pKVxyXG4gICAgICAgICAgICBdKVxyXG4gICAgICAgIF0pXHJcbiAgICBdLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhcnNhQ2hhdENvbXBvbmVudCBleHRlbmRzIEZvcm1CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgc2ltcGxlID0gdHJ1ZTtcclxuXHJcbiAgICBtb21lbnQgPSBqbW9tZW50O1xyXG4gICAgc2VsZWN0ZWRUaHJlYWQ6IFdyaXRhYmxlU2lnbmFsPGFueSB8IG51bGw+ID0gc2lnbmFsKG51bGwpO1xyXG4gICAgbWVzc2FnZXM6IFdyaXRhYmxlU2lnbmFsPGFueVtdIHwgbnVsbD4gPSBzaWduYWwobnVsbCk7XHJcbiAgICByZXBseWluZ01lc3NhZ2U6IFdyaXRhYmxlU2lnbmFsPGFueSB8IG51bGw+ID0gc2lnbmFsKG51bGwpO1xyXG4gICAgX25ld01lc3NhZ2VUZXh0ID0gJyc7XHJcbiAgICBvblRleHRDaGFuZ2UoJGV2ZW50KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fbmV3TWVzc2FnZVRleHQgPSAkZXZlbnQudGFyZ2V0LnZhbHVlO1xyXG4gICAgfVxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoJ2NoYXQtbW9kZScpO1xyXG4gICAgfVxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QucmVtb3ZlKCdjaGF0LW1vZGUnKTtcclxuICAgIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgICBjbGFzcz1cInR3LWZsZXggdHctdy1mdWxsIHR3LWJnLWdyYWRpZW50LXRvLXIgdHctZnJvbS1bIzVkNmU3Zl0gdHctdG8tWyMzNTRhNWZdIGRhcms6dHctZnJvbS1bIzI1MzQ0M10gZGFyazp0dy10by1bIzEwMTYxY11cIlxyXG4gICAgZmlsbEVtcHR5U3BhY2VcclxuICAgIFtjbGFzcy50dy1oLXNjcmVlbl09XCIhc2ltcGxlXCJcclxuICAgIFtjbGFzcy50dy1qdXN0aWZ5LWNlbnRlcl09XCJzaW1wbGVcIlxyXG4+XHJcbiAgICBAaWYgKCFzaW1wbGUpIHtcclxuICAgIDxkaXYgY2xhc3M9XCJ0dy1iZy1ibGFjay9bLjNdIDJ4bDp0dy1ncm93IHR3LXNocmluayB0dy1oLWZ1bGxcIj48L2Rpdj5cclxuICAgIH1cclxuICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cInR3LWgtZnVsbCB0dy1mbGV4IDJ4bDp0dy1jb250YWluZXIgbWF4LXctWzgwcmVtXSB0dy1zaHJpbmstMCB0dy1yZWxhdGl2ZVwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAndHctZ3JvdyAyeGw6dHctZ3Jvdy0wJzogIXNpbXBsZSxcclxuICAgICAgICAgICAgJ3R3LXctZnVsbCc6IHNpbXBsZVxyXG4gICAgICAgIH1cIlxyXG4gICAgPlxyXG4gICAgICAgIEBpZiAoIXNpbXBsZSkge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0dy1ncm93LTAgdHctc2hyaW5rLTAgdHctdy1mdWxsIG1kOnR3LXctOTYgdHctcC0wIG1kOnR3LXAtNlwiPlxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInR3LWZsZXggdHctZmxleC1jb2wgdHctdy1mdWxsIHR3LWgtZnVsbCB0dy1vdmVyZmxvdy1oaWRkZW4gdHctYm9yZGVyLWwgdHctYm9yZGVyLWwtZ3JheS0zMDAgbWQ6dHctcm91bmRlZC0yeGwgbWQ6dHctYm9yZGVyIG1kOnR3LWJvcmRlci1sLWdyYXktMzAwIG1kOnR3LWJvcmRlci1ncmF5LTMwMCBkYXJrOnR3LWJvcmRlci1sLWdyYXktNjAwIG1kOmRhcms6dHctYm9yZGVyLWwtZ3JheS02MDAgbWQ6ZGFyazp0dy1ib3JkZXItZ3JheS02MDBcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8YnN1LWJhcnNhLWNoYXQtdGhyZWFkcy1saXN0LXRvb2xiYXI+PC9ic3UtYmFyc2EtY2hhdC10aHJlYWRzLWxpc3QtdG9vbGJhcj5cclxuICAgICAgICAgICAgICAgIDxic3UtYmFyc2EtY2hhdC10aHJlYWRzLWxpc3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSBAZm9yICh0aHJlYWQgb2YgdGhyZWFkczsgdHJhY2sgdGhyZWFkLmlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGJzdS1iYXJzYS1jaGF0LXRocmVhZCBbdGhyZWFkXT1cInRocmVhZFwiID48L2JzdS1iYXJzYS1jaGF0LXRocmVhZD5cclxuICAgICAgICAgICAgICAgICAgICB9IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9ic3UtYmFyc2EtY2hhdC10aHJlYWRzLWxpc3Q+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIDxkaXZcclxuICAgICAgICAgICAgY2xhc3M9XCJ0dy1hYnNvbHV0ZSB0dy10b3AtMCB0dy1sZWZ0LTAgdHctdy1mdWxsIHR3LWgtZnVsbCB0dy1iZy1bdXJsKCdhc3NldHMvY2hhdC1iZy5wbmcnKV0gdHctYmctZml4ZWQgdHctb3BhY2l0eS0yNVwiXHJcbiAgICAgICAgPjwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwidHctZ3JvdyB0dy1zaHJpbmsgdHctcmVsYXRpdmVcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAgICAgICAnbWQ6dHctcHktNiBtZDp0dy1wbC02IHR3LWhpZGRlbiBtZDp0dy1mbGV4JzogIXNpbXBsZSxcclxuICAgICAgICAgICAgICAgICd0dy1mbGV4Jzogc2ltcGxlXHJcbiAgICAgICAgICAgIH1cIlxyXG4gICAgICAgID5cclxuXHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgIEBpbkNvbnRlbnRBbmltYXRpb25cclxuICAgICAgICAgICAgICAgIGNsYXNzPVwidHctaC1mdWxsIHR3LXctZnVsbCB0dy1mbGV4IHR3LWZsZXgtY29sIHR3LXJlbGF0aXZlIG1kOnR3LWJvcmRlci1ncmF5LTMwMCBtZDpkYXJrOnR3LWJvcmRlci1ncmF5LTYwMCB0dy1vdmVyZmxvdy1oaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICdtZDp0dy1ib3JkZXIgbWQ6dHctcm91bmRlZC0yeGwnOiAhc2ltcGxlXHJcbiAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgPlxyXG5cclxuICAgICAgICAgICAgICAgIDxic3UtYmFyc2EtY2hhdC1jb250ZW50IGlkPVwiY2hhdC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICBAaWYobGF5b3V0OTQkIHwgYXN5bmM7YXMgbGF5b3V0OTQpeyBAaWYgKCfZhNuM2LPYqiDar9mB2Krar9mIJyB8IGNvbnRyb2xVaTogbGF5b3V0OTQ7IGFzIGNvbmZpZ1VpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGJzdS1sYXlvdXQtY29udHJvbCBbY29uZmlnXT1cImNvbmZpZ1VpXCIgc3R5bGU9XCJmbGV4OjFcIj48L2JzdS1sYXlvdXQtY29udHJvbD5cclxuICAgICAgICAgICAgICAgICAgICB9IH1cclxuICAgICAgICAgICAgICAgIDwvYnN1LWJhcnNhLWNoYXQtY29udGVudD5cclxuICAgICAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInR3LXctZnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAndHctcmVsYXRpdmUnOiAhc2ltcGxlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAnMnhsOnR3LXJvdW5kZWQtdC14bCB0dy1ncm93LTAgdHctc2hyaW5rLTAnOiBzaW1wbGVcclxuICAgICAgICAgICAgICAgICAgICB9XCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICBAaWYgKHJlcGx5aW5nTWVzc2FnZSgpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5PdXRSZXBseWluZ01lc3NhZ2VcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0dy13LWZ1bGwgdHctcHgtMiB0dy1weS0xIHR3LWJvcmRlci1yLTQgdHctYm9yZGVyLXItYnViYmxlLW1pbmUgdHctZmxleCB0dy1nYXAtMiB0ZS1pdGVtcy1jZW50ZXIgdHctYWJzb2x1dGUgdHctei0wIHR3LWJnLWRlZmF1bHQgdHctcmlnaHQtMCAtdHctdG9wLTE0XCJcclxuICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHctZ3Jvdy0wIHR3LXNocmluay0wXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZXBseWluZ01lc3NhZ2Uuc2V0KG51bGwpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctZmxleCB0dy1mbGV4LWNvbCB0dy1ncm93IHR3LXNocmluayB0dy1vdmVyZmxvdy1oaWRkZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctZm9udC1ib2xkXCI+e3sgcmVwbHlpbmdNZXNzYWdlKCkub3duZXIubmFtZSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctdHJ1bmNhdGVcIj57e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGx5aW5nTWVzc2FnZSgpLnRleHQgPz8gcmVwbHlpbmdNZXNzYWdlKCkuZmlsZT8ubmFtZSA/PyByZXBseWluZ01lc3NhZ2UoKS5pbWFnZT8ubmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidHctdy04IHR3LXNocmluay0wIHR3LWdyb3ctMFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHctdy1mdWxsIHR3LXAtMiB0dy1mbGV4IHR3LWdhcC0yIHR3LWJvcmRlci10IHR3LWJvcmRlci10LWdyYXktMzAwIGRhcms6dHctYm9yZGVyLXQtZ3JheS02MDAgdHctYmctZGVmYXVsdCB0dy1pdGVtcy1lbmQgdHctei0xMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIEBpZihsYXlvdXQ5NCQgfCBhc3luYzthcyBsYXlvdXQ5NCl7IEBpZiAoJ9ix2K/bjNmBINqv2YHYqtqv2Ygg2YXZiNis2YjYr9uM2KonIHwgY29udHJvbFVpOiBsYXlvdXQ5NDsgYXMgY29uZmlnVWkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJzdS1sYXlvdXQtY29udHJvbCBbY29uZmlnXT1cImNvbmZpZ1VpXCI+PC9ic3UtbGF5b3V0LWNvbnRyb2w+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gfVxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInR3LWFic29sdXRlIHR3LXRvcC0xLzIgLXR3LXRyYW5zbGF0ZS15LTEvMiB0dy1sZWZ0LTEvMiAtdHctdHJhbnNsYXRlLXgtMS8yIHR3LWZsZXggdHctZmxleC1jb2wgdHctZ2FwLTggdHctaXRlbXMtY2VudGVyXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPCEtLSA8aW1nIHNyYz1cImFzc2V0cy9ub3Qtc2VsZWN0ZWQtY2hhdC5wbmdcIiBjbGFzcz1cInR3LXctNjQgdHctb3BhY2l0eS0yNVwiIC8+IC0tPlxyXG4gICAgICAgICAgICAgICAgPCEtLSAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHctdGV4dC14bCB0dy1mb250LWJvbGQgdHctdGV4dC1ncmF5LTQwMCBkYXJrOnR3LXRleHQtZ3JheS01MDBcIj4tLT5cclxuICAgICAgICAgICAgICAgIDwhLS0gICAgICAgICAgICAgICAg2KjYsdin24wg2LTYsdmI2Lkg24zaqSDahtiqINix2Kcg2KfZhtiq2K7Yp9ioINqp2YbbjNivLS0+XHJcbiAgICAgICAgICAgICAgICA8IS0tICAgICAgICAgICAgPC9zcGFuPi0tPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIEBpZiAoIXNpbXBsZSkge1xyXG4gICAgPGRpdiBjbGFzcz1cInR3LWJnLWJsYWNrL1suM10gMnhsOnR3LWdyb3cgdHctc2hyaW5rIHR3LWgtZnVsbFwiPjwvZGl2PlxyXG4gICAgfVxyXG48L2Rpdj5cclxuIl19
|
|
@@ -5,4 +5,4 @@ export var ThreadStatus;
|
|
|
5
5
|
ThreadStatus[ThreadStatus["Online"] = 2] = "Online";
|
|
6
6
|
ThreadStatus[ThreadStatus["Busy"] = 3] = "Busy";
|
|
7
7
|
})(ThreadStatus || (ThreadStatus = {}));
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLWNoYXQvY2hhdC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QkEsTUFBTSxDQUFOLElBQVksWUFLWDtBQUxELFdBQVksWUFBWTtJQUNwQix1REFBUSxDQUFBO0lBQ1IscURBQU8sQ0FBQTtJQUNQLG1EQUFNLENBQUE7SUFDTiwrQ0FBSSxDQUFBO0FBQ1IsQ0FBQyxFQUxXLFlBQVksS0FBWixZQUFZLFFBS3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsZUF0dGFjaG1lbnRJbmZvLCBGaWxlUGljdHVyZUluZm9Nb2RlbCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuXHJcbmV4cG9ydCB0eXBlIFRocmVhZCA9IHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgYXZhdGFyOiBzdHJpbmc7XHJcbiAgICBzdGF0dXM6IFRocmVhZFN0YXR1cztcclxuICAgIGxhc3RBY3Rpdml0eTogRGF0ZTtcclxuICAgIHVucmVhZENvdW50OiBudW1iZXI7XHJcbiAgICBwaW5uZWQ6IGJvb2xlYW47XHJcbiAgICBtdXRlZDogYm9vbGVhbjtcclxuICAgIGxhc3RNZXNzYWdlOiBNZXNzYWdlO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgTWVzc2FnZSA9IHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBvd25lcjogVXNlcjtcclxuICAgIHRleHQ/
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLWNoYXQvY2hhdC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5QkEsTUFBTSxDQUFOLElBQVksWUFLWDtBQUxELFdBQVksWUFBWTtJQUNwQix1REFBUSxDQUFBO0lBQ1IscURBQU8sQ0FBQTtJQUNQLG1EQUFNLENBQUE7SUFDTiwrQ0FBSSxDQUFBO0FBQ1IsQ0FBQyxFQUxXLFlBQVksS0FBWixZQUFZLFFBS3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlsZUF0dGFjaG1lbnRJbmZvLCBGaWxlUGljdHVyZUluZm9Nb2RlbCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuXHJcbmV4cG9ydCB0eXBlIFRocmVhZCA9IHtcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgYXZhdGFyOiBzdHJpbmc7XHJcbiAgICBzdGF0dXM6IFRocmVhZFN0YXR1cztcclxuICAgIGxhc3RBY3Rpdml0eTogRGF0ZTtcclxuICAgIHVucmVhZENvdW50OiBudW1iZXI7XHJcbiAgICBwaW5uZWQ6IGJvb2xlYW47XHJcbiAgICBtdXRlZDogYm9vbGVhbjtcclxuICAgIGxhc3RNZXNzYWdlOiBNZXNzYWdlO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgTWVzc2FnZSA9IHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBvd25lcjogVXNlcjtcclxuICAgIHRleHQ/OiBzdHJpbmc7XHJcbiAgICBmaWxlcz86IEZpbGVBdHRhY2htZW50SW5mb1tdO1xyXG4gICAgaW1hZ2U/OiBGaWxlUGljdHVyZUluZm9Nb2RlbDtcclxuICAgIGNyZWF0ZWRBdDogRGF0ZTtcclxuICAgIGRlbGl2ZXJlZEF0OiBEYXRlO1xyXG4gICAgcmVhZEF0OiBEYXRlO1xyXG59O1xyXG5cclxuZXhwb3J0IGVudW0gVGhyZWFkU3RhdHVzIHtcclxuICAgIExhc3RTZWVuLFxyXG4gICAgT2ZmbGluZSxcclxuICAgIE9ubGluZSxcclxuICAgIEJ1c3lcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgVXNlciA9IHtcclxuICAgIGlkOiBzdHJpbmc7XHJcbiAgICBhdmF0YXI6IHN0cmluZztcclxuICAgIG5hbWU6IHN0cmluZztcclxufTtcclxuIl19
|
|
@@ -1,37 +1,73 @@
|
|
|
1
|
-
import { Component, EventEmitter, inject, Input, Output } from '@angular/core';
|
|
1
|
+
import { Component, ElementRef, EventEmitter, inject, Input, Output, ViewChild, signal } from '@angular/core';
|
|
2
|
+
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
|
2
3
|
import jmoment from 'moment-jalaali';
|
|
3
|
-
import { ReportViewBaseComponent, MoReportValuePipe, PictureFieldSourcePipe } from 'barsa-novin-ray-core';
|
|
4
|
+
import { ReportViewBaseComponent, MoReportValuePipe, PictureFieldSourcePipe, IntersectionStatus } from 'barsa-novin-ray-core';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
import * as i2 from "barsa-novin-ray-core";
|
|
8
|
+
import * as i3 from "@angular/cdk/scrolling";
|
|
9
|
+
import * as i4 from "../barsa-chat-message/barsa-chat-message.component";
|
|
10
|
+
import * as i5 from "../util-chat-time-badge.pipe";
|
|
8
11
|
export class BarsaChatListComponent extends ReportViewBaseComponent {
|
|
9
12
|
constructor() {
|
|
10
13
|
super(...arguments);
|
|
11
|
-
this.simple =
|
|
14
|
+
this.simple = false;
|
|
12
15
|
this.setReplyingMessage = new EventEmitter();
|
|
16
|
+
this.messages = signal([]);
|
|
13
17
|
this._rval = inject(MoReportValuePipe);
|
|
14
18
|
this._picField = inject(PictureFieldSourcePipe);
|
|
15
19
|
this.moment = jmoment;
|
|
20
|
+
this._paginVisibleStatus = signal(IntersectionStatus.Visible);
|
|
21
|
+
this._pagingSetting = signal(null);
|
|
22
|
+
this._firstTime = true;
|
|
16
23
|
}
|
|
17
24
|
ngOnInit() {
|
|
18
25
|
super.ngOnInit();
|
|
19
|
-
this.
|
|
26
|
+
this._ulvMainService.pagingSetting$.subscribe((pagingSetting) => this._pagingSetting.set(pagingSetting));
|
|
20
27
|
}
|
|
21
28
|
ngOnChanges(changes) {
|
|
22
29
|
super.ngOnChanges(changes);
|
|
23
30
|
const { moDataList } = changes;
|
|
24
31
|
if (moDataList) {
|
|
25
|
-
this._prepareMessages(moDataList.currentValue);
|
|
32
|
+
this._prepareMessages(moDataList.currentValue, moDataList.currentValue.filter((c) => c.$State === 'New'));
|
|
26
33
|
}
|
|
27
34
|
}
|
|
28
|
-
|
|
29
|
-
this.
|
|
35
|
+
scrollToBottom(force = false, instant = false) {
|
|
36
|
+
if (this.simple) {
|
|
37
|
+
const container = this._chatContentElement?.nativeElement;
|
|
38
|
+
if ((force && container) || container) {
|
|
39
|
+
setTimeout(() => container?.scrollTo({
|
|
40
|
+
top: container.scrollHeight,
|
|
41
|
+
behavior: instant ? 'instant' : 'smooth'
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
else if (this.viewPort) {
|
|
46
|
+
setTimeout(() => this.viewPort.scrollTo({ bottom: 0, behavior: instant ? 'instant' : 'smooth' }));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
onVisibilityChange(e) {
|
|
50
|
+
if (this._paginVisibleStatus() !== IntersectionStatus.Visible && e === IntersectionStatus.Visible) {
|
|
51
|
+
// TODO: fire pagin event
|
|
52
|
+
if (this._firstTime) {
|
|
53
|
+
this._firstTime = false;
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const x = this._pagingSetting();
|
|
57
|
+
if (x && x.Page < x.TotalPages) {
|
|
58
|
+
this._ulvMainService.pageChanged(x.Page + 1);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
this._paginVisibleStatus.set(e);
|
|
62
|
+
}
|
|
63
|
+
_prepareMessages(moDataList, newMessages) {
|
|
64
|
+
const x = newMessages.length ? newMessages : moDataList;
|
|
65
|
+
const mappedMoList = x.reverse().map((i) => ({
|
|
30
66
|
id: i.Id,
|
|
31
67
|
createdAt: this._rval.transform(this.viewSetting.CreationDateField, i, this.allColumns),
|
|
32
68
|
deliveredAt: this._rval.transform(this.viewSetting.CreationDateField, i, this.allColumns),
|
|
33
69
|
readAt: this._rval.transform(this.viewSetting.ReadAtField, i, this.allColumns),
|
|
34
|
-
|
|
70
|
+
files: this._rval.transform(this.viewSetting.FileDataField, i, this.allColumns)?.Files,
|
|
35
71
|
image: this._rval.transform(this.viewSetting.PictureDataField, i, this.allColumns),
|
|
36
72
|
owner: {
|
|
37
73
|
id: this._rval.transform(this.viewSetting.UserField, i, this.allColumns)?.Id,
|
|
@@ -46,16 +82,31 @@ export class BarsaChatListComponent extends ReportViewBaseComponent {
|
|
|
46
82
|
},
|
|
47
83
|
text: this._rval.transform(this.viewSetting.MessageTextField, i, this.allColumns)
|
|
48
84
|
}));
|
|
49
|
-
|
|
85
|
+
this.messages.set(newMessages.length ? [...this.messages(), ...mappedMoList] : [...mappedMoList, ...this.messages()]);
|
|
86
|
+
x.forEach((c) => (c.$State = 'Unchanged'));
|
|
87
|
+
if (newMessages.length || !this.pagingSetting?.Page) {
|
|
88
|
+
this.scrollToBottom();
|
|
89
|
+
}
|
|
90
|
+
if (!this.pagingSetting?.Page) {
|
|
91
|
+
this.scrollToBottom(true, true);
|
|
92
|
+
}
|
|
50
93
|
}
|
|
51
94
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaChatListComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaChatListComponent, selector: "bsu-barsa-chat-list", inputs: {
|
|
95
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BarsaChatListComponent, selector: "bsu-barsa-chat-list", inputs: { replyingMessage: "replyingMessage", simple: "simple" }, outputs: { setReplyingMessage: "setReplyingMessage" }, host: { properties: { "class.tw-pt-24": "simple" }, classAttribute: "tw-block tw-h-full tw-w-full" }, viewQueries: [{ propertyName: "_chatContentElement", first: true, predicate: ["chatContentElement"], descendants: true, read: ElementRef }, { propertyName: "viewPort", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngTemplateOutlet=\"simple ? simpleMode : viewPort; context: { $implicit: messages() }\"> </ng-container>\r\n<ng-template #viewPort let-messages>\r\n <cdk-virtual-scroll-viewport [appendOnly]=\"true\" itemSize=\"20\" minBufferPx=\"200\" maxBufferPx=\"400\">\r\n <div intersectionObserver [intersectionThreshold]=\"0.1\" (visibilityChange)=\"onVisibilityChange($event)\"></div>\r\n <div *cdkVirtualFor=\"let message of messages; let index = index\">\r\n <bsu-barsa-chat-message\r\n [message]=\"message\"\r\n [showSender]=\"true\"\r\n [nextIsSame]=\"messages?.[index + 1]?.owner?.id === message.owner.id\"\r\n [pervIsSame]=\"messages?.[index - 1]?.owner?.id === message.owner.id\"\r\n [badge]=\"!this.messages?.[index - 1] || (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[index - 1]?.createdAt).jDayOfYear())\"\r\n [nextHasBadge]=\"!!this.messages?.[index + 1] && (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[index + 1]?.createdAt).jDayOfYear()) && message.owner.id === this.messages?.[index + 1]?.owner?.id\"\r\n [badgeLabel]=\"moment(message.createdAt) | utilChatTimeBadge\"\r\n (reply)=\"setReplyingMessage.emit($event)\"\r\n ></bsu-barsa-chat-message>\r\n </div>\r\n @if (replyingMessage) {\r\n <div class=\"tw-h-14\"></div>\r\n }\r\n </cdk-virtual-scroll-viewport>\r\n</ng-template>\r\n<ng-template #simpleMode let-messages>\r\n <div #chatContentElement>\r\n @for (message of messages; track message.id) {\r\n <bsu-barsa-chat-message\r\n [message]=\"message\"\r\n [showSender]=\"true\"\r\n [nextIsSame]=\"messages?.[$index + 1]?.owner?.id === message.owner.id\"\r\n [pervIsSame]=\"messages?.[$index - 1]?.owner?.id === message.owner.id\"\r\n [badge]=\"!this.messages?.[$index - 1] || (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[$index - 1]?.createdAt).jDayOfYear())\"\r\n [nextHasBadge]=\"!!this.messages?.[$index + 1] && (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[$index + 1]?.createdAt).jDayOfYear()) && message.owner.id === this.messages?.[$index + 1]?.owner?.id\"\r\n [badgeLabel]=\"moment(message.createdAt) | utilChatTimeBadge\"\r\n (reply)=\"setReplyingMessage.emit($event)\"\r\n ></bsu-barsa-chat-message>\r\n }\r\n </div>\r\n <div class=\"tw-h-4\"></div>\r\n</ng-template>\r\n", styles: [":host{height:665px}:host cdk-virtual-scroll-viewport{height:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.IntersectionObserverDirective, selector: "[intersectionObserver]", inputs: ["intersectionDebounce", "intersectionRootMargin", "intersectionRoot", "intersectionThreshold"], outputs: ["visibilityChange"] }, { kind: "directive", type: i3.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i3.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i3.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "component", type: i4.BarsaChatMessageComponent, selector: "bsu-barsa-chat-message", inputs: ["message", "showSender", "nextIsSame", "pervIsSame", "badge", "nextHasBadge", "badgeLabel"], outputs: ["reply"] }, { kind: "pipe", type: i5.UtilChatTimeBadgePipe, name: "utilChatTimeBadge" }] }); }
|
|
53
96
|
}
|
|
54
97
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BarsaChatListComponent, decorators: [{
|
|
55
98
|
type: Component,
|
|
56
|
-
args: [{ selector: 'bsu-barsa-chat-list', standalone: false,
|
|
57
|
-
|
|
58
|
-
|
|
99
|
+
args: [{ selector: 'bsu-barsa-chat-list', standalone: false, host: {
|
|
100
|
+
// Statically
|
|
101
|
+
class: 'tw-block tw-h-full tw-w-full',
|
|
102
|
+
'[class.tw-pt-24]': 'simple'
|
|
103
|
+
}, template: "<ng-container *ngTemplateOutlet=\"simple ? simpleMode : viewPort; context: { $implicit: messages() }\"> </ng-container>\r\n<ng-template #viewPort let-messages>\r\n <cdk-virtual-scroll-viewport [appendOnly]=\"true\" itemSize=\"20\" minBufferPx=\"200\" maxBufferPx=\"400\">\r\n <div intersectionObserver [intersectionThreshold]=\"0.1\" (visibilityChange)=\"onVisibilityChange($event)\"></div>\r\n <div *cdkVirtualFor=\"let message of messages; let index = index\">\r\n <bsu-barsa-chat-message\r\n [message]=\"message\"\r\n [showSender]=\"true\"\r\n [nextIsSame]=\"messages?.[index + 1]?.owner?.id === message.owner.id\"\r\n [pervIsSame]=\"messages?.[index - 1]?.owner?.id === message.owner.id\"\r\n [badge]=\"!this.messages?.[index - 1] || (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[index - 1]?.createdAt).jDayOfYear())\"\r\n [nextHasBadge]=\"!!this.messages?.[index + 1] && (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[index + 1]?.createdAt).jDayOfYear()) && message.owner.id === this.messages?.[index + 1]?.owner?.id\"\r\n [badgeLabel]=\"moment(message.createdAt) | utilChatTimeBadge\"\r\n (reply)=\"setReplyingMessage.emit($event)\"\r\n ></bsu-barsa-chat-message>\r\n </div>\r\n @if (replyingMessage) {\r\n <div class=\"tw-h-14\"></div>\r\n }\r\n </cdk-virtual-scroll-viewport>\r\n</ng-template>\r\n<ng-template #simpleMode let-messages>\r\n <div #chatContentElement>\r\n @for (message of messages; track message.id) {\r\n <bsu-barsa-chat-message\r\n [message]=\"message\"\r\n [showSender]=\"true\"\r\n [nextIsSame]=\"messages?.[$index + 1]?.owner?.id === message.owner.id\"\r\n [pervIsSame]=\"messages?.[$index - 1]?.owner?.id === message.owner.id\"\r\n [badge]=\"!this.messages?.[$index - 1] || (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[$index - 1]?.createdAt).jDayOfYear())\"\r\n [nextHasBadge]=\"!!this.messages?.[$index + 1] && (moment(message.createdAt).jDayOfYear() !== moment(this.messages?.[$index + 1]?.createdAt).jDayOfYear()) && message.owner.id === this.messages?.[$index + 1]?.owner?.id\"\r\n [badgeLabel]=\"moment(message.createdAt) | utilChatTimeBadge\"\r\n (reply)=\"setReplyingMessage.emit($event)\"\r\n ></bsu-barsa-chat-message>\r\n }\r\n </div>\r\n <div class=\"tw-h-4\"></div>\r\n</ng-template>\r\n", styles: [":host{height:665px}:host cdk-virtual-scroll-viewport{height:100%}\n"] }]
|
|
104
|
+
}], propDecorators: { _chatContentElement: [{
|
|
105
|
+
type: ViewChild,
|
|
106
|
+
args: ['chatContentElement', { read: ElementRef }]
|
|
107
|
+
}], viewPort: [{
|
|
108
|
+
type: ViewChild,
|
|
109
|
+
args: [CdkVirtualScrollViewport]
|
|
59
110
|
}], replyingMessage: [{
|
|
60
111
|
type: Input
|
|
61
112
|
}], simple: [{
|
|
@@ -63,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
63
114
|
}], setReplyingMessage: [{
|
|
64
115
|
type: Output
|
|
65
116
|
}] } });
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtY2hhdC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLWNoYXQtbGlzdC9iYXJzYS1jaGF0LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtY2hhdC1saXN0L2JhcnNhLWNoYXQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2pILE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFFSCx1QkFBdUIsRUFFdkIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN6QixNQUFNLHNCQUFzQixDQUFDOzs7OztBQVM5QixNQUFNLE9BQU8sc0JBQ1QsU0FBUSx1QkFBOEM7SUFQMUQ7O1FBWWEsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNiLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDM0QsVUFBSyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xDLGNBQVMsR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUMzQyxXQUFNLEdBQUcsT0FBTyxDQUFDO0tBeUNwQjtJQXhDRyxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0IsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUMvQixJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0wsQ0FBQztJQUNPLGdCQUFnQixDQUFDLFVBQWlDO1FBQ3RELElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNuQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDUixTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUN2RixXQUFXLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUN6RixNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDOUUsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQzlFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQ2xGLEtBQUssRUFBRTtnQkFDSCxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFO2dCQUM1RSxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBQyxJQUFJLENBQUM7Z0JBQ3RGLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFDbkYsSUFBSSxFQUNKLENBQUMsQ0FBQyxFQUFFLEVBQ0osU0FBUyxFQUNULEVBQUUsQ0FDTDtnQkFDRCx1QkFBdUI7Z0JBQ3ZCLGdCQUFnQjtnQkFDaEIsdUJBQXVCO2dCQUN2Qix1QkFBdUI7Z0JBQ3ZCLGVBQWU7Z0JBQ2YsY0FBYzthQUNqQjtZQUNELElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO1NBQ3BGLENBQUMsQ0FBQyxDQUFDO1FBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0IsQ0FBQzsrR0FsRFEsc0JBQXNCO21HQUF0QixzQkFBc0Isc1BDakJuQywydEVBd0NBOzs0RkR2QmEsc0JBQXNCO2tCQU5sQyxTQUFTOytCQUNJLHFCQUFxQixjQUduQixLQUFLOzhCQU1SLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGptb21lbnQgZnJvbSAnbW9tZW50LWphbGFhbGknO1xyXG5pbXBvcnQge1xyXG4gICAgTWV0YW9iamVjdERhdGFNb2RlbCxcclxuICAgIFJlcG9ydFZpZXdCYXNlQ29tcG9uZW50LFxyXG4gICAgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcsXHJcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcclxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGVcclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICcuLi9iYXJzYS1jaGF0L2NoYXQubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1jaGF0LWxpc3QnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLWNoYXQtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vYmFyc2EtY2hhdC1saXN0LmNvbXBvbmVudC5jc3MnLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhcnNhQ2hhdExpc3RDb21wb25lbnRcclxuICAgIGV4dGVuZHMgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQ8QmFyc2FDaGF0TGlzdFNldHRpbmdzPlxyXG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlc1xyXG57XHJcbiAgICBASW5wdXQoKSBtZXNzYWdlczogTWVzc2FnZVtdIHwgbnVsbDtcclxuICAgIEBJbnB1dCgpIHJlcGx5aW5nTWVzc2FnZTogTWVzc2FnZSB8IG51bGw7XHJcbiAgICBASW5wdXQoKSBzaW1wbGUgPSB0cnVlO1xyXG4gICAgQE91dHB1dCgpIHNldFJlcGx5aW5nTWVzc2FnZSA9IG5ldyBFdmVudEVtaXR0ZXI8TWVzc2FnZT4oKTtcclxuICAgIF9ydmFsID0gaW5qZWN0KE1vUmVwb3J0VmFsdWVQaXBlKTtcclxuICAgIF9waWNGaWVsZCA9IGluamVjdChQaWN0dXJlRmllbGRTb3VyY2VQaXBlKTtcclxuICAgIG1vbWVudCA9IGptb21lbnQ7XHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgICAgIHRoaXMubWVzc2FnZXMgPSB0aGlzLm1vRGF0YUxpc3Q7ICAgICAgICBcclxuICAgIH1cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcclxuICAgICAgICBjb25zdCB7IG1vRGF0YUxpc3QgfSA9IGNoYW5nZXM7XHJcbiAgICAgICAgaWYgKG1vRGF0YUxpc3QpIHtcclxuICAgICAgICAgICAgdGhpcy5fcHJlcGFyZU1lc3NhZ2VzKG1vRGF0YUxpc3QuY3VycmVudFZhbHVlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIF9wcmVwYXJlTWVzc2FnZXMobW9EYXRhTGlzdDogTWV0YW9iamVjdERhdGFNb2RlbFtdKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9IG1vRGF0YUxpc3QubWFwKChpKSA9PiAoe1xyXG4gICAgICAgICAgICBpZDogaS5JZCxcclxuICAgICAgICAgICAgY3JlYXRlZEF0OiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLkNyZWF0aW9uRGF0ZUZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMpLFxyXG4gICAgICAgICAgICBkZWxpdmVyZWRBdDogdGhpcy5fcnZhbC50cmFuc2Zvcm0odGhpcy52aWV3U2V0dGluZy5DcmVhdGlvbkRhdGVGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKSxcclxuICAgICAgICAgICAgcmVhZEF0OiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlJlYWRBdEZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMpLFxyXG4gICAgICAgICAgICBmaWxlOiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLkZpbGVEYXRhRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucyksXHJcbiAgICAgICAgICAgIGltYWdlOiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlBpY3R1cmVEYXRhRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucyksXHJcbiAgICAgICAgICAgIG93bmVyOiB7XHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5fcnZhbC50cmFuc2Zvcm0odGhpcy52aWV3U2V0dGluZy5Vc2VyRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucyk/LklkLFxyXG4gICAgICAgICAgICAgICAgbmFtZTogdGhpcy5fcnZhbC50cmFuc2Zvcm0odGhpcy52aWV3U2V0dGluZy5EaXNwbGF5TmFtZUZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMsdHJ1ZSksXHJcbiAgICAgICAgICAgICAgICBhdmF0YXI6IHRoaXMuX3BpY0ZpZWxkLnRyYW5zZm9ybShcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlVzZXJQaWN0dXJlRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucyk/LkZpbGVJZCxcclxuICAgICAgICAgICAgICAgICAgICAnSUQnLFxyXG4gICAgICAgICAgICAgICAgICAgIGkuSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgICAgIDQ1XHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAvLyB2YWx1ZTogc3RyaW5nIHwgYW55LFxyXG4gICAgICAgICAgICAgICAgLy8gdHlwZTogc3RyaW5nLFxyXG4gICAgICAgICAgICAgICAgLy8gbW9JZDogc3RyaW5nIHwgbnVsbCxcclxuICAgICAgICAgICAgICAgIC8vIGZpZWxkRGVmSWQ/OiBzdHJpbmcsXHJcbiAgICAgICAgICAgICAgICAvLyBzdz86IG51bWJlcixcclxuICAgICAgICAgICAgICAgIC8vIHNoPzogbnVtYmVyXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3J2YWwudHJhbnNmb3JtKHRoaXMudmlld1NldHRpbmcuTWVzc2FnZVRleHRGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKVxyXG4gICAgICAgIH0pKTtcclxuICAgICAgICBjb25zb2xlLmxvZyh0aGlzLm1lc3NhZ2VzKTtcclxuICAgIH1cclxufVxyXG5pbnRlcmZhY2UgQmFyc2FDaGF0TGlzdFNldHRpbmdzIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgVXNlckZpZWxkOiBzdHJpbmc7XHJcbiAgICBEaXNwbGF5TmFtZUZpZWxkOiBzdHJpbmc7XHJcbiAgICBVc2VyUGljdHVyZUZpZWxkOiBzdHJpbmc7XHJcbiAgICBDcmVhdGlvbkRhdGVGaWVsZDogc3RyaW5nO1xyXG4gICAgUmVhZEF0RmllbGQ6IHN0cmluZztcclxuICAgIE1lc3NhZ2VUZXh0RmllbGQ6IHN0cmluZztcclxuICAgIEZpbGVEYXRhRmllbGQ6IHN0cmluZztcclxuICAgIFBpY3R1cmVEYXRhRmllbGQ6IHN0cmluZztcclxufVxyXG4iLCJAaWYgKG1lc3NhZ2VzICE9PSBudWxsKSB7IEBpZiAoIXNpbXBsZSkge1xyXG48Y2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0XHJcbiAgICBbYXBwZW5kT25seV09XCJ0cnVlXCJcclxuICAgIGlkPVwiY2hhdENvbnRlbnRFbGVtZW50XCJcclxuICAgIGl0ZW1TaXplPVwiMjBcIlxyXG4gICAgY2xhc3M9XCJ0dy1oLWZ1bGwgdHctdy1mdWxsIHR3LXBiLTQgdHctcHQtMjRcIlxyXG4+XHJcbiAgICA8ZGl2ICpjZGtWaXJ0dWFsRm9yPVwibGV0IG1lc3NhZ2Ugb2YgbWVzc2FnZXM7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgPGJzdS1iYXJzYS1jaGF0LW1lc3NhZ2VcclxuICAgICAgICAgICAgW21lc3NhZ2VdPVwibWVzc2FnZVwiXHJcbiAgICAgICAgICAgIFtzaG93U2VuZGVyXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbbmV4dElzU2FtZV09XCJtZXNzYWdlcz8uW2luZGV4ICsgMV0/Lm93bmVyPy5pZCA9PT0gbWVzc2FnZS5vd25lci5pZFwiXHJcbiAgICAgICAgICAgIFtwZXJ2SXNTYW1lXT1cIm1lc3NhZ2VzPy5baW5kZXggLSAxXT8ub3duZXI/LmlkID09PSBtZXNzYWdlLm93bmVyLmlkXCJcclxuICAgICAgICAgICAgW2JhZGdlXT1cIiF0aGlzLm1lc3NhZ2VzPy5baW5kZXggLSAxXSB8fCAobW9tZW50KG1lc3NhZ2UuY3JlYXRlZEF0KS5qRGF5T2ZZZWFyKCkgIT09IG1vbWVudCh0aGlzLm1lc3NhZ2VzPy5baW5kZXggLSAxXT8uY3JlYXRlZEF0KS5qRGF5T2ZZZWFyKCkpXCJcclxuICAgICAgICAgICAgW25leHRIYXNCYWRnZV09XCIhIXRoaXMubWVzc2FnZXM/LltpbmRleCArIDFdICYmIChtb21lbnQobWVzc2FnZS5jcmVhdGVkQXQpLmpEYXlPZlllYXIoKSAhPT0gbW9tZW50KHRoaXMubWVzc2FnZXM/LltpbmRleCArIDFdPy5jcmVhdGVkQXQpLmpEYXlPZlllYXIoKSkgJiYgbWVzc2FnZS5vd25lci5pZCA9PT0gdGhpcy5tZXNzYWdlcz8uW2luZGV4ICsgMV0/Lm93bmVyPy5pZFwiXHJcbiAgICAgICAgICAgIFtiYWRnZUxhYmVsXT1cIm1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkgfCB1dGlsQ2hhdFRpbWVCYWRnZVwiXHJcbiAgICAgICAgICAgIChyZXBseSk9XCJzZXRSZXBseWluZ01lc3NhZ2UuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICA+PC9ic3UtYmFyc2EtY2hhdC1tZXNzYWdlPlxyXG4gICAgPC9kaXY+XHJcbiAgICBAaWYgKHJlcGx5aW5nTWVzc2FnZSkge1xyXG4gICAgPGRpdiBjbGFzcz1cInR3LWgtMTRcIj48L2Rpdj5cclxuICAgIH1cclxuPC9jZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQ+XHJcbn0gQGVsc2Uge1xyXG48ZGl2IGNsYXNzPVwidHctaC1mdWxsIHR3LXctZnVsbCB0dy1wdC0yNFwiPlxyXG4gICAgQGZvciAobWVzc2FnZSBvZiBtZXNzYWdlczsgdHJhY2sgbWVzc2FnZS5pZCkge1xyXG4gICAgPGJzdS1iYXJzYS1jaGF0LW1lc3NhZ2VcclxuICAgICAgICBbbWVzc2FnZV09XCJtZXNzYWdlXCJcclxuICAgICAgICBbc2hvd1NlbmRlcl09XCJ0cnVlXCJcclxuICAgICAgICBbbmV4dElzU2FtZV09XCJtZXNzYWdlcz8uWyRpbmRleCArIDFdPy5vd25lcj8uaWQgPT09IG1lc3NhZ2Uub3duZXIuaWRcIlxyXG4gICAgICAgIFtwZXJ2SXNTYW1lXT1cIm1lc3NhZ2VzPy5bJGluZGV4IC0gMV0/Lm93bmVyPy5pZCA9PT0gbWVzc2FnZS5vd25lci5pZFwiXHJcbiAgICAgICAgW2JhZGdlXT1cIiF0aGlzLm1lc3NhZ2VzPy5bJGluZGV4IC0gMV0gfHwgKG1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkuakRheU9mWWVhcigpICE9PSBtb21lbnQodGhpcy5tZXNzYWdlcz8uWyRpbmRleCAtIDFdPy5jcmVhdGVkQXQpLmpEYXlPZlllYXIoKSlcIlxyXG4gICAgICAgIFtuZXh0SGFzQmFkZ2VdPVwiISF0aGlzLm1lc3NhZ2VzPy5bJGluZGV4ICsgMV0gJiYgKG1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkuakRheU9mWWVhcigpICE9PSBtb21lbnQodGhpcy5tZXNzYWdlcz8uWyRpbmRleCArIDFdPy5jcmVhdGVkQXQpLmpEYXlPZlllYXIoKSkgJiYgbWVzc2FnZS5vd25lci5pZCA9PT0gdGhpcy5tZXNzYWdlcz8uWyRpbmRleCArIDFdPy5vd25lcj8uaWRcIlxyXG4gICAgICAgIFtiYWRnZUxhYmVsXT1cIm1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkgfCB1dGlsQ2hhdFRpbWVCYWRnZVwiXHJcbiAgICAgICAgKHJlcGx5KT1cInNldFJlcGx5aW5nTWVzc2FnZS5lbWl0KCRldmVudClcIlxyXG4gICAgPjwvYnN1LWJhcnNhLWNoYXQtbWVzc2FnZT5cclxuICAgIH1cclxuICAgIDxkaXYgY2xhc3M9XCJ0dy1oLTRcIj48L2Rpdj5cclxuPC9kaXY+XHJcbn0gfVxyXG4iXX0=
|
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2EtY2hhdC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL2JhcnNhLWNoYXQtbGlzdC9iYXJzYS1jaGF0LWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvYmFyc2EtY2hhdC1saXN0L2JhcnNhLWNoYXQtbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBRU4sU0FBUyxFQUNULE1BQU0sRUFFVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUVsRSxPQUFPLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBRUgsdUJBQXVCLEVBRXZCLGlCQUFpQixFQUNqQixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBRXJCLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFjOUIsTUFBTSxPQUFPLHNCQUNULFNBQVEsdUJBQThDO0lBWjFEOztRQWtCYSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2QsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUMzRCxhQUFRLEdBQThCLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqRCxVQUFLLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbEMsY0FBUyxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzNDLFdBQU0sR0FBRyxPQUFPLENBQUM7UUFDakIsd0JBQW1CLEdBQXVDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RixtQkFBYyxHQUF5QyxN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QUUsRUFBRSxDQUFDLENBQUM7WUFDekMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFO1lBQ1IsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDdkYsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDekYsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO1lBQzlFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUs7WUFDdEYsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDbEYsS0FBSyxFQUFFO2dCQUNILEVBQUUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzVFLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQztnQkFDdkYsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUNuRixJQUFJLEVBQ0osQ0FBQyxDQUFDLEVBQUUsRUFDSixTQUFTLEVBQ1QsRUFBRSxDQUNMO2dCQUNELHVCQUF1QjtnQkFDdkIsZ0JBQWdCO2dCQUNoQix1QkFBdUI7Z0JBQ3ZCLHVCQUF1QjtnQkFDdkIsZUFBZTtnQkFDZixjQUFjO2FBQ2pCO1lBQ0QsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUM7U0FDcEYsQ0FBQyxDQUFDLENBQUM7UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FDYixXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxZQUFZLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FDckcsQ0FBQztRQUNGLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzNDLElBQUksV0FBVyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDbEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzFCLENBQUM7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwQyxDQUFDO0lBQ0wsQ0FBQzsrR0FsR1Esc0JBQXNCO21HQUF0QixzQkFBc0IsZ1lBSVUsVUFBVSx3REFDeEMsd0JBQXdCLDRGQzVDdkMsaWpGQXNDQTs7NEZEQ2Esc0JBQXNCO2tCQVhsQyxTQUFTOytCQUNJLHFCQUFxQixjQUduQixLQUFLLFFBQ1g7d0JBQ0YsYUFBYTt3QkFDYixLQUFLLEVBQUUsOEJBQThCO3dCQUNyQyxrQkFBa0IsRUFBRSxRQUFRO3FCQUMvQjs4QkFNc0QsbUJBQW1CO3NCQUF6RSxTQUFTO3VCQUFDLG9CQUFvQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDaEIsUUFBUTtzQkFBNUMsU0FBUzt1QkFBQyx3QkFBd0I7Z0JBQzFCLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgaW5qZWN0LFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBPbkluaXQsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgc2lnbmFsLFxyXG4gICAgV3JpdGFibGVTaWduYWxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Njcm9sbGluZyc7XHJcblxyXG5pbXBvcnQgam1vbWVudCBmcm9tICdtb21lbnQtamFsYWFsaSc7XHJcbmltcG9ydCB7XHJcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxyXG4gICAgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQsXHJcbiAgICBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyxcclxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxyXG4gICAgUGljdHVyZUZpZWxkU291cmNlUGlwZSxcclxuICAgIEludGVyc2VjdGlvblN0YXR1cyxcclxuICAgIFBhZ2luZ1NldHRpbmdcclxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2UgfSBmcm9tICcuLi9iYXJzYS1jaGF0L2NoYXQubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS1iYXJzYS1jaGF0LWxpc3QnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2JhcnNhLWNoYXQtbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybDogJy4vYmFyc2EtY2hhdC1saXN0LmNvbXBvbmVudC5jc3MnLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXHJcbiAgICBob3N0OiB7XHJcbiAgICAgICAgLy8gU3RhdGljYWxseVxyXG4gICAgICAgIGNsYXNzOiAndHctYmxvY2sgdHctaC1mdWxsIHR3LXctZnVsbCcsXHJcbiAgICAgICAgJ1tjbGFzcy50dy1wdC0yNF0nOiAnc2ltcGxlJ1xyXG4gICAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFyc2FDaGF0TGlzdENvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxCYXJzYUNoYXRMaXN0U2V0dGluZ3M+XHJcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzXHJcbntcclxuICAgIEBWaWV3Q2hpbGQoJ2NoYXRDb250ZW50RWxlbWVudCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBfY2hhdENvbnRlbnRFbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gICAgQFZpZXdDaGlsZChDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQpIHZpZXdQb3J0OiBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQ7XHJcbiAgICBASW5wdXQoKSByZXBseWluZ01lc3NhZ2U6IE1lc3NhZ2UgfCBudWxsO1xyXG4gICAgQElucHV0KCkgc2ltcGxlID0gZmFsc2U7XHJcbiAgICBAT3V0cHV0KCkgc2V0UmVwbHlpbmdNZXNzYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxNZXNzYWdlPigpO1xyXG4gICAgbWVzc2FnZXM6IFdyaXRhYmxlU2lnbmFsPE1lc3NhZ2VbXT4gPSBzaWduYWwoW10pO1xyXG4gICAgX3J2YWwgPSBpbmplY3QoTW9SZXBvcnRWYWx1ZVBpcGUpO1xyXG4gICAgX3BpY0ZpZWxkID0gaW5qZWN0KFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUpO1xyXG4gICAgbW9tZW50ID0gam1vbWVudDtcclxuICAgIF9wYWdpblZpc2libGVTdGF0dXM6IFdyaXRhYmxlU2lnbmFsPEludGVyc2VjdGlvblN0YXR1cz4gPSBzaWduYWwoSW50ZXJzZWN0aW9uU3RhdHVzLlZpc2libGUpO1xyXG4gICAgX3BhZ2luZ1NldHRpbmc6IFdyaXRhYmxlU2lnbmFsPFBhZ2luZ1NldHRpbmcgfCBudWxsPiA9IHNpZ25hbChudWxsKTtcclxuICAgIF9maXJzdFRpbWUgPSB0cnVlO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcclxuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5wYWdpbmdTZXR0aW5nJC5zdWJzY3JpYmUoKHBhZ2luZ1NldHRpbmcpID0+IHRoaXMuX3BhZ2luZ1NldHRpbmcuc2V0KHBhZ2luZ1NldHRpbmcpKTtcclxuICAgIH1cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcclxuICAgICAgICBjb25zdCB7IG1vRGF0YUxpc3QgfSA9IGNoYW5nZXM7XHJcbiAgICAgICAgaWYgKG1vRGF0YUxpc3QpIHtcclxuICAgICAgICAgICAgdGhpcy5fcHJlcGFyZU1lc3NhZ2VzKFxyXG4gICAgICAgICAgICAgICAgbW9EYXRhTGlzdC5jdXJyZW50VmFsdWUsXHJcbiAgICAgICAgICAgICAgICBtb0RhdGFMaXN0LmN1cnJlbnRWYWx1ZS5maWx0ZXIoKGMpID0+IGMuJFN0YXRlID09PSAnTmV3JylcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHNjcm9sbFRvQm90dG9tKGZvcmNlID0gZmFsc2UsIGluc3RhbnQgPSBmYWxzZSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnNpbXBsZSkge1xyXG4gICAgICAgICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLl9jaGF0Q29udGVudEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgICAgIGlmICgoZm9yY2UgJiYgY29udGFpbmVyKSB8fCBjb250YWluZXIpIHtcclxuICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT5cclxuICAgICAgICAgICAgICAgICAgICBjb250YWluZXI/LnNjcm9sbFRvKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjb250YWluZXIuc2Nyb2xsSGVpZ2h0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogaW5zdGFudCA/ICdpbnN0YW50JyA6ICdzbW9vdGgnXHJcbiAgICAgICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudmlld1BvcnQpIHtcclxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnZpZXdQb3J0LnNjcm9sbFRvKHsgYm90dG9tOiAwLCBiZWhhdmlvcjogaW5zdGFudCA/ICdpbnN0YW50JyA6ICdzbW9vdGgnIH0pKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvblZpc2liaWxpdHlDaGFuZ2UoZSk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9wYWdpblZpc2libGVTdGF0dXMoKSAhPT0gSW50ZXJzZWN0aW9uU3RhdHVzLlZpc2libGUgJiYgZSA9PT0gSW50ZXJzZWN0aW9uU3RhdHVzLlZpc2libGUpIHtcclxuICAgICAgICAgICAgLy8gVE9ETzogZmlyZSBwYWdpbiBldmVudFxyXG4gICAgICAgICAgICBpZiAodGhpcy5fZmlyc3RUaW1lKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9maXJzdFRpbWUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCB4ID0gdGhpcy5fcGFnaW5nU2V0dGluZygpO1xyXG5cclxuICAgICAgICAgICAgaWYgKHggJiYgeC5QYWdlIDwgeC5Ub3RhbFBhZ2VzKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5wYWdlQ2hhbmdlZCh4LlBhZ2UgKyAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9wYWdpblZpc2libGVTdGF0dXMuc2V0KGUpO1xyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfcHJlcGFyZU1lc3NhZ2VzKG1vRGF0YUxpc3Q6IE1ldGFvYmplY3REYXRhTW9kZWxbXSwgbmV3TWVzc2FnZXM6IE1ldGFvYmplY3REYXRhTW9kZWxbXSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHggPSBuZXdNZXNzYWdlcy5sZW5ndGggPyBuZXdNZXNzYWdlcyA6IG1vRGF0YUxpc3Q7XHJcbiAgICAgICAgY29uc3QgbWFwcGVkTW9MaXN0ID0geC5yZXZlcnNlKCkubWFwKChpKSA9PiAoe1xyXG4gICAgICAgICAgICBpZDogaS5JZCxcclxuICAgICAgICAgICAgY3JlYXRlZEF0OiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLkNyZWF0aW9uRGF0ZUZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMpLFxyXG4gICAgICAgICAgICBkZWxpdmVyZWRBdDogdGhpcy5fcnZhbC50cmFuc2Zvcm0odGhpcy52aWV3U2V0dGluZy5DcmVhdGlvbkRhdGVGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKSxcclxuICAgICAgICAgICAgcmVhZEF0OiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlJlYWRBdEZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMpLFxyXG4gICAgICAgICAgICBmaWxlczogdGhpcy5fcnZhbC50cmFuc2Zvcm0odGhpcy52aWV3U2V0dGluZy5GaWxlRGF0YUZpZWxkLCBpLCB0aGlzLmFsbENvbHVtbnMpPy5GaWxlcyxcclxuICAgICAgICAgICAgaW1hZ2U6IHRoaXMuX3J2YWwudHJhbnNmb3JtKHRoaXMudmlld1NldHRpbmcuUGljdHVyZURhdGFGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKSxcclxuICAgICAgICAgICAgb3duZXI6IHtcclxuICAgICAgICAgICAgICAgIGlkOiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlVzZXJGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKT8uSWQsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLkRpc3BsYXlOYW1lRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucywgdHJ1ZSksXHJcbiAgICAgICAgICAgICAgICBhdmF0YXI6IHRoaXMuX3BpY0ZpZWxkLnRyYW5zZm9ybShcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ydmFsLnRyYW5zZm9ybSh0aGlzLnZpZXdTZXR0aW5nLlVzZXJQaWN0dXJlRmllbGQsIGksIHRoaXMuYWxsQ29sdW1ucyk/LkZpbGVJZCxcclxuICAgICAgICAgICAgICAgICAgICAnSUQnLFxyXG4gICAgICAgICAgICAgICAgICAgIGkuSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgICAgIDQ1XHJcbiAgICAgICAgICAgICAgICApXHJcbiAgICAgICAgICAgICAgICAvLyB2YWx1ZTogc3RyaW5nIHwgYW55LFxyXG4gICAgICAgICAgICAgICAgLy8gdHlwZTogc3RyaW5nLFxyXG4gICAgICAgICAgICAgICAgLy8gbW9JZDogc3RyaW5nIHwgbnVsbCxcclxuICAgICAgICAgICAgICAgIC8vIGZpZWxkRGVmSWQ/OiBzdHJpbmcsXHJcbiAgICAgICAgICAgICAgICAvLyBzdz86IG51bWJlcixcclxuICAgICAgICAgICAgICAgIC8vIHNoPzogbnVtYmVyXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuX3J2YWwudHJhbnNmb3JtKHRoaXMudmlld1NldHRpbmcuTWVzc2FnZVRleHRGaWVsZCwgaSwgdGhpcy5hbGxDb2x1bW5zKVxyXG4gICAgICAgIH0pKTtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VzLnNldChcclxuICAgICAgICAgICAgbmV3TWVzc2FnZXMubGVuZ3RoID8gWy4uLnRoaXMubWVzc2FnZXMoKSwgLi4ubWFwcGVkTW9MaXN0XSA6IFsuLi5tYXBwZWRNb0xpc3QsIC4uLnRoaXMubWVzc2FnZXMoKV1cclxuICAgICAgICApO1xyXG4gICAgICAgIHguZm9yRWFjaCgoYykgPT4gKGMuJFN0YXRlID0gJ1VuY2hhbmdlZCcpKTtcclxuICAgICAgICBpZiAobmV3TWVzc2FnZXMubGVuZ3RoIHx8ICF0aGlzLnBhZ2luZ1NldHRpbmc/LlBhZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5zY3JvbGxUb0JvdHRvbSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIXRoaXMucGFnaW5nU2V0dGluZz8uUGFnZSkge1xyXG4gICAgICAgICAgICB0aGlzLnNjcm9sbFRvQm90dG9tKHRydWUsIHRydWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5pbnRlcmZhY2UgQmFyc2FDaGF0TGlzdFNldHRpbmdzIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgVXNlckZpZWxkOiBzdHJpbmc7XHJcbiAgICBEaXNwbGF5TmFtZUZpZWxkOiBzdHJpbmc7XHJcbiAgICBVc2VyUGljdHVyZUZpZWxkOiBzdHJpbmc7XHJcbiAgICBDcmVhdGlvbkRhdGVGaWVsZDogc3RyaW5nO1xyXG4gICAgUmVhZEF0RmllbGQ6IHN0cmluZztcclxuICAgIE1lc3NhZ2VUZXh0RmllbGQ6IHN0cmluZztcclxuICAgIEZpbGVEYXRhRmllbGQ6IHN0cmluZztcclxuICAgIFBpY3R1cmVEYXRhRmllbGQ6IHN0cmluZztcclxufVxyXG4iLCI8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2ltcGxlID8gc2ltcGxlTW9kZSA6IHZpZXdQb3J0OyBjb250ZXh0OiB7ICRpbXBsaWNpdDogbWVzc2FnZXMoKSB9XCI+IDwvbmctY29udGFpbmVyPlxyXG48bmctdGVtcGxhdGUgI3ZpZXdQb3J0IGxldC1tZXNzYWdlcz5cclxuICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgW2FwcGVuZE9ubHldPVwidHJ1ZVwiIGl0ZW1TaXplPVwiMjBcIiBtaW5CdWZmZXJQeD1cIjIwMFwiIG1heEJ1ZmZlclB4PVwiNDAwXCI+XHJcbiAgICAgICAgPGRpdiBpbnRlcnNlY3Rpb25PYnNlcnZlciBbaW50ZXJzZWN0aW9uVGhyZXNob2xkXT1cIjAuMVwiICh2aXNpYmlsaXR5Q2hhbmdlKT1cIm9uVmlzaWJpbGl0eUNoYW5nZSgkZXZlbnQpXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiAqY2RrVmlydHVhbEZvcj1cImxldCBtZXNzYWdlIG9mIG1lc3NhZ2VzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICA8YnN1LWJhcnNhLWNoYXQtbWVzc2FnZVxyXG4gICAgICAgICAgICAgICAgW21lc3NhZ2VdPVwibWVzc2FnZVwiXHJcbiAgICAgICAgICAgICAgICBbc2hvd1NlbmRlcl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgIFtuZXh0SXNTYW1lXT1cIm1lc3NhZ2VzPy5baW5kZXggKyAxXT8ub3duZXI/LmlkID09PSBtZXNzYWdlLm93bmVyLmlkXCJcclxuICAgICAgICAgICAgICAgIFtwZXJ2SXNTYW1lXT1cIm1lc3NhZ2VzPy5baW5kZXggLSAxXT8ub3duZXI/LmlkID09PSBtZXNzYWdlLm93bmVyLmlkXCJcclxuICAgICAgICAgICAgICAgIFtiYWRnZV09XCIhdGhpcy5tZXNzYWdlcz8uW2luZGV4IC0gMV0gfHwgKG1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkuakRheU9mWWVhcigpICE9PSBtb21lbnQodGhpcy5tZXNzYWdlcz8uW2luZGV4IC0gMV0/LmNyZWF0ZWRBdCkuakRheU9mWWVhcigpKVwiXHJcbiAgICAgICAgICAgICAgICBbbmV4dEhhc0JhZGdlXT1cIiEhdGhpcy5tZXNzYWdlcz8uW2luZGV4ICsgMV0gJiYgKG1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkuakRheU9mWWVhcigpICE9PSBtb21lbnQodGhpcy5tZXNzYWdlcz8uW2luZGV4ICsgMV0/LmNyZWF0ZWRBdCkuakRheU9mWWVhcigpKSAmJiBtZXNzYWdlLm93bmVyLmlkID09PSB0aGlzLm1lc3NhZ2VzPy5baW5kZXggKyAxXT8ub3duZXI/LmlkXCJcclxuICAgICAgICAgICAgICAgIFtiYWRnZUxhYmVsXT1cIm1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkgfCB1dGlsQ2hhdFRpbWVCYWRnZVwiXHJcbiAgICAgICAgICAgICAgICAocmVwbHkpPVwic2V0UmVwbHlpbmdNZXNzYWdlLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgID48L2JzdS1iYXJzYS1jaGF0LW1lc3NhZ2U+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgQGlmIChyZXBseWluZ01lc3NhZ2UpIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwidHctaC0xNFwiPjwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxyXG48L25nLXRlbXBsYXRlPlxyXG48bmctdGVtcGxhdGUgI3NpbXBsZU1vZGUgbGV0LW1lc3NhZ2VzPlxyXG4gICAgPGRpdiAjY2hhdENvbnRlbnRFbGVtZW50PlxyXG4gICAgICAgIEBmb3IgKG1lc3NhZ2Ugb2YgbWVzc2FnZXM7IHRyYWNrIG1lc3NhZ2UuaWQpIHtcclxuICAgICAgICA8YnN1LWJhcnNhLWNoYXQtbWVzc2FnZVxyXG4gICAgICAgICAgICBbbWVzc2FnZV09XCJtZXNzYWdlXCJcclxuICAgICAgICAgICAgW3Nob3dTZW5kZXJdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtuZXh0SXNTYW1lXT1cIm1lc3NhZ2VzPy5bJGluZGV4ICsgMV0/Lm93bmVyPy5pZCA9PT0gbWVzc2FnZS5vd25lci5pZFwiXHJcbiAgICAgICAgICAgIFtwZXJ2SXNTYW1lXT1cIm1lc3NhZ2VzPy5bJGluZGV4IC0gMV0/Lm93bmVyPy5pZCA9PT0gbWVzc2FnZS5vd25lci5pZFwiXHJcbiAgICAgICAgICAgIFtiYWRnZV09XCIhdGhpcy5tZXNzYWdlcz8uWyRpbmRleCAtIDFdIHx8IChtb21lbnQobWVzc2FnZS5jcmVhdGVkQXQpLmpEYXlPZlllYXIoKSAhPT0gbW9tZW50KHRoaXMubWVzc2FnZXM/LlskaW5kZXggLSAxXT8uY3JlYXRlZEF0KS5qRGF5T2ZZZWFyKCkpXCJcclxuICAgICAgICAgICAgW25leHRIYXNCYWRnZV09XCIhIXRoaXMubWVzc2FnZXM/LlskaW5kZXggKyAxXSAmJiAobW9tZW50KG1lc3NhZ2UuY3JlYXRlZEF0KS5qRGF5T2ZZZWFyKCkgIT09IG1vbWVudCh0aGlzLm1lc3NhZ2VzPy5bJGluZGV4ICsgMV0/LmNyZWF0ZWRBdCkuakRheU9mWWVhcigpKSAmJiBtZXNzYWdlLm93bmVyLmlkID09PSB0aGlzLm1lc3NhZ2VzPy5bJGluZGV4ICsgMV0/Lm93bmVyPy5pZFwiXHJcbiAgICAgICAgICAgIFtiYWRnZUxhYmVsXT1cIm1vbWVudChtZXNzYWdlLmNyZWF0ZWRBdCkgfCB1dGlsQ2hhdFRpbWVCYWRnZVwiXHJcbiAgICAgICAgICAgIChyZXBseSk9XCJzZXRSZXBseWluZ01lc3NhZ2UuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICA+PC9ic3UtYmFyc2EtY2hhdC1tZXNzYWdlPlxyXG4gICAgICAgIH1cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInR3LWgtNFwiPjwvZGl2PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
|