supercompat 4.1.0 → 4.2.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.
@@ -311,29 +311,29 @@ var import_openai = __toESM(require("openai"), 1);
311
311
  // src/supercompatFetch/requestHandlers.ts
312
312
  var import_radash = require("radash");
313
313
  var storageRequestHandlers = function(param) {
314
- var storage = param.storage, runAdapter = param.runAdapter, client = param.client;
315
- if (!storage) return {};
314
+ var storageAdapter = param.storageAdapter, runAdapter = param.runAdapter, clientAdapter = param.clientAdapter;
315
+ if (!storageAdapter) return {};
316
316
  if (!runAdapter) return {};
317
317
  var wrappedClient = supercompat({
318
- client: client
318
+ clientAdapter: clientAdapter
319
319
  });
320
- var result = storage({
320
+ var result = storageAdapter({
321
321
  runAdapter: _object_spread_props(_object_spread({}, runAdapter), {
322
322
  handleRun: (0, import_radash.partob)(runAdapter.handleRun, {
323
323
  client: wrappedClient
324
324
  })
325
325
  }),
326
326
  client: wrappedClient,
327
- originalClient: client
327
+ originalClientAdapter: clientAdapter
328
328
  });
329
329
  return result.requestHandlers;
330
330
  };
331
331
  var requestHandlers = function(param) {
332
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
333
- return (0, import_radash.assign)(client.requestHandlers, storageRequestHandlers({
334
- storage: storage,
332
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
333
+ return (0, import_radash.assign)(clientAdapter.requestHandlers, storageRequestHandlers({
334
+ storageAdapter: storageAdapter,
335
335
  runAdapter: runAdapter,
336
- client: client
336
+ clientAdapter: clientAdapter
337
337
  }));
338
338
  };
339
339
  // src/supercompatFetch/findRequestHandler.ts
@@ -350,20 +350,20 @@ var findRequestHandler = function(param) {
350
350
  };
351
351
  // src/supercompatFetch/originalFetch.ts
352
352
  var originalFetch = function(param) {
353
- var args = param.args, client = param.client;
353
+ var args = param.args, clientAdapter = param.clientAdapter;
354
354
  return _async_to_generator(function() {
355
- var _client_client, _args, url, options, clientHeaders, newOptions;
355
+ var _clientAdapter_client, _args, url, options, clientHeaders, newOptions;
356
356
  return _ts_generator(this, function(_state) {
357
357
  switch(_state.label){
358
358
  case 0:
359
- if (!((_client_client = client.client) === null || _client_client === void 0 ? void 0 : _client_client.fetch)) return [
359
+ if (!((_clientAdapter_client = clientAdapter.client) === null || _clientAdapter_client === void 0 ? void 0 : _clientAdapter_client.fetch)) return [
360
360
  3,
361
361
  2
362
362
  ];
363
363
  _args = _sliced_to_array(args, 2), url = _args[0], options = _args[1];
364
364
  return [
365
365
  4,
366
- client.client.buildHeaders({
366
+ clientAdapter.client.buildHeaders({
367
367
  options: {},
368
368
  method: args[1].method.toLowerCase(),
369
369
  bodyHeaders: args[1].headers,
@@ -372,13 +372,13 @@ var originalFetch = function(param) {
372
372
  ];
373
373
  case 1:
374
374
  clientHeaders = _state.sent();
375
- clientHeaders.set("Authorization", "Bearer ".concat(client.client.apiKey));
375
+ clientHeaders.set("Authorization", "Bearer ".concat(clientAdapter.client.apiKey));
376
376
  newOptions = _object_spread_props(_object_spread({}, options), {
377
377
  headers: clientHeaders
378
378
  });
379
379
  return [
380
380
  2,
381
- client.client.fetch(url, newOptions)
381
+ clientAdapter.client.fetch(url, newOptions)
382
382
  ];
383
383
  case 2:
384
384
  return [
@@ -395,10 +395,10 @@ var originalFetch = function(param) {
395
395
  };
396
396
  // src/supercompatFetch/index.ts
397
397
  var supercompatFetch = function(param) {
398
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
398
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
399
399
  var requestHandlers2 = requestHandlers({
400
- client: client,
401
- storage: storage,
400
+ clientAdapter: clientAdapter,
401
+ storageAdapter: storageAdapter,
402
402
  runAdapter: runAdapter
403
403
  });
404
404
  return function() {
@@ -417,7 +417,7 @@ var supercompatFetch = function(param) {
417
417
  return [
418
418
  2,
419
419
  originalFetch({
420
- client: client,
420
+ clientAdapter: clientAdapter,
421
421
  args: args
422
422
  })
423
423
  ];
@@ -428,7 +428,7 @@ var supercompatFetch = function(param) {
428
428
  return [
429
429
  2,
430
430
  originalFetch({
431
- client: client,
431
+ clientAdapter: clientAdapter,
432
432
  args: args
433
433
  })
434
434
  ];
@@ -448,17 +448,17 @@ var endpointFromBaseUrl = function(param) {
448
448
  };
449
449
  // src/supercompat.ts
450
450
  var supercompat = function(param) {
451
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
452
- if (client.type === "AZURE_OPENAI") {
451
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
452
+ if (clientAdapter.type === "AZURE_OPENAI") {
453
453
  return new import_openai.AzureOpenAI({
454
- apiKey: client.client.apiKey,
455
- apiVersion: client.client.apiVersion,
454
+ apiKey: clientAdapter.client.apiKey,
455
+ apiVersion: clientAdapter.client.apiVersion,
456
456
  endpoint: endpointFromBaseUrl({
457
- baseURL: client.client.baseURL
457
+ baseURL: clientAdapter.client.baseURL
458
458
  }),
459
459
  fetch: supercompatFetch({
460
- client: client,
461
- storage: storage,
460
+ clientAdapter: clientAdapter,
461
+ storageAdapter: storageAdapter,
462
462
  runAdapter: runAdapter
463
463
  })
464
464
  });
@@ -466,8 +466,8 @@ var supercompat = function(param) {
466
466
  return new import_openai.default({
467
467
  apiKey: "SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY",
468
468
  fetch: supercompatFetch({
469
- client: client,
470
- storage: storage,
469
+ clientAdapter: clientAdapter,
470
+ storageAdapter: storageAdapter,
471
471
  runAdapter: runAdapter
472
472
  })
473
473
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/supercompat.cjs","../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts","../src/lib/azureOpenai/endpointFromBaseUrl.ts"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","supercompat_exports","supercompat","module","exports","import_openai","require","import_radash","storageRequestHandlers","storage","runAdapter","client","wrappedClient","result","handleRun","partob","originalClient","requestHandlers","assign","findRequestHandler","url","pathname","URL","regex","RegExp","matches","test","originalFetch","args","options","clientHeaders","newOptions","fetch","buildHeaders","method","toLowerCase","bodyHeaders","headers","retryCount","set","apiKey","supercompatFetch","pathHandler","requestHandler","endpointFromBaseUrl","baseURL","replace","type","AzureOpenAI","apiVersion","endpoint","OpenAI"],"mappings":"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","sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/supercompat.ts\nvar supercompat_exports = {};\n__export(supercompat_exports, {\n supercompat: () => supercompat\n});\nmodule.exports = __toCommonJS(supercompat_exports);\nvar import_openai = __toESM(require(\"openai\"), 1);\n\n// src/supercompatFetch/requestHandlers.ts\nvar import_radash = require(\"radash\");\nvar storageRequestHandlers = ({\n storage,\n runAdapter,\n client\n}) => {\n if (!storage) return {};\n if (!runAdapter) return {};\n const wrappedClient = supercompat({\n client\n });\n const result = storage({\n runAdapter: {\n ...runAdapter,\n handleRun: (0, import_radash.partob)(runAdapter.handleRun, { client: wrappedClient })\n },\n client: wrappedClient,\n originalClient: client\n });\n return result.requestHandlers;\n};\nvar requestHandlers = ({\n client,\n storage,\n runAdapter\n}) => (0, import_radash.assign)(\n client.requestHandlers,\n storageRequestHandlers({\n storage,\n runAdapter,\n client\n })\n);\n\n// src/supercompatFetch/findRequestHandler.ts\nvar findRequestHandler = ({\n url,\n requestHandlers: requestHandlers2\n}) => {\n const pathname = new URL(url).pathname;\n for (const key in requestHandlers2) {\n const regex = new RegExp(key);\n const matches = regex.test(pathname);\n if (matches) {\n return requestHandlers2[key];\n }\n }\n};\n\n// src/supercompatFetch/originalFetch.ts\nvar originalFetch = async ({\n args,\n client\n}) => {\n if (client.client?.fetch) {\n const [url, options] = args;\n const clientHeaders = await client.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0\n });\n clientHeaders.set(\"Authorization\", `Bearer ${client.client.apiKey}`);\n const newOptions = {\n ...options,\n headers: clientHeaders\n };\n return client.client.fetch(url, newOptions);\n } else {\n return fetch(...args);\n }\n};\n\n// src/supercompatFetch/index.ts\nvar supercompatFetch = ({\n client,\n storage,\n runAdapter\n}) => {\n const requestHandlers2 = requestHandlers({\n client,\n storage,\n runAdapter\n });\n return async (...args) => {\n const [url, options] = args;\n const pathHandler = findRequestHandler({\n url,\n requestHandlers: requestHandlers2\n });\n if (!pathHandler) {\n return originalFetch({\n client,\n args\n });\n }\n const method = options?.method ?? \"\";\n const requestHandler = pathHandler[method.toLowerCase()];\n if (!requestHandler) {\n return originalFetch({\n client,\n args\n });\n }\n return requestHandler(...args);\n };\n};\n\n// src/lib/azureOpenai/endpointFromBaseUrl.ts\nvar endpointFromBaseUrl = ({\n baseURL\n}) => baseURL.replace(/\\/+openai$/, \"\");\n\n// src/supercompat.ts\nvar supercompat = ({\n client,\n storage,\n runAdapter\n}) => {\n if (client.type === \"AZURE_OPENAI\") {\n return new import_openai.AzureOpenAI({\n apiKey: client.client.apiKey,\n apiVersion: client.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: client.client.baseURL }),\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter\n })\n });\n }\n return new import_openai.default({\n apiKey: \"SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY\",\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter\n })\n });\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n supercompat\n});\n","import OpenAI, { AzureOpenAI } from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\nimport { endpointFromBaseUrl } from './lib/azureOpenai/endpointFromBaseUrl'\n\nexport const supercompat = ({\n client,\n storage,\n runAdapter,\n}: Args) => {\n if (client.type === 'AZURE_OPENAI') {\n return new AzureOpenAI({\n apiKey: client.client.apiKey,\n apiVersion: client.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: client.client.baseURL }),\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n }\n\n return new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n}\n","import { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { supercompat } from '@/supercompat'\n\nconst storageRequestHandlers = ({\n storage,\n runAdapter,\n client,\n}: {\n storage?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n client: any\n}) => {\n if (!storage) return {}\n if (!runAdapter) return {}\n\n const wrappedClient = supercompat({\n client,\n })\n\n const result = storage({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient }),\n },\n client: wrappedClient,\n originalClient: client,\n })\n return result.requestHandlers\n}\n\nexport const requestHandlers = ({\n client,\n storage,\n runAdapter,\n}: {\n client: any\n storage?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}) => (\n assign(\n client.requestHandlers,\n storageRequestHandlers({\n storage,\n runAdapter,\n 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 const matches = regex.test(pathname)\n\n if (matches) {\n return requestHandlers[key]\n }\n }\n}\n","export const originalFetch = async ({\n args,\n client,\n}: {\n args: any[]\n client: any\n}) => {\n if (client.client?.fetch) {\n const [url, options] = args\n\n const clientHeaders = await client.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0,\n })\n\n clientHeaders.set('Authorization', `Bearer ${client.client.apiKey}`)\n\n const newOptions = {\n ...options,\n headers: clientHeaders,\n }\n\n return client.client.fetch(url, newOptions)\n } else {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\nimport { originalFetch } from './originalFetch'\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 async (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n const method = options?.method ?? ''\n\n const requestHandler = pathHandler[method.toLowerCase()]\n\n if (!requestHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n","export const endpointFromBaseUrl = ({\n baseURL\n}: {\n baseURL: string\n}) => (\n baseURL.replace(/\\/+openai$/, '')\n)\n"]}
1
+ {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/supercompat.cjs","../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts","../src/lib/azureOpenai/endpointFromBaseUrl.ts"],"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","supercompat_exports","supercompat","module","exports","import_openai","require","import_radash","storageRequestHandlers","storageAdapter","runAdapter","clientAdapter","wrappedClient","result","handleRun","partob","client","originalClientAdapter","requestHandlers","assign","findRequestHandler","url","pathname","URL","regex","RegExp","matches","test","originalFetch","args","options","clientHeaders","newOptions","fetch","buildHeaders","method","toLowerCase","bodyHeaders","headers","retryCount","set","apiKey","supercompatFetch","pathHandler","requestHandler","endpointFromBaseUrl","baseURL","replace","type","AzureOpenAI","apiVersion","endpoint","OpenAI"],"mappings":"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","sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/supercompat.ts\nvar supercompat_exports = {};\n__export(supercompat_exports, {\n supercompat: () => supercompat\n});\nmodule.exports = __toCommonJS(supercompat_exports);\nvar import_openai = __toESM(require(\"openai\"), 1);\n\n// src/supercompatFetch/requestHandlers.ts\nvar import_radash = require(\"radash\");\nvar storageRequestHandlers = ({\n storageAdapter,\n runAdapter,\n clientAdapter\n}) => {\n if (!storageAdapter) return {};\n if (!runAdapter) return {};\n const wrappedClient = supercompat({\n clientAdapter\n });\n const result = storageAdapter({\n runAdapter: {\n ...runAdapter,\n handleRun: (0, import_radash.partob)(runAdapter.handleRun, { client: wrappedClient })\n },\n client: wrappedClient,\n originalClientAdapter: clientAdapter\n });\n return result.requestHandlers;\n};\nvar requestHandlers = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => (0, import_radash.assign)(\n clientAdapter.requestHandlers,\n storageRequestHandlers({\n storageAdapter,\n runAdapter,\n clientAdapter\n })\n);\n\n// src/supercompatFetch/findRequestHandler.ts\nvar findRequestHandler = ({\n url,\n requestHandlers: requestHandlers2\n}) => {\n const pathname = new URL(url).pathname;\n for (const key in requestHandlers2) {\n const regex = new RegExp(key);\n const matches = regex.test(pathname);\n if (matches) {\n return requestHandlers2[key];\n }\n }\n};\n\n// src/supercompatFetch/originalFetch.ts\nvar originalFetch = async ({\n args,\n clientAdapter\n}) => {\n if (clientAdapter.client?.fetch) {\n const [url, options] = args;\n const clientHeaders = await clientAdapter.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0\n });\n clientHeaders.set(\"Authorization\", `Bearer ${clientAdapter.client.apiKey}`);\n const newOptions = {\n ...options,\n headers: clientHeaders\n };\n return clientAdapter.client.fetch(url, newOptions);\n } else {\n return fetch(...args);\n }\n};\n\n// src/supercompatFetch/index.ts\nvar supercompatFetch = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => {\n const requestHandlers2 = requestHandlers({\n clientAdapter,\n storageAdapter,\n runAdapter\n });\n return async (...args) => {\n const [url, options] = args;\n const pathHandler = findRequestHandler({\n url,\n requestHandlers: requestHandlers2\n });\n if (!pathHandler) {\n return originalFetch({\n clientAdapter,\n args\n });\n }\n const method = options?.method ?? \"\";\n const requestHandler = pathHandler[method.toLowerCase()];\n if (!requestHandler) {\n return originalFetch({\n clientAdapter,\n args\n });\n }\n return requestHandler(...args);\n };\n};\n\n// src/lib/azureOpenai/endpointFromBaseUrl.ts\nvar endpointFromBaseUrl = ({\n baseURL\n}) => baseURL.replace(/\\/+openai$/, \"\");\n\n// src/supercompat.ts\nvar supercompat = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => {\n if (clientAdapter.type === \"AZURE_OPENAI\") {\n return new import_openai.AzureOpenAI({\n apiKey: clientAdapter.client.apiKey,\n apiVersion: clientAdapter.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: clientAdapter.client.baseURL }),\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter\n })\n });\n }\n return new import_openai.default({\n apiKey: \"SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY\",\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter\n })\n });\n};\n// Annotate the CommonJS export names for ESM import in node:\n0 && (module.exports = {\n supercompat\n});\n","import OpenAI, { AzureOpenAI } from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\nimport { endpointFromBaseUrl } from './lib/azureOpenai/endpointFromBaseUrl'\n\nexport const supercompat = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: Args) => {\n if (clientAdapter.type === 'AZURE_OPENAI') {\n return new AzureOpenAI({\n apiKey: clientAdapter.client.apiKey,\n apiVersion: clientAdapter.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: clientAdapter.client.baseURL }),\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter,\n }),\n })\n }\n\n return new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter,\n }),\n })\n}\n","import { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { supercompat } from '@/supercompat'\n\nconst storageRequestHandlers = ({\n storageAdapter,\n runAdapter,\n clientAdapter,\n}: {\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n clientAdapter: any\n}) => {\n if (!storageAdapter) return {}\n if (!runAdapter) return {}\n\n const wrappedClient = supercompat({\n clientAdapter,\n })\n\n const result = storageAdapter({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient }),\n },\n client: wrappedClient,\n originalClientAdapter: clientAdapter,\n })\n return result.requestHandlers\n}\n\nexport const requestHandlers = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: {\n clientAdapter: any\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}) => (\n assign(\n clientAdapter.requestHandlers,\n storageRequestHandlers({\n storageAdapter,\n runAdapter,\n clientAdapter,\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 const matches = regex.test(pathname)\n\n if (matches) {\n return requestHandlers[key]\n }\n }\n}\n","export const originalFetch = async ({\n args,\n clientAdapter,\n}: {\n args: any[]\n clientAdapter: any\n}) => {\n if (clientAdapter.client?.fetch) {\n const [url, options] = args\n\n const clientHeaders = await clientAdapter.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0,\n })\n\n clientHeaders.set('Authorization', `Bearer ${clientAdapter.client.apiKey}`)\n\n const newOptions = {\n ...options,\n headers: clientHeaders,\n }\n\n return clientAdapter.client.fetch(url, newOptions)\n } else {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\nimport { originalFetch } from './originalFetch'\n\nexport type Args = {\n clientAdapter: any\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}\n\nexport const supercompatFetch = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: Args) => {\n const requestHandlers = getRequestHandlers({\n clientAdapter,\n storageAdapter,\n runAdapter,\n })\n\n return async (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n return originalFetch({\n clientAdapter,\n args,\n })\n }\n\n const method = options?.method ?? ''\n\n const requestHandler = pathHandler[method.toLowerCase()]\n\n if (!requestHandler) {\n return originalFetch({\n clientAdapter,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n","export const endpointFromBaseUrl = ({\n baseURL\n}: {\n baseURL: string\n}) => (\n baseURL.replace(/\\/+openai$/, '')\n)\n"]}
@@ -2,11 +2,11 @@ import OpenAI from 'openai';
2
2
  import { StorageAdapterArgs, RunAdapter } from './types/index.cjs';
3
3
 
4
4
  type Args = {
5
- client: any;
6
- storage?: (arg0: StorageAdapterArgs) => any;
5
+ clientAdapter: any;
6
+ storageAdapter?: (arg0: StorageAdapterArgs) => any;
7
7
  runAdapter?: RunAdapter;
8
8
  };
9
9
 
10
- declare const supercompat: ({ client, storage, runAdapter, }: Args) => OpenAI;
10
+ declare const supercompat: ({ clientAdapter, storageAdapter, runAdapter, }: Args) => OpenAI;
11
11
 
12
12
  export { supercompat };
@@ -2,11 +2,11 @@ import OpenAI from 'openai';
2
2
  import { StorageAdapterArgs, RunAdapter } from './types/index.js';
3
3
 
4
4
  type Args = {
5
- client: any;
6
- storage?: (arg0: StorageAdapterArgs) => any;
5
+ clientAdapter: any;
6
+ storageAdapter?: (arg0: StorageAdapterArgs) => any;
7
7
  runAdapter?: RunAdapter;
8
8
  };
9
9
 
10
- declare const supercompat: ({ client, storage, runAdapter, }: Args) => OpenAI;
10
+ declare const supercompat: ({ clientAdapter, storageAdapter, runAdapter, }: Args) => OpenAI;
11
11
 
12
12
  export { supercompat };
@@ -241,29 +241,29 @@ import OpenAI, { AzureOpenAI } from "openai";
241
241
  // src/supercompatFetch/requestHandlers.ts
242
242
  import { assign, partob } from "radash";
243
243
  var storageRequestHandlers = function(param) {
244
- var storage = param.storage, runAdapter = param.runAdapter, client = param.client;
245
- if (!storage) return {};
244
+ var storageAdapter = param.storageAdapter, runAdapter = param.runAdapter, clientAdapter = param.clientAdapter;
245
+ if (!storageAdapter) return {};
246
246
  if (!runAdapter) return {};
247
247
  var wrappedClient = supercompat({
248
- client: client
248
+ clientAdapter: clientAdapter
249
249
  });
250
- var result = storage({
250
+ var result = storageAdapter({
251
251
  runAdapter: _object_spread_props(_object_spread({}, runAdapter), {
252
252
  handleRun: partob(runAdapter.handleRun, {
253
253
  client: wrappedClient
254
254
  })
255
255
  }),
256
256
  client: wrappedClient,
257
- originalClient: client
257
+ originalClientAdapter: clientAdapter
258
258
  });
259
259
  return result.requestHandlers;
260
260
  };
261
261
  var requestHandlers = function(param) {
262
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
263
- return assign(client.requestHandlers, storageRequestHandlers({
264
- storage: storage,
262
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
263
+ return assign(clientAdapter.requestHandlers, storageRequestHandlers({
264
+ storageAdapter: storageAdapter,
265
265
  runAdapter: runAdapter,
266
- client: client
266
+ clientAdapter: clientAdapter
267
267
  }));
268
268
  };
269
269
  // src/supercompatFetch/findRequestHandler.ts
@@ -280,20 +280,20 @@ var findRequestHandler = function(param) {
280
280
  };
281
281
  // src/supercompatFetch/originalFetch.ts
282
282
  var originalFetch = function(param) {
283
- var args = param.args, client = param.client;
283
+ var args = param.args, clientAdapter = param.clientAdapter;
284
284
  return _async_to_generator(function() {
285
- var _client_client, _args, url, options, clientHeaders, newOptions;
285
+ var _clientAdapter_client, _args, url, options, clientHeaders, newOptions;
286
286
  return _ts_generator(this, function(_state) {
287
287
  switch(_state.label){
288
288
  case 0:
289
- if (!((_client_client = client.client) === null || _client_client === void 0 ? void 0 : _client_client.fetch)) return [
289
+ if (!((_clientAdapter_client = clientAdapter.client) === null || _clientAdapter_client === void 0 ? void 0 : _clientAdapter_client.fetch)) return [
290
290
  3,
291
291
  2
292
292
  ];
293
293
  _args = _sliced_to_array(args, 2), url = _args[0], options = _args[1];
294
294
  return [
295
295
  4,
296
- client.client.buildHeaders({
296
+ clientAdapter.client.buildHeaders({
297
297
  options: {},
298
298
  method: args[1].method.toLowerCase(),
299
299
  bodyHeaders: args[1].headers,
@@ -302,13 +302,13 @@ var originalFetch = function(param) {
302
302
  ];
303
303
  case 1:
304
304
  clientHeaders = _state.sent();
305
- clientHeaders.set("Authorization", "Bearer ".concat(client.client.apiKey));
305
+ clientHeaders.set("Authorization", "Bearer ".concat(clientAdapter.client.apiKey));
306
306
  newOptions = _object_spread_props(_object_spread({}, options), {
307
307
  headers: clientHeaders
308
308
  });
309
309
  return [
310
310
  2,
311
- client.client.fetch(url, newOptions)
311
+ clientAdapter.client.fetch(url, newOptions)
312
312
  ];
313
313
  case 2:
314
314
  return [
@@ -325,10 +325,10 @@ var originalFetch = function(param) {
325
325
  };
326
326
  // src/supercompatFetch/index.ts
327
327
  var supercompatFetch = function(param) {
328
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
328
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
329
329
  var requestHandlers2 = requestHandlers({
330
- client: client,
331
- storage: storage,
330
+ clientAdapter: clientAdapter,
331
+ storageAdapter: storageAdapter,
332
332
  runAdapter: runAdapter
333
333
  });
334
334
  return function() {
@@ -347,7 +347,7 @@ var supercompatFetch = function(param) {
347
347
  return [
348
348
  2,
349
349
  originalFetch({
350
- client: client,
350
+ clientAdapter: clientAdapter,
351
351
  args: args
352
352
  })
353
353
  ];
@@ -358,7 +358,7 @@ var supercompatFetch = function(param) {
358
358
  return [
359
359
  2,
360
360
  originalFetch({
361
- client: client,
361
+ clientAdapter: clientAdapter,
362
362
  args: args
363
363
  })
364
364
  ];
@@ -378,17 +378,17 @@ var endpointFromBaseUrl = function(param) {
378
378
  };
379
379
  // src/supercompat.ts
380
380
  var supercompat = function(param) {
381
- var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
382
- if (client.type === "AZURE_OPENAI") {
381
+ var clientAdapter = param.clientAdapter, storageAdapter = param.storageAdapter, runAdapter = param.runAdapter;
382
+ if (clientAdapter.type === "AZURE_OPENAI") {
383
383
  return new AzureOpenAI({
384
- apiKey: client.client.apiKey,
385
- apiVersion: client.client.apiVersion,
384
+ apiKey: clientAdapter.client.apiKey,
385
+ apiVersion: clientAdapter.client.apiVersion,
386
386
  endpoint: endpointFromBaseUrl({
387
- baseURL: client.client.baseURL
387
+ baseURL: clientAdapter.client.baseURL
388
388
  }),
389
389
  fetch: supercompatFetch({
390
- client: client,
391
- storage: storage,
390
+ clientAdapter: clientAdapter,
391
+ storageAdapter: storageAdapter,
392
392
  runAdapter: runAdapter
393
393
  })
394
394
  });
@@ -396,8 +396,8 @@ var supercompat = function(param) {
396
396
  return new OpenAI({
397
397
  apiKey: "SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY",
398
398
  fetch: supercompatFetch({
399
- client: client,
400
- storage: storage,
399
+ clientAdapter: clientAdapter,
400
+ storageAdapter: storageAdapter,
401
401
  runAdapter: runAdapter
402
402
  })
403
403
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/supercompat.js","../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts","../src/lib/azureOpenai/endpointFromBaseUrl.ts"],"names":["OpenAI","AzureOpenAI","assign","partob","storageRequestHandlers","storage","runAdapter","client","wrappedClient","supercompat","result","handleRun","originalClient","requestHandlers","findRequestHandler","url","pathname","URL","key","regex","RegExp","matches","test","originalFetch","args","options","clientHeaders","newOptions","fetch","buildHeaders","method","toLowerCase","bodyHeaders","headers","retryCount","set","apiKey","supercompatFetch","pathHandler","requestHandler","endpointFromBaseUrl","baseURL","replace","type","apiVersion","endpoint"],"mappings":"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","sourcesContent":["// src/supercompat.ts\nimport OpenAI, { AzureOpenAI } from \"openai\";\n\n// src/supercompatFetch/requestHandlers.ts\nimport { assign, partob } from \"radash\";\nvar storageRequestHandlers = ({\n storage,\n runAdapter,\n client\n}) => {\n if (!storage) return {};\n if (!runAdapter) return {};\n const wrappedClient = supercompat({\n client\n });\n const result = storage({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient })\n },\n client: wrappedClient,\n originalClient: client\n });\n return result.requestHandlers;\n};\nvar requestHandlers = ({\n client,\n storage,\n runAdapter\n}) => assign(\n client.requestHandlers,\n storageRequestHandlers({\n storage,\n runAdapter,\n client\n })\n);\n\n// src/supercompatFetch/findRequestHandler.ts\nvar findRequestHandler = ({\n url,\n requestHandlers: requestHandlers2\n}) => {\n const pathname = new URL(url).pathname;\n for (const key in requestHandlers2) {\n const regex = new RegExp(key);\n const matches = regex.test(pathname);\n if (matches) {\n return requestHandlers2[key];\n }\n }\n};\n\n// src/supercompatFetch/originalFetch.ts\nvar originalFetch = async ({\n args,\n client\n}) => {\n if (client.client?.fetch) {\n const [url, options] = args;\n const clientHeaders = await client.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0\n });\n clientHeaders.set(\"Authorization\", `Bearer ${client.client.apiKey}`);\n const newOptions = {\n ...options,\n headers: clientHeaders\n };\n return client.client.fetch(url, newOptions);\n } else {\n return fetch(...args);\n }\n};\n\n// src/supercompatFetch/index.ts\nvar supercompatFetch = ({\n client,\n storage,\n runAdapter\n}) => {\n const requestHandlers2 = requestHandlers({\n client,\n storage,\n runAdapter\n });\n return async (...args) => {\n const [url, options] = args;\n const pathHandler = findRequestHandler({\n url,\n requestHandlers: requestHandlers2\n });\n if (!pathHandler) {\n return originalFetch({\n client,\n args\n });\n }\n const method = options?.method ?? \"\";\n const requestHandler = pathHandler[method.toLowerCase()];\n if (!requestHandler) {\n return originalFetch({\n client,\n args\n });\n }\n return requestHandler(...args);\n };\n};\n\n// src/lib/azureOpenai/endpointFromBaseUrl.ts\nvar endpointFromBaseUrl = ({\n baseURL\n}) => baseURL.replace(/\\/+openai$/, \"\");\n\n// src/supercompat.ts\nvar supercompat = ({\n client,\n storage,\n runAdapter\n}) => {\n if (client.type === \"AZURE_OPENAI\") {\n return new AzureOpenAI({\n apiKey: client.client.apiKey,\n apiVersion: client.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: client.client.baseURL }),\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter\n })\n });\n }\n return new OpenAI({\n apiKey: \"SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY\",\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter\n })\n });\n};\nexport {\n supercompat\n};\n","import OpenAI, { AzureOpenAI } from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\nimport { endpointFromBaseUrl } from './lib/azureOpenai/endpointFromBaseUrl'\n\nexport const supercompat = ({\n client,\n storage,\n runAdapter,\n}: Args) => {\n if (client.type === 'AZURE_OPENAI') {\n return new AzureOpenAI({\n apiKey: client.client.apiKey,\n apiVersion: client.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: client.client.baseURL }),\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n }\n\n return new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n client,\n storage,\n runAdapter,\n }),\n })\n}\n","import { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { supercompat } from '@/supercompat'\n\nconst storageRequestHandlers = ({\n storage,\n runAdapter,\n client,\n}: {\n storage?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n client: any\n}) => {\n if (!storage) return {}\n if (!runAdapter) return {}\n\n const wrappedClient = supercompat({\n client,\n })\n\n const result = storage({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient }),\n },\n client: wrappedClient,\n originalClient: client,\n })\n return result.requestHandlers\n}\n\nexport const requestHandlers = ({\n client,\n storage,\n runAdapter,\n}: {\n client: any\n storage?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}) => (\n assign(\n client.requestHandlers,\n storageRequestHandlers({\n storage,\n runAdapter,\n 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 const matches = regex.test(pathname)\n\n if (matches) {\n return requestHandlers[key]\n }\n }\n}\n","export const originalFetch = async ({\n args,\n client,\n}: {\n args: any[]\n client: any\n}) => {\n if (client.client?.fetch) {\n const [url, options] = args\n\n const clientHeaders = await client.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0,\n })\n\n clientHeaders.set('Authorization', `Bearer ${client.client.apiKey}`)\n\n const newOptions = {\n ...options,\n headers: clientHeaders,\n }\n\n return client.client.fetch(url, newOptions)\n } else {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\nimport { originalFetch } from './originalFetch'\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 async (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n const method = options?.method ?? ''\n\n const requestHandler = pathHandler[method.toLowerCase()]\n\n if (!requestHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n","export const endpointFromBaseUrl = ({\n baseURL\n}: {\n baseURL: string\n}) => (\n baseURL.replace(/\\/+openai$/, '')\n)\n"]}
1
+ {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/supercompat.js","../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts","../src/lib/azureOpenai/endpointFromBaseUrl.ts"],"names":["OpenAI","AzureOpenAI","assign","partob","storageRequestHandlers","storageAdapter","runAdapter","clientAdapter","wrappedClient","supercompat","result","handleRun","client","originalClientAdapter","requestHandlers","findRequestHandler","url","pathname","URL","key","regex","RegExp","matches","test","originalFetch","args","options","clientHeaders","newOptions","fetch","buildHeaders","method","toLowerCase","bodyHeaders","headers","retryCount","set","apiKey","supercompatFetch","pathHandler","requestHandler","endpointFromBaseUrl","baseURL","replace","type","apiVersion","endpoint"],"mappings":"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","sourcesContent":["// src/supercompat.ts\nimport OpenAI, { AzureOpenAI } from \"openai\";\n\n// src/supercompatFetch/requestHandlers.ts\nimport { assign, partob } from \"radash\";\nvar storageRequestHandlers = ({\n storageAdapter,\n runAdapter,\n clientAdapter\n}) => {\n if (!storageAdapter) return {};\n if (!runAdapter) return {};\n const wrappedClient = supercompat({\n clientAdapter\n });\n const result = storageAdapter({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient })\n },\n client: wrappedClient,\n originalClientAdapter: clientAdapter\n });\n return result.requestHandlers;\n};\nvar requestHandlers = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => assign(\n clientAdapter.requestHandlers,\n storageRequestHandlers({\n storageAdapter,\n runAdapter,\n clientAdapter\n })\n);\n\n// src/supercompatFetch/findRequestHandler.ts\nvar findRequestHandler = ({\n url,\n requestHandlers: requestHandlers2\n}) => {\n const pathname = new URL(url).pathname;\n for (const key in requestHandlers2) {\n const regex = new RegExp(key);\n const matches = regex.test(pathname);\n if (matches) {\n return requestHandlers2[key];\n }\n }\n};\n\n// src/supercompatFetch/originalFetch.ts\nvar originalFetch = async ({\n args,\n clientAdapter\n}) => {\n if (clientAdapter.client?.fetch) {\n const [url, options] = args;\n const clientHeaders = await clientAdapter.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0\n });\n clientHeaders.set(\"Authorization\", `Bearer ${clientAdapter.client.apiKey}`);\n const newOptions = {\n ...options,\n headers: clientHeaders\n };\n return clientAdapter.client.fetch(url, newOptions);\n } else {\n return fetch(...args);\n }\n};\n\n// src/supercompatFetch/index.ts\nvar supercompatFetch = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => {\n const requestHandlers2 = requestHandlers({\n clientAdapter,\n storageAdapter,\n runAdapter\n });\n return async (...args) => {\n const [url, options] = args;\n const pathHandler = findRequestHandler({\n url,\n requestHandlers: requestHandlers2\n });\n if (!pathHandler) {\n return originalFetch({\n clientAdapter,\n args\n });\n }\n const method = options?.method ?? \"\";\n const requestHandler = pathHandler[method.toLowerCase()];\n if (!requestHandler) {\n return originalFetch({\n clientAdapter,\n args\n });\n }\n return requestHandler(...args);\n };\n};\n\n// src/lib/azureOpenai/endpointFromBaseUrl.ts\nvar endpointFromBaseUrl = ({\n baseURL\n}) => baseURL.replace(/\\/+openai$/, \"\");\n\n// src/supercompat.ts\nvar supercompat = ({\n clientAdapter,\n storageAdapter,\n runAdapter\n}) => {\n if (clientAdapter.type === \"AZURE_OPENAI\") {\n return new AzureOpenAI({\n apiKey: clientAdapter.client.apiKey,\n apiVersion: clientAdapter.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: clientAdapter.client.baseURL }),\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter\n })\n });\n }\n return new OpenAI({\n apiKey: \"SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY\",\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter\n })\n });\n};\nexport {\n supercompat\n};\n","import OpenAI, { AzureOpenAI } from 'openai'\nimport { supercompatFetch, type Args } from './supercompatFetch'\nimport { endpointFromBaseUrl } from './lib/azureOpenai/endpointFromBaseUrl'\n\nexport const supercompat = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: Args) => {\n if (clientAdapter.type === 'AZURE_OPENAI') {\n return new AzureOpenAI({\n apiKey: clientAdapter.client.apiKey,\n apiVersion: clientAdapter.client.apiVersion,\n endpoint: endpointFromBaseUrl({ baseURL: clientAdapter.client.baseURL }),\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter,\n }),\n })\n }\n\n return new OpenAI({\n apiKey: 'SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY',\n fetch: supercompatFetch({\n clientAdapter,\n storageAdapter,\n runAdapter,\n }),\n })\n}\n","import { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { supercompat } from '@/supercompat'\n\nconst storageRequestHandlers = ({\n storageAdapter,\n runAdapter,\n clientAdapter,\n}: {\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n clientAdapter: any\n}) => {\n if (!storageAdapter) return {}\n if (!runAdapter) return {}\n\n const wrappedClient = supercompat({\n clientAdapter,\n })\n\n const result = storageAdapter({\n runAdapter: {\n ...runAdapter,\n handleRun: partob(runAdapter.handleRun, { client: wrappedClient }),\n },\n client: wrappedClient,\n originalClientAdapter: clientAdapter,\n })\n return result.requestHandlers\n}\n\nexport const requestHandlers = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: {\n clientAdapter: any\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}) => (\n assign(\n clientAdapter.requestHandlers,\n storageRequestHandlers({\n storageAdapter,\n runAdapter,\n clientAdapter,\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 const matches = regex.test(pathname)\n\n if (matches) {\n return requestHandlers[key]\n }\n }\n}\n","export const originalFetch = async ({\n args,\n clientAdapter,\n}: {\n args: any[]\n clientAdapter: any\n}) => {\n if (clientAdapter.client?.fetch) {\n const [url, options] = args\n\n const clientHeaders = await clientAdapter.client.buildHeaders({\n options: {},\n method: args[1].method.toLowerCase(),\n bodyHeaders: args[1].headers,\n retryCount: 0,\n })\n\n clientHeaders.set('Authorization', `Bearer ${clientAdapter.client.apiKey}`)\n\n const newOptions = {\n ...options,\n headers: clientHeaders,\n }\n\n return clientAdapter.client.fetch(url, newOptions)\n } else {\n // @ts-ignore-next-line\n return fetch(...args)\n }\n}\n","import { RunAdapter, StorageAdapterArgs } from '@/types'\nimport { requestHandlers as getRequestHandlers } from './requestHandlers'\nimport { findRequestHandler } from './findRequestHandler'\nimport { originalFetch } from './originalFetch'\n\nexport type Args = {\n clientAdapter: any\n storageAdapter?: (arg0: StorageAdapterArgs) => any\n runAdapter?: RunAdapter\n}\n\nexport const supercompatFetch = ({\n clientAdapter,\n storageAdapter,\n runAdapter,\n}: Args) => {\n const requestHandlers = getRequestHandlers({\n clientAdapter,\n storageAdapter,\n runAdapter,\n })\n\n return async (...args: any[]) => {\n const [url, options] = args\n\n const pathHandler = findRequestHandler({\n url,\n requestHandlers,\n })\n\n if (!pathHandler) {\n return originalFetch({\n clientAdapter,\n args,\n })\n }\n\n const method = options?.method ?? ''\n\n const requestHandler = pathHandler[method.toLowerCase()]\n\n if (!requestHandler) {\n return originalFetch({\n clientAdapter,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n","export const endpointFromBaseUrl = ({\n baseURL\n}: {\n baseURL: string\n}) => (\n baseURL.replace(/\\/+openai$/, '')\n)\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/types/index.cjs","../../src/types/index.ts"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__copyProps","to","from","except","desc","key","call","get","enumerable","__toCommonJS","mod","value","types_exports","module","exports"],"mappings":"AAAA;;;;;AACA,IAAIA,YAAYC,OAAOC,cAAc;AACrC,IAAIC,mBAAmBF,OAAOG,wBAAwB;AACtD,IAAIC,oBAAoBJ,OAAOK,mBAAmB;AAClD,IAAIC,eAAeN,OAAOO,SAAS,CAACC,cAAc;AAClD,IAAIC,cAAc,SAACC,IAAIC,MAAMC,QAAQC;IACnC,IAAIF,QAAQ,CAAA,OAAOA,qCAAP,SAAOA,KAAG,MAAM,YAAY,OAAOA,SAAS,YAAY;YAC7D,kCAAA,2BAAA;;;gBAAA,IAAIG,MAAJ;gBACH,IAAI,CAACR,aAAaS,IAAI,CAACL,IAAII,QAAQA,QAAQF,QACzCb,UAAUW,IAAII,KAAK;oBAAEE,KAAK;+BAAML,IAAI,CAACG,IAAI;;oBAAEG,YAAY,CAAEJ,CAAAA,OAAOX,iBAAiBS,MAAMG,IAAG,KAAMD,KAAKI,UAAU;gBAAC;;YAFpH,QAAK,YAAWb,kBAAkBO,0BAA7B,SAAA,6BAAA,QAAA,yBAAA;;YAAA;YAAA;;;qBAAA,6BAAA;oBAAA;;;oBAAA;0BAAA;;;;IAGP;IACA,OAAOD;AACT;AACA,IAAIQ,eAAe,SAACC;WAAQV,YAAYV,UAAU,CAAC,GAAG,cAAc;QAAEqB,OAAO;IAAK,IAAID;;AAEtF,qBAAqB;ACfrB,IAAAE,gBAAA,CAAA;AAAAC,OAAAC,OAAA,GAAAL,aAAAG","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/types/index.ts\nvar types_exports = {};\nmodule.exports = __toCommonJS(types_exports);\n","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 interface GetOpenaiAssistantFn {\n (args: { select: { id: true } }):\n | Pick<OpenAI.Beta.Assistants.Assistant, 'id'>\n | Promise<Pick<OpenAI.Beta.Assistants.Assistant, 'id'>>\n (args?: { select?: { id?: false } }):\n | OpenAI.Beta.Assistants.Assistant\n | Promise<OpenAI.Beta.Assistants.Assistant>\n}\n\n/**\n * Body shape from Assistants surface storage adapters (prismaStorageAdapter, memoryStorageAdapter).\n * This is a serialized OpenAI Run object — contains both API params and event metadata.\n */\nexport type AssistantsRunBody = OpenAI.Beta.Threads.Run\n\n/**\n * Body shape from Responses surface storage adapters (prismaStorageAdapter, openaiResponsesStorageAdapter).\n * These are Responses API params — passed directly to client.responses.create() by native adapters,\n * or used by completionsRunAdapter to build a /chat/completions request.\n */\nexport type ResponsesRunBody = {\n model?: string\n input?: OpenAI.Responses.ResponseInput\n status?: string\n instructions?: string\n tools?: OpenAI.Responses.Tool[]\n tool_choice?: OpenAI.Responses.ResponseCreateParams['tool_choice']\n metadata?: Record<string, string> | null\n temperature?: number\n top_p?: number\n max_output_tokens?: number\n text?: OpenAI.Responses.ResponseTextConfig\n truncation?: OpenAI.Responses.ResponseCreateParams['truncation']\n conversation?: string\n parallel_tool_calls?: boolean\n // Azure agent reference\n agent?: { name: string; type: string }\n}\n\n/**\n * Body shape from Azure Agents storage adapter.\n */\nexport type AzureAgentsRunBody = {\n threadId: string\n assistantId: string\n instructions?: string\n tools?: OpenAI.Beta.Threads.Runs.RunCreateParams['tools']\n}\n\nexport type RunAdapterBody = AssistantsRunBody | ResponsesRunBody | AzureAgentsRunBody\n\nexport type RunAdapterHandleArgs = {\n client: OpenAI\n body: RunAdapterBody\n onEvent: (event: any) => Promise<any>\n getMessages?: () => Promise<MessageWithRun[]>\n}\n\nexport type RunAdapterHandle = (\n args: RunAdapterHandleArgs,\n) => Promise<void>\n\nexport type RunAdapter = {\n handleRun: RunAdapterHandle\n getOpenaiAssistant?: GetOpenaiAssistantFn\n}\n\nexport type RunAdapterPartobClient = Omit<RunAdapter, 'handleRun'> & {\n handleRun: (\n args: Omit<RunAdapterHandleArgs, 'client'>,\n ) => ReturnType<RunAdapterHandle>\n}\n\nexport type RunAdapterWithAssistant = RunAdapterPartobClient & {\n getOpenaiAssistant: GetOpenaiAssistantFn\n}\n\nexport type StorageAdapterArgs = {\n client: OpenAI\n runAdapter: RunAdapterPartobClient\n originalClient?: any\n}\n\nexport type RequestHandler = (\n url: string,\n init: RequestInit & { body?: string },\n) => Promise<Response>\n"]}
1
+ {"version":3,"sources":["/Users/domas/Developer/supercorp/supercompat/packages/supercompat/dist/types/index.cjs","../../src/types/index.ts"],"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__copyProps","to","from","except","desc","key","call","get","enumerable","__toCommonJS","mod","value","types_exports","module","exports"],"mappings":"AAAA;;;;;AACA,IAAIA,YAAYC,OAAOC,cAAc;AACrC,IAAIC,mBAAmBF,OAAOG,wBAAwB;AACtD,IAAIC,oBAAoBJ,OAAOK,mBAAmB;AAClD,IAAIC,eAAeN,OAAOO,SAAS,CAACC,cAAc;AAClD,IAAIC,cAAc,SAACC,IAAIC,MAAMC,QAAQC;IACnC,IAAIF,QAAQ,CAAA,OAAOA,qCAAP,SAAOA,KAAG,MAAM,YAAY,OAAOA,SAAS,YAAY;YAC7D,kCAAA,2BAAA;;;gBAAA,IAAIG,MAAJ;gBACH,IAAI,CAACR,aAAaS,IAAI,CAACL,IAAII,QAAQA,QAAQF,QACzCb,UAAUW,IAAII,KAAK;oBAAEE,KAAK;+BAAML,IAAI,CAACG,IAAI;;oBAAEG,YAAY,CAAEJ,CAAAA,OAAOX,iBAAiBS,MAAMG,IAAG,KAAMD,KAAKI,UAAU;gBAAC;;YAFpH,QAAK,YAAWb,kBAAkBO,0BAA7B,SAAA,6BAAA,QAAA,yBAAA;;YAAA;YAAA;;;qBAAA,6BAAA;oBAAA;;;oBAAA;0BAAA;;;;IAGP;IACA,OAAOD;AACT;AACA,IAAIQ,eAAe,SAACC;WAAQV,YAAYV,UAAU,CAAC,GAAG,cAAc;QAAEqB,OAAO;IAAK,IAAID;;AAEtF,qBAAqB;ACfrB,IAAAE,gBAAA,CAAA;AAAAC,OAAAC,OAAA,GAAAL,aAAAG","sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/types/index.ts\nvar types_exports = {};\nmodule.exports = __toCommonJS(types_exports);\n","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 interface GetOpenaiAssistantFn {\n (args: { select: { id: true } }):\n | Pick<OpenAI.Beta.Assistants.Assistant, 'id'>\n | Promise<Pick<OpenAI.Beta.Assistants.Assistant, 'id'>>\n (args?: { select?: { id?: false } }):\n | OpenAI.Beta.Assistants.Assistant\n | Promise<OpenAI.Beta.Assistants.Assistant>\n}\n\n/**\n * Body shape from Assistants surface storage adapters (prismaStorageAdapter, memoryStorageAdapter).\n * This is a serialized OpenAI Run object — contains both API params and event metadata.\n */\nexport type AssistantsRunBody = OpenAI.Beta.Threads.Run\n\n/**\n * Body shape from Responses surface storage adapters (prismaStorageAdapter, openaiResponsesStorageAdapter).\n * These are Responses API params — passed directly to client.responses.create() by native adapters,\n * or used by completionsRunAdapter to build a /chat/completions request.\n */\nexport type ResponsesRunBody = {\n model?: string\n input?: OpenAI.Responses.ResponseInput\n status?: string\n instructions?: string\n tools?: OpenAI.Responses.Tool[]\n tool_choice?: OpenAI.Responses.ResponseCreateParams['tool_choice']\n metadata?: Record<string, string> | null\n temperature?: number\n top_p?: number\n max_output_tokens?: number\n text?: OpenAI.Responses.ResponseTextConfig\n truncation?: OpenAI.Responses.ResponseCreateParams['truncation']\n conversation?: string\n parallel_tool_calls?: boolean\n // Azure agent reference\n agent?: { name: string; type: string }\n}\n\n/**\n * Body shape from Azure Agents storage adapter.\n */\nexport type AzureAgentsRunBody = {\n threadId: string\n assistantId: string\n instructions?: string\n tools?: OpenAI.Beta.Threads.Runs.RunCreateParams['tools']\n}\n\nexport type RunAdapterBody = AssistantsRunBody | ResponsesRunBody | AzureAgentsRunBody\n\nexport type RunAdapterHandleArgs = {\n client: OpenAI\n body: RunAdapterBody\n onEvent: (event: any) => Promise<any>\n getMessages?: () => Promise<MessageWithRun[]>\n}\n\nexport type RunAdapterHandle = (\n args: RunAdapterHandleArgs,\n) => Promise<void>\n\nexport type RunAdapter = {\n handleRun: RunAdapterHandle\n getOpenaiAssistant?: GetOpenaiAssistantFn\n}\n\nexport type RunAdapterPartobClient = Omit<RunAdapter, 'handleRun'> & {\n handleRun: (\n args: Omit<RunAdapterHandleArgs, 'client'>,\n ) => ReturnType<RunAdapterHandle>\n}\n\nexport type RunAdapterWithAssistant = RunAdapterPartobClient & {\n getOpenaiAssistant: GetOpenaiAssistantFn\n}\n\nexport type StorageAdapterArgs = {\n client: OpenAI\n runAdapter: RunAdapterPartobClient\n originalClientAdapter?: any\n}\n\nexport type RequestHandler = (\n url: string,\n init: RequestInit & { body?: string },\n) => Promise<Response>\n"]}
@@ -77,7 +77,7 @@ type RunAdapterWithAssistant = RunAdapterPartobClient & {
77
77
  type StorageAdapterArgs = {
78
78
  client: OpenAI;
79
79
  runAdapter: RunAdapterPartobClient;
80
- originalClient?: any;
80
+ originalClientAdapter?: any;
81
81
  };
82
82
  type RequestHandler = (url: string, init: RequestInit & {
83
83
  body?: string;
@@ -77,7 +77,7 @@ type RunAdapterWithAssistant = RunAdapterPartobClient & {
77
77
  type StorageAdapterArgs = {
78
78
  client: OpenAI;
79
79
  runAdapter: RunAdapterPartobClient;
80
- originalClient?: any;
80
+ originalClientAdapter?: any;
81
81
  };
82
82
  type RequestHandler = (url: string, init: RequestInit & {
83
83
  body?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "supercompat",
3
- "version": "4.1.0",
3
+ "version": "4.2.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",