@cloudbase/ai 2.9.0 → 2.9.1

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/dist/cjs/AI.js CHANGED
@@ -73,6 +73,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
73
73
  exports.AI = void 0;
74
74
  var bot_1 = require("./bot");
75
75
  var models = __importStar(require("./models"));
76
+ var utils_1 = require("./utils");
76
77
  var MODELS = models.MODELS;
77
78
  var AI = (function () {
78
79
  function AI(req, baseUrl) {
@@ -82,9 +83,9 @@ var AI = (function () {
82
83
  this.modelRequest = function (_a) {
83
84
  var url = _a.url, data = _a.data, headers = _a.headers, stream = _a.stream;
84
85
  return __awaiter(_this, void 0, void 0, function () {
85
- var fetchHeaders;
86
- return __generator(this, function (_b) {
87
- switch (_b.label) {
86
+ var fetchHeaders, _b, responseData, header;
87
+ return __generator(this, function (_c) {
88
+ switch (_c.label) {
88
89
  case 0:
89
90
  fetchHeaders = {
90
91
  'Content-Type': 'application/json',
@@ -97,7 +98,9 @@ var AI = (function () {
97
98
  url: url,
98
99
  stream: stream,
99
100
  })];
100
- case 1: return [2, (_b.sent()).data];
101
+ case 1:
102
+ _b = (_c.sent()), responseData = _b.data, header = _b.header;
103
+ return [2, handleResponseData(responseData, header)];
101
104
  }
102
105
  });
103
106
  });
@@ -113,13 +116,14 @@ var AI = (function () {
113
116
  })
114
117
  .join('&');
115
118
  }
116
- var fetchHeaders;
117
- return __generator(this, function (_c) {
118
- switch (_c.label) {
119
+ var _c, fetchHeaders, _d, responseData, header;
120
+ return __generator(this, function (_e) {
121
+ switch (_e.label) {
119
122
  case 0:
120
123
  if (!(method === 'get')) return [3, 2];
124
+ _c = handleResponseData;
121
125
  return [4, this.req.fetch({ url: "".concat(url, "?").concat(objectToParam(data)), method: method, headers: headers, stream: stream })];
122
- case 1: return [2, (_c.sent()).data];
126
+ case 1: return [2, _c.apply(void 0, [(_e.sent()).data])];
123
127
  case 2:
124
128
  fetchHeaders = {
125
129
  'Content-Type': 'application/json',
@@ -132,7 +136,9 @@ var AI = (function () {
132
136
  stream: stream,
133
137
  method: method,
134
138
  })];
135
- case 3: return [2, (_c.sent()).data];
139
+ case 3:
140
+ _d = (_e.sent()), responseData = _d.data, header = _d.header;
141
+ return [2, handleResponseData(responseData, header)];
136
142
  }
137
143
  });
138
144
  });
@@ -163,4 +169,31 @@ var AI = (function () {
163
169
  return AI;
164
170
  }());
165
171
  exports.AI = AI;
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQUkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDZCQUEyQjtBQUMzQiwrQ0FBa0M7QUFHMUIsSUFBQSxNQUFNLEdBQUssTUFBTSxPQUFYLENBQVc7QUFFekI7SUFLRSxZQUFvQixHQUF3QixFQUFTLE9BQWU7UUFBcEUsaUJBSUM7UUFKbUIsUUFBRyxHQUFILEdBQUcsQ0FBcUI7UUFBUyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBcUJwRSxpQkFBWSxHQUFtQixVQUFPLEVBQThCO2dCQUE1QixHQUFHLFNBQUEsRUFBRSxJQUFJLFVBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSxNQUFNLFlBQUE7Ozs7Ozs0QkFDMUQsWUFBWSxHQUFHO2dDQUNuQixjQUFjLEVBQUUsa0JBQWtCOzZCQUNuQyxDQUFBOzRCQUVELE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUE7NEJBR3BFLFdBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7b0NBQ25CLE1BQU0sRUFBRSxNQUFNO29DQUNkLE9BQU8sd0JBQU8sWUFBWSxHQUFLLE9BQU8sQ0FBRTtvQ0FDeEMsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO29DQUMxQixHQUFHLEtBQUE7b0NBQ0gsTUFBTSxRQUFBO2lDQUNQLENBQUMsRUFBQTtnQ0FQSixXQUFPLENBQ0wsU0FNRSxDQUNILENBQUMsSUFBSSxFQUFBOzs7O1NBQ1AsQ0FBQTtRQUVELGVBQVUsR0FBaUIsVUFBTyxFQUEyQztnQkFBekMsTUFBTSxZQUFBLEVBQUUsR0FBRyxTQUFBLEVBQUUsWUFBUyxFQUFULElBQUksbUJBQUcsRUFB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LFNBQUM7QUFBRCxDQUFDLEFBakZELElBaUZDO0FBRVEsZ0JBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNES1JlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgQm90IH0gZnJvbSAnLi9ib3QnXG5pbXBvcnQgKiBhcyBtb2RlbHMgZnJvbSAnLi9tb2RlbHMnXG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tICcuL3R5cGUnXG5cbmNvbnN0IHsgTU9ERUxTIH0gPSBtb2RlbHNcblxuY2xhc3MgQUkge1xuICBwdWJsaWMgYWlCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGFpQm90QmFzZVVybDogc3RyaW5nXG4gIHB1YmxpYyBib3Q6IEJvdFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBwdWJsaWMgYmFzZVVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5haUJhc2VVcmwgPSBgJHtiYXNlVXJsfS9haWBcbiAgICB0aGlzLmFpQm90QmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYm90YFxuICAgIHRoaXMuYm90ID0gbmV3IEJvdCh0aGlzLmJvdFJlcXVlc3QsIHRoaXMuYWlCb3RCYXNlVXJsKVxuICB9XG5cbiAgY3JlYXRlTW9kZWw8VCBleHRlbmRzIGtleW9mIHR5cGVvZiBNT0RFTFM+KG1vZGVsOiBUKSB7XG4gICAgY29uc3QgU2ltcGxlTW9kZWxDb25zdHJ1Y3RvciA9IE1PREVMU1ttb2RlbF1cbiAgICBjb25zdCBzaW1wbGVNb2RlbDogdHlwZXMuU2ltcGxlQ2hhdE1vZGVsID0gbmV3IFNpbXBsZU1vZGVsQ29uc3RydWN0b3IodGhpcy5tb2RlbFJlcXVlc3QsIHRoaXMuYWlCYXNlVXJsKVxuICAgIGNvbnN0IHJlYWN0TW9kZWwgPSBuZXcgbW9kZWxzLlJlYWN0TW9kZWwoc2ltcGxlTW9kZWwpXG4gICAgcmV0dXJuIHJlYWN0TW9kZWxcbiAgfVxuXG4gIHJlZ2lzdGVyTW9kZWwobmFtZTogc3RyaW5nLCBtb2RlbDogdHlwZXMuQ2hhdE1vZGVsQ29uc3RydWN0b3IpIHtcbiAgICBpZiAoTU9ERUxTW25hbWVdICE9IG51bGwpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQUkgbW9kZWwgJHtuYW1lfSBhbHJlYWR5IGV4aXN0cyFgKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIE1PREVMU1tuYW1lXSA9IG1vZGVsXG4gIH1cblxuICBtb2RlbFJlcXVlc3Q6IHR5cGVzLk1vZGVsUmVxID0gYXN5bmMgKHsgdXJsLCBkYXRhLCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4ge1xuICAgIGNvbnN0IGZldGNoSGVhZGVycyA9IHtcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgfVxuICAgIC8vIOW4piBBY2NlcHQ6IHRleHQvZXZlbnQtc3RyZWFtICDor7fmsYLlpLTmmL7lvI/mjIflrprmmK8gU1NFIOe7lei/hyA2MHMg55qE6ZmQ5Yi2XG4gICAgc3RyZWFtICYmIE9iamVjdC5hc3NpZ24oZmV0Y2hIZWFkZXJzLCB7IEFjY2VwdDogJ3RleHQvZXZlbnQtc3RyZWFtJyB9KVxuXG4gICAgcmV0dXJuIChcbiAgICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICAgIGhlYWRlcnM6IHsgLi4uZmV0Y2hIZWFkZXJzLCAuLi5oZWFkZXJzIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGRhdGEpLFxuICAgICAgICB1cmwsXG4gICAgICAgIHN0cmVhbSxcbiAgICAgIH0pXG4gICAgKS5kYXRhXG4gIH1cblxuICBib3RSZXF1ZXN0OiB0eXBlcy5Cb3RSZXEgPSBhc3luYyAoeyBtZXRob2QsIHVybCwgZGF0YSA9IHt9LCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4ge1xuICAgIGlmIChtZXRob2QgPT09ICdnZXQnKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMucmVxLmZldGNoKHsgdXJsOiBgJHt1cmx9PyR7b2JqZWN0VG9QYXJhbShkYXRhKX1gLCBtZXRob2QsIGhlYWRlcnMsIHN0cmVhbSB9KSkuZGF0YVxuICAgIH1cblxuICAgIGNvbnN0IGZldGNoSGVhZGVycyA9IHtcbiAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgfVxuICAgIC8vIOW4piBBY2NlcHQ6IHRleHQvZXZlbnQtc3RyZWFtICDor7fmsYLlpLTmmL7lvI/mjIflrprmmK8gU1NFIOe7lei/hyA2MHMg55qE6ZmQ5Yi2XG4gICAgc3RyZWFtICYmIE9iamVjdC5hc3NpZ24oZmV0Y2hIZWFkZXJzLCB7IEFjY2VwdDogJ3RleHQvZXZlbnQtc3RyZWFtJyB9KVxuXG4gICAgcmV0dXJuIChcbiAgICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgICAgdXJsLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIC4uLmZldGNoSGVhZGVycyxcbiAgICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgICB9LFxuICAgICAgICBzdHJlYW0sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgIH0pXG4gICAgKS5kYXRhXG5cbiAgICBmdW5jdGlvbiBvYmplY3RUb1BhcmFtKG9iajogT2JqZWN0KSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZX1gKVxuICAgICAgICAuam9pbignJicpXG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJGdW5jdGlvblRvb2woZnVuY3Rpb25Ub29sOiB0eXBlcy5GdW5jdGlvblRvb2wpIHtcbiAgICBpZiAobW9kZWxzLnRvb2xNYXAuaGFzKGZ1bmN0aW9uVG9vbC5uYW1lKSkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBmdW5jdGlvbiB0b29sICR7ZnVuY3Rpb25Ub29sLm5hbWV9IGFscmVhZHkgZXhpc3RzIGFuZCB3aWxsIGJlIG92ZXJ3cml0dGVuIWApXG4gICAgfVxuICAgIG1vZGVscy50b29sTWFwLnNldChmdW5jdGlvblRvb2wubmFtZSwgZnVuY3Rpb25Ub29sLmZuKVxuICB9XG59XG5cbmV4cG9ydCB7IEFJIH1cbiJdfQ==
172
+ var GO_TO_AI_TEXT = '请检查调用方式,或前往云开发 AI+ 首页查看文档:https://tcb.cloud.tencent.com/dev#/ai';
173
+ function handleResponseData(responseData, header) {
174
+ var _a;
175
+ return __awaiter(this, void 0, void 0, function () {
176
+ var json, json;
177
+ return __generator(this, function (_b) {
178
+ switch (_b.label) {
179
+ case 0:
180
+ if (!('then' in responseData)) return [3, 2];
181
+ return [4, responseData];
182
+ case 1:
183
+ json = (_b.sent());
184
+ if ('code' in json && json.code !== 'NORMAL') {
185
+ throw new Error("AI+ \u8BF7\u6C42\u51FA\u9519\uFF0C\u9519\u8BEF\u7801\uFF1A".concat(json.code, "\uFF0C\u9519\u8BEF\u4FE1\u606F\uFF1A").concat(json.message, "\n").concat(GO_TO_AI_TEXT, "\n").concat(JSON.stringify(json, null, 2)));
186
+ }
187
+ return [2, responseData];
188
+ case 2:
189
+ if (!((_a = header === null || header === void 0 ? void 0 : header.get('content-type')) === null || _a === void 0 ? void 0 : _a.includes('application/json'))) return [3, 4];
190
+ return [4, (0, utils_1.readableStream2JsonObject)(responseData)];
191
+ case 3:
192
+ json = _b.sent();
193
+ throw new Error("AI+ \u8BF7\u6C42\u51FA\u9519\uFF0C\u9519\u8BEF\u7801\uFF1A".concat(json.code, "\uFF0C\u9519\u8BEF\u4FE1\u606F\uFF1A").concat(json.message, "\n").concat(GO_TO_AI_TEXT, "\n").concat(JSON.stringify(json, null, 2)));
194
+ case 4: return [2, responseData];
195
+ }
196
+ });
197
+ });
198
+ }
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQUkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDZCQUEyQjtBQUMzQiwrQ0FBa0M7QUFFbEMsaUNBQW1EO0FBRTNDLElBQUEsTUFBTSxHQUFLLE1BQU0sT0FBWCxDQUFXO0FBRXpCO0lBS0UsWUFBb0IsR0FBd0IsRUFBUyxPQUFlO1FBQXBFLGlCQUlDO1FBSm1CLFFBQUcsR0FBSCxHQUFHLENBQXFCO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQXFCcEUsaUJBQVksR0FBbUIsVUFBTyxFQUE4QjtnQkFBNUIsR0FBRyxTQUFBLEVBQUUsSUFBSSxVQUFBLEVBQUUsT0FBTyxhQUFBLEVBQUUsTUFBTSxZQUFBOzs7Ozs7NEJBQzFELFlBQVksR0FBRztnQ0FDbkIsY0FBYyxFQUFFLGtCQUFrQjs2QkFDbkMsQ0FBQTs0QkFFRCxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFBOzRCQUU5QixXQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO29DQUMzRCxNQUFNLEVBQUUsTUFBTTtvQ0FDZCxPQUFPLHdCQUFPLFlBQVksR0FBSyxPQUFPLENBQUU7b0NBQ3hDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztvQ0FDMUIsR0FBRyxLQUFBO29DQUNILE1BQU0sUUFBQTtpQ0FDUCxDQUFDLEVBQUE7OzRCQU5JLEtBQWlDLENBQUMsU0FNdEMsQ0FBOEUsRUFObEUsWUFBWSxVQUFBLEVBQUUsTUFBTSxZQUFBOzRCQVFsQyxXQUFPLGtCQUFrQixDQUFDLFlBQVksRUFBRSxNQUFNLENBQVEsRUFBQTs7OztTQUN2RCxDQUFBO1FBRUQs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SyxhQUFhLGVBQUssSUFBSSxDQUFDLFNBQVMsQ0FDakcsSUFBSSxFQUNKLElBQUksRUFDSixDQUFDLENBQ0YsQ0FBRSxDQUFFLENBQUE7d0JBRUwsV0FBTyxZQUFZLEVBQUE7Ozs7Q0FFdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNES1JlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgQm90IH0gZnJvbSAnLi9ib3QnXG5pbXBvcnQgKiBhcyBtb2RlbHMgZnJvbSAnLi9tb2RlbHMnXG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyByZWFkYWJsZVN0cmVhbTJKc29uT2JqZWN0IH0gZnJvbSAnLi91dGlscydcblxuY29uc3QgeyBNT0RFTFMgfSA9IG1vZGVsc1xuXG5jbGFzcyBBSSB7XG4gIHB1YmxpYyBhaUJhc2VVcmw6IHN0cmluZ1xuICBwdWJsaWMgYWlCb3RCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGJvdDogQm90XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXE6IFNES1JlcXVlc3RJbnRlcmZhY2UsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFpQmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYFxuICAgIHRoaXMuYWlCb3RCYXNlVXJsID0gYCR7YmFzZVVybH0vYWlib3RgXG4gICAgdGhpcy5ib3QgPSBuZXcgQm90KHRoaXMuYm90UmVxdWVzdCwgdGhpcy5haUJvdEJhc2VVcmwpXG4gIH1cblxuICBjcmVhdGVNb2RlbDxUIGV4dGVuZHMga2V5b2YgdHlwZW9mIE1PREVMUz4obW9kZWw6IFQpIHtcbiAgICBjb25zdCBTaW1wbGVNb2RlbENvbnN0cnVjdG9yID0gTU9ERUxTW21vZGVsXVxuICAgIGNvbnN0IHNpbXBsZU1vZGVsOiB0eXBlcy5TaW1wbGVDaGF0TW9kZWwgPSBuZXcgU2ltcGxlTW9kZWxDb25zdHJ1Y3Rvcih0aGlzLm1vZGVsUmVxdWVzdCwgdGhpcy5haUJhc2VVcmwpXG4gICAgY29uc3QgcmVhY3RNb2RlbCA9IG5ldyBtb2RlbHMuUmVhY3RNb2RlbChzaW1wbGVNb2RlbClcbiAgICByZXR1cm4gcmVhY3RNb2RlbFxuICB9XG5cbiAgcmVnaXN0ZXJNb2RlbChuYW1lOiBzdHJpbmcsIG1vZGVsOiB0eXBlcy5DaGF0TW9kZWxDb25zdHJ1Y3Rvcikge1xuICAgIGlmIChNT0RFTFNbbmFtZV0gIT0gbnVsbCkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBtb2RlbCAke25hbWV9IGFscmVhZHkgZXhpc3RzIWApXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgTU9ERUxTW25hbWVdID0gbW9kZWxcbiAgfVxuXG4gIG1vZGVsUmVxdWVzdDogdHlwZXMuTW9kZWxSZXEgPSBhc3luYyAoeyB1cmwsIGRhdGEsIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgY29uc3QgZmV0Y2hIZWFkZXJzID0ge1xuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICB9XG4gICAgLy8g5bimIEFjY2VwdDogdGV4dC9ldmVudC1zdHJlYW0gIOivt+axguWktOaYvuW8j+aMh+WumuaYryBTU0Ug57uV6L+HIDYwcyDnmoTpmZDliLZcbiAgICBzdHJlYW0gJiYgT2JqZWN0LmFzc2lnbihmZXRjaEhlYWRlcnMsIHsgQWNjZXB0OiAndGV4dC9ldmVudC1zdHJlYW0nIH0pXG5cbiAgICBjb25zdCB7IGRhdGE6IHJlc3BvbnNlRGF0YSwgaGVhZGVyIH0gPSAoYXdhaXQgdGhpcy5yZXEuZmV0Y2goe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBoZWFkZXJzOiB7IC4uLmZldGNoSGVhZGVycywgLi4uaGVhZGVycyB9LFxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXG4gICAgICB1cmwsXG4gICAgICBzdHJlYW0sXG4gICAgfSkpIGFzIHsgZGF0YTogUHJvbWlzZTx1bmtub3duPiB8IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+OyBoZWFkZXI/OiBIZWFkZXJzIH1cblxuICAgIHJldHVybiBoYW5kbGVSZXNwb25zZURhdGEocmVzcG9uc2VEYXRhLCBoZWFkZXIpIGFzIGFueVxuICB9XG5cbiAgYm90UmVxdWVzdDogdHlwZXMuQm90UmVxID0gYXN5bmMgKHsgbWV0aG9kLCB1cmwsIGRhdGEgPSB7fSwgaGVhZGVycywgc3RyZWFtIH0pID0+IHtcbiAgICBpZiAobWV0aG9kID09PSAnZ2V0Jykge1xuICAgICAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlRGF0YSgoYXdhaXQgdGhpcy5yZXEuZmV0Y2goeyB1cmw6IGAke3VybH0/JHtvYmplY3RUb1BhcmFtKGRhdGEpfWAsIG1ldGhvZCwgaGVhZGVycywgc3RyZWFtIH0pKS5kYXRhLClcbiAgICB9XG5cbiAgICBjb25zdCBmZXRjaEhlYWRlcnMgPSB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIH1cbiAgICAvLyDluKYgQWNjZXB0OiB0ZXh0L2V2ZW50LXN0cmVhbSAg6K+35rGC5aS05pi+5byP5oyH5a6a5pivIFNTRSDnu5Xov4cgNjBzIOeahOmZkOWItlxuICAgIHN0cmVhbSAmJiBPYmplY3QuYXNzaWduKGZldGNoSGVhZGVycywgeyBBY2NlcHQ6ICd0ZXh0L2V2ZW50LXN0cmVhbScgfSlcblxuICAgIGNvbnN0IHsgZGF0YTogcmVzcG9uc2VEYXRhLCBoZWFkZXIgfSA9IChhd2FpdCB0aGlzLnJlcS5mZXRjaCh7XG4gICAgICB1cmwsXG4gICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgLi4uZmV0Y2hIZWFkZXJzLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIHN0cmVhbSxcbiAgICAgIG1ldGhvZCxcbiAgICB9KSkgYXMgeyBkYXRhOiBQcm9taXNlPHVua25vd24+IHwgUmVhZGFibGVTdHJlYW08VWludDhBcnJheT47IGhlYWRlcj86IEhlYWRlcnMgfVxuXG4gICAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlRGF0YShyZXNwb25zZURhdGEsIGhlYWRlcikgYXMgYW55XG5cbiAgICBmdW5jdGlvbiBvYmplY3RUb1BhcmFtKG9iajogT2JqZWN0KSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZX1gKVxuICAgICAgICAuam9pbignJicpXG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJGdW5jdGlvblRvb2woZnVuY3Rpb25Ub29sOiB0eXBlcy5GdW5jdGlvblRvb2wpIHtcbiAgICBpZiAobW9kZWxzLnRvb2xNYXAuaGFzKGZ1bmN0aW9uVG9vbC5uYW1lKSkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBmdW5jdGlvbiB0b29sICR7ZnVuY3Rpb25Ub29sLm5hbWV9IGFscmVhZHkgZXhpc3RzIGFuZCB3aWxsIGJlIG92ZXJ3cml0dGVuIWApXG4gICAgfVxuICAgIG1vZGVscy50b29sTWFwLnNldChmdW5jdGlvblRvb2wubmFtZSwgZnVuY3Rpb25Ub29sLmZuKVxuICB9XG59XG5cbmV4cG9ydCB7IEFJIH1cblxuY29uc3QgR09fVE9fQUlfVEVYVCA9ICfor7fmo4Dmn6XosIPnlKjmlrnlvI/vvIzmiJbliY3lvoDkupHlvIDlj5EgQUkrIOmmlumhteafpeeci+aWh+aho++8mmh0dHBzOi8vdGNiLmNsb3VkLnRlbmNlbnQuY29tL2RldiMvYWknXG5cbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZVJlc3BvbnNlRGF0YShyZXNwb25zZURhdGE6IFByb21pc2U8dW5rbm93bj4gfCBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5PiwgaGVhZGVyPzogSGVhZGVycykge1xuICBpZiAoJ3RoZW4nIGluIHJlc3BvbnNlRGF0YSkge1xuICAgIC8vIOmdnua1geW8j+ivt+axgu+8jOebtOaOpei/lOWbniBqc29uIOaVsOaNrlxuICAgIGNvbnN0IGpzb24gPSAoYXdhaXQgcmVzcG9uc2VEYXRhKSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgIGlmICgnY29kZScgaW4ganNvbiAmJiBqc29uLmNvZGUgIT09ICdOT1JNQUwnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEFJKyDor7fmsYLlh7rplJnvvIzplJnor6/noIHvvJoke2pzb24uY29kZX3vvIzplJnor6/kv6Hmga/vvJoke2pzb24ubWVzc2FnZX1cXG4ke0dPX1RPX0FJX1RFWFR9XFxuJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAganNvbixcbiAgICAgICAgbnVsbCxcbiAgICAgICAgMixcbiAgICAgICl9YCwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlRGF0YVxuICB9XG4gIC8vIOa1geW8j+ivt+axgu+8jOWmguaenOaOpeWPo+WHuumUme+8jOS8muWPmOaIkOS8oCBqc29uIOagvOW8j+eahOWTjeW6lO+8jOmAmui/hyBoZWFkZXIg5Yik5pat5qC85byPXG4gIGlmIChoZWFkZXI/LmdldCgnY29udGVudC10eXBlJyk/LmluY2x1ZGVzKCdhcHBsaWNhdGlvbi9qc29uJykpIHtcbiAgICBjb25zdCBqc29uID0gYXdhaXQgcmVhZGFibGVTdHJlYW0ySnNvbk9iamVjdChyZXNwb25zZURhdGEpXG4gICAgLy8g6YO96ZmN5Li6IGpzb24g5LqG77yM5bCx5LiN5Yik5patIGNvZGUg5LqG77yM55u05o6l5oqb5ZCnXG4gICAgdGhyb3cgbmV3IEVycm9yKGBBSSsg6K+35rGC5Ye66ZSZ77yM6ZSZ6K+v56CB77yaJHtqc29uLmNvZGV977yM6ZSZ6K+v5L+h5oGv77yaJHtqc29uLm1lc3NhZ2V9XFxuJHtHT19UT19BSV9URVhUfVxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICBqc29uLFxuICAgICAgbnVsbCxcbiAgICAgIDIsXG4gICAgKX1gLClcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmVzcG9uc2VEYXRhXG4gIH1cbn1cbiJdfQ==
@@ -27,6 +27,8 @@ export declare class TextDecoderStream {
27
27
  }
28
28
  export declare function createAsyncIterable<T>(stream: ReadableStream<T>): AsyncIterableReadableStream<T>;
29
29
  export declare function intoStandardStream<T>(stream: ReadableStream<Uint8Array>): ReadableStream<T>;
30
+ export declare function intoTextStream(stream: ReadableStream<Uint8Array>): AsyncIterableReadableStream<string>;
31
+ export declare function readableStream2JsonObject(stream: ReadableStream): Promise<any>;
30
32
  export declare function createPromise<T = unknown>(): {
31
33
  promise: Promise<T>;
32
34
  res: (value: T | PromiseLike<T>) => void;
package/dist/cjs/utils.js CHANGED
@@ -35,8 +35,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
39
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
40
+ var m = o[Symbol.asyncIterator], i;
41
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
42
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
43
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
44
+ };
38
45
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.functionToolToModelTool = exports.isToolCallAssistantMessage = exports.createPromise = exports.intoStandardStream = exports.createAsyncIterable = exports.TextDecoderStream = exports.toPolyfillReadable = exports.createEventSourceParserTransformStream = exports.TransformStream = exports.ReadableStream = void 0;
46
+ exports.functionToolToModelTool = exports.isToolCallAssistantMessage = exports.createPromise = exports.readableStream2JsonObject = exports.intoTextStream = exports.intoStandardStream = exports.createAsyncIterable = exports.TextDecoderStream = exports.toPolyfillReadable = exports.createEventSourceParserTransformStream = exports.TransformStream = exports.ReadableStream = void 0;
40
47
  var web_streams_polyfill_1 = require("web-streams-polyfill");
41
48
  var web_streams_adapter_1 = require("@mattiasbuelens/web-streams-adapter");
42
49
  var eventsource_parser_1 = require("./eventsource_parser");
@@ -169,6 +176,61 @@ function intoStandardStream(stream) {
169
176
  })));
170
177
  }
171
178
  exports.intoStandardStream = intoStandardStream;
179
+ function intoTextStream(stream) {
180
+ return createAsyncIterable((0, exports.toPolyfillReadable)(stream).pipeThrough(new TextDecoderStream()));
181
+ }
182
+ exports.intoTextStream = intoTextStream;
183
+ function readableStream2JsonObject(stream) {
184
+ var _a, e_1, _b, _c;
185
+ return __awaiter(this, void 0, void 0, function () {
186
+ var s, total, _d, s_1, s_1_1, chunk, e_1_1;
187
+ return __generator(this, function (_e) {
188
+ switch (_e.label) {
189
+ case 0:
190
+ s = intoTextStream(stream);
191
+ total = '';
192
+ _e.label = 1;
193
+ case 1:
194
+ _e.trys.push([1, 6, 7, 12]);
195
+ _d = true, s_1 = __asyncValues(s);
196
+ _e.label = 2;
197
+ case 2: return [4, s_1.next()];
198
+ case 3:
199
+ if (!(s_1_1 = _e.sent(), _a = s_1_1.done, !_a)) return [3, 5];
200
+ _c = s_1_1.value;
201
+ _d = false;
202
+ try {
203
+ chunk = _c;
204
+ total += chunk;
205
+ }
206
+ finally {
207
+ _d = true;
208
+ }
209
+ _e.label = 4;
210
+ case 4: return [3, 2];
211
+ case 5: return [3, 12];
212
+ case 6:
213
+ e_1_1 = _e.sent();
214
+ e_1 = { error: e_1_1 };
215
+ return [3, 12];
216
+ case 7:
217
+ _e.trys.push([7, , 10, 11]);
218
+ if (!(!_d && !_a && (_b = s_1.return))) return [3, 9];
219
+ return [4, _b.call(s_1)];
220
+ case 8:
221
+ _e.sent();
222
+ _e.label = 9;
223
+ case 9: return [3, 11];
224
+ case 10:
225
+ if (e_1) throw e_1.error;
226
+ return [7];
227
+ case 11: return [7];
228
+ case 12: return [2, JSON.parse(total)];
229
+ }
230
+ });
231
+ });
232
+ }
233
+ exports.readableStream2JsonObject = readableStream2JsonObject;
172
234
  function createPromise() {
173
235
  var res;
174
236
  var rej;
@@ -194,4 +256,4 @@ function functionToolToModelTool(tool) {
194
256
  };
195
257
  }
196
258
  exports.functionToolToModelTool = functionToolToModelTool;
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTZHO0FBQzdHLDJFQUFpRjtBQUNqRiwyREFBNkY7QUFRN0YseURBQWdEO0FBRW5DLFFBQUEsY0FBYyxHQUFHLHFDQVc3QixDQUFBO0FBRVksUUFBQSxlQUFlLEdBQUcsc0NBUTlCLENBQUE7QUFFTSxJQUFNLHNDQUFzQyxHQUFHO0lBQ3BELElBQUksTUFBMEIsQ0FBQTtJQUU5QixPQUFPLElBQUksdUJBQWUsQ0FBc0I7UUFDOUMsS0FBSyxZQUFDLFVBQVU7WUFDZCxNQUFNLEdBQUcsSUFBQSxpQ0FBWSxFQUFDLFVBQUMsS0FBSztnQkFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtvQkFDMUIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtpQkFDMUI7WUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUM7UUFDRCxTQUFTLFlBQUMsS0FBSztZQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEIsQ0FBQztLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQWZZLFFBQUEsc0NBQXNDLDBDQWVsRDtBQUVZLFFBQUEsa0JBQWtCLEdBQUcsSUFBQSxpREFBMkIsRUFBQyxzQkFBYyxDQUFDLENBQUE7QUFFN0U7SUFxQkUsMkJBQVksUUFBa0IsRUFBRSxPQUFnQztRQUFwRCx5QkFBQSxFQUFBLGtCQUFrQjtRQUFFLHdCQUFBLEVBQUEsWUFBZ0M7UUFBaEUsaUJBRUM7UUFwQk8sY0FBUyxHQUFHLElBQUksdUJBQWUsQ0FBQztZQUN0QyxTQUFTLEVBQUUsVUFBQyxLQUFLLEVBQUUsVUFBVTtnQkFDM0IsSUFBTSxLQUFLLEdBQUcsS0FBSSxDQUFDLE1BQU0sQ0FBQyxNQUFN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SUFBSSxLQUFLLFFBQVEsRUFBRTtvQkFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxtREFBbUQsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7aUJBQzVFO2FBQ0Y7UUFDSCxDQUFDO0tBQ0YsQ0FBQyxDQUFFLENBQUUsQ0FBQTtBQUNWLENBQUM7QUFoQkQsZ0RBZ0JDO0FBRUQsU0FBZ0IsYUFBYTtJQUMzQixJQUFJLEdBQXdDLENBQUE7SUFDNUMsSUFBSSxHQUEyQixDQUFBO0lBQy9CLElBQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFJLFVBQUMsT0FBTyxFQUFFLE1BQU07UUFDN0MsR0FBRyxHQUFHLE9BQU8sQ0FBQTtRQUNiLEdBQUcsR0FBRyxNQUFNLENBQUE7SUFDZCxDQUFDLENBQUMsQ0FBQTtJQUNGLE9BQU8sRUFBRSxPQUFPLFNBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxDQUFBO0FBQzlCLENBQUM7QUFSRCxzQ0FRQztBQUVELFNBQWdCLDBCQUEwQixDQUFDLE9BQXlCO0lBQ2xFLE9BQU8sT0FBTyxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksWUFBWSxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQTtBQUNqRyxDQUFDO0FBRkQsZ0VBRUM7QUFFRCxTQUFnQix1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDO0FBVEQsMERBU0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1TdHJlYW0gYXMgX1RyYW5zZm9ybVN0cmVhbSwgUmVhZGFibGVTdHJlYW0gYXMgX1JlYWRhYmxlU3RyZWFtIH0gZnJvbSAnd2ViLXN0cmVhbXMtcG9seWZpbGwnXG5pbXBvcnQgeyBjcmVhdGVSZWFkYWJsZVN0cmVhbVdyYXBwZXIgfSBmcm9tICdAbWF0dGlhc2J1ZWxlbnMvd2ViLXN0cmVhbXMtYWRhcHRlcidcbmltcG9ydCB7IGNyZWF0ZVBhcnNlciwgdHlwZSBFdmVudFNvdXJjZVBhcnNlciwgdHlwZSBQYXJzZWRFdmVudCB9IGZyb20gJy4vZXZlbnRzb3VyY2VfcGFyc2VyJ1xuaW1wb3J0IHR5cGUge1xuICBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW0sXG4gIENoYXRNb2RlbE1lc3NhZ2UsXG4gIFRvb2xDYWxsQXNzaXN0YW50TWVzc2FnZSxcbiAgTW9kZWxUb29sLFxuICBGdW5jdGlvblRvb2wsXG59IGZyb20gJy4vdHlwZSdcbmltcG9ydCB7IFRleHREZWNvZGVyIH0gZnJvbSAndGV4dC1lbmNvZGluZy1zaGltJ1xuXG5leHBvcnQgY29uc3QgUmVhZGFibGVTdHJlYW0gPSBfUmVhZGFibGVTdHJlYW0gYXMge1xuICBwcm90b3R5cGU6IFJlYWRhYmxlU3RyZWFtXG5cbiAgbmV3IChcbiAgICB1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nQnl0ZVNvdXJjZSxcbiAgICBzdHJhdGVneT86IHtcbiAgICAgIGhpZ2hXYXRlck1hcms/OiBudW1iZXJcbiAgICB9LFxuICApOiBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5PlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U6IFVuZGVybHlpbmdEZWZhdWx0U291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG4gIG5ldyA8UiA9IGFueT4odW5kZXJseWluZ1NvdXJjZT86IFVuZGVybHlpbmdTb3VyY2U8Uj4sIHN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PFI+KTogUmVhZGFibGVTdHJlYW08Uj5cbn1cblxuZXhwb3J0IGNvbnN0IFRyYW5zZm9ybVN0cmVhbSA9IF9UcmFuc2Zvcm1TdHJlYW0gYXMge1xuICBwcm90b3R5cGU6IFRyYW5zZm9ybVN0cmVhbVxuXG4gIG5ldyA8SSA9IGFueSwgTyA9IGFueT4oXG4gICAgdHJhbnNmb3JtZXI/OiBUcmFuc2Zvcm1lcjxJLCBPPixcbiAgICB3cml0YWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PEk+LFxuICAgIHJlYWRhYmxlU3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Tz4sXG4gICk6IFRyYW5zZm9ybVN0cmVhbTxJLCBPPlxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlRXZlbnRTb3VyY2VQYXJzZXJUcmFuc2Zvcm1TdHJlYW0gPSAoKSA9PiB7XG4gIGxldCBwYXJzZXIhOiBFdmVudFNvdXJjZVBhcnNlclxuXG4gIHJldHVybiBuZXcgVHJhbnNmb3JtU3RyZWFtPHN0cmluZywgUGFyc2VkRXZlbnQ+KHtcbiAgICBzdGFydChjb250cm9sbGVyKSB7XG4gICAgICBwYXJzZXIgPSBjcmVhdGVQYXJzZXIoKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZXZlbnQnKSB7XG4gICAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGV2ZW50KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgdHJhbnNmb3JtKGNodW5rKSB7XG4gICAgICBwYXJzZXIuZmVlZChjaHVuaylcbiAgICB9LFxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgdG9Qb2x5ZmlsbFJlYWRhYmxlID0gY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyKFJlYWRhYmxlU3RyZWFtKVxuXG5leHBvcnQgY2xhc3MgVGV4dERlY29kZXJTdHJlYW0ge1xuICBwcml2YXRlIGhhbmRsZTogVGV4dERlY29kZXJcblxuICBwcml2YXRlIHRyYW5zZm9ybSA9IG5ldyBUcmFuc2Zvcm1TdHJlYW0oe1xuICAgIHRyYW5zZm9ybTogKGNodW5rLCBjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZShuZXcgVWludDhBcnJheShjaHVuayksIHsgc3RyZWFtOiB0cnVlIH0pXG5cbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUodmFsdWUpXG4gICAgICB9XG4gICAgfSxcbiAgICBmbHVzaDogKGNvbnRyb2xsZXIpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5oYW5kbGUuZGVjb2RlKClcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUodmFsdWUpXG4gICAgICB9XG5cbiAgICAgIGNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICB9LFxuICB9KVxuXG4gIGNvbnN0cnVjdG9yKGVuY29kaW5nID0gJ3V0Zi04Jywgb3B0aW9uczogVGV4dERlY29kZXJPcHRpb25zID0ge30pIHtcbiAgICB0aGlzLmhhbmRsZSA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgb3B0aW9ucylcbiAgfVxuXG4gIGdldCBlbmNvZGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuZW5jb2RpbmdcbiAgfVxuXG4gIGdldCBmYXRhbCgpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuZmF0YWxcbiAgfVxuXG4gIGdldCBpZ25vcmVCT00oKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmlnbm9yZUJPTVxuICB9XG5cbiAgZ2V0IHJlYWRhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS5yZWFkYWJsZVxuICB9XG5cbiAgZ2V0IHdyaXRhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS53cml0YWJsZVxuICB9XG5cbiAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkge1xuICAgIHJldHVybiAnVGV4dERlY29kZXJTdHJlYW0nXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFzeW5jSXRlcmFibGU8VD4oc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxUPikge1xuICBjb25zdCBfc3RyZWFtID0gc3RyZWFtIGFzIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxUPlxuICBfc3RyZWFtW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9ICgpID0+IHtcbiAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcbiAgICByZXR1cm4ge1xuICAgICAgYXN5bmMgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB7XG4gICAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcbiAgICAgICAgcmV0dXJuIGRvbmUgPyB7IGRvbmU6IHRydWUsIHZhbHVlOiB1bmRlZmluZWQgfSA6IHsgZG9uZTogZmFsc2UsIHZhbHVlIH1cbiAgICAgIH0sXG4gICAgfVxuICB9XG4gIHJldHVybiBfc3RyZWFtXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLogVCDnsbvlnovnmoTmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9TdGFuZGFyZFN0cmVhbTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogUmVhZGFibGVTdHJlYW08VD4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZShzdHJlYW1cbiAgICAucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIFQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIFRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSwgY2h1bmspXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pLCksKVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUHJvbWlzZTxUID0gdW5rbm93bj4oKSB7XG4gIGxldCByZXM6ICh2YWx1ZTogVCB8IFByb21pc2VMaWtlPFQ+KSA9PiB2b2lkXG4gIGxldCByZWo6IChyZWFzb24/OiBhbnkpID0+IHZvaWRcbiAgY29uc3QgcHJvbWlzZSA9IG5ldyBQcm9taXNlPFQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICByZXMgPSByZXNvbHZlXG4gICAgcmVqID0gcmVqZWN0XG4gIH0pXG4gIHJldHVybiB7IHByb21pc2UsIHJlcywgcmVqIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlKG1lc3NhZ2U6IENoYXRNb2RlbE1lc3NhZ2UpOiBtZXNzYWdlIGlzIFRvb2xDYWxsQXNzaXN0YW50TWVzc2FnZSB7XG4gIHJldHVybiBtZXNzYWdlLnJvbGUgPT09ICdhc3Npc3RhbnQnICYmICd0b29sX2NhbGxzJyBpbiBtZXNzYWdlICYmIG1lc3NhZ2UudG9vbF9jYWxsc1swXSAhPSBudWxsXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmdW5jdGlvblRvb2xUb01vZGVsVG9vbCh0b29sOiBGdW5jdGlvblRvb2wpOiBNb2RlbFRvb2wge1xuICByZXR1cm4ge1xuICAgIHR5cGU6ICdmdW5jdGlvbicsXG4gICAgZnVuY3Rpb246IHtcbiAgICAgIGRlc2NyaXB0aW9uOiB0b29sLmRlc2NyaXB0aW9uLFxuICAgICAgbmFtZTogdG9vbC5uYW1lLFxuICAgICAgcGFyYW1ldGVyczogdG9vbC5wYXJhbWV0ZXJzLFxuICAgIH0sXG4gIH1cbn1cbiJdfQ==
259
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZEQUE2RztBQUM3RywyRUFBaUY7QUFDakYsMkRBQTZGO0FBUTdGLHlEQUFnRDtBQUVuQyxRQUFBLGNBQWMsR0FBRyxxQ0FXN0IsQ0FBQTtBQUVZLFFBQUEsZUFBZSxHQUFHLHNDQVE5QixDQUFBO0FBRU0sSUFBTSxzQ0FBc0MsR0FBRztJQUNwRCxJQUFJLE1BQTBCLENBQUE7SUFFOUIsT0FBTyxJQUFJLHVCQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLElBQUEsaUNBQVksRUFBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFmWSxRQUFBLHNDQUFzQywwQ0FlbEQ7QUFFWSxRQUFBLGtCQUFrQixHQUFHLElBQUEsaURBQTJCLEVBQUMsc0JBQWMsQ0FBQyxDQUFBO0FBRTdFO0lBcUJFLDJCQUFZLFFBQWtCLEVBQUUsT0FBZ0M7UUFBcEQseUJBQUEsRUFBQSxrQkFBa0I7UUFBRSx3QkFBQSxFQUFBLFlBQWdDO1FBQWhFLGlCQUVDO1FBcEJPLGNBQVMsR0FBRyxJQUFJLHVCQUFlLENBQUM7WUFDdEMsU0FBUyxFQUFFLFVBQUMsS0FBSyxFQUFFLFVBQVU7Z0JBQzNCLElBQU0sS0FBSyxHQUFHLEtBQUksQ0FBQyxNQUFNLENB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QUFDLE9BQXlCO0lBQ2xFLE9BQU8sT0FBTyxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksWUFBWSxJQUFJLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQTtBQUNqRyxDQUFDO0FBRkQsZ0VBRUM7QUFFRCxTQUFnQix1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDO0FBVEQsMERBU0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2Zvcm1TdHJlYW0gYXMgX1RyYW5zZm9ybVN0cmVhbSwgUmVhZGFibGVTdHJlYW0gYXMgX1JlYWRhYmxlU3RyZWFtIH0gZnJvbSAnd2ViLXN0cmVhbXMtcG9seWZpbGwnXG5pbXBvcnQgeyBjcmVhdGVSZWFkYWJsZVN0cmVhbVdyYXBwZXIgfSBmcm9tICdAbWF0dGlhc2J1ZWxlbnMvd2ViLXN0cmVhbXMtYWRhcHRlcidcbmltcG9ydCB7IGNyZWF0ZVBhcnNlciwgdHlwZSBFdmVudFNvdXJjZVBhcnNlciwgdHlwZSBQYXJzZWRFdmVudCB9IGZyb20gJy4vZXZlbnRzb3VyY2VfcGFyc2VyJ1xuaW1wb3J0IHR5cGUge1xuICBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW0sXG4gIENoYXRNb2RlbE1lc3NhZ2UsXG4gIFRvb2xDYWxsQXNzaXN0YW50TWVzc2FnZSxcbiAgTW9kZWxUb29sLFxuICBGdW5jdGlvblRvb2wsXG59IGZyb20gJy4vdHlwZSdcbmltcG9ydCB7IFRleHREZWNvZGVyIH0gZnJvbSAndGV4dC1lbmNvZGluZy1zaGltJ1xuXG5leHBvcnQgY29uc3QgUmVhZGFibGVTdHJlYW0gPSBfUmVhZGFibGVTdHJlYW0gYXMge1xuICBwcm90b3R5cGU6IFJlYWRhYmxlU3RyZWFtXG5cbiAgbmV3IChcbiAgICB1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nQnl0ZVNvdXJjZSxcbiAgICBzdHJhdGVneT86IHtcbiAgICAgIGhpZ2hXYXRlck1hcms/OiBudW1iZXJcbiAgICB9LFxuICApOiBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5PlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U6IFVuZGVybHlpbmdEZWZhdWx0U291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG4gIG5ldyA8UiA9IGFueT4odW5kZXJseWluZ1NvdXJjZT86IFVuZGVybHlpbmdTb3VyY2U8Uj4sIHN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PFI+KTogUmVhZGFibGVTdHJlYW08Uj5cbn1cblxuZXhwb3J0IGNvbnN0IFRyYW5zZm9ybVN0cmVhbSA9IF9UcmFuc2Zvcm1TdHJlYW0gYXMge1xuICBwcm90b3R5cGU6IFRyYW5zZm9ybVN0cmVhbVxuXG4gIG5ldyA8SSA9IGFueSwgTyA9IGFueT4oXG4gICAgdHJhbnNmb3JtZXI/OiBUcmFuc2Zvcm1lcjxJLCBPPixcbiAgICB3cml0YWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PEk+LFxuICAgIHJlYWRhYmxlU3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Tz4sXG4gICk6IFRyYW5zZm9ybVN0cmVhbTxJLCBPPlxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlRXZlbnRTb3VyY2VQYXJzZXJUcmFuc2Zvcm1TdHJlYW0gPSAoKSA9PiB7XG4gIGxldCBwYXJzZXIhOiBFdmVudFNvdXJjZVBhcnNlclxuXG4gIHJldHVybiBuZXcgVHJhbnNmb3JtU3RyZWFtPHN0cmluZywgUGFyc2VkRXZlbnQ+KHtcbiAgICBzdGFydChjb250cm9sbGVyKSB7XG4gICAgICBwYXJzZXIgPSBjcmVhdGVQYXJzZXIoKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC50eXBlID09PSAnZXZlbnQnKSB7XG4gICAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGV2ZW50KVxuICAgICAgICB9XG4gICAgICB9KVxuICAgIH0sXG4gICAgdHJhbnNmb3JtKGNodW5rKSB7XG4gICAgICBwYXJzZXIuZmVlZChjaHVuaylcbiAgICB9LFxuICB9KVxufVxuXG5leHBvcnQgY29uc3QgdG9Qb2x5ZmlsbFJlYWRhYmxlID0gY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyKFJlYWRhYmxlU3RyZWFtKVxuXG5leHBvcnQgY2xhc3MgVGV4dERlY29kZXJTdHJlYW0ge1xuICBwcml2YXRlIGhhbmRsZTogVGV4dERlY29kZXJcblxuICBwcml2YXRlIHRyYW5zZm9ybSA9IG5ldyBUcmFuc2Zvcm1TdHJlYW0oe1xuICAgIHRyYW5zZm9ybTogKGNodW5rLCBjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZShuZXcgVWludDhBcnJheShjaHVuayksIHsgc3RyZWFtOiB0cnVlIH0pXG5cbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUodmFsdWUpXG4gICAgICB9XG4gICAgfSxcbiAgICBmbHVzaDogKGNvbnRyb2xsZXIpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5oYW5kbGUuZGVjb2RlKClcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUodmFsdWUpXG4gICAgICB9XG5cbiAgICAgIGNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICB9LFxuICB9KVxuXG4gIGNvbnN0cnVjdG9yKGVuY29kaW5nID0gJ3V0Zi04Jywgb3B0aW9uczogVGV4dERlY29kZXJPcHRpb25zID0ge30pIHtcbiAgICB0aGlzLmhhbmRsZSA9IG5ldyBUZXh0RGVjb2RlcihlbmNvZGluZywgb3B0aW9ucylcbiAgfVxuXG4gIGdldCBlbmNvZGluZygpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuZW5jb2RpbmdcbiAgfVxuXG4gIGdldCBmYXRhbCgpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuZmF0YWxcbiAgfVxuXG4gIGdldCBpZ25vcmVCT00oKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmlnbm9yZUJPTVxuICB9XG5cbiAgZ2V0IHJlYWRhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS5yZWFkYWJsZVxuICB9XG5cbiAgZ2V0IHdyaXRhYmxlKCkge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybS53cml0YWJsZVxuICB9XG5cbiAgZ2V0IFtTeW1ib2wudG9TdHJpbmdUYWddKCkge1xuICAgIHJldHVybiAnVGV4dERlY29kZXJTdHJlYW0nXG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUFzeW5jSXRlcmFibGU8VD4oc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxUPikge1xuICBjb25zdCBfc3RyZWFtID0gc3RyZWFtIGFzIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxUPlxuICBfc3RyZWFtW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9ICgpID0+IHtcbiAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcbiAgICByZXR1cm4ge1xuICAgICAgYXN5bmMgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB7XG4gICAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcbiAgICAgICAgcmV0dXJuIGRvbmUgPyB7IGRvbmU6IHRydWUsIHZhbHVlOiB1bmRlZmluZWQgfSA6IHsgZG9uZTogZmFsc2UsIHZhbHVlIH1cbiAgICAgIH0sXG4gICAgfVxuICB9XG4gIHJldHVybiBfc3RyZWFtXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLogVCDnsbvlnovnmoTmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9TdGFuZGFyZFN0cmVhbTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogUmVhZGFibGVTdHJlYW08VD4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZShzdHJlYW1cbiAgICAucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIFQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIFRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSwgY2h1bmspXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pLCksKVxufVxuXG4vKipcbiAqIOWwhiBTU0Ug5LqM6L+b5Yi25rWB6L2s5o2i5Li65a2X56ym5Liy5rWBXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRvVGV4dFN0cmVhbShzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPHN0cmluZz4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSgodG9Qb2x5ZmlsbFJlYWRhYmxlKHN0cmVhbSkgYXMgdHlwZW9mIHN0cmVhbSkucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW0ySnNvbk9iamVjdChzdHJlYW06IFJlYWRhYmxlU3RyZWFtKSB7XG4gIGNvbnN0IHMgPSBpbnRvVGV4dFN0cmVhbShzdHJlYW0pXG4gIGxldCB0b3RhbCA9ICcnXG4gIGZvciBhd2FpdCAoY29uc3QgY2h1bmsgb2Ygcykge1xuICAgIHRvdGFsICs9IGNodW5rXG4gIH1cbiAgcmV0dXJuIEpTT04ucGFyc2UodG90YWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlPFQgPSB1bmtub3duPigpIHtcbiAgbGV0IHJlczogKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pID0+IHZvaWRcbiAgbGV0IHJlajogKHJlYXNvbj86IGFueSkgPT4gdm9pZFxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcbiAgcmV0dXJuIHsgcHJvbWlzZSwgcmVzLCByZWogfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UobWVzc2FnZTogQ2hhdE1vZGVsTWVzc2FnZSk6IG1lc3NhZ2UgaXMgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlIHtcbiAgcmV0dXJuIG1lc3NhZ2Uucm9sZSA9PT0gJ2Fzc2lzdGFudCcgJiYgJ3Rvb2xfY2FsbHMnIGluIG1lc3NhZ2UgJiYgbWVzc2FnZS50b29sX2NhbGxzWzBdICE9IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1bmN0aW9uVG9vbFRvTW9kZWxUb29sKHRvb2w6IEZ1bmN0aW9uVG9vbCk6IE1vZGVsVG9vbCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBmdW5jdGlvbjoge1xuICAgICAgZGVzY3JpcHRpb246IHRvb2wuZGVzY3JpcHRpb24sXG4gICAgICBuYW1lOiB0b29sLm5hbWUsXG4gICAgICBwYXJhbWV0ZXJzOiB0b29sLnBhcmFtZXRlcnMsXG4gICAgfSxcbiAgfVxufVxuIl19
package/dist/esm/AI.js CHANGED
@@ -47,6 +47,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
47
47
  };
48
48
  import { Bot } from './bot';
49
49
  import * as models from './models';
50
+ import { readableStream2JsonObject } from './utils';
50
51
  var MODELS = models.MODELS;
51
52
  var AI = (function () {
52
53
  function AI(req, baseUrl) {
@@ -56,9 +57,9 @@ var AI = (function () {
56
57
  this.modelRequest = function (_a) {
57
58
  var url = _a.url, data = _a.data, headers = _a.headers, stream = _a.stream;
58
59
  return __awaiter(_this, void 0, void 0, function () {
59
- var fetchHeaders;
60
- return __generator(this, function (_b) {
61
- switch (_b.label) {
60
+ var fetchHeaders, _b, responseData, header;
61
+ return __generator(this, function (_c) {
62
+ switch (_c.label) {
62
63
  case 0:
63
64
  fetchHeaders = {
64
65
  'Content-Type': 'application/json',
@@ -71,7 +72,9 @@ var AI = (function () {
71
72
  url: url,
72
73
  stream: stream,
73
74
  })];
74
- case 1: return [2, (_b.sent()).data];
75
+ case 1:
76
+ _b = (_c.sent()), responseData = _b.data, header = _b.header;
77
+ return [2, handleResponseData(responseData, header)];
75
78
  }
76
79
  });
77
80
  });
@@ -87,13 +90,14 @@ var AI = (function () {
87
90
  })
88
91
  .join('&');
89
92
  }
90
- var fetchHeaders;
91
- return __generator(this, function (_c) {
92
- switch (_c.label) {
93
+ var _c, fetchHeaders, _d, responseData, header;
94
+ return __generator(this, function (_e) {
95
+ switch (_e.label) {
93
96
  case 0:
94
97
  if (!(method === 'get')) return [3, 2];
98
+ _c = handleResponseData;
95
99
  return [4, this.req.fetch({ url: "".concat(url, "?").concat(objectToParam(data)), method: method, headers: headers, stream: stream })];
96
- case 1: return [2, (_c.sent()).data];
100
+ case 1: return [2, _c.apply(void 0, [(_e.sent()).data])];
97
101
  case 2:
98
102
  fetchHeaders = {
99
103
  'Content-Type': 'application/json',
@@ -106,7 +110,9 @@ var AI = (function () {
106
110
  stream: stream,
107
111
  method: method,
108
112
  })];
109
- case 3: return [2, (_c.sent()).data];
113
+ case 3:
114
+ _d = (_e.sent()), responseData = _d.data, header = _d.header;
115
+ return [2, handleResponseData(responseData, header)];
110
116
  }
111
117
  });
112
118
  });
@@ -137,4 +143,31 @@ var AI = (function () {
137
143
  return AI;
138
144
  }());
139
145
  export { AI };
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQUkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBQzNCLE9BQU8sS0FBSyxNQUFNLE1BQU0sVUFBVSxDQUFBO0FBRzFCLElBQUEsTUFBTSxHQUFLLE1BQU0sT0FBWCxDQUFXO0FBRXpCO0lBS0UsWUFBb0IsR0FBd0IsRUFBUyxPQUFlO1FBQXBFLGlCQUlDO1FBSm1CLFFBQUcsR0FBSCxHQUFHLENBQXFCO1FBQVMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQXFCcEUsaUJBQVksR0FBbUIsVUFBTyxFQUE4QjtnQkFBNUIsR0FBRyxTQUFBLEVBQUUsSUFBSSxVQUFBLEVBQUUsT0FBTyxhQUFBLEVBQUUsTUFBTSxZQUFBOzs7Ozs7NEJBQzFELFlBQVksR0FBRztnQ0FDbkIsY0FBYyxFQUFFLGtCQUFrQjs2QkFDbkMsQ0FBQTs0QkFFRCxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFBOzRCQUdwRSxXQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO29DQUNuQixNQUFNLEVBQUUsTUFBTTtvQ0FDZCxPQUFPLHdCQUFPLFlBQVksR0FBSyxPQUFPLENBQUU7b0NBQ3hDLElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztvQ0FDMUIsR0FBRyxLQUFBO29DQUNILE1BQU0sUUFBQTtpQ0FDUCxDQUFDLEVBQUE7Z0NBUEosV0FBTyxDQUNMLFNBTUUsQ0FDSCxDQUFDLElBQUksRUFBQTs7OztTQUNQLENBQUE7UUFFRCxlQUFVLEdBQWlCLFVBQU8sRUFBMkM7Z0JBQXpDLE1BQU0sWUFBQSxFQUFFLEdBQUcsU0FBQSxFQUFF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Q0FBQyxDQUFBO0lBQ3hELENBQUM7SUFDSCxTQUFDO0FBQUQsQ0FBQyxBQWpGRCxJQWlGQztBQUVELE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgU0RLUmVxdWVzdEludGVyZmFjZSB9IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgeyBCb3QgfSBmcm9tICcuL2JvdCdcbmltcG9ydCAqIGFzIG1vZGVscyBmcm9tICcuL21vZGVscydcbmltcG9ydCAqIGFzIHR5cGVzIGZyb20gJy4vdHlwZSdcblxuY29uc3QgeyBNT0RFTFMgfSA9IG1vZGVsc1xuXG5jbGFzcyBBSSB7XG4gIHB1YmxpYyBhaUJhc2VVcmw6IHN0cmluZ1xuICBwdWJsaWMgYWlCb3RCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGJvdDogQm90XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXE6IFNES1JlcXVlc3RJbnRlcmZhY2UsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFpQmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYFxuICAgIHRoaXMuYWlCb3RCYXNlVXJsID0gYCR7YmFzZVVybH0vYWlib3RgXG4gICAgdGhpcy5ib3QgPSBuZXcgQm90KHRoaXMuYm90UmVxdWVzdCwgdGhpcy5haUJvdEJhc2VVcmwpXG4gIH1cblxuICBjcmVhdGVNb2RlbDxUIGV4dGVuZHMga2V5b2YgdHlwZW9mIE1PREVMUz4obW9kZWw6IFQpIHtcbiAgICBjb25zdCBTaW1wbGVNb2RlbENvbnN0cnVjdG9yID0gTU9ERUxTW21vZGVsXVxuICAgIGNvbnN0IHNpbXBsZU1vZGVsOiB0eXBlcy5TaW1wbGVDaGF0TW9kZWwgPSBuZXcgU2ltcGxlTW9kZWxDb25zdHJ1Y3Rvcih0aGlzLm1vZGVsUmVxdWVzdCwgdGhpcy5haUJhc2VVcmwpXG4gICAgY29uc3QgcmVhY3RNb2RlbCA9IG5ldyBtb2RlbHMuUmVhY3RNb2RlbChzaW1wbGVNb2RlbClcbiAgICByZXR1cm4gcmVhY3RNb2RlbFxuICB9XG5cbiAgcmVnaXN0ZXJNb2RlbChuYW1lOiBzdHJpbmcsIG1vZGVsOiB0eXBlcy5DaGF0TW9kZWxDb25zdHJ1Y3Rvcikge1xuICAgIGlmIChNT0RFTFNbbmFtZV0gIT0gbnVsbCkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBtb2RlbCAke25hbWV9IGFscmVhZHkgZXhpc3RzIWApXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgTU9ERUxTW25hbWVdID0gbW9kZWxcbiAgfVxuXG4gIG1vZGVsUmVxdWVzdDogdHlwZXMuTW9kZWxSZXEgPSBhc3luYyAoeyB1cmwsIGRhdGEsIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgY29uc3QgZmV0Y2hIZWFkZXJzID0ge1xuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICB9XG4gICAgLy8g5bimIEFjY2VwdDogdGV4dC9ldmVudC1zdHJlYW0gIOivt+axguWktOaYvuW8j+aMh+WumuaYryBTU0Ug57uV6L+HIDYwcyDnmoTpmZDliLZcbiAgICBzdHJlYW0gJiYgT2JqZWN0LmFzc2lnbihmZXRjaEhlYWRlcnMsIHsgQWNjZXB0OiAndGV4dC9ldmVudC1zdHJlYW0nIH0pXG5cbiAgICByZXR1cm4gKFxuICAgICAgYXdhaXQgdGhpcy5yZXEuZmV0Y2goe1xuICAgICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgICAgaGVhZGVyczogeyAuLi5mZXRjaEhlYWRlcnMsIC4uLmhlYWRlcnMgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXG4gICAgICAgIHVybCxcbiAgICAgICAgc3RyZWFtLFxuICAgICAgfSlcbiAgICApLmRhdGFcbiAgfVxuXG4gIGJvdFJlcXVlc3Q6IHR5cGVzLkJvdFJlcSA9IGFzeW5jICh7IG1ldGhvZCwgdXJsLCBkYXRhID0ge30sIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgaWYgKG1ldGhvZCA9PT0gJ2dldCcpIHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5yZXEuZmV0Y2goeyB1cmw6IGAke3VybH0/JHtvYmplY3RUb1BhcmFtKGRhdGEpfWAsIG1ldGhvZCwgaGVhZGVycywgc3RyZWFtIH0pKS5kYXRhXG4gICAgfVxuXG4gICAgY29uc3QgZmV0Y2hIZWFkZXJzID0ge1xuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICB9XG4gICAgLy8g5bimIEFjY2VwdDogdGV4dC9ldmVudC1zdHJlYW0gIOivt+axguWktOaYvuW8j+aMh+WumuaYryBTU0Ug57uV6L+HIDYwcyDnmoTpmZDliLZcbiAgICBzdHJlYW0gJiYgT2JqZWN0LmFzc2lnbihmZXRjaEhlYWRlcnMsIHsgQWNjZXB0OiAndGV4dC9ldmVudC1zdHJlYW0nIH0pXG5cbiAgICByZXR1cm4gKFxuICAgICAgYXdhaXQgdGhpcy5yZXEuZmV0Y2goe1xuICAgICAgICB1cmwsXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGRhdGEpLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgLi4uZmV0Y2hIZWFkZXJzLFxuICAgICAgICAgIC4uLmhlYWRlcnMsXG4gICAgICAgIH0sXG4gICAgICAgIHN0cmVhbSxcbiAgICAgICAgbWV0aG9kLFxuICAgICAgfSlcbiAgICApLmRhdGFcblxuICAgIGZ1bmN0aW9uIG9iamVjdFRvUGFyYW0ob2JqOiBPYmplY3QpIHtcbiAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyhvYmopXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fT0ke3ZhbHVlfWApXG4gICAgICAgIC5qb2luKCcmJylcbiAgICB9XG4gIH1cblxuICByZWdpc3RlckZ1bmN0aW9uVG9vbChmdW5jdGlvblRvb2w6IHR5cGVzLkZ1bmN0aW9uVG9vbCkge1xuICAgIGlmIChtb2RlbHMudG9vbE1hcC5oYXMoZnVuY3Rpb25Ub29sLm5hbWUpKSB7XG4gICAgICBjb25zb2xlLndhcm4oYEFJIGZ1bmN0aW9uIHRvb2wgJHtmdW5jdGlvblRvb2wubmFtZX0gYWxyZWFkeSBleGlzdHMgYW5kIHdpbGwgYmUgb3ZlcndyaXR0ZW4hYClcbiAgICB9XG4gICAgbW9kZWxzLnRvb2xNYXAuc2V0KGZ1bmN0aW9uVG9vbC5uYW1lLCBmdW5jdGlvblRvb2wuZm4pXG4gIH1cbn1cblxuZXhwb3J0IHsgQUkgfVxuIl19
146
+ var GO_TO_AI_TEXT = '请检查调用方式,或前往云开发 AI+ 首页查看文档:https://tcb.cloud.tencent.com/dev#/ai';
147
+ function handleResponseData(responseData, header) {
148
+ var _a;
149
+ return __awaiter(this, void 0, void 0, function () {
150
+ var json, json;
151
+ return __generator(this, function (_b) {
152
+ switch (_b.label) {
153
+ case 0:
154
+ if (!('then' in responseData)) return [3, 2];
155
+ return [4, responseData];
156
+ case 1:
157
+ json = (_b.sent());
158
+ if ('code' in json && json.code !== 'NORMAL') {
159
+ throw new Error("AI+ \u8BF7\u6C42\u51FA\u9519\uFF0C\u9519\u8BEF\u7801\uFF1A".concat(json.code, "\uFF0C\u9519\u8BEF\u4FE1\u606F\uFF1A").concat(json.message, "\n").concat(GO_TO_AI_TEXT, "\n").concat(JSON.stringify(json, null, 2)));
160
+ }
161
+ return [2, responseData];
162
+ case 2:
163
+ if (!((_a = header === null || header === void 0 ? void 0 : header.get('content-type')) === null || _a === void 0 ? void 0 : _a.includes('application/json'))) return [3, 4];
164
+ return [4, readableStream2JsonObject(responseData)];
165
+ case 3:
166
+ json = _b.sent();
167
+ throw new Error("AI+ \u8BF7\u6C42\u51FA\u9519\uFF0C\u9519\u8BEF\u7801\uFF1A".concat(json.code, "\uFF0C\u9519\u8BEF\u4FE1\u606F\uFF1A").concat(json.message, "\n").concat(GO_TO_AI_TEXT, "\n").concat(JSON.stringify(json, null, 2)));
168
+ case 4: return [2, responseData];
169
+ }
170
+ });
171
+ });
172
+ }
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQUkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBQzNCLE9BQU8sS0FBSyxNQUFNLE1BQU0sVUFBVSxDQUFBO0FBRWxDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUUzQyxJQUFBLE1BQU0sR0FBSyxNQUFNLE9BQVgsQ0FBVztBQUV6QjtJQUtFLFlBQW9CLEdBQXdCLEVBQVMsT0FBZTtRQUFwRSxpQkFJQztRQUptQixRQUFHLEdBQUgsR0FBRyxDQUFxQjtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFxQnBFLGlCQUFZLEdBQW1CLFVBQU8sRUFBOEI7Z0JBQTVCLEdBQUcsU0FBQSxFQUFFLElBQUksVUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE1BQU0sWUFBQTs7Ozs7OzRCQUMxRCxZQUFZLEdBQUc7Z0NBQ25CLGNBQWMsRUFBRSxrQkFBa0I7NkJBQ25DLENBQUE7NEJBRUQsTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQTs0QkFFOUIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztvQ0FDM0QsTUFBTSxFQUFFLE1BQU07b0NBQ2QsT0FBTyx3QkFBTyxZQUFZLEdBQUssT0FBTyxDQUFFO29DQUN4QyxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7b0NBQzFCLEdBQUcsS0FBQTtvQ0FDSCxNQUFNLFFBQUE7aUNBQ1AsQ0FBQyxFQUFBOzs0QkFOSSxLQUFpQyxDQUFDLFNBTXRDLENBQThFLEVBTmxFLFlBQVksVUFBQSxFQUFFLE1BQU0sWUFBQTs0QkFRbEMsV0FBTyxr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MUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRUFBZ0IsSUFBSSxDQUFDLElBQUksaURBQVMsSUFBSSxDQUFDLE9BQU8sZUFBSyxhQUFhLGVBQUssSUFBSSxDQUFDLFNBQVMsQ0FDakcsSUFBSSxFQUNKLElBQUksRUFDSixDQUFDLENBQ0YsQ0FBRSxDQUFFLENBQUE7d0JBRUwsV0FBTyxZQUFZLEVBQUE7Ozs7Q0FFdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNES1JlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgQm90IH0gZnJvbSAnLi9ib3QnXG5pbXBvcnQgKiBhcyBtb2RlbHMgZnJvbSAnLi9tb2RlbHMnXG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyByZWFkYWJsZVN0cmVhbTJKc29uT2JqZWN0IH0gZnJvbSAnLi91dGlscydcblxuY29uc3QgeyBNT0RFTFMgfSA9IG1vZGVsc1xuXG5jbGFzcyBBSSB7XG4gIHB1YmxpYyBhaUJhc2VVcmw6IHN0cmluZ1xuICBwdWJsaWMgYWlCb3RCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGJvdDogQm90XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXE6IFNES1JlcXVlc3RJbnRlcmZhY2UsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFpQmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYFxuICAgIHRoaXMuYWlCb3RCYXNlVXJsID0gYCR7YmFzZVVybH0vYWlib3RgXG4gICAgdGhpcy5ib3QgPSBuZXcgQm90KHRoaXMuYm90UmVxdWVzdCwgdGhpcy5haUJvdEJhc2VVcmwpXG4gIH1cblxuICBjcmVhdGVNb2RlbDxUIGV4dGVuZHMga2V5b2YgdHlwZW9mIE1PREVMUz4obW9kZWw6IFQpIHtcbiAgICBjb25zdCBTaW1wbGVNb2RlbENvbnN0cnVjdG9yID0gTU9ERUxTW21vZGVsXVxuICAgIGNvbnN0IHNpbXBsZU1vZGVsOiB0eXBlcy5TaW1wbGVDaGF0TW9kZWwgPSBuZXcgU2ltcGxlTW9kZWxDb25zdHJ1Y3Rvcih0aGlzLm1vZGVsUmVxdWVzdCwgdGhpcy5haUJhc2VVcmwpXG4gICAgY29uc3QgcmVhY3RNb2RlbCA9IG5ldyBtb2RlbHMuUmVhY3RNb2RlbChzaW1wbGVNb2RlbClcbiAgICByZXR1cm4gcmVhY3RNb2RlbFxuICB9XG5cbiAgcmVnaXN0ZXJNb2RlbChuYW1lOiBzdHJpbmcsIG1vZGVsOiB0eXBlcy5DaGF0TW9kZWxDb25zdHJ1Y3Rvcikge1xuICAgIGlmIChNT0RFTFNbbmFtZV0gIT0gbnVsbCkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBtb2RlbCAke25hbWV9IGFscmVhZHkgZXhpc3RzIWApXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgTU9ERUxTW25hbWVdID0gbW9kZWxcbiAgfVxuXG4gIG1vZGVsUmVxdWVzdDogdHlwZXMuTW9kZWxSZXEgPSBhc3luYyAoeyB1cmwsIGRhdGEsIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgY29uc3QgZmV0Y2hIZWFkZXJzID0ge1xuICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICB9XG4gICAgLy8g5bimIEFjY2VwdDogdGV4dC9ldmVudC1zdHJlYW0gIOivt+axguWktOaYvuW8j+aMh+WumuaYryBTU0Ug57uV6L+HIDYwcyDnmoTpmZDliLZcbiAgICBzdHJlYW0gJiYgT2JqZWN0LmFzc2lnbihmZXRjaEhlYWRlcnMsIHsgQWNjZXB0OiAndGV4dC9ldmVudC1zdHJlYW0nIH0pXG5cbiAgICBjb25zdCB7IGRhdGE6IHJlc3BvbnNlRGF0YSwgaGVhZGVyIH0gPSAoYXdhaXQgdGhpcy5yZXEuZmV0Y2goe1xuICAgICAgbWV0aG9kOiAncG9zdCcsXG4gICAgICBoZWFkZXJzOiB7IC4uLmZldGNoSGVhZGVycywgLi4uaGVhZGVycyB9LFxuICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXG4gICAgICB1cmwsXG4gICAgICBzdHJlYW0sXG4gICAgfSkpIGFzIHsgZGF0YTogUHJvbWlzZTx1bmtub3duPiB8IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+OyBoZWFkZXI/OiBIZWFkZXJzIH1cblxuICAgIHJldHVybiBoYW5kbGVSZXNwb25zZURhdGEocmVzcG9uc2VEYXRhLCBoZWFkZXIpIGFzIGFueVxuICB9XG5cbiAgYm90UmVxdWVzdDogdHlwZXMuQm90UmVxID0gYXN5bmMgKHsgbWV0aG9kLCB1cmwsIGRhdGEgPSB7fSwgaGVhZGVycywgc3RyZWFtIH0pID0+IHtcbiAgICBpZiAobWV0aG9kID09PSAnZ2V0Jykge1xuICAgICAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlRGF0YSgoYXdhaXQgdGhpcy5yZXEuZmV0Y2goeyB1cmw6IGAke3VybH0/JHtvYmplY3RUb1BhcmFtKGRhdGEpfWAsIG1ldGhvZCwgaGVhZGVycywgc3RyZWFtIH0pKS5kYXRhLClcbiAgICB9XG5cbiAgICBjb25zdCBmZXRjaEhlYWRlcnMgPSB7XG4gICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgIH1cbiAgICAvLyDluKYgQWNjZXB0OiB0ZXh0L2V2ZW50LXN0cmVhbSAg6K+35rGC5aS05pi+5byP5oyH5a6a5pivIFNTRSDnu5Xov4cgNjBzIOeahOmZkOWItlxuICAgIHN0cmVhbSAmJiBPYmplY3QuYXNzaWduKGZldGNoSGVhZGVycywgeyBBY2NlcHQ6ICd0ZXh0L2V2ZW50LXN0cmVhbScgfSlcblxuICAgIGNvbnN0IHsgZGF0YTogcmVzcG9uc2VEYXRhLCBoZWFkZXIgfSA9IChhd2FpdCB0aGlzLnJlcS5mZXRjaCh7XG4gICAgICB1cmwsXG4gICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgLi4uZmV0Y2hIZWFkZXJzLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIHN0cmVhbSxcbiAgICAgIG1ldGhvZCxcbiAgICB9KSkgYXMgeyBkYXRhOiBQcm9taXNlPHVua25vd24+IHwgUmVhZGFibGVTdHJlYW08VWludDhBcnJheT47IGhlYWRlcj86IEhlYWRlcnMgfVxuXG4gICAgcmV0dXJuIGhhbmRsZVJlc3BvbnNlRGF0YShyZXNwb25zZURhdGEsIGhlYWRlcikgYXMgYW55XG5cbiAgICBmdW5jdGlvbiBvYmplY3RUb1BhcmFtKG9iajogT2JqZWN0KSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZX1gKVxuICAgICAgICAuam9pbignJicpXG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJGdW5jdGlvblRvb2woZnVuY3Rpb25Ub29sOiB0eXBlcy5GdW5jdGlvblRvb2wpIHtcbiAgICBpZiAobW9kZWxzLnRvb2xNYXAuaGFzKGZ1bmN0aW9uVG9vbC5uYW1lKSkge1xuICAgICAgY29uc29sZS53YXJuKGBBSSBmdW5jdGlvbiB0b29sICR7ZnVuY3Rpb25Ub29sLm5hbWV9IGFscmVhZHkgZXhpc3RzIGFuZCB3aWxsIGJlIG92ZXJ3cml0dGVuIWApXG4gICAgfVxuICAgIG1vZGVscy50b29sTWFwLnNldChmdW5jdGlvblRvb2wubmFtZSwgZnVuY3Rpb25Ub29sLmZuKVxuICB9XG59XG5cbmV4cG9ydCB7IEFJIH1cblxuY29uc3QgR09fVE9fQUlfVEVYVCA9ICfor7fmo4Dmn6XosIPnlKjmlrnlvI/vvIzmiJbliY3lvoDkupHlvIDlj5EgQUkrIOmmlumhteafpeeci+aWh+aho++8mmh0dHBzOi8vdGNiLmNsb3VkLnRlbmNlbnQuY29tL2RldiMvYWknXG5cbmFzeW5jIGZ1bmN0aW9uIGhhbmRsZVJlc3BvbnNlRGF0YShyZXNwb25zZURhdGE6IFByb21pc2U8dW5rbm93bj4gfCBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5PiwgaGVhZGVyPzogSGVhZGVycykge1xuICBpZiAoJ3RoZW4nIGluIHJlc3BvbnNlRGF0YSkge1xuICAgIC8vIOmdnua1geW8j+ivt+axgu+8jOebtOaOpei/lOWbniBqc29uIOaVsOaNrlxuICAgIGNvbnN0IGpzb24gPSAoYXdhaXQgcmVzcG9uc2VEYXRhKSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgIGlmICgnY29kZScgaW4ganNvbiAmJiBqc29uLmNvZGUgIT09ICdOT1JNQUwnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEFJKyDor7fmsYLlh7rplJnvvIzplJnor6/noIHvvJoke2pzb24uY29kZX3vvIzplJnor6/kv6Hmga/vvJoke2pzb24ubWVzc2FnZX1cXG4ke0dPX1RPX0FJX1RFWFR9XFxuJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAganNvbixcbiAgICAgICAgbnVsbCxcbiAgICAgICAgMixcbiAgICAgICl9YCwpXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlRGF0YVxuICB9XG4gIC8vIOa1geW8j+ivt+axgu+8jOWmguaenOaOpeWPo+WHuumUme+8jOS8muWPmOaIkOS8oCBqc29uIOagvOW8j+eahOWTjeW6lO+8jOmAmui/hyBoZWFkZXIg5Yik5pat5qC85byPXG4gIGlmIChoZWFkZXI/LmdldCgnY29udGVudC10eXBlJyk/LmluY2x1ZGVzKCdhcHBsaWNhdGlvbi9qc29uJykpIHtcbiAgICBjb25zdCBqc29uID0gYXdhaXQgcmVhZGFibGVTdHJlYW0ySnNvbk9iamVjdChyZXNwb25zZURhdGEpXG4gICAgLy8g6YO96ZmN5Li6IGpzb24g5LqG77yM5bCx5LiN5Yik5patIGNvZGUg5LqG77yM55u05o6l5oqb5ZCnXG4gICAgdGhyb3cgbmV3IEVycm9yKGBBSSsg6K+35rGC5Ye66ZSZ77yM6ZSZ6K+v56CB77yaJHtqc29uLmNvZGV977yM6ZSZ6K+v5L+h5oGv77yaJHtqc29uLm1lc3NhZ2V9XFxuJHtHT19UT19BSV9URVhUfVxcbiR7SlNPTi5zdHJpbmdpZnkoXG4gICAgICBqc29uLFxuICAgICAgbnVsbCxcbiAgICAgIDIsXG4gICAgKX1gLClcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmVzcG9uc2VEYXRhXG4gIH1cbn1cbiJdfQ==
@@ -27,6 +27,8 @@ export declare class TextDecoderStream {
27
27
  }
28
28
  export declare function createAsyncIterable<T>(stream: ReadableStream<T>): AsyncIterableReadableStream<T>;
29
29
  export declare function intoStandardStream<T>(stream: ReadableStream<Uint8Array>): ReadableStream<T>;
30
+ export declare function intoTextStream(stream: ReadableStream<Uint8Array>): AsyncIterableReadableStream<string>;
31
+ export declare function readableStream2JsonObject(stream: ReadableStream): Promise<any>;
30
32
  export declare function createPromise<T = unknown>(): {
31
33
  promise: Promise<T>;
32
34
  res: (value: T | PromiseLike<T>) => void;
package/dist/esm/utils.js CHANGED
@@ -34,6 +34,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
34
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
35
  }
36
36
  };
37
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
38
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
39
+ var m = o[Symbol.asyncIterator], i;
40
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
41
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
42
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
43
+ };
37
44
  import { TransformStream as _TransformStream, ReadableStream as _ReadableStream } from 'web-streams-polyfill';
38
45
  import { createReadableStreamWrapper } from '@mattiasbuelens/web-streams-adapter';
39
46
  import { createParser } from './eventsource_parser';
@@ -163,6 +170,59 @@ export function intoStandardStream(stream) {
163
170
  },
164
171
  })));
165
172
  }
173
+ export function intoTextStream(stream) {
174
+ return createAsyncIterable(toPolyfillReadable(stream).pipeThrough(new TextDecoderStream()));
175
+ }
176
+ export function readableStream2JsonObject(stream) {
177
+ var _a, e_1, _b, _c;
178
+ return __awaiter(this, void 0, void 0, function () {
179
+ var s, total, _d, s_1, s_1_1, chunk, e_1_1;
180
+ return __generator(this, function (_e) {
181
+ switch (_e.label) {
182
+ case 0:
183
+ s = intoTextStream(stream);
184
+ total = '';
185
+ _e.label = 1;
186
+ case 1:
187
+ _e.trys.push([1, 6, 7, 12]);
188
+ _d = true, s_1 = __asyncValues(s);
189
+ _e.label = 2;
190
+ case 2: return [4, s_1.next()];
191
+ case 3:
192
+ if (!(s_1_1 = _e.sent(), _a = s_1_1.done, !_a)) return [3, 5];
193
+ _c = s_1_1.value;
194
+ _d = false;
195
+ try {
196
+ chunk = _c;
197
+ total += chunk;
198
+ }
199
+ finally {
200
+ _d = true;
201
+ }
202
+ _e.label = 4;
203
+ case 4: return [3, 2];
204
+ case 5: return [3, 12];
205
+ case 6:
206
+ e_1_1 = _e.sent();
207
+ e_1 = { error: e_1_1 };
208
+ return [3, 12];
209
+ case 7:
210
+ _e.trys.push([7, , 10, 11]);
211
+ if (!(!_d && !_a && (_b = s_1.return))) return [3, 9];
212
+ return [4, _b.call(s_1)];
213
+ case 8:
214
+ _e.sent();
215
+ _e.label = 9;
216
+ case 9: return [3, 11];
217
+ case 10:
218
+ if (e_1) throw e_1.error;
219
+ return [7];
220
+ case 11: return [7];
221
+ case 12: return [2, JSON.parse(total)];
222
+ }
223
+ });
224
+ });
225
+ }
166
226
  export function createPromise() {
167
227
  var res;
168
228
  var rej;
@@ -185,4 +245,4 @@ export function functionToolToModelTool(tool) {
185
245
  },
186
246
  };
187
247
  }
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLGVBQWUsSUFBSSxnQkFBZ0IsRUFBRSxjQUFjLElBQUksZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDN0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBNEMsTUFBTSxzQkFBc0IsQ0FBQTtBQVE3RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFFaEQsTUFBTSxDQUFDLElBQU0sY0FBYyxHQUFHLGVBVzdCLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxlQUFlLEdBQUcsZ0JBUTlCLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxzQ0FBc0MsR0FBRztJQUNwRCxJQUFJLE1BQTBCLENBQUE7SUFFOUIsT0FBTyxJQUFJLGVBQWUsQ0FBc0I7UUFDOUMsS0FBSyxZQUFDLFVBQVU7WUFDZCxNQUFNLEdBQUcsWUFBWSxDQUFDLFVBQUMsS0FBSztnQkFDMUIsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtvQkFDMUIsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtpQkFDMUI7WUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUM7UUFDRCxTQUFTLFlBQUMsS0FBSztZQUNiLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDcEIsQ0FBQztLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFNLGtCQUFrQixHQUFHLDJCQUEyQixDQUFDLGNBQWMsQ0FBQyxDQUFBO0FBRTdFO0lBcUJFLDJCQUFZLFFBQWtCLEVBQUUsT0FBZ0M7UUFBcEQseUJBQUEsRUFBQSxrQkFBa0I7UUFBRSx3QkFBQSxFQUFBLFlBQWdDO1FBQWhFLGlCQUVDO1FBcEJPLGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBQztZQUN0QyxTQUFTLEVBQUUsVUFBQyxLQUFLLEVBQUUsVUFBVTtnQkFDM0IsSUFBTSxLQUFLLEdBQUcsS0FBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtnQkFFekUsSUFBSSxLQUFLLEVBQUU7b0JBQ1QsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtpQkFDMUI7WUFDSCxDQUFDO1lBQ0QsS0FBSyxFQUFFLFVBQUMsVUFBVTtnQkFDaEIsSUFBTSxLQUFLLEdBQUcsS0FBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFDbEMsSUFBSSxLQUFLLEVBQUU7b0JBQ1QsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtpQkFDMUI7Z0JBRUQsVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFBO1lBQ3hCLENBQUM7U0FDRixDQUFDLENBQUE7UUFHQSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUNsRCxDQUFDO0lBRUQsc0JBQUksdUNBQVE7YUFBWjtZQUNFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUE7UUFDN0IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxvQ0FBSzthQUFUO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQTtRQUMxQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHdDQUFTO2FBQWI7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFBO1FBQzlCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksdUNBQVE7YUFBWjtZQUNFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUE7UUFDaEMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSx1Q0FBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQTtRQUNoQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDZCQUFDLE1BQU0sQ0FBQyxXQUFZO2FBQXhCO1lBQ0UsT0FBTyxtQkFBbUIsQ0FBQTtRQUM1QixDQUFDOzs7T0FBQTtJQUNILHdCQUFDO0FBQUQsQ0FBQyxBQWhERCxJQWdEQzs7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQUksTUFBeUI7SUFDOUQsSUFBTSxPQUFPLEdBQUcsTUFBd0MsQ0FBQTtJQUN4RCxPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxHQUFHO1FBQzlCLElBQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUNqQyxPQUFPO1lBQ0MsSUFBSTs7Ozs7b0NBQ2dCLFdBQU0sTUFBTSxDQUFDLElBQUksRUFBRSxFQUFBOztnQ0FBckMsS0FBa0IsU0FBbUIsRUFBbkMsSUFBSSxVQUFBLEVBQUUsS0FBSyxXQUFBO2dDQUNuQixXQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssT0FBQSxFQUFFLEVBQUE7Ozs7YUFDeEU7U0FDRixDQUFBO0lBQ0gsQ0FBQyxDQUFBO0lBQ0QsT0FBTyxPQUFPLENBQUE7QUFDaEIsQ0FBQztBQUtELE1BQU0sVUFBVSxrQkFBa0IsQ0FBSSxNQUFrQztJQUN0RSxPQUFPLG1CQUFtQixDQUFDLE1BQU07U0FDOUIsV0FBVyxDQUFDLElBQUksaUJBQWlCLEVBQUUsQ0FBQztTQUNwQyxXQUFXLENBQUMsc0NBQXNDLEVBQUUsQ0FBQztTQUNyRCxXQUFXLENBQUMsSUFBSSxlQUFlLENBQWlCO1FBQy9DLFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTtZQUN6QixJQUFJO2dCQUNGLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBTSxDQUFBO2dCQUN4QyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO2FBQ3pCO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtvQkFDM0IsT0FBTyxDQUFDLElBQUksQ0FBQyxtREFBbUQsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7aUJBQzVFO2FBQ0Y7UUFDSCxDQUFDO0tBQ0YsQ0FBQyxDQUFFLENBQUUsQ0FBQTtBQUNWLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYTtJQUMzQixJQUFJLEdBQXdDLENBQUE7SUFDNUMsSUFBSSxHQUEyQixDQUFBO0lBQy9CLElBQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFJLFVBQUMsT0FBTyxFQUFFLE1BQU07UUFDN0MsR0FBRyxHQUFHLE9BQU8sQ0FBQTtRQUNiLEdBQUcsR0FBRyxNQUFNLENBQUE7SUFDZCxDQUFDLENBQUMsQ0FBQTtJQUNGLE9BQU8sRUFBRSxPQUFPLFNBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxDQUFBO0FBQzlCLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsT0FBeUI7SUFDbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFBO0FBQ2pHLENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsSUFBa0I7SUFDeEQsT0FBTztRQUNMLElBQUksRUFBRSxVQUFVO1FBQ2hCLFFBQVEsRUFBRTtZQUNSLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDNUI7S0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zZm9ybVN0cmVhbSBhcyBfVHJhbnNmb3JtU3RyZWFtLCBSZWFkYWJsZVN0cmVhbSBhcyBfUmVhZGFibGVTdHJlYW0gfSBmcm9tICd3ZWItc3RyZWFtcy1wb2x5ZmlsbCdcbmltcG9ydCB7IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlciB9IGZyb20gJ0BtYXR0aWFzYnVlbGVucy93ZWItc3RyZWFtcy1hZGFwdGVyJ1xuaW1wb3J0IHsgY3JlYXRlUGFyc2VyLCB0eXBlIEV2ZW50U291cmNlUGFyc2VyLCB0eXBlIFBhcnNlZEV2ZW50IH0gZnJvbSAnLi9ldmVudHNvdXJjZV9wYXJzZXInXG5pbXBvcnQgdHlwZSB7XG4gIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbSxcbiAgQ2hhdE1vZGVsTWVzc2FnZSxcbiAgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlLFxuICBNb2RlbFRvb2wsXG4gIEZ1bmN0aW9uVG9vbCxcbn0gZnJvbSAnLi90eXBlJ1xuaW1wb3J0IHsgVGV4dERlY29kZXIgfSBmcm9tICd0ZXh0LWVuY29kaW5nLXNoaW0nXG5cbmV4cG9ydCBjb25zdCBSZWFkYWJsZVN0cmVhbSA9IF9SZWFkYWJsZVN0cmVhbSBhcyB7XG4gIHByb3RvdHlwZTogUmVhZGFibGVTdHJlYW1cblxuICBuZXcgKFxuICAgIHVuZGVybHlpbmdTb3VyY2U6IFVuZGVybHlpbmdCeXRlU291cmNlLFxuICAgIHN0cmF0ZWd5Pzoge1xuICAgICAgaGlnaFdhdGVyTWFyaz86IG51bWJlclxuICAgIH0sXG4gICk6IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+XG4gIG5ldyA8UiA9IGFueT4odW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0RlZmF1bHRTb3VyY2U8Uj4sIHN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PFI+KTogUmVhZGFibGVTdHJlYW08Uj5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlPzogVW5kZXJseWluZ1NvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxufVxuXG5leHBvcnQgY29uc3QgVHJhbnNmb3JtU3RyZWFtID0gX1RyYW5zZm9ybVN0cmVhbSBhcyB7XG4gIHByb3RvdHlwZTogVHJhbnNmb3JtU3RyZWFtXG5cbiAgbmV3IDxJID0gYW55LCBPID0gYW55PihcbiAgICB0cmFuc2Zvcm1lcj86IFRyYW5zZm9ybWVyPEksIE8+LFxuICAgIHdyaXRhYmxlU3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8ST4sXG4gICAgcmVhZGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxPPixcbiAgKTogVHJhbnNmb3JtU3RyZWFtPEksIE8+XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVFdmVudFNvdXJjZVBhcnNlclRyYW5zZm9ybVN0cmVhbSA9ICgpID0+IHtcbiAgbGV0IHBhcnNlciE6IEV2ZW50U291cmNlUGFyc2VyXG5cbiAgcmV0dXJuIG5ldyBUcmFuc2Zvcm1TdHJlYW08c3RyaW5nLCBQYXJzZWRFdmVudD4oe1xuICAgIHN0YXJ0KGNvbnRyb2xsZXIpIHtcbiAgICAgIHBhcnNlciA9IGNyZWF0ZVBhcnNlcigoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdldmVudCcpIHtcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSxcbiAgICB0cmFuc2Zvcm0oY2h1bmspIHtcbiAgICAgIHBhcnNlci5mZWVkKGNodW5rKVxuICAgIH0sXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCB0b1BvbHlmaWxsUmVhZGFibGUgPSBjcmVhdGVSZWFkYWJsZVN0cmVhbVdyYXBwZXIoUmVhZGFibGVTdHJlYW0pXG5cbmV4cG9ydCBjbGFzcyBUZXh0RGVjb2RlclN0cmVhbSB7XG4gIHByaXZhdGUgaGFuZGxlOiBUZXh0RGVjb2RlclxuXG4gIHByaXZhdGUgdHJhbnNmb3JtID0gbmV3IFRyYW5zZm9ybVN0cmVhbSh7XG4gICAgdHJhbnNmb3JtOiAoY2h1bmssIGNvbnRyb2xsZXIpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5oYW5kbGUuZGVjb2RlKG5ldyBVaW50OEFycmF5KGNodW5rKSwgeyBzdHJlYW06IHRydWUgfSlcblxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSh2YWx1ZSlcbiAgICAgIH1cbiAgICB9LFxuICAgIGZsdXNoOiAoY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUoKVxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSh2YWx1ZSlcbiAgICAgIH1cblxuICAgICAgY29udHJvbGxlci50ZXJtaW5hdGUoKVxuICAgIH0sXG4gIH0pXG5cbiAgY29uc3RydWN0b3IoZW5jb2RpbmcgPSAndXRmLTgnLCBvcHRpb25zOiBUZXh0RGVjb2Rlck9wdGlvbnMgPSB7fSkge1xuICAgIHRoaXMuaGFuZGxlID0gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nLCBvcHRpb25zKVxuICB9XG5cbiAgZ2V0IGVuY29kaW5nKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5lbmNvZGluZ1xuICB9XG5cbiAgZ2V0IGZhdGFsKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5mYXRhbFxuICB9XG5cbiAgZ2V0IGlnbm9yZUJPTSgpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuaWdub3JlQk9NXG4gIH1cblxuICBnZXQgcmVhZGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnJlYWRhYmxlXG4gIH1cblxuICBnZXQgd3JpdGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLndyaXRhYmxlXG4gIH1cblxuICBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10oKSB7XG4gICAgcmV0dXJuICdUZXh0RGVjb2RlclN0cmVhbSdcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQXN5bmNJdGVyYWJsZTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+KSB7XG4gIGNvbnN0IF9zdHJlYW0gPSBzdHJlYW0gYXMgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPFQ+XG4gIF9zdHJlYW1bU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gKCkgPT4ge1xuICAgIGNvbnN0IHJlYWRlciA9IHN0cmVhbS5nZXRSZWFkZXIoKVxuICAgIHJldHVybiB7XG4gICAgICBhc3luYyBuZXh0KCk6IFByb21pc2U8SXRlcmF0b3JSZXN1bHQ8VD4+IHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgcmVhZGVyLnJlYWQoKVxuICAgICAgICByZXR1cm4gZG9uZSA/IHsgZG9uZTogdHJ1ZSwgdmFsdWU6IHVuZGVmaW5lZCB9IDogeyBkb25lOiBmYWxzZSwgdmFsdWUgfVxuICAgICAgfSxcbiAgICB9XG4gIH1cbiAgcmV0dXJuIF9zdHJlYW1cbn1cblxuLyoqXG4gKiDlsIYgU1NFIOS6jOi/m+WItua1gei9rOaNouS4uiBUIOexu+Wei+eahOa1gVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW50b1N0YW5kYXJkU3RyZWFtPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pOiBSZWFkYWJsZVN0cmVhbTxUPiB7XG4gIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHN0cmVhbVxuICAgIC5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0oKSlcbiAgICAucGlwZVRocm91Z2goY3JlYXRlRXZlbnRTb3VyY2VQYXJzZXJUcmFuc2Zvcm1TdHJlYW0oKSlcbiAgICAucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxQYXJzZWRFdmVudCwgVD4oe1xuICAgICAgdHJhbnNmb3JtKGNodW5rLCBjb250cm9sbGVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoY2h1bmsuZGF0YSkgYXMgVFxuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShkYXRhKVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgaWYgKGNodW5rLmRhdGEgIT09ICdbRE9ORV0nKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0Vycm9yIHdoZW4gdHJhbnNmb3JtaW5nIGV2ZW50IHNvdXJjZSBkYXRhIHRvIGpzb24nLCBlLCBjaHVuaylcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlPFQgPSB1bmtub3duPigpIHtcbiAgbGV0IHJlczogKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pID0+IHZvaWRcbiAgbGV0IHJlajogKHJlYXNvbj86IGFueSkgPT4gdm9pZFxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcbiAgcmV0dXJuIHsgcHJvbWlzZSwgcmVzLCByZWogfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UobWVzc2FnZTogQ2hhdE1vZGVsTWVzc2FnZSk6IG1lc3NhZ2UgaXMgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlIHtcbiAgcmV0dXJuIG1lc3NhZ2Uucm9sZSA9PT0gJ2Fzc2lzdGFudCcgJiYgJ3Rvb2xfY2FsbHMnIGluIG1lc3NhZ2UgJiYgbWVzc2FnZS50b29sX2NhbGxzWzBdICE9IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1bmN0aW9uVG9vbFRvTW9kZWxUb29sKHRvb2w6IEZ1bmN0aW9uVG9vbCk6IE1vZGVsVG9vbCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBmdW5jdGlvbjoge1xuICAgICAgZGVzY3JpcHRpb246IHRvb2wuZGVzY3JpcHRpb24sXG4gICAgICBuYW1lOiB0b29sLm5hbWUsXG4gICAgICBwYXJhbWV0ZXJzOiB0b29sLnBhcmFtZXRlcnMsXG4gICAgfSxcbiAgfVxufVxuIl19
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQTRDLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRyxlQVc3QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sZUFBZSxHQUFHLGdCQVE5QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sc0NBQXNDLEdBQUc7SUFDcEQsSUFBSSxNQUEwQixDQUFBO0lBRTlCLE9BQU8sSUFBSSxlQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLFlBQVksQ0FBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUU3RTtJQXFCRSwyQkFBWSxRQUFrQixFQUFFLE9BQWdDO1FBQXBELHlCQUFB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LE9BQU8sRUFBRSxPQUFPLFNBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxHQUFHLEtBQUEsRUFBRSxDQUFBO0FBQzlCLENBQUM7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsT0FBeUI7SUFDbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFBO0FBQ2pHLENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsSUFBa0I7SUFDeEQsT0FBTztRQUNMLElBQUksRUFBRSxVQUFVO1FBQ2hCLFFBQVEsRUFBRTtZQUNSLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFDZixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7U0FDNUI7S0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zZm9ybVN0cmVhbSBhcyBfVHJhbnNmb3JtU3RyZWFtLCBSZWFkYWJsZVN0cmVhbSBhcyBfUmVhZGFibGVTdHJlYW0gfSBmcm9tICd3ZWItc3RyZWFtcy1wb2x5ZmlsbCdcbmltcG9ydCB7IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlciB9IGZyb20gJ0BtYXR0aWFzYnVlbGVucy93ZWItc3RyZWFtcy1hZGFwdGVyJ1xuaW1wb3J0IHsgY3JlYXRlUGFyc2VyLCB0eXBlIEV2ZW50U291cmNlUGFyc2VyLCB0eXBlIFBhcnNlZEV2ZW50IH0gZnJvbSAnLi9ldmVudHNvdXJjZV9wYXJzZXInXG5pbXBvcnQgdHlwZSB7XG4gIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbSxcbiAgQ2hhdE1vZGVsTWVzc2FnZSxcbiAgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlLFxuICBNb2RlbFRvb2wsXG4gIEZ1bmN0aW9uVG9vbCxcbn0gZnJvbSAnLi90eXBlJ1xuaW1wb3J0IHsgVGV4dERlY29kZXIgfSBmcm9tICd0ZXh0LWVuY29kaW5nLXNoaW0nXG5cbmV4cG9ydCBjb25zdCBSZWFkYWJsZVN0cmVhbSA9IF9SZWFkYWJsZVN0cmVhbSBhcyB7XG4gIHByb3RvdHlwZTogUmVhZGFibGVTdHJlYW1cblxuICBuZXcgKFxuICAgIHVuZGVybHlpbmdTb3VyY2U6IFVuZGVybHlpbmdCeXRlU291cmNlLFxuICAgIHN0cmF0ZWd5Pzoge1xuICAgICAgaGlnaFdhdGVyTWFyaz86IG51bWJlclxuICAgIH0sXG4gICk6IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+XG4gIG5ldyA8UiA9IGFueT4odW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0RlZmF1bHRTb3VyY2U8Uj4sIHN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PFI+KTogUmVhZGFibGVTdHJlYW08Uj5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlPzogVW5kZXJseWluZ1NvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxufVxuXG5leHBvcnQgY29uc3QgVHJhbnNmb3JtU3RyZWFtID0gX1RyYW5zZm9ybVN0cmVhbSBhcyB7XG4gIHByb3RvdHlwZTogVHJhbnNmb3JtU3RyZWFtXG5cbiAgbmV3IDxJID0gYW55LCBPID0gYW55PihcbiAgICB0cmFuc2Zvcm1lcj86IFRyYW5zZm9ybWVyPEksIE8+LFxuICAgIHdyaXRhYmxlU3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8ST4sXG4gICAgcmVhZGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxPPixcbiAgKTogVHJhbnNmb3JtU3RyZWFtPEksIE8+XG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVFdmVudFNvdXJjZVBhcnNlclRyYW5zZm9ybVN0cmVhbSA9ICgpID0+IHtcbiAgbGV0IHBhcnNlciE6IEV2ZW50U291cmNlUGFyc2VyXG5cbiAgcmV0dXJuIG5ldyBUcmFuc2Zvcm1TdHJlYW08c3RyaW5nLCBQYXJzZWRFdmVudD4oe1xuICAgIHN0YXJ0KGNvbnRyb2xsZXIpIHtcbiAgICAgIHBhcnNlciA9IGNyZWF0ZVBhcnNlcigoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdldmVudCcpIHtcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZXZlbnQpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfSxcbiAgICB0cmFuc2Zvcm0oY2h1bmspIHtcbiAgICAgIHBhcnNlci5mZWVkKGNodW5rKVxuICAgIH0sXG4gIH0pXG59XG5cbmV4cG9ydCBjb25zdCB0b1BvbHlmaWxsUmVhZGFibGUgPSBjcmVhdGVSZWFkYWJsZVN0cmVhbVdyYXBwZXIoUmVhZGFibGVTdHJlYW0pXG5cbmV4cG9ydCBjbGFzcyBUZXh0RGVjb2RlclN0cmVhbSB7XG4gIHByaXZhdGUgaGFuZGxlOiBUZXh0RGVjb2RlclxuXG4gIHByaXZhdGUgdHJhbnNmb3JtID0gbmV3IFRyYW5zZm9ybVN0cmVhbSh7XG4gICAgdHJhbnNmb3JtOiAoY2h1bmssIGNvbnRyb2xsZXIpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5oYW5kbGUuZGVjb2RlKG5ldyBVaW50OEFycmF5KGNodW5rKSwgeyBzdHJlYW06IHRydWUgfSlcblxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSh2YWx1ZSlcbiAgICAgIH1cbiAgICB9LFxuICAgIGZsdXNoOiAoY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUoKVxuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZSh2YWx1ZSlcbiAgICAgIH1cblxuICAgICAgY29udHJvbGxlci50ZXJtaW5hdGUoKVxuICAgIH0sXG4gIH0pXG5cbiAgY29uc3RydWN0b3IoZW5jb2RpbmcgPSAndXRmLTgnLCBvcHRpb25zOiBUZXh0RGVjb2Rlck9wdGlvbnMgPSB7fSkge1xuICAgIHRoaXMuaGFuZGxlID0gbmV3IFRleHREZWNvZGVyKGVuY29kaW5nLCBvcHRpb25zKVxuICB9XG5cbiAgZ2V0IGVuY29kaW5nKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5lbmNvZGluZ1xuICB9XG5cbiAgZ2V0IGZhdGFsKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5mYXRhbFxuICB9XG5cbiAgZ2V0IGlnbm9yZUJPTSgpIHtcbiAgICByZXR1cm4gdGhpcy5oYW5kbGUuaWdub3JlQk9NXG4gIH1cblxuICBnZXQgcmVhZGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLnJlYWRhYmxlXG4gIH1cblxuICBnZXQgd3JpdGFibGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtLndyaXRhYmxlXG4gIH1cblxuICBnZXQgW1N5bWJvbC50b1N0cmluZ1RhZ10oKSB7XG4gICAgcmV0dXJuICdUZXh0RGVjb2RlclN0cmVhbSdcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQXN5bmNJdGVyYWJsZTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFQ+KSB7XG4gIGNvbnN0IF9zdHJlYW0gPSBzdHJlYW0gYXMgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPFQ+XG4gIF9zdHJlYW1bU3ltYm9sLmFzeW5jSXRlcmF0b3JdID0gKCkgPT4ge1xuICAgIGNvbnN0IHJlYWRlciA9IHN0cmVhbS5nZXRSZWFkZXIoKVxuICAgIHJldHVybiB7XG4gICAgICBhc3luYyBuZXh0KCk6IFByb21pc2U8SXRlcmF0b3JSZXN1bHQ8VD4+IHtcbiAgICAgICAgY29uc3QgeyBkb25lLCB2YWx1ZSB9ID0gYXdhaXQgcmVhZGVyLnJlYWQoKVxuICAgICAgICByZXR1cm4gZG9uZSA/IHsgZG9uZTogdHJ1ZSwgdmFsdWU6IHVuZGVmaW5lZCB9IDogeyBkb25lOiBmYWxzZSwgdmFsdWUgfVxuICAgICAgfSxcbiAgICB9XG4gIH1cbiAgcmV0dXJuIF9zdHJlYW1cbn1cblxuLyoqXG4gKiDlsIYgU1NFIOS6jOi/m+WItua1gei9rOaNouS4uiBUIOexu+Wei+eahOa1gVxuICovXG5leHBvcnQgZnVuY3Rpb24gaW50b1N0YW5kYXJkU3RyZWFtPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pOiBSZWFkYWJsZVN0cmVhbTxUPiB7XG4gIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHN0cmVhbVxuICAgIC5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0oKSlcbiAgICAucGlwZVRocm91Z2goY3JlYXRlRXZlbnRTb3VyY2VQYXJzZXJUcmFuc2Zvcm1TdHJlYW0oKSlcbiAgICAucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxQYXJzZWRFdmVudCwgVD4oe1xuICAgICAgdHJhbnNmb3JtKGNodW5rLCBjb250cm9sbGVyKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoY2h1bmsuZGF0YSkgYXMgVFxuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShkYXRhKVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgaWYgKGNodW5rLmRhdGEgIT09ICdbRE9ORV0nKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ0Vycm9yIHdoZW4gdHJhbnNmb3JtaW5nIGV2ZW50IHNvdXJjZSBkYXRhIHRvIGpzb24nLCBlLCBjaHVuaylcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLrlrZfnrKbkuLLmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9UZXh0U3RyZWFtKHN0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pOiBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW08c3RyaW5nPiB7XG4gIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKCh0b1BvbHlmaWxsUmVhZGFibGUoc3RyZWFtKSBhcyB0eXBlb2Ygc3RyZWFtKS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0oKSkpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbTJKc29uT2JqZWN0KHN0cmVhbTogUmVhZGFibGVTdHJlYW0pIHtcbiAgY29uc3QgcyA9IGludG9UZXh0U3RyZWFtKHN0cmVhbSlcbiAgbGV0IHRvdGFsID0gJydcbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBzKSB7XG4gICAgdG90YWwgKz0gY2h1bmtcbiAgfVxuICByZXR1cm4gSlNPTi5wYXJzZSh0b3RhbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVByb21pc2U8VCA9IHVua25vd24+KCkge1xuICBsZXQgcmVzOiAodmFsdWU6IFQgfCBQcm9taXNlTGlrZTxUPikgPT4gdm9pZFxuICBsZXQgcmVqOiAocmVhc29uPzogYW55KSA9PiB2b2lkXG4gIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgcmVzID0gcmVzb2x2ZVxuICAgIHJlaiA9IHJlamVjdFxuICB9KVxuICByZXR1cm4geyBwcm9taXNlLCByZXMsIHJlaiB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Rvb2xDYWxsQXNzaXN0YW50TWVzc2FnZShtZXNzYWdlOiBDaGF0TW9kZWxNZXNzYWdlKTogbWVzc2FnZSBpcyBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2Uge1xuICByZXR1cm4gbWVzc2FnZS5yb2xlID09PSAnYXNzaXN0YW50JyAmJiAndG9vbF9jYWxscycgaW4gbWVzc2FnZSAmJiBtZXNzYWdlLnRvb2xfY2FsbHNbMF0gIT0gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnVuY3Rpb25Ub29sVG9Nb2RlbFRvb2wodG9vbDogRnVuY3Rpb25Ub29sKTogTW9kZWxUb29sIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIGZ1bmN0aW9uOiB7XG4gICAgICBkZXNjcmlwdGlvbjogdG9vbC5kZXNjcmlwdGlvbixcbiAgICAgIG5hbWU6IHRvb2wubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHRvb2wucGFyYW1ldGVycyxcbiAgICB9LFxuICB9XG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/ai",
3
- "version": "2.9.0",
3
+ "version": "2.9.1",
4
4
  "description": "cloudbase js sdk ai module",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -27,7 +27,7 @@
27
27
  "author": "",
28
28
  "license": "Apache-2.0",
29
29
  "dependencies": {
30
- "@cloudbase/types": "^2.9.0",
30
+ "@cloudbase/types": "^2.9.1",
31
31
  "@mattiasbuelens/web-streams-adapter": "^0.1.0",
32
32
  "text-encoding-shim": "^1.0.5",
33
33
  "web-streams-polyfill": "^4.0.0"
@@ -35,5 +35,5 @@
35
35
  "devDependencies": {
36
36
  "@cloudbase/adapter-interface": "^0.6.0"
37
37
  },
38
- "gitHead": "aff66120b898725227d9b451bff736ca1dac9cfc"
38
+ "gitHead": "911cb6e43f8474b1b6e20bf0ce6ab785cbb39210"
39
39
  }
package/src/AI.ts CHANGED
@@ -2,6 +2,7 @@ import type { SDKRequestInterface } from '@cloudbase/adapter-interface'
2
2
  import { Bot } from './bot'
3
3
  import * as models from './models'
4
4
  import * as types from './type'
5
+ import { readableStream2JsonObject } from './utils'
5
6
 
6
7
  const { MODELS } = models
7
8
 
@@ -38,20 +39,20 @@ class AI {
38
39
  // 带 Accept: text/event-stream 请求头显式指定是 SSE 绕过 60s 的限制
39
40
  stream && Object.assign(fetchHeaders, { Accept: 'text/event-stream' })
40
41
 
41
- return (
42
- await this.req.fetch({
43
- method: 'post',
44
- headers: { ...fetchHeaders, ...headers },
45
- body: JSON.stringify(data),
46
- url,
47
- stream,
48
- })
49
- ).data
42
+ const { data: responseData, header } = (await this.req.fetch({
43
+ method: 'post',
44
+ headers: { ...fetchHeaders, ...headers },
45
+ body: JSON.stringify(data),
46
+ url,
47
+ stream,
48
+ })) as { data: Promise<unknown> | ReadableStream<Uint8Array>; header?: Headers }
49
+
50
+ return handleResponseData(responseData, header) as any
50
51
  }
51
52
 
52
53
  botRequest: types.BotReq = async ({ method, url, data = {}, headers, stream }) => {
53
54
  if (method === 'get') {
54
- return (await this.req.fetch({ url: `${url}?${objectToParam(data)}`, method, headers, stream })).data
55
+ return handleResponseData((await this.req.fetch({ url: `${url}?${objectToParam(data)}`, method, headers, stream })).data,)
55
56
  }
56
57
 
57
58
  const fetchHeaders = {
@@ -60,18 +61,18 @@ class AI {
60
61
  // 带 Accept: text/event-stream 请求头显式指定是 SSE 绕过 60s 的限制
61
62
  stream && Object.assign(fetchHeaders, { Accept: 'text/event-stream' })
62
63
 
63
- return (
64
- await this.req.fetch({
65
- url,
66
- body: JSON.stringify(data),
67
- headers: {
68
- ...fetchHeaders,
69
- ...headers,
70
- },
71
- stream,
72
- method,
73
- })
74
- ).data
64
+ const { data: responseData, header } = (await this.req.fetch({
65
+ url,
66
+ body: JSON.stringify(data),
67
+ headers: {
68
+ ...fetchHeaders,
69
+ ...headers,
70
+ },
71
+ stream,
72
+ method,
73
+ })) as { data: Promise<unknown> | ReadableStream<Uint8Array>; header?: Headers }
74
+
75
+ return handleResponseData(responseData, header) as any
75
76
 
76
77
  function objectToParam(obj: Object) {
77
78
  return Object.entries(obj)
@@ -89,3 +90,33 @@ class AI {
89
90
  }
90
91
 
91
92
  export { AI }
93
+
94
+ const GO_TO_AI_TEXT = '请检查调用方式,或前往云开发 AI+ 首页查看文档:https://tcb.cloud.tencent.com/dev#/ai'
95
+
96
+ async function handleResponseData(responseData: Promise<unknown> | ReadableStream<Uint8Array>, header?: Headers) {
97
+ if ('then' in responseData) {
98
+ // 非流式请求,直接返回 json 数据
99
+ const json = (await responseData) as Record<string, unknown>
100
+ if ('code' in json && json.code !== 'NORMAL') {
101
+ throw new Error(`AI+ 请求出错,错误码:${json.code},错误信息:${json.message}\n${GO_TO_AI_TEXT}\n${JSON.stringify(
102
+ json,
103
+ null,
104
+ 2,
105
+ )}`,)
106
+ }
107
+
108
+ return responseData
109
+ }
110
+ // 流式请求,如果接口出错,会变成传 json 格式的响应,通过 header 判断格式
111
+ if (header?.get('content-type')?.includes('application/json')) {
112
+ const json = await readableStream2JsonObject(responseData)
113
+ // 都降为 json 了,就不判断 code 了,直接抛吧
114
+ throw new Error(`AI+ 请求出错,错误码:${json.code},错误信息:${json.message}\n${GO_TO_AI_TEXT}\n${JSON.stringify(
115
+ json,
116
+ null,
117
+ 2,
118
+ )}`,)
119
+ } else {
120
+ return responseData
121
+ }
122
+ }
package/src/utils.ts CHANGED
@@ -137,6 +137,22 @@ export function intoStandardStream<T>(stream: ReadableStream<Uint8Array>): Reada
137
137
  }),),)
138
138
  }
139
139
 
140
+ /**
141
+ * 将 SSE 二进制流转换为字符串流
142
+ */
143
+ export function intoTextStream(stream: ReadableStream<Uint8Array>): AsyncIterableReadableStream<string> {
144
+ return createAsyncIterable((toPolyfillReadable(stream) as typeof stream).pipeThrough(new TextDecoderStream()))
145
+ }
146
+
147
+ export async function readableStream2JsonObject(stream: ReadableStream) {
148
+ const s = intoTextStream(stream)
149
+ let total = ''
150
+ for await (const chunk of s) {
151
+ total += chunk
152
+ }
153
+ return JSON.parse(total)
154
+ }
155
+
140
156
  export function createPromise<T = unknown>() {
141
157
  let res: (value: T | PromiseLike<T>) => void
142
158
  let rej: (reason?: any) => void