supercompat 1.5.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1412 -1038
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +63 -40
- package/dist/index.d.ts +63 -40
- package/dist/index.js +1406 -1040
- package/dist/index.js.map +1 -1
- package/dist/supercompat.cjs +123 -1
- package/dist/supercompat.cjs.map +1 -1
- package/dist/supercompat.d.cts +6 -4
- package/dist/supercompat.d.ts +6 -4
- package/dist/supercompat.js +111 -1
- package/dist/supercompat.js.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +2 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/prisma.cjs.map +1 -1
- package/dist/types/prisma.d.cts +2 -0
- package/dist/types/prisma.d.ts +2 -0
- package/dist/types/prisma.js.map +1 -1
- package/package.json +11 -8
package/dist/supercompat.cjs
CHANGED
|
@@ -1,7 +1,67 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
function _array_like_to_array(arr, len) {
|
|
3
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
4
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5
|
+
return arr2;
|
|
6
|
+
}
|
|
7
|
+
function _array_with_holes(arr) {
|
|
8
|
+
if (Array.isArray(arr)) return arr;
|
|
9
|
+
}
|
|
10
|
+
function _array_without_holes(arr) {
|
|
11
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
12
|
+
}
|
|
13
|
+
function _iterable_to_array(iter) {
|
|
14
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
15
|
+
}
|
|
16
|
+
function _iterable_to_array_limit(arr, i) {
|
|
17
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
18
|
+
if (_i == null) return;
|
|
19
|
+
var _arr = [];
|
|
20
|
+
var _n = true;
|
|
21
|
+
var _d = false;
|
|
22
|
+
var _s, _e;
|
|
23
|
+
try {
|
|
24
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
25
|
+
_arr.push(_s.value);
|
|
26
|
+
if (i && _arr.length === i) break;
|
|
27
|
+
}
|
|
28
|
+
} catch (err) {
|
|
29
|
+
_d = true;
|
|
30
|
+
_e = err;
|
|
31
|
+
} finally{
|
|
32
|
+
try {
|
|
33
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
34
|
+
} finally{
|
|
35
|
+
if (_d) throw _e;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return _arr;
|
|
39
|
+
}
|
|
40
|
+
function _non_iterable_rest() {
|
|
41
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
42
|
+
}
|
|
43
|
+
function _non_iterable_spread() {
|
|
44
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
45
|
+
}
|
|
46
|
+
function _sliced_to_array(arr, i) {
|
|
47
|
+
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
48
|
+
}
|
|
49
|
+
function _to_consumable_array(arr) {
|
|
50
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
51
|
+
}
|
|
52
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
53
|
+
if (!o) return;
|
|
54
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
55
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
56
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
57
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
58
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
59
|
+
}
|
|
60
|
+
var __create = Object.create;
|
|
2
61
|
var __defProp = Object.defineProperty;
|
|
3
62
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
63
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
64
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
5
65
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
66
|
var __export = function(target, all) {
|
|
7
67
|
for(var name in all)__defProp(target, name, {
|
|
@@ -40,6 +100,16 @@ var __copyProps = function(to, from, except, desc) {
|
|
|
40
100
|
}
|
|
41
101
|
return to;
|
|
42
102
|
};
|
|
103
|
+
var __toESM = function(mod, isNodeMode, target) {
|
|
104
|
+
return target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(// If the importer is in node compatibility mode or this is not an ESM
|
|
105
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
106
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
107
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
108
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
109
|
+
value: mod,
|
|
110
|
+
enumerable: true
|
|
111
|
+
}) : target, mod);
|
|
112
|
+
};
|
|
43
113
|
var __toCommonJS = function(mod) {
|
|
44
114
|
return __copyProps(__defProp({}, "__esModule", {
|
|
45
115
|
value: true
|
|
@@ -53,8 +123,10 @@ __export(supercompat_exports, {
|
|
|
53
123
|
}
|
|
54
124
|
});
|
|
55
125
|
module.exports = __toCommonJS(supercompat_exports);
|
|
126
|
+
var import_openai = __toESM(require("openai"), 1);
|
|
127
|
+
// src/supercompatFetch/requestHandlers.ts
|
|
56
128
|
var import_radash = require("radash");
|
|
57
|
-
var
|
|
129
|
+
var requestHandlers = function(param) {
|
|
58
130
|
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
59
131
|
return (0, import_radash.assign)(client, storage({
|
|
60
132
|
runAdapter: (0, import_radash.partob)(runAdapter, {
|
|
@@ -62,6 +134,56 @@ var supercompat = function(param) {
|
|
|
62
134
|
})
|
|
63
135
|
}));
|
|
64
136
|
};
|
|
137
|
+
// src/supercompatFetch/findRequestHandler.ts
|
|
138
|
+
var findRequestHandler = function(param) {
|
|
139
|
+
var url = param.url, requestHandlers2 = param.requestHandlers;
|
|
140
|
+
var pathname = new URL(url).pathname;
|
|
141
|
+
for(var key in requestHandlers2){
|
|
142
|
+
var regex = new RegExp(key);
|
|
143
|
+
if (regex.test(pathname)) {
|
|
144
|
+
return requestHandlers2[key];
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
};
|
|
148
|
+
// src/supercompatFetch/index.ts
|
|
149
|
+
var supercompatFetch = function(param) {
|
|
150
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
151
|
+
var requestHandlers2 = requestHandlers({
|
|
152
|
+
client: client,
|
|
153
|
+
storage: storage,
|
|
154
|
+
runAdapter: runAdapter
|
|
155
|
+
});
|
|
156
|
+
return function() {
|
|
157
|
+
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
158
|
+
args[_key] = arguments[_key];
|
|
159
|
+
}
|
|
160
|
+
var _args = _sliced_to_array(args, 2), url = _args[0], options = _args[1];
|
|
161
|
+
var pathHandler = findRequestHandler({
|
|
162
|
+
url: url,
|
|
163
|
+
requestHandlers: requestHandlers2
|
|
164
|
+
});
|
|
165
|
+
if (!pathHandler) {
|
|
166
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
167
|
+
}
|
|
168
|
+
var requestHandler = pathHandler[options === null || options === void 0 ? void 0 : options.method];
|
|
169
|
+
if (!requestHandler) {
|
|
170
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
171
|
+
}
|
|
172
|
+
return requestHandler.apply(void 0, _to_consumable_array(args));
|
|
173
|
+
};
|
|
174
|
+
};
|
|
175
|
+
// src/supercompat.ts
|
|
176
|
+
var supercompat = function(param) {
|
|
177
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
178
|
+
return new import_openai.default({
|
|
179
|
+
apiKey: "SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY",
|
|
180
|
+
fetch: supercompatFetch({
|
|
181
|
+
client: client,
|
|
182
|
+
storage: storage,
|
|
183
|
+
runAdapter: runAdapter
|
|
184
|
+
})
|
|
185
|
+
});
|
|
186
|
+
};
|
|
65
187
|
// Annotate the CommonJS export names for ESM import in node:
|
|
66
188
|
0 && (module.exports = {
|
|
67
189
|
supercompat: supercompat
|
package/dist/supercompat.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/supercompat.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/index.ts"],"names":["requestHandlers","OpenAI"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAmB;;;ACCnB,oBAA+B;AAGxB,IAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,UAKE;AAAA,EACE;AAAA,EACA,QAAQ;AAAA,IACN,gBAAY,sBAAO,YAAY,EAAE,OAAO,CAAC;AAAA,EAC3C,CAAC;AACH;;;AClBK,IAAM,qBAAqB,CAAC;AAAA,EACjC;AAAA,EACA,iBAAAA;AACF,MAGM;AACJ,QAAM,WAAW,IAAI,IAAI,GAAG,EAAE;AAE9B,aAAW,OAAOA,kBAAiB;AACjC,UAAM,QAAQ,IAAI,OAAO,GAAG;AAE5B,QAAI,MAAM,KAAK,QAAQ,GAAG;AACxB,aAAOA,iBAAgB,GAAG;AAAA,IAC5B;AAAA,EACF;AACF;;;ACNO,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAMA,mBAAkB,gBAAmB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,SAAO,IAAI,SAAgB;AACzB,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,cAAc,mBAAmB;AAAA,MACrC;AAAA,MACA,iBAAAA;AAAA,IACF,CAAC;AAED,QAAI,CAAC,aAAa;AAEhB,aAAO,MAAM,GAAG,IAAI;AAAA,IACtB;AAEA,UAAM,iBAAiB,YAAY,SAAS,MAAM;AAElD,QAAI,CAAC,gBAAgB;AAEnB,aAAO,MAAM,GAAG,IAAI;AAAA,IACtB;AAEA,WAAO,eAAe,GAAG,IAAI;AAAA,EAC/B;AACF;;;AHxCO,IAAM,cAAc,CAAC;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AACF,MACE,IAAI,cAAAC,QAAO;AAAA,EACT,QAAQ;AAAA,EACR,OAAO,iBAAiB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH,CAAC","sourcesContent":["import OpenAI from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\n\nexport const supercompat = ({\n client,\n storage,\n runAdapter,\n}: Args) => (\n new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n)\n","import OpenAI from 'openai'\nimport { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\n\nexport const requestHandlers = ({\n client,\n storage,\n runAdapter,\n}: {\n client: OpenAI\n storage: (arg0: StorageAdapterArgs) => OpenAI\n runAdapter: RunAdapter\n}) => (\n assign(\n client,\n storage({\n runAdapter: partob(runAdapter, { client }),\n }),\n )\n)\n","export const findRequestHandler = ({\n url,\n requestHandlers,\n}: {\n url: string\n requestHandlers: any\n}) => {\n const pathname = new URL(url).pathname\n\n for (const key in requestHandlers) {\n const regex = new RegExp(key)\n\n if (regex.test(pathname)) {\n return requestHandlers[key]\n }\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\n\nexport type Args = {\n client: any\n storage: (arg0: StorageAdapterArgs) => any\n runAdapter: RunAdapter\n}\n\nexport const supercompatFetch = ({\n client,\n storage,\n runAdapter,\n}: Args) => {\n const requestHandlers = getRequestHandlers({\n client,\n storage,\n runAdapter,\n })\n\n return (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n\n const requestHandler = pathHandler[options?.method]\n\n if (!requestHandler) {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n\n return requestHandler(...args)\n }\n}\n"]}
|
package/dist/supercompat.d.cts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import { StorageAdapterArgs, RunAdapter } from './types/index.cjs';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
client:
|
|
6
|
-
storage: (arg0: StorageAdapterArgs) =>
|
|
4
|
+
type Args = {
|
|
5
|
+
client: any;
|
|
6
|
+
storage: (arg0: StorageAdapterArgs) => any;
|
|
7
7
|
runAdapter: RunAdapter;
|
|
8
|
-
}
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
declare const supercompat: ({ client, storage, runAdapter, }: Args) => OpenAI;
|
|
9
11
|
|
|
10
12
|
export { supercompat };
|
package/dist/supercompat.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
import { StorageAdapterArgs, RunAdapter } from './types/index.js';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
client:
|
|
6
|
-
storage: (arg0: StorageAdapterArgs) =>
|
|
4
|
+
type Args = {
|
|
5
|
+
client: any;
|
|
6
|
+
storage: (arg0: StorageAdapterArgs) => any;
|
|
7
7
|
runAdapter: RunAdapter;
|
|
8
|
-
}
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
declare const supercompat: ({ client, storage, runAdapter, }: Args) => OpenAI;
|
|
9
11
|
|
|
10
12
|
export { supercompat };
|
package/dist/supercompat.js
CHANGED
|
@@ -1,6 +1,66 @@
|
|
|
1
1
|
// src/supercompat.ts
|
|
2
|
+
function _array_like_to_array(arr, len) {
|
|
3
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
4
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5
|
+
return arr2;
|
|
6
|
+
}
|
|
7
|
+
function _array_with_holes(arr) {
|
|
8
|
+
if (Array.isArray(arr)) return arr;
|
|
9
|
+
}
|
|
10
|
+
function _array_without_holes(arr) {
|
|
11
|
+
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
12
|
+
}
|
|
13
|
+
function _iterable_to_array(iter) {
|
|
14
|
+
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
15
|
+
}
|
|
16
|
+
function _iterable_to_array_limit(arr, i) {
|
|
17
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
18
|
+
if (_i == null) return;
|
|
19
|
+
var _arr = [];
|
|
20
|
+
var _n = true;
|
|
21
|
+
var _d = false;
|
|
22
|
+
var _s, _e;
|
|
23
|
+
try {
|
|
24
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
25
|
+
_arr.push(_s.value);
|
|
26
|
+
if (i && _arr.length === i) break;
|
|
27
|
+
}
|
|
28
|
+
} catch (err) {
|
|
29
|
+
_d = true;
|
|
30
|
+
_e = err;
|
|
31
|
+
} finally{
|
|
32
|
+
try {
|
|
33
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
34
|
+
} finally{
|
|
35
|
+
if (_d) throw _e;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return _arr;
|
|
39
|
+
}
|
|
40
|
+
function _non_iterable_rest() {
|
|
41
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
42
|
+
}
|
|
43
|
+
function _non_iterable_spread() {
|
|
44
|
+
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
45
|
+
}
|
|
46
|
+
function _sliced_to_array(arr, i) {
|
|
47
|
+
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
48
|
+
}
|
|
49
|
+
function _to_consumable_array(arr) {
|
|
50
|
+
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
51
|
+
}
|
|
52
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
53
|
+
if (!o) return;
|
|
54
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
55
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
56
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
57
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
58
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
59
|
+
}
|
|
60
|
+
import OpenAI from "openai";
|
|
61
|
+
// src/supercompatFetch/requestHandlers.ts
|
|
2
62
|
import { assign, partob } from "radash";
|
|
3
|
-
var
|
|
63
|
+
var requestHandlers = function(param) {
|
|
4
64
|
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
5
65
|
return assign(client, storage({
|
|
6
66
|
runAdapter: partob(runAdapter, {
|
|
@@ -8,5 +68,55 @@ var supercompat = function(param) {
|
|
|
8
68
|
})
|
|
9
69
|
}));
|
|
10
70
|
};
|
|
71
|
+
// src/supercompatFetch/findRequestHandler.ts
|
|
72
|
+
var findRequestHandler = function(param) {
|
|
73
|
+
var url = param.url, requestHandlers2 = param.requestHandlers;
|
|
74
|
+
var pathname = new URL(url).pathname;
|
|
75
|
+
for(var key in requestHandlers2){
|
|
76
|
+
var regex = new RegExp(key);
|
|
77
|
+
if (regex.test(pathname)) {
|
|
78
|
+
return requestHandlers2[key];
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
// src/supercompatFetch/index.ts
|
|
83
|
+
var supercompatFetch = function(param) {
|
|
84
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
85
|
+
var requestHandlers2 = requestHandlers({
|
|
86
|
+
client: client,
|
|
87
|
+
storage: storage,
|
|
88
|
+
runAdapter: runAdapter
|
|
89
|
+
});
|
|
90
|
+
return function() {
|
|
91
|
+
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
92
|
+
args[_key] = arguments[_key];
|
|
93
|
+
}
|
|
94
|
+
var _args = _sliced_to_array(args, 2), url = _args[0], options = _args[1];
|
|
95
|
+
var pathHandler = findRequestHandler({
|
|
96
|
+
url: url,
|
|
97
|
+
requestHandlers: requestHandlers2
|
|
98
|
+
});
|
|
99
|
+
if (!pathHandler) {
|
|
100
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
101
|
+
}
|
|
102
|
+
var requestHandler = pathHandler[options === null || options === void 0 ? void 0 : options.method];
|
|
103
|
+
if (!requestHandler) {
|
|
104
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
105
|
+
}
|
|
106
|
+
return requestHandler.apply(void 0, _to_consumable_array(args));
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
// src/supercompat.ts
|
|
110
|
+
var supercompat = function(param) {
|
|
111
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
112
|
+
return new OpenAI({
|
|
113
|
+
apiKey: "SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY",
|
|
114
|
+
fetch: supercompatFetch({
|
|
115
|
+
client: client,
|
|
116
|
+
storage: storage,
|
|
117
|
+
runAdapter: runAdapter
|
|
118
|
+
})
|
|
119
|
+
});
|
|
120
|
+
};
|
|
11
121
|
export { supercompat };
|
|
12
122
|
//# sourceMappingURL=supercompat.js.map
|
package/dist/supercompat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/supercompat.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/index.ts"],"names":["requestHandlers"],"mappings":";AAAA,OAAO,YAAY;;;ACCnB,SAAS,QAAQ,cAAc;AAGxB,IAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,MAKE;AAAA,EACE;AAAA,EACA,QAAQ;AAAA,IACN,YAAY,OAAO,YAAY,EAAE,OAAO,CAAC;AAAA,EAC3C,CAAC;AACH;;;AClBK,IAAM,qBAAqB,CAAC;AAAA,EACjC;AAAA,EACA,iBAAAA;AACF,MAGM;AACJ,QAAM,WAAW,IAAI,IAAI,GAAG,EAAE;AAE9B,aAAW,OAAOA,kBAAiB;AACjC,UAAM,QAAQ,IAAI,OAAO,GAAG;AAE5B,QAAI,MAAM,KAAK,QAAQ,GAAG;AACxB,aAAOA,iBAAgB,GAAG;AAAA,IAC5B;AAAA,EACF;AACF;;;ACNO,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAMA,mBAAkB,gBAAmB;AAAA,IACzC;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,SAAO,IAAI,SAAgB;AACzB,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,cAAc,mBAAmB;AAAA,MACrC;AAAA,MACA,iBAAAA;AAAA,IACF,CAAC;AAED,QAAI,CAAC,aAAa;AAEhB,aAAO,MAAM,GAAG,IAAI;AAAA,IACtB;AAEA,UAAM,iBAAiB,YAAY,SAAS,MAAM;AAElD,QAAI,CAAC,gBAAgB;AAEnB,aAAO,MAAM,GAAG,IAAI;AAAA,IACtB;AAEA,WAAO,eAAe,GAAG,IAAI;AAAA,EAC/B;AACF;;;AHxCO,IAAM,cAAc,CAAC;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AACF,MACE,IAAI,OAAO;AAAA,EACT,QAAQ;AAAA,EACR,OAAO,iBAAiB;AAAA,IACtB;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH,CAAC","sourcesContent":["import OpenAI from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\n\nexport const supercompat = ({\n client,\n storage,\n runAdapter,\n}: Args) => (\n new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n)\n","import OpenAI from 'openai'\nimport { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\n\nexport const requestHandlers = ({\n client,\n storage,\n runAdapter,\n}: {\n client: OpenAI\n storage: (arg0: StorageAdapterArgs) => OpenAI\n runAdapter: RunAdapter\n}) => (\n assign(\n client,\n storage({\n runAdapter: partob(runAdapter, { client }),\n }),\n )\n)\n","export const findRequestHandler = ({\n url,\n requestHandlers,\n}: {\n url: string\n requestHandlers: any\n}) => {\n const pathname = new URL(url).pathname\n\n for (const key in requestHandlers) {\n const regex = new RegExp(key)\n\n if (regex.test(pathname)) {\n return requestHandlers[key]\n }\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\n\nexport type Args = {\n client: any\n storage: (arg0: StorageAdapterArgs) => any\n runAdapter: RunAdapter\n}\n\nexport const supercompatFetch = ({\n client,\n storage,\n runAdapter,\n}: Args) => {\n const requestHandlers = getRequestHandlers({\n client,\n storage,\n runAdapter,\n })\n\n return (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n\n const requestHandler = pathHandler[options?.method]\n\n if (!requestHandler) {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n\n return requestHandler(...args)\n }\n}\n"]}
|
package/dist/types/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA","sourcesContent":["import type OpenAI from 'openai'\n\nexport type MessageWithRun = OpenAI.Beta.Threads.Message & {\n run: (OpenAI.Beta.Threads.Run & {\n runSteps: OpenAI.Beta.Threads.Runs.RunStep[]\n }) | null\n}\n\nexport type RunAdapter = ({\n client,\n run,\n onEvent,\n getMessages,\n}: {\n client: OpenAI\n run: OpenAI.Beta.Threads.Run\n onEvent: (event: OpenAI.Beta.AssistantStreamEvent) => Promise<any>\n getMessages: () => Promise<MessageWithRun[]>\n}) => Promise<void>\n\nexport type StorageAdapterArgs = {\n runAdapter: RunAdapter\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA","sourcesContent":["import type OpenAI from 'openai'\n\nexport type MessageWithRun = OpenAI.Beta.Threads.Message & {\n run: (OpenAI.Beta.Threads.Run & {\n runSteps: OpenAI.Beta.Threads.Runs.RunStep[]\n }) | null\n}\n\nexport type RunAdapter = ({\n client,\n run,\n onEvent,\n getMessages,\n}: {\n client: OpenAI\n run: OpenAI.Beta.Threads.Run\n onEvent: (event: OpenAI.Beta.AssistantStreamEvent) => Promise<any>\n getMessages: () => Promise<MessageWithRun[]>\n}) => Promise<void>\n\nexport type RunAdapterPartobClient = (args: Omit<Parameters<RunAdapter>[0], 'client'>) => ReturnType<RunAdapter>\n\nexport type StorageAdapterArgs = {\n runAdapter: RunAdapter\n}\n"]}
|
package/dist/types/index.d.cts
CHANGED
|
@@ -11,8 +11,9 @@ type RunAdapter = ({ client, run, onEvent, getMessages, }: {
|
|
|
11
11
|
onEvent: (event: OpenAI.Beta.AssistantStreamEvent) => Promise<any>;
|
|
12
12
|
getMessages: () => Promise<MessageWithRun[]>;
|
|
13
13
|
}) => Promise<void>;
|
|
14
|
+
type RunAdapterPartobClient = (args: Omit<Parameters<RunAdapter>[0], 'client'>) => ReturnType<RunAdapter>;
|
|
14
15
|
type StorageAdapterArgs = {
|
|
15
16
|
runAdapter: RunAdapter;
|
|
16
17
|
};
|
|
17
18
|
|
|
18
|
-
export type { MessageWithRun, RunAdapter, StorageAdapterArgs };
|
|
19
|
+
export type { MessageWithRun, RunAdapter, RunAdapterPartobClient, StorageAdapterArgs };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -11,8 +11,9 @@ type RunAdapter = ({ client, run, onEvent, getMessages, }: {
|
|
|
11
11
|
onEvent: (event: OpenAI.Beta.AssistantStreamEvent) => Promise<any>;
|
|
12
12
|
getMessages: () => Promise<MessageWithRun[]>;
|
|
13
13
|
}) => Promise<void>;
|
|
14
|
+
type RunAdapterPartobClient = (args: Omit<Parameters<RunAdapter>[0], 'client'>) => ReturnType<RunAdapter>;
|
|
14
15
|
type StorageAdapterArgs = {
|
|
15
16
|
runAdapter: RunAdapter;
|
|
16
17
|
};
|
|
17
18
|
|
|
18
|
-
export type { MessageWithRun, RunAdapter, StorageAdapterArgs };
|
|
19
|
+
export type { MessageWithRun, RunAdapter, RunAdapterPartobClient, StorageAdapterArgs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/prisma.ts"],"names":["RunStatus","MessageRole","MessageStatus","RunStepType","RunStepStatus"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,IAAK,YAAL,kBAAKA,eAAL;AACL,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,iBAAc;AACd,EAAAA,WAAA,qBAAkB;AAClB,EAAAA,WAAA,gBAAa;AACb,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,aAAU;AARA,SAAAA;AAAA,GAAA;
|
|
1
|
+
{"version":3,"sources":["../../src/types/prisma.ts"],"names":["RunStatus","MessageRole","MessageStatus","RunStepType","RunStepStatus"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,IAAK,YAAL,kBAAKA,eAAL;AACL,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,iBAAc;AACd,EAAAA,WAAA,qBAAkB;AAClB,EAAAA,WAAA,gBAAa;AACb,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,aAAU;AARA,SAAAA;AAAA,GAAA;AAmCL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,eAAY;AAFF,SAAAA;AAAA,GAAA;AAKL,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,iBAAc;AACd,EAAAA,eAAA,gBAAa;AACb,EAAAA,eAAA,eAAY;AAHF,SAAAA;AAAA,GAAA;AAwBL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,sBAAmB;AACnB,EAAAA,aAAA,gBAAa;AAFH,SAAAA;AAAA,GAAA;AAKL,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,iBAAc;AACd,EAAAA,eAAA,eAAY;AACZ,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,eAAY;AACZ,EAAAA,eAAA,aAAU;AALA,SAAAA;AAAA,GAAA","sourcesContent":["export enum RunStatus {\n QUEUED = \"QUEUED\",\n IN_PROGRESS = \"IN_PROGRESS\",\n REQUIRES_ACTION = \"REQUIRES_ACTION\",\n CANCELLING = \"CANCELLING\",\n CANCELLED = \"CANCELLED\",\n FAILED = \"FAILED\",\n COMPLETED = \"COMPLETED\",\n EXPIRED = \"EXPIRED\",\n}\n\nexport type Run = {\n id: string\n threadId: string\n assistantId: string\n status: RunStatus\n requiredAction?: JSON\n lastError?: JSON\n expiresAt: number\n startedAt?: number\n cancelledAt?: number\n failedAt?: number\n completedAt?: number\n model: string\n instructions: string\n tools: JSON[]\n fileIds: string[]\n metadata?: JSON\n usage?: JSON\n truncationStrategy: JSON\n responseFormat: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport enum MessageRole {\n USER = \"USER\",\n ASSISTANT = \"ASSISTANT\",\n}\n\nexport enum MessageStatus {\n IN_PROGRESS = \"IN_PROGRESS\",\n INCOMPLETE = \"INCOMPLETE\",\n COMPLETED = \"COMPLETED\",\n}\n\nexport type Message = {\n id: string\n threadId: string\n role: MessageRole\n content: JSON[]\n status: MessageStatus\n assistantId?: string\n runId?: string\n completedAt?: string\n incompleteAt?: string\n incompleteDetails?: JSON\n fileIds: string[]\n metadata?: JSON\n toolCalls?: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport enum RunStepType {\n MESSAGE_CREATION = \"MESSAGE_CREATION\",\n TOOL_CALLS = \"TOOL_CALLS\",\n}\n\nexport enum RunStepStatus {\n IN_PROGRESS = \"IN_PROGRESS\",\n CANCELLED = \"CANCELLED\",\n FAILED = \"FAILED\",\n COMPLETED = \"COMPLETED\",\n EXPIRED = \"EXPIRED\",\n}\n\nexport type RunStep = {\n id: string\n threadId: string\n assistantId: string\n runId: string\n type: RunStepType\n status: RunStepStatus\n stepDetails: JSON\n lastError?: JSON\n expiredAt?: number\n cancelledAt?: number\n failedAt?: number\n completedAt?: number\n metadata?: JSON\n usage?: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport type MessageWithRun = Message & {\n run: (Run & {\n runSteps: RunStep[]\n }) | null\n}\n"]}
|
package/dist/types/prisma.d.cts
CHANGED
package/dist/types/prisma.d.ts
CHANGED
package/dist/types/prisma.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/prisma.ts"],"names":["RunStatus","MessageRole","MessageStatus","RunStepType","RunStepStatus"],"mappings":";AAAO,IAAK,YAAL,kBAAKA,eAAL;AACL,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,iBAAc;AACd,EAAAA,WAAA,qBAAkB;AAClB,EAAAA,WAAA,gBAAa;AACb,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,aAAU;AARA,SAAAA;AAAA,GAAA;
|
|
1
|
+
{"version":3,"sources":["../../src/types/prisma.ts"],"names":["RunStatus","MessageRole","MessageStatus","RunStepType","RunStepStatus"],"mappings":";AAAO,IAAK,YAAL,kBAAKA,eAAL;AACL,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,iBAAc;AACd,EAAAA,WAAA,qBAAkB;AAClB,EAAAA,WAAA,gBAAa;AACb,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,YAAS;AACT,EAAAA,WAAA,eAAY;AACZ,EAAAA,WAAA,aAAU;AARA,SAAAA;AAAA,GAAA;AAmCL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,eAAY;AAFF,SAAAA;AAAA,GAAA;AAKL,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,iBAAc;AACd,EAAAA,eAAA,gBAAa;AACb,EAAAA,eAAA,eAAY;AAHF,SAAAA;AAAA,GAAA;AAwBL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,sBAAmB;AACnB,EAAAA,aAAA,gBAAa;AAFH,SAAAA;AAAA,GAAA;AAKL,IAAK,gBAAL,kBAAKC,mBAAL;AACL,EAAAA,eAAA,iBAAc;AACd,EAAAA,eAAA,eAAY;AACZ,EAAAA,eAAA,YAAS;AACT,EAAAA,eAAA,eAAY;AACZ,EAAAA,eAAA,aAAU;AALA,SAAAA;AAAA,GAAA","sourcesContent":["export enum RunStatus {\n QUEUED = \"QUEUED\",\n IN_PROGRESS = \"IN_PROGRESS\",\n REQUIRES_ACTION = \"REQUIRES_ACTION\",\n CANCELLING = \"CANCELLING\",\n CANCELLED = \"CANCELLED\",\n FAILED = \"FAILED\",\n COMPLETED = \"COMPLETED\",\n EXPIRED = \"EXPIRED\",\n}\n\nexport type Run = {\n id: string\n threadId: string\n assistantId: string\n status: RunStatus\n requiredAction?: JSON\n lastError?: JSON\n expiresAt: number\n startedAt?: number\n cancelledAt?: number\n failedAt?: number\n completedAt?: number\n model: string\n instructions: string\n tools: JSON[]\n fileIds: string[]\n metadata?: JSON\n usage?: JSON\n truncationStrategy: JSON\n responseFormat: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport enum MessageRole {\n USER = \"USER\",\n ASSISTANT = \"ASSISTANT\",\n}\n\nexport enum MessageStatus {\n IN_PROGRESS = \"IN_PROGRESS\",\n INCOMPLETE = \"INCOMPLETE\",\n COMPLETED = \"COMPLETED\",\n}\n\nexport type Message = {\n id: string\n threadId: string\n role: MessageRole\n content: JSON[]\n status: MessageStatus\n assistantId?: string\n runId?: string\n completedAt?: string\n incompleteAt?: string\n incompleteDetails?: JSON\n fileIds: string[]\n metadata?: JSON\n toolCalls?: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport enum RunStepType {\n MESSAGE_CREATION = \"MESSAGE_CREATION\",\n TOOL_CALLS = \"TOOL_CALLS\",\n}\n\nexport enum RunStepStatus {\n IN_PROGRESS = \"IN_PROGRESS\",\n CANCELLED = \"CANCELLED\",\n FAILED = \"FAILED\",\n COMPLETED = \"COMPLETED\",\n EXPIRED = \"EXPIRED\",\n}\n\nexport type RunStep = {\n id: string\n threadId: string\n assistantId: string\n runId: string\n type: RunStepType\n status: RunStepStatus\n stepDetails: JSON\n lastError?: JSON\n expiredAt?: number\n cancelledAt?: number\n failedAt?: number\n completedAt?: number\n metadata?: JSON\n usage?: JSON\n createdAt: string\n updatedAt: string\n}\n\nexport type MessageWithRun = Message & {\n run: (Run & {\n runSteps: RunStep[]\n }) | null\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "supercompat",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -20,15 +20,18 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"dayjs": "^1.11.11",
|
|
23
|
+
"deepmerge-ts": "^7.0.3",
|
|
23
24
|
"lodash": "^4.17.21",
|
|
24
|
-
"
|
|
25
|
+
"openai": "^4.52.0",
|
|
26
|
+
"radash": "^12.1.0",
|
|
27
|
+
"ts-deepmerge": "^7.0.0"
|
|
25
28
|
},
|
|
26
29
|
"devDependencies": {
|
|
27
|
-
"@anthropic-ai/sdk": "^0.
|
|
28
|
-
"@mistralai/mistralai": "^0.
|
|
29
|
-
"@prisma/client": "^5.
|
|
30
|
-
"@types/lodash": "^4.17.
|
|
31
|
-
"
|
|
32
|
-
"tsup": "^8.0
|
|
30
|
+
"@anthropic-ai/sdk": "^0.24.0",
|
|
31
|
+
"@mistralai/mistralai": "^0.5.0",
|
|
32
|
+
"@prisma/client": "^5.15.1",
|
|
33
|
+
"@types/lodash": "^4.17.5",
|
|
34
|
+
"groq-sdk": "^0.5.0",
|
|
35
|
+
"tsup": "^8.1.0"
|
|
33
36
|
}
|
|
34
37
|
}
|