@servicetitan/titan-chatbot-api 3.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/CHANGELOG.md +9 -0
- package/dist/api-client/__mocks__/chatbot-api-client.mock.d.ts +11 -0
- package/dist/api-client/__mocks__/chatbot-api-client.mock.d.ts.map +1 -0
- package/dist/api-client/__mocks__/chatbot-api-client.mock.js +47 -0
- package/dist/api-client/__mocks__/chatbot-api-client.mock.js.map +1 -0
- package/dist/api-client/base/chatbot-api-client.d.ts +27 -0
- package/dist/api-client/base/chatbot-api-client.d.ts.map +1 -0
- package/dist/api-client/base/chatbot-api-client.js +10 -0
- package/dist/api-client/base/chatbot-api-client.js.map +1 -0
- package/dist/api-client/help-center/__tests__/converter-from-models.test.d.ts +2 -0
- package/dist/api-client/help-center/__tests__/converter-from-models.test.d.ts.map +1 -0
- package/dist/api-client/help-center/__tests__/converter-from-models.test.js +34 -0
- package/dist/api-client/help-center/__tests__/converter-from-models.test.js.map +1 -0
- package/dist/api-client/help-center/__tests__/converter-to-models.test.d.ts +2 -0
- package/dist/api-client/help-center/__tests__/converter-to-models.test.d.ts.map +1 -0
- package/dist/api-client/help-center/__tests__/converter-to-models.test.js +82 -0
- package/dist/api-client/help-center/__tests__/converter-to-models.test.js.map +1 -0
- package/dist/api-client/help-center/chatbot-api-client.d.ts +31 -0
- package/dist/api-client/help-center/chatbot-api-client.d.ts.map +1 -0
- package/dist/api-client/help-center/chatbot-api-client.js +90 -0
- package/dist/api-client/help-center/chatbot-api-client.js.map +1 -0
- package/dist/api-client/help-center/converter-from-models.d.ts +13 -0
- package/dist/api-client/help-center/converter-from-models.d.ts.map +1 -0
- package/dist/api-client/help-center/converter-from-models.js +113 -0
- package/dist/api-client/help-center/converter-from-models.js.map +1 -0
- package/dist/api-client/help-center/converter-to-models.d.ts +13 -0
- package/dist/api-client/help-center/converter-to-models.d.ts.map +1 -0
- package/dist/api-client/help-center/converter-to-models.js +95 -0
- package/dist/api-client/help-center/converter-to-models.js.map +1 -0
- package/dist/api-client/help-center/index.d.ts +2 -0
- package/dist/api-client/help-center/index.d.ts.map +1 -0
- package/dist/api-client/help-center/index.js +2 -0
- package/dist/api-client/help-center/index.js.map +1 -0
- package/dist/api-client/help-center/native-client.d.ts +1260 -0
- package/dist/api-client/help-center/native-client.d.ts.map +1 -0
- package/dist/api-client/help-center/native-client.js +6169 -0
- package/dist/api-client/help-center/native-client.js.map +1 -0
- package/dist/api-client/index.d.ts +8 -0
- package/dist/api-client/index.d.ts.map +1 -0
- package/dist/api-client/index.js +8 -0
- package/dist/api-client/index.js.map +1 -0
- package/dist/api-client/models/__mocks__/models.mock.d.ts +13 -0
- package/dist/api-client/models/__mocks__/models.mock.d.ts.map +1 -0
- package/dist/api-client/models/__mocks__/models.mock.js +114 -0
- package/dist/api-client/models/__mocks__/models.mock.js.map +1 -0
- package/dist/api-client/models/index.d.ts +22 -0
- package/dist/api-client/models/index.d.ts.map +1 -0
- package/dist/api-client/models/index.js +15 -0
- package/dist/api-client/models/index.js.map +1 -0
- package/dist/api-client/titan-chat/chatbot-api-client.d.ts +34 -0
- package/dist/api-client/titan-chat/chatbot-api-client.d.ts.map +1 -0
- package/dist/api-client/titan-chat/chatbot-api-client.js +72 -0
- package/dist/api-client/titan-chat/chatbot-api-client.js.map +1 -0
- package/dist/api-client/titan-chat/index.d.ts +2 -0
- package/dist/api-client/titan-chat/index.d.ts.map +1 -0
- package/dist/api-client/titan-chat/index.js +2 -0
- package/dist/api-client/titan-chat/index.js.map +1 -0
- package/dist/api-client/titan-chat/native-client.d.ts +225 -0
- package/dist/api-client/titan-chat/native-client.d.ts.map +1 -0
- package/dist/api-client/titan-chat/native-client.js +931 -0
- package/dist/api-client/titan-chat/native-client.js.map +1 -0
- package/dist/api-client/utils/model-utils.d.ts +4 -0
- package/dist/api-client/utils/model-utils.d.ts.map +1 -0
- package/dist/api-client/utils/model-utils.js +58 -0
- package/dist/api-client/utils/model-utils.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/models/chatbot-customizations.d.ts +15 -0
- package/dist/models/chatbot-customizations.d.ts.map +1 -0
- package/dist/models/chatbot-customizations.js +2 -0
- package/dist/models/chatbot-customizations.js.map +1 -0
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +2 -0
- package/dist/models/index.js.map +1 -0
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.d.ts +2 -0
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.d.ts.map +1 -0
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.js +341 -0
- package/dist/stores/__tests__/chatbot-ui-backend.store.test.js.map +1 -0
- package/dist/stores/__tests__/chatbot-ui.store.test.d.ts +2 -0
- package/dist/stores/__tests__/chatbot-ui.store.test.d.ts.map +1 -0
- package/dist/stores/__tests__/chatbot-ui.store.test.js +166 -0
- package/dist/stores/__tests__/chatbot-ui.store.test.js.map +1 -0
- package/dist/stores/__tests__/filter.store.test.d.ts +2 -0
- package/dist/stores/__tests__/filter.store.test.d.ts.map +1 -0
- package/dist/stores/__tests__/filter.store.test.js +316 -0
- package/dist/stores/__tests__/filter.store.test.js.map +1 -0
- package/dist/stores/__tests__/initialize.store.test.d.ts +2 -0
- package/dist/stores/__tests__/initialize.store.test.d.ts.map +1 -0
- package/dist/stores/__tests__/initialize.store.test.js +54 -0
- package/dist/stores/__tests__/initialize.store.test.js.map +1 -0
- package/dist/stores/chatbot-ui-backend.store.d.ts +61 -0
- package/dist/stores/chatbot-ui-backend.store.d.ts.map +1 -0
- package/dist/stores/chatbot-ui-backend.store.js +396 -0
- package/dist/stores/chatbot-ui-backend.store.js.map +1 -0
- package/dist/stores/chatbot-ui.store.d.ts +25 -0
- package/dist/stores/chatbot-ui.store.d.ts.map +1 -0
- package/dist/stores/chatbot-ui.store.js +87 -0
- package/dist/stores/chatbot-ui.store.js.map +1 -0
- package/dist/stores/filter.store.d.ts +30 -0
- package/dist/stores/filter.store.d.ts.map +1 -0
- package/dist/stores/filter.store.js +334 -0
- package/dist/stores/filter.store.js.map +1 -0
- package/dist/stores/index.d.ts +4 -0
- package/dist/stores/index.d.ts.map +1 -0
- package/dist/stores/index.js +4 -0
- package/dist/stores/index.js.map +1 -0
- package/dist/stores/initialize.store.d.ts +17 -0
- package/dist/stores/initialize.store.d.ts.map +1 -0
- package/dist/stores/initialize.store.js +98 -0
- package/dist/stores/initialize.store.js.map +1 -0
- package/dist/utils/__tests__/axios-utils.test.d.ts +2 -0
- package/dist/utils/__tests__/axios-utils.test.d.ts.map +1 -0
- package/dist/utils/__tests__/axios-utils.test.js +33 -0
- package/dist/utils/__tests__/axios-utils.test.js.map +1 -0
- package/dist/utils/axios-utils.d.ts +5 -0
- package/dist/utils/axios-utils.d.ts.map +1 -0
- package/dist/utils/axios-utils.js +23 -0
- package/dist/utils/axios-utils.js.map +1 -0
- package/dist/utils/test-utils.d.ts +5 -0
- package/dist/utils/test-utils.d.ts.map +1 -0
- package/dist/utils/test-utils.js +17 -0
- package/dist/utils/test-utils.js.map +1 -0
- package/package.json +45 -0
- package/src/api-client/__mocks__/chatbot-api-client.mock.ts +11 -0
- package/src/api-client/base/chatbot-api-client.ts +33 -0
- package/src/api-client/help-center/__tests__/converter-from-models.test.ts +41 -0
- package/src/api-client/help-center/__tests__/converter-to-models.test.ts +89 -0
- package/src/api-client/help-center/chatbot-api-client.ts +107 -0
- package/src/api-client/help-center/converter-from-models.ts +132 -0
- package/src/api-client/help-center/converter-to-models.ts +124 -0
- package/src/api-client/help-center/index.ts +1 -0
- package/src/api-client/help-center/native-client.ts +5662 -0
- package/src/api-client/index.ts +12 -0
- package/src/api-client/models/__mocks__/models.mock.ts +141 -0
- package/src/api-client/models/index.ts +48 -0
- package/src/api-client/titan-chat/chatbot-api-client.ts +77 -0
- package/src/api-client/titan-chat/index.ts +1 -0
- package/src/api-client/titan-chat/native-client.ts +826 -0
- package/src/api-client/utils/model-utils.ts +68 -0
- package/src/cypress.d.ts +10 -0
- package/src/index.ts +6 -0
- package/src/models/chatbot-customizations.ts +16 -0
- package/src/models/index.ts +1 -0
- package/src/stores/__tests__/chatbot-ui-backend.store.test.ts +426 -0
- package/src/stores/__tests__/chatbot-ui.store.test.ts +196 -0
- package/src/stores/__tests__/filter.store.test.ts +363 -0
- package/src/stores/__tests__/initialize.store.test.ts +73 -0
- package/src/stores/chatbot-ui-backend.store.ts +401 -0
- package/src/stores/chatbot-ui.store.ts +82 -0
- package/src/stores/filter.store.ts +250 -0
- package/src/stores/index.ts +12 -0
- package/src/stores/initialize.store.ts +62 -0
- package/src/utils/__tests__/axios-utils.test.ts +40 -0
- package/src/utils/axios-utils.ts +25 -0
- package/src/utils/test-utils.ts +22 -0
- package/tsconfig.json +19 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1,826 @@
|
|
|
1
|
+
//----------------------
|
|
2
|
+
// <auto-generated>
|
|
3
|
+
// Generated using the NSwag toolchain v14.2.0.0 (NJsonSchema v11.1.0.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)
|
|
4
|
+
// </auto-generated>
|
|
5
|
+
//----------------------
|
|
6
|
+
|
|
7
|
+
/* tslint:disable */
|
|
8
|
+
/* eslint-disable */
|
|
9
|
+
// ReSharper disable InconsistentNaming
|
|
10
|
+
|
|
11
|
+
export class Client {
|
|
12
|
+
private http: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> };
|
|
13
|
+
private baseUrl: string;
|
|
14
|
+
protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;
|
|
15
|
+
|
|
16
|
+
constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise<Response> }) {
|
|
17
|
+
this.http = http ? http : window as any;
|
|
18
|
+
this.baseUrl = baseUrl ?? "";
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @param x_Client_ID (optional)
|
|
23
|
+
* @param body (optional)
|
|
24
|
+
* @return Success
|
|
25
|
+
*/
|
|
26
|
+
feedback(version: string, x_Client_ID: any | undefined, body: Feedback | undefined, signal?: AbortSignal): Promise<Feedback> {
|
|
27
|
+
let url_ = this.baseUrl + "/api/v{version}/feedback";
|
|
28
|
+
if (version === undefined || version === null)
|
|
29
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
30
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
31
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
32
|
+
|
|
33
|
+
const content_ = JSON.stringify(body);
|
|
34
|
+
|
|
35
|
+
let options_: RequestInit = {
|
|
36
|
+
body: content_,
|
|
37
|
+
method: "POST",
|
|
38
|
+
signal,
|
|
39
|
+
headers: {
|
|
40
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
41
|
+
"Content-Type": "application/json",
|
|
42
|
+
"Accept": "text/plain"
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
47
|
+
return this.processFeedback(_response);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
protected processFeedback(response: Response): Promise<Feedback> {
|
|
52
|
+
const status = response.status;
|
|
53
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
54
|
+
if (status === 200) {
|
|
55
|
+
return response.text().then((_responseText) => {
|
|
56
|
+
let result200: any = null;
|
|
57
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
58
|
+
result200 = Feedback.fromJS(resultData200);
|
|
59
|
+
return result200;
|
|
60
|
+
});
|
|
61
|
+
} else if (status !== 200 && status !== 204) {
|
|
62
|
+
return response.text().then((_responseText) => {
|
|
63
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return Promise.resolve<Feedback>(null as any);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* @param x_Client_ID (optional)
|
|
71
|
+
* @param body (optional)
|
|
72
|
+
* @return Success
|
|
73
|
+
*/
|
|
74
|
+
message(version: string, x_Client_ID: any | undefined, body: UserMessage | undefined, signal?: AbortSignal): Promise<BotMessage> {
|
|
75
|
+
let url_ = this.baseUrl + "/api/v{version}/message";
|
|
76
|
+
if (version === undefined || version === null)
|
|
77
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
78
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
79
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
80
|
+
|
|
81
|
+
const content_ = JSON.stringify(body);
|
|
82
|
+
|
|
83
|
+
let options_: RequestInit = {
|
|
84
|
+
body: content_,
|
|
85
|
+
method: "POST",
|
|
86
|
+
signal,
|
|
87
|
+
headers: {
|
|
88
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
89
|
+
"Content-Type": "application/json",
|
|
90
|
+
"Accept": "text/plain"
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
95
|
+
return this.processMessage(_response);
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
protected processMessage(response: Response): Promise<BotMessage> {
|
|
100
|
+
const status = response.status;
|
|
101
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
102
|
+
if (status === 200) {
|
|
103
|
+
return response.text().then((_responseText) => {
|
|
104
|
+
let result200: any = null;
|
|
105
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
106
|
+
result200 = BotMessage.fromJS(resultData200);
|
|
107
|
+
return result200;
|
|
108
|
+
});
|
|
109
|
+
} else if (status === 500) {
|
|
110
|
+
return response.text().then((_responseText) => {
|
|
111
|
+
return throwException("Server Error", status, _responseText, _headers);
|
|
112
|
+
});
|
|
113
|
+
} else if (status === 502) {
|
|
114
|
+
return response.text().then((_responseText) => {
|
|
115
|
+
return throwException("Server Error", status, _responseText, _headers);
|
|
116
|
+
});
|
|
117
|
+
} else if (status === 504) {
|
|
118
|
+
return response.text().then((_responseText) => {
|
|
119
|
+
return throwException("Server Error", status, _responseText, _headers);
|
|
120
|
+
});
|
|
121
|
+
} else if (status !== 200 && status !== 204) {
|
|
122
|
+
return response.text().then((_responseText) => {
|
|
123
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return Promise.resolve<BotMessage>(null as any);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* @param x_Client_ID (optional)
|
|
131
|
+
* @return Success
|
|
132
|
+
*/
|
|
133
|
+
options(version: string, x_Client_ID: any | undefined, signal?: AbortSignal): Promise<FrontendModel> {
|
|
134
|
+
let url_ = this.baseUrl + "/api/v{version}/options";
|
|
135
|
+
if (version === undefined || version === null)
|
|
136
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
137
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
138
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
139
|
+
|
|
140
|
+
let options_: RequestInit = {
|
|
141
|
+
method: "GET",
|
|
142
|
+
signal,
|
|
143
|
+
headers: {
|
|
144
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
145
|
+
"Accept": "text/plain"
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
150
|
+
return this.processOptions(_response);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
protected processOptions(response: Response): Promise<FrontendModel> {
|
|
155
|
+
const status = response.status;
|
|
156
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
157
|
+
if (status === 200) {
|
|
158
|
+
return response.text().then((_responseText) => {
|
|
159
|
+
let result200: any = null;
|
|
160
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
161
|
+
result200 = FrontendModel.fromJS(resultData200);
|
|
162
|
+
return result200;
|
|
163
|
+
});
|
|
164
|
+
} else if (status !== 200 && status !== 204) {
|
|
165
|
+
return response.text().then((_responseText) => {
|
|
166
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
return Promise.resolve<FrontendModel>(null as any);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* @param x_Client_ID (optional)
|
|
174
|
+
* @param body (optional)
|
|
175
|
+
* @return Success
|
|
176
|
+
*/
|
|
177
|
+
sessionPOST(version: string, x_Client_ID: any | undefined, body: Session | undefined, signal?: AbortSignal): Promise<Session> {
|
|
178
|
+
let url_ = this.baseUrl + "/api/v{version}/session";
|
|
179
|
+
if (version === undefined || version === null)
|
|
180
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
181
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
182
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
183
|
+
|
|
184
|
+
const content_ = JSON.stringify(body);
|
|
185
|
+
|
|
186
|
+
let options_: RequestInit = {
|
|
187
|
+
body: content_,
|
|
188
|
+
method: "POST",
|
|
189
|
+
signal,
|
|
190
|
+
headers: {
|
|
191
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
192
|
+
"Content-Type": "application/json",
|
|
193
|
+
"Accept": "text/plain"
|
|
194
|
+
}
|
|
195
|
+
};
|
|
196
|
+
|
|
197
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
198
|
+
return this.processSessionPOST(_response);
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
protected processSessionPOST(response: Response): Promise<Session> {
|
|
203
|
+
const status = response.status;
|
|
204
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
205
|
+
if (status === 200) {
|
|
206
|
+
return response.text().then((_responseText) => {
|
|
207
|
+
let result200: any = null;
|
|
208
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
209
|
+
result200 = Session.fromJS(resultData200);
|
|
210
|
+
return result200;
|
|
211
|
+
});
|
|
212
|
+
} else if (status !== 200 && status !== 204) {
|
|
213
|
+
return response.text().then((_responseText) => {
|
|
214
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
return Promise.resolve<Session>(null as any);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* @param x_Client_ID (optional)
|
|
222
|
+
* @param body (optional)
|
|
223
|
+
* @return Success
|
|
224
|
+
*/
|
|
225
|
+
sessionPATCH(version: string, x_Client_ID: any | undefined, body: Session | undefined, signal?: AbortSignal): Promise<Session> {
|
|
226
|
+
let url_ = this.baseUrl + "/api/v{version}/session";
|
|
227
|
+
if (version === undefined || version === null)
|
|
228
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
229
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
230
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
231
|
+
|
|
232
|
+
const content_ = JSON.stringify(body);
|
|
233
|
+
|
|
234
|
+
let options_: RequestInit = {
|
|
235
|
+
body: content_,
|
|
236
|
+
method: "PATCH",
|
|
237
|
+
signal,
|
|
238
|
+
headers: {
|
|
239
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
240
|
+
"Content-Type": "application/json",
|
|
241
|
+
"Accept": "text/plain"
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
|
|
245
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
246
|
+
return this.processSessionPATCH(_response);
|
|
247
|
+
});
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
protected processSessionPATCH(response: Response): Promise<Session> {
|
|
251
|
+
const status = response.status;
|
|
252
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
253
|
+
if (status === 200) {
|
|
254
|
+
return response.text().then((_responseText) => {
|
|
255
|
+
let result200: any = null;
|
|
256
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
257
|
+
result200 = Session.fromJS(resultData200);
|
|
258
|
+
return result200;
|
|
259
|
+
});
|
|
260
|
+
} else if (status !== 200 && status !== 204) {
|
|
261
|
+
return response.text().then((_responseText) => {
|
|
262
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
return Promise.resolve<Session>(null as any);
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* @param x_Client_ID (optional)
|
|
270
|
+
* @param body (optional)
|
|
271
|
+
* @return Success
|
|
272
|
+
*/
|
|
273
|
+
sessionDELETE(version: string, x_Client_ID: any | undefined, body: Session | undefined, signal?: AbortSignal): Promise<Session> {
|
|
274
|
+
let url_ = this.baseUrl + "/api/v{version}/session";
|
|
275
|
+
if (version === undefined || version === null)
|
|
276
|
+
throw new Error("The parameter 'version' must be defined.");
|
|
277
|
+
url_ = url_.replace("{version}", encodeURIComponent("" + version));
|
|
278
|
+
url_ = url_.replace(/[?&]$/, "");
|
|
279
|
+
|
|
280
|
+
const content_ = JSON.stringify(body);
|
|
281
|
+
|
|
282
|
+
let options_: RequestInit = {
|
|
283
|
+
body: content_,
|
|
284
|
+
method: "DELETE",
|
|
285
|
+
signal,
|
|
286
|
+
headers: {
|
|
287
|
+
"X-Client-ID": x_Client_ID !== undefined && x_Client_ID !== null ? "" + x_Client_ID : "",
|
|
288
|
+
"Content-Type": "application/json",
|
|
289
|
+
"Accept": "text/plain"
|
|
290
|
+
}
|
|
291
|
+
};
|
|
292
|
+
|
|
293
|
+
return this.http.fetch(url_, options_).then((_response: Response) => {
|
|
294
|
+
return this.processSessionDELETE(_response);
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
protected processSessionDELETE(response: Response): Promise<Session> {
|
|
299
|
+
const status = response.status;
|
|
300
|
+
let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };
|
|
301
|
+
if (status === 200) {
|
|
302
|
+
return response.text().then((_responseText) => {
|
|
303
|
+
let result200: any = null;
|
|
304
|
+
let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
|
|
305
|
+
result200 = Session.fromJS(resultData200);
|
|
306
|
+
return result200;
|
|
307
|
+
});
|
|
308
|
+
} else if (status !== 200 && status !== 204) {
|
|
309
|
+
return response.text().then((_responseText) => {
|
|
310
|
+
return throwException("An unexpected server error occurred.", status, _responseText, _headers);
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
return Promise.resolve<Session>(null as any);
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
export class BotMessage implements IBotMessage {
|
|
318
|
+
id!: number;
|
|
319
|
+
sessionId!: number;
|
|
320
|
+
answer!: string;
|
|
321
|
+
scoredUrls?: ScoredUrl[] | undefined;
|
|
322
|
+
guardFlag!: string;
|
|
323
|
+
isGuardrailed!: boolean;
|
|
324
|
+
botVersion?: string | undefined;
|
|
325
|
+
modelVersion?: string | undefined;
|
|
326
|
+
meta?: any | undefined;
|
|
327
|
+
|
|
328
|
+
constructor(data?: IBotMessage) {
|
|
329
|
+
if (data) {
|
|
330
|
+
for (var property in data) {
|
|
331
|
+
if (data.hasOwnProperty(property))
|
|
332
|
+
(<any>this)[property] = (<any>data)[property];
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
init(_data?: any) {
|
|
338
|
+
if (_data) {
|
|
339
|
+
this.id = _data["id"];
|
|
340
|
+
this.sessionId = _data["sessionId"];
|
|
341
|
+
this.answer = _data["answer"];
|
|
342
|
+
if (Array.isArray(_data["scoredUrls"])) {
|
|
343
|
+
this.scoredUrls = [] as any;
|
|
344
|
+
for (let item of _data["scoredUrls"])
|
|
345
|
+
this.scoredUrls!.push(ScoredUrl.fromJS(item));
|
|
346
|
+
}
|
|
347
|
+
this.guardFlag = _data["guardFlag"];
|
|
348
|
+
this.isGuardrailed = _data["isGuardrailed"];
|
|
349
|
+
this.botVersion = _data["botVersion"];
|
|
350
|
+
this.modelVersion = _data["modelVersion"];
|
|
351
|
+
this.meta = _data["meta"];
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
static fromJS(data: any): BotMessage {
|
|
356
|
+
data = typeof data === 'object' ? data : {};
|
|
357
|
+
let result = new BotMessage();
|
|
358
|
+
result.init(data);
|
|
359
|
+
return result;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
toJSON(data?: any) {
|
|
363
|
+
data = typeof data === 'object' ? data : {};
|
|
364
|
+
data["id"] = this.id;
|
|
365
|
+
data["sessionId"] = this.sessionId;
|
|
366
|
+
data["answer"] = this.answer;
|
|
367
|
+
if (Array.isArray(this.scoredUrls)) {
|
|
368
|
+
data["scoredUrls"] = [];
|
|
369
|
+
for (let item of this.scoredUrls)
|
|
370
|
+
data["scoredUrls"].push(item.toJSON());
|
|
371
|
+
}
|
|
372
|
+
data["guardFlag"] = this.guardFlag;
|
|
373
|
+
data["isGuardrailed"] = this.isGuardrailed;
|
|
374
|
+
data["botVersion"] = this.botVersion;
|
|
375
|
+
data["modelVersion"] = this.modelVersion;
|
|
376
|
+
data["meta"] = this.meta;
|
|
377
|
+
return data;
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
export interface IBotMessage {
|
|
382
|
+
id: number;
|
|
383
|
+
sessionId: number;
|
|
384
|
+
answer: string;
|
|
385
|
+
scoredUrls?: ScoredUrl[] | undefined;
|
|
386
|
+
guardFlag: string;
|
|
387
|
+
isGuardrailed: boolean;
|
|
388
|
+
botVersion?: string | undefined;
|
|
389
|
+
modelVersion?: string | undefined;
|
|
390
|
+
meta?: any | undefined;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
export enum Experience {
|
|
394
|
+
SingleTurn = 1,
|
|
395
|
+
MultiTurn = 2,
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
export class Feedback implements IFeedback {
|
|
399
|
+
linkUrl?: string | undefined;
|
|
400
|
+
description?: string | undefined;
|
|
401
|
+
sessionId?: number | undefined;
|
|
402
|
+
messageId?: number | undefined;
|
|
403
|
+
options?: FeedbackOptions[] | undefined;
|
|
404
|
+
rating?: FeedbackRatings;
|
|
405
|
+
|
|
406
|
+
constructor(data?: IFeedback) {
|
|
407
|
+
if (data) {
|
|
408
|
+
for (var property in data) {
|
|
409
|
+
if (data.hasOwnProperty(property))
|
|
410
|
+
(<any>this)[property] = (<any>data)[property];
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
init(_data?: any) {
|
|
416
|
+
if (_data) {
|
|
417
|
+
this.linkUrl = _data["linkUrl"];
|
|
418
|
+
this.description = _data["description"];
|
|
419
|
+
this.sessionId = _data["sessionId"];
|
|
420
|
+
this.messageId = _data["messageId"];
|
|
421
|
+
if (Array.isArray(_data["options"])) {
|
|
422
|
+
this.options = [] as any;
|
|
423
|
+
for (let item of _data["options"])
|
|
424
|
+
this.options!.push(item);
|
|
425
|
+
}
|
|
426
|
+
this.rating = _data["rating"];
|
|
427
|
+
}
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
static fromJS(data: any): Feedback {
|
|
431
|
+
data = typeof data === 'object' ? data : {};
|
|
432
|
+
let result = new Feedback();
|
|
433
|
+
result.init(data);
|
|
434
|
+
return result;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
toJSON(data?: any) {
|
|
438
|
+
data = typeof data === 'object' ? data : {};
|
|
439
|
+
data["linkUrl"] = this.linkUrl;
|
|
440
|
+
data["description"] = this.description;
|
|
441
|
+
data["sessionId"] = this.sessionId;
|
|
442
|
+
data["messageId"] = this.messageId;
|
|
443
|
+
if (Array.isArray(this.options)) {
|
|
444
|
+
data["options"] = [];
|
|
445
|
+
for (let item of this.options)
|
|
446
|
+
data["options"].push(item);
|
|
447
|
+
}
|
|
448
|
+
data["rating"] = this.rating;
|
|
449
|
+
return data;
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
export interface IFeedback {
|
|
454
|
+
linkUrl?: string | undefined;
|
|
455
|
+
description?: string | undefined;
|
|
456
|
+
sessionId?: number | undefined;
|
|
457
|
+
messageId?: number | undefined;
|
|
458
|
+
options?: FeedbackOptions[] | undefined;
|
|
459
|
+
rating?: FeedbackRatings;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
export enum FeedbackOptions {
|
|
463
|
+
Other = 1,
|
|
464
|
+
Unrelated = 2,
|
|
465
|
+
Unclear = 4,
|
|
466
|
+
Incomplete = 8,
|
|
467
|
+
Incorrect = 16,
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
export enum FeedbackRatings {
|
|
471
|
+
ThumbsDown = 0,
|
|
472
|
+
ThumbsUp = 1,
|
|
473
|
+
GuardrailFeedback = 2,
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
export class FrontendModel implements IFrontendModel {
|
|
477
|
+
options!: Option;
|
|
478
|
+
|
|
479
|
+
constructor(data?: IFrontendModel) {
|
|
480
|
+
if (data) {
|
|
481
|
+
for (var property in data) {
|
|
482
|
+
if (data.hasOwnProperty(property))
|
|
483
|
+
(<any>this)[property] = (<any>data)[property];
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
if (!data) {
|
|
487
|
+
this.options = new Option();
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
init(_data?: any) {
|
|
492
|
+
if (_data) {
|
|
493
|
+
this.options = _data["options"] ? Option.fromJS(_data["options"]) : new Option();
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
static fromJS(data: any): FrontendModel {
|
|
498
|
+
data = typeof data === 'object' ? data : {};
|
|
499
|
+
let result = new FrontendModel();
|
|
500
|
+
result.init(data);
|
|
501
|
+
return result;
|
|
502
|
+
}
|
|
503
|
+
|
|
504
|
+
toJSON(data?: any) {
|
|
505
|
+
data = typeof data === 'object' ? data : {};
|
|
506
|
+
data["options"] = this.options ? this.options.toJSON() : <any>undefined;
|
|
507
|
+
return data;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
|
|
511
|
+
export interface IFrontendModel {
|
|
512
|
+
options: Option;
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
export class Option implements IOption {
|
|
516
|
+
key!: string;
|
|
517
|
+
displayName?: string | undefined;
|
|
518
|
+
type!: OptionType;
|
|
519
|
+
subOptions?: Option[] | undefined;
|
|
520
|
+
|
|
521
|
+
constructor(data?: IOption) {
|
|
522
|
+
if (data) {
|
|
523
|
+
for (var property in data) {
|
|
524
|
+
if (data.hasOwnProperty(property))
|
|
525
|
+
(<any>this)[property] = (<any>data)[property];
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
init(_data?: any) {
|
|
531
|
+
if (_data) {
|
|
532
|
+
this.key = _data["key"];
|
|
533
|
+
this.displayName = _data["displayName"];
|
|
534
|
+
this.type = _data["type"];
|
|
535
|
+
if (Array.isArray(_data["subOptions"])) {
|
|
536
|
+
this.subOptions = [] as any;
|
|
537
|
+
for (let item of _data["subOptions"])
|
|
538
|
+
this.subOptions!.push(Option.fromJS(item));
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
static fromJS(data: any): Option {
|
|
544
|
+
data = typeof data === 'object' ? data : {};
|
|
545
|
+
let result = new Option();
|
|
546
|
+
result.init(data);
|
|
547
|
+
return result;
|
|
548
|
+
}
|
|
549
|
+
|
|
550
|
+
toJSON(data?: any) {
|
|
551
|
+
data = typeof data === 'object' ? data : {};
|
|
552
|
+
data["key"] = this.key;
|
|
553
|
+
data["displayName"] = this.displayName;
|
|
554
|
+
data["type"] = this.type;
|
|
555
|
+
if (Array.isArray(this.subOptions)) {
|
|
556
|
+
data["subOptions"] = [];
|
|
557
|
+
for (let item of this.subOptions)
|
|
558
|
+
data["subOptions"].push(item.toJSON());
|
|
559
|
+
}
|
|
560
|
+
return data;
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
export interface IOption {
|
|
565
|
+
key: string;
|
|
566
|
+
displayName?: string | undefined;
|
|
567
|
+
type: OptionType;
|
|
568
|
+
subOptions?: Option[] | undefined;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
export enum OptionType {
|
|
572
|
+
None = 0,
|
|
573
|
+
Group = 1,
|
|
574
|
+
Selectable = 2,
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
export class ScoredUrl implements IScoredUrl {
|
|
578
|
+
url?: string | undefined;
|
|
579
|
+
score?: number;
|
|
580
|
+
title?: string | undefined;
|
|
581
|
+
|
|
582
|
+
constructor(data?: IScoredUrl) {
|
|
583
|
+
if (data) {
|
|
584
|
+
for (var property in data) {
|
|
585
|
+
if (data.hasOwnProperty(property))
|
|
586
|
+
(<any>this)[property] = (<any>data)[property];
|
|
587
|
+
}
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
init(_data?: any) {
|
|
592
|
+
if (_data) {
|
|
593
|
+
this.url = _data["url"];
|
|
594
|
+
this.score = _data["score"];
|
|
595
|
+
this.title = _data["title"];
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
static fromJS(data: any): ScoredUrl {
|
|
600
|
+
data = typeof data === 'object' ? data : {};
|
|
601
|
+
let result = new ScoredUrl();
|
|
602
|
+
result.init(data);
|
|
603
|
+
return result;
|
|
604
|
+
}
|
|
605
|
+
|
|
606
|
+
toJSON(data?: any) {
|
|
607
|
+
data = typeof data === 'object' ? data : {};
|
|
608
|
+
data["url"] = this.url;
|
|
609
|
+
data["score"] = this.score;
|
|
610
|
+
data["title"] = this.title;
|
|
611
|
+
return data;
|
|
612
|
+
}
|
|
613
|
+
}
|
|
614
|
+
|
|
615
|
+
export interface IScoredUrl {
|
|
616
|
+
url?: string | undefined;
|
|
617
|
+
score?: number;
|
|
618
|
+
title?: string | undefined;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
export class Selections implements ISelections {
|
|
622
|
+
values?: string[] | undefined;
|
|
623
|
+
subOptions?: { [key: string]: Selections; } | undefined;
|
|
624
|
+
|
|
625
|
+
constructor(data?: ISelections) {
|
|
626
|
+
if (data) {
|
|
627
|
+
for (var property in data) {
|
|
628
|
+
if (data.hasOwnProperty(property))
|
|
629
|
+
(<any>this)[property] = (<any>data)[property];
|
|
630
|
+
}
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
init(_data?: any) {
|
|
635
|
+
if (_data) {
|
|
636
|
+
if (Array.isArray(_data["values"])) {
|
|
637
|
+
this.values = [] as any;
|
|
638
|
+
for (let item of _data["values"])
|
|
639
|
+
this.values!.push(item);
|
|
640
|
+
}
|
|
641
|
+
if (_data["subOptions"]) {
|
|
642
|
+
this.subOptions = {} as any;
|
|
643
|
+
for (let key in _data["subOptions"]) {
|
|
644
|
+
if (_data["subOptions"].hasOwnProperty(key))
|
|
645
|
+
(<any>this.subOptions)![key] = _data["subOptions"][key] ? Selections.fromJS(_data["subOptions"][key]) : new Selections();
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
static fromJS(data: any): Selections {
|
|
652
|
+
data = typeof data === 'object' ? data : {};
|
|
653
|
+
let result = new Selections();
|
|
654
|
+
result.init(data);
|
|
655
|
+
return result;
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
toJSON(data?: any) {
|
|
659
|
+
data = typeof data === 'object' ? data : {};
|
|
660
|
+
if (Array.isArray(this.values)) {
|
|
661
|
+
data["values"] = [];
|
|
662
|
+
for (let item of this.values)
|
|
663
|
+
data["values"].push(item);
|
|
664
|
+
}
|
|
665
|
+
if (this.subOptions) {
|
|
666
|
+
data["subOptions"] = {};
|
|
667
|
+
for (let key in this.subOptions) {
|
|
668
|
+
if (this.subOptions.hasOwnProperty(key))
|
|
669
|
+
(<any>data["subOptions"])[key] = this.subOptions[key] ? this.subOptions[key].toJSON() : <any>undefined;
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
return data;
|
|
673
|
+
}
|
|
674
|
+
}
|
|
675
|
+
|
|
676
|
+
export interface ISelections {
|
|
677
|
+
values?: string[] | undefined;
|
|
678
|
+
subOptions?: { [key: string]: Selections; } | undefined;
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
export class Session implements ISession {
|
|
682
|
+
id?: number;
|
|
683
|
+
data?: { [key: string]: string; } | undefined;
|
|
684
|
+
|
|
685
|
+
constructor(data?: ISession) {
|
|
686
|
+
if (data) {
|
|
687
|
+
for (var property in data) {
|
|
688
|
+
if (data.hasOwnProperty(property))
|
|
689
|
+
(<any>this)[property] = (<any>data)[property];
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
init(_data?: any) {
|
|
695
|
+
if (_data) {
|
|
696
|
+
this.id = _data["id"];
|
|
697
|
+
if (_data["data"]) {
|
|
698
|
+
this.data = {} as any;
|
|
699
|
+
for (let key in _data["data"]) {
|
|
700
|
+
if (_data["data"].hasOwnProperty(key))
|
|
701
|
+
(<any>this.data)![key] = _data["data"][key];
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
|
|
707
|
+
static fromJS(data: any): Session {
|
|
708
|
+
data = typeof data === 'object' ? data : {};
|
|
709
|
+
let result = new Session();
|
|
710
|
+
result.init(data);
|
|
711
|
+
return result;
|
|
712
|
+
}
|
|
713
|
+
|
|
714
|
+
toJSON(data?: any) {
|
|
715
|
+
data = typeof data === 'object' ? data : {};
|
|
716
|
+
data["id"] = this.id;
|
|
717
|
+
if (this.data) {
|
|
718
|
+
data["data"] = {};
|
|
719
|
+
for (let key in this.data) {
|
|
720
|
+
if (this.data.hasOwnProperty(key))
|
|
721
|
+
(<any>data["data"])[key] = (<any>this.data)[key];
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
return data;
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
export interface ISession {
|
|
729
|
+
id?: number;
|
|
730
|
+
data?: { [key: string]: string; } | undefined;
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
export class UserMessage implements IUserMessage {
|
|
734
|
+
sessionId?: number | undefined;
|
|
735
|
+
question!: string;
|
|
736
|
+
experience!: Experience;
|
|
737
|
+
selections?: Selections;
|
|
738
|
+
context?: { [key: string]: any; } | undefined;
|
|
739
|
+
|
|
740
|
+
constructor(data?: IUserMessage) {
|
|
741
|
+
if (data) {
|
|
742
|
+
for (var property in data) {
|
|
743
|
+
if (data.hasOwnProperty(property))
|
|
744
|
+
(<any>this)[property] = (<any>data)[property];
|
|
745
|
+
}
|
|
746
|
+
}
|
|
747
|
+
}
|
|
748
|
+
|
|
749
|
+
init(_data?: any) {
|
|
750
|
+
if (_data) {
|
|
751
|
+
this.sessionId = _data["sessionId"];
|
|
752
|
+
this.question = _data["question"];
|
|
753
|
+
this.experience = _data["experience"];
|
|
754
|
+
this.selections = _data["selections"] ? Selections.fromJS(_data["selections"]) : <any>undefined;
|
|
755
|
+
if (_data["context"]) {
|
|
756
|
+
this.context = {} as any;
|
|
757
|
+
for (let key in _data["context"]) {
|
|
758
|
+
if (_data["context"].hasOwnProperty(key))
|
|
759
|
+
(<any>this.context)![key] = _data["context"][key];
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
}
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
static fromJS(data: any): UserMessage {
|
|
766
|
+
data = typeof data === 'object' ? data : {};
|
|
767
|
+
let result = new UserMessage();
|
|
768
|
+
result.init(data);
|
|
769
|
+
return result;
|
|
770
|
+
}
|
|
771
|
+
|
|
772
|
+
toJSON(data?: any) {
|
|
773
|
+
data = typeof data === 'object' ? data : {};
|
|
774
|
+
data["sessionId"] = this.sessionId;
|
|
775
|
+
data["question"] = this.question;
|
|
776
|
+
data["experience"] = this.experience;
|
|
777
|
+
data["selections"] = this.selections ? this.selections.toJSON() : <any>undefined;
|
|
778
|
+
if (this.context) {
|
|
779
|
+
data["context"] = {};
|
|
780
|
+
for (let key in this.context) {
|
|
781
|
+
if (this.context.hasOwnProperty(key))
|
|
782
|
+
(<any>data["context"])[key] = (<any>this.context)[key];
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
return data;
|
|
786
|
+
}
|
|
787
|
+
}
|
|
788
|
+
|
|
789
|
+
export interface IUserMessage {
|
|
790
|
+
sessionId?: number | undefined;
|
|
791
|
+
question: string;
|
|
792
|
+
experience: Experience;
|
|
793
|
+
selections?: Selections;
|
|
794
|
+
context?: { [key: string]: any; } | undefined;
|
|
795
|
+
}
|
|
796
|
+
|
|
797
|
+
export class ApiException extends Error {
|
|
798
|
+
message: string;
|
|
799
|
+
status: number;
|
|
800
|
+
response: string;
|
|
801
|
+
headers: { [key: string]: any; };
|
|
802
|
+
result: any;
|
|
803
|
+
|
|
804
|
+
constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {
|
|
805
|
+
super();
|
|
806
|
+
|
|
807
|
+
this.message = message;
|
|
808
|
+
this.status = status;
|
|
809
|
+
this.response = response;
|
|
810
|
+
this.headers = headers;
|
|
811
|
+
this.result = result;
|
|
812
|
+
}
|
|
813
|
+
|
|
814
|
+
protected isApiException = true;
|
|
815
|
+
|
|
816
|
+
static isApiException(obj: any): obj is ApiException {
|
|
817
|
+
return obj.isApiException === true;
|
|
818
|
+
}
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
function throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any {
|
|
822
|
+
if (result !== null && result !== undefined)
|
|
823
|
+
throw result;
|
|
824
|
+
else
|
|
825
|
+
throw new ApiException(message, status, response, headers, null);
|
|
826
|
+
}
|