@ksremp/ngx-ksremp-app-lib 1.0.26 → 2.0.0
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/components/chatbot-lex/chatbot-lex.component.mjs +609 -0
- package/esm2022/lib/components/footer/footer.component.mjs +11 -13
- package/esm2022/lib/components/header/header.component.mjs +50 -45
- package/esm2022/lib/components/user-login/user-login.component.mjs +43 -3
- package/esm2022/lib/models/LibConstants.mjs +2 -8
- package/esm2022/lib/ngx-reusa-app-lib.module.mjs +10 -5
- package/esm2022/lib/pages/BasePage.mjs +4 -1
- package/esm2022/lib/pages/common/landing2/landing2.component.mjs +12 -14
- package/esm2022/lib/services/lex-chat/lex-chat.service.mjs +86 -0
- package/esm2022/public-api.mjs +4 -3
- package/fesm2022/ksremp-ngx-ksremp-app-lib.mjs +1016 -582
- package/fesm2022/ksremp-ngx-ksremp-app-lib.mjs.map +1 -1
- package/lib/components/chatbot-lex/chatbot-lex.component.d.ts +79 -0
- package/lib/components/chatbot-lex/chatbot-lex.component.d.ts.map +1 -0
- package/lib/components/footer/footer.component.d.ts +1 -3
- package/lib/components/footer/footer.component.d.ts.map +1 -1
- package/lib/components/header/header.component.d.ts +2 -1
- package/lib/components/header/header.component.d.ts.map +1 -1
- package/lib/components/questionnaire/dynamic-form-question.component.d.ts +1 -1
- package/lib/components/user-login/user-login.component.d.ts +4 -1
- package/lib/components/user-login/user-login.component.d.ts.map +1 -1
- package/lib/models/LibConstants.d.ts +1 -7
- package/lib/models/LibConstants.d.ts.map +1 -1
- package/lib/ngx-reusa-app-lib.module.d.ts +61 -60
- package/lib/ngx-reusa-app-lib.module.d.ts.map +1 -1
- package/lib/pages/BasePage.d.ts +1 -0
- package/lib/pages/BasePage.d.ts.map +1 -1
- package/lib/pages/common/landing2/landing2.component.d.ts +1 -3
- package/lib/pages/common/landing2/landing2.component.d.ts.map +1 -1
- package/lib/services/lex-chat/lex-chat.service.d.ts +24 -0
- package/lib/services/lex-chat/lex-chat.service.d.ts.map +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -2
- package/public-api.d.ts.map +1 -1
- package/esm2022/lib/services/chatbot/chatbot.service.mjs +0 -258
- package/esm2022/lib/services/chatbot/script.const.mjs +0 -42
- package/lib/services/chatbot/chatbot.service.d.ts +0 -61
- package/lib/services/chatbot/chatbot.service.d.ts.map +0 -1
- package/lib/services/chatbot/script.const.d.ts +0 -16
- package/lib/services/chatbot/script.const.d.ts.map +0 -1
|
@@ -1,258 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { LibConstants } from '../../models/LibConstants';
|
|
4
|
-
import { ScriptConstant } from './script.const';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../logger/logger.service";
|
|
7
|
-
import * as i2 from "../login/login.service";
|
|
8
|
-
import * as i3 from "../util/util.service";
|
|
9
|
-
export class ChatbotService {
|
|
10
|
-
constructor(rendererFactory, logger, ls, util) {
|
|
11
|
-
this.logger = logger;
|
|
12
|
-
this.ls = ls;
|
|
13
|
-
this.util = util;
|
|
14
|
-
this.map = new Map();
|
|
15
|
-
//todo: add ksCustomData
|
|
16
|
-
this.msCustomData = {
|
|
17
|
-
connectingMessage: "Welcome to ReEmployMS. I am your virtual assistant to help you with MDES related queries.",
|
|
18
|
-
hoverMessage: "Ask chat bot",
|
|
19
|
-
botState: "MS",
|
|
20
|
-
showCollectUserDetailForm: true,
|
|
21
|
-
showDisclaimerPopUp: true,
|
|
22
|
-
showChatBubbleAtClosed: false,
|
|
23
|
-
botAvatarImageName: "AvatarIcon.png",
|
|
24
|
-
botIconImageName: "AvatarIcon.png",
|
|
25
|
-
formBannerPath: "",
|
|
26
|
-
rootFilePath: "UI/",
|
|
27
|
-
supportedLanguages: ["en"],
|
|
28
|
-
initialLanguage: "en",
|
|
29
|
-
// starterTask: {en:"Forgot Password", es:"Forgot Password"},
|
|
30
|
-
disclaimerPopup: {
|
|
31
|
-
header: "Important message",
|
|
32
|
-
message: `MDES' virtual assistant will ask for specific identifying information, such as Social Security Number and Date of Birth, that is needed to answer your question(s).</br></br> MDES follows strict federal security guidelines to protect your sensitive information.</br></br>To further protect your information you should close the chat window and browser when you are finished.</p>`
|
|
33
|
-
},
|
|
34
|
-
headerConfig: {
|
|
35
|
-
showLanguageToggle: false,
|
|
36
|
-
showMinimizeButton: false,
|
|
37
|
-
showExpandButton: false,
|
|
38
|
-
showReloadButton: false,
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
this.meCustomData = {
|
|
42
|
-
connectingMessage: "Welcome to ReEmployME. I am your virtual assistant to help you with ME related queries.",
|
|
43
|
-
hoverMessage: "Ask Blue",
|
|
44
|
-
botState: "ME",
|
|
45
|
-
showCollectUserDetailForm: false,
|
|
46
|
-
showDisclaimerPopUp: true,
|
|
47
|
-
showChatBubbleAtClosed: false,
|
|
48
|
-
botIconImageName: "BlueIcon.svg",
|
|
49
|
-
botAvatarImageName: "BlueIcon.svg",
|
|
50
|
-
formBannerPath: "",
|
|
51
|
-
rootFilePath: "UI/",
|
|
52
|
-
supportedLanguages: ["en"],
|
|
53
|
-
initialLanguage: "en",
|
|
54
|
-
disclaimerPopup: {
|
|
55
|
-
header: "Important message",
|
|
56
|
-
message: `MEDOL's virtual assistant may ask you specific identifying information, such as Social Security Number and Date of Birth, that is needed to answer your question(s). ME DOL follows strict federal security guidelines to protect your sensitive information. To further protect your information you should close the chat window and browser when you are finished.`
|
|
57
|
-
},
|
|
58
|
-
headerConfig: {
|
|
59
|
-
showLanguageToggle: false,
|
|
60
|
-
showMinimizeButton: true,
|
|
61
|
-
showExpandButton: false,
|
|
62
|
-
showReloadButton: true,
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
this.ctCustomData = {
|
|
66
|
-
connectingMessage: "Welcome to ReEmployCT. I am your virtual assistant to help you with ME related queries.",
|
|
67
|
-
hoverMessage: "Ask Blue",
|
|
68
|
-
botState: "CT",
|
|
69
|
-
showCollectUserDetailForm: true,
|
|
70
|
-
showDisclaimerPopUp: true,
|
|
71
|
-
showChatBubbleAtClosed: false,
|
|
72
|
-
botIconImageName: "chatboticon.png",
|
|
73
|
-
botAvatarImageName: "chatboticon.png",
|
|
74
|
-
formBannerPath: "",
|
|
75
|
-
rootFilePath: "UI/",
|
|
76
|
-
supportedLanguages: ["en", "es"],
|
|
77
|
-
initialLanguage: "en",
|
|
78
|
-
disclaimerPopup: {
|
|
79
|
-
header: "Important message",
|
|
80
|
-
message: `The CTDOL virtual assistant will need to ask for specific identifying information that is needed to answer your question(s) such as date of birth or Social Security number. The agency follows strict federal security guidelines to protect your sensitive information. To further protect your information, if you are on a public computer, please log out and close your browser when you are finished.`
|
|
81
|
-
},
|
|
82
|
-
headerConfig: {
|
|
83
|
-
showLanguageToggle: true,
|
|
84
|
-
showMinimizeButton: true,
|
|
85
|
-
showExpandButton: false,
|
|
86
|
-
showReloadButton: true,
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
this.botOptions = {};
|
|
90
|
-
this.koreBot = {};
|
|
91
|
-
this.initChatbot = new BehaviorSubject(false);
|
|
92
|
-
this.showChatbot = (LibConstants.enableChatbot == 'true');
|
|
93
|
-
this.renderer = rendererFactory.createRenderer(null, null);
|
|
94
|
-
this.logger.info('ChatbotService initializzed successfully.');
|
|
95
|
-
this.map.set("ms", this.msCustomData);
|
|
96
|
-
this.map.set("me", this.meCustomData);
|
|
97
|
-
this.map.set("ct", this.ctCustomData);
|
|
98
|
-
this.getChatbotBs().subscribe(val => {
|
|
99
|
-
if (val) {
|
|
100
|
-
this.logger.info('Initializing Chatbot.');
|
|
101
|
-
this.initializeChatbot();
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
getChatbotBs() {
|
|
106
|
-
return this.initChatbot;
|
|
107
|
-
}
|
|
108
|
-
initialize() {
|
|
109
|
-
this.initChatbot.next(true);
|
|
110
|
-
}
|
|
111
|
-
loadScripAndStyle() {
|
|
112
|
-
if (!LibConstants.production && this.showChatbot) { //set this property to true if you want to test this in local env.
|
|
113
|
-
this.logger.info('Not Loading Chatbot as current environment is not production. Set "production=true" and "showChatbot=true" if you want to test chatbot in local env.');
|
|
114
|
-
return;
|
|
115
|
-
;
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
this.logger.info('Loading chatbot ...');
|
|
119
|
-
}
|
|
120
|
-
ScriptConstant.importUrls.forEach(scriptElement => {
|
|
121
|
-
// other than js and stylesheet are ignored
|
|
122
|
-
if (scriptElement.type === ScriptConstant.jsProperty) {
|
|
123
|
-
const jsScriptNode = document.createElement('script');
|
|
124
|
-
//// jsScriptNode.src = environment.koreAiWebSdkUrl + scriptElement.url;
|
|
125
|
-
jsScriptNode.src = LibConstants.koreAiWebSdkUrl + scriptElement.url;
|
|
126
|
-
jsScriptNode.type = 'text/javascript';
|
|
127
|
-
if (scriptElement.async == null) {
|
|
128
|
-
this.logger.info(jsScriptNode.src + " will be loaded as async because of null async value");
|
|
129
|
-
jsScriptNode.async = true;
|
|
130
|
-
}
|
|
131
|
-
else if (scriptElement.async == true) {
|
|
132
|
-
this.logger.info(scriptElement.url + " will be loaded as async because of null async true");
|
|
133
|
-
jsScriptNode.async = true;
|
|
134
|
-
}
|
|
135
|
-
else {
|
|
136
|
-
this.logger.info(scriptElement.url + " will be loaded as async=false");
|
|
137
|
-
jsScriptNode.async = false;
|
|
138
|
-
}
|
|
139
|
-
this.renderer.appendChild(document.getElementsByTagName('head')[0], jsScriptNode);
|
|
140
|
-
document.getElementsByTagName('head')[0].appendChild(jsScriptNode);
|
|
141
|
-
}
|
|
142
|
-
else if (scriptElement.type === ScriptConstant.cssProperty) {
|
|
143
|
-
const styleNode = document.createElement('link');
|
|
144
|
-
styleNode.rel = 'stylesheet';
|
|
145
|
-
styleNode.href = LibConstants.koreAiWebSdkUrl + scriptElement.url;
|
|
146
|
-
this.renderer.appendChild(document.getElementsByTagName('head')[0], styleNode);
|
|
147
|
-
}
|
|
148
|
-
else if (scriptElement.type === ScriptConstant.cssPropertyAbsolute) {
|
|
149
|
-
const styleNode = document.createElement('link');
|
|
150
|
-
styleNode.rel = 'stylesheet';
|
|
151
|
-
styleNode.href = scriptElement.url;
|
|
152
|
-
this.renderer.appendChild(document.getElementsByTagName('head')[0], styleNode);
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
this.logger.error('url ' + scriptElement.url + ' is not going to be loaded because of invalid type ' + scriptElement.type);
|
|
156
|
-
}
|
|
157
|
-
}); // for each
|
|
158
|
-
}
|
|
159
|
-
initializeChatbot() {
|
|
160
|
-
this.openbot();
|
|
161
|
-
}
|
|
162
|
-
/***
|
|
163
|
-
*
|
|
164
|
-
* @description Initialize the chatbot with logged-in user. If user is not logged-in then bot session will be created using unique timestamp.
|
|
165
|
-
*/
|
|
166
|
-
openbot() {
|
|
167
|
-
let userId = null;
|
|
168
|
-
if (this.ls.getUser()) {
|
|
169
|
-
userId = this.ls.getUser().username + '_' + this.ls.getUser().userType;
|
|
170
|
-
this.botOptions.accessToken = this.ls.getUser().access_token;
|
|
171
|
-
}
|
|
172
|
-
else {
|
|
173
|
-
userId = Math.floor((Math.random() * 10000000) + 1) + "_" + new Date().getMilliseconds() + "@mdes.ms.gov";
|
|
174
|
-
}
|
|
175
|
-
//***CODE_START
|
|
176
|
-
this.botOptions.logLevel = 'debug';
|
|
177
|
-
this.botOptions.koreAPIUrl = LibConstants.koreAiChatbotServer;
|
|
178
|
-
//botOptions.koreSpeechAPIUrl = "https://speech.kore.ai/";
|
|
179
|
-
//botOptions.bearer = "bearer xyz-------------------";
|
|
180
|
-
//botOptions.ttsSocketUrl = 'wss://speech.kore.ai/tts/ws';
|
|
181
|
-
this.botOptions.recorderWorkerPath = './libs/recorderWorker.js';
|
|
182
|
-
this.botOptions.assertionFn = (options, callback) => this.assertion(options, callback);
|
|
183
|
-
//botOptions.koreAnonymousFn = koreAnonymousFn;
|
|
184
|
-
this.botOptions.JWTUrl = LibConstants.koreAiJwtService;
|
|
185
|
-
this.botOptions.userIdentity = userId; // Provide users email id here
|
|
186
|
-
this.botOptions.botInfo = {
|
|
187
|
-
name: LibConstants.koreAiBotName,
|
|
188
|
-
"_id": LibConstants.koreAiBotId,
|
|
189
|
-
customData: this.map.get(this.util.getStateLowercase()) ? this.map.get(this.util.getStateLowercase()) : this.map.get('ms'),
|
|
190
|
-
// customData: { connectingMessage: "Welcome to ReEmployME. I am your virtual assistant to help you with ME related queries.", hoverMessage: "Ask Blue", botState: "ME", showCollectUserDetailForm: false, showDisclaimerPopUp: true, botIconImageName: "chatboticon.png", botAvatarImageName: "chatboticon.png", rootFilePath: "UI/", supportedLanguages: ["en", "es"], initialLanguage: "en", disclaimerPopup: { header: "Important Message", message: `The virtual assistant will need to ask for specific identifying information that is needed to answer you question(s) such as date of birth or Social Security number. The agency follows strict federal security guidelines to protect your sensitive information. To further protect your information, if you are on a public computer, please log out and close your browser when you are finished.`, }, headerConfig: { showLanguageToggle: true, showMinimizeButton: true, showExpandbutton: false, showReloadButton: true, } }
|
|
191
|
-
}; // bot name is case sensitive
|
|
192
|
-
this.botOptions.clientId = LibConstants.koreAiClientId;
|
|
193
|
-
//this.botOptions.clientSecret = LibConstants.koreAiClientSecret;
|
|
194
|
-
//this.botOptions.reemployUsBearerToken= "";
|
|
195
|
-
// will need to pass token to koreAiChatBotServer when authentication needs to be validated for server side api call
|
|
196
|
-
var chatConfig = {
|
|
197
|
-
botOptions: this.botOptions,
|
|
198
|
-
allowIframe: false,
|
|
199
|
-
isSendButton: true,
|
|
200
|
-
isTTSEnabled: false,
|
|
201
|
-
isSpeechEnabled: false,
|
|
202
|
-
allowGoogleSpeech: false,
|
|
203
|
-
allowLocation: false,
|
|
204
|
-
loadHistory: false,
|
|
205
|
-
messageHistoryLimit: 10,
|
|
206
|
-
autoEnableSpeechAndTTS: false,
|
|
207
|
-
graphLib: "d3"
|
|
208
|
-
};
|
|
209
|
-
if (Object.keys(this.koreBot).length === 0) {
|
|
210
|
-
this.koreBot = koreBotChat();
|
|
211
|
-
this.koreBot.show(chatConfig);
|
|
212
|
-
}
|
|
213
|
-
else {
|
|
214
|
-
this.koreBot.resumeChatWindow();
|
|
215
|
-
}
|
|
216
|
-
//***CODE_END
|
|
217
|
-
}
|
|
218
|
-
assertion(options, callback) {
|
|
219
|
-
var jsonData = {
|
|
220
|
-
"clientId": this.botOptions.clientId,
|
|
221
|
-
"clientSecret": this.botOptions.clientSecret,
|
|
222
|
-
"identity": options.userIdentity || this.botOptions.userIdentity,
|
|
223
|
-
"aud": "",
|
|
224
|
-
"isAnonymous": (this.ls.getUser() == null),
|
|
225
|
-
"accessToken": this.botOptions.accessToken
|
|
226
|
-
};
|
|
227
|
-
$.ajax({
|
|
228
|
-
url: this.botOptions.JWTUrl,
|
|
229
|
-
type: 'post',
|
|
230
|
-
data: jsonData,
|
|
231
|
-
dataType: 'json',
|
|
232
|
-
success: (data) => {
|
|
233
|
-
options.assertion = data.jwt;
|
|
234
|
-
options.handleError = this.koreBot.showError;
|
|
235
|
-
options.chatHistory = this.koreBot.chatHistory;
|
|
236
|
-
options.botDetails = this.koreBot.botDetails;
|
|
237
|
-
callback(null, options);
|
|
238
|
-
setTimeout(function () {
|
|
239
|
-
if (this.koreBot && this.koreBot.initToken) {
|
|
240
|
-
this.koreBot.initToken(options);
|
|
241
|
-
}
|
|
242
|
-
}, 2000);
|
|
243
|
-
},
|
|
244
|
-
error: (err) => {
|
|
245
|
-
this.koreBot.showError(err.responseText);
|
|
246
|
-
}
|
|
247
|
-
});
|
|
248
|
-
}
|
|
249
|
-
static { this.ɵfac = function ChatbotService_Factory(t) { return new (t || ChatbotService)(i0.ɵɵinject(i0.RendererFactory2), i0.ɵɵinject(i1.LoggerService), i0.ɵɵinject(i2.LoginService), i0.ɵɵinject(i3.UtilService)); }; }
|
|
250
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ChatbotService, factory: ChatbotService.ɵfac, providedIn: 'root' }); }
|
|
251
|
-
}
|
|
252
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ChatbotService, [{
|
|
253
|
-
type: Injectable,
|
|
254
|
-
args: [{
|
|
255
|
-
providedIn: 'root'
|
|
256
|
-
}]
|
|
257
|
-
}], () => [{ type: i0.RendererFactory2 }, { type: i1.LoggerService }, { type: i2.LoginService }, { type: i3.UtilService }], null); })();
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdGJvdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9jaGF0Ym90L2NoYXRib3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUErQixNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBcUNoRCxNQUFNLE9BQU8sY0FBYztJQW1GekIsWUFBWSxlQUFpQyxFQUFVLE1BQXFCLEVBQVUsRUFBZ0IsRUFBVSxJQUFpQjtRQUExRSxXQUFNLEdBQU4sTUFBTSxDQUFlO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBYztRQUFVLFNBQUksR0FBSixJQUFJLENBQWE7UUFqRmpJLFFBQUcsR0FBNEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN6Qyx3QkFBd0I7UUFDeEIsaUJBQVksR0FBZTtZQUN6QixpQkFBaUIsRUFBRSwyRkFBMkY7WUFDOUcsWUFBWSxFQUFFLGNBQWM7WUFDNUIsUUFBUSxFQUFFLElBQUk7WUFDZCx5QkFBeUIsRUFBRSxJQUFJO1lBQy9CLG1CQUFtQixFQUFFLElBQUk7WUFDekIsc0JBQXNCLEVBQUUsS0FBSztZQUM3QixrQkFBa0IsRUFBRSxnQkFBZ0I7WUFDcEMsZ0JBQWdCLEVBQUUsZ0JBQWdCO1lBQ2xDLGNBQWMsRUFBRSxFQUFFO1lBQ2xCLFlBQVksRUFBRSxLQUFLO1lBQ25CLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUFDO1lBQzFCLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLDZEQUE2RDtZQUM3RCxlQUFlLEVBQUU7Z0JBQ2YsTUFBTSxFQUFFLG1C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LEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDaEIsT0FBTyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO2dCQUM3QixPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO2dCQUM3QyxPQUFPLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO2dCQUMvQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO2dCQUM3QyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dCQUN4QixVQUFVLENBQUM7b0JBQ1QsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO3dCQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztxQkFDakM7Z0JBQ0gsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ1gsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUMzQyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrRUEzUFUsY0FBYzt1RUFBZCxjQUFjLFdBQWQsY0FBYyxtQkFGYixNQUFNOztpRkFFUCxjQUFjO2NBSDFCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5MiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XHJcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuLi9sb2dnZXIvbG9nZ2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTY3JpcHRDb25zdGFudCB9IGZyb20gJy4vc2NyaXB0LmNvbnN0JztcclxuaW1wb3J0IHsgTG9naW5TZXJ2aWNlIH0gZnJvbSAnLi4vbG9naW4vbG9naW4uc2VydmljZSc7XHJcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vdXRpbC91dGlsLnNlcnZpY2UnO1xyXG5cclxuZGVjbGFyZSBjb25zdCBrb3JlQm90Q2hhdDogYW55O1xyXG5kZWNsYXJlIGNvbnN0ICQ6IGFueTtcclxuXHJcbmludGVyZmFjZSBEaXNjbGFpbWVyUG9wdXAge1xyXG4gIGhlYWRlcjogc3RyaW5nO1xyXG4gIG1lc3NhZ2U6IHN0cmluZ1xyXG59XHJcbmludGVyZmFjZSBIZWFkZXJDb25maWcge1xyXG4gIHNob3dMYW5ndWFnZVRvZ2dsZTogYm9vbGVhbjtcclxuICBzaG93TWluaW1pemVCdXR0b246IGJvb2xlYW47XHJcbiAgc2hvd0V4cGFuZEJ1dHRvbjogYm9vbGVhbjtcclxuICBzaG93UmVsb2FkQnV0dG9uOiBib29sZWFuO1xyXG59XHJcbmludGVyZmFjZSBDdXN0b21EYXRhIHtcclxuICBjb25uZWN0aW5nTWVzc2FnZTogc3RyaW5nO1xyXG4gIGhvdmVyTWVzc2FnZTogc3RyaW5nO1xyXG4gIGJvdFN0YXRlOiBzdHJpbmc7XHJcbiAgc2hvd0NvbGxlY3RVc2VyRGV0YWlsRm9ybTogYm9vbGVhbjtcclxuICBzaG93RGlzY2xhaW1lclBvcFVwOiBib29sZWFuO1xyXG4gIHNob3dDaGF0QnViYmxlQXRDbG9zZWQ6IGJvb2xlYW47XHJcbiAgYm90QXZhdGFySW1hZ2VOYW1lOiBzdHJpbmc7XHJcbiAgYm90SWNvbkltYWdlTmFtZTogc3RyaW5nO1xyXG4gIGZvcm1CYW5uZXJQYXRoOiBzdHJpbmcsXHJcbiAgcm9vdEZpbGVQYXRoOiBzdHJpbmc7XHJcbiAgc3VwcG9ydGVkTGFuZ3VhZ2VzOiBzdHJpbmdbXTtcclxuICBpbml0aWFsTGFuZ3VhZ2U6IHN0cmluZztcclxuICBkaXNjbGFpbWVyUG9wdXA6IERpc2NsYWltZXJQb3B1cDtcclxuICBoZWFkZXJDb25maWc6IEhlYWRlckNvbmZpZztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhdGJvdFNlcnZpY2Uge1xyXG5cclxuICBtYXA6IE1hcDxzdHJpbmcsIEN1c3RvbURhdGE+ID0gbmV3IE1hcCgpO1xyXG4gIC8vdG9kbzogYWRkIGtzQ3VzdG9tRGF0YVxyXG4gIG1zQ3VzdG9tRGF0YTogQ3VzdG9tRGF0YSA9IHtcclxuICAgIGNvbm5lY3RpbmdNZXNzYWdlOiBcIldlbGNvbWUgdG8gUmVFbXBsb3lNUy4gSSBhbSB5b3VyIHZpcnR1YWwgYXNzaXN0YW50IHRvIGhlbHAgeW91IHdpdGggTURFUyByZWxhdGVkIHF1ZXJpZXMuXCIsXHJcbiAgICBob3Zlck1lc3NhZ2U6IFwiQXNrIGNoYXQgYm90XCIsXHJcbiAgICBib3RTdGF0ZTogXCJNU1wiLFxyXG4gICAgc2hvd0NvbGxlY3RVc2VyRGV0YWlsRm9ybTogdHJ1ZSxcclxuICAgIHNob3dEaXNjbGFpbWVyUG9wVXA6IHRydWUsXHJcbiAgICBzaG93Q2hhdEJ1YmJsZUF0Q2xvc2VkOiBmYWxzZSxcclxuICAgIGJvdEF2YXRhckltYWdlTmFtZTogXCJBdmF0YXJJY29uLnBuZ1wiLFxyXG4gICAgYm90SWNvbkltYWdlTmFtZTogXCJBdmF0YXJJY29uLnBuZ1wiLFxyXG4gICAgZm9ybUJhbm5lclBhdGg6IFwiXCIsXHJcbiAgICByb290RmlsZVBhdGg6IFwiVUkvXCIsXHJcbiAgICBzdXBwb3J0ZWRMYW5ndWFnZXM6IFtcImVuXCJdLFxyXG4gICAgaW5pdGlhbExhbmd1YWdlOiBcImVuXCIsXHJcbiAgICAvLyBzdGFydGVyVGFzazoge2VuOlwiRm9yZ290IFBhc3N3b3JkXCIsIGVzOlwiRm9yZ290IFBhc3N3b3JkXCJ9LFxyXG4gICAgZGlzY2xhaW1lclBvcHVwOiB7XHJcbiAgICAgIGhlYWRlcjogXCJJbXBvcnRhbnQgbWVzc2FnZVwiLFxyXG4gICAgICBtZXNzYWdlOiBgTURFUycgdmlydHVhbCBhc3Npc3RhbnQgd2lsbCBhc2sgZm9yIHNwZWNpZmljIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uLCBzdWNoIGFzIFNvY2lhbCBTZWN1cml0eSBOdW1iZXIgYW5kIERhdGUgb2YgQmlydGgsIHRoYXQgaXMgbmVlZGVkIHRvIGFuc3dlciB5b3VyIHF1ZXN0aW9uKHMpLjwvYnI+PC9icj4gTURFUyBmb2xsb3dzIHN0cmljdCBmZWRlcmFsIHNlY3VyaXR5IGd1aWRlbGluZXMgdG8gcHJvdGVjdCB5b3VyIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi48L2JyPjwvYnI+VG8gZnVydGhlciBwcm90ZWN0IHlvdXIgaW5mb3JtYXRpb24geW91IHNob3VsZCBjbG9zZSB0aGUgY2hhdCB3aW5kb3cgYW5kIGJyb3dzZXIgd2hlbiB5b3UgYXJlIGZpbmlzaGVkLjwvcD5gXHJcbiAgICB9LFxyXG4gICAgaGVhZGVyQ29uZmlnOiB7XHJcbiAgICAgIHNob3dMYW5ndWFnZVRvZ2dsZTogZmFsc2UsXHJcbiAgICAgIHNob3dNaW5pbWl6ZUJ1dHRvbjogZmFsc2UsXHJcbiAgICAgIHNob3dFeHBhbmRCdXR0b246IGZhbHNlLFxyXG4gICAgICBzaG93UmVsb2FkQnV0dG9uOiBmYWxzZSxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG1lQ3VzdG9tRGF0YTogQ3VzdG9tRGF0YSA9IHtcclxuICAgIGNvbm5lY3RpbmdNZXNzYWdlOiBcIldlbGNvbWUgdG8gUmVFbXBsb3lNRS4gSSBhbSB5b3VyIHZpcnR1YWwgYXNzaXN0YW50IHRvIGhlbHAgeW91IHdpdGggTUUgcmVsYXRlZCBxdWVyaWVzLlwiLFxyXG4gICAgaG92ZXJNZXNzYWdlOiBcIkFzayBCbHVlXCIsXHJcbiAgICBib3RTdGF0ZTogXCJNRVwiLFxyXG4gICAgc2hvd0NvbGxlY3RVc2VyRGV0YWlsRm9ybTogZmFsc2UsXHJcbiAgICBzaG93RGlzY2xhaW1lclBvcFVwOiB0cnVlLFxyXG4gICAgc2hvd0NoYXRCdWJibGVBdENsb3NlZDogZmFsc2UsXHJcbiAgICBib3RJY29uSW1hZ2VOYW1lOiBcIkJsdWVJY29uLnN2Z1wiLFxyXG4gICAgYm90QXZhdGFySW1hZ2VOYW1lOiBcIkJsdWVJY29uLnN2Z1wiLFxyXG4gICAgZm9ybUJhbm5lclBhdGg6IFwiXCIsXHJcbiAgICByb290RmlsZVBhdGg6IFwiVUkvXCIsXHJcbiAgICBzdXBwb3J0ZWRMYW5ndWFnZXM6IFtcImVuXCJdLFxyXG4gICAgaW5pdGlhbExhbmd1YWdlOiBcImVuXCIsXHJcbiAgICBkaXNjbGFpbWVyUG9wdXA6IHtcclxuICAgICAgaGVhZGVyOiBcIkltcG9ydGFudCBtZXNzYWdlXCIsXHJcbiAgICAgIG1lc3NhZ2U6IGBNRURPTCdzIHZpcnR1YWwgYXNzaXN0YW50IG1heSBhc2sgeW91IHNwZWNpZmljIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uLCBzdWNoIGFzIFNvY2lhbCBTZWN1cml0eSBOdW1iZXIgYW5kIERhdGUgb2YgQmlydGgsIHRoYXQgaXMgbmVlZGVkIHRvIGFuc3dlciB5b3VyIHF1ZXN0aW9uKHMpLiBNRSBET0wgZm9sbG93cyBzdHJpY3QgZmVkZXJhbCBzZWN1cml0eSBndWlkZWxpbmVzIHRvIHByb3RlY3QgeW91ciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uIFRvIGZ1cnRoZXIgcHJvdGVjdCB5b3VyIGluZm9ybWF0aW9uIHlvdSBzaG91bGQgY2xvc2UgdGhlIGNoYXQgd2luZG93IGFuZCBicm93c2VyIHdoZW4geW91IGFyZSBmaW5pc2hlZC5gXHJcbiAgICB9LFxyXG4gICAgaGVhZGVyQ29uZmlnOiB7XHJcbiAgICAgIHNob3dMYW5ndWFnZVRvZ2dsZTogZmFsc2UsXHJcbiAgICAgIHNob3dNaW5pbWl6ZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgc2hvd0V4cGFuZEJ1dHRvbjogZmFsc2UsXHJcbiAgICAgIHNob3dSZWxvYWRCdXR0b246IHRydWUsXHJcbiAgICB9XHJcbiAgfVxyXG4gIGN0Q3VzdG9tRGF0YTogQ3VzdG9tRGF0YSA9IHtcclxuICAgIGNvbm5lY3RpbmdNZXNzYWdlOiBcIldlbGNvbWUgdG8gUmVFbXBsb3lDVC4gSSBhbSB5b3VyIHZpcnR1YWwgYXNzaXN0YW50IHRvIGhlbHAgeW91IHdpdGggTUUgcmVsYXRlZCBxdWVyaWVzLlwiLFxyXG4gICAgaG92ZXJNZXNzYWdlOiBcIkFzayBCbHVlXCIsXHJcbiAgICBib3RTdGF0ZTogXCJDVFwiLFxyXG4gICAgc2hvd0NvbGxlY3RVc2VyRGV0YWlsRm9ybTogdHJ1ZSxcclxuICAgIHNob3dEaXNjbGFpbWVyUG9wVXA6IHRydWUsXHJcbiAgICBzaG93Q2hhdEJ1YmJsZUF0Q2xvc2VkOiBmYWxzZSxcclxuICAgIGJvdEljb25JbWFnZU5hbWU6IFwiY2hhdGJvdGljb24ucG5nXCIsXHJcbiAgICBib3RBdmF0YXJJbWFnZU5hbWU6IFwiY2hhdGJvdGljb24ucG5nXCIsXHJcbiAgICBmb3JtQmFubmVyUGF0aDogXCJcIixcclxuICAgIHJvb3RGaWxlUGF0aDogXCJVSS9cIixcclxuICAgIHN1cHBvcnRlZExhbmd1YWdlczogW1wiZW5cIiwgXCJlc1wiXSxcclxuICAgIGluaXRpYWxMYW5ndWFnZTogXCJlblwiLFxyXG4gICAgZGlzY2xhaW1lclBvcHVwOiB7XHJcbiAgICAgIGhlYWRlcjogXCJJbXBvcnRhbnQgbWVzc2FnZVwiLFxyXG4gICAgICBtZXNzYWdlOiBgVGhlIENURE9MIHZpcnR1YWwgYXNzaXN0YW50IHdpbGwgbmVlZCB0byBhc2sgZm9yIHNwZWNpZmljIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uIHRoYXQgaXMgbmVlZGVkIHRvIGFuc3dlciB5b3VyIHF1ZXN0aW9uKHMpIHN1Y2ggYXMgZGF0ZSBvZiBiaXJ0aCBvciBTb2NpYWwgU2VjdXJpdHkgbnVtYmVyLiBUaGUgYWdlbmN5IGZvbGxvd3Mgc3RyaWN0IGZlZGVyYWwgc2VjdXJpdHkgZ3VpZGVsaW5lcyB0byBwcm90ZWN0IHlvdXIgc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiBUbyBmdXJ0aGVyIHByb3RlY3QgeW91ciBpbmZvcm1hdGlvbiwgaWYgeW91IGFyZSBvbiBhIHB1YmxpYyBjb21wdXRlciwgcGxlYXNlIGxvZyBvdXQgYW5kIGNsb3NlIHlvdXIgYnJvd3NlciB3aGVuIHlvdSBhcmUgZmluaXNoZWQuYFxyXG4gICAgfSxcclxuICAgIGhlYWRlckNvbmZpZzoge1xyXG4gICAgICBzaG93TGFuZ3VhZ2VUb2dnbGU6IHRydWUsXHJcbiAgICAgIHNob3dNaW5pbWl6ZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgc2hvd0V4cGFuZEJ1dHRvbjogZmFsc2UsXHJcbiAgICAgIHNob3dSZWxvYWRCdXR0b246IHRydWUsXHJcbiAgICB9XHJcbiAgfVxyXG4gIHB1YmxpYyBib3RPcHRpb25zOiBhbnkgPSB7fTtcclxuICBwdWJsaWMga29yZUJvdDogYW55ID0ge307XHJcbiAgaW5pdENoYXRib3Q6IEJlaGF2aW9yU3ViamVjdDxCb29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xyXG4gIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMjtcclxuICBwdWJsaWMgc2hvd0NoYXRib3Q6IGJvb2xlYW4gPSAoTGliQ29uc3RhbnRzLmVuYWJsZUNoYXRib3QgPT0gJ3RydWUnKTtcclxuICBjb25zdHJ1Y3RvcihyZW5kZXJlckZhY3Rvcnk6IFJlbmRlcmVyRmFjdG9yeTIsIHByaXZhdGUgbG9nZ2VyOiBMb2dnZXJTZXJ2aWNlLCBwcml2YXRlIGxzOiBMb2dpblNlcnZpY2UsIHByaXZhdGUgdXRpbDogVXRpbFNlcnZpY2UpIHtcclxuICAgIHRoaXMucmVuZGVyZXIgPSByZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIobnVsbCwgbnVsbCk7XHJcbiAgICB0aGlzLmxvZ2dlci5pbmZvKCdDaGF0Ym90U2VydmljZSBpbml0aWFsaXp6ZWQgc3VjY2Vzc2Z1bGx5LicpO1xyXG5cclxuICAgIHRoaXMubWFwLnNldChcIm1zXCIsIHRoaXMubXNDdXN0b21EYXRhKTtcclxuICAgIHRoaXMubWFwLnNldChcIm1lXCIsIHRoaXMubWVDdXN0b21EYXRhKTtcclxuICAgIHRoaXMubWFwLnNldChcImN0XCIsIHRoaXMuY3RDdXN0b21EYXRhKTtcclxuICAgIHRoaXMuZ2V0Q2hhdGJvdEJzKCkuc3Vic2NyaWJlKHZhbCA9PiB7XHJcbiAgICAgIGlmICh2YWwpIHtcclxuICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKCdJbml0aWFsaXppbmcgQ2hhdGJvdC4nKTtcclxuICAgICAgICB0aGlzLmluaXRpYWxpemVDaGF0Ym90KCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q2hhdGJvdEJzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaW5pdENoYXRib3Q7XHJcbiAgfVxyXG5cclxuICBpbml0aWFsaXplKCkge1xyXG4gICAgdGhpcy5pbml0Q2hhdGJvdC5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgbG9hZFNjcmlwQW5kU3R5bGUoKSB7XHJcbiAgICBpZiAoIUxpYkNvbnN0YW50cy5wcm9kdWN0aW9uICYmIHRoaXMuc2hvd0NoYXRib3QpIHsgLy9zZXQgdGhpcyBwcm9wZXJ0eSB0byB0cnVlIGlmIHlvdSB3YW50IHRvIHRlc3QgdGhpcyBpbiBsb2NhbCBlbnYuXHJcbiAgICAgIHRoaXMubG9nZ2VyLmluZm8oJ05vdCBMb2FkaW5nIENoYXRib3QgYXMgY3VycmVudCBlbnZpcm9ubWVudCBpcyBub3QgcHJvZHVjdGlvbi4gU2V0IFwicHJvZHVjdGlvbj10cnVlXCIgYW5kIFwic2hvd0NoYXRib3Q9dHJ1ZVwiIGlmIHlvdSB3YW50IHRvIHRlc3QgY2hhdGJvdCBpbiBsb2NhbCBlbnYuJyk7XHJcbiAgICAgIHJldHVybjs7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmxvZ2dlci5pbmZvKCdMb2FkaW5nIGNoYXRib3QgLi4uJyk7XHJcbiAgICB9XHJcblxyXG4gICAgU2NyaXB0Q29uc3RhbnQuaW1wb3J0VXJscy5mb3JFYWNoKHNjcmlwdEVsZW1lbnQgPT4ge1xyXG4gICAgICAvLyBvdGhlciB0aGFuIGpzIGFuZCBzdHlsZXNoZWV0IGFyZSBpZ25vcmVkXHJcbiAgICAgIGlmIChzY3JpcHRFbGVtZW50LnR5cGUgPT09IFNjcmlwdENvbnN0YW50LmpzUHJvcGVydHkpIHtcclxuICAgICAgICBjb25zdCBqc1NjcmlwdE5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcclxuICAgICAgICAvLy8vIGpzU2NyaXB0Tm9kZS5zcmMgPSBlbnZpcm9ubWVudC5rb3JlQWlXZWJTZGtVcmwgKyBzY3JpcHRFbGVtZW50LnVybDtcclxuICAgICAgICBqc1NjcmlwdE5vZGUuc3JjID0gTGliQ29uc3RhbnRzLmtvcmVBaVdlYlNka1VybCArIHNjcmlwdEVsZW1lbnQudXJsO1xyXG5cclxuICAgICAgICBqc1NjcmlwdE5vZGUudHlwZSA9ICd0ZXh0L2phdmFzY3JpcHQnO1xyXG5cclxuICAgICAgICBpZiAoc2NyaXB0RWxlbWVudC5hc3luYyA9PSBudWxsKSB7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKGpzU2NyaXB0Tm9kZS5zcmMgKyBcIiB3aWxsIGJlIGxvYWRlZCBhcyBhc3luYyBiZWNhdXNlIG9mIG51bGwgYXN5bmMgdmFsdWVcIik7XHJcbiAgICAgICAgICBqc1NjcmlwdE5vZGUuYXN5bmMgPSB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoc2NyaXB0RWxlbWVudC5hc3luYyA9PSB0cnVlKSB7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKHNjcmlwdEVsZW1lbnQudXJsICsgXCIgd2lsbCBiZSBsb2FkZWQgYXMgYXN5bmMgYmVjYXVzZSBvZiBudWxsIGFzeW5jIHRydWVcIik7XHJcblxyXG4gICAgICAgICAganNTY3JpcHROb2RlLmFzeW5jID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKHNjcmlwdEVsZW1lbnQudXJsICsgXCIgd2lsbCBiZSBsb2FkZWQgYXMgYXN5bmM9ZmFsc2VcIik7XHJcblxyXG4gICAgICAgICAganNTY3JpcHROb2RlLmFzeW5jID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSwganNTY3JpcHROb2RlKTtcclxuICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmFwcGVuZENoaWxkKGpzU2NyaXB0Tm9kZSk7XHJcbiAgICAgIH0gZWxzZSBpZiAoc2NyaXB0RWxlbWVudC50eXBlID09PSBTY3JpcHRDb25zdGFudC5jc3NQcm9wZXJ0eSkge1xyXG4gICAgICAgIGNvbnN0IHN0eWxlTm9kZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2xpbmsnKTtcclxuICAgICAgICBzdHlsZU5vZGUucmVsID0gJ3N0eWxlc2hlZXQnO1xyXG4gICAgICAgIHN0eWxlTm9kZS5ocmVmID0gTGliQ29uc3RhbnRzLmtvcmVBaVdlYlNka1VybCArIHNjcmlwdEVsZW1lbnQudXJsO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSwgc3R5bGVOb2RlKTtcclxuICAgICAgfSBlbHNlIGlmIChzY3JpcHRFbGVtZW50LnR5cGUgPT09IFNjcmlwdENvbnN0YW50LmNzc1Byb3BlcnR5QWJzb2x1dGUpIHtcclxuICAgICAgICBjb25zdCBzdHlsZU5vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdsaW5rJyk7XHJcbiAgICAgICAgc3R5bGVOb2RlLnJlbCA9ICdzdHlsZXNoZWV0JztcclxuICAgICAgICBzdHlsZU5vZGUuaHJlZiA9IHNjcmlwdEVsZW1lbnQudXJsO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXSwgc3R5bGVOb2RlKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcigndXJsICcgKyBzY3JpcHRFbGVtZW50LnVybCArICcgaXMgbm90IGdvaW5nIHRvIGJlIGxvYWRlZCBiZWNhdXNlIG9mIGludmFsaWQgdHlwZSAnICsgc2NyaXB0RWxlbWVudC50eXBlKTtcclxuICAgICAgfVxyXG4gICAgfSk7IC8vIGZvciBlYWNoXHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHB1YmxpYyBpbml0aWFsaXplQ2hhdGJvdCgpIHtcclxuICAgIHRoaXMub3BlbmJvdCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqKlxyXG4gICAqIFxyXG4gICAqIEBkZXNjcmlwdGlvbiBJbml0aWFsaXplIHRoZSBjaGF0Ym90IHdpdGggbG9nZ2VkLWluIHVzZXIuIElmIHVzZXIgaXMgbm90IGxvZ2dlZC1pbiB0aGVuIGJvdCBzZXNzaW9uIHdpbGwgYmUgY3JlYXRlZCB1c2luZyB1bmlxdWUgdGltZXN0YW1wLlxyXG4gICAqL1xyXG4gIG9wZW5ib3QoKSB7XHJcbiAgICBsZXQgdXNlcklkID0gbnVsbDtcclxuICAgIGlmICh0aGlzLmxzLmdldFVzZXIoKSkge1xyXG4gICAgICB1c2VySWQgPSB0aGlzLmxzLmdldFVzZXIoKS51c2VybmFtZSArICdfJyArIHRoaXMubHMuZ2V0VXNlcigpLnVzZXJUeXBlO1xyXG4gICAgICB0aGlzLmJvdE9wdGlvbnMuYWNjZXNzVG9rZW4gPSB0aGlzLmxzLmdldFVzZXIoKS5hY2Nlc3NfdG9rZW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB1c2VySWQgPSBNYXRoLmZsb29yKChNYXRoLnJhbmRvbSgpICogMTAwMDAwMDApICsgMSkgKyBcIl9cIiArIG5ldyBEYXRlKCkuZ2V0TWlsbGlzZWNvbmRzKCkgKyBcIkBtZGVzLm1zLmdvdlwiO1xyXG4gICAgfVxyXG4gICAgLy8qKipDT0RFX1NUQVJUXHJcbiAgICB0aGlzLmJvdE9wdGlvbnMubG9nTGV2ZWwgPSAnZGVidWcnO1xyXG4gICAgdGhpcy5ib3RPcHRpb25zLmtvcmVBUElVcmwgPSBMaWJDb25zdGFudHMua29yZUFpQ2hhdGJvdFNlcnZlcjtcclxuICAgIC8vYm90T3B0aW9ucy5rb3JlU3BlZWNoQVBJVXJsID0gXCJodHRwczovL3NwZWVjaC5rb3JlLmFpL1wiO1xyXG4gICAgLy9ib3RPcHRpb25zLmJlYXJlciA9IFwiYmVhcmVyIHh5ei0tLS0tLS0tLS0tLS0tLS0tLS1cIjtcclxuICAgIC8vYm90T3B0aW9ucy50dHNTb2NrZXRVcmwgPSAnd3NzOi8vc3BlZWNoLmtvcmUuYWkvdHRzL3dzJztcclxuICAgIHRoaXMuYm90T3B0aW9ucy5yZWNvcmRlcldvcmtlclBhdGggPSAnLi9saWJzL3JlY29yZGVyV29ya2VyLmpzJztcclxuICAgIHRoaXMuYm90T3B0aW9ucy5hc3NlcnRpb25GbiA9IChvcHRpb25zLCBjYWxsYmFjaykgPT4gdGhpcy5hc3NlcnRpb24ob3B0aW9ucywgY2FsbGJhY2spO1xyXG4gICAgLy9ib3RPcHRpb25zLmtvcmVBbm9ueW1vdXNGbiA9IGtvcmVBbm9ueW1vdXNGbjtcclxuXHJcbiAgICB0aGlzLmJvdE9wdGlvbnMuSldUVXJsID0gTGliQ29uc3RhbnRzLmtvcmVBaUp3dFNlcnZpY2U7XHJcbiAgICBcclxuICAgIHRoaXMuYm90T3B0aW9ucy51c2VySWRlbnRpdHkgPSB1c2VySWQ7Ly8gUHJvdmlkZSB1c2VycyBlbWFpbCBpZCBoZXJlXHJcbiAgICB0aGlzLmJvdE9wdGlvbnMuYm90SW5mbyA9IHtcclxuICAgICAgbmFtZTogTGliQ29uc3RhbnRzLmtvcmVBaUJvdE5hbWUsXHJcbiAgICAgIFwiX2lkXCI6IExpYkNvbnN0YW50cy5rb3JlQWlCb3RJZCxcclxuICAgICAgY3VzdG9tRGF0YSA6IHRoaXMubWFwLmdldCh0aGlzLnV0aWwuZ2V0U3RhdGVMb3dlcmNhc2UoKSkgPyB0aGlzLm1hcC5nZXQodGhpcy51dGlsLmdldFN0YXRlTG93ZXJjYXNlKCkpIDogdGhpcy5tYXAuZ2V0KCdtcycpLFxyXG4gICAgICAvLyBjdXN0b21EYXRhOiB7IGNvbm5lY3RpbmdNZXNzYWdlOiBcIldlbGNvbWUgdG8gUmVFbXBsb3lNRS4gSSBhbSB5b3VyIHZpcnR1YWwgYXNzaXN0YW50IHRvIGhlbHAgeW91IHdpdGggTUUgcmVsYXRlZCBxdWVyaWVzLlwiLCBob3Zlck1lc3NhZ2U6IFwiQXNrIEJsdWVcIiwgYm90U3RhdGU6IFwiTUVcIiwgc2hvd0NvbGxlY3RVc2VyRGV0YWlsRm9ybTogZmFsc2UsIHNob3dEaXNjbGFpbWVyUG9wVXA6IHRydWUsIGJvdEljb25JbWFnZU5hbWU6IFwiY2hhdGJvdGljb24ucG5nXCIsIGJvdEF2YXRhckltYWdlTmFtZTogXCJjaGF0Ym90aWNvbi5wbmdcIiwgcm9vdEZpbGVQYXRoOiBcIlVJL1wiLCBzdXBwb3J0ZWRMYW5ndWFnZXM6IFtcImVuXCIsIFwiZXNcIl0sIGluaXRpYWxMYW5ndWFnZTogXCJlblwiLCBkaXNjbGFpbWVyUG9wdXA6IHsgaGVhZGVyOiBcIkltcG9ydGFudCBNZXNzYWdlXCIsIG1lc3NhZ2U6IGBUaGUgdmlydHVhbCBhc3Npc3RhbnQgd2lsbCBuZWVkIHRvIGFzayBmb3Igc3BlY2lmaWMgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24gdGhhdCBpcyBuZWVkZWQgdG8gYW5zd2VyIHlvdSBxdWVzdGlvbihzKSBzdWNoIGFzIGRhdGUgb2YgYmlydGggb3IgU29jaWFsIFNlY3VyaXR5IG51bWJlci4gVGhlIGFnZW5jeSBmb2xsb3dzIHN0cmljdCBmZWRlcmFsIHNlY3VyaXR5IGd1aWRlbGluZXMgdG8gcHJvdGVjdCB5b3VyIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gVG8gZnVydGhlciBwcm90ZWN0IHlvdXIgaW5mb3JtYXRpb24sIGlmIHlvdSBhcmUgb24gYSBwdWJsaWMgY29tcHV0ZXIsIHBsZWFzZSBsb2cgb3V0IGFuZCBjbG9zZSB5b3VyIGJyb3dzZXIgd2hlbiB5b3UgYXJlIGZpbmlzaGVkLmAsIH0sIGhlYWRlckNvbmZpZzogeyBzaG93TGFuZ3VhZ2VUb2dnbGU6IHRydWUsIHNob3dNaW5pbWl6ZUJ1dHRvbjogdHJ1ZSwgc2hvd0V4cGFuZGJ1dHRvbjogZmFsc2UsIHNob3dSZWxvYWRCdXR0b246IHRydWUsIH0gfVxyXG4gICAgfTsgLy8gYm90IG5hbWUgaXMgY2FzZSBzZW5zaXRpdmVcclxuICAgIHRoaXMuYm90T3B0aW9ucy5jbGllbnRJZCA9IExpYkNvbnN0YW50cy5rb3JlQWlDbGllbnRJZDtcclxuICAgIC8vdGhpcy5ib3RPcHRpb25zLmNsaWVudFNlY3JldCA9IExpYkNvbnN0YW50cy5rb3JlQWlDbGllbnRTZWNyZXQ7XHJcblxyXG4gICAgLy90aGlzLmJvdE9wdGlvbnMucmVlbXBsb3lVc0JlYXJlclRva2VuPSBcIlwiOyAgXHJcbiAgICAvLyB3aWxsIG5lZWQgdG8gcGFzcyB0b2tlbiB0byBrb3JlQWlDaGF0Qm90U2VydmVyIHdoZW4gYXV0aGVudGljYXRpb24gbmVlZHMgdG8gYmUgdmFsaWRhdGVkIGZvciBzZXJ2ZXIgc2lkZSBhcGkgY2FsbFxyXG5cclxuICAgIHZhciBjaGF0Q29uZmlnID0ge1xyXG4gICAgICBib3RPcHRpb25zOiB0aGlzLmJvdE9wdGlvbnMsXHJcbiAgICAgIGFsbG93SWZyYW1lOiBmYWxzZSxcclxuICAgICAgaXNTZW5kQnV0dG9uOiB0cnVlLFxyXG4gICAgICBpc1RUU0VuYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBpc1NwZWVjaEVuYWJsZWQ6IGZhbHNlLFxyXG4gICAgICBhbGxvd0dvb2dsZVNwZWVjaDogZmFsc2UsXHJcbiAgICAgIGFsbG93TG9jYXRpb246IGZhbHNlLFxyXG4gICAgICBsb2FkSGlzdG9yeTogZmFsc2UsXHJcbiAgICAgIG1lc3NhZ2VIaXN0b3J5TGltaXQ6IDEwLFxyXG4gICAgICBhdXRvRW5hYmxlU3BlZWNoQW5kVFRTOiBmYWxzZSxcclxuICAgICAgZ3JhcGhMaWI6IFwiZDNcIlxyXG4gICAgfTtcclxuICAgIGlmIChPYmplY3Qua2V5cyh0aGlzLmtvcmVCb3QpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aGlzLmtvcmVCb3QgPSBrb3JlQm90Q2hhdCgpO1xyXG4gICAgICB0aGlzLmtvcmVCb3Quc2hvdyhjaGF0Q29uZmlnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMua29yZUJvdC5yZXN1bWVDaGF0V2luZG93KClcclxuICAgIH1cclxuICAgIC8vKioqQ09ERV9FTkRcclxuXHJcbiAgfVxyXG5cclxuICBhc3NlcnRpb24ob3B0aW9ucywgY2FsbGJhY2spIHtcclxuICAgIHZhciBqc29uRGF0YSA9IHtcclxuICAgICAgXCJjbGllbnRJZFwiOiB0aGlzLmJvdE9wdGlvbnMuY2xpZW50SWQsXHJcbiAgICAgIFwiY2xpZW50U2VjcmV0XCI6IHRoaXMuYm90T3B0aW9ucy5jbGllbnRTZWNyZXQsXHJcbiAgICAgIFwiaWRlbnRpdHlcIjogb3B0aW9ucy51c2VySWRlbnRpdHkgfHwgdGhpcy5ib3RPcHRpb25zLnVzZXJJZGVudGl0eSxcclxuICAgICAgXCJhdWRcIjogXCJcIixcclxuICAgICAgXCJpc0Fub255bW91c1wiOiAodGhpcy5scy5nZXRVc2VyKCkgPT0gbnVsbCksXHJcbiAgICAgIFwiYWNjZXNzVG9rZW5cIjogdGhpcy5ib3RPcHRpb25zLmFjY2Vzc1Rva2VuXHJcbiAgICB9O1xyXG4gICAgJC5hamF4KHtcclxuICAgICAgdXJsOiB0aGlzLmJvdE9wdGlvbnMuSldUVXJsLFxyXG4gICAgICB0eXBlOiAncG9zdCcsXHJcbiAgICAgIGRhdGE6IGpzb25EYXRhLFxyXG4gICAgICBkYXRhVHlwZTogJ2pzb24nLFxyXG4gICAgICBzdWNjZXNzOiAoZGF0YSkgPT4ge1xyXG4gICAgICAgIG9wdGlvbnMuYXNzZXJ0aW9uID0gZGF0YS5qd3Q7XHJcbiAgICAgICAgb3B0aW9ucy5oYW5kbGVFcnJvciA9IHRoaXMua29yZUJvdC5zaG93RXJyb3I7XHJcbiAgICAgICAgb3B0aW9ucy5jaGF0SGlzdG9yeSA9IHRoaXMua29yZUJvdC5jaGF0SGlzdG9yeTtcclxuICAgICAgICBvcHRpb25zLmJvdERldGFpbHMgPSB0aGlzLmtvcmVCb3QuYm90RGV0YWlscztcclxuICAgICAgICBjYWxsYmFjayhudWxsLCBvcHRpb25zKTtcclxuICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgIGlmICh0aGlzLmtvcmVCb3QgJiYgdGhpcy5rb3JlQm90LmluaXRUb2tlbikge1xyXG4gICAgICAgICAgICB0aGlzLmtvcmVCb3QuaW5pdFRva2VuKG9wdGlvbnMpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sIDIwMDApO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgIHRoaXMua29yZUJvdC5zaG93RXJyb3IoZXJyLnJlc3BvbnNlVGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
export class ScriptConstant {
|
|
2
|
-
static { this.cssProperty = 'css'; }
|
|
3
|
-
static { this.cssPropertyAbsolute = 'cssAbsolute'; }
|
|
4
|
-
static { this.jsProperty = 'js'; }
|
|
5
|
-
static { this.donotLoad = 'donot-load'; }
|
|
6
|
-
static { this.importUrls = [
|
|
7
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/kore-no-conflict-start.js', async: false },
|
|
8
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/jquery.js', async: false },
|
|
9
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/jquery.tmpl.min.js', async: false },
|
|
10
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/jquery-ui.min.js', async: false },
|
|
11
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/moment.js' },
|
|
12
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/ie11CustomProperties.js' },
|
|
13
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/lodash.min.js' },
|
|
14
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/d3.v4.min.js' },
|
|
15
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/KoreGraphAdapter.js' },
|
|
16
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/anonymousassertion.js' },
|
|
17
|
-
{ type: ScriptConstant.jsProperty, url: '/kore-bot-sdk-client.js' },
|
|
18
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/chatWindow.js' },
|
|
19
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/jquery.daterangepicker.js' },
|
|
20
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/jquery-clockpicker.js' },
|
|
21
|
-
{ type: ScriptConstant.donotLoad, url: '/libs/kore-pickers.js' },
|
|
22
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/emoji.js' },
|
|
23
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/recorder.js' },
|
|
24
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/recorderWorker.js' },
|
|
25
|
-
{ type: ScriptConstant.jsProperty, url: '/libs/purejscarousel.js' },
|
|
26
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/custom/customTemplate.js' },
|
|
27
|
-
{ type: ScriptConstant.donotLoad, url: '/UI/kore-config.js' },
|
|
28
|
-
{ type: ScriptConstant.donotLoad, url: '/UI/kore-main.js' },
|
|
29
|
-
{ type: ScriptConstant.jsProperty, url: '/UI/libs/kore-no-conflict-end.js', async: false },
|
|
30
|
-
{ type: ScriptConstant.donotLoad, url: '/UI/libs/jquery-ui.min.css' },
|
|
31
|
-
{ type: ScriptConstant.cssProperty, url: '/UI/libs/daterangepicker.css' },
|
|
32
|
-
{ type: ScriptConstant.donotLoad, url: '/UI/libs/jquery-clockpicker.css' },
|
|
33
|
-
{ type: ScriptConstant.cssProperty, url: '/libs/kore-pickers.css' },
|
|
34
|
-
{ type: ScriptConstant.cssProperty, url: '/libs/emojione.sprites.css' },
|
|
35
|
-
{ type: ScriptConstant.cssProperty, url: '/UI/custom/customTemplate.css' },
|
|
36
|
-
{ type: ScriptConstant.cssPropertyAbsolute, url: 'https://netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css' },
|
|
37
|
-
{ type: ScriptConstant.cssPropertyAbsolute, url: 'https://fonts.googleapis.com/icon?family=Material+Icons' },
|
|
38
|
-
{ type: ScriptConstant.cssProperty, url: '/libs/purejscarousel.css' },
|
|
39
|
-
{ type: ScriptConstant.cssProperty, url: '/UI/chatWindow.css' }
|
|
40
|
-
]; }
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyaXB0LmNvbnN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJldXNhLWFwcC1saWIvc3JjL2xpYi9zZXJ2aWNlcy9jaGF0Ym90L3NjcmlwdC5jb25zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sY0FBYzthQUNBLGdCQUFXLEdBQUcsS0FBSyxDQUFDO2FBQ3BCLHdCQUFtQixHQUFHLGFBQWEsQ0FBQzthQUN2QyxlQUFVLEdBQUcsSUFBSSxDQUFDO2FBQ2xCLGNBQVMsR0FBRyxZQUFZLENBQUM7YUFFbEMsZUFBVSxHQUFHO1FBQzFCLEVBQUksSUFBSSxFQUFFLGNBQWMsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLG9DQUFvQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7UUFDOUYsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRTtRQUM5RSxFQUFJLElBQUksRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRSw2QkFBNkIsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO1FBQ3ZGLEVBQUksSUFBSSxFQUFFLGNBQWMsQ0FBQyxVQUFVLEVBQUUsR0FBRyxFQUFFLDJCQUEyQixFQUFHLEtBQUssRUFBRSxLQUFLLEVBQUM7UUFDckYsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUU7UUFDaEUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsK0JBQStCLEVBQUU7UUFDM0UsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUscUJBQXFCLEVBQUU7UUFDakUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUU7UUFDaEUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsMkJBQTJCLEVBQUU7UUFDdkUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsNkJBQTZCLEVBQUU7UUFDekUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUseUJBQXlCLEVBQUU7UUFDckUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsbUJBQW1CLEVBQUU7UUFDL0QsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsb0NBQW9DLEVBQUU7UUFDaEYsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsZ0NBQWdDLEVBQUU7UUFDNUUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFNBQVMsRUFBRyxHQUFHLEVBQUUsdUJBQXVCLEVBQUU7UUFDbkUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsZ0JBQWdCLEVBQUU7UUFDNUQsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsbUJBQW1CLEVBQUU7UUFDL0QsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUseUJBQXlCLEVBQUU7UUFDckUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUseUJBQXlCLEVBQUU7UUFDckUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsOEJBQThCLEVBQUU7UUFDMUUsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUU7UUFDL0QsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsa0JBQWtCLEVBQUU7UUFDN0QsRUFBSSxJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUUsa0NBQWtDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRztRQUU3RixFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSw0QkFBNEIsRUFBRTtRQUNyRSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSw4QkFBOEIsRUFBRTtRQUN6RSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRSxpQ0FBaUMsRUFBRTtRQUMxRSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSx3QkFBd0IsRUFBRTtRQUNuRSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSw0QkFBNEIsRUFBRTtRQUN2RSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsV0FBVyxFQUFFLEdBQUcsRUFBRSwrQkFBK0IsRUFBRTtRQUMxRSxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFLHlFQUF5RSxFQUFFO1FBQzVILEVBQUUsSUFBSSxFQUFFLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxHQUFHLEVBQUUseURBQXlELEVBQUU7UUFFNUcsRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsMEJBQTBCLEVBQUU7UUFDckUsRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsb0JBQW9CLEVBQUM7S0FDOUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTY3JpcHRDb25zdGFudCB7XHJcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGNzc1Byb3BlcnR5ID0gJ2Nzcyc7XHJcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGNzc1Byb3BlcnR5QWJzb2x1dGUgPSAnY3NzQWJzb2x1dGUnO1xyXG5cdHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkganNQcm9wZXJ0eSA9ICdqcyc7XHJcblx0cHVibGljIHN0YXRpYyByZWFkb25seSBkb25vdExvYWQgPSAnZG9ub3QtbG9hZCc7XHJcblxyXG5cdHB1YmxpYyBzdGF0aWMgaW1wb3J0VXJscyA9IFtcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvVUkvbGlicy9rb3JlLW5vLWNvbmZsaWN0LXN0YXJ0LmpzJywgYXN5bmM6IGZhbHNlIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL1VJL2xpYnMvanF1ZXJ5LmpzJywgYXN5bmM6IGZhbHNlIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL1VJL2xpYnMvanF1ZXJ5LnRtcGwubWluLmpzJywgYXN5bmM6IGZhbHNlIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL1VJL2xpYnMvanF1ZXJ5LXVpLm1pbi5qcycgLCBhc3luYzogZmFsc2V9LFxyXG5cdFx0eyAgIHR5cGU6IFNjcmlwdENvbnN0YW50LmpzUHJvcGVydHksIHVybDogJy9VSS9saWJzL21vbWVudC5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvbGlicy9pZTExQ3VzdG9tUHJvcGVydGllcy5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvbGlicy9sb2Rhc2gubWluLmpzJyB9LFxyXG5cdFx0eyAgIHR5cGU6IFNjcmlwdENvbnN0YW50LmpzUHJvcGVydHksIHVybDogJy9saWJzL2QzLnY0Lm1pbi5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvbGlicy9Lb3JlR3JhcGhBZGFwdGVyLmpzJyB9LFxyXG5cdFx0eyAgIHR5cGU6IFNjcmlwdENvbnN0YW50LmpzUHJvcGVydHksIHVybDogJy9saWJzL2Fub255bW91c2Fzc2VydGlvbi5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcva29yZS1ib3Qtc2RrLWNsaWVudC5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvVUkvY2hhdFdpbmRvdy5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5qc1Byb3BlcnR5LCB1cmw6ICcvVUkvbGlicy9qcXVlcnkuZGF0ZXJhbmdlcGlja2VyLmpzJyB9LFxyXG5cdFx0eyAgIHR5cGU6IFNjcmlwdENvbnN0YW50LmpzUHJvcGVydHksIHVybDogJy9VSS9saWJzL2pxdWVyeS1jbG9ja3BpY2tlci5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5kb25vdExvYWQgLCB1cmw6ICcvbGlicy9rb3JlLXBpY2tlcnMuanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL2xpYnMvZW1vamkuanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL2xpYnMvcmVjb3JkZXIuanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL2xpYnMvcmVjb3JkZXJXb3JrZXIuanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL2xpYnMvcHVyZWpzY2Fyb3VzZWwuanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL1VJL2N1c3RvbS9jdXN0b21UZW1wbGF0ZS5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5kb25vdExvYWQsIHVybDogJy9VSS9rb3JlLWNvbmZpZy5qcycgfSxcclxuXHRcdHsgICB0eXBlOiBTY3JpcHRDb25zdGFudC5kb25vdExvYWQsIHVybDogJy9VSS9rb3JlLW1haW4uanMnIH0sXHJcblx0XHR7ICAgdHlwZTogU2NyaXB0Q29uc3RhbnQuanNQcm9wZXJ0eSwgdXJsOiAnL1VJL2xpYnMva29yZS1uby1jb25mbGljdC1lbmQuanMnLCBhc3luYzogZmFsc2UgIH0sXHJcblxyXG5cdFx0eyB0eXBlOiBTY3JpcHRDb25zdGFudC5kb25vdExvYWQsIHVybDogJy9VSS9saWJzL2pxdWVyeS11aS5taW4uY3NzJyB9LCAgXHJcblx0XHR7IHR5cGU6IFNjcmlwdENvbnN0YW50LmNzc1Byb3BlcnR5LCB1cmw6ICcvVUkvbGlicy9kYXRlcmFuZ2VwaWNrZXIuY3NzJyB9LFxyXG5cdFx0eyB0eXBlOiBTY3JpcHRDb25zdGFudC5kb25vdExvYWQsIHVybDogJy9VSS9saWJzL2pxdWVyeS1jbG9ja3BpY2tlci5jc3MnIH0sXHJcblx0XHR7IHR5cGU6IFNjcmlwdENvbnN0YW50LmNzc1Byb3BlcnR5LCB1cmw6ICcvbGlicy9rb3JlLXBpY2tlcnMuY3NzJyB9LCBcclxuXHRcdHsgdHlwZTogU2NyaXB0Q29uc3RhbnQuY3NzUHJvcGVydHksIHVybDogJy9saWJzL2Vtb2ppb25lLnNwcml0ZXMuY3NzJyB9LFxyXG5cdFx0eyB0eXBlOiBTY3JpcHRDb25zdGFudC5jc3NQcm9wZXJ0eSwgdXJsOiAnL1VJL2N1c3RvbS9jdXN0b21UZW1wbGF0ZS5jc3MnIH0sXHJcblx0XHR7IHR5cGU6IFNjcmlwdENvbnN0YW50LmNzc1Byb3BlcnR5QWJzb2x1dGUsIHVybDogJ2h0dHBzOi8vbmV0ZG5hLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzMuMi4xL2Nzcy9mb250LWF3ZXNvbWUuY3NzJyB9LFxyXG5cdFx0eyB0eXBlOiBTY3JpcHRDb25zdGFudC5jc3NQcm9wZXJ0eUFic29sdXRlLCB1cmw6ICdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2ljb24/ZmFtaWx5PU1hdGVyaWFsK0ljb25zJyB9LFxyXG5cdFx0XHJcblx0XHR7IHR5cGU6IFNjcmlwdENvbnN0YW50LmNzc1Byb3BlcnR5LCB1cmw6ICcvbGlicy9wdXJlanNjYXJvdXNlbC5jc3MnIH0sIFxyXG5cdFx0eyB0eXBlOiBTY3JpcHRDb25zdGFudC5jc3NQcm9wZXJ0eSwgdXJsOiAnL1VJL2NoYXRXaW5kb3cuY3NzJ31cclxuXHRdO1xyXG5cclxufSJdfQ==
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { RendererFactory2 } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { LoggerService } from '../logger/logger.service';
|
|
4
|
-
import { LoginService } from '../login/login.service';
|
|
5
|
-
import { UtilService } from '../util/util.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
interface DisclaimerPopup {
|
|
8
|
-
header: string;
|
|
9
|
-
message: string;
|
|
10
|
-
}
|
|
11
|
-
interface HeaderConfig {
|
|
12
|
-
showLanguageToggle: boolean;
|
|
13
|
-
showMinimizeButton: boolean;
|
|
14
|
-
showExpandButton: boolean;
|
|
15
|
-
showReloadButton: boolean;
|
|
16
|
-
}
|
|
17
|
-
interface CustomData {
|
|
18
|
-
connectingMessage: string;
|
|
19
|
-
hoverMessage: string;
|
|
20
|
-
botState: string;
|
|
21
|
-
showCollectUserDetailForm: boolean;
|
|
22
|
-
showDisclaimerPopUp: boolean;
|
|
23
|
-
showChatBubbleAtClosed: boolean;
|
|
24
|
-
botAvatarImageName: string;
|
|
25
|
-
botIconImageName: string;
|
|
26
|
-
formBannerPath: string;
|
|
27
|
-
rootFilePath: string;
|
|
28
|
-
supportedLanguages: string[];
|
|
29
|
-
initialLanguage: string;
|
|
30
|
-
disclaimerPopup: DisclaimerPopup;
|
|
31
|
-
headerConfig: HeaderConfig;
|
|
32
|
-
}
|
|
33
|
-
export declare class ChatbotService {
|
|
34
|
-
private logger;
|
|
35
|
-
private ls;
|
|
36
|
-
private util;
|
|
37
|
-
map: Map<string, CustomData>;
|
|
38
|
-
msCustomData: CustomData;
|
|
39
|
-
meCustomData: CustomData;
|
|
40
|
-
ctCustomData: CustomData;
|
|
41
|
-
botOptions: any;
|
|
42
|
-
koreBot: any;
|
|
43
|
-
initChatbot: BehaviorSubject<Boolean>;
|
|
44
|
-
private renderer;
|
|
45
|
-
showChatbot: boolean;
|
|
46
|
-
constructor(rendererFactory: RendererFactory2, logger: LoggerService, ls: LoginService, util: UtilService);
|
|
47
|
-
getChatbotBs(): BehaviorSubject<Boolean>;
|
|
48
|
-
initialize(): void;
|
|
49
|
-
loadScripAndStyle(): void;
|
|
50
|
-
initializeChatbot(): void;
|
|
51
|
-
/***
|
|
52
|
-
*
|
|
53
|
-
* @description Initialize the chatbot with logged-in user. If user is not logged-in then bot session will be created using unique timestamp.
|
|
54
|
-
*/
|
|
55
|
-
openbot(): void;
|
|
56
|
-
assertion(options: any, callback: any): void;
|
|
57
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ChatbotService, never>;
|
|
58
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ChatbotService>;
|
|
59
|
-
}
|
|
60
|
-
export {};
|
|
61
|
-
//# sourceMappingURL=chatbot.service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chatbot.service.d.ts","sourceRoot":"","sources":["../../../../../projects/ngx-reusa-app-lib/src/lib/services/chatbot/chatbot.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;;AAKnD,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AACD,UAAU,YAAY;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AACD,UAAU,UAAU;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB,EAAE,OAAO,CAAC;IACnC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,sBAAsB,EAAE,OAAO,CAAC;IAChC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,qBAGa,cAAc;IAmFsB,OAAO,CAAC,MAAM;IAAiB,OAAO,CAAC,EAAE;IAAgB,OAAO,CAAC,IAAI;IAjFpH,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;IAEzC,YAAY,EAAE,UAAU,CAwBvB;IAED,YAAY,EAAE,UAAU,CAuBvB;IACD,YAAY,EAAE,UAAU,CAuBvB;IACM,UAAU,EAAE,GAAG,CAAM;IACrB,OAAO,EAAE,GAAG,CAAM;IACzB,WAAW,EAAE,eAAe,CAAC,OAAO,CAAC,CAA8B;IACnE,OAAO,CAAC,QAAQ,CAAY;IACrB,WAAW,EAAE,OAAO,CAA0C;gBACzD,eAAe,EAAE,gBAAgB,EAAU,MAAM,EAAE,aAAa,EAAU,EAAE,EAAE,YAAY,EAAU,IAAI,EAAE,WAAW;IAejI,YAAY;IAIZ,UAAU;IAIV,iBAAiB;IAmDV,iBAAiB;IAIxB;;;OAGG;IACH,OAAO;IAwDP,SAAS,CAAC,OAAO,KAAA,EAAE,QAAQ,KAAA;yCA7NhB,cAAc;6CAAd,cAAc;CA4P1B"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export declare class ScriptConstant {
|
|
2
|
-
static readonly cssProperty = "css";
|
|
3
|
-
static readonly cssPropertyAbsolute = "cssAbsolute";
|
|
4
|
-
static readonly jsProperty = "js";
|
|
5
|
-
static readonly donotLoad = "donot-load";
|
|
6
|
-
static importUrls: ({
|
|
7
|
-
type: string;
|
|
8
|
-
url: string;
|
|
9
|
-
async: boolean;
|
|
10
|
-
} | {
|
|
11
|
-
type: string;
|
|
12
|
-
url: string;
|
|
13
|
-
async?: undefined;
|
|
14
|
-
})[];
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=script.const.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"script.const.d.ts","sourceRoot":"","sources":["../../../../../projects/ngx-reusa-app-lib/src/lib/services/chatbot/script.const.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAc;IACvB,gBAAuB,WAAW,SAAS;IAC3C,gBAAuB,mBAAmB,iBAAiB;IAC9D,gBAAuB,UAAU,QAAQ;IACzC,gBAAuB,SAAS,gBAAgB;IAEhD,OAAc,UAAU;;;;;;;;SAoCtB;CAEF"}
|