@cloudbase/ai 2.7.17-beta.0 → 2.8.0-beta.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.
Files changed (45) hide show
  1. package/dist/cjs/bot/index.d.ts +34 -0
  2. package/dist/cjs/bot/index.js +238 -0
  3. package/dist/cjs/bot/types.d.ts +104 -0
  4. package/dist/cjs/bot/types.js +3 -0
  5. package/dist/cjs/index.d.ts +7 -2
  6. package/dist/cjs/index.js +47 -14
  7. package/dist/cjs/models/Ark/index.js +4 -2
  8. package/dist/cjs/models/DashScope/index.js +4 -2
  9. package/dist/cjs/models/HunYuan/index.js +4 -2
  10. package/dist/cjs/models/HunYuanBeta/index.js +4 -2
  11. package/dist/cjs/models/Moonshot/index.js +4 -2
  12. package/dist/cjs/models/Yi/index.js +4 -2
  13. package/dist/cjs/models/ZhiPu/index.js +4 -2
  14. package/dist/cjs/type.d.ts +8 -0
  15. package/dist/cjs/type.js +1 -1
  16. package/dist/cjs/utils.js +3 -2
  17. package/dist/esm/bot/index.d.ts +34 -0
  18. package/dist/esm/bot/index.js +235 -0
  19. package/dist/esm/bot/types.d.ts +104 -0
  20. package/dist/esm/bot/types.js +2 -0
  21. package/dist/esm/index.d.ts +7 -2
  22. package/dist/esm/index.js +46 -14
  23. package/dist/esm/models/Ark/index.js +4 -2
  24. package/dist/esm/models/DashScope/index.js +4 -2
  25. package/dist/esm/models/HunYuan/index.js +4 -2
  26. package/dist/esm/models/HunYuanBeta/index.js +4 -2
  27. package/dist/esm/models/Moonshot/index.js +4 -2
  28. package/dist/esm/models/Yi/index.js +4 -2
  29. package/dist/esm/models/ZhiPu/index.js +4 -2
  30. package/dist/esm/type.d.ts +8 -0
  31. package/dist/esm/type.js +1 -1
  32. package/dist/esm/utils.js +2 -1
  33. package/package.json +4 -3
  34. package/src/bot/index.ts +158 -0
  35. package/src/bot/types.ts +118 -0
  36. package/src/index.ts +43 -14
  37. package/src/models/Ark/index.ts +3 -1
  38. package/src/models/DashScope/index.ts +3 -1
  39. package/src/models/HunYuan/index.ts +3 -1
  40. package/src/models/HunYuanBeta/index.ts +3 -1
  41. package/src/models/Moonshot/index.ts +3 -1
  42. package/src/models/Yi/index.ts +3 -1
  43. package/src/models/ZhiPu/index.ts +3 -1
  44. package/src/type.ts +12 -0
  45. package/src/utils.ts +1 -0
@@ -0,0 +1,34 @@
1
+ import { type ParsedEvent } from 'eventsource-parser';
2
+ import { BotReq } from '../type';
3
+ import { IBotPreview, IBotSendMessage, ICreateBot, IDeleteBot, IGenerateBot, IGenerateImage, IGetBot, IGetBotChatRecords, IGetBotFeedBack, IGetBotList, IGetBotRecommendQuestions, ISendBotFeedback, IUpdateBot } from './types';
4
+ export declare class Bot {
5
+ baseUrl: string;
6
+ req: BotReq;
7
+ constructor(req: BotReq, baseUrl: string);
8
+ list(props: IGetBotList): Promise<Object>;
9
+ create({ botInfo }: ICreateBot): Promise<Object>;
10
+ get({ id }: IGetBot): Promise<Object>;
11
+ update({ botId, botInfo }: IUpdateBot): Promise<Object>;
12
+ delete({ id }: IDeleteBot): Promise<Object>;
13
+ getChatRecords(props: IGetBotChatRecords): Promise<Object>;
14
+ sendFeedback({ userFeedBack }: ISendBotFeedback): Promise<Object>;
15
+ getFeedBack(props: IGetBotFeedBack): Promise<Object>;
16
+ getRecommendQuestions(props: IGetBotRecommendQuestions): Promise<StreamResult>;
17
+ generateBot(props: IGenerateBot): Promise<StreamResult>;
18
+ getPreview(props: IBotPreview): Promise<StreamResult>;
19
+ generateImage(props: IGenerateImage): Promise<Object>;
20
+ sendMessage(props: IBotSendMessage): Promise<StreamResult>;
21
+ private join;
22
+ }
23
+ type BotEventStreamData = {
24
+ content: string;
25
+ };
26
+ declare class StreamResult {
27
+ private _eventSourceStream;
28
+ constructor(_stream: ReadableStream<Uint8Array>);
29
+ private get teeedStream();
30
+ get eventSourceStream(): import("../type").AsyncIterableReadableStream<ParsedEvent>;
31
+ get dataStream(): import("../type").AsyncIterableReadableStream<BotEventStreamData>;
32
+ get textStream(): import("../type").AsyncIterableReadableStream<string>;
33
+ }
34
+ export {};
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __rest = (this && this.__rest) || function (s, e) {
50
+ var t = {};
51
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
+ t[p] = s[p];
53
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
+ t[p[i]] = s[p[i]];
57
+ }
58
+ return t;
59
+ };
60
+ Object.defineProperty(exports, "__esModule", { value: true });
61
+ exports.Bot = void 0;
62
+ var utils_1 = require("../utils");
63
+ var Bot = (function () {
64
+ function Bot(req, baseUrl) {
65
+ this.baseUrl = baseUrl;
66
+ var token = arguments[2];
67
+ if (typeof token === 'string') {
68
+ this.req = function (_a) {
69
+ var _b = _a.headers, headers = _b === void 0 ? {} : _b, rest = __rest(_a, ["headers"]);
70
+ return req(__assign(__assign({}, rest), { headers: __assign(__assign({}, headers), { Authorization: "Bearer ".concat(token) }) }));
71
+ };
72
+ }
73
+ else {
74
+ this.req = req;
75
+ }
76
+ }
77
+ Bot.prototype.list = function (props) {
78
+ return this.req({
79
+ method: 'get',
80
+ url: this.join('bots'),
81
+ data: props,
82
+ });
83
+ };
84
+ Bot.prototype.create = function (_a) {
85
+ var botInfo = _a.botInfo;
86
+ return this.req({
87
+ method: 'post',
88
+ url: this.join('bots'),
89
+ data: botInfo,
90
+ });
91
+ };
92
+ Bot.prototype.get = function (_a) {
93
+ var id = _a.id;
94
+ return this.req({
95
+ method: 'get',
96
+ url: this.join("bots/".concat(id)),
97
+ });
98
+ };
99
+ Bot.prototype.update = function (_a) {
100
+ var botId = _a.botId, botInfo = _a.botInfo;
101
+ return this.req({
102
+ method: 'PATCH',
103
+ url: this.join("bots/".concat(botId)),
104
+ data: botInfo,
105
+ });
106
+ };
107
+ Bot.prototype.delete = function (_a) {
108
+ var id = _a.id;
109
+ return this.req({ method: 'delete', url: this.join("bots/".concat(id)) });
110
+ };
111
+ Bot.prototype.getChatRecords = function (props) {
112
+ return this.req({ method: 'get', url: this.join('records'), data: props });
113
+ };
114
+ Bot.prototype.sendFeedback = function (_a) {
115
+ var userFeedBack = _a.userFeedBack;
116
+ return this.req({ method: 'post', url: this.join('feedback'), data: userFeedBack });
117
+ };
118
+ Bot.prototype.getFeedBack = function (props) {
119
+ return this.req({ method: 'get', url: this.join('feedback'), data: props });
120
+ };
121
+ Bot.prototype.getRecommendQuestions = function (props) {
122
+ return __awaiter(this, void 0, void 0, function () {
123
+ var res;
124
+ return __generator(this, function (_a) {
125
+ switch (_a.label) {
126
+ case 0: return [4, this.req({ method: 'post', url: this.join('recommend-questions'), data: props, stream: true })];
127
+ case 1:
128
+ res = _a.sent();
129
+ return [2, new StreamResult(res)];
130
+ }
131
+ });
132
+ });
133
+ };
134
+ Bot.prototype.generateBot = function (props) {
135
+ return __awaiter(this, void 0, void 0, function () {
136
+ var res;
137
+ return __generator(this, function (_a) {
138
+ switch (_a.label) {
139
+ case 0: return [4, this.req({ method: 'post', url: this.join('generate-bot'), data: props, stream: true })];
140
+ case 1:
141
+ res = _a.sent();
142
+ return [2, new StreamResult(res)];
143
+ }
144
+ });
145
+ });
146
+ };
147
+ Bot.prototype.getPreview = function (props) {
148
+ return __awaiter(this, void 0, void 0, function () {
149
+ var res;
150
+ return __generator(this, function (_a) {
151
+ switch (_a.label) {
152
+ case 0: return [4, this.req({ method: 'post', url: this.join('preview'), data: props, stream: true })];
153
+ case 1:
154
+ res = _a.sent();
155
+ return [2, new StreamResult(res)];
156
+ }
157
+ });
158
+ });
159
+ };
160
+ Bot.prototype.generateImage = function (props) {
161
+ return this.req({ method: 'post', url: this.join('generate-image'), data: props });
162
+ };
163
+ Bot.prototype.sendMessage = function (props) {
164
+ return __awaiter(this, void 0, void 0, function () {
165
+ var res;
166
+ return __generator(this, function (_a) {
167
+ switch (_a.label) {
168
+ case 0: return [4, this.req({ method: 'post', url: this.join('send-message'), data: props, stream: true })];
169
+ case 1:
170
+ res = _a.sent();
171
+ return [2, new StreamResult(res)];
172
+ }
173
+ });
174
+ });
175
+ };
176
+ Bot.prototype.join = function (url) {
177
+ return "".concat(this.baseUrl, "/").concat(url);
178
+ };
179
+ return Bot;
180
+ }());
181
+ exports.Bot = Bot;
182
+ var StreamResult = (function () {
183
+ function StreamResult(_stream) {
184
+ var stream = (0, utils_1.toPolyfillReadable)(_stream);
185
+ this._eventSourceStream = stream
186
+ .pipeThrough(new utils_1.TextDecoderStream())
187
+ .pipeThrough((0, utils_1.createEventSourceParserTransformStream)());
188
+ }
189
+ Object.defineProperty(StreamResult.prototype, "teeedStream", {
190
+ get: function () {
191
+ var _a = this._eventSourceStream.tee(), s1 = _a[0], s2 = _a[1];
192
+ this._eventSourceStream = s2;
193
+ return s1;
194
+ },
195
+ enumerable: false,
196
+ configurable: true
197
+ });
198
+ Object.defineProperty(StreamResult.prototype, "eventSourceStream", {
199
+ get: function () {
200
+ return (0, utils_1.createAsyncIterable)(this.teeedStream);
201
+ },
202
+ enumerable: false,
203
+ configurable: true
204
+ });
205
+ Object.defineProperty(StreamResult.prototype, "dataStream", {
206
+ get: function () {
207
+ return (0, utils_1.createAsyncIterable)(this.eventSourceStream.pipeThrough(new utils_1.TransformStream({
208
+ transform: function (chunk, controller) {
209
+ try {
210
+ var data = JSON.parse(chunk.data);
211
+ controller.enqueue(data);
212
+ }
213
+ catch (e) {
214
+ if (chunk.data !== '[DONE]') {
215
+ console.warn('Error when transforming event source data to json', e);
216
+ }
217
+ }
218
+ },
219
+ })));
220
+ },
221
+ enumerable: false,
222
+ configurable: true
223
+ });
224
+ Object.defineProperty(StreamResult.prototype, "textStream", {
225
+ get: function () {
226
+ return (0, utils_1.createAsyncIterable)(this.dataStream.pipeThrough(new utils_1.TransformStream({
227
+ transform: function (chunk, controller) {
228
+ var _a;
229
+ controller.enqueue((_a = chunk === null || chunk === void 0 ? void 0 : chunk.content) !== null && _a !== void 0 ? _a : '');
230
+ },
231
+ })));
232
+ },
233
+ enumerable: false,
234
+ configurable: true
235
+ });
236
+ return StreamResult;
237
+ }());
238
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYm90L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQkEsa0NBTWlCO0FBRWpCO0lBR0UsYUFBWSxHQUFXLEVBQVMsT0FBZTtRQUFmLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDN0MsSUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzFCLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLElBQUksQ0FBQyxHQUFHLEdBQUcsVUFBQyxFQUF5QjtnQkFBdkIsSUFBQSxlQUFZLEVBQVosT0FBTyxtQkFBRyxFQUFFLEtBQUEsRUFBSyxJQUFJLGNBQXZCLFdBQXlCLENBQUY7Z0JBQU8sT0FBQSxHQUFHLHVCQUFNLElBQUksS0FBRSxPQUFPLHdCQUFPLE9BQU8sS0FBRSxhQUFhLEVBQUUsaUJBQVUsS0FBSyxDQUFFLE9BQUssQ0FBQTthQUFBLENBQUE7U0FDdEg7YUFBTTtZQUNMLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFBO1NBQ2Y7SUFDSCxDQUFDO0lBRUQsa0JBQUksR0FBSixVQUFLLEtBQWtCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUNkLE1BQU0sRUFBRSxLQUFLO1lBQ2IsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ3RCLElBQUksRUFBRSxLQUFLO1NBQ1osQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELG9CQUFNLEdBQU4sVUFBTyxFQUF1QjtZQUFyQixPQUFPLGFBQUE7UUFDZCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDZCxNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN0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Q0FBQTtnQkFDMUMsQ0FBQzthQUNGLENBQUMsQ0FBRSxDQUFFLENBQUE7UUFDUixDQUFDOzs7T0FBQTtJQUNILG1CQUFDO0FBQUQsQ0FBQyxBQTFDRCxJQTBDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgUGFyc2VkRXZlbnQgfSBmcm9tICdldmVudHNvdXJjZS1wYXJzZXInXG5pbXBvcnQgeyBCb3RSZXEgfSBmcm9tICcuLi90eXBlJ1xuaW1wb3J0IHtcbiAgSUJvdFByZXZpZXcsXG4gIElCb3RTZW5kTWVzc2FnZSxcbiAgSUNyZWF0ZUJvdCxcbiAgSURlbGV0ZUJvdCxcbiAgSUdlbmVyYXRlQm90LFxuICBJR2VuZXJhdGVJbWFnZSxcbiAgSUdldEJvdCxcbiAgSUdldEJvdENoYXRSZWNvcmRzLFxuICBJR2V0Qm90RmVlZEJhY2ssXG4gIElHZXRCb3RMaXN0LFxuICBJR2V0Qm90UmVjb21tZW5kUXVlc3Rpb25zLFxuICBJU2VuZEJvdEZlZWRiYWNrLFxuICBJVXBkYXRlQm90LFxufSBmcm9tICcuL3R5cGVzJ1xuaW1wb3J0IHtcbiAgY3JlYXRlQXN5bmNJdGVyYWJsZSxcbiAgdG9Qb2x5ZmlsbFJlYWRhYmxlLFxuICBjcmVhdGVFdmVudFNvdXJjZVBhcnNlclRyYW5zZm9ybVN0cmVhbSxcbiAgVGV4dERlY29kZXJTdHJlYW0sXG4gIFRyYW5zZm9ybVN0cmVhbSxcbn0gZnJvbSAnLi4vdXRpbHMnXG5cbmV4cG9ydCBjbGFzcyBCb3Qge1xuICByZXE6IEJvdFJlcVxuXG4gIGNvbnN0cnVjdG9yKHJlcTogQm90UmVxLCBwdWJsaWMgYmFzZVVybDogc3RyaW5nKSB7XG4gICAgY29uc3QgdG9rZW4gPSBhcmd1bWVudHNbMl1cbiAgICBpZiAodHlwZW9mIHRva2VuID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5yZXEgPSAoeyBoZWFkZXJzID0ge30sIC4uLnJlc3QgfSkgPT4gcmVxKHsgLi4ucmVzdCwgaGVhZGVyczogeyAuLi5oZWFkZXJzLCBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7dG9rZW59YCB9IH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVxID0gcmVxXG4gICAgfVxuICB9XG5cbiAgbGlzdChwcm9wczogSUdldEJvdExpc3QpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogdGhpcy5qb2luKCdib3RzJyksXG4gICAgICBkYXRhOiBwcm9wcyxcbiAgICB9KVxuICB9XG5cbiAgY3JlYXRlKHsgYm90SW5mbyB9OiBJQ3JlYXRlQm90KSB7XG4gICAgcmV0dXJuIHRoaXMucmVxKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgdXJsOiB0aGlzLmpvaW4oJ2JvdHMnKSxcbiAgICAgIGRhdGE6IGJvdEluZm8sXG4gICAgfSlcbiAgfVxuXG4gIGdldCh7IGlkIH06IElHZXRCb3QpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoe1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIHVybDogdGhpcy5qb2luKGBib3RzLyR7aWR9YCksXG4gICAgfSlcbiAgfVxuXG4gIHVwZGF0ZSh7IGJvdElkLCBib3RJbmZvIH06IElVcGRhdGVCb3QpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoe1xuICAgICAgbWV0aG9kOiAnUEFUQ0gnLFxuICAgICAgdXJsOiB0aGlzLmpvaW4oYGJvdHMvJHtib3RJZH1gKSxcbiAgICAgIGRhdGE6IGJvdEluZm8sXG4gICAgfSlcbiAgfVxuXG4gIGRlbGV0ZSh7IGlkIH06IElEZWxldGVCb3QpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoeyBtZXRob2Q6ICdkZWxldGUnLCB1cmw6IHRoaXMuam9pbihgYm90cy8ke2lkfWApIH0pXG4gIH1cblxuICBnZXRDaGF0UmVjb3Jkcyhwcm9wczogSUdldEJvdENoYXRSZWNvcmRzKSB7XG4gICAgcmV0dXJuIHRoaXMucmVxKHsgbWV0aG9kOiAnZ2V0JywgdXJsOiB0aGlzLmpvaW4oJ3JlY29yZHMnKSwgZGF0YTogcHJvcHMgfSlcbiAgfVxuXG4gIHNlbmRGZWVkYmFjayh7IHVzZXJGZWVkQmFjayB9OiBJU2VuZEJvdEZlZWRiYWNrKSB7XG4gICAgcmV0dXJuIHRoaXMucmVxKHsgbWV0aG9kOiAncG9zdCcsIHVybDogdGhpcy5qb2luKCdmZWVkYmFjaycpLCBkYXRhOiB1c2VyRmVlZEJhY2sgfSlcbiAgfVxuXG4gIGdldEZlZWRCYWNrKHByb3BzOiBJR2V0Qm90RmVlZEJhY2spIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoeyBtZXRob2Q6ICdnZXQnLCB1cmw6IHRoaXMuam9pbignZmVlZGJhY2snKSwgZGF0YTogcHJvcHMgfSlcbiAgfVxuXG4gIGFzeW5jIGdldFJlY29tbWVuZFF1ZXN0aW9ucyhwcm9wczogSUdldEJvdFJlY29tbWVuZFF1ZXN0aW9ucykge1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMucmVxKHsgbWV0aG9kOiAncG9zdCcsIHVybDogdGhpcy5qb2luKCdyZWNvbW1lbmQtcXVlc3Rpb25zJyksIGRhdGE6IHByb3BzLCBzdHJlYW06IHRydWUgfSlcbiAgICByZXR1cm4gbmV3IFN0cmVhbVJlc3VsdChyZXMpXG4gIH1cblxuICBhc3luYyBnZW5lcmF0ZUJvdChwcm9wczogSUdlbmVyYXRlQm90KSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXEoeyBtZXRob2Q6ICdwb3N0JywgdXJsOiB0aGlzLmpvaW4oJ2dlbmVyYXRlLWJvdCcpLCBkYXRhOiBwcm9wcywgc3RyZWFtOiB0cnVlIH0pXG4gICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQocmVzKVxuICB9XG5cbiAgYXN5bmMgZ2V0UHJldmlldyhwcm9wczogSUJvdFByZXZpZXcpIHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB0aGlzLnJlcSh7IG1ldGhvZDogJ3Bvc3QnLCB1cmw6IHRoaXMuam9pbigncHJldmlldycpLCBkYXRhOiBwcm9wcywgc3RyZWFtOiB0cnVlIH0pXG4gICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQocmVzKVxuICB9XG5cbiAgZ2VuZXJhdGVJbWFnZShwcm9wczogSUdlbmVyYXRlSW1hZ2UpIHtcbiAgICByZXR1cm4gdGhpcy5yZXEoeyBtZXRob2Q6ICdwb3N0JywgdXJsOiB0aGlzLmpvaW4oJ2dlbmVyYXRlLWltYWdlJyksIGRhdGE6IHByb3BzIH0pXG4gIH1cblxuICBhc3luYyBzZW5kTWVzc2FnZShwcm9wczogSUJvdFNlbmRNZXNzYWdlKSB7XG4gICAgY29uc3QgcmVzID0gYXdhaXQgdGhpcy5yZXEoeyBtZXRob2Q6ICdwb3N0JywgdXJsOiB0aGlzLmpvaW4oJ3NlbmQtbWVzc2FnZScpLCBkYXRhOiBwcm9wcywgc3RyZWFtOiB0cnVlIH0pXG4gICAgcmV0dXJuIG5ldyBTdHJlYW1SZXN1bHQocmVzKVxuICB9XG5cbiAgcHJpdmF0ZSBqb2luKHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH0vJHt1cmx9YFxuICB9XG59XG5cbnR5cGUgQm90RXZlbnRTdHJlYW1EYXRhID0geyBjb250ZW50OiBzdHJpbmcgfVxuXG5jbGFzcyBTdHJlYW1SZXN1bHQge1xuICBwcml2YXRlIF9ldmVudFNvdXJjZVN0cmVhbTogUmVhZGFibGVTdHJlYW08UGFyc2VkRXZlbnQ+XG5cbiAgY29uc3RydWN0b3IoX3N0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pIHtcbiAgICBjb25zdCBzdHJlYW0gPSB0b1BvbHlmaWxsUmVhZGFibGUoX3N0cmVhbSkgYXMgdHlwZW9mIF9zdHJlYW1cbiAgICB0aGlzLl9ldmVudFNvdXJjZVN0cmVhbSA9IHN0cmVhbVxuICAgICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gIH1cblxuICBwcml2YXRlIGdldCB0ZWVlZFN0cmVhbSgpIHtcbiAgICBjb25zdCBbczEsIHMyXSA9IHRoaXMuX2V2ZW50U291cmNlU3RyZWFtLnRlZSgpXG4gICAgdGhpcy5fZXZlbnRTb3VyY2VTdHJlYW0gPSBzMlxuICAgIHJldHVybiBzMVxuICB9XG5cbiAgZ2V0IGV2ZW50U291cmNlU3RyZWFtKCkge1xuICAgIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHRoaXMudGVlZWRTdHJlYW0pXG4gIH1cblxuICBnZXQgZGF0YVN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmV2ZW50U291cmNlU3RyZWFtLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIEJvdEV2ZW50U3RyZWFtRGF0YT4oe1xuICAgICAgdHJhbnNmb3JtKGNodW5rLCBjb250cm9sbGVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoY2h1bmsuZGF0YSlcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cblxuICBnZXQgdGV4dFN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmRhdGFTdHJlYW0ucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxCb3RFdmVudFN0cmVhbURhdGEsIHN0cmluZz4oe1xuICAgICAgdHJhbnNmb3JtKGNodW5rLCBjb250cm9sbGVyKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShjaHVuaz8uY29udGVudCA/PyAnJylcbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,104 @@
1
+ export interface IGetBotList {
2
+ name: string;
3
+ introduction: string;
4
+ information: string;
5
+ enable: boolean;
6
+ pageSize: number;
7
+ pageNumber: number;
8
+ }
9
+ export interface ICreateBot {
10
+ botInfo: BotInfo;
11
+ }
12
+ export interface IGetBot {
13
+ id: string;
14
+ }
15
+ export interface IUpdateBot {
16
+ botId: string;
17
+ botInfo: BotInfo;
18
+ }
19
+ export interface IDeleteBot {
20
+ id: string;
21
+ }
22
+ export interface IGetBotChatRecords {
23
+ botId: string;
24
+ sort: 'asc' | 'desc' | string;
25
+ pageSize: number;
26
+ pageNumber: number;
27
+ }
28
+ export interface ISendBotFeedback {
29
+ userFeedBack: IUserFeedback;
30
+ }
31
+ export interface IGetBotFeedBack {
32
+ botId: string;
33
+ type: 'upvote' | 'downvote' | string;
34
+ sender: string;
35
+ senderFilter: 'include' | 'exclude' | 'equal' | 'unequal' | 'prefix' | string;
36
+ minRating: number;
37
+ maxRating: number;
38
+ from: number;
39
+ to: number;
40
+ pageSize: number;
41
+ pageNumber: number;
42
+ }
43
+ export interface IGetBotRecommendQuestions {
44
+ botId: string;
45
+ name: string;
46
+ introduction: string;
47
+ agentSetting: string;
48
+ msg: string;
49
+ history: Array<{
50
+ role: string;
51
+ content: string;
52
+ }>;
53
+ }
54
+ export interface IGenerateBot {
55
+ simple: boolean;
56
+ prompt: string;
57
+ }
58
+ export interface IBotPreview {
59
+ name: string;
60
+ introduction: string;
61
+ agentSetting: string;
62
+ msg: string;
63
+ history: Array<{
64
+ role: string;
65
+ content: string;
66
+ }>;
67
+ knowledgeBase: Array<string>;
68
+ }
69
+ export interface IGenerateImage {
70
+ prompt: string;
71
+ }
72
+ export interface IBotSendMessage {
73
+ botId: string;
74
+ msg: string;
75
+ history: Array<{
76
+ role: string;
77
+ content: string;
78
+ }>;
79
+ }
80
+ export interface IUserFeedback {
81
+ recordId: string;
82
+ type: string;
83
+ botId: string;
84
+ comment: string;
85
+ rating: number;
86
+ tags: Array<string>;
87
+ input: string;
88
+ aiAnswer: string;
89
+ }
90
+ export interface BotInfo {
91
+ botId: string;
92
+ name: string;
93
+ introduction: string;
94
+ agentSetting: string;
95
+ welcomeMessage: string;
96
+ avatar: string;
97
+ background: string;
98
+ tags: Array<string>;
99
+ isNeedRecommend: boolean;
100
+ knowledgeBase: Array<string>;
101
+ type: string;
102
+ initQuestions: Array<string>;
103
+ enable: true;
104
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYm90L3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIElHZXRCb3RMaXN0IHtcbiAgbmFtZTogc3RyaW5nXG4gIGludHJvZHVjdGlvbjogc3RyaW5nXG4gIGluZm9ybWF0aW9uOiBzdHJpbmdcbiAgZW5hYmxlOiBib29sZWFuXG4gIHBhZ2VTaXplOiBudW1iZXJcbiAgcGFnZU51bWJlcjogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZUJvdCB7XG4gIGJvdEluZm86IEJvdEluZm9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0Qm90IHtcbiAgaWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElVcGRhdGVCb3Qge1xuICBib3RJZDogc3RyaW5nXG4gIGJvdEluZm86IEJvdEluZm9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVsZXRlQm90IHtcbiAgaWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRCb3RDaGF0UmVjb3JkcyB7XG4gIGJvdElkOiBzdHJpbmdcbiAgc29ydDogJ2FzYycgfCAnZGVzYycgfCBzdHJpbmdcbiAgcGFnZVNpemU6IG51bWJlclxuICBwYWdlTnVtYmVyOiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2VuZEJvdEZlZWRiYWNrIHtcbiAgdXNlckZlZWRCYWNrOiBJVXNlckZlZWRiYWNrXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldEJvdEZlZWRCYWNrIHtcbiAgYm90SWQ6IHN0cmluZ1xuICB0eXBlOiAndXB2b3RlJyB8ICdkb3dudm90ZScgfCBzdHJpbmdcbiAgc2VuZGVyOiBzdHJpbmdcbiAgc2VuZGVyRmlsdGVyOiAnaW5jbHVkZScgfCAnZXhjbHVkZScgfCAnZXF1YWwnIHwgJ3VuZXF1YWwnIHwgJ3ByZWZpeCcgfCBzdHJpbmdcbiAgbWluUmF0aW5nOiBudW1iZXJcbiAgbWF4UmF0aW5nOiBudW1iZXJcbiAgZnJvbTogbnVtYmVyXG4gIHRvOiBudW1iZXJcbiAgcGFnZVNpemU6IG51bWJlclxuICBwYWdlTnVtYmVyOiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR2V0Qm90UmVjb21tZW5kUXVlc3Rpb25zIHtcbiAgYm90SWQ6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgaW50cm9kdWN0aW9uOiBzdHJpbmdcbiAgYWdlbnRTZXR0aW5nOiBzdHJpbmdcbiAgbXNnOiBzdHJpbmdcbiAgaGlzdG9yeTogQXJyYXk8e1xuICAgIHJvbGU6IHN0cmluZ1xuICAgIGNvbnRlbnQ6IHN0cmluZ1xuICB9PlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZW5lcmF0ZUJvdCB7XG4gIHNpbXBsZTogYm9vbGVhblxuICBwcm9tcHQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElCb3RQcmV2aWV3IHtcbiAgbmFtZTogc3RyaW5nXG4gIGludHJvZHVjdGlvbjogc3RyaW5nXG4gIGFnZW50U2V0dGluZzogc3RyaW5nXG4gIG1zZzogc3RyaW5nXG4gIGhpc3Rvcnk6IEFycmF5PHtcbiAgICByb2xlOiBzdHJpbmdcbiAgICBjb250ZW50OiBzdHJpbmdcbiAgfT5cbiAga25vd2xlZGdlQmFzZTogQXJyYXk8c3RyaW5nPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZW5lcmF0ZUltYWdlIHtcbiAgcHJvbXB0OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQm90U2VuZE1lc3NhZ2Uge1xuICBib3RJZDogc3RyaW5nXG4gIG1zZzogc3RyaW5nXG4gIGhpc3Rvcnk6IEFycmF5PHtcbiAgICByb2xlOiBzdHJpbmdcbiAgICBjb250ZW50OiBzdHJpbmdcbiAgfT5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJVXNlckZlZWRiYWNrIHtcbiAgcmVjb3JkSWQ6IHN0cmluZ1xuICB0eXBlOiBzdHJpbmdcbiAgYm90SWQ6IHN0cmluZ1xuICBjb21tZW50OiBzdHJpbmdcbiAgcmF0aW5nOiBudW1iZXJcbiAgdGFnczogQXJyYXk8c3RyaW5nPlxuICBpbnB1dDogc3RyaW5nXG4gIGFpQW5zd2VyOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCb3RJbmZvIHtcbiAgYm90SWQ6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgaW50cm9kdWN0aW9uOiBzdHJpbmdcbiAgYWdlbnRTZXR0aW5nOiBzdHJpbmdcbiAgd2VsY29tZU1lc3NhZ2U6IHN0cmluZ1xuICBhdmF0YXI6IHN0cmluZ1xuICBiYWNrZ3JvdW5kOiBzdHJpbmdcbiAgdGFnczogQXJyYXk8c3RyaW5nPlxuICBpc05lZWRSZWNvbW1lbmQ6IGJvb2xlYW5cbiAga25vd2xlZGdlQmFzZTogQXJyYXk8c3RyaW5nPlxuICB0eXBlOiBzdHJpbmdcbiAgaW5pdFF1ZXN0aW9uczogQXJyYXk8c3RyaW5nPlxuICBlbmFibGU6IHRydWVcbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import type { ICloudbase } from '@cloudbase/types';
2
2
  import type { SDKRequestInterface } from '@cloudbase/adapter-interface';
3
+ import { Bot } from './bot';
3
4
  import * as models from './models';
4
5
  import * as types from './type';
5
6
  import * as utils from './utils';
@@ -23,8 +24,10 @@ declare const MODELS: {
23
24
  declare class AI {
24
25
  private req;
25
26
  baseUrl: string;
27
+ aiBaseUrl: string;
28
+ aiBotBaseUrl: string;
29
+ bot: Bot;
26
30
  constructor(req: SDKRequestInterface, baseUrl: string);
27
- request: types.ModelReq;
28
31
  createModel<T extends keyof typeof MODELS>(model: T): InstanceType<{
29
32
  hunyuan: typeof models.HunYuanModel;
30
33
  'hunyuan-beta': typeof models.HunYuanBetaModel;
@@ -35,6 +38,8 @@ declare class AI {
35
38
  zhipu: typeof models.ZhiPuModel;
36
39
  }[T]>;
37
40
  registerModel(name: string, model: types.ChatModelConstructor): void;
41
+ modelRequest: types.ModelReq;
42
+ botRequest: types.BotReq;
38
43
  }
39
44
  declare function registerAi(app: ICloudbase): void;
40
- export { types, utils, restModels as models, registerAi, AI };
45
+ export { types, utils, restModels as models, registerAi, AI, Bot };
package/dist/cjs/index.js CHANGED
@@ -81,7 +81,9 @@ var __rest = (this && this.__rest) || function (s, e) {
81
81
  return t;
82
82
  };
83
83
  Object.defineProperty(exports, "__esModule", { value: true });
84
- exports.AI = exports.registerAi = exports.models = exports.utils = exports.types = void 0;
84
+ exports.Bot = exports.AI = exports.registerAi = exports.models = exports.utils = exports.types = void 0;
85
+ var bot_1 = require("./bot");
86
+ Object.defineProperty(exports, "Bot", { enumerable: true, get: function () { return bot_1.Bot; } });
85
87
  var models = __importStar(require("./models"));
86
88
  var types = __importStar(require("./type"));
87
89
  exports.types = types;
@@ -94,7 +96,7 @@ var AI = (function () {
94
96
  var _this = this;
95
97
  this.req = req;
96
98
  this.baseUrl = baseUrl;
97
- this.request = function (_a) {
99
+ this.modelRequest = function (_a) {
98
100
  var url = _a.url, data = _a.data, headers = _a.headers, stream = _a.stream;
99
101
  return __awaiter(_this, void 0, void 0, function () {
100
102
  return __generator(this, function (_b) {
@@ -111,9 +113,41 @@ var AI = (function () {
111
113
  });
112
114
  });
113
115
  };
116
+ this.botRequest = function (_a) {
117
+ var method = _a.method, url = _a.url, _b = _a.data, data = _b === void 0 ? {} : _b, headers = _a.headers, stream = _a.stream;
118
+ return __awaiter(_this, void 0, void 0, function () {
119
+ function objectToParam(obj) {
120
+ return Object.entries(obj)
121
+ .map(function (_a) {
122
+ var key = _a[0], value = _a[1];
123
+ return "".concat(key, "=").concat(value);
124
+ })
125
+ .join('&');
126
+ }
127
+ return __generator(this, function (_c) {
128
+ switch (_c.label) {
129
+ case 0:
130
+ if (!(method === 'get')) return [3, 2];
131
+ return [4, this.req.fetch({ url: "".concat(url, "?").concat(objectToParam(data)), method: method, headers: headers, stream: stream })];
132
+ case 1: return [2, (_c.sent()).data];
133
+ case 2: return [4, this.req.fetch({
134
+ url: url,
135
+ body: JSON.stringify(data),
136
+ headers: __assign({ 'Content-Type': 'application/json' }, headers),
137
+ stream: stream,
138
+ method: method,
139
+ })];
140
+ case 3: return [2, (_c.sent()).data];
141
+ }
142
+ });
143
+ });
144
+ };
145
+ this.aiBaseUrl = "".concat(baseUrl, "/ai");
146
+ this.aiBotBaseUrl = "".concat(baseUrl, "/aibot");
147
+ this.bot = new bot_1.Bot(this.botRequest, this.aiBotBaseUrl);
114
148
  }
115
149
  AI.prototype.createModel = function (model) {
116
- return new MODELS[model](this.request, this.baseUrl);
150
+ return new MODELS[model](this.modelRequest, this.aiBaseUrl);
117
151
  };
118
152
  AI.prototype.registerModel = function (name, model) {
119
153
  if (MODELS[name] != null) {
@@ -127,11 +161,11 @@ var AI = (function () {
127
161
  exports.AI = AI;
128
162
  var COMPONENT_NAME = 'ai';
129
163
  function ai(options) {
130
- var _a, _b, _c;
164
+ var _a, _b;
131
165
  return __awaiter(this, void 0, void 0, function () {
132
- var req, accessTokenFromAuth, _d, env, region, baseUrl;
133
- return __generator(this, function (_e) {
134
- switch (_e.label) {
166
+ var req, accessTokenFromAuth, _c, env, baseUrl;
167
+ return __generator(this, function (_d) {
168
+ switch (_d.label) {
135
169
  case 0:
136
170
  req = this.request;
137
171
  if (req.fetch == null) {
@@ -140,16 +174,15 @@ function ai(options) {
140
174
  if (!this.authInstance) return [3, 2];
141
175
  return [4, this.authInstance.getAccessToken()];
142
176
  case 1:
143
- _d = _e.sent();
177
+ _c = _d.sent();
144
178
  return [3, 3];
145
179
  case 2:
146
- _d = { accessToken: '', env: '' };
147
- _e.label = 3;
180
+ _c = { accessToken: '', env: '' };
181
+ _d.label = 3;
148
182
  case 3:
149
- accessTokenFromAuth = _d;
183
+ accessTokenFromAuth = _c;
150
184
  env = (_a = options === null || options === void 0 ? void 0 : options.env) !== null && _a !== void 0 ? _a : accessTokenFromAuth.env;
151
- region = (_b = options === null || options === void 0 ? void 0 : options.region) !== null && _b !== void 0 ? _b : 'ap-shanghai';
152
- baseUrl = (_c = options === null || options === void 0 ? void 0 : options.baseUrl) !== null && _c !== void 0 ? _c : "https://".concat(env, ".").concat(region, ".api.tcloudbasegateway.com/v1/ai");
185
+ baseUrl = (_b = options === null || options === void 0 ? void 0 : options.baseUrl) !== null && _b !== void 0 ? _b : "https://".concat(env, ".api.tcloudbasegateway.com/v1");
153
186
  return [2, new AI(req, baseUrl)];
154
187
  }
155
188
  });
@@ -168,4 +201,4 @@ function registerAi(app) {
168
201
  }
169
202
  }
170
203
  exports.registerAi = registerAi;
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsK0NBQWtDO0FBQ2xDLDRDQUErQjtBQXdFdEIsc0JBQUs7QUF2RWQsNkNBQWdDO0FBdUVoQixzQkFBSztBQXJFYixJQUFBLE1BQU0sR0FBb0IsTUFBTSxPQUExQixFQUFLLFVBQVUsVUFBSyxNQUFNLEVBQWxDLFVBQXlCLENBQUYsQ0FBVztBQXFFSCw0QkFBTTtBQW5FM0M7SUFDRSxZQUFvQixHQUF3QixFQUFTLE9BQWU7UUFBcEUsaUJBQXdFO1FBQXBELFFBQUcsR0FBSCxHQUFHLENBQXFCO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUVwRSxZQUFPLEdBQW1CLFVBQU8sRUFBOEI7Z0JBQTVCLEdBQUcsU0FBQSxFQUFFLElBQUksVUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE1BQU0sWUFBQTs7OztnQ0FDM0QsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztnQ0FDbkIsTUFBTSxFQUFFLE1BQU07Z0NBQ2QsT0FBTyxlQUNGLE9BQU8sQ0FDWDtnQ0FDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0NBQzFCLEdBQUcsS0FBQTtnQ0FDSCxNQUFNLFFBQUE7NkJBQ1AsQ0FBQyxFQUFBO2dDQVRnRSxXQUFBLENBQ2xFLFNBUUUsQ0FDSCxDQUFDLElBQUksRUFBQTs7OztTQUFBLENBQUE7SUFaaUUsQ0FBQztJQWN4RSx3QkFBVyxHQUFYLFVBQTJDLEtBQVE7UUFDakQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQXFDLENBQUE7SUFDMUYsQ0FBQztJQUVELDBCQUFhLEdBQWIsVUFBYyxJQUFZLEVBQUUsS0FBaUM7UUFDM0QsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFO1lBQ3hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQVksSUFBSSxxQkFBa0IsQ0FBQyxDQUFBO1lBQ2hELE9BQU07U0FDUDtRQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUE7SUFDdEIsQ0FBQztJQUNILFNBQUM7QUFBRCxDQUFDLEFBMUJELElBMEJDO0FBeUN3RCxnQkFBRTtBQXZDM0QsSUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFBO0FBUTNCLFNBQWUsRUFBRSxDQUFtQixPQUFzQjs7Ozs7OztvQkFDbEQsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUE7b0JBRXhCLElBQUksR0FBRyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUU7d0JBQ3JCLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQTtxQkFDNUQ7eUJBRTJCLElBQUksQ0FBQyxZQUFZLEVBQWpCLGNBQWlCO29CQUN6QyxXQUFNLElBQUksQ0FBQyxZQUFhLENBQUMsY0FBYyxFQUFFLEVBQUE7O29CQUF6QyxLQUFBLFNBQXlDLENBQUE7OztvQkFDekMsS0FBQSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFBOzs7b0JBRjFCLG1CQUFtQixLQUVPO29CQUUxQixHQUFHLEdBQUcsTUFBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsR0FBRyxtQ0FBSSxtQkFBbUIsQ0FBQyxHQUFHLENBQUE7b0JBQzdDLE1BQU0sR0FBRyxNQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLG1DQUFJLGFBQWEsQ0FBQTtvQkFDekMsT0FBTyxHQUFHLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE9BQU8sbUNBQUksa0JBQVcsR0FBRyxjQUFJLE1BQU0scUNBQWtDLENBQUE7b0JBRTlGLFdBQU8sSUFBSSxFQUFFLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxFQUFBOzs7O0NBQzVCO0FBRUQsSUFBTSxTQUFTLEdBQXdCO0lBQ3JDLElBQUksRUFBRSxjQUFjO0lBQ3BCLE1BQU0sRUFBRSxFQUFFLEVBQUUsSUFBQSxFQUFFO0NBQ2YsQ0FBQTtBQUVELFNBQVMsVUFBVSxDQUFDLEdBQWU7SUFDakMsSUFBSTtRQUNGLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLENBQUMsQ0FBQTtLQUNqQztJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtLQUNoQjtBQUNILENBQUM7QUFFNEMsZ0NBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IElDbG91ZGJhc2UgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBJQ2xvdWRiYXNlQ29tcG9uZW50IH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcy9jb21wb25lbnQnXG5pbXBvcnQgdHlwZSB7IFNES1JlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0ICogYXMgbW9kZWxzIGZyb20gJy4vbW9kZWxzJ1xuaW1wb3J0ICogYXMgdHlwZXMgZnJvbSAnLi90eXBlJ1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscydcblxuY29uc3QgeyBNT0RFTFMsIC4uLnJlc3RNb2RlbHMgfSA9IG1vZGVsc1xuXG5jbGFzcyBBSSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBwdWJsaWMgYmFzZVVybDogc3RyaW5nKSB7fVxuXG4gIHJlcXVlc3Q6IHR5cGVzLk1vZGVsUmVxID0gYXN5bmMgKHsgdXJsLCBkYXRhLCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4gKFxuICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGRhdGEpLFxuICAgICAgdXJsLFxuICAgICAgc3RyZWFtLFxuICAgIH0pXG4gICkuZGF0YVxuXG4gIGNyZWF0ZU1vZGVsPFQgZXh0ZW5kcyBrZXlvZiB0eXBlb2YgTU9ERUxTPihtb2RlbDogVCkge1xuICAgIHJldHVybiBuZXcgTU9ERUxTW21vZGVsXSh0aGlzLnJlcXVlc3QsIHRoaXMuYmFzZVVybCkgYXMgSW5zdGFuY2VUeXBlPCh0eXBlb2YgTU9ERUxTKVtUXT5cbiAgfVxuXG4gIHJlZ2lzdGVyTW9kZWwobmFtZTogc3RyaW5nLCBtb2RlbDogdHlwZXMuQ2hhdE1vZGVsQ29uc3RydWN0b3IpIHtcbiAgICBpZiAoTU9ERUxTW25hbWVdICE9IG51bGwpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQUkgbW9kZWwgJHtuYW1lfSBhbHJlYWR5IGV4aXN0cyFgKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIE1PREVMU1tuYW1lXSA9IG1vZGVsXG4gIH1cbn1cblxuY29uc3QgQ09NUE9ORU5UX05BTUUgPSAnYWknXG5cbmludGVyZmFjZSBBSUluaXRPcHRpb24ge1xuICBlbnY/OiBzdHJpbmdcbiAgcmVnaW9uPzogc3RyaW5nXG4gIGJhc2VVcmw/OiBzdHJpbmdcbn1cblxuYXN5bmMgZnVuY3Rpb24gYWkodGhpczogSUNsb3VkYmFzZSwgb3B0aW9ucz86IEFJSW5pdE9wdGlvbikge1xuICBjb25zdCByZXEgPSB0aGlzLnJlcXVlc3RcblxuICBpZiAocmVxLmZldGNoID09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2Nsb3VkYmFzZS5yZXF1ZXN0LmZldGNoKCkgdW5pbXBsZW1lbnRlZCEnKVxuICB9XG5cbiAgY29uc3QgYWNjZXNzVG9rZW5Gcm9tQXV0aCA9IHRoaXMuYXV0aEluc3RhbmNlXG4gICAgPyBhd2FpdCB0aGlzLmF1dGhJbnN0YW5jZSEuZ2V0QWNjZXNzVG9rZW4oKVxuICAgIDogeyBhY2Nlc3NUb2tlbjogJycsIGVudjogJycgfVxuXG4gIGNvbnN0IGVudiA9IG9wdGlvbnM/LmVudiA/PyBhY2Nlc3NUb2tlbkZyb21BdXRoLmVudlxuICBjb25zdCByZWdpb24gPSBvcHRpb25zPy5yZWdpb24gPz8gJ2FwLXNoYW5naGFpJ1xuICBjb25zdCBiYXNlVXJsID0gb3B0aW9ucz8uYmFzZVVybCA/PyBgaHR0cHM6Ly8ke2Vudn0uJHtyZWdpb259LmFwaS50Y2xvdWRiYXNlZ2F0ZXdheS5jb20vdjEvYWlgXG5cbiAgcmV0dXJuIG5ldyBBSShyZXEsIGJhc2VVcmwpXG59XG5cbmNvbnN0IGNvbXBvbmVudDogSUNsb3VkYmFzZUNvbXBvbmVudCA9IHtcbiAgbmFtZTogQ09NUE9ORU5UX05BTUUsXG4gIGVudGl0eTogeyBhaSB9LFxufVxuXG5mdW5jdGlvbiByZWdpc3RlckFpKGFwcDogSUNsb3VkYmFzZSkge1xuICB0cnkge1xuICAgIGFwcC5yZWdpc3RlckNvbXBvbmVudChjb21wb25lbnQpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oZSlcbiAgfVxufVxuXG5leHBvcnQgeyB0eXBlcywgdXRpbHMsIHJlc3RNb2RlbHMgYXMgbW9kZWxzLCByZWdpc3RlckFpLCBBSSB9XG4iXX0=
204
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsNkJBQTJCO0FBc0drQyxvRkF0R3BELFNBQUcsT0FzR29EO0FBckdoRSwrQ0FBa0M7QUFDbEMsNENBQStCO0FBb0d0QixzQkFBSztBQW5HZCw2Q0FBZ0M7QUFtR2hCLHNCQUFLO0FBakdiLElBQUEsTUFBTSxHQUFvQixNQUFNLE9BQTFCLEVBQUssVUFBVSxVQUFLLE1BQU0sRUFBbEMsVUFBeUIsQ0FBRixDQUFXO0FBaUdILDRCQUFNO0FBL0YzQztJQUtFLFlBQW9CLEdBQXdCLEVBQVMsT0FBZTtRQUFwRSxpQkFJQztRQUptQixRQUFHLEdBQUgsR0FBRyxDQUFxQjtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFrQnBFLGlCQUFZLEdBQW1CLFVBQU8sRUFBOEI7Z0JBQTVCLEdBQUcsU0FBQSxFQUFFLElBQUksVUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE1BQU0sWUFBQTs7OztnQ0FDaEUsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztnQ0FDbkIsTUFBTSxFQUFFLE1BQU07Z0NBQ2QsT0FBTyxlQUNGLE9BQU8sQ0FDWDtnQ0FDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0NBQzFCLEdBQUcsS0FBQTtnQ0FDSCxNQUFNLFFBQUE7NkJBQ1AsQ0FBQyxFQUFBO2dDQVRxRSxXQUFBLENBQ3ZFLFNBUUUsQ0FDSCxDQUFDLElBQUksRUFBQTs7OztTQUFBLENBQUE7UUFFTixlQUFVLEdBQWlCLFVBQU8sRUFBMkM7Z0JBQXpDLE1BQU0sWUFBQSxFQUFFLEdBQUcsU0FBQSxFQUFFLFlBQVMsRUFBVCxJQUFJLG1CQUFHLEVB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QTtvQkFDN0MsT0FBTyxHQUFHLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE9BQU8sbUNBQUksa0JBQVcsR0FBRyxrQ0FBK0IsQ0FBQTtvQkFFakYsV0FBTyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEVBQUE7Ozs7Q0FDNUI7QUFFRCxJQUFNLFNBQVMsR0FBd0I7SUFDckMsSUFBSSxFQUFFLGNBQWM7SUFDcEIsTUFBTSxFQUFFLEVBQUUsRUFBRSxJQUFBLEVBQUU7Q0FDZixDQUFBO0FBRUQsU0FBUyxVQUFVLENBQUMsR0FBZTtJQUNqQyxJQUFJO1FBQ0YsR0FBRyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0tBQ2pDO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO0tBQ2hCO0FBQ0gsQ0FBQztBQUU0QyxnQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IElDbG91ZGJhc2VDb21wb25lbnQgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2NvbXBvbmVudCdcbmltcG9ydCB0eXBlIHsgU0RLUmVxdWVzdEludGVyZmFjZSB9IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgeyBCb3QgfSBmcm9tICcuL2JvdCdcbmltcG9ydCAqIGFzIG1vZGVscyBmcm9tICcuL21vZGVscydcbmltcG9ydCAqIGFzIHR5cGVzIGZyb20gJy4vdHlwZSdcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnXG5cbmNvbnN0IHsgTU9ERUxTLCAuLi5yZXN0TW9kZWxzIH0gPSBtb2RlbHNcblxuY2xhc3MgQUkge1xuICBwdWJsaWMgYWlCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGFpQm90QmFzZVVybDogc3RyaW5nXG4gIHB1YmxpYyBib3Q6IEJvdFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBwdWJsaWMgYmFzZVVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5haUJhc2VVcmwgPSBgJHtiYXNlVXJsfS9haWBcbiAgICB0aGlzLmFpQm90QmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYm90YFxuICAgIHRoaXMuYm90ID0gbmV3IEJvdCh0aGlzLmJvdFJlcXVlc3QsIHRoaXMuYWlCb3RCYXNlVXJsKVxuICB9XG5cbiAgY3JlYXRlTW9kZWw8VCBleHRlbmRzIGtleW9mIHR5cGVvZiBNT0RFTFM+KG1vZGVsOiBUKSB7XG4gICAgcmV0dXJuIG5ldyBNT0RFTFNbbW9kZWxdKHRoaXMubW9kZWxSZXF1ZXN0LCB0aGlzLmFpQmFzZVVybCkgYXMgSW5zdGFuY2VUeXBlPCh0eXBlb2YgTU9ERUxTKVtUXT5cbiAgfVxuXG4gIHJlZ2lzdGVyTW9kZWwobmFtZTogc3RyaW5nLCBtb2RlbDogdHlwZXMuQ2hhdE1vZGVsQ29uc3RydWN0b3IpIHtcbiAgICBpZiAoTU9ERUxTW25hbWVdICE9IG51bGwpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQUkgbW9kZWwgJHtuYW1lfSBhbHJlYWR5IGV4aXN0cyFgKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIE1PREVMU1tuYW1lXSA9IG1vZGVsXG4gIH1cblxuICBtb2RlbFJlcXVlc3Q6IHR5cGVzLk1vZGVsUmVxID0gYXN5bmMgKHsgdXJsLCBkYXRhLCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4gKFxuICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGRhdGEpLFxuICAgICAgdXJsLFxuICAgICAgc3RyZWFtLFxuICAgIH0pXG4gICkuZGF0YVxuXG4gIGJvdFJlcXVlc3Q6IHR5cGVzLkJvdFJlcSA9IGFzeW5jICh7IG1ldGhvZCwgdXJsLCBkYXRhID0ge30sIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgaWYgKG1ldGhvZCA9PT0gJ2dldCcpIHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5yZXEuZmV0Y2goeyB1cmw6IGAke3VybH0/JHtvYmplY3RUb1BhcmFtKGRhdGEpfWAsIG1ldGhvZCwgaGVhZGVycywgc3RyZWFtIH0pKS5kYXRhXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgICAgdXJsLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLCAuLi5oZWFkZXJzIH0sXG4gICAgICAgIHN0cmVhbSxcbiAgICAgICAgbWV0aG9kLFxuICAgICAgfSlcbiAgICApLmRhdGFcblxuICAgIGZ1bmN0aW9uIG9iamVjdFRvUGFyYW0ob2JqOiBPYmplY3QpIHtcbiAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyhvYmopXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fT0ke3ZhbHVlfWApXG4gICAgICAgIC5qb2luKCcmJylcbiAgICB9XG4gIH1cbn1cblxuY29uc3QgQ09NUE9ORU5UX05BTUUgPSAnYWknXG5cbmludGVyZmFjZSBBSUluaXRPcHRpb24ge1xuICBlbnY/OiBzdHJpbmdcbiAgYmFzZVVybD86IHN0cmluZ1xufVxuXG5hc3luYyBmdW5jdGlvbiBhaSh0aGlzOiBJQ2xvdWRiYXNlLCBvcHRpb25zPzogQUlJbml0T3B0aW9uKSB7XG4gIGNvbnN0IHJlcSA9IHRoaXMucmVxdWVzdFxuXG4gIGlmIChyZXEuZmV0Y2ggPT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFcnJvcignY2xvdWRiYXNlLnJlcXVlc3QuZmV0Y2goKSB1bmltcGxlbWVudGVkIScpXG4gIH1cblxuICBjb25zdCBhY2Nlc3NUb2tlbkZyb21BdXRoID0gdGhpcy5hdXRoSW5zdGFuY2VcbiAgICA/IGF3YWl0IHRoaXMuYXV0aEluc3RhbmNlIS5nZXRBY2Nlc3NUb2tlbigpXG4gICAgOiB7IGFjY2Vzc1Rva2VuOiAnJywgZW52OiAnJyB9XG5cbiAgY29uc3QgZW52ID0gb3B0aW9ucz8uZW52ID8/IGFjY2Vzc1Rva2VuRnJvbUF1dGguZW52XG4gIGNvbnN0IGJhc2VVcmwgPSBvcHRpb25zPy5iYXNlVXJsID8/IGBodHRwczovLyR7ZW52fS5hcGkudGNsb3VkYmFzZWdhdGV3YXkuY29tL3YxYFxuXG4gIHJldHVybiBuZXcgQUkocmVxLCBiYXNlVXJsKVxufVxuXG5jb25zdCBjb21wb25lbnQ6IElDbG91ZGJhc2VDb21wb25lbnQgPSB7XG4gIG5hbWU6IENPTVBPTkVOVF9OQU1FLFxuICBlbnRpdHk6IHsgYWkgfSxcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJBaShhcHA6IElDbG91ZGJhc2UpIHtcbiAgdHJ5IHtcbiAgICBhcHAucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKGUpXG4gIH1cbn1cblxuZXhwb3J0IHsgdHlwZXMsIHV0aWxzLCByZXN0TW9kZWxzIGFzIG1vZGVscywgcmVnaXN0ZXJBaSwgQUksIEJvdCB9XG4iXX0=
@@ -138,7 +138,9 @@ var ArkModelStreamResult = (function () {
138
138
  controller.enqueue(data);
139
139
  }
140
140
  catch (e) {
141
- console.warn('Error when transforming event source data to json', e);
141
+ if (chunk.data !== '[DONE]') {
142
+ console.warn('Error when transforming event source data to json', e);
143
+ }
142
144
  }
143
145
  },
144
146
  })));
@@ -160,4 +162,4 @@ var ArkModelStreamResult = (function () {
160
162
  });
161
163
  return ArkModelStreamResult;
162
164
  }());
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWxzL0Fyay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHFDQU1vQjtBQUlwQjtJQUVFLGtCQUFvQixHQUFhLEVBQVMsT0FBZSxFQUFFLE1BQWU7UUFBdEQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFEbEQsV0FBTSxHQUFHLDZCQUE2QixDQUFBO1FBRTNDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtTQUNyQjtJQUNILENBQUM7SUFFRCxzQkFBWSx5QkFBRzthQUFmO1lBQ0UsT0FBTyxVQUFHLElBQUksQ0FBQyxPQUFPLGNBQUksSUFBSSxDQUFDLE1BQU0sQ0FBRSxDQUFBO1FBQ3pDLENBQUM7OztPQUFBO0lBRUssK0JBQVksR0FBbEIsVUFBbUIsSUFBa0I7Ozs7Ozs0QkFDdEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUMxQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLEtBQUssR0FDZDs0QkFDRCxNQUFNLEVBQUUsS0FBSzt5QkFDZCxDQUFDLEVBQUE7O3dCQVBJLEdBQUcsR0FBRyxDQUFDLFNBT1gsQ0FBMEI7d0JBQzVCLFdBQU87Z0NBQ0wsSUFBSSxFQUFFLE1BQUMsTUFBQSxNQUFBLE1BQUEsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLE9BQU8sMENBQUcsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sMENBQUUsT0FBa0IsbUNBQUksRUFBRTtnQ0FDM0QsV0FBVyxFQUFFLEdBQUc7NkJBQ2pCLEVBQUE7Ozs7S0FDRjtJQUVLLDZCQUFVLEdBQWhCLFVBQWlCLElBQWtCOzs7Ozs0QkFDbEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUM1QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLElBQUksR0FDYjs0QkFDRCxNQUFNLEVBQUUsSUFBSTt5QkFDYixDQUFDLEVBQUE7O3dCQVBJLE1BQU0sR0FBRyxTQU9iO3dCQUNGLFdBQU8sSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsRUFBQTs7OztLQUN4QztJQUNILGVBQUM7QUFBRCxDQUFDLEFBdENELElBc0NDO0FBdENZLDRCQUFRO0FBd0NyQjtJQUdFLDhCQUFZLE9BQW1DO1FBQzdDLElBQU0sTUFBTSxHQUFHLElBQUEsMEJBQWtCLEVBQUMsT0FBTyxDQUFtQixDQUFBO1FBQzVELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNO2FBQzdCLFdBQVcsQ0FBQyxJQUFJLHlCQUFpQixFQUFFLENBQUM7YUFDcEMsV0FBVyxDQUFDLElBQUEsOENBQXNDLEdBQUUsQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFRCxzQkFBWSw2Q0FBVzthQUF2QjtZQUNRLElBQUEsS0FBVyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLEVBQXZDLEVBQUUsUUFBQSxFQUFFLEVBQUUsUUFBaUMsQ0FBQTtZQUM5QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFBO1lBQzVCLE9BQU8sRUFBRSxDQUFBO1FBQ1gsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxtREFBaUI7YUFBckI7WUFDRSxPQUFPLElBQUEsMkJBQW1CLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzlDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQVU7YUFBZDtZQUNFLE9BQU8sSUFBQSwyQkFBbUIsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBbUM7Z0JBQ2xILFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTtvQkFDekIsSUFBSTt3QkFDRixJQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQXdCLENBQUE7d0JBQzFELFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7cUJBQ3pCO29CQUFDLE9BQU8sQ0FBQyxFQUFFO3dCQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsbURBQW1ELEVBQUUsQ0FBQyxDQUFDLENBQUE7cUJBQ3JFO2dCQUNILENBQUM7YUFDRixDQUFDLENBQUUsQ0FBRSxDQUFBO1FBQ1IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBVTthQUFkO1lBQ0UsT0FBTyxJQUFBLDJCQUFtQixFQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBOEI7Z0JBQ3RHLFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTs7b0JBQ3pCLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBQSxNQUFBLE1BQUEsTUFBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsT0FBTywwQ0FBRyxDQUFDLENBQUMsMENBQUUsT0FBTywwQ0FBRSxPQUFPLG1DQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNqRSxDQUFDO2FBQ0YsQ0FBQyxDQUFFLENBQUUsQ0FBQTtRQUNSLENBQUM7OztPQUFBO0lBQ0gsMkJBQUM7QUFBRCxDQUFDLEFBeENELElBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBQYXJzZWRFdmVudCB9IGZyb20gJ2V2ZW50c291cmNlLXBhcnNlcidcbmltcG9ydCB7XG4gIGNyZWF0ZUFzeW5jSXRlcmFibGUsXG4gIFRyYW5zZm9ybVN0cmVhbSxcbiAgVGV4dERlY29kZXJTdHJlYW0sXG4gIGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtLFxuICB0b1BvbHlmaWxsUmVhZGFibGUsXG59IGZyb20gJy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHR5cGUgeyBBcmtJbnB1dERhdGEsIEFya0dlbmVyYXRlVGV4dE91dHB1dCwgQXJrU3RyZWFtVGV4dE91dHB1dCB9IGZyb20gJy4vdHlwZSdcbmltcG9ydCB0eXBlIHsgQ2hhdE1vZGVsLCBTdHJlYW1UZXh0UmVzdWx0LCBNb2RlbFJlcSB9IGZyb20gJy4uLy4uL3R5cGUnXG5cbmV4cG9ydCBjbGFzcyBBcmtNb2RlbCBpbXBsZW1lbnRzIENoYXRNb2RlbCB7XG4gIHB1YmxpYyBzdWJVcmwgPSAnYXJrL2FwaS92My9jaGF0L2NvbXBsZXRpb25zJ1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogTW9kZWxSZXEsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcsIHN1YlVybD86IHN0cmluZykge1xuICAgIGlmIChzdWJVcmwgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zdWJVcmwgPSBzdWJVcmxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCB1cmwoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLnN1YlVybH1gXG4gIH1cblxuICBhc3luYyBnZW5lcmF0ZVRleHQoZGF0YTogQXJrSW5wdXREYXRhKSB7XG4gICAgY29uc3QgcmVzID0gKGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogZmFsc2UsXG4gICAgICB9LFxuICAgICAgc3RyZWFtOiBmYWxzZSxcbiAgICB9KSkgYXMgQXJrR2VuZXJhdGVUZXh0T3V0cHV0XG4gICAgcmV0dXJuIHtcbiAgICAgIHRleHQ6IChyZXM/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCBhcyBzdHJpbmcpID8/ICcnLFxuICAgICAgcmF3UmVzcG9uc2U6IHJlcyxcbiAgICB9XG4gIH1cblxuICBhc3luYyBzdHJlYW1UZXh0KGRhdGE6IEFya0lucHV0RGF0YSkge1xuICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBzdHJlYW06IHRydWUsXG4gICAgfSlcbiAgICByZXR1cm4gbmV3IEFya01vZGVsU3RyZWFtUmVzdWx0KHN0cmVhbSlcbiAgfVxufVxuXG5jbGFzcyBBcmtNb2RlbFN0cmVhbVJlc3VsdCBpbXBsZW1lbnRzIFN0cmVhbVRleHRSZXN1bHQge1xuICBwcml2YXRlIF9ldmVudFNvdXJjZVN0cmVhbTogUmVhZGFibGVTdHJlYW08UGFyc2VkRXZlbnQ+XG5cbiAgY29uc3RydWN0b3IoX3N0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pIHtcbiAgICBjb25zdCBzdHJlYW0gPSB0b1BvbHlmaWxsUmVhZGFibGUoX3N0cmVhbSkgYXMgdHlwZW9mIF9zdHJlYW1cbiAgICB0aGlzLl9ldmVudFNvdXJjZVN0cmVhbSA9IHN0cmVhbVxuICAgICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gIH1cblxuICBwcml2YXRlIGdldCB0ZWVlZFN0cmVhbSgpIHtcbiAgICBjb25zdCBbczEsIHMyXSA9IHRoaXMuX2V2ZW50U291cmNlU3RyZWFtLnRlZSgpXG4gICAgdGhpcy5fZXZlbnRTb3VyY2VTdHJlYW0gPSBzMlxuICAgIHJldHVybiBzMVxuICB9XG5cbiAgZ2V0IGV2ZW50U291cmNlU3RyZWFtKCkge1xuICAgIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHRoaXMudGVlZWRTdHJlYW0pXG4gIH1cblxuICBnZXQgZGF0YVN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmV2ZW50U291cmNlU3RyZWFtLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIEFya1N0cmVhbVRleHRPdXRwdXQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIEFya1N0cmVhbVRleHRPdXRwdXRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGNvbnNvbGUud2FybignRXJyb3Igd2hlbiB0cmFuc2Zvcm1pbmcgZXZlbnQgc291cmNlIGRhdGEgdG8ganNvbicsIGUpXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cblxuICBnZXQgdGV4dFN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmRhdGFTdHJlYW0ucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxBcmtTdHJlYW1UZXh0T3V0cHV0LCBzdHJpbmc+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUoY2h1bms/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCA/PyAnJylcbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cbn1cbiJdfQ==
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWxzL0Fyay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHFDQU1vQjtBQUlwQjtJQUVFLGtCQUFvQixHQUFhLEVBQVMsT0FBZSxFQUFFLE1BQWU7UUFBdEQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFEbEQsV0FBTSxHQUFHLDZCQUE2QixDQUFBO1FBRTNDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtTQUNyQjtJQUNILENBQUM7SUFFRCxzQkFBWSx5QkFBRzthQUFmO1lBQ0UsT0FBTyxVQUFHLElBQUksQ0FBQyxPQUFPLGNBQUksSUFBSSxDQUFDLE1BQU0sQ0FBRSxDQUFBO1FBQ3pDLENBQUM7OztPQUFBO0lBRUssK0JBQVksR0FBbEIsVUFBbUIsSUFBa0I7Ozs7Ozs0QkFDdEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUMxQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLEtBQUssR0FDZDs0QkFDRCxNQUFNLEVBQUUsS0FBSzt5QkFDZCxDQUFDLEVBQUE7O3dCQVBJLEdBQUcsR0FBRyxDQUFDLFNBT1gsQ0FBMEI7d0JBQzVCLFdBQU87Z0NBQ0wsSUFBSSxFQUFFLE1BQUMsTUFBQSxNQUFBLE1BQUEsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLE9BQU8sMENBQUcsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sMENBQUUsT0FBa0IsbUNBQUksRUFBRTtnQ0FDM0QsV0FBVyxFQUFFLEdBQUc7NkJBQ2pCLEVBQUE7Ozs7S0FDRjtJQUVLLDZCQUFVLEdBQWhCLFVBQWlCLElBQWtCOzs7Ozs0QkFDbEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUM1QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLElBQUksR0FDYjs0QkFDRCxNQUFNLEVBQUUsSUFBSTt5QkFDYixDQUFDLEVBQUE7O3dCQVBJLE1BQU0sR0FBRyxTQU9iO3dCQUNGLFdBQU8sSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsRUFBQTs7OztLQUN4QztJQUNILGVBQUM7QUFBRCxDQUFDLEFBdENELElBc0NDO0FBdENZLDRCQUFRO0FBd0NyQjtJQUdFLDhCQUFZLE9BQW1DO1FBQzdDLElBQU0sTUFBTSxHQUFHLElBQUEsMEJBQWtCLEVBQUMsT0FBTyxDQUFtQixDQUFBO1FBQzVELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNO2FBQzdCLFdBQVcsQ0FBQyxJQUFJLHlCQUFpQixFQUFFLENBQUM7YUFDcEMsV0FBVyxDQUFDLElBQUEsOENBQXNDLEdBQUUsQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFRCxzQkFBWSw2Q0FBVzthQUF2QjtZQUNRLElBQUEsS0FBVyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLEVBQXZDLEVBQUUsUUFBQSxFQUFFLEVBQUUsUUFBaUMsQ0FBQTtZQUM5QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFBO1lBQzVCLE9BQU8sRUFBRSxDQUFBO1FBQ1gsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxtREFBaUI7YUFBckI7WUFDRSxPQUFPLElBQUEsMkJBQW1CLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzlDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQVU7YUFBZDtZQUNFLE9BQU8sSUFBQSwyQkFBbUIsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBbUM7Z0JBQ2xILFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTtvQkFDekIsSUFBSTt3QkFDRixJQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQXdCLENBQUE7d0JBQzFELFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7cUJBQ3pCO29CQUFDLE9BQU8sQ0FBQyxFQUFFO3dCQUNWLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7NEJBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsbURBQW1ELEVBQUUsQ0FBQyxDQUFDLENBQUE7eUJBQ3JFO3FCQUNGO2dCQUNILENBQUM7YUFDRixDQUFDLENBQUUsQ0FBRSxDQUFBO1FBQ1IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBVTthQUFkO1lBQ0UsT0FBTyxJQUFBLDJCQUFtQixFQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBOEI7Z0JBQ3RHLFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTs7b0JBQ3pCLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBQSxNQUFBLE1BQUEsTUFBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsT0FBTywwQ0FBRyxDQUFDLENBQUMsMENBQUUsT0FBTywwQ0FBRSxPQUFPLG1DQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNqRSxDQUFDO2FBQ0YsQ0FBQyxDQUFFLENBQUUsQ0FBQTtRQUNSLENBQUM7OztPQUFBO0lBQ0gsMkJBQUM7QUFBRCxDQUFDLEFBMUNELElBMENDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBQYXJzZWRFdmVudCB9IGZyb20gJ2V2ZW50c291cmNlLXBhcnNlcidcbmltcG9ydCB7XG4gIGNyZWF0ZUFzeW5jSXRlcmFibGUsXG4gIFRyYW5zZm9ybVN0cmVhbSxcbiAgVGV4dERlY29kZXJTdHJlYW0sXG4gIGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtLFxuICB0b1BvbHlmaWxsUmVhZGFibGUsXG59IGZyb20gJy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHR5cGUgeyBBcmtJbnB1dERhdGEsIEFya0dlbmVyYXRlVGV4dE91dHB1dCwgQXJrU3RyZWFtVGV4dE91dHB1dCB9IGZyb20gJy4vdHlwZSdcbmltcG9ydCB0eXBlIHsgQ2hhdE1vZGVsLCBTdHJlYW1UZXh0UmVzdWx0LCBNb2RlbFJlcSB9IGZyb20gJy4uLy4uL3R5cGUnXG5cbmV4cG9ydCBjbGFzcyBBcmtNb2RlbCBpbXBsZW1lbnRzIENoYXRNb2RlbCB7XG4gIHB1YmxpYyBzdWJVcmwgPSAnYXJrL2FwaS92My9jaGF0L2NvbXBsZXRpb25zJ1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogTW9kZWxSZXEsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcsIHN1YlVybD86IHN0cmluZykge1xuICAgIGlmIChzdWJVcmwgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zdWJVcmwgPSBzdWJVcmxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCB1cmwoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLnN1YlVybH1gXG4gIH1cblxuICBhc3luYyBnZW5lcmF0ZVRleHQoZGF0YTogQXJrSW5wdXREYXRhKSB7XG4gICAgY29uc3QgcmVzID0gKGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogZmFsc2UsXG4gICAgICB9LFxuICAgICAgc3RyZWFtOiBmYWxzZSxcbiAgICB9KSkgYXMgQXJrR2VuZXJhdGVUZXh0T3V0cHV0XG4gICAgcmV0dXJuIHtcbiAgICAgIHRleHQ6IChyZXM/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCBhcyBzdHJpbmcpID8/ICcnLFxuICAgICAgcmF3UmVzcG9uc2U6IHJlcyxcbiAgICB9XG4gIH1cblxuICBhc3luYyBzdHJlYW1UZXh0KGRhdGE6IEFya0lucHV0RGF0YSkge1xuICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBzdHJlYW06IHRydWUsXG4gICAgfSlcbiAgICByZXR1cm4gbmV3IEFya01vZGVsU3RyZWFtUmVzdWx0KHN0cmVhbSlcbiAgfVxufVxuXG5jbGFzcyBBcmtNb2RlbFN0cmVhbVJlc3VsdCBpbXBsZW1lbnRzIFN0cmVhbVRleHRSZXN1bHQge1xuICBwcml2YXRlIF9ldmVudFNvdXJjZVN0cmVhbTogUmVhZGFibGVTdHJlYW08UGFyc2VkRXZlbnQ+XG5cbiAgY29uc3RydWN0b3IoX3N0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pIHtcbiAgICBjb25zdCBzdHJlYW0gPSB0b1BvbHlmaWxsUmVhZGFibGUoX3N0cmVhbSkgYXMgdHlwZW9mIF9zdHJlYW1cbiAgICB0aGlzLl9ldmVudFNvdXJjZVN0cmVhbSA9IHN0cmVhbVxuICAgICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gIH1cblxuICBwcml2YXRlIGdldCB0ZWVlZFN0cmVhbSgpIHtcbiAgICBjb25zdCBbczEsIHMyXSA9IHRoaXMuX2V2ZW50U291cmNlU3RyZWFtLnRlZSgpXG4gICAgdGhpcy5fZXZlbnRTb3VyY2VTdHJlYW0gPSBzMlxuICAgIHJldHVybiBzMVxuICB9XG5cbiAgZ2V0IGV2ZW50U291cmNlU3RyZWFtKCkge1xuICAgIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHRoaXMudGVlZWRTdHJlYW0pXG4gIH1cblxuICBnZXQgZGF0YVN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmV2ZW50U291cmNlU3RyZWFtLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIEFya1N0cmVhbVRleHRPdXRwdXQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIEFya1N0cmVhbVRleHRPdXRwdXRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cblxuICBnZXQgdGV4dFN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmRhdGFTdHJlYW0ucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxBcmtTdHJlYW1UZXh0T3V0cHV0LCBzdHJpbmc+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUoY2h1bms/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCA/PyAnJylcbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cbn1cbiJdfQ==