@cloudbase/ai 2.8.21-beta.0 → 2.8.23-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 (106) hide show
  1. package/dist/cjs/AI.d.ts +27 -0
  2. package/dist/cjs/AI.js +154 -0
  3. package/dist/cjs/index.d.ts +13 -38
  4. package/dist/cjs/index.js +9 -73
  5. package/dist/cjs/models/Ark/index.d.ts +4 -18
  6. package/dist/cjs/models/Ark/index.js +45 -82
  7. package/dist/cjs/models/Ark/type.d.ts +52 -19
  8. package/dist/cjs/models/Ark/type.js +1 -1
  9. package/dist/cjs/models/DashScope/index.d.ts +4 -18
  10. package/dist/cjs/models/DashScope/index.js +45 -82
  11. package/dist/cjs/models/DashScope/type.d.ts +55 -24
  12. package/dist/cjs/models/DashScope/type.js +1 -1
  13. package/dist/cjs/models/HunYuan/index.d.ts +4 -19
  14. package/dist/cjs/models/HunYuan/index.js +47 -107
  15. package/dist/cjs/models/HunYuan/type.d.ts +68 -48
  16. package/dist/cjs/models/HunYuan/type.js +1 -1
  17. package/dist/cjs/models/HunYuan/util.d.ts +4 -0
  18. package/dist/cjs/models/HunYuan/util.js +58 -0
  19. package/dist/cjs/models/HunYuanBeta/index.d.ts +4 -19
  20. package/dist/cjs/models/HunYuanBeta/index.js +42 -110
  21. package/dist/cjs/models/Moonshot/index.d.ts +4 -18
  22. package/dist/cjs/models/Moonshot/index.js +45 -82
  23. package/dist/cjs/models/Moonshot/type.d.ts +63 -9
  24. package/dist/cjs/models/Moonshot/type.js +1 -1
  25. package/dist/cjs/models/Yi/index.d.ts +4 -18
  26. package/dist/cjs/models/Yi/index.js +48 -82
  27. package/dist/cjs/models/Yi/type.d.ts +41 -15
  28. package/dist/cjs/models/Yi/type.js +1 -1
  29. package/dist/cjs/models/ZhiPu/index.d.ts +4 -18
  30. package/dist/cjs/models/ZhiPu/index.js +59 -87
  31. package/dist/cjs/models/ZhiPu/type.d.ts +19 -19
  32. package/dist/cjs/models/ZhiPu/type.js +1 -1
  33. package/dist/cjs/models/index.d.ts +16 -15
  34. package/dist/cjs/models/index.js +26 -23
  35. package/dist/cjs/models/model.d.ts +38 -0
  36. package/dist/cjs/models/model.js +481 -0
  37. package/dist/cjs/type.d.ts +76 -15
  38. package/dist/cjs/type.js +6 -12
  39. package/dist/cjs/utils.d.ts +9 -1
  40. package/dist/cjs/utils.js +46 -2
  41. package/dist/esm/AI.d.ts +27 -0
  42. package/dist/esm/AI.js +128 -0
  43. package/dist/esm/index.d.ts +13 -38
  44. package/dist/esm/index.js +4 -70
  45. package/dist/esm/models/Ark/index.d.ts +4 -18
  46. package/dist/esm/models/Ark/index.js +45 -82
  47. package/dist/esm/models/Ark/type.d.ts +52 -19
  48. package/dist/esm/models/Ark/type.js +1 -1
  49. package/dist/esm/models/DashScope/index.d.ts +4 -18
  50. package/dist/esm/models/DashScope/index.js +45 -82
  51. package/dist/esm/models/DashScope/type.d.ts +55 -24
  52. package/dist/esm/models/DashScope/type.js +1 -1
  53. package/dist/esm/models/HunYuan/index.d.ts +4 -19
  54. package/dist/esm/models/HunYuan/index.js +47 -107
  55. package/dist/esm/models/HunYuan/type.d.ts +68 -48
  56. package/dist/esm/models/HunYuan/type.js +1 -1
  57. package/dist/esm/models/HunYuan/util.d.ts +4 -0
  58. package/dist/esm/models/HunYuan/util.js +53 -0
  59. package/dist/esm/models/HunYuanBeta/index.d.ts +4 -19
  60. package/dist/esm/models/HunYuanBeta/index.js +42 -110
  61. package/dist/esm/models/Moonshot/index.d.ts +4 -18
  62. package/dist/esm/models/Moonshot/index.js +45 -82
  63. package/dist/esm/models/Moonshot/type.d.ts +63 -9
  64. package/dist/esm/models/Moonshot/type.js +1 -1
  65. package/dist/esm/models/Yi/index.d.ts +4 -18
  66. package/dist/esm/models/Yi/index.js +48 -82
  67. package/dist/esm/models/Yi/type.d.ts +41 -15
  68. package/dist/esm/models/Yi/type.js +1 -1
  69. package/dist/esm/models/ZhiPu/index.d.ts +4 -18
  70. package/dist/esm/models/ZhiPu/index.js +59 -87
  71. package/dist/esm/models/ZhiPu/type.d.ts +19 -19
  72. package/dist/esm/models/ZhiPu/type.js +1 -1
  73. package/dist/esm/models/index.d.ts +16 -15
  74. package/dist/esm/models/index.js +17 -16
  75. package/dist/esm/models/model.d.ts +38 -0
  76. package/dist/esm/models/model.js +478 -0
  77. package/dist/esm/type.d.ts +76 -15
  78. package/dist/esm/type.js +5 -11
  79. package/dist/esm/utils.d.ts +9 -1
  80. package/dist/esm/utils.js +41 -1
  81. package/package.json +3 -3
  82. package/src/AI.ts +77 -0
  83. package/src/index.ts +3 -60
  84. package/src/models/Ark/index.ts +52 -54
  85. package/src/models/Ark/type.ts +60 -19
  86. package/src/models/DashScope/index.ts +56 -55
  87. package/src/models/DashScope/type.ts +63 -21
  88. package/src/models/HunYuan/index.ts +44 -67
  89. package/src/models/HunYuan/type.ts +68 -46
  90. package/src/models/HunYuan/util.ts +59 -0
  91. package/src/models/HunYuanBeta/index.ts +41 -75
  92. package/src/models/Moonshot/index.ts +52 -54
  93. package/src/models/Moonshot/type.ts +61 -7
  94. package/src/models/Yi/index.ts +59 -55
  95. package/src/models/Yi/type.ts +47 -19
  96. package/src/models/ZhiPu/index.ts +60 -52
  97. package/src/models/ZhiPu/type.ts +20 -9
  98. package/src/models/index.ts +25 -15
  99. package/src/models/model.ts +415 -0
  100. package/src/type.ts +100 -13
  101. package/src/utils.ts +53 -1
  102. package/dist/cjs/models/HunYuanBeta/type.d.ts +0 -52
  103. package/dist/cjs/models/HunYuanBeta/type.js +0 -3
  104. package/dist/esm/models/HunYuanBeta/type.d.ts +0 -52
  105. package/dist/esm/models/HunYuanBeta/type.js +0 -2
  106. package/src/models/HunYuanBeta/type.ts +0 -61
@@ -0,0 +1,27 @@
1
+ import type { SDKRequestInterface } from '@cloudbase/adapter-interface';
2
+ import { Bot } from './bot';
3
+ import * as models from './models';
4
+ import * as types from './type';
5
+ declare const MODELS: {
6
+ hunyuan: typeof models.HunYuanSimpleModel;
7
+ 'hunyuan-beta': typeof models.HunYuanBetaSimpleModel;
8
+ ark: typeof models.ArkSimpleModel;
9
+ dashscope: typeof models.DSSimpleModel;
10
+ '01-ai': typeof models.YiSimpleModel;
11
+ moonshot: typeof models.MoonshotSimpleModel;
12
+ zhipu: typeof models.ZhiPuSimpleModel;
13
+ };
14
+ declare class AI {
15
+ private req;
16
+ baseUrl: string;
17
+ aiBaseUrl: string;
18
+ aiBotBaseUrl: string;
19
+ bot: Bot;
20
+ constructor(req: SDKRequestInterface, baseUrl: string);
21
+ createModel<T extends keyof typeof MODELS>(model: T): models.ReactModel;
22
+ registerModel(name: string, model: types.ChatModelConstructor): void;
23
+ modelRequest: types.ModelReq;
24
+ botRequest: types.BotReq;
25
+ registerFunctionTool(functionTool: types.FunctionTool): void;
26
+ }
27
+ export { AI };
package/dist/cjs/AI.js ADDED
@@ -0,0 +1,154 @@
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
+ return new (P || (P = Promise))(function (resolve, reject) {
39
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
40
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
41
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
42
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
43
+ });
44
+ };
45
+ var __generator = (this && this.__generator) || function (thisArg, body) {
46
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
47
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
48
+ function verb(n) { return function (v) { return step([n, v]); }; }
49
+ function step(op) {
50
+ if (f) throw new TypeError("Generator is already executing.");
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
+ 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;
53
+ if (y = 0, t) op = [op[0] & 2, t.value];
54
+ switch (op[0]) {
55
+ case 0: case 1: t = op; break;
56
+ case 4: _.label++; return { value: op[1], done: false };
57
+ case 5: _.label++; y = op[1]; op = [0]; continue;
58
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
59
+ default:
60
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
61
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
62
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
63
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
64
+ if (t[2]) _.ops.pop();
65
+ _.trys.pop(); continue;
66
+ }
67
+ op = body.call(thisArg, _);
68
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
69
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
70
+ }
71
+ };
72
+ Object.defineProperty(exports, "__esModule", { value: true });
73
+ exports.AI = void 0;
74
+ var bot_1 = require("./bot");
75
+ var models = __importStar(require("./models"));
76
+ var MODELS = models.MODELS;
77
+ var AI = (function () {
78
+ function AI(req, baseUrl) {
79
+ var _this = this;
80
+ this.req = req;
81
+ this.baseUrl = baseUrl;
82
+ this.modelRequest = function (_a) {
83
+ var url = _a.url, data = _a.data, headers = _a.headers, stream = _a.stream;
84
+ return __awaiter(_this, void 0, void 0, function () {
85
+ return __generator(this, function (_b) {
86
+ switch (_b.label) {
87
+ case 0: return [4, this.req.fetch({
88
+ method: 'post',
89
+ headers: __assign({ 'Content-Type': 'application/json' }, headers),
90
+ body: JSON.stringify(data),
91
+ url: url,
92
+ stream: stream,
93
+ })];
94
+ case 1: return [2, (_b.sent()).data];
95
+ }
96
+ });
97
+ });
98
+ };
99
+ this.botRequest = function (_a) {
100
+ var method = _a.method, url = _a.url, _b = _a.data, data = _b === void 0 ? {} : _b, headers = _a.headers, stream = _a.stream;
101
+ return __awaiter(_this, void 0, void 0, function () {
102
+ function objectToParam(obj) {
103
+ return Object.entries(obj)
104
+ .map(function (_a) {
105
+ var key = _a[0], value = _a[1];
106
+ return "".concat(key, "=").concat(value);
107
+ })
108
+ .join('&');
109
+ }
110
+ return __generator(this, function (_c) {
111
+ switch (_c.label) {
112
+ case 0:
113
+ if (!(method === 'get')) return [3, 2];
114
+ return [4, this.req.fetch({ url: "".concat(url, "?").concat(objectToParam(data)), method: method, headers: headers, stream: stream })];
115
+ case 1: return [2, (_c.sent()).data];
116
+ case 2: return [4, this.req.fetch({
117
+ url: url,
118
+ body: JSON.stringify(data),
119
+ headers: __assign({ 'Content-Type': 'application/json' }, headers),
120
+ stream: stream,
121
+ method: method,
122
+ })];
123
+ case 3: return [2, (_c.sent()).data];
124
+ }
125
+ });
126
+ });
127
+ };
128
+ this.aiBaseUrl = "".concat(baseUrl, "/ai");
129
+ this.aiBotBaseUrl = "".concat(baseUrl, "/aibot");
130
+ this.bot = new bot_1.Bot(this.botRequest, this.aiBotBaseUrl);
131
+ }
132
+ AI.prototype.createModel = function (model) {
133
+ var SimpleModelConstructor = MODELS[model];
134
+ var simpleModel = new SimpleModelConstructor(this.modelRequest, this.aiBaseUrl);
135
+ var reactModel = new models.ReactModel(simpleModel);
136
+ return reactModel;
137
+ };
138
+ AI.prototype.registerModel = function (name, model) {
139
+ if (MODELS[name] != null) {
140
+ console.warn("AI model ".concat(name, " already exists!"));
141
+ return;
142
+ }
143
+ MODELS[name] = model;
144
+ };
145
+ AI.prototype.registerFunctionTool = function (functionTool) {
146
+ if (models.toolMap.has(functionTool.name)) {
147
+ console.warn("AI function tool ".concat(functionTool.name, " already exists and will be overwritten!"));
148
+ }
149
+ models.toolMap.set(functionTool.name, functionTool.fn);
150
+ };
151
+ return AI;
152
+ }());
153
+ exports.AI = AI;
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQUkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQUkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLDZCQUEyQjtBQUMzQiwrQ0FBa0M7QUFHMUIsSUFBQSxNQUFNLEdBQUssTUFBTSxPQUFYLENBQVc7QUFFekI7SUFLRSxZQUFvQixHQUF3QixFQUFTLE9BQWU7UUFBcEUsaUJBSUM7UUFKbUIsUUFBRyxHQUFILEdBQUcsQ0FBcUI7UUFBUyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBcUJwRSxpQkFBWSxHQUFtQixVQUFPLEVBQThCO2dCQUE1QixHQUFHLFNBQUEsRUFBRSxJQUFJLFVBQUEsRUFBRSxPQUFPLGFBQUEsRUFBRSxNQUFNLFlBQUE7Ozs7Z0NBQ2hFLFdBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUM7Z0NBQ25CLE1BQU0sRUFBRSxNQUFNO2dDQUNkLE9BQU8sYUFDTCxjQUFjLEVBQUUsa0JBQWtCLElBQy9CLE9BQU8sQ0FDWDtnQ0FDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0NBQzFCLEdBQUcsS0FBQTtnQ0FDSCxNQUFNLFFBQUE7NkJBQ1AsQ0FBQyxFQUFBO2dDQVZxRSxXQUFBLENBQ3ZFLFNBU0UsQ0FDSCxDQUFDLElBQUksRUFBQTs7OztTQUFBLENBQUE7UUFFTixlQUFVLEdBQWlCLFVBQU8sRUFBMkM7Z0JBQXpDLE1BQU0sWUFBQSxFQUFFLEdBQUcsU0FBQSxFQUFFLFlBQVMsRUFBVCxJQUFJLG1CQUFHLEVBQUUsS0FBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE1BQU0sWUFBQTs7Z0JBZXpFLFNBQVMsYUFBYSxDQUFDLEdBQVc7b0JBQ2hDLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7eUJBQ3ZCLEdBQUcsQ0FBQyxVQUFDLEVBQVk7NEJBQVgsR0FBRyxRQUFBLEVBQUUsS0FBSyxRQUFBO3dCQUFNLE9BQUEsVUFBRyxHQUFHLGNBQUksS0FBSyxDQUFFO29CQUFqQixDQUFpQixDQUFDO3lCQUN4QyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ2QsQ0FBQzs7OztpQ0FsQkcsQ0FBQSxNQUFNLEtBQUssS0FBSyxDQUFBLEVBQWhCLGNBQWdCOzRCQUNWLFdBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBRyxHQUFHLGNBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFFLEVBQUUsTUFBTSxRQUFBLEVBQUUsT0FBTyxTQUFBLEVBQUUsTUFBTSxRQUFBLEVBQUUsQ0FBQyxFQUFBO2dDQUEvRixXQUFPLENBQUMsU0FBdUYsQ0FBQyxDQUFDLElBQUksRUFBQTtnQ0FJckcsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztnQ0FDbkIsR0FBRyxLQUFBO2dDQUNILElBQUksRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQztnQ0FDMUIsT0FBTyxhQUFJLGNBQWMsRUFBRSxrQkFBa0IsSUFBSyxPQUFPLENBQUU7Z0NBQzNELE1BQU0sUUFBQTtnQ0FDTixNQUFNLFFBQUE7NkJBQ1AsQ0FBQyxFQUFBO2dDQVBKLFdBQU8sQ0FDTCxTQU1FLENBQ0gsQ0FBQyxJQUFJLEVBQUE7Ozs7U0FPUCxDQUFBO1FBckRDLElBQUksQ0FBQyxTQUFTLEdBQUcsVUFBRyxPQUFPLFFBQUssQ0FBQTtRQUNoQyxJQUFJLENBQUMsWUFBWSxHQUFHLFVBQUcsT0FBTyxXQUFRLENBQUE7UUFDdEMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUN4RCxDQUFDO0lBRUQsd0JBQVcsR0FBWCxVQUEyQyxLQUFRO1FBQ2pELElBQU0sc0JBQXNCLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQzVDLElBQU0sV0FBVyxHQUEwQixJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ3hHLElBQU0sVUFBVSxHQUFHLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNyRCxPQUFPLFVBQVUsQ0FBQTtJQUNuQixDQUFDO0lBRUQsMEJBQWEsR0FBYixVQUFjLElBQVksRUFBRSxLQUFpQztRQUMzRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFDeEIsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBWSxJQUFJLHFCQUFrQixDQUFDLENBQUE7WUFDaEQsT0FBTTtTQUNQO1FBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQTtJQUN0QixDQUFDO0lBcUNELGlDQUFvQixHQUFwQixVQUFxQixZQUFnQztRQUNuRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN6QyxPQUFPLENBQUMsSUFBSSxDQUFDLDJCQUFvQixZQUFZLENBQUMsSUFBSSw2Q0FBMEMsQ0FBQyxDQUFBO1NBQzlGO1FBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDeEQsQ0FBQztJQUNILFNBQUM7QUFBRCxDQUFDLEFBbkVELElBbUVDO0FBRVEsZ0JBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNES1JlcXVlc3RJbnRlcmZhY2UgfSBmcm9tICdAY2xvdWRiYXNlL2FkYXB0ZXItaW50ZXJmYWNlJ1xuaW1wb3J0IHsgQm90IH0gZnJvbSAnLi9ib3QnXG5pbXBvcnQgKiBhcyBtb2RlbHMgZnJvbSAnLi9tb2RlbHMnXG5pbXBvcnQgKiBhcyB0eXBlcyBmcm9tICcuL3R5cGUnXG5cbmNvbnN0IHsgTU9ERUxTIH0gPSBtb2RlbHNcblxuY2xhc3MgQUkge1xuICBwdWJsaWMgYWlCYXNlVXJsOiBzdHJpbmdcbiAgcHVibGljIGFpQm90QmFzZVVybDogc3RyaW5nXG4gIHB1YmxpYyBib3Q6IEJvdFxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlLCBwdWJsaWMgYmFzZVVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5haUJhc2VVcmwgPSBgJHtiYXNlVXJsfS9haWBcbiAgICB0aGlzLmFpQm90QmFzZVVybCA9IGAke2Jhc2VVcmx9L2FpYm90YFxuICAgIHRoaXMuYm90ID0gbmV3IEJvdCh0aGlzLmJvdFJlcXVlc3QsIHRoaXMuYWlCb3RCYXNlVXJsKVxuICB9XG5cbiAgY3JlYXRlTW9kZWw8VCBleHRlbmRzIGtleW9mIHR5cGVvZiBNT0RFTFM+KG1vZGVsOiBUKSB7XG4gICAgY29uc3QgU2ltcGxlTW9kZWxDb25zdHJ1Y3RvciA9IE1PREVMU1ttb2RlbF1cbiAgICBjb25zdCBzaW1wbGVNb2RlbDogdHlwZXMuU2ltcGxlQ2hhdE1vZGVsID0gbmV3IFNpbXBsZU1vZGVsQ29uc3RydWN0b3IodGhpcy5tb2RlbFJlcXVlc3QsIHRoaXMuYWlCYXNlVXJsKVxuICAgIGNvbnN0IHJlYWN0TW9kZWwgPSBuZXcgbW9kZWxzLlJlYWN0TW9kZWwoc2ltcGxlTW9kZWwpXG4gICAgcmV0dXJuIHJlYWN0TW9kZWxcbiAgfVxuXG4gIHJlZ2lzdGVyTW9kZWwobmFtZTogc3RyaW5nLCBtb2RlbDogdHlwZXMuQ2hhdE1vZGVsQ29uc3RydWN0b3IpIHtcbiAgICBpZiAoTU9ERUxTW25hbWVdICE9IG51bGwpIHtcbiAgICAgIGNvbnNvbGUud2FybihgQUkgbW9kZWwgJHtuYW1lfSBhbHJlYWR5IGV4aXN0cyFgKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIE1PREVMU1tuYW1lXSA9IG1vZGVsXG4gIH1cblxuICBtb2RlbFJlcXVlc3Q6IHR5cGVzLk1vZGVsUmVxID0gYXN5bmMgKHsgdXJsLCBkYXRhLCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4gKFxuICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgaGVhZGVyczoge1xuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGRhdGEpLFxuICAgICAgdXJsLFxuICAgICAgc3RyZWFtLFxuICAgIH0pXG4gICkuZGF0YVxuXG4gIGJvdFJlcXVlc3Q6IHR5cGVzLkJvdFJlcSA9IGFzeW5jICh7IG1ldGhvZCwgdXJsLCBkYXRhID0ge30sIGhlYWRlcnMsIHN0cmVhbSB9KSA9PiB7XG4gICAgaWYgKG1ldGhvZCA9PT0gJ2dldCcpIHtcbiAgICAgIHJldHVybiAoYXdhaXQgdGhpcy5yZXEuZmV0Y2goeyB1cmw6IGAke3VybH0/JHtvYmplY3RUb1BhcmFtKGRhdGEpfWAsIG1ldGhvZCwgaGVhZGVycywgc3RyZWFtIH0pKS5kYXRhXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIGF3YWl0IHRoaXMucmVxLmZldGNoKHtcbiAgICAgICAgdXJsLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgICAgaGVhZGVyczogeyAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLCAuLi5oZWFkZXJzIH0sXG4gICAgICAgIHN0cmVhbSxcbiAgICAgICAgbWV0aG9kLFxuICAgICAgfSlcbiAgICApLmRhdGFcblxuICAgIGZ1bmN0aW9uIG9iamVjdFRvUGFyYW0ob2JqOiBPYmplY3QpIHtcbiAgICAgIHJldHVybiBPYmplY3QuZW50cmllcyhvYmopXG4gICAgICAgIC5tYXAoKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fT0ke3ZhbHVlfWApXG4gICAgICAgIC5qb2luKCcmJylcbiAgICB9XG4gIH1cblxuICByZWdpc3RlckZ1bmN0aW9uVG9vbChmdW5jdGlvblRvb2w6IHR5cGVzLkZ1bmN0aW9uVG9vbCkge1xuICAgIGlmIChtb2RlbHMudG9vbE1hcC5oYXMoZnVuY3Rpb25Ub29sLm5hbWUpKSB7XG4gICAgICBjb25zb2xlLndhcm4oYEFJIGZ1bmN0aW9uIHRvb2wgJHtmdW5jdGlvblRvb2wubmFtZX0gYWxyZWFkeSBleGlzdHMgYW5kIHdpbGwgYmUgb3ZlcndyaXR0ZW4hYClcbiAgICB9XG4gICAgbW9kZWxzLnRvb2xNYXAuc2V0KGZ1bmN0aW9uVG9vbC5uYW1lLCBmdW5jdGlvblRvb2wuZm4pXG4gIH1cbn1cblxuZXhwb3J0IHsgQUkgfVxuIl19
@@ -1,46 +1,20 @@
1
1
  import type { SDKRequestInterface } from '@cloudbase/adapter-interface';
2
2
  import type { ICloudbase } from '@cloudbase/types';
3
+ import { AI } from './AI';
3
4
  import { Bot } from './bot';
4
5
  import * as models from './models';
5
- import * as types from './type';
6
6
  import * as utils from './utils';
7
- declare const MODELS: {
8
- hunyuan: typeof models.HunYuanModel;
9
- 'hunyuan-beta': typeof models.HunYuanBetaModel;
10
- ark: typeof models.ArkModel;
11
- dashscope: typeof models.DashScopeModel;
12
- '01-ai': typeof models.YiModel;
13
- moonshot: typeof models.MoonshotModel;
14
- zhipu: typeof models.ZhiPuModel;
15
- }, restModels: {
16
- HunYuanModel: typeof models.HunYuanModel;
17
- HunYuanBetaModel: typeof models.HunYuanBetaModel;
18
- ArkModel: typeof models.ArkModel;
19
- DashScopeModel: typeof models.DashScopeModel;
20
- YiModel: typeof models.YiModel;
21
- MoonshotModel: typeof models.MoonshotModel;
22
- ZhiPuModel: typeof models.ZhiPuModel;
7
+ declare const restModels: {
8
+ ZhiPuSimpleModel: typeof models.ZhiPuSimpleModel;
9
+ HunYuanBetaSimpleModel: typeof models.HunYuanBetaSimpleModel;
10
+ HunYuanSimpleModel: typeof models.HunYuanSimpleModel;
11
+ ArkSimpleModel: typeof models.ArkSimpleModel;
12
+ DSSimpleModel: typeof models.DSSimpleModel;
13
+ YiSimpleModel: typeof models.YiSimpleModel;
14
+ MoonshotSimpleModel: typeof models.MoonshotSimpleModel;
15
+ ReactModel: typeof models.ReactModel;
16
+ toolMap: Map<string, CallableFunction>;
23
17
  };
24
- declare class AI {
25
- private req;
26
- baseUrl: string;
27
- aiBaseUrl: string;
28
- aiBotBaseUrl: string;
29
- bot: Bot;
30
- constructor(req: SDKRequestInterface, baseUrl: string);
31
- createModel<T extends keyof typeof MODELS>(model: T): InstanceType<{
32
- hunyuan: typeof models.HunYuanModel;
33
- 'hunyuan-beta': typeof models.HunYuanBetaModel;
34
- ark: typeof models.ArkModel;
35
- dashscope: typeof models.DashScopeModel;
36
- '01-ai': typeof models.YiModel;
37
- moonshot: typeof models.MoonshotModel;
38
- zhipu: typeof models.ZhiPuModel;
39
- }[T]>;
40
- registerModel(name: string, model: types.ChatModelConstructor): void;
41
- modelRequest: types.ModelReq;
42
- botRequest: types.BotReq;
43
- }
44
18
  interface IHandleRequestInstance {
45
19
  req: SDKRequestInterface;
46
20
  }
@@ -56,4 +30,5 @@ interface ICreateAi {
56
30
  }
57
31
  declare function createAi({ env, baseUrl, req, getAccessToken, handleReqInstance }: ICreateAi): AI;
58
32
  declare function registerAi(app: ICloudbase): void;
59
- export { AI, Bot, createAi, restModels as models, registerAi, types, utils };
33
+ export { AI, Bot, createAi, restModels as models, registerAi, utils };
34
+ export * from './type';
package/dist/cjs/index.js CHANGED
@@ -33,6 +33,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
33
33
  __setModuleDefault(result, mod);
34
34
  return result;
35
35
  };
36
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
37
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
38
+ };
36
39
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
37
40
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
38
41
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -81,85 +84,17 @@ var __rest = (this && this.__rest) || function (s, e) {
81
84
  return t;
82
85
  };
83
86
  Object.defineProperty(exports, "__esModule", { value: true });
84
- exports.utils = exports.types = exports.registerAi = exports.models = exports.createAi = exports.Bot = exports.AI = void 0;
87
+ exports.utils = exports.registerAi = exports.models = exports.createAi = exports.Bot = exports.AI = void 0;
88
+ var AI_1 = require("./AI");
89
+ Object.defineProperty(exports, "AI", { enumerable: true, get: function () { return AI_1.AI; } });
85
90
  var bot_1 = require("./bot");
86
91
  Object.defineProperty(exports, "Bot", { enumerable: true, get: function () { return bot_1.Bot; } });
87
92
  var models = __importStar(require("./models"));
88
- var types = __importStar(require("./type"));
89
- exports.types = types;
90
93
  var utils = __importStar(require("./utils"));
91
94
  exports.utils = utils;
92
95
  var COMPONENT_NAME = 'ai';
93
96
  var MODELS = models.MODELS, restModels = __rest(models, ["MODELS"]);
94
97
  exports.models = restModels;
95
- var AI = (function () {
96
- function AI(req, baseUrl) {
97
- var _this = this;
98
- this.req = req;
99
- this.baseUrl = baseUrl;
100
- this.modelRequest = function (_a) {
101
- var url = _a.url, data = _a.data, headers = _a.headers, stream = _a.stream;
102
- return __awaiter(_this, void 0, void 0, function () {
103
- return __generator(this, function (_b) {
104
- switch (_b.label) {
105
- case 0: return [4, this.req.fetch({
106
- method: 'post',
107
- headers: __assign({}, headers),
108
- body: JSON.stringify(data),
109
- url: url,
110
- stream: stream,
111
- })];
112
- case 1: return [2, (_b.sent()).data];
113
- }
114
- });
115
- });
116
- };
117
- this.botRequest = function (_a) {
118
- var method = _a.method, url = _a.url, _b = _a.data, data = _b === void 0 ? {} : _b, headers = _a.headers, stream = _a.stream;
119
- return __awaiter(_this, void 0, void 0, function () {
120
- function objectToParam(obj) {
121
- return Object.entries(obj)
122
- .map(function (_a) {
123
- var key = _a[0], value = _a[1];
124
- return "".concat(key, "=").concat(value);
125
- })
126
- .join('&');
127
- }
128
- return __generator(this, function (_c) {
129
- switch (_c.label) {
130
- case 0:
131
- if (!(method === 'get')) return [3, 2];
132
- return [4, this.req.fetch({ url: "".concat(url, "?").concat(objectToParam(data)), method: method, headers: headers, stream: stream })];
133
- case 1: return [2, (_c.sent()).data];
134
- case 2: return [4, this.req.fetch({
135
- url: url,
136
- body: JSON.stringify(data),
137
- headers: __assign({ 'Content-Type': 'application/json' }, headers),
138
- stream: stream,
139
- method: method,
140
- })];
141
- case 3: return [2, (_c.sent()).data];
142
- }
143
- });
144
- });
145
- };
146
- this.aiBaseUrl = "".concat(baseUrl, "/ai");
147
- this.aiBotBaseUrl = "".concat(baseUrl, "/aibot");
148
- this.bot = new bot_1.Bot(this.botRequest, this.aiBotBaseUrl);
149
- }
150
- AI.prototype.createModel = function (model) {
151
- return new MODELS[model](this.modelRequest, this.aiBaseUrl);
152
- };
153
- AI.prototype.registerModel = function (name, model) {
154
- if (MODELS[name] != null) {
155
- console.warn("AI model ".concat(name, " already exists!"));
156
- return;
157
- }
158
- MODELS[name] = model;
159
- };
160
- return AI;
161
- }());
162
- exports.AI = AI;
163
98
  var createRequestInstanceWithAccessTokenHeader = function (_a) {
164
99
  var getAccessToken = _a.getAccessToken, req = _a.req;
165
100
  var fetch = function (options) { return __awaiter(void 0, void 0, void 0, function () {
@@ -209,7 +144,7 @@ function createAi(_a) {
209
144
  }
210
145
  return handleReqInstance({ req: req });
211
146
  };
212
- return new AI(getReq(), getBaseUrl());
147
+ return new AI_1.AI(getReq(), getBaseUrl());
213
148
  }
214
149
  exports.createAi = createAi;
215
150
  function ai(options) {
@@ -242,4 +177,5 @@ function registerAi(app) {
242
177
  }
243
178
  }
244
179
  exports.registerAi = registerAi;
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsNkJBQTJCO0FBcU1kLG9GQXJNSixTQUFHLE9BcU1JO0FBcE1oQiwrQ0FBa0M7QUFDbEMsNENBQStCO0FBbU0rQixzQkFBSztBQWxNbkUsNkNBQWdDO0FBa01xQyxzQkFBSztBQWhNMUUsSUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFBO0FBRW5CLElBQUEsTUFBTSxHQUFvQixNQUFNLE9BQTFCLEVBQUssVUFBVSxVQUFLLE1BQU0sRUFBbEMsVUFBeUIsQ0FBRixDQUFXO0FBOExFLDRCQUFNO0FBNUxoRDtJQUtFLFlBQW9CLEdBQXdCLEVBQVMsT0FBZTtRQUFwRSxpQkFJQztRQUptQixRQUFHLEdBQUgsR0FBRyxDQUFxQjtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFrQnBFLGlCQUFZLEdBQW1CLFVBQU8sRUFBOEI7Z0JBQTVCLEdBQUcsU0FBQSxFQUFFLElBQUksVUFBQSxFQUFFLE9BQU8sYUFBQSxFQUFFLE1BQU0sWUFBQTs7OztnQ0FDaEUsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztnQ0FDbkIsTUFBTSxFQUFFLE1BQU07Z0NBQ2QsT0FBTyxlQUNGLE9BQU8sQ0FDWDtnQ0FDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0NBQzFCLEdBQUcsS0FBQTtnQ0FDSCxNQUFNLFFBQUE7NkJBQ1AsQ0FBQyxFQUFBO2dDQVRxRSxXQUFBLENBQ3ZFLFNBUUUsQ0FDSCxDQUFDLElBQUksRUFBQTs7OztTQUFBLENBQUE7UUFFTixlQUFVLEdBQWlCLFVBQU8sRUFBMkM7Z0JBQXpDLE1BQU0sWUFBQSxFQUFFLEdBQUcsU0FB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IHsgSUZldGNoT3B0aW9ucywgU0RLUmVxdWVzdEludGVyZmFjZSB9IGZyb20gJ0BjbG91ZGJhc2UvYWRhcHRlci1pbnRlcmZhY2UnXG5pbXBvcnQgdHlwZSB7IElDbG91ZGJhc2UgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBJQ2xvdWRiYXNlQ29tcG9uZW50IH0gZnJvbSAnQGNsb3VkYmFzZS90eXBlcy9jb21wb25lbnQnXG5pbXBvcnQgeyBCb3QgfSBmcm9tICcuL2JvdCdcbmltcG9ydCAqIGFzIG1vZGVscyBmcm9tICcuL21vZGVscydcbmltcG9ydCAqIGFzIHR5cGVzIGZyb20gJy4vdHlwZSdcbmltcG9ydCAqIGFzIHV0aWxzIGZyb20gJy4vdXRpbHMnXG5cbmNvbnN0IENPTVBPTkVOVF9OQU1FID0gJ2FpJ1xuXG5jb25zdCB7IE1PREVMUywgLi4ucmVzdE1vZGVscyB9ID0gbW9kZWxzXG5cbmNsYXNzIEFJIHtcbiAgcHVibGljIGFpQmFzZVVybDogc3RyaW5nXG4gIHB1YmxpYyBhaUJvdEJhc2VVcmw6IHN0cmluZ1xuICBwdWJsaWMgYm90OiBCb3RcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogU0RLUmVxdWVzdEludGVyZmFjZSwgcHVibGljIGJhc2VVcmw6IHN0cmluZykge1xuICAgIHRoaXMuYWlCYXNlVXJsID0gYCR7YmFzZVVybH0vYWlgXG4gICAgdGhpcy5haUJvdEJhc2VVcmwgPSBgJHtiYXNlVXJsfS9haWJvdGBcbiAgICB0aGlzLmJvdCA9IG5ldyBCb3QodGhpcy5ib3RSZXF1ZXN0LCB0aGlzLmFpQm90QmFzZVVybClcbiAgfVxuXG4gIGNyZWF0ZU1vZGVsPFQgZXh0ZW5kcyBrZXlvZiB0eXBlb2YgTU9ERUxTPihtb2RlbDogVCkge1xuICAgIHJldHVybiBuZXcgTU9ERUxTW21vZGVsXSh0aGlzLm1vZGVsUmVxdWVzdCwgdGhpcy5haUJhc2VVcmwpIGFzIEluc3RhbmNlVHlwZTwodHlwZW9mIE1PREVMUylbVF0+XG4gIH1cblxuICByZWdpc3Rlck1vZGVsKG5hbWU6IHN0cmluZywgbW9kZWw6IHR5cGVzLkNoYXRNb2RlbENvbnN0cnVjdG9yKSB7XG4gICAgaWYgKE1PREVMU1tuYW1lXSAhPSBudWxsKSB7XG4gICAgICBjb25zb2xlLndhcm4oYEFJIG1vZGVsICR7bmFtZX0gYWxyZWFkeSBleGlzdHMhYClcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBNT0RFTFNbbmFtZV0gPSBtb2RlbFxuICB9XG5cbiAgbW9kZWxSZXF1ZXN0OiB0eXBlcy5Nb2RlbFJlcSA9IGFzeW5jICh7IHVybCwgZGF0YSwgaGVhZGVycywgc3RyZWFtIH0pID0+IChcbiAgICBhd2FpdCB0aGlzLnJlcS5mZXRjaCh7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgLi4uaGVhZGVycyxcbiAgICAgIH0sXG4gICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgICAgIHVybCxcbiAgICAgIHN0cmVhbSxcbiAgICB9KVxuICApLmRhdGFcblxuICBib3RSZXF1ZXN0OiB0eXBlcy5Cb3RSZXEgPSBhc3luYyAoeyBtZXRob2QsIHVybCwgZGF0YSA9IHt9LCBoZWFkZXJzLCBzdHJlYW0gfSkgPT4ge1xuICAgIGlmIChtZXRob2QgPT09ICdnZXQnKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMucmVxLmZldGNoKHsgdXJsOiBgJHt1cmx9PyR7b2JqZWN0VG9QYXJhbShkYXRhKX1gLCBtZXRob2QsIGhlYWRlcnMsIHN0cmVhbSB9KSkuZGF0YVxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICBhd2FpdCB0aGlzLnJlcS5mZXRjaCh7XG4gICAgICAgIHVybCxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXG4gICAgICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJywgLi4uaGVhZGVycyB9LFxuICAgICAgICBzdHJlYW0sXG4gICAgICAgIG1ldGhvZCxcbiAgICAgIH0pXG4gICAgKS5kYXRhXG5cbiAgICBmdW5jdGlvbiBvYmplY3RUb1BhcmFtKG9iajogT2JqZWN0KSB7XG4gICAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMob2JqKVxuICAgICAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZX1gKVxuICAgICAgICAuam9pbignJicpXG4gICAgfVxuICB9XG59XG5cbmludGVyZmFjZSBJSGFuZGxlUmVxdWVzdEluc3RhbmNlIHtcbiAgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlXG59XG5cbnR5cGUgSGFuZGxlUmVxdWVzdEluc3RhbmNlRnVuYyA9IChvcHRpb25zOiBJSGFuZGxlUmVxdWVzdEluc3RhbmNlKSA9PiBTREtSZXF1ZXN0SW50ZXJmYWNlXG5cbmNvbnN0IGNyZWF0ZVJlcXVlc3RJbnN0YW5jZVdpdGhBY2Nlc3NUb2tlbkhlYWRlciA9ICh7XG4gIGdldEFjY2Vzc1Rva2VuLFxuICByZXEsXG59OiBJSGFuZGxlUmVxdWVzdEluc3RhbmNlICYgeyBnZXRBY2Nlc3NUb2tlbjogKCkgPT4gUHJvbWlzZTx7IGFjY2Vzc1Rva2VuOiBzdHJpbmcgfT4gfSkgPT4ge1xuICBjb25zdCBmZXRjaDogdHlwZW9mIHJlcS5mZXRjaCA9IGFzeW5jIChvcHRpb25zOiBJRmV0Y2hPcHRpb25zICYgeyB0b2tlbj86IHN0cmluZyB9KSA9PiB7XG4gICAgaWYgKHR5cGVvZiByZXEuZmV0Y2ggIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncmVxLmZldGNoIGlzIG5vdCBhIGZ1bmN0aW9uJylcbiAgICB9XG5cbiAgICBjb25zdCB7IHRva2VuLCBoZWFkZXJzID0ge30sIC4uLnJlc3RPcHRpb25zIH0gPSBvcHRpb25zXG4gICAgbGV0IGFjY2Vzc1Rva2VuOiBzdHJpbmdcbiAgICBpZiAodG9rZW4gIT0gbnVsbCkge1xuICAgICAgYWNjZXNzVG9rZW4gPSB0b2tlblxuICAgIH0gZWxzZSB7XG4gICAgICBhY2Nlc3NUb2tlbiA9IChhd2FpdCBnZXRBY2Nlc3NUb2tlbigpKS5hY2Nlc3NUb2tlblxuICAgIH1cblxuICAgIHJldHVybiByZXEuZmV0Y2goe1xuICAgICAgaGVhZGVyczoge1xuICAgICAgICBBdXRob3JpemF0aW9uOiBgQmVhcmVyICR7YWNjZXNzVG9rZW59YCxcbiAgICAgICAgLi4uaGVhZGVycyxcbiAgICAgIH0sXG4gICAgICAuLi5yZXN0T3B0aW9ucyxcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBkb3dubG9hZDogcmVxLmRvd25sb2FkLFxuICAgIHBvc3Q6IHJlcS5wb3N0LFxuICAgIHVwbG9hZDogcmVxLnVwbG9hZCxcbiAgICBmZXRjaCxcbiAgfVxufVxuXG5pbnRlcmZhY2UgQUlJbml0T3B0aW9uIHtcbiAgYmFzZVVybD86IHN0cmluZ1xufVxuXG5pbnRlcmZhY2UgSUNyZWF0ZUFpIHtcbiAgcmVxOiBTREtSZXF1ZXN0SW50ZXJmYWNlXG4gIGJhc2VVcmw/OiBzdHJpbmdcbiAgZW52Pzogc3RyaW5nXG4gIGdldEFjY2Vzc1Rva2VuPzogKCkgPT4gUHJvbWlzZTx7IGFjY2Vzc1Rva2VuOiBzdHJpbmcgfT5cbiAgaGFuZGxlUmVxSW5zdGFuY2U/OiBIYW5kbGVSZXF1ZXN0SW5zdGFuY2VGdW5jXG59XG5cbi8qKlxuICog5pyA566A5Zyw5Yib5bu65LiA5Liq5o6l5LqR5byA5Y+R572R5YWz5pyN5Yqh55qEIGBBSWAg5a6e5L6L77yM6K+35rGC5pe25Lya6Ieq5Yqo5bim5LiK6Ym05p2D6K+35rGC5aS044CCXG4gKiDlj6rpnIDopoHkvKDlhaXvvJpcbiAqXG4gKiAtIGBnZXRBY2Nlc3NUb2tlbmA6IOiOt+WPliBhY2Nlc3NUb2tlbiDnmoTlh73mlbBcbiAqIC0gYHJlcWA6IOivt+axguWHveaVsO+8jOS4gOiIrOS7jiBhZGFwdGVyIOS4iuaLv1xuICogLSBgZW52YDog5LqR5byA5Y+R546v5aKDIElEXG4gKlxuICog5YW25LuW5Y+C5pWw5Y+v5oyJ6ZyA5Lyg5YWl6KaG55uW5Ye95pWw6YC76L6R44CCXG4gKi9cbmZ1bmN0aW9uIGNyZWF0ZUFpKHsgZW52LCBiYXNlVXJsLCByZXEsIGdldEFjY2Vzc1Rva2VuLCBoYW5kbGVSZXFJbnN0YW5jZSB9OiBJQ3JlYXRlQWkpIHtcbiAgY29uc3QgZ2V0QmFzZVVybCA9ICgpID0+IHtcbiAgICBpZiAoYmFzZVVybCAhPSBudWxsKSB7XG4gICAgICByZXR1cm4gYmFzZVVybFxuICAgIH1cbiAgICBpZiAoZW52ID09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYGVudmAgaXMgcmVxdWlyZWQgd2hlbiBgYmFzZVVybGAgaXMgbm90IHByb3ZpZGVkIScpXG4gICAgfVxuICAgIHJldHVybiBgaHR0cHM6Ly8ke2Vudn0uYXBpLnRjbG91ZGJhc2VnYXRld2F5LmNvbS92MWBcbiAgfVxuXG4gIGNvbnN0IGdldFJlcSA9ICgpID0+IHtcbiAgICBpZiAoaGFuZGxlUmVxSW5zdGFuY2UgPT0gbnVsbCkge1xuICAgICAgaWYgKGdldEFjY2Vzc1Rva2VuID09IG51bGwpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdgZ2V0QWNjZXNzVG9rZW5gIGlzIHJlcXVpcmVkIHdoZW4gYGhhbmRsZVJlcUluc3RhbmNlYCBpcyBub3QgcHJvdmlkZWQhJylcbiAgICAgIH1cbiAgICAgIHJldHVybiBjcmVhdGVSZXF1ZXN0SW5zdGFuY2VXaXRoQWNjZXNzVG9rZW5IZWFkZXIoeyByZXEsIGdldEFjY2Vzc1Rva2VuIH0pXG4gICAgfVxuICAgIHJldHVybiBoYW5kbGVSZXFJbnN0YW5jZSh7IHJlcSB9KVxuICB9XG5cbiAgcmV0dXJuIG5ldyBBSShnZXRSZXEoKSwgZ2V0QmFzZVVybCgpKVxufVxuXG4vKipcbiAqIOWIm+W7uiBgQUlgIOWunuS+i+OAglxuICog6K+l5Ye95pWw5oyC6L295ZyoIGpzIHNkayDnmoQgQ2xvdWRiYXNlIOWunuS+i+S4iuOAglxuICog6K+l5Ye95pWw6LCD55So5LqG5pys5qih5Z2X5pq06Zyy55qEIGBjcmVhdGVBaWAg5Ye95pWw77yM5L2G6LCD55So5pe26YCa6L+H5Lyg5YWl5Y+C5pWw5YGa5LqG6YC76L6R6KaG55uW77yaXG4gKlxuICogLSDkvKDlhaXku44gQ2xvdWRiYXNlIOWunuS+i+S4iueahOS4reW/g+eahCBgcmVxYFxuICogLSDkvKDlhaXku44gQ2xvdWRiYXNlIOWunuS+i+S4iuaLv+WIsOeahCBgYmFzZVVybGBcbiAqIC0g5Lyg5YWl5LiA5Liq5LiN5aSE55CGIGByZXFgIOeahCBgaGFuZGxlUmVxSW5zdGFuY2Vg77yM55Sx5LqOIGByZXFgIOaYr+S7jiBDbG91ZGJhc2Ug5a6e5L6L5LiK5ou/5Yiw55qE77yM6L+Z5Liq5Lit5b+D55qEIGByZXFgIOW3sue7j+WPr+eUqOS6hlxuICogLSDkuI3nlKjkvKDlhaUgYGVudmAg5LqG77yM5Zug5Li65bey57uP5Lyg5LqGIGBiYXNlVXJsYFxuICogLSDkuI3nlKjkvKDlhaUgYGdldEFjY2Vzc1Rva2VuYCDkuobvvIzlm6DkuLrkvKDkuoYgYGhhbmRsZVJlcUluc3RhbmNlYFxuICovXG5mdW5jdGlvbiBhaShcbiAgdGhpczogSUNsb3VkYmFzZSAmIHsgZ2V0RW5kUG9pbnRXaXRoS2V5OiAoa2V5OiAnR0FURVdBWScpID0+IHsgQkFTRV9VUkw6IHN0cmluZzsgUFJPVE9DT0w6IHN0cmluZyB9IH0sXG4gIG9wdGlvbnM/OiBBSUluaXRPcHRpb24sXG4pIHtcbiAgY29uc3QgcmVxID0gdGhpcy5yZXF1ZXN0XG5cbiAgaWYgKHJlcS5mZXRjaCA9PSBudWxsKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdjbG91ZGJhc2UucmVxdWVzdC5mZXRjaCgpIHVuaW1wbGVtZW50ZWQhJylcbiAgfVxuXG4gIGNvbnN0IGdldFVybEZyb21DbG91ZCA9ICgpID0+IHtcbiAgICBjb25zdCB7IEJBU0VfVVJMLCBQUk9UT0NPTCB9ID0gdGhpcy5nZXRFbmRQb2ludFdpdGhLZXkoJ0dBVEVXQVknKVxuICAgIHJldHVybiBgJHtQUk9UT0NPTH0ke0JBU0VfVVJMfWBcbiAgfVxuXG4gIGNvbnN0IGJhc2VVcmwgPSBvcHRpb25zPy5iYXNlVXJsID8/IGdldFVybEZyb21DbG91ZCgpXG5cbiAgcmV0dXJuIGNyZWF0ZUFpKHsgcmVxLCBiYXNlVXJsLCBoYW5kbGVSZXFJbnN0YW5jZTogKHsgcmVxIH0pID0+IHJlcSB9KVxufVxuXG5jb25zdCBjb21wb25lbnQ6IElDbG91ZGJhc2VDb21wb25lbnQgPSB7XG4gIG5hbWU6IENPTVBPTkVOVF9OQU1FLFxuICBlbnRpdHk6IHsgYWkgfSxcbn1cblxuZnVuY3Rpb24gcmVnaXN0ZXJBaShhcHA6IElDbG91ZGJhc2UpIHtcbiAgdHJ5IHtcbiAgICBhcHAucmVnaXN0ZXJDb21wb25lbnQoY29tcG9uZW50KVxuICB9IGNhdGNoIChlKSB7XG4gICAgY29uc29sZS53YXJuKGUpXG4gIH1cbn1cblxuZXhwb3J0IHsgQUksIEJvdCwgY3JlYXRlQWksIHJlc3RNb2RlbHMgYXMgbW9kZWxzLCByZWdpc3RlckFpLCB0eXBlcywgdXRpbHMgfVxuIl19
180
+ __exportStar(require("./type"), exports);
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsMkJBQXlCO0FBMkloQixtRkEzSUEsT0FBRSxPQTJJQTtBQTFJWCw2QkFBMkI7QUEwSWQsb0ZBMUlKLFNBQUcsT0EwSUk7QUF6SWhCLCtDQUFrQztBQUNsQyw2Q0FBZ0M7QUF3SThCLHNCQUFLO0FBdEluRSxJQUFNLGNBQWMsR0FBRyxJQUFJLENBQUE7QUFFbkIsSUFBQSxNQUFNLEdBQW9CLE1BQU0sT0FBMUIsRUFBSyxVQUFVLFVBQUssTUFBTSxFQUFsQyxVQUF5QixDQUFGLENBQVc7QUFvSUUsNEJBQU07QUE1SGhELElBQU0sMENBQTBDLEdBQUcsVUFBQyxFQUdrQztRQUZwRixjQUFjLG9CQUFBLEVBQ2QsR0FBRyxTQUFBO0lBRUgsSUFBTSxLQUFLLEdBQXFCLFVBQU8sT0FBMkM7Ozs7O29CQUNoRixJQUFJLE9BQU8sR0FBRyxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7d0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtxQkFDL0M7b0JBRU8sS0FBSyxHQUFtQyxPQUFPLE1BQTFDLEVBQUUsS0FBaUMsT0FBTyxRQUE1QixFQUFaLE9BQU8sbUJBQUcsRUFBRSxLQUFBLEVBQUssV0FBVyxVQUFLLE9BQU8sRUFBakQsb0JBQXVDLENBQUYsQ0FBWTt5QkFFbkQsQ0FBQSxLQUFLLElBQUksSUFBSSxDQUFBLEVBQWIsY0FBYTtvQkFDZixXQUFXLEdBQUcsS0FBSyxDQUFBOzt3QkFFSixXQUFNLGNBQWMsRUFBRSxFQUFBOztvQkFBckMsV0FBVyxHQUFHLENBQUMsU0FBc0IsQ0FBQyxDQUFDLFdBQVcsQ0FBQTs7d0JBR3BELFdBQU8s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ZXF1ZXN0SW50ZXJmYWNlIH0gZnJvbSAnQGNsb3VkYmFzZS9hZGFwdGVyLWludGVyZmFjZSdcbmltcG9ydCB0eXBlIHsgSUNsb3VkYmFzZSB9IGZyb20gJ0BjbG91ZGJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IElDbG91ZGJhc2VDb21wb25lbnQgfSBmcm9tICdAY2xvdWRiYXNlL3R5cGVzL2NvbXBvbmVudCdcbmltcG9ydCB7IEFJIH0gZnJvbSAnLi9BSSdcbmltcG9ydCB7IEJvdCB9IGZyb20gJy4vYm90J1xuaW1wb3J0ICogYXMgbW9kZWxzIGZyb20gJy4vbW9kZWxzJ1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi91dGlscydcblxuY29uc3QgQ09NUE9ORU5UX05BTUUgPSAnYWknXG5cbmNvbnN0IHsgTU9ERUxTLCAuLi5yZXN0TW9kZWxzIH0gPSBtb2RlbHNcblxuaW50ZXJmYWNlIElIYW5kbGVSZXF1ZXN0SW5zdGFuY2Uge1xuICByZXE6IFNES1JlcXVlc3RJbnRlcmZhY2Vcbn1cblxudHlwZSBIYW5kbGVSZXF1ZXN0SW5zdGFuY2VGdW5jID0gKG9wdGlvbnM6IElIYW5kbGVSZXF1ZXN0SW5zdGFuY2UpID0+IFNES1JlcXVlc3RJbnRlcmZhY2VcblxuY29uc3QgY3JlYXRlUmVxdWVzdEluc3RhbmNlV2l0aEFjY2Vzc1Rva2VuSGVhZGVyID0gKHtcbiAgZ2V0QWNjZXNzVG9rZW4sXG4gIHJlcSxcbn06IElIYW5kbGVSZXF1ZXN0SW5zdGFuY2UgJiB7IGdldEFjY2Vzc1Rva2VuOiAoKSA9PiBQcm9taXNlPHsgYWNjZXNzVG9rZW46IHN0cmluZyB9PiB9KSA9PiB7XG4gIGNvbnN0IGZldGNoOiB0eXBlb2YgcmVxLmZldGNoID0gYXN5bmMgKG9wdGlvbnM6IElGZXRjaE9wdGlvbnMgJiB7IHRva2VuPzogc3RyaW5nIH0pID0+IHtcbiAgICBpZiAodHlwZW9mIHJlcS5mZXRjaCAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZXEuZmV0Y2ggaXMgbm90IGEgZnVuY3Rpb24nKVxuICAgIH1cblxuICAgIGNvbnN0IHsgdG9rZW4sIGhlYWRlcnMgPSB7fSwgLi4ucmVzdE9wdGlvbnMgfSA9IG9wdGlvbnNcbiAgICBsZXQgYWNjZXNzVG9rZW46IHN0cmluZ1xuICAgIGlmICh0b2tlbiAhPSBudWxsKSB7XG4gICAgICBhY2Nlc3NUb2tlbiA9IHRva2VuXG4gICAgfSBlbHNlIHtcbiAgICAgIGFjY2Vzc1Rva2VuID0gKGF3YWl0IGdldEFjY2Vzc1Rva2VuKCkpLmFjY2Vzc1Rva2VuXG4gICAgfVxuXG4gICAgcmV0dXJuIHJlcS5mZXRjaCh7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgIEF1dGhvcml6YXRpb246IGBCZWFyZXIgJHthY2Nlc3NUb2tlbn1gLFxuICAgICAgICAuLi5oZWFkZXJzLFxuICAgICAgfSxcbiAgICAgIC4uLnJlc3RPcHRpb25zLFxuICAgIH0pXG4gIH1cblxuICByZXR1cm4ge1xuICAgIGRvd25sb2FkOiByZXEuZG93bmxvYWQsXG4gICAgcG9zdDogcmVxLnBvc3QsXG4gICAgdXBsb2FkOiByZXEudXBsb2FkLFxuICAgIGZldGNoLFxuICB9XG59XG5cbmludGVyZmFjZSBBSUluaXRPcHRpb24ge1xuICBiYXNlVXJsPzogc3RyaW5nXG59XG5cbmludGVyZmFjZSBJQ3JlYXRlQWkge1xuICByZXE6IFNES1JlcXVlc3RJbnRlcmZhY2VcbiAgYmFzZVVybD86IHN0cmluZ1xuICBlbnY/OiBzdHJpbmdcbiAgZ2V0QWNjZXNzVG9rZW4/OiAoKSA9PiBQcm9taXNlPHsgYWNjZXNzVG9rZW46IHN0cmluZyB9PlxuICBoYW5kbGVSZXFJbnN0YW5jZT86IEhhbmRsZVJlcXVlc3RJbnN0YW5jZUZ1bmNcbn1cblxuLyoqXG4gKiDmnIDnroDlnLDliJvlu7rkuIDkuKrmjqXkupHlvIDlj5HnvZHlhbPmnI3liqHnmoQgYEFJYCDlrp7kvovvvIzor7fmsYLml7bkvJroh6rliqjluKbkuIrpibTmnYPor7fmsYLlpLTjgIJcbiAqIOWPqumcgOimgeS8oOWFpe+8mlxuICpcbiAqIC0gYGdldEFjY2Vzc1Rva2VuYDog6I635Y+WIGFjY2Vzc1Rva2VuIOeahOWHveaVsFxuICogLSBgcmVxYDog6K+35rGC5Ye95pWw77yM5LiA6Iis5LuOIGFkYXB0ZXIg5LiK5ou/XG4gKiAtIGBlbnZgOiDkupHlvIDlj5Hnjq/looMgSURcbiAqXG4gKiDlhbbku5blj4LmlbDlj6/mjInpnIDkvKDlhaXopobnm5blh73mlbDpgLvovpHjgIJcbiAqL1xuZnVuY3Rpb24gY3JlYXRlQWkoeyBlbnYsIGJhc2VVcmwsIHJlcSwgZ2V0QWNjZXNzVG9rZW4sIGhhbmRsZVJlcUluc3RhbmNlIH06IElDcmVhdGVBaSkge1xuICBjb25zdCBnZXRCYXNlVXJsID0gKCkgPT4ge1xuICAgIGlmIChiYXNlVXJsICE9IG51bGwpIHtcbiAgICAgIHJldHVybiBiYXNlVXJsXG4gICAgfVxuICAgIGlmIChlbnYgPT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdgZW52YCBpcyByZXF1aXJlZCB3aGVuIGBiYXNlVXJsYCBpcyBub3QgcHJvdmlkZWQhJylcbiAgICB9XG4gICAgcmV0dXJuIGBodHRwczovLyR7ZW52fS5hcGkudGNsb3VkYmFzZWdhdGV3YXkuY29tL3YxYFxuICB9XG5cbiAgY29uc3QgZ2V0UmVxID0gKCkgPT4ge1xuICAgIGlmIChoYW5kbGVSZXFJbnN0YW5jZSA9PSBudWxsKSB7XG4gICAgICBpZiAoZ2V0QWNjZXNzVG9rZW4gPT0gbnVsbCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2BnZXRBY2Nlc3NUb2tlbmAgaXMgcmVxdWlyZWQgd2hlbiBgaGFuZGxlUmVxSW5zdGFuY2VgIGlzIG5vdCBwcm92aWRlZCEnKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGNyZWF0ZVJlcXVlc3RJbnN0YW5jZVdpdGhBY2Nlc3NUb2tlbkhlYWRlcih7IHJlcSwgZ2V0QWNjZXNzVG9rZW4gfSlcbiAgICB9XG4gICAgcmV0dXJuIGhhbmRsZVJlcUluc3RhbmNlKHsgcmVxIH0pXG4gIH1cblxuICByZXR1cm4gbmV3IEFJKGdldFJlcSgpLCBnZXRCYXNlVXJsKCkpXG59XG5cbi8qKlxuICog5Yib5bu6IGBBSWAg5a6e5L6L44CCXG4gKiDor6Xlh73mlbDmjILovb3lnKgganMgc2RrIOeahCBDbG91ZGJhc2Ug5a6e5L6L5LiK44CCXG4gKiDor6Xlh73mlbDosIPnlKjkuobmnKzmqKHlnZfmmrTpnLLnmoQgYGNyZWF0ZUFpYCDlh73mlbDvvIzkvYbosIPnlKjml7bpgJrov4fkvKDlhaXlj4LmlbDlgZrkuobpgLvovpHopobnm5bvvJpcbiAqXG4gKiAtIOS8oOWFpeS7jiBDbG91ZGJhc2Ug5a6e5L6L5LiK55qE5Lit5b+D55qEIGByZXFgXG4gKiAtIOS8oOWFpeS7jiBDbG91ZGJhc2Ug5a6e5L6L5LiK5ou/5Yiw55qEIGBiYXNlVXJsYFxuICogLSDkvKDlhaXkuIDkuKrkuI3lpITnkIYgYHJlcWAg55qEIGBoYW5kbGVSZXFJbnN0YW5jZWDvvIznlLHkuo4gYHJlcWAg5piv5LuOIENsb3VkYmFzZSDlrp7kvovkuIrmi7/liLDnmoTvvIzov5nkuKrkuK3lv4PnmoQgYHJlcWAg5bey57uP5Y+v55So5LqGXG4gKiAtIOS4jeeUqOS8oOWFpSBgZW52YCDkuobvvIzlm6DkuLrlt7Lnu4/kvKDkuoYgYGJhc2VVcmxgXG4gKiAtIOS4jeeUqOS8oOWFpSBgZ2V0QWNjZXNzVG9rZW5gIOS6hu+8jOWboOS4uuS8oOS6hiBgaGFuZGxlUmVxSW5zdGFuY2VgXG4gKi9cbmZ1bmN0aW9uIGFpKFxuICB0aGlzOiBJQ2xvdWRiYXNlICYgeyBnZXRFbmRQb2ludFdpdGhLZXk6IChrZXk6ICdHQVRFV0FZJykgPT4geyBCQVNFX1VSTDogc3RyaW5nOyBQUk9UT0NPTDogc3RyaW5nIH0gfSxcbiAgb3B0aW9ucz86IEFJSW5pdE9wdGlvbixcbikge1xuICBjb25zdCByZXEgPSB0aGlzLnJlcXVlc3RcblxuICBpZiAocmVxLmZldGNoID09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2Nsb3VkYmFzZS5yZXF1ZXN0LmZldGNoKCkgdW5pbXBsZW1lbnRlZCEnKVxuICB9XG5cbiAgY29uc3QgZ2V0VXJsRnJvbUNsb3VkID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgQkFTRV9VUkwsIFBST1RPQ09MIH0gPSB0aGlzLmdldEVuZFBvaW50V2l0aEtleSgnR0FURVdBWScpXG4gICAgcmV0dXJuIGAke1BST1RPQ09MfSR7QkFTRV9VUkx9YFxuICB9XG5cbiAgY29uc3QgYmFzZVVybCA9IG9wdGlvbnM/LmJhc2VVcmwgPz8gZ2V0VXJsRnJvbUNsb3VkKClcblxuICByZXR1cm4gY3JlYXRlQWkoeyByZXEsIGJhc2VVcmwsIGhhbmRsZVJlcUluc3RhbmNlOiAoeyByZXEgfSkgPT4gcmVxIH0pXG59XG5cbmNvbnN0IGNvbXBvbmVudDogSUNsb3VkYmFzZUNvbXBvbmVudCA9IHtcbiAgbmFtZTogQ09NUE9ORU5UX05BTUUsXG4gIGVudGl0eTogeyBhaSB9LFxufVxuXG5mdW5jdGlvbiByZWdpc3RlckFpKGFwcDogSUNsb3VkYmFzZSkge1xuICB0cnkge1xuICAgIGFwcC5yZWdpc3RlckNvbXBvbmVudChjb21wb25lbnQpXG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLndhcm4oZSlcbiAgfVxufVxuXG5leHBvcnQgeyBBSSwgQm90LCBjcmVhdGVBaSwgcmVzdE1vZGVscyBhcyBtb2RlbHMsIHJlZ2lzdGVyQWksIHV0aWxzIH1cbmV4cG9ydCAqIGZyb20gJy4vdHlwZSdcbiJdfQ==
@@ -1,24 +1,10 @@
1
- import { type ParsedEvent } from '../../eventsource_parser';
2
- import type { ArkInputData, ArkGenerateTextOutput, ArkStreamTextOutput } from './type';
3
- import type { ChatModel, StreamTextResult, ModelReq } from '../../type';
4
- export declare class ArkModel implements ChatModel {
1
+ import type { ModelReq, BaseChatModelInput, SimpleChatModel, DoGenerateOutput, DoStreamOutput } from '../../type';
2
+ export declare class ArkSimpleModel implements SimpleChatModel {
5
3
  private req;
6
4
  baseUrl: string;
7
5
  subUrl: string;
8
6
  constructor(req: ModelReq, baseUrl: string, subUrl?: string);
9
7
  private get url();
10
- generateText(data: ArkInputData): Promise<{
11
- text: string;
12
- rawResponse: ArkGenerateTextOutput;
13
- }>;
14
- streamText(data: ArkInputData): Promise<ArkModelStreamResult>;
8
+ doGenerate(data: BaseChatModelInput): Promise<DoGenerateOutput>;
9
+ doStream(data: BaseChatModelInput): Promise<DoStreamOutput>;
15
10
  }
16
- declare class ArkModelStreamResult implements StreamTextResult {
17
- private _eventSourceStream;
18
- constructor(_stream: ReadableStream<Uint8Array>);
19
- private get teeedStream();
20
- get eventSourceStream(): import("../../type").AsyncIterableReadableStream<ParsedEvent>;
21
- get dataStream(): import("../../type").AsyncIterableReadableStream<ArkStreamTextOutput>;
22
- get textStream(): import("../../type").AsyncIterableReadableStream<string>;
23
- }
24
- export {};
@@ -47,10 +47,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
47
47
  }
48
48
  };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.ArkModel = void 0;
50
+ exports.ArkSimpleModel = void 0;
51
51
  var utils_1 = require("../../utils");
52
- var ArkModel = (function () {
53
- function ArkModel(req, baseUrl, subUrl) {
52
+ function processInput(input) {
53
+ var messages = input.messages, model = input.model, temperature = input.temperature, tools = input.tools, top_p = input.top_p;
54
+ return __assign(__assign({}, input), { messages: messages, model: model, tools: tools === null || tools === void 0 ? void 0 : tools.map(function (tool) { return (__assign(__assign({}, tool), { function: __assign(__assign({}, tool.function), { parameters: JSON.parse(tool.function.parameters) }) })); }), top_p: top_p, temperature: temperature });
55
+ }
56
+ var ArkSimpleModel = (function () {
57
+ function ArkSimpleModel(req, baseUrl, subUrl) {
54
58
  this.req = req;
55
59
  this.baseUrl = baseUrl;
56
60
  this.subUrl = 'ark/api/v3/chat/completions';
@@ -58,108 +62,67 @@ var ArkModel = (function () {
58
62
  this.subUrl = subUrl;
59
63
  }
60
64
  }
61
- Object.defineProperty(ArkModel.prototype, "url", {
65
+ Object.defineProperty(ArkSimpleModel.prototype, "url", {
62
66
  get: function () {
63
67
  return "".concat(this.baseUrl, "/").concat(this.subUrl);
64
68
  },
65
69
  enumerable: false,
66
70
  configurable: true
67
71
  });
68
- ArkModel.prototype.generateText = function (data) {
69
- var _a, _b, _c, _d;
72
+ ArkSimpleModel.prototype.doGenerate = function (data) {
70
73
  return __awaiter(this, void 0, void 0, function () {
71
74
  var res;
72
- return __generator(this, function (_e) {
73
- switch (_e.label) {
75
+ return __generator(this, function (_a) {
76
+ switch (_a.label) {
74
77
  case 0: return [4, this.req({
75
78
  url: this.url,
76
- data: __assign(__assign({}, data), { stream: false }),
79
+ data: __assign(__assign({}, processInput(data)), { stream: false }),
77
80
  stream: false,
78
81
  })];
79
82
  case 1:
80
- res = (_e.sent());
81
- return [2, {
82
- text: (_d = (_c = (_b = (_a = res === null || res === void 0 ? void 0 : res.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.content) !== null && _d !== void 0 ? _d : '',
83
- rawResponse: res,
84
- }];
83
+ res = (_a.sent());
84
+ return [2, __assign(__assign({}, res), { rawResponse: res })];
85
85
  }
86
86
  });
87
87
  });
88
88
  };
89
- ArkModel.prototype.streamText = function (data) {
89
+ ArkSimpleModel.prototype.doStream = function (data) {
90
90
  return __awaiter(this, void 0, void 0, function () {
91
- var stream;
91
+ var isToolCall, _stream, stream, arkStream, streamWithRaw;
92
92
  return __generator(this, function (_a) {
93
93
  switch (_a.label) {
94
- case 0: return [4, this.req({
95
- url: this.url,
96
- data: __assign(__assign({}, data), { stream: true }),
97
- stream: true,
98
- })];
94
+ case 0:
95
+ isToolCall = null;
96
+ return [4, this.req({
97
+ url: this.url,
98
+ data: __assign(__assign({}, processInput(data)), { stream: true }),
99
+ stream: true,
100
+ })];
99
101
  case 1:
100
- stream = _a.sent();
101
- return [2, new ArkModelStreamResult(stream)];
102
+ _stream = _a.sent();
103
+ stream = (0, utils_1.toPolyfillReadable)(_stream);
104
+ arkStream = (0, utils_1.intoStandardStream)(stream);
105
+ streamWithRaw = arkStream.pipeThrough(new utils_1.TransformStream({
106
+ transform: function (chunk, controller) {
107
+ var newChoices = chunk.choices.map(function (choice) {
108
+ var message = choice.delta;
109
+ if (isToolCall == null)
110
+ isToolCall = (0, utils_1.isToolCallAssistantMessage)(message);
111
+ if (isToolCall) {
112
+ return __assign(__assign({}, choice), { finish_reason: 'tool_calls', delta: message });
113
+ }
114
+ return choice;
115
+ });
116
+ var newChunk = __assign(__assign({}, chunk), { choices: newChoices });
117
+ controller.enqueue(__assign(__assign({}, newChunk), { rawResponse: chunk }));
118
+ },
119
+ }));
120
+ return [2, (0, utils_1.createAsyncIterable)(streamWithRaw)];
102
121
  }
103
122
  });
104
123
  });
105
124
  };
106
- return ArkModel;
107
- }());
108
- exports.ArkModel = ArkModel;
109
- var ArkModelStreamResult = (function () {
110
- function ArkModelStreamResult(_stream) {
111
- var stream = (0, utils_1.toPolyfillReadable)(_stream);
112
- this._eventSourceStream = stream
113
- .pipeThrough(new utils_1.TextDecoderStream())
114
- .pipeThrough((0, utils_1.createEventSourceParserTransformStream)());
115
- }
116
- Object.defineProperty(ArkModelStreamResult.prototype, "teeedStream", {
117
- get: function () {
118
- var _a = this._eventSourceStream.tee(), s1 = _a[0], s2 = _a[1];
119
- this._eventSourceStream = s2;
120
- return s1;
121
- },
122
- enumerable: false,
123
- configurable: true
124
- });
125
- Object.defineProperty(ArkModelStreamResult.prototype, "eventSourceStream", {
126
- get: function () {
127
- return (0, utils_1.createAsyncIterable)(this.teeedStream);
128
- },
129
- enumerable: false,
130
- configurable: true
131
- });
132
- Object.defineProperty(ArkModelStreamResult.prototype, "dataStream", {
133
- get: function () {
134
- return (0, utils_1.createAsyncIterable)(this.eventSourceStream.pipeThrough(new utils_1.TransformStream({
135
- transform: function (chunk, controller) {
136
- try {
137
- var data = JSON.parse(chunk.data);
138
- controller.enqueue(data);
139
- }
140
- catch (e) {
141
- if (chunk.data !== '[DONE]') {
142
- console.warn('Error when transforming event source data to json', e);
143
- }
144
- }
145
- },
146
- })));
147
- },
148
- enumerable: false,
149
- configurable: true
150
- });
151
- Object.defineProperty(ArkModelStreamResult.prototype, "textStream", {
152
- get: function () {
153
- return (0, utils_1.createAsyncIterable)(this.dataStream.pipeThrough(new utils_1.TransformStream({
154
- transform: function (chunk, controller) {
155
- var _a, _b, _c, _d;
156
- controller.enqueue((_d = (_c = (_b = (_a = chunk === null || chunk === void 0 ? void 0 : chunk.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.content) !== null && _d !== void 0 ? _d : '');
157
- },
158
- })));
159
- },
160
- enumerable: false,
161
- configurable: true
162
- });
163
- return ArkModelStreamResult;
125
+ return ArkSimpleModel;
164
126
  }());
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWxzL0Fyay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHFDQU1vQjtBQUlwQjtJQUVFLGtCQUFvQixHQUFhLEVBQVMsT0FBZSxFQUFFLE1BQWU7UUFBdEQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFEbEQsV0FBTSxHQUFHLDZCQUE2QixDQUFBO1FBRTNDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtTQUNyQjtJQUNILENBQUM7SUFFRCxzQkFBWSx5QkFBRzthQUFmO1lBQ0UsT0FBTyxVQUFHLElBQUksQ0FBQyxPQUFPLGNBQUksSUFBSSxDQUFDLE1BQU0sQ0FBRSxDQUFBO1FBQ3pDLENBQUM7OztPQUFBO0lBRUssK0JBQVksR0FBbEIsVUFBbUIsSUFBa0I7Ozs7Ozs0QkFDdEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUMxQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLEtBQUssR0FDZDs0QkFDRCxNQUFNLEVBQUUsS0FBSzt5QkFDZCxDQUFDLEVBQUE7O3dCQVBJLEdBQUcsR0FBRyxDQUFDLFNBT1gsQ0FBMEI7d0JBQzVCLFdBQU87Z0NBQ0wsSUFBSSxFQUFFLE1BQUMsTUFBQSxNQUFBLE1BQUEsR0FBRyxhQUFILEdBQUcsdUJBQUgsR0FBRyxDQUFFLE9BQU8sMENBQUcsQ0FBQyxDQUFDLDBDQUFFLE9BQU8sMENBQUUsT0FBa0IsbUNBQUksRUFBRTtnQ0FDM0QsV0FBVyxFQUFFLEdBQUc7NkJBQ2pCLEVBQUE7Ozs7S0FDRjtJQUVLLDZCQUFVLEdBQWhCLFVBQWlCLElBQWtCOzs7Ozs0QkFDbEIsV0FBTSxJQUFJLENBQUMsR0FBRyxDQUFDOzRCQUM1QixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7NEJBQ2IsSUFBSSx3QkFDQyxJQUFJLEtBQ1AsTUFBTSxFQUFFLElBQUksR0FDYjs0QkFDRCxNQUFNLEVBQUUsSUFBSTt5QkFDYixDQUFDLEVBQUE7O3dCQVBJLE1BQU0sR0FBRyxTQU9iO3dCQUNGLFdBQU8sSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsRUFBQTs7OztLQUN4QztJQUNILGVBQUM7QUFBRCxDQUFDLEFBdENELElBc0NDO0FBdENZLDRCQUFRO0FBd0NyQjtJQUdFLDhCQUFZLE9BQW1DO1FBQzdDLElBQU0sTUFBTSxHQUFHLElBQUEsMEJBQWtCLEVBQUMsT0FBTyxDQUFtQixDQUFBO1FBQzVELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxNQUFNO2FBQzdCLFdBQVcsQ0FBQyxJQUFJLHlCQUFpQixFQUFFLENBQUM7YUFDcEMsV0FBVyxDQUFDLElBQUEsOENBQXNDLEdBQUUsQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFRCxzQkFBWSw2Q0FBVzthQUF2QjtZQUNRLElBQUEsS0FBVyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxFQUFFLEVBQXZDLEVBQUUsUUFBQSxFQUFFLEVBQUUsUUFBaUMsQ0FBQTtZQUM5QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFBO1lBQzVCLE9BQU8sRUFBRSxDQUFBO1FBQ1gsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxtREFBaUI7YUFBckI7WUFDRSxPQUFPLElBQUEsMkJBQW1CLEVBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzlDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQVU7YUFBZDtZQUNFLE9BQU8sSUFBQSwyQkFBbUIsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBbUM7Z0JBQ2xILFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTtvQkFDekIsSUFBSTt3QkFDRixJQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQXdCLENBQUE7d0JBQzFELFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7cUJBQ3pCO29CQUFDLE9BQU8sQ0FBQyxFQUFFO3dCQUNWLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7NEJBQzNCLE9BQU8sQ0FBQyxJQUFJLENBQUMsbURBQW1ELEVBQUUsQ0FBQyxDQUFDLENBQUE7eUJBQ3JFO3FCQUNGO2dCQUNILENBQUM7YUFDRixDQUFDLENBQUUsQ0FBRSxDQUFBO1FBQ1IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBVTthQUFkO1lBQ0UsT0FBTyxJQUFBLDJCQUFtQixFQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBOEI7Z0JBQ3RHLFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTs7b0JBQ3pCLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBQSxNQUFBLE1BQUEsTUFBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsT0FBTywwQ0FBRyxDQUFDLENBQUMsMENBQUUsT0FBTywwQ0FBRSxPQUFPLG1DQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNqRSxDQUFDO2FBQ0YsQ0FBQyxDQUFFLENBQUUsQ0FBQTtRQUNSLENBQUM7OztPQUFBO0lBQ0gsMkJBQUM7QUFBRCxDQUFDLEFBMUNELElBMENDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBQYXJzZWRFdmVudCB9IGZyb20gJy4uLy4uL2V2ZW50c291cmNlX3BhcnNlcidcbmltcG9ydCB7XG4gIGNyZWF0ZUFzeW5jSXRlcmFibGUsXG4gIFRyYW5zZm9ybVN0cmVhbSxcbiAgVGV4dERlY29kZXJTdHJlYW0sXG4gIGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtLFxuICB0b1BvbHlmaWxsUmVhZGFibGUsXG59IGZyb20gJy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHR5cGUgeyBBcmtJbnB1dERhdGEsIEFya0dlbmVyYXRlVGV4dE91dHB1dCwgQXJrU3RyZWFtVGV4dE91dHB1dCB9IGZyb20gJy4vdHlwZSdcbmltcG9ydCB0eXBlIHsgQ2hhdE1vZGVsLCBTdHJlYW1UZXh0UmVzdWx0LCBNb2RlbFJlcSB9IGZyb20gJy4uLy4uL3R5cGUnXG5cbmV4cG9ydCBjbGFzcyBBcmtNb2RlbCBpbXBsZW1lbnRzIENoYXRNb2RlbCB7XG4gIHB1YmxpYyBzdWJVcmwgPSAnYXJrL2FwaS92My9jaGF0L2NvbXBsZXRpb25zJ1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogTW9kZWxSZXEsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcsIHN1YlVybD86IHN0cmluZykge1xuICAgIGlmIChzdWJVcmwgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zdWJVcmwgPSBzdWJVcmxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCB1cmwoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLnN1YlVybH1gXG4gIH1cblxuICBhc3luYyBnZW5lcmF0ZVRleHQoZGF0YTogQXJrSW5wdXREYXRhKSB7XG4gICAgY29uc3QgcmVzID0gKGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogZmFsc2UsXG4gICAgICB9LFxuICAgICAgc3RyZWFtOiBmYWxzZSxcbiAgICB9KSkgYXMgQXJrR2VuZXJhdGVUZXh0T3V0cHV0XG4gICAgcmV0dXJuIHtcbiAgICAgIHRleHQ6IChyZXM/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCBhcyBzdHJpbmcpID8/ICcnLFxuICAgICAgcmF3UmVzcG9uc2U6IHJlcyxcbiAgICB9XG4gIH1cblxuICBhc3luYyBzdHJlYW1UZXh0KGRhdGE6IEFya0lucHV0RGF0YSkge1xuICAgIGNvbnN0IHN0cmVhbSA9IGF3YWl0IHRoaXMucmVxKHtcbiAgICAgIHVybDogdGhpcy51cmwsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIC4uLmRhdGEsXG4gICAgICAgIHN0cmVhbTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBzdHJlYW06IHRydWUsXG4gICAgfSlcbiAgICByZXR1cm4gbmV3IEFya01vZGVsU3RyZWFtUmVzdWx0KHN0cmVhbSlcbiAgfVxufVxuXG5jbGFzcyBBcmtNb2RlbFN0cmVhbVJlc3VsdCBpbXBsZW1lbnRzIFN0cmVhbVRleHRSZXN1bHQge1xuICBwcml2YXRlIF9ldmVudFNvdXJjZVN0cmVhbTogUmVhZGFibGVTdHJlYW08UGFyc2VkRXZlbnQ+XG5cbiAgY29uc3RydWN0b3IoX3N0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pIHtcbiAgICBjb25zdCBzdHJlYW0gPSB0b1BvbHlmaWxsUmVhZGFibGUoX3N0cmVhbSkgYXMgdHlwZW9mIF9zdHJlYW1cbiAgICB0aGlzLl9ldmVudFNvdXJjZVN0cmVhbSA9IHN0cmVhbVxuICAgICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gIH1cblxuICBwcml2YXRlIGdldCB0ZWVlZFN0cmVhbSgpIHtcbiAgICBjb25zdCBbczEsIHMyXSA9IHRoaXMuX2V2ZW50U291cmNlU3RyZWFtLnRlZSgpXG4gICAgdGhpcy5fZXZlbnRTb3VyY2VTdHJlYW0gPSBzMlxuICAgIHJldHVybiBzMVxuICB9XG5cbiAgZ2V0IGV2ZW50U291cmNlU3RyZWFtKCkge1xuICAgIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKHRoaXMudGVlZWRTdHJlYW0pXG4gIH1cblxuICBnZXQgZGF0YVN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmV2ZW50U291cmNlU3RyZWFtLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIEFya1N0cmVhbVRleHRPdXRwdXQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIEFya1N0cmVhbVRleHRPdXRwdXRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSlcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cblxuICBnZXQgdGV4dFN0cmVhbSgpIHtcbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSh0aGlzLmRhdGFTdHJlYW0ucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxBcmtTdHJlYW1UZXh0T3V0cHV0LCBzdHJpbmc+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICBjb250cm9sbGVyLmVucXVldWUoY2h1bms/LmNob2ljZXM/LlswXT8ubWVzc2FnZT8uY29udGVudCA/PyAnJylcbiAgICAgIH0sXG4gICAgfSksKSwpXG4gIH1cbn1cbiJdfQ==
127
+ exports.ArkSimpleModel = ArkSimpleModel;
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kZWxzL0Fyay9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFDQU1vQjtBQVdwQixTQUFTLFlBQVksQ0FBQyxLQUF5QjtJQUNyQyxJQUFBLFFBQVEsR0FBdUMsS0FBSyxTQUE1QyxFQUFFLEtBQUssR0FBZ0MsS0FBSyxNQUFyQyxFQUFFLFdBQVcsR0FBbUIsS0FBSyxZQUF4QixFQUFFLEtBQUssR0FBWSxLQUFLLE1BQWpCLEVBQUUsS0FBSyxHQUFLLEtBQUssTUFBVixDQUFVO0lBRTVELDZCQUNLLEtBQUssS0FDUixRQUFRLFVBQUEsRUFDUixLQUFLLE9BQUEsRUFDTCxLQUFLLEVBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLEdBQUcsQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLHVCQUNyQixJQUFJLEtBQ1AsUUFBUSx3QkFBTyxJQUFJLENBQUMsUUFBUSxLQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLE9BQzlFLEVBSHdCLENBR3hCLENBQUMsRUFDSCxLQUFLLE9BQUEsRUFDTCxXQUFXLGFBQUEsSUFDWjtBQUNILENBQUM7QUFFRDtJQUVFLHdCQUFvQixHQUFhLEVBQVMsT0FBZSxFQUFFLE1BQWU7UUFBdEQsUUFBRyxHQUFILEdBQUcsQ0FBVTtRQUFTLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFEbEQsV0FBTSxHQUFHLDZCQUE2QixDQUFBO1FBRTNDLElBQUksTUFBTSxJQUFJLElBQUksRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtTQUNyQjtJQUNILENBQUM7SUFFRCxzQkFBWSwrQkFBRzthQUFmO1lBQ0UsT0FBTyxVQUFHLElBQUksQ0FBQyxPQUFPLGNBQUksSUFBSSxDQUFDLE1BQU0sQ0FBRSxDQUFBO1FBQ3pDLENBQUM7OztPQUFBO0lBRVksbUNBQVUsR0FBdkIsVUFBd0IsSUFBd0I7Ozs7OzRCQUNqQyxXQUFNLElBQUksQ0FBQyxHQUFHLENBQUM7NEJBQzFCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRzs0QkFDYixJQUFJLHdCQUNDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FDckIsTUFBTSxFQUFFLEtBQUssR0FDZDs0QkFDRCxNQUFNLEVBQUUsS0FBSzt5QkFDZCxDQUFDLEVBQUE7O3dCQVBJLEdBQUcsR0FBRyxDQUFDLFNBT1gsQ0FBMEI7d0JBQzVCLGlDQUFZLEdBQUcsS0FBRSxXQUFXLEVBQUUsR0FBRyxLQUFFOzs7O0tBQ3BDO0lBRVksaUNBQVEsR0FBckIsVUFBc0IsSUFBd0I7Ozs7Ozt3QkFDeEMsVUFBVSxHQUFtQixJQUFJLENBQUE7d0JBQ3JCLFdBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQztnQ0FDN0IsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2dDQUNiLElBQUksd0JBQ0MsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUNyQixNQUFNLEVBQUUsSUFBSSxHQUNiO2dDQUNELE1BQU0sRUFBRSxJQUFJOzZCQUNiLENBQUMsRUFBQTs7d0JBUEksT0FBTyxHQUFHLFNBT2Q7d0JBQ0ksTUFBTSxHQUFHLElBQUEsMEJBQWtCLEVBQUMsT0FBTyxDQUFtQixDQUFBO3dCQUV0RCxTQUFTLEdBQUcsSUFBQSwwQkFBa0IsRUFBc0IsTUFBTSxDQUFDLENBQUE7d0JBQzNELGFBQWEsR0FBRyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksdUJBQWUsQ0FBdUU7NEJBQ3BJLFNBQVMsWUFBQyxLQUFLLEVBQUUsVUFBVTtnQ0FDekIsSUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBQyxNQUFNO29DQUMxQyxJQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFBO29DQUM1QixJQUFJLFVBQVUsSUFBSSxJQUFJO3dDQUFFLFVBQVUsR0FBRyxJQUFBLGtDQUEwQixFQUFDLE9BQU8sQ0FBQyxDQUFBO29DQUN4RSxJQUFJLFVBQVUsRUFBRTt3Q0FDZCw2QkFDSyxNQUFNLEtBQ1QsYUFBYSxFQUFFLFlBQXFCLEVBQ3BDLEtBQUssRUFBRSxPQUFPLElBQ2Y7cUNBQ0Y7b0NBQ0QsT0FBTyxNQUFNLENBQUE7Z0NBQ2YsQ0FBQyxDQUFDLENBQUE7Z0NBQ0YsSUFBTSxRQUFRLHlCQUFRLEtBQUssS0FBRSxPQUFPLEVBQUUsVUFBVSxHQUFFLENBQUE7Z0NBQ2xELFVBQVUsQ0FBQyxPQUFPLHVCQUFNLFFBQVEsS0FBRSxXQUFXLEVBQUUsS0FBSyxJQUFHLENBQUE7NEJBQ3pELENBQUM7eUJBQ0YsQ0FBQyxDQUFFLENBQUE7d0JBRUosV0FBTyxJQUFBLDJCQUFtQixFQUFDLGFBQWEsQ0FBQyxFQUFBOzs7O0tBQzFDO0lBQ0gscUJBQUM7QUFBRCxDQUFDLEFBMURELElBMERDO0FBMURZLHdDQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlQXN5bmNJdGVyYWJsZSxcbiAgVHJhbnNmb3JtU3RyZWFtLFxuICB0b1BvbHlmaWxsUmVhZGFibGUsXG4gIGludG9TdGFuZGFyZFN0cmVhbSxcbiAgaXNUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UsXG59IGZyb20gJy4uLy4uL3V0aWxzJ1xuaW1wb3J0IHR5cGUgeyBBcmtHZW5lcmF0ZVRleHRPdXRwdXQsIEFya0lucHV0RGF0YSwgQXJrU3RyZWFtVGV4dE91dHB1dCB9IGZyb20gJy4vdHlwZSdcbmltcG9ydCB0eXBlIHtcbiAgTW9kZWxSZXEsXG4gIEJhc2VDaGF0TW9kZWxJbnB1dCxcbiAgU2ltcGxlQ2hhdE1vZGVsLFxuICBEb0dlbmVyYXRlT3V0cHV0LFxuICBEb1N0cmVhbU91dHB1dCxcbiAgQmFzZURvU3RyZWFtT3V0cHV0Q2h1bmssXG59IGZyb20gJy4uLy4uL3R5cGUnXG5cbmZ1bmN0aW9uIHByb2Nlc3NJbnB1dChpbnB1dDogQmFzZUNoYXRNb2RlbElucHV0KTogQXJrSW5wdXREYXRhIHtcbiAgY29uc3QgeyBtZXNzYWdlcywgbW9kZWwsIHRlbXBlcmF0dXJlLCB0b29scywgdG9wX3AgfSA9IGlucHV0XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5pbnB1dCxcbiAgICBtZXNzYWdlcyxcbiAgICBtb2RlbCxcbiAgICB0b29sczogdG9vbHM/Lm1hcCh0b29sID0+ICh7XG4gICAgICAuLi50b29sLFxuICAgICAgZnVuY3Rpb246IHsgLi4udG9vbC5mdW5jdGlvbiwgcGFyYW1ldGVyczogSlNPTi5wYXJzZSh0b29sLmZ1bmN0aW9uLnBhcmFtZXRlcnMpIH0sXG4gICAgfSkpLFxuICAgIHRvcF9wLFxuICAgIHRlbXBlcmF0dXJlLFxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBcmtTaW1wbGVNb2RlbCBpbXBsZW1lbnRzIFNpbXBsZUNoYXRNb2RlbCB7XG4gIHB1YmxpYyBzdWJVcmwgPSAnYXJrL2FwaS92My9jaGF0L2NvbXBsZXRpb25zJ1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcTogTW9kZWxSZXEsIHB1YmxpYyBiYXNlVXJsOiBzdHJpbmcsIHN1YlVybD86IHN0cmluZykge1xuICAgIGlmIChzdWJVcmwgIT0gbnVsbCkge1xuICAgICAgdGhpcy5zdWJVcmwgPSBzdWJVcmxcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCB1cmwoKSB7XG4gICAgcmV0dXJuIGAke3RoaXMuYmFzZVVybH0vJHt0aGlzLnN1YlVybH1gXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZG9HZW5lcmF0ZShkYXRhOiBCYXNlQ2hhdE1vZGVsSW5wdXQpOiBQcm9taXNlPERvR2VuZXJhdGVPdXRwdXQ+IHtcbiAgICBjb25zdCByZXMgPSAoYXdhaXQgdGhpcy5yZXEoe1xuICAgICAgdXJsOiB0aGlzLnVybCxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgLi4ucHJvY2Vzc0lucHV0KGRhdGEpLFxuICAgICAgICBzdHJlYW06IGZhbHNlLFxuICAgICAgfSxcbiAgICAgIHN0cmVhbTogZmFsc2UsXG4gICAgfSkpIGFzIEFya0dlbmVyYXRlVGV4dE91dHB1dFxuICAgIHJldHVybiB7IC4uLnJlcywgcmF3UmVzcG9uc2U6IHJlcyB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZG9TdHJlYW0oZGF0YTogQmFzZUNoYXRNb2RlbElucHV0KTogUHJvbWlzZTxEb1N0cmVhbU91dHB1dD4ge1xuICAgIGxldCBpc1Rvb2xDYWxsOiBudWxsIHwgYm9vbGVhbiA9IG51bGxcbiAgICBjb25zdCBfc3RyZWFtID0gYXdhaXQgdGhpcy5yZXEoe1xuICAgICAgdXJsOiB0aGlzLnVybCxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgLi4ucHJvY2Vzc0lucHV0KGRhdGEpLFxuICAgICAgICBzdHJlYW06IHRydWUsXG4gICAgICB9LFxuICAgICAgc3RyZWFtOiB0cnVlLFxuICAgIH0pXG4gICAgY29uc3Qgc3RyZWFtID0gdG9Qb2x5ZmlsbFJlYWRhYmxlKF9zdHJlYW0pIGFzIHR5cGVvZiBfc3RyZWFtXG5cbiAgICBjb25zdCBhcmtTdHJlYW0gPSBpbnRvU3RhbmRhcmRTdHJlYW08QXJrU3RyZWFtVGV4dE91dHB1dD4oc3RyZWFtKVxuICAgIGNvbnN0IHN0cmVhbVdpdGhSYXcgPSBhcmtTdHJlYW0ucGlwZVRocm91Z2gobmV3IFRyYW5zZm9ybVN0cmVhbTxBcmtTdHJlYW1UZXh0T3V0cHV0LCBCYXNlRG9TdHJlYW1PdXRwdXRDaHVuayAmIHsgcmF3UmVzcG9uc2U/OiBhbnkgfT4oe1xuICAgICAgdHJhbnNmb3JtKGNodW5rLCBjb250cm9sbGVyKSB7XG4gICAgICAgIGNvbnN0IG5ld0Nob2ljZXMgPSBjaHVuay5jaG9pY2VzLm1hcCgoY2hvaWNlKSA9PiB7XG4gICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGNob2ljZS5kZWx0YVxuICAgICAgICAgIGlmIChpc1Rvb2xDYWxsID09IG51bGwpIGlzVG9vbENhbGwgPSBpc1Rvb2xDYWxsQXNzaXN0YW50TWVzc2FnZShtZXNzYWdlKVxuICAgICAgICAgIGlmIChpc1Rvb2xDYWxsKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi5jaG9pY2UsXG4gICAgICAgICAgICAgIGZpbmlzaF9yZWFzb246ICd0b29sX2NhbGxzJyBhcyBjb25zdCxcbiAgICAgICAgICAgICAgZGVsdGE6IG1lc3NhZ2UsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBjaG9pY2VcbiAgICAgICAgfSlcbiAgICAgICAgY29uc3QgbmV3Q2h1bmsgPSB7IC4uLmNodW5rLCBjaG9pY2VzOiBuZXdDaG9pY2VzIH1cbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHsgLi4ubmV3Q2h1bmssIHJhd1Jlc3BvbnNlOiBjaHVuayB9KVxuICAgICAgfSxcbiAgICB9KSwpXG5cbiAgICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZShzdHJlYW1XaXRoUmF3KVxuICB9XG59XG4iXX0=