@datarailsshared/datarailsshared 1.6.77 → 1.6.79

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.
@@ -9,8 +9,9 @@ import * as i0 from "@angular/core";
9
9
  import * as i1 from "@angular/common";
10
10
  import * as i2 from "./dr-chat-suggestions/chat-suggestions.component";
11
11
  const _c0 = ["drChatHeader"];
12
- const _c1 = ["drChatContent"];
13
- const _c2 = ["messagesContainer"];
12
+ const _c1 = ["drChatLoader"];
13
+ const _c2 = ["drChatContent"];
14
+ const _c3 = ["messagesContainer"];
14
15
  function DrChatComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
15
16
  i0.ɵɵelementContainer(0, 8);
16
17
  } if (rf & 2) {
@@ -32,10 +33,17 @@ function DrChatComponent_div_6_ng_container_4_Template(rf, ctx) { if (rf & 1) {
32
33
  const ctx_r5 = i0.ɵɵnextContext(2);
33
34
  i0.ɵɵproperty("ngTemplateOutlet", ctx_r5.chatContent);
34
35
  } }
36
+ function DrChatComponent_div_6_ng_container_5_Template(rf, ctx) { if (rf & 1) {
37
+ i0.ɵɵelementContainer(0, 8);
38
+ } if (rf & 2) {
39
+ const ctx_r6 = i0.ɵɵnextContext(2);
40
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r6.chatLoader);
41
+ } }
35
42
  function DrChatComponent_div_6_Template(rf, ctx) { if (rf & 1) {
36
43
  i0.ɵɵelementStart(0, "div", 11)(1, "div", 12, 13);
37
44
  i0.ɵɵprojection(3, 3);
38
45
  i0.ɵɵtemplate(4, DrChatComponent_div_6_ng_container_4_Template, 1, 1, "ng-container", 2);
46
+ i0.ɵɵtemplate(5, DrChatComponent_div_6_ng_container_5_Template, 1, 1, "ng-container", 2);
39
47
  i0.ɵɵelementEnd()();
40
48
  } if (rf & 2) {
41
49
  const ctx_r2 = i0.ɵɵnextContext();
@@ -43,19 +51,21 @@ function DrChatComponent_div_6_Template(rf, ctx) { if (rf & 1) {
43
51
  i0.ɵɵclassProp("chat__messages__container--scroll", ctx_r2.messagesContainerWithScroll);
44
52
  i0.ɵɵadvance(3);
45
53
  i0.ɵɵproperty("ngIf", ctx_r2.chatContent);
54
+ i0.ɵɵadvance(1);
55
+ i0.ɵɵproperty("ngIf", ctx_r2.chatLoader);
46
56
  } }
47
57
  function DrChatComponent_dr_chat_suggestions_7_Template(rf, ctx) { if (rf & 1) {
48
- const _r7 = i0.ɵɵgetCurrentView();
58
+ const _r8 = i0.ɵɵgetCurrentView();
49
59
  i0.ɵɵelementStart(0, "dr-chat-suggestions", 14);
50
- i0.ɵɵlistener("suggestionSelect", function DrChatComponent_dr_chat_suggestions_7_Template_dr_chat_suggestions_suggestionSelect_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.suggestionSelect.emit($event)); });
60
+ i0.ɵɵlistener("suggestionSelect", function DrChatComponent_dr_chat_suggestions_7_Template_dr_chat_suggestions_suggestionSelect_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.suggestionSelect.emit($event)); });
51
61
  i0.ɵɵelementEnd();
52
62
  } if (rf & 2) {
53
63
  const ctx_r3 = i0.ɵɵnextContext();
54
64
  i0.ɵɵclassProp("chat__suggestions--full-height", ctx_r3.fullScreen && !(ctx_r3.messages == null ? null : ctx_r3.messages.length));
55
65
  i0.ɵɵproperty("values", ctx_r3.suggestions)("fullScreen", ctx_r3.fullScreen)("waitForReply", ctx_r3.waitForReply)("buttonMode", !!(ctx_r3.messages == null ? null : ctx_r3.messages.length));
56
66
  } }
57
- const _c3 = [[["dr-chat-alert"]], [["dr-chat-form"]], [["dr-ai-search-input"]], [["dr-chat-message"]]];
58
- const _c4 = ["dr-chat-alert", "dr-chat-form", "dr-ai-search-input", "dr-chat-message"];
67
+ const _c4 = [[["dr-chat-alert"]], [["dr-chat-form"]], [["dr-ai-search-input"]], [["dr-chat-message"]]];
68
+ const _c5 = ["dr-chat-alert", "dr-chat-form", "dr-ai-search-input", "dr-chat-message"];
59
69
  export class DrChatComponent {
60
70
  set contentUpdateSubject(value) {
61
71
  if (value) {
@@ -137,29 +147,31 @@ export class DrChatComponent {
137
147
  i0.ɵɵcontentQuery(dirIndex, DrChatFormComponent, 5);
138
148
  i0.ɵɵcontentQuery(dirIndex, _c0, 5);
139
149
  i0.ɵɵcontentQuery(dirIndex, _c1, 5);
150
+ i0.ɵɵcontentQuery(dirIndex, _c2, 5);
140
151
  i0.ɵɵcontentQuery(dirIndex, DrChatMessageComponent, 4);
141
152
  } if (rf & 2) {
142
153
  let _t;
143
154
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatForm = _t.first);
144
155
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatHeader = _t.first);
156
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatLoader = _t.first);
145
157
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatContent = _t.first);
146
158
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.messages = _t);
147
159
  } }, viewQuery: function DrChatComponent_Query(rf, ctx) { if (rf & 1) {
148
- i0.ɵɵviewQuery(_c2, 5);
160
+ i0.ɵɵviewQuery(_c3, 5);
149
161
  i0.ɵɵviewQuery(DrChatSuggestionsComponent, 5);
150
162
  } if (rf & 2) {
151
163
  let _t;
152
164
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.messagesContainer = _t.first);
153
165
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._chatSuggestions = _t.first);
154
- } }, inputs: { fullScreen: "fullScreen", noMessagesPlaceholder: "noMessagesPlaceholder", contentUpdateSubject: "contentUpdateSubject", scrollBottom: "scrollBottom", suggestions: "suggestions", reopen: "reopen", waitForReply: "waitForReply", scrollDelay: "scrollDelay" }, outputs: { suggestionSelect: "suggestionSelect" }, features: [i0.ɵɵProvidersFeature([DrChatCustomMessageService])], ngContentSelectors: _c4, decls: 11, vars: 6, consts: [[1, "chat"], [1, "chat__sticky-top"], [3, "ngTemplateOutlet", 4, "ngIf"], [1, "chat__alert"], ["class", "chat__empty-state", 4, "ngIf"], ["class", "chat__messages", 4, "ngIf"], ["class", "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "chat__suggestions--full-height", "buttonMode", "suggestionSelect", 4, "ngIf"], [1, "form"], [3, "ngTemplateOutlet"], [1, "chat__empty-state"], [1, "chat__empty-state__text"], [1, "chat__messages"], [1, "chat__messages__container"], ["messagesContainer", ""], [1, "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "buttonMode", "suggestionSelect"]], template: function DrChatComponent_Template(rf, ctx) { if (rf & 1) {
155
- i0.ɵɵprojectionDef(_c3);
166
+ } }, inputs: { fullScreen: "fullScreen", noMessagesPlaceholder: "noMessagesPlaceholder", contentUpdateSubject: "contentUpdateSubject", scrollBottom: "scrollBottom", suggestions: "suggestions", reopen: "reopen", waitForReply: "waitForReply", scrollDelay: "scrollDelay" }, outputs: { suggestionSelect: "suggestionSelect" }, features: [i0.ɵɵProvidersFeature([DrChatCustomMessageService])], ngContentSelectors: _c5, decls: 11, vars: 6, consts: [[1, "chat"], [1, "chat__sticky-top"], [3, "ngTemplateOutlet", 4, "ngIf"], [1, "chat__alert"], ["class", "chat__empty-state", 4, "ngIf"], ["class", "chat__messages", 4, "ngIf"], ["class", "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "chat__suggestions--full-height", "buttonMode", "suggestionSelect", 4, "ngIf"], [1, "form"], [3, "ngTemplateOutlet"], [1, "chat__empty-state"], [1, "chat__empty-state__text"], [1, "chat__messages"], [1, "chat__messages__container"], ["messagesContainer", ""], [1, "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "buttonMode", "suggestionSelect"]], template: function DrChatComponent_Template(rf, ctx) { if (rf & 1) {
167
+ i0.ɵɵprojectionDef(_c4);
156
168
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
157
169
  i0.ɵɵtemplate(2, DrChatComponent_ng_container_2_Template, 1, 1, "ng-container", 2);
158
170
  i0.ɵɵelementStart(3, "div", 3);
159
171
  i0.ɵɵprojection(4);
160
172
  i0.ɵɵelementEnd()();
161
173
  i0.ɵɵtemplate(5, DrChatComponent_div_5_Template, 3, 1, "div", 4);
162
- i0.ɵɵtemplate(6, DrChatComponent_div_6_Template, 5, 3, "div", 5);
174
+ i0.ɵɵtemplate(6, DrChatComponent_div_6_Template, 6, 4, "div", 5);
163
175
  i0.ɵɵtemplate(7, DrChatComponent_dr_chat_suggestions_7_Template, 1, 6, "dr-chat-suggestions", 6);
164
176
  i0.ɵɵelementStart(8, "div", 7);
165
177
  i0.ɵɵprojection(9, 1);
@@ -179,7 +191,7 @@ export class DrChatComponent {
179
191
  }
180
192
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrChatComponent, [{
181
193
  type: Component,
182
- args: [{ selector: 'dr-chat', providers: [DrChatCustomMessageService], template: "<div class=\"chat\" [class.chat--in-full-screen]=\"fullScreen\">\n <div class=\"chat__sticky-top\">\n <ng-container *ngIf=\"chatHeader\" [ngTemplateOutlet]=\"chatHeader\"></ng-container>\n\n <div class=\"chat__alert\">\n <ng-content select=\"dr-chat-alert\"></ng-content>\n </div>\n </div>\n\n <div *ngIf=\"!messages?.length\" class=\"chat__empty-state\">\n <span class=\"chat__empty-state__text\">{{ noMessagesPlaceholder }}</span>\n </div>\n\n <div *ngIf=\"messages?.length\" class=\"chat__messages\">\n <div\n #messagesContainer\n class=\"chat__messages__container\"\n [class.chat__messages__container--scroll]=\"messagesContainerWithScroll\">\n <ng-content select=\"dr-chat-message\"></ng-content>\n <ng-container *ngIf=\"chatContent\" [ngTemplateOutlet]=\"chatContent\"></ng-container>\n </div>\n </div>\n\n <dr-chat-suggestions\n *ngIf=\"suggestions?.length\"\n [values]=\"suggestions\"\n [fullScreen]=\"fullScreen\"\n [waitForReply]=\"waitForReply\"\n class=\"chat__suggestions\"\n [class.chat__suggestions--full-height]=\"fullScreen && !messages?.length\"\n [buttonMode]=\"!!messages?.length\"\n (suggestionSelect)=\"suggestionSelect.emit($event)\">\n </dr-chat-suggestions>\n\n <div class=\"form\">\n <ng-content select=\"dr-chat-form\"></ng-content>\n <ng-content select=\"dr-ai-search-input\"></ng-content>\n </div>\n</div>\n", styles: [":host{height:100%;width:100%;display:flex;flex-direction:column}.chat{position:relative;display:flex;flex-grow:1;flex-direction:column;height:100%;background-color:#fff;color:#4e566c;font-family:Poppins,sans-serif;font-size:14px;font-weight:400;line-height:22px;box-shadow:0 2px 36px #00000026}.chat__sticky-top{display:flex;flex-direction:column;box-shadow:0 1px 3px #0003;z-index:1}.chat__empty-state{display:flex;justify-content:center}.chat__empty-state__text{padding:44px 0;font-family:Poppins,sans-serif;font-size:18px;font-weight:400;line-height:28px;text-align:center;max-width:440px;color:#4646ce}.chat__messages{display:flex;flex-grow:1;overflow-x:hidden;overflow-y:auto;height:100%;width:100%}.chat__messages__container{overflow-y:auto;overflow-x:hidden;display:flex;flex-shrink:0;flex-direction:column;width:100%;padding-bottom:1px}.chat__messages__container--scroll::ng-deep dr-chat-message{padding-right:8px}.chat__suggestions{flex:1}.chat__suggestions ::ng-deep .chat-suggestions__container{padding:0}.chat__suggestions--full-height{flex-grow:1;height:1px;overflow:auto}.chat--in-full-screen .chat__header{padding-left:32px;padding-right:32px}.chat--in-full-screen .chat__empty-state__text{padding:77px 0;font-size:28px;line-height:46px;max-width:570px}.chat--in-full-screen .chat__messages::ng-deep dr-chat-message{justify-content:center}.chat--in-full-screen .chat__messages::ng-deep .message{max-width:912px}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items{padding-left:0;padding-right:0}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items__item{font-size:16px}\n"] }]
194
+ args: [{ selector: 'dr-chat', providers: [DrChatCustomMessageService], template: "<div class=\"chat\" [class.chat--in-full-screen]=\"fullScreen\">\n <div class=\"chat__sticky-top\">\n <ng-container *ngIf=\"chatHeader\" [ngTemplateOutlet]=\"chatHeader\"></ng-container>\n\n <div class=\"chat__alert\">\n <ng-content select=\"dr-chat-alert\"></ng-content>\n </div>\n </div>\n\n <div *ngIf=\"!messages?.length\" class=\"chat__empty-state\">\n <span class=\"chat__empty-state__text\">{{ noMessagesPlaceholder }}</span>\n </div>\n\n <div *ngIf=\"messages?.length\" class=\"chat__messages\">\n <div\n #messagesContainer\n class=\"chat__messages__container\"\n [class.chat__messages__container--scroll]=\"messagesContainerWithScroll\">\n <ng-content select=\"dr-chat-message\"></ng-content>\n <ng-container *ngIf=\"chatContent\" [ngTemplateOutlet]=\"chatContent\"></ng-container>\n <ng-container *ngIf=\"chatLoader\" [ngTemplateOutlet]=\"chatLoader\"></ng-container>\n </div>\n </div>\n\n <dr-chat-suggestions\n *ngIf=\"suggestions?.length\"\n [values]=\"suggestions\"\n [fullScreen]=\"fullScreen\"\n [waitForReply]=\"waitForReply\"\n class=\"chat__suggestions\"\n [class.chat__suggestions--full-height]=\"fullScreen && !messages?.length\"\n [buttonMode]=\"!!messages?.length\"\n (suggestionSelect)=\"suggestionSelect.emit($event)\">\n </dr-chat-suggestions>\n\n <div class=\"form\">\n <ng-content select=\"dr-chat-form\"></ng-content>\n <ng-content select=\"dr-ai-search-input\"></ng-content>\n </div>\n</div>\n", styles: [":host{height:100%;width:100%;display:flex;flex-direction:column}.chat{position:relative;display:flex;flex-grow:1;flex-direction:column;height:100%;background-color:#fff;color:#4e566c;font-family:Poppins,sans-serif;font-size:14px;font-weight:400;line-height:22px;box-shadow:0 2px 36px #00000026}.chat__sticky-top{display:flex;flex-direction:column;box-shadow:0 1px 3px #0003;z-index:1}.chat__empty-state{display:flex;justify-content:center}.chat__empty-state__text{padding:44px 0;font-family:Poppins,sans-serif;font-size:18px;font-weight:400;line-height:28px;text-align:center;max-width:440px;color:#4646ce}.chat__messages{display:flex;flex-grow:1;overflow-x:hidden;overflow-y:auto;height:100%;width:100%}.chat__messages__container{overflow-y:auto;overflow-x:hidden;display:flex;flex-shrink:0;flex-direction:column;width:100%;padding-bottom:1px}.chat__messages__container--scroll::ng-deep dr-chat-message{padding-right:8px}.chat__suggestions{flex:1}.chat__suggestions ::ng-deep .chat-suggestions__container{padding:0}.chat__suggestions--full-height{flex-grow:1;height:1px;overflow:auto}.chat--in-full-screen .chat__header{padding-left:32px;padding-right:32px}.chat--in-full-screen .chat__empty-state__text{padding:77px 0;font-size:28px;line-height:46px;max-width:570px}.chat--in-full-screen .chat__messages::ng-deep dr-chat-message{justify-content:center}.chat--in-full-screen .chat__messages::ng-deep .message{max-width:912px}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items{padding-left:0;padding-right:0}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items__item{font-size:16px}\n"] }]
183
195
  }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { fullScreen: [{
184
196
  type: Input
185
197
  }], noMessagesPlaceholder: [{
@@ -208,6 +220,9 @@ export class DrChatComponent {
208
220
  }], chatHeader: [{
209
221
  type: ContentChild,
210
222
  args: ['drChatHeader']
223
+ }], chatLoader: [{
224
+ type: ContentChild,
225
+ args: ['drChatLoader']
211
226
  }], chatContent: [{
212
227
  type: ContentChild,
213
228
  args: ['drChatContent']
@@ -217,4 +232,4 @@ export class DrChatComponent {
217
232
  type: ViewChild,
218
233
  args: [DrChatSuggestionsComponent]
219
234
  }] }); })();
220
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1jaGF0L2NoYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItY2hhdC9jaGF0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLE1BQU0sRUFDTixZQUFZLEVBRVosV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7OztJQ25CdEYsMkJBQWdGOzs7SUFBL0Msb0RBQStCOzs7SUFPcEUsOEJBQXlELGVBQUE7SUFDZixZQUEyQjtJQUFBLGlCQUFPLEVBQUE7OztJQUFsQyxlQUEyQjtJQUEzQixrREFBMkI7OztJQVM3RCwyQkFBa0Y7OztJQUFoRCxxREFBZ0M7OztJQU4xRSwrQkFBcUQsa0JBQUE7SUFLN0MscUJBQWtEO0lBQ2xELHdGQUFrRjtJQUN0RixpQkFBTSxFQUFBOzs7SUFIRixlQUF1RTtJQUF2RSx1RkFBdUU7SUFFeEQsZUFBaUI7SUFBakIs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QUMsY0FBYztZQUNHLFdBQVc7a0JBQXpDLFlBQVk7bUJBQUMsZUFBZTtZQUNuQixnQkFBZ0I7a0JBQXpCLE1BQU07WUFDZ0MsZ0JBQWdCO2tCQUF0RCxTQUFTO21CQUFDLDBCQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIElucHV0LFxuICAgIFZpZXdDaGlsZCxcbiAgICBFbGVtZW50UmVmLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBRdWVyeUxpc3QsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBPbkRlc3Ryb3ksXG4gICAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEckNoYXRGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9kci1jaGF0LWZvcm0vY2hhdC1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEckNoYXRNZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9kci1jaGF0LW1lc3NhZ2UvY2hhdC1tZXNzYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEckNoYXRDdXN0b21NZXNzYWdlU2VydmljZSB9IGZyb20gJy4vZHItY2hhdC1tZXNzYWdlL2RyLWNoYXQtbWVzc2FnZS1jdXN0b20vY2hhdC1jdXN0b20tbWVzc2FnZS5zZXJ2aWNlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERyQ2hhdFN1Z2dlc3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9kci1jaGF0LXN1Z2dlc3Rpb25zL2NoYXQtc3VnZ2VzdGlvbnMuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1jaGF0JyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGF0LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgdGVtcGxhdGVVcmw6ICdjaGF0LmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtEckNoYXRDdXN0b21NZXNzYWdlU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIERyQ2hhdENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBASW5wdXQoKSBmdWxsU2NyZWVuOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIG5vTWVzc2FnZXNQbGFjZWhvbGRlciA9ICdObyBtZXNzYWdlcyB5ZXQuJztcblxuICAgIEBJbnB1dCgpIHNldCBjb250ZW50VXBkYXRlU3ViamVjdCh2YWx1ZTogU3ViamVjdDxhbnk+KSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWUucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNjcm9sbCBjaGF0IHRvIHRoZSBib3R0b20gb2YgdGhlIGxpc3Qgd2hlbiBhIG5ldyBtZXNzYWdlIGFycml2ZXNcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCBzY3JvbGxCb3R0b20oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxCb3R0b207XG4gICAgfVxuXG4gICAgc2V0IHNjcm9sbEJvdHRvbSh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9zY3JvbGxCb3R0b20gPSAhIXZhbHVlO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfc2Nyb2xsQm90dG9tID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpIHN1Z2dlc3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xuICAgIEBJbnB1dCgpIHJlb3BlbjogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFBhcmFtZXRlciB0byBjaGVjayBpcyBzZW5kIG1lc3NhZ2UgZnVuY3Rpb24gYXZhaWxhYmxlXG4gICAgICpcbiAgICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICAgKi9cbiAgICBASW5wdXQoKSB3YWl0Rm9yUmVwbHkgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBzY3JvbGxEZWxheSA9IDI1MDtcblxuICAgIEBWaWV3Q2hpbGQoJ21lc3NhZ2VzQ29udGFpbmVyJykgbWVzc2FnZXNDb250YWluZXI6IEVsZW1lbnRSZWY7XG4gICAgQENvbnRlbnRDaGlsZHJlbihEckNoYXRNZXNzYWdlQ29tcG9uZW50KSBtZXNzYWdlczogUXVlcnlMaXN0PERyQ2hhdE1lc3NhZ2VDb21wb25lbnQ+O1xuICAgIEBDb250ZW50Q2hpbGQoRHJDaGF0Rm9ybUNvbXBvbmVudCkgY2hhdEZvcm06IERyQ2hhdEZvcm1Db21wb25lbnQ7XG4gICAgQENvbnRlbnRDaGlsZCgnZHJDaGF0SGVhZGVyJykgY2hhdEhlYWRlcjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gICAgQENvbnRlbnRDaGlsZCgnZHJDaGF0Q29udGVudCcpIGNoYXRDb250ZW50OiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICBAT3V0cHV0KCkgc3VnZ2VzdGlvblNlbGVjdDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgICBAVmlld0NoaWxkKERyQ2hhdFN1Z2dlc3Rpb25zQ29tcG9uZW50KSBfY2hhdFN1Z2dlc3Rpb25zOiBEckNoYXRTdWdnZXN0aW9uc0NvbXBvbmVudDtcblxuICAgIHB1YmxpYyBnZXQgbWVzc2FnZXNDb250YWluZXJXaXRoU2Nyb2xsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlc0NvbnRhaW5lciAmJlxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlc0NvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNjcm9sbEhlaWdodCA+IHRoaXMubWVzc2FnZXNDb250YWluZXIubmF0aXZlRWxlbWVudC5vZmZzZXRIZWlnaHRcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgICAgIHRoaXMubWVzc2FnZXMuY2hhbmdlcy5zdWJzY3JpYmUoKG1lc3NhZ2VzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VzID0gbWVzc2FnZXM7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy51cGRhdGVWaWV3KCk7XG4gICAgfVxuXG4gICAgdXBkYXRlVmlldygpIHtcbiAgICAgICAgaWYgKHRoaXMuc2Nyb2xsQm90dG9tKSB7XG4gICAgICAgICAgICB0aGlzLnNjcm9sbExpc3RCb3R0b20oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNjcm9sbExpc3RCb3R0b20oKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubWVzc2FnZXNDb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxUb09wdGlvbnM6IGFueSA9IHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB0aGlzLm1lc3NhZ2VzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0LFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMucmVvcGVuKSB7XG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbFRvT3B0aW9ucy5iZWhhdmlvciA9ICdzbW9vdGgnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMubWVzc2FnZXNDb250YWluZXIubmF0aXZlRWxlbWVudC5zY3JvbGxUbyhzY3JvbGxUb09wdGlvbnMpO1xuICAgICAgICAgICAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCB0aGlzLnNjcm9sbERlbGF5KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBjbGVhckhpZGRlblN1Z2dlc3Rpb25zKCkge1xuICAgICAgICBpZiAodGhpcy5fY2hhdFN1Z2dlc3Rpb25zKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGF0U3VnZ2VzdGlvbnMuY2xlYXJIaWRkZW4oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhpZGVTdWdnZXN0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2NoYXRTdWdnZXN0aW9ucz8uaXNTdWdnZXN0ZWRNZW51T3Blbikge1xuICAgICAgICAgICAgdGhpcy5fY2hhdFN1Z2dlc3Rpb25zLnRvZ2dsZVN1Z2dlc3RlZE1lbnUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjaGF0XCIgW2NsYXNzLmNoYXQtLWluLWZ1bGwtc2NyZWVuXT1cImZ1bGxTY3JlZW5cIj5cbiAgICA8ZGl2IGNsYXNzPVwiY2hhdF9fc3RpY2t5LXRvcFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2hhdEhlYWRlclwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoYXRIZWFkZXJcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hhdF9fYWxlcnRcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRyLWNoYXQtYWxlcnRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiAqbmdJZj1cIiFtZXNzYWdlcz8ubGVuZ3RoXCIgY2xhc3M9XCJjaGF0X19lbXB0eS1zdGF0ZVwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNoYXRfX2VtcHR5LXN0YXRlX190ZXh0XCI+e3sgbm9NZXNzYWdlc1BsYWNlaG9sZGVyIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2VzPy5sZW5ndGhcIiBjbGFzcz1cImNoYXRfX21lc3NhZ2VzXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICNtZXNzYWdlc0NvbnRhaW5lclxuICAgICAgICAgICAgY2xhc3M9XCJjaGF0X19tZXNzYWdlc19fY29udGFpbmVyXCJcbiAgICAgICAgICAgIFtjbGFzcy5jaGF0X19tZXNzYWdlc19fY29udGFpbmVyLS1zY3JvbGxdPVwibWVzc2FnZXNDb250YWluZXJXaXRoU2Nyb2xsXCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkci1jaGF0LW1lc3NhZ2VcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2hhdENvbnRlbnRcIiBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGF0Q29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkci1jaGF0LXN1Z2dlc3Rpb25zXG4gICAgICAgICpuZ0lmPVwic3VnZ2VzdGlvbnM/Lmxlbmd0aFwiXG4gICAgICAgIFt2YWx1ZXNdPVwic3VnZ2VzdGlvbnNcIlxuICAgICAgICBbZnVsbFNjcmVlbl09XCJmdWxsU2NyZWVuXCJcbiAgICAgICAgW3dhaXRGb3JSZXBseV09XCJ3YWl0Rm9yUmVwbHlcIlxuICAgICAgICBjbGFzcz1cImNoYXRfX3N1Z2dlc3Rpb25zXCJcbiAgICAgICAgW2NsYXNzLmNoYXRfX3N1Z2dlc3Rpb25zLS1mdWxsLWhlaWdodF09XCJmdWxsU2NyZWVuICYmICFtZXNzYWdlcz8ubGVuZ3RoXCJcbiAgICAgICAgW2J1dHRvbk1vZGVdPVwiISFtZXNzYWdlcz8ubGVuZ3RoXCJcbiAgICAgICAgKHN1Z2dlc3Rpb25TZWxlY3QpPVwic3VnZ2VzdGlvblNlbGVjdC5lbWl0KCRldmVudClcIj5cbiAgICA8L2RyLWNoYXQtc3VnZ2VzdGlvbnM+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZm9ybVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkci1jaGF0LWZvcm1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRyLWFpLXNlYXJjaC1pbnB1dFwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
235
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1jaGF0L2NoYXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItY2hhdC9jaGF0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osaUJBQWlCLEVBQ2pCLE1BQU0sRUFDTixZQUFZLEVBRVosV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7Ozs7Ozs7SUNuQnRGLDJCQUFnRjs7O0lBQS9DLG9EQUErQjs7O0lBT3BFLDhCQUF5RCxlQUFBO0lBQ2YsWUFBMkI7SUFBQSxpQkFBTyxFQUFBOzs7SUFBbEMsZUFBMkI7SUFBM0Isa0RBQTJCOzs7SUFTN0QsMkJBQWtGOzs7SUFBaEQscURBQWdDOzs7SUFDbEUsMkJBQWdGOzs7SUFBL0Msb0RBQStCOzs7SUFQeEUsK0JBQXFELGtCQUFBO0lBSzdDLHFCQUFrRDtJQUNsRCx3RkFBa0Y7SUFDbEYsd0ZBQWdGO0lBQ3BGLGlCQUFNLEVBQUE7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QUFDLHNCQUFzQjtZQUNKLFFBQVE7a0JBQTFDLFlBQVk7bUJBQUMsbUJBQW1CO1lBQ0gsVUFBVTtrQkFBdkMsWUFBWTttQkFBQyxjQUFjO1lBQ0UsVUFBVTtrQkFBdkMsWUFBWTttQkFBQyxjQUFjO1lBQ0csV0FBVztrQkFBekMsWUFBWTttQkFBQyxlQUFlO1lBQ25CLGdCQUFnQjtrQkFBekIsTUFBTTtZQUNnQyxnQkFBZ0I7a0JBQXRELFNBQVM7bUJBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgVmlld0NoaWxkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIE9uRGVzdHJveSxcbiAgICBUZW1wbGF0ZVJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IERyQ2hhdEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2RyLWNoYXQtZm9ybS9jaGF0LWZvcm0uY29tcG9uZW50JztcbmltcG9ydCB7IERyQ2hhdE1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2RyLWNoYXQtbWVzc2FnZS9jaGF0LW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IERyQ2hhdEN1c3RvbU1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi9kci1jaGF0LW1lc3NhZ2UvZHItY2hhdC1tZXNzYWdlLWN1c3RvbS9jaGF0LWN1c3RvbS1tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRHJDaGF0U3VnZ2VzdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL2RyLWNoYXQtc3VnZ2VzdGlvbnMvY2hhdC1zdWdnZXN0aW9ucy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWNoYXQnLFxuICAgIHN0eWxlVXJsczogWycuL2NoYXQuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZVVybDogJ2NoYXQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW0RyQ2hhdEN1c3RvbU1lc3NhZ2VTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJDaGF0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIEBJbnB1dCgpIGZ1bGxTY3JlZW46IGJvb2xlYW47XG4gICAgQElucHV0KCkgbm9NZXNzYWdlc1BsYWNlaG9sZGVyID0gJ05vIG1lc3NhZ2VzIHlldC4nO1xuXG4gICAgQElucHV0KCkgc2V0IGNvbnRlbnRVcGRhdGVTdWJqZWN0KHZhbHVlOiBTdWJqZWN0PGFueT4pIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB2YWx1ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2Nyb2xsIGNoYXQgdG8gdGhlIGJvdHRvbSBvZiB0aGUgbGlzdCB3aGVuIGEgbmV3IG1lc3NhZ2UgYXJyaXZlc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHNjcm9sbEJvdHRvbSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Njcm9sbEJvdHRvbTtcbiAgICB9XG5cbiAgICBzZXQgc2Nyb2xsQm90dG9tKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3Njcm9sbEJvdHRvbSA9ICEhdmFsdWU7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9zY3JvbGxCb3R0b20gPSB0cnVlO1xuXG4gICAgQElucHV0KCkgc3VnZ2VzdGlvbnM6IHN0cmluZ1tdID0gW107XG4gICAgQElucHV0KCkgcmVvcGVuOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogUGFyYW1ldGVyIHRvIGNoZWNrIGlzIHNlbmQgbWVzc2FnZSBmdW5jdGlvbiBhdmFpbGFibGVcbiAgICAgKlxuICAgICAqIEB0eXBlIHtib29sZWFufVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHdhaXRGb3JSZXBseSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHNjcm9sbERlbGF5ID0gMjUwO1xuXG4gICAgQFZpZXdDaGlsZCgnbWVzc2FnZXNDb250YWluZXInKSBtZXNzYWdlc0NvbnRhaW5lcjogRWxlbWVudFJlZjtcbiAgICBAQ29udGVudENoaWxkcmVuKERyQ2hhdE1lc3NhZ2VDb21wb25lbnQpIG1lc3NhZ2VzOiBRdWVyeUxpc3Q8RHJDaGF0TWVzc2FnZUNvbXBvbmVudD47XG4gICAgQENvbnRlbnRDaGlsZChEckNoYXRGb3JtQ29tcG9uZW50KSBjaGF0Rm9ybTogRHJDaGF0Rm9ybUNvbXBvbmVudDtcbiAgICBAQ29udGVudENoaWxkKCdkckNoYXRIZWFkZXInKSBjaGF0SGVhZGVyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICBAQ29udGVudENoaWxkKCdkckNoYXRMb2FkZXInKSBjaGF0TG9hZGVyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgICBAQ29udGVudENoaWxkKCdkckNoYXRDb250ZW50JykgY2hhdENvbnRlbnQ6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuICAgIEBPdXRwdXQoKSBzdWdnZXN0aW9uU2VsZWN0OiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICAgIEBWaWV3Q2hpbGQoRHJDaGF0U3VnZ2VzdGlvbnNDb21wb25lbnQpIF9jaGF0U3VnZ2VzdGlvbnM6IERyQ2hhdFN1Z2dlc3Rpb25zQ29tcG9uZW50O1xuXG4gICAgcHVibGljIGdldCBtZXNzYWdlc0NvbnRhaW5lcldpdGhTY3JvbGwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VzQ29udGFpbmVyICYmXG4gICAgICAgICAgICB0aGlzLm1lc3NhZ2VzQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0ID4gdGhpcy5tZXNzYWdlc0NvbnRhaW5lci5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodFxuICAgICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgdGhpcy5tZXNzYWdlcy5jaGFuZ2VzLnN1YnNjcmliZSgobWVzc2FnZXMpID0+IHtcbiAgICAgICAgICAgIHRoaXMubWVzc2FnZXMgPSBtZXNzYWdlcztcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmlldygpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnVwZGF0ZVZpZXcoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVWaWV3KCkge1xuICAgICAgICBpZiAodGhpcy5zY3JvbGxCb3R0b20pIHtcbiAgICAgICAgICAgIHRoaXMuc2Nyb2xsTGlzdEJvdHRvbSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2Nyb2xsTGlzdEJvdHRvbSgpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5tZXNzYWdlc0NvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFRvT3B0aW9uczogYW55ID0ge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IHRoaXMubWVzc2FnZXNDb250YWluZXIubmF0aXZlRWxlbWVudC5zY3JvbGxIZWlnaHQsXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5yZW9wZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsVG9PcHRpb25zLmJlaGF2aW9yID0gJ3Ntb290aCc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5tZXNzYWdlc0NvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNjcm9sbFRvKHNjcm9sbFRvT3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0sIHRoaXMuc2Nyb2xsRGVsYXkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIGNsZWFySGlkZGVuU3VnZ2VzdGlvbnMoKSB7XG4gICAgICAgIGlmICh0aGlzLl9jaGF0U3VnZ2VzdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMuX2NoYXRTdWdnZXN0aW9ucy5jbGVhckhpZGRlbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaGlkZVN1Z2dlc3Rpb25zKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fY2hhdFN1Z2dlc3Rpb25zPy5pc1N1Z2dlc3RlZE1lbnVPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGF0U3VnZ2VzdGlvbnMudG9nZ2xlU3VnZ2VzdGVkTWVudSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImNoYXRcIiBbY2xhc3MuY2hhdC0taW4tZnVsbC1zY3JlZW5dPVwiZnVsbFNjcmVlblwiPlxuICAgIDxkaXYgY2xhc3M9XCJjaGF0X19zdGlja3ktdG9wXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjaGF0SGVhZGVyXCIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hhdEhlYWRlclwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGF0X19hbGVydFwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZHItY2hhdC1hbGVydFwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiIW1lc3NhZ2VzPy5sZW5ndGhcIiBjbGFzcz1cImNoYXRfX2VtcHR5LXN0YXRlXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY2hhdF9fZW1wdHktc3RhdGVfX3RleHRcIj57eyBub01lc3NhZ2VzUGxhY2Vob2xkZXIgfX08L3NwYW4+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0lmPVwibWVzc2FnZXM/Lmxlbmd0aFwiIGNsYXNzPVwiY2hhdF9fbWVzc2FnZXNcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgI21lc3NhZ2VzQ29udGFpbmVyXG4gICAgICAgICAgICBjbGFzcz1cImNoYXRfX21lc3NhZ2VzX19jb250YWluZXJcIlxuICAgICAgICAgICAgW2NsYXNzLmNoYXRfX21lc3NhZ2VzX19jb250YWluZXItLXNjcm9sbF09XCJtZXNzYWdlc0NvbnRhaW5lcldpdGhTY3JvbGxcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImRyLWNoYXQtbWVzc2FnZVwiPjwvbmctY29udGVudD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjaGF0Q29udGVudFwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoYXRDb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY2hhdExvYWRlclwiIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoYXRMb2FkZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZHItY2hhdC1zdWdnZXN0aW9uc1xuICAgICAgICAqbmdJZj1cInN1Z2dlc3Rpb25zPy5sZW5ndGhcIlxuICAgICAgICBbdmFsdWVzXT1cInN1Z2dlc3Rpb25zXCJcbiAgICAgICAgW2Z1bGxTY3JlZW5dPVwiZnVsbFNjcmVlblwiXG4gICAgICAgIFt3YWl0Rm9yUmVwbHldPVwid2FpdEZvclJlcGx5XCJcbiAgICAgICAgY2xhc3M9XCJjaGF0X19zdWdnZXN0aW9uc1wiXG4gICAgICAgIFtjbGFzcy5jaGF0X19zdWdnZXN0aW9ucy0tZnVsbC1oZWlnaHRdPVwiZnVsbFNjcmVlbiAmJiAhbWVzc2FnZXM/Lmxlbmd0aFwiXG4gICAgICAgIFtidXR0b25Nb2RlXT1cIiEhbWVzc2FnZXM/Lmxlbmd0aFwiXG4gICAgICAgIChzdWdnZXN0aW9uU2VsZWN0KT1cInN1Z2dlc3Rpb25TZWxlY3QuZW1pdCgkZXZlbnQpXCI+XG4gICAgPC9kci1jaGF0LXN1Z2dlc3Rpb25zPlxuXG4gICAgPGRpdiBjbGFzcz1cImZvcm1cIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZHItY2hhdC1mb3JtXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkci1haS1zZWFyY2gtaW5wdXRcIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -34,6 +34,7 @@ export class ChatMessage {
34
34
  this.user = obj?.user;
35
35
  this.files = obj?.files;
36
36
  this.suggestions = obj?.suggestions;
37
+ this.cards = obj?.cards;
37
38
  }
38
39
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL21vZGVscy9jaGF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFPcEUsTUFBTSxDQUFOLElBQVksaUJBVVg7QUFWRCxXQUFZLGlCQUFpQjtJQUN6QixrQ0FBYSxDQUFBO0lBQ2IsNENBQXVCLENBQUE7SUFDdkIsb0NBQWUsQ0FBQTtJQUNmLG9EQUErQixDQUFBO0lBQy9CLHNDQUFpQixDQUFBO0lBQ2pCLG9DQUFlLENBQUE7SUFDZixvQ0FBZSxDQUFBO0lBQ2Ysa0NBQWEsQ0FBQTtJQUNiLG9DQUFlLENBQUE7QUFDbkIsQ0FBQyxFQVZXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFVNUI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUdYO0FBSEQsV0FBWSxRQUFRO0lBQ2hCLHlCQUFhLENBQUE7SUFDYixtQ0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsUUFBUSxLQUFSLFFBQVEsUUFHbkI7QUFxREQsTUFBTSxPQUFPLFdBQVc7SUFtQnBCLFlBQVksR0FBUTtRQUNoQixJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQUUsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFFLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRSxJQUFJLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxVQUFVLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxFQUFFLFdBQVcsQ0FBQztJQUN4QyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJRmVlZGJhY2sgfSBmcm9tICcuL2ZlZWRiYWNrJztcblxuZXhwb3J0IGNvbnN0IElNQUdFX1RZUEVTID0gWydpbWFnZS9wbmcnLCAnaW1hZ2UvanBlZycsICdpbWFnZS9naWYnXTtcblxuZXhwb3J0IGludGVyZmFjZSBJRklsZSBleHRlbmRzIFBhcnRpYWw8RmlsZT4ge1xuICAgIGlkPzogc3RyaW5nO1xuICAgIGRhdGE6IHN0cmluZzsgLy9iYXNlNjQ7XG59XG5cbmV4cG9ydCBlbnVtIENIQVRfTUVTU0FHRV9UWVBFIHtcbiAgICBURVhUID0gJ3RleHQnLFxuICAgIFJJQ0hfVEVYVCA9ICdyaWNoLXRleHQnLFxuICAgIElNQUdFID0gJ2ltYWdlJyxcbiAgICBET1dOTE9BRF9GSUxFID0gJ2Rvd25sb2FkLWZpbGUnLFxuICAgIE1BSUxUTyA9ICdtYWlsdG8nLFxuICAgIEVNQkVEID0gJ2VtYmVkJyxcbiAgICBJTlBVVCA9ICdpbnB1dCcsXG4gICAgQ09ERSA9ICdjb2RlJyxcbiAgICBFUlJPUiA9ICdlcnJvcicsXG59XG5cbmV4cG9ydCBlbnVtIENoYXRSb2xlIHtcbiAgICBVU0VSID0gJ3VzZXInLFxuICAgIEFTU0lTVEFOVCA9ICdhc3Npc3RhbnQnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDaGF0TWVzc2FnZVJlZiB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBzZXE6IG51bWJlcjtcbn1cblxuaW50ZXJmYWNlIElDaGF0TmV3TWVzc2FnZSB7XG4gICAga2luZDogQ0hBVF9NRVNTQUdFX1RZUEU7XG4gICAgcm9sZTogQ2hhdFJvbGU7XG4gICAgYm9keTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDaGF0TWVzc2FnZUJhc2UgZXh0ZW5kcyBJQ2hhdE1lc3NhZ2VSZWYge1xuICAgIGtpbmQ6IHN0cmluZyB8IENIQVRfTUVTU0FHRV9UWVBFO1xuICAgIHJlcGx5OiBib29sZWFuO1xuICAgIHJvbGU6IENoYXRSb2xlO1xuICAgIGF2YXRhclVybD86IHN0cmluZztcbiAgICB1c2VyPzogYW55O1xuICAgIHN1YmplY3RJZD86IHN0cmluZztcbiAgICBmaWxlcz86IEFycmF5PElGSWxlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdFRleHRNZXNzYWdlIGV4dGVuZHMgSUNoYXRNZXNzYWdlQmFzZSB7XG4gICAga2luZDogc3RyaW5nIHwgQ0hBVF9NRVNTQUdFX1RZUEUuVEVYVDtcbiAgICB0ZXh0Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElDaGF0SW1hZ2VNZXNzYWdlIGV4dGVuZHMgSUNoYXRNZXNzYWdlQmFzZSB7XG4gICAga2luZDogc3RyaW5nIHwgQ0hBVF9NRVNTQUdFX1RZUEUuSU1BR0U7XG4gICAgdXJsPzogc3RyaW5nO1xuICAgIGxhYmVsPzogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdERvd25sb2FkRmlsZU1lc3NhZ2UgZXh0ZW5kcyBJQ2hhdE1lc3NhZ2VCYXNlIHtcbiAgICBraW5kOiBzdHJpbmcgfCBDSEFUX01FU1NBR0VfVFlQRS5ET1dOTE9BRF9GSUxFO1xuICAgIHVybD86IHN0cmluZztcbiAgICBsYWJlbD86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgSUNoYXRNZXNzYWdlID0gSUNoYXRNZXNzYWdlQmFzZSAmIElDaGF0VGV4dE1lc3NhZ2UgJiBJQ2hhdEltYWdlTWVzc2FnZSAmIElDaGF0RG93bmxvYWRGaWxlTWVzc2FnZTtcblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdE1lc3NhZ2VGaWxlSWNvblByZXZpZXcge1xuICAgIHVybDogc3RyaW5nO1xuICAgIGljb246IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdE1lc3NhZ2VGaWxlSW1hZ2VQcmV2aWV3IHtcbiAgICB1cmw6IHN0cmluZztcbiAgICB0eXBlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElDaGF0TWVzc2FnZUZpbGUgPSBJQ2hhdE1lc3NhZ2VGaWxlSWNvblByZXZpZXcgfCBJQ2hhdE1lc3NhZ2VGaWxlSW1hZ2VQcmV2aWV3O1xuXG5leHBvcnQgY2xhc3MgQ2hhdE1lc3NhZ2UgaW1wbGVtZW50cyBJQ2hhdE1lc3NhZ2VCYXNlLCBJQ2hhdFRleHRNZXNzYWdlLCBJQ2hhdEltYWdlTWVzc2FnZSwgSUNoYXREb3dubG9hZEZpbGVNZXNzYWdlIHtcbiAgICBpZDogc3RyaW5nO1xuICAgIGtpbmQ6IHN0cmluZyB8IENIQVRfTUVTU0FHRV9UWVBFO1xuICAgIHNlcTogbnVtYmVyO1xuICAgIHJvbGU6IENoYXRSb2xlO1xuICAgIHJlcGx5OiBib29sZWFuO1xuICAgIHRleHQ/OiBzdHJpbmc7XG4gICAgYm9keT86IGFueTtcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgcGFyYW1ldGVycz86IGFueTtcbiAgICBkYXRhPzogYW55O1xuICAgIGF2YXRhclVybD86IHN0cmluZztcbiAgICB1c2VyPzogYW55O1xuICAgIGZlZWRiYWNrPzogSUZlZWRiYWNrO1xuICAgIHN1YmplY3RJZD86IHN0cmluZztcbiAgICBmaWxlcz86IEFycmF5PGFueT47XG4gICAgc3VnZ2VzdGlvbnM/OiBBcnJheTxzdHJpbmc+O1xuXG4gICAgY29uc3RydWN0b3Iob2JqOiBhbnkpIHtcbiAgICAgICAgdGhpcy5pZCA9IG9iaj8uaWQ7XG4gICAgICAgIHRoaXMuc3ViamVjdElkID0gb2JqPy5zdWJqZWN0SWQ7XG4gICAgICAgIHRoaXMuZmVlZGJhY2sgPSBvYmo/LmZlZWRiYWNrO1xuICAgICAgICB0aGlzLmtpbmQgPSBvYmo/LmtpbmQ7XG4gICAgICAgIHRoaXMuc2VxID0gb2JqPy5zZXE7XG4gICAgICAgIHRoaXMucm9sZSA9IG9iaj8ucm9sZTtcbiAgICAgICAgdGhpcy5yZXBseSA9IG9iaj8ucm9sZSAhPT0gQ2hhdFJvbGUuVVNFUjtcbiAgICAgICAgdGhpcy50ZXh0ID0gb2JqPy50ZXh0IHx8IG9iai5ib2R5O1xuICAgICAgICB0aGlzLnVybCA9IG9iaj8udXJsO1xuICAgICAgICB0aGlzLmxhYmVsID0gb2JqPy5sYWJlbDtcbiAgICAgICAgdGhpcy5ib2R5ID0gb2JqPy5ib2R5O1xuICAgICAgICB0aGlzLnBhcmFtZXRlcnMgPSBvYmo/LnBhcmFtZXRlcnM7XG4gICAgICAgIHRoaXMuYXZhdGFyVXJsID0gb2JqPy5hdmF0YXJVcmwgfHwgbnVsbDtcbiAgICAgICAgdGhpcy51c2VyID0gb2JqPy51c2VyO1xuICAgICAgICB0aGlzLmZpbGVzID0gb2JqPy5maWxlcztcbiAgICAgICAgdGhpcy5zdWdnZXN0aW9ucyA9IG9iaj8uc3VnZ2VzdGlvbnM7XG4gICAgfVxufVxuIl19
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL21vZGVscy9jaGF0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFPcEUsTUFBTSxDQUFOLElBQVksaUJBVVg7QUFWRCxXQUFZLGlCQUFpQjtJQUN6QixrQ0FBYSxDQUFBO0lBQ2IsNENBQXVCLENBQUE7SUFDdkIsb0NBQWUsQ0FBQTtJQUNmLG9EQUErQixDQUFBO0lBQy9CLHNDQUFpQixDQUFBO0lBQ2pCLG9DQUFlLENBQUE7SUFDZixvQ0FBZSxDQUFBO0lBQ2Ysa0NBQWEsQ0FBQTtJQUNiLG9DQUFlLENBQUE7QUFDbkIsQ0FBQyxFQVZXLGlCQUFpQixLQUFqQixpQkFBaUIsUUFVNUI7QUFFRCxNQUFNLENBQU4sSUFBWSxRQUdYO0FBSEQsV0FBWSxRQUFRO0lBQ2hCLHlCQUFhLENBQUE7SUFDYixtQ0FBdUIsQ0FBQTtBQUMzQixDQUFDLEVBSFcsUUFBUSxLQUFSLFFBQVEsUUFHbkI7QUFxREQsTUFBTSxPQUFPLFdBQVc7SUFvQnBCLFlBQVksR0FBUTtRQUNoQixJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQUUsU0FBUyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxFQUFFLFFBQVEsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRSxJQUFJLEtBQUssUUFBUSxDQUFDLElBQUksQ0FBQztRQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxFQUFFLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxVQUFVLENBQUM7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEVBQUUsU0FBUyxJQUFJLElBQUksQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLEVBQUUsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxFQUFFLFdBQVcsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsRUFBRSxLQUFLLENBQUM7SUFDNUIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUZlZWRiYWNrIH0gZnJvbSAnLi9mZWVkYmFjayc7XG5cbmV4cG9ydCBjb25zdCBJTUFHRV9UWVBFUyA9IFsnaW1hZ2UvcG5nJywgJ2ltYWdlL2pwZWcnLCAnaW1hZ2UvZ2lmJ107XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZJbGUgZXh0ZW5kcyBQYXJ0aWFsPEZpbGU+IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBkYXRhOiBzdHJpbmc7IC8vYmFzZTY0O1xufVxuXG5leHBvcnQgZW51bSBDSEFUX01FU1NBR0VfVFlQRSB7XG4gICAgVEVYVCA9ICd0ZXh0JyxcbiAgICBSSUNIX1RFWFQgPSAncmljaC10ZXh0JyxcbiAgICBJTUFHRSA9ICdpbWFnZScsXG4gICAgRE9XTkxPQURfRklMRSA9ICdkb3dubG9hZC1maWxlJyxcbiAgICBNQUlMVE8gPSAnbWFpbHRvJyxcbiAgICBFTUJFRCA9ICdlbWJlZCcsXG4gICAgSU5QVVQgPSAnaW5wdXQnLFxuICAgIENPREUgPSAnY29kZScsXG4gICAgRVJST1IgPSAnZXJyb3InLFxufVxuXG5leHBvcnQgZW51bSBDaGF0Um9sZSB7XG4gICAgVVNFUiA9ICd1c2VyJyxcbiAgICBBU1NJU1RBTlQgPSAnYXNzaXN0YW50Jyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdE1lc3NhZ2VSZWYge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgc2VxOiBudW1iZXI7XG59XG5cbmludGVyZmFjZSBJQ2hhdE5ld01lc3NhZ2Uge1xuICAgIGtpbmQ6IENIQVRfTUVTU0FHRV9UWVBFO1xuICAgIHJvbGU6IENoYXRSb2xlO1xuICAgIGJvZHk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdE1lc3NhZ2VCYXNlIGV4dGVuZHMgSUNoYXRNZXNzYWdlUmVmIHtcbiAgICBraW5kOiBzdHJpbmcgfCBDSEFUX01FU1NBR0VfVFlQRTtcbiAgICByZXBseTogYm9vbGVhbjtcbiAgICByb2xlOiBDaGF0Um9sZTtcbiAgICBhdmF0YXJVcmw/OiBzdHJpbmc7XG4gICAgdXNlcj86IGFueTtcbiAgICBzdWJqZWN0SWQ/OiBzdHJpbmc7XG4gICAgZmlsZXM/OiBBcnJheTxJRklsZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXRUZXh0TWVzc2FnZSBleHRlbmRzIElDaGF0TWVzc2FnZUJhc2Uge1xuICAgIGtpbmQ6IHN0cmluZyB8IENIQVRfTUVTU0FHRV9UWVBFLlRFWFQ7XG4gICAgdGV4dD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2hhdEltYWdlTWVzc2FnZSBleHRlbmRzIElDaGF0TWVzc2FnZUJhc2Uge1xuICAgIGtpbmQ6IHN0cmluZyB8IENIQVRfTUVTU0FHRV9UWVBFLklNQUdFO1xuICAgIHVybD86IHN0cmluZztcbiAgICBsYWJlbD86IHN0cmluZztcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXREb3dubG9hZEZpbGVNZXNzYWdlIGV4dGVuZHMgSUNoYXRNZXNzYWdlQmFzZSB7XG4gICAga2luZDogc3RyaW5nIHwgQ0hBVF9NRVNTQUdFX1RZUEUuRE9XTkxPQURfRklMRTtcbiAgICB1cmw/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIElDaGF0TWVzc2FnZSA9IElDaGF0TWVzc2FnZUJhc2UgJiBJQ2hhdFRleHRNZXNzYWdlICYgSUNoYXRJbWFnZU1lc3NhZ2UgJiBJQ2hhdERvd25sb2FkRmlsZU1lc3NhZ2U7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXRNZXNzYWdlRmlsZUljb25QcmV2aWV3IHtcbiAgICB1cmw6IHN0cmluZztcbiAgICBpY29uOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNoYXRNZXNzYWdlRmlsZUltYWdlUHJldmlldyB7XG4gICAgdXJsOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBJQ2hhdE1lc3NhZ2VGaWxlID0gSUNoYXRNZXNzYWdlRmlsZUljb25QcmV2aWV3IHwgSUNoYXRNZXNzYWdlRmlsZUltYWdlUHJldmlldztcblxuZXhwb3J0IGNsYXNzIENoYXRNZXNzYWdlIGltcGxlbWVudHMgSUNoYXRNZXNzYWdlQmFzZSwgSUNoYXRUZXh0TWVzc2FnZSwgSUNoYXRJbWFnZU1lc3NhZ2UsIElDaGF0RG93bmxvYWRGaWxlTWVzc2FnZSB7XG4gICAgaWQ6IHN0cmluZztcbiAgICBraW5kOiBzdHJpbmcgfCBDSEFUX01FU1NBR0VfVFlQRTtcbiAgICBzZXE6IG51bWJlcjtcbiAgICByb2xlOiBDaGF0Um9sZTtcbiAgICByZXBseTogYm9vbGVhbjtcbiAgICB0ZXh0Pzogc3RyaW5nO1xuICAgIGJvZHk/OiBhbnk7XG4gICAgdXJsPzogc3RyaW5nO1xuICAgIGxhYmVsPzogc3RyaW5nO1xuICAgIHBhcmFtZXRlcnM/OiBhbnk7XG4gICAgZGF0YT86IGFueTtcbiAgICBhdmF0YXJVcmw/OiBzdHJpbmc7XG4gICAgdXNlcj86IGFueTtcbiAgICBmZWVkYmFjaz86IElGZWVkYmFjaztcbiAgICBzdWJqZWN0SWQ/OiBzdHJpbmc7XG4gICAgZmlsZXM/OiBBcnJheTxhbnk+O1xuICAgIHN1Z2dlc3Rpb25zPzogQXJyYXk8c3RyaW5nPjtcbiAgICBjYXJkcz86IEFycmF5PGFueT47XG5cbiAgICBjb25zdHJ1Y3RvcihvYmo6IGFueSkge1xuICAgICAgICB0aGlzLmlkID0gb2JqPy5pZDtcbiAgICAgICAgdGhpcy5zdWJqZWN0SWQgPSBvYmo/LnN1YmplY3RJZDtcbiAgICAgICAgdGhpcy5mZWVkYmFjayA9IG9iaj8uZmVlZGJhY2s7XG4gICAgICAgIHRoaXMua2luZCA9IG9iaj8ua2luZDtcbiAgICAgICAgdGhpcy5zZXEgPSBvYmo/LnNlcTtcbiAgICAgICAgdGhpcy5yb2xlID0gb2JqPy5yb2xlO1xuICAgICAgICB0aGlzLnJlcGx5ID0gb2JqPy5yb2xlICE9PSBDaGF0Um9sZS5VU0VSO1xuICAgICAgICB0aGlzLnRleHQgPSBvYmo/LnRleHQgfHwgb2JqLmJvZHk7XG4gICAgICAgIHRoaXMudXJsID0gb2JqPy51cmw7XG4gICAgICAgIHRoaXMubGFiZWwgPSBvYmo/LmxhYmVsO1xuICAgICAgICB0aGlzLmJvZHkgPSBvYmo/LmJvZHk7XG4gICAgICAgIHRoaXMucGFyYW1ldGVycyA9IG9iaj8ucGFyYW1ldGVycztcbiAgICAgICAgdGhpcy5hdmF0YXJVcmwgPSBvYmo/LmF2YXRhclVybCB8fCBudWxsO1xuICAgICAgICB0aGlzLnVzZXIgPSBvYmo/LnVzZXI7XG4gICAgICAgIHRoaXMuZmlsZXMgPSBvYmo/LmZpbGVzO1xuICAgICAgICB0aGlzLnN1Z2dlc3Rpb25zID0gb2JqPy5zdWdnZXN0aW9ucztcbiAgICAgICAgdGhpcy5jYXJkcyA9IG9iaj8uY2FyZHM7XG4gICAgfVxufVxuIl19
@@ -1388,13 +1388,13 @@ const _c1$i = ["multiLabelTemplate"];
1388
1388
  const _c2$8 = ["optionTemplate"];
1389
1389
  const _c3$6 = ["optionHeaderTemplate"];
1390
1390
  const _c4$3 = ["optionFooterTemplate"];
1391
- const _c5 = function (a0) { return { item: a0 }; };
1391
+ const _c5$1 = function (a0) { return { item: a0 }; };
1392
1392
  function DrSelectComponent_2_ng_template_0_Template(rf, ctx) { if (rf & 1) {
1393
1393
  i0.ɵɵelementContainer(0, 6);
1394
1394
  } if (rf & 2) {
1395
1395
  const item_r12 = ctx.item;
1396
1396
  const ctx_r11 = i0.ɵɵnextContext(2);
1397
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r11.optionHeaderTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5, item_r12));
1397
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r11.optionHeaderTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5$1, item_r12));
1398
1398
  } }
1399
1399
  function DrSelectComponent_2_Template(rf, ctx) { if (rf & 1) {
1400
1400
  i0.ɵɵtemplate(0, DrSelectComponent_2_ng_template_0_Template, 1, 4, "ng-template", 5);
@@ -1417,7 +1417,7 @@ function DrSelectComponent_4_ng_template_0_Template(rf, ctx) { if (rf & 1) {
1417
1417
  } if (rf & 2) {
1418
1418
  const item_r18 = ctx.item;
1419
1419
  const ctx_r17 = i0.ɵɵnextContext(2);
1420
- i0.ɵɵproperty("ngTemplateOutlet", ctx_r17.labelTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5, item_r18));
1420
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r17.labelTemplate)("ngTemplateOutletContext", i0.ɵɵpureFunction1(2, _c5$1, item_r18));
1421
1421
  } }
1422
1422
  function DrSelectComponent_4_Template(rf, ctx) { if (rf & 1) {
1423
1423
  i0.ɵɵtemplate(0, DrSelectComponent_4_ng_template_0_Template, 1, 4, "ng-template", 8);
@@ -5842,6 +5842,7 @@ class ChatMessage {
5842
5842
  this.user = obj?.user;
5843
5843
  this.files = obj?.files;
5844
5844
  this.suggestions = obj?.suggestions;
5845
+ this.cards = obj?.cards;
5845
5846
  }
5846
5847
  }
5847
5848
 
@@ -6829,8 +6830,9 @@ class DrChatSuggestionsComponent {
6829
6830
  }] }); })();
6830
6831
 
6831
6832
  const _c0$p = ["drChatHeader"];
6832
- const _c1$b = ["drChatContent"];
6833
- const _c2$5 = ["messagesContainer"];
6833
+ const _c1$b = ["drChatLoader"];
6834
+ const _c2$5 = ["drChatContent"];
6835
+ const _c3$4 = ["messagesContainer"];
6834
6836
  function DrChatComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
6835
6837
  i0.ɵɵelementContainer(0, 8);
6836
6838
  } if (rf & 2) {
@@ -6852,10 +6854,17 @@ function DrChatComponent_div_6_ng_container_4_Template(rf, ctx) { if (rf & 1) {
6852
6854
  const ctx_r5 = i0.ɵɵnextContext(2);
6853
6855
  i0.ɵɵproperty("ngTemplateOutlet", ctx_r5.chatContent);
6854
6856
  } }
6857
+ function DrChatComponent_div_6_ng_container_5_Template(rf, ctx) { if (rf & 1) {
6858
+ i0.ɵɵelementContainer(0, 8);
6859
+ } if (rf & 2) {
6860
+ const ctx_r6 = i0.ɵɵnextContext(2);
6861
+ i0.ɵɵproperty("ngTemplateOutlet", ctx_r6.chatLoader);
6862
+ } }
6855
6863
  function DrChatComponent_div_6_Template(rf, ctx) { if (rf & 1) {
6856
6864
  i0.ɵɵelementStart(0, "div", 11)(1, "div", 12, 13);
6857
6865
  i0.ɵɵprojection(3, 3);
6858
6866
  i0.ɵɵtemplate(4, DrChatComponent_div_6_ng_container_4_Template, 1, 1, "ng-container", 2);
6867
+ i0.ɵɵtemplate(5, DrChatComponent_div_6_ng_container_5_Template, 1, 1, "ng-container", 2);
6859
6868
  i0.ɵɵelementEnd()();
6860
6869
  } if (rf & 2) {
6861
6870
  const ctx_r2 = i0.ɵɵnextContext();
@@ -6863,19 +6872,21 @@ function DrChatComponent_div_6_Template(rf, ctx) { if (rf & 1) {
6863
6872
  i0.ɵɵclassProp("chat__messages__container--scroll", ctx_r2.messagesContainerWithScroll);
6864
6873
  i0.ɵɵadvance(3);
6865
6874
  i0.ɵɵproperty("ngIf", ctx_r2.chatContent);
6875
+ i0.ɵɵadvance(1);
6876
+ i0.ɵɵproperty("ngIf", ctx_r2.chatLoader);
6866
6877
  } }
6867
6878
  function DrChatComponent_dr_chat_suggestions_7_Template(rf, ctx) { if (rf & 1) {
6868
- const _r7 = i0.ɵɵgetCurrentView();
6879
+ const _r8 = i0.ɵɵgetCurrentView();
6869
6880
  i0.ɵɵelementStart(0, "dr-chat-suggestions", 14);
6870
- i0.ɵɵlistener("suggestionSelect", function DrChatComponent_dr_chat_suggestions_7_Template_dr_chat_suggestions_suggestionSelect_0_listener($event) { i0.ɵɵrestoreView(_r7); const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.suggestionSelect.emit($event)); });
6881
+ i0.ɵɵlistener("suggestionSelect", function DrChatComponent_dr_chat_suggestions_7_Template_dr_chat_suggestions_suggestionSelect_0_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r7.suggestionSelect.emit($event)); });
6871
6882
  i0.ɵɵelementEnd();
6872
6883
  } if (rf & 2) {
6873
6884
  const ctx_r3 = i0.ɵɵnextContext();
6874
6885
  i0.ɵɵclassProp("chat__suggestions--full-height", ctx_r3.fullScreen && !(ctx_r3.messages == null ? null : ctx_r3.messages.length));
6875
6886
  i0.ɵɵproperty("values", ctx_r3.suggestions)("fullScreen", ctx_r3.fullScreen)("waitForReply", ctx_r3.waitForReply)("buttonMode", !!(ctx_r3.messages == null ? null : ctx_r3.messages.length));
6876
6887
  } }
6877
- const _c3$4 = [[["dr-chat-alert"]], [["dr-chat-form"]], [["dr-ai-search-input"]], [["dr-chat-message"]]];
6878
- const _c4$2 = ["dr-chat-alert", "dr-chat-form", "dr-ai-search-input", "dr-chat-message"];
6888
+ const _c4$2 = [[["dr-chat-alert"]], [["dr-chat-form"]], [["dr-ai-search-input"]], [["dr-chat-message"]]];
6889
+ const _c5 = ["dr-chat-alert", "dr-chat-form", "dr-ai-search-input", "dr-chat-message"];
6879
6890
  class DrChatComponent {
6880
6891
  set contentUpdateSubject(value) {
6881
6892
  if (value) {
@@ -6957,29 +6968,31 @@ class DrChatComponent {
6957
6968
  i0.ɵɵcontentQuery(dirIndex, DrChatFormComponent, 5);
6958
6969
  i0.ɵɵcontentQuery(dirIndex, _c0$p, 5);
6959
6970
  i0.ɵɵcontentQuery(dirIndex, _c1$b, 5);
6971
+ i0.ɵɵcontentQuery(dirIndex, _c2$5, 5);
6960
6972
  i0.ɵɵcontentQuery(dirIndex, DrChatMessageComponent, 4);
6961
6973
  } if (rf & 2) {
6962
6974
  let _t;
6963
6975
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatForm = _t.first);
6964
6976
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatHeader = _t.first);
6977
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatLoader = _t.first);
6965
6978
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.chatContent = _t.first);
6966
6979
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.messages = _t);
6967
6980
  } }, viewQuery: function DrChatComponent_Query(rf, ctx) { if (rf & 1) {
6968
- i0.ɵɵviewQuery(_c2$5, 5);
6981
+ i0.ɵɵviewQuery(_c3$4, 5);
6969
6982
  i0.ɵɵviewQuery(DrChatSuggestionsComponent, 5);
6970
6983
  } if (rf & 2) {
6971
6984
  let _t;
6972
6985
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.messagesContainer = _t.first);
6973
6986
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._chatSuggestions = _t.first);
6974
- } }, inputs: { fullScreen: "fullScreen", noMessagesPlaceholder: "noMessagesPlaceholder", contentUpdateSubject: "contentUpdateSubject", scrollBottom: "scrollBottom", suggestions: "suggestions", reopen: "reopen", waitForReply: "waitForReply", scrollDelay: "scrollDelay" }, outputs: { suggestionSelect: "suggestionSelect" }, features: [i0.ɵɵProvidersFeature([DrChatCustomMessageService])], ngContentSelectors: _c4$2, decls: 11, vars: 6, consts: [[1, "chat"], [1, "chat__sticky-top"], [3, "ngTemplateOutlet", 4, "ngIf"], [1, "chat__alert"], ["class", "chat__empty-state", 4, "ngIf"], ["class", "chat__messages", 4, "ngIf"], ["class", "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "chat__suggestions--full-height", "buttonMode", "suggestionSelect", 4, "ngIf"], [1, "form"], [3, "ngTemplateOutlet"], [1, "chat__empty-state"], [1, "chat__empty-state__text"], [1, "chat__messages"], [1, "chat__messages__container"], ["messagesContainer", ""], [1, "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "buttonMode", "suggestionSelect"]], template: function DrChatComponent_Template(rf, ctx) { if (rf & 1) {
6975
- i0.ɵɵprojectionDef(_c3$4);
6987
+ } }, inputs: { fullScreen: "fullScreen", noMessagesPlaceholder: "noMessagesPlaceholder", contentUpdateSubject: "contentUpdateSubject", scrollBottom: "scrollBottom", suggestions: "suggestions", reopen: "reopen", waitForReply: "waitForReply", scrollDelay: "scrollDelay" }, outputs: { suggestionSelect: "suggestionSelect" }, features: [i0.ɵɵProvidersFeature([DrChatCustomMessageService])], ngContentSelectors: _c5, decls: 11, vars: 6, consts: [[1, "chat"], [1, "chat__sticky-top"], [3, "ngTemplateOutlet", 4, "ngIf"], [1, "chat__alert"], ["class", "chat__empty-state", 4, "ngIf"], ["class", "chat__messages", 4, "ngIf"], ["class", "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "chat__suggestions--full-height", "buttonMode", "suggestionSelect", 4, "ngIf"], [1, "form"], [3, "ngTemplateOutlet"], [1, "chat__empty-state"], [1, "chat__empty-state__text"], [1, "chat__messages"], [1, "chat__messages__container"], ["messagesContainer", ""], [1, "chat__suggestions", 3, "values", "fullScreen", "waitForReply", "buttonMode", "suggestionSelect"]], template: function DrChatComponent_Template(rf, ctx) { if (rf & 1) {
6988
+ i0.ɵɵprojectionDef(_c4$2);
6976
6989
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
6977
6990
  i0.ɵɵtemplate(2, DrChatComponent_ng_container_2_Template, 1, 1, "ng-container", 2);
6978
6991
  i0.ɵɵelementStart(3, "div", 3);
6979
6992
  i0.ɵɵprojection(4);
6980
6993
  i0.ɵɵelementEnd()();
6981
6994
  i0.ɵɵtemplate(5, DrChatComponent_div_5_Template, 3, 1, "div", 4);
6982
- i0.ɵɵtemplate(6, DrChatComponent_div_6_Template, 5, 3, "div", 5);
6995
+ i0.ɵɵtemplate(6, DrChatComponent_div_6_Template, 6, 4, "div", 5);
6983
6996
  i0.ɵɵtemplate(7, DrChatComponent_dr_chat_suggestions_7_Template, 1, 6, "dr-chat-suggestions", 6);
6984
6997
  i0.ɵɵelementStart(8, "div", 7);
6985
6998
  i0.ɵɵprojection(9, 1);
@@ -6999,7 +7012,7 @@ class DrChatComponent {
6999
7012
  }
7000
7013
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DrChatComponent, [{
7001
7014
  type: Component,
7002
- args: [{ selector: 'dr-chat', providers: [DrChatCustomMessageService], template: "<div class=\"chat\" [class.chat--in-full-screen]=\"fullScreen\">\n <div class=\"chat__sticky-top\">\n <ng-container *ngIf=\"chatHeader\" [ngTemplateOutlet]=\"chatHeader\"></ng-container>\n\n <div class=\"chat__alert\">\n <ng-content select=\"dr-chat-alert\"></ng-content>\n </div>\n </div>\n\n <div *ngIf=\"!messages?.length\" class=\"chat__empty-state\">\n <span class=\"chat__empty-state__text\">{{ noMessagesPlaceholder }}</span>\n </div>\n\n <div *ngIf=\"messages?.length\" class=\"chat__messages\">\n <div\n #messagesContainer\n class=\"chat__messages__container\"\n [class.chat__messages__container--scroll]=\"messagesContainerWithScroll\">\n <ng-content select=\"dr-chat-message\"></ng-content>\n <ng-container *ngIf=\"chatContent\" [ngTemplateOutlet]=\"chatContent\"></ng-container>\n </div>\n </div>\n\n <dr-chat-suggestions\n *ngIf=\"suggestions?.length\"\n [values]=\"suggestions\"\n [fullScreen]=\"fullScreen\"\n [waitForReply]=\"waitForReply\"\n class=\"chat__suggestions\"\n [class.chat__suggestions--full-height]=\"fullScreen && !messages?.length\"\n [buttonMode]=\"!!messages?.length\"\n (suggestionSelect)=\"suggestionSelect.emit($event)\">\n </dr-chat-suggestions>\n\n <div class=\"form\">\n <ng-content select=\"dr-chat-form\"></ng-content>\n <ng-content select=\"dr-ai-search-input\"></ng-content>\n </div>\n</div>\n", styles: [":host{height:100%;width:100%;display:flex;flex-direction:column}.chat{position:relative;display:flex;flex-grow:1;flex-direction:column;height:100%;background-color:#fff;color:#4e566c;font-family:Poppins,sans-serif;font-size:14px;font-weight:400;line-height:22px;box-shadow:0 2px 36px #00000026}.chat__sticky-top{display:flex;flex-direction:column;box-shadow:0 1px 3px #0003;z-index:1}.chat__empty-state{display:flex;justify-content:center}.chat__empty-state__text{padding:44px 0;font-family:Poppins,sans-serif;font-size:18px;font-weight:400;line-height:28px;text-align:center;max-width:440px;color:#4646ce}.chat__messages{display:flex;flex-grow:1;overflow-x:hidden;overflow-y:auto;height:100%;width:100%}.chat__messages__container{overflow-y:auto;overflow-x:hidden;display:flex;flex-shrink:0;flex-direction:column;width:100%;padding-bottom:1px}.chat__messages__container--scroll::ng-deep dr-chat-message{padding-right:8px}.chat__suggestions{flex:1}.chat__suggestions ::ng-deep .chat-suggestions__container{padding:0}.chat__suggestions--full-height{flex-grow:1;height:1px;overflow:auto}.chat--in-full-screen .chat__header{padding-left:32px;padding-right:32px}.chat--in-full-screen .chat__empty-state__text{padding:77px 0;font-size:28px;line-height:46px;max-width:570px}.chat--in-full-screen .chat__messages::ng-deep dr-chat-message{justify-content:center}.chat--in-full-screen .chat__messages::ng-deep .message{max-width:912px}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items{padding-left:0;padding-right:0}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items__item{font-size:16px}\n"] }]
7015
+ args: [{ selector: 'dr-chat', providers: [DrChatCustomMessageService], template: "<div class=\"chat\" [class.chat--in-full-screen]=\"fullScreen\">\n <div class=\"chat__sticky-top\">\n <ng-container *ngIf=\"chatHeader\" [ngTemplateOutlet]=\"chatHeader\"></ng-container>\n\n <div class=\"chat__alert\">\n <ng-content select=\"dr-chat-alert\"></ng-content>\n </div>\n </div>\n\n <div *ngIf=\"!messages?.length\" class=\"chat__empty-state\">\n <span class=\"chat__empty-state__text\">{{ noMessagesPlaceholder }}</span>\n </div>\n\n <div *ngIf=\"messages?.length\" class=\"chat__messages\">\n <div\n #messagesContainer\n class=\"chat__messages__container\"\n [class.chat__messages__container--scroll]=\"messagesContainerWithScroll\">\n <ng-content select=\"dr-chat-message\"></ng-content>\n <ng-container *ngIf=\"chatContent\" [ngTemplateOutlet]=\"chatContent\"></ng-container>\n <ng-container *ngIf=\"chatLoader\" [ngTemplateOutlet]=\"chatLoader\"></ng-container>\n </div>\n </div>\n\n <dr-chat-suggestions\n *ngIf=\"suggestions?.length\"\n [values]=\"suggestions\"\n [fullScreen]=\"fullScreen\"\n [waitForReply]=\"waitForReply\"\n class=\"chat__suggestions\"\n [class.chat__suggestions--full-height]=\"fullScreen && !messages?.length\"\n [buttonMode]=\"!!messages?.length\"\n (suggestionSelect)=\"suggestionSelect.emit($event)\">\n </dr-chat-suggestions>\n\n <div class=\"form\">\n <ng-content select=\"dr-chat-form\"></ng-content>\n <ng-content select=\"dr-ai-search-input\"></ng-content>\n </div>\n</div>\n", styles: [":host{height:100%;width:100%;display:flex;flex-direction:column}.chat{position:relative;display:flex;flex-grow:1;flex-direction:column;height:100%;background-color:#fff;color:#4e566c;font-family:Poppins,sans-serif;font-size:14px;font-weight:400;line-height:22px;box-shadow:0 2px 36px #00000026}.chat__sticky-top{display:flex;flex-direction:column;box-shadow:0 1px 3px #0003;z-index:1}.chat__empty-state{display:flex;justify-content:center}.chat__empty-state__text{padding:44px 0;font-family:Poppins,sans-serif;font-size:18px;font-weight:400;line-height:28px;text-align:center;max-width:440px;color:#4646ce}.chat__messages{display:flex;flex-grow:1;overflow-x:hidden;overflow-y:auto;height:100%;width:100%}.chat__messages__container{overflow-y:auto;overflow-x:hidden;display:flex;flex-shrink:0;flex-direction:column;width:100%;padding-bottom:1px}.chat__messages__container--scroll::ng-deep dr-chat-message{padding-right:8px}.chat__suggestions{flex:1}.chat__suggestions ::ng-deep .chat-suggestions__container{padding:0}.chat__suggestions--full-height{flex-grow:1;height:1px;overflow:auto}.chat--in-full-screen .chat__header{padding-left:32px;padding-right:32px}.chat--in-full-screen .chat__empty-state__text{padding:77px 0;font-size:28px;line-height:46px;max-width:570px}.chat--in-full-screen .chat__messages::ng-deep dr-chat-message{justify-content:center}.chat--in-full-screen .chat__messages::ng-deep .message{max-width:912px}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items{padding-left:0;padding-right:0}.chat--in-full-screen .chat__suggestions::ng-deep .chat-suggestions__items__item{font-size:16px}\n"] }]
7003
7016
  }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { fullScreen: [{
7004
7017
  type: Input
7005
7018
  }], noMessagesPlaceholder: [{
@@ -7028,6 +7041,9 @@ class DrChatComponent {
7028
7041
  }], chatHeader: [{
7029
7042
  type: ContentChild,
7030
7043
  args: ['drChatHeader']
7044
+ }], chatLoader: [{
7045
+ type: ContentChild,
7046
+ args: ['drChatLoader']
7031
7047
  }], chatContent: [{
7032
7048
  type: ContentChild,
7033
7049
  args: ['drChatContent']