supercompat 2.2.0 → 2.2.2

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts"],"names":["requestHandlers"],"mappings":";AAAA,OAAO,YAAY;;;ACAnB,SAAS,QAAQ,cAAc;AAGxB,IAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,MAKE;AAAA,EACE,OAAO;AAAA,EACP,WAAW,aACT,QAAQ;AAAA,IACN,YAAY,OAAO,YAAY,EAAE,OAAO,CAAC;AAAA,EAC3C,CAAC,EAAE,gBACD,CAAC;AACP;;;ACnBK,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;;;AChBO,IAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AACF,MAGM;AACJ,MAAI,OAAO,QAAQ;AACjB,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,UAAU;AAAA,MACd,GAAG,QAAQ;AAAA,MACX,eAAe,OAAO,OAAO,eAAe,EAAE;AAAA,IAChD;AAEA,WAAO,OAAO,OAAO,MAAM,KAAK;AAAA,MAC9B,GAAG;AAAA,MACH;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AAEL,WAAO,MAAM,GAAG,IAAI;AAAA,EACtB;AACF;;;ACZO,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,UAAU,SAAgB;AAC/B,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,cAAc,mBAAmB;AAAA,MACrC;AAAA,MACA,iBAAAA;AAAA,IACF,CAAC;AAED,QAAI,CAAC,aAAa;AAChB,aAAO,cAAc;AAAA,QACnB;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAEA,UAAM,iBAAiB,YAAY,SAAS,MAAM;AAElD,QAAI,CAAC,gBAAgB;AACnB,aAAO,cAAc;AAAA,QACnB;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAEA,WAAO,eAAe,GAAG,IAAI;AAAA,EAC/B;AACF;;;AJ7CO,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 { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\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 storage && runAdapter ? (\n storage({\n runAdapter: partob(runAdapter, { client }),\n }).routeHandlers\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","export const originalFetch = ({\n args,\n client,\n}: {\n args: any[]\n client: any\n}) => {\n if (client.client) {\n const [url, options] = args\n\n const headers = {\n ...options.headers,\n authorization: client.client.defaultHeaders().Authorization,\n }\n\n return client.client.fetch(url, {\n ...options,\n headers,\n })\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 requestHandler = pathHandler[options?.method]\n\n if (!requestHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/supercompat.ts","../src/supercompatFetch/requestHandlers.ts","../src/supercompatFetch/findRequestHandler.ts","../src/supercompatFetch/originalFetch.ts","../src/supercompatFetch/index.ts"],"names":["requestHandlers"],"mappings":";AAAA,OAAO,YAAY;;;ACAnB,SAAS,QAAQ,cAAc;AAG/B,IAAM,yBAAyB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,MAIM;AACJ,MAAI,CAAC,QAAS,QAAO,CAAC;AACtB,MAAI,CAAC,WAAY,QAAO,CAAC;AAEzB,QAAM,SAAS,QAAQ,EAAE,YAAY,OAAO,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;AACrE,SAAO,OAAO;AAChB;AAEO,IAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AACF,MAKE;AAAA,EACE,OAAO;AAAA,EACP,uBAAuB;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACH;;;ACnCK,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;;;AChBO,IAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AACF,MAGM;AACJ,MAAI,OAAO,QAAQ,OAAO;AACxB,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,UAAU;AAAA,MACd,GAAG,QAAQ;AAAA,MACX,eAAe,OAAO,OAAO,eAAe,EAAE;AAAA,IAChD;AAEA,WAAO,OAAO,OAAO,MAAM,KAAK;AAAA,MAC9B,GAAG;AAAA,MACH;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AAEL,WAAO,MAAM,GAAG,IAAI;AAAA,EACtB;AACF;;;ACZO,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,UAAU,SAAgB;AAC/B,UAAM,CAAC,KAAK,OAAO,IAAI;AAEvB,UAAM,cAAc,mBAAmB;AAAA,MACrC;AAAA,MACA,iBAAAA;AAAA,IACF,CAAC;AAED,QAAI,CAAC,aAAa;AAChB,aAAO,cAAc;AAAA,QACnB;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAEA,UAAM,iBAAiB,YAAY,SAAS,MAAM;AAElD,QAAI,CAAC,gBAAgB;AACnB,aAAO,cAAc;AAAA,QACnB;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH;AAEA,WAAO,eAAe,GAAG,IAAI;AAAA,EAC/B;AACF;;;AJ7CO,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 { assign, partob } from 'radash'\nimport { RunAdapter, StorageAdapterArgs } from '@/types'\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 result = storage({ runAdapter: partob(runAdapter, { client }) })\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\n if (regex.test(pathname)) {\n return requestHandlers[key]\n }\n }\n}\n","export const originalFetch = ({\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 headers = {\n ...options.headers,\n authorization: client.client.defaultHeaders().Authorization,\n }\n\n return client.client.fetch(url, {\n ...options,\n headers,\n })\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 requestHandler = pathHandler[options?.method]\n\n if (!requestHandler) {\n return originalFetch({\n client,\n args,\n })\n }\n\n return requestHandler(...args)\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "supercompat",
3
- "version": "2.2.0",
3
+ "version": "2.2.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",