@superinterface/react 2.4.5 → 2.5.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 +9 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -20
- package/dist/index.d.ts +29 -20
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/{queryFns.cjs → server.cjs} +437 -172
- package/dist/server.cjs.map +1 -0
- package/dist/server.d.cts +39 -0
- package/dist/server.d.ts +39 -0
- package/dist/server.js +879 -0
- package/dist/server.js.map +1 -0
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +17 -21
- package/dist/types/index.d.ts +17 -21
- package/dist/utils.cjs +41 -248
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +15 -19
- package/dist/utils.d.ts +15 -19
- package/dist/utils.js +37 -244
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/index-CGpJFXMu.d.cts +0 -5
- package/dist/index-CGpJFXMu.d.ts +0 -5
- package/dist/index-u67QcaWg.d.cts +0 -11
- package/dist/index-u67QcaWg.d.ts +0 -11
- package/dist/mutationFns.cjs +0 -357
- package/dist/mutationFns.cjs.map +0 -1
- package/dist/mutationFns.d.cts +0 -15
- package/dist/mutationFns.d.ts +0 -15
- package/dist/mutationFns.js +0 -287
- package/dist/mutationFns.js.map +0 -1
- package/dist/queryFns.cjs.map +0 -1
- package/dist/queryFns.d.cts +0 -26
- package/dist/queryFns.d.ts +0 -26
- package/dist/queryFns.js +0 -618
- package/dist/queryFns.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/runSteps/serializeRunStep.ts","../src/lib/messages/serializeMessage.ts","../src/lib/messages/messagesResponse/data/messages/index.ts","../src/lib/runSteps/getRunSteps/index.ts","../src/lib/messages/extendMessage.ts","../src/lib/messages/messagesResponse/data/messages/runMessages/index.ts","../src/lib/messages/messagesResponse/data/messages/runMessages/getLatestRun.ts","../src/lib/optimistic/optimisticId.ts","../src/lib/messages/messagesResponse/data/index.ts","../src/lib/messages/messagesResponse/limit.ts","../src/lib/messages/messagesResponse/hasNextPage.ts","../src/lib/messages/messagesResponse/index.ts","../src/lib/runs/serializeRun.ts","../src/lib/messages/createMessageResponse/actionsStream.ts","../src/lib/messages/createMessageResponse/handleStream.ts","../src/lib/messages/createMessageResponse/index.ts"],"names":["messagesResponse","pick","pMap"],"mappings":";AAAA,SAAS,YAAY;AAGd,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AACF,MAGE,KAAK,SAAS;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACbI,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AACF,OAIO;AAAA,EACL,IAAI,QAAQ;AAAA,EACZ,MAAM,QAAQ;AAAA,EACd,YAAY,QAAQ;AAAA,EACpB,SAAS,QAAQ;AAAA,EACjB,QAAQ,QAAQ;AAAA,EAChB,cAAc,QAAQ;AAAA,EACtB,WAAW,QAAQ;AAAA,EACnB,UAAU,QAAQ;AAAA,EAClB,UAAU,QAAQ;AAAA,EAClB,WAAW,QAAQ,YAAY,CAAC,GAAG,IAAI,CAAC,YACtC,iBAAiB,EAAE,QAAQ,CAAC,CAC7B;AAAA,EACD,QAAQ,QAAQ;AAClB;;;ACtBA,OAAO,UAAU;;;ACOV,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,mBAAmB,MAAM,OAAO,KAAK,QAAQ,KAAK,MAAM;AAAA,IAC5D;AAAA,IACA;AAAA,EACF;AAEA,SAAO,iBAAiB;AAC1B;;;ACXO,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AACF,MAAY;AACV,MAAI,CAAC,QAAQ,QAAQ;AACnB,WAAO;AAAA,MACL,GAAG;AAAA,MACH,UAAU,CAAC;AAAA,IACb;AAAA,EACF;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,UAAU,MAAM,YAAY;AAAA,MAC1B,UAAU,QAAQ;AAAA,MAClB,OAAO,QAAQ;AAAA,MACf;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AC3BA,OAAO,WAAW;;;ACOX,IAAM,eAAe,OAAO;AAAA,EACjC;AAAA,EACA;AACF,MAAY;AACV,QAAM,eAAe,MAAM,OAAO,KAAK,QAAQ,KAAK,KAAK,UAAU;AAAA,IACjE,OAAO;AAAA,EACT,CAAC;AAED,SAAO,aAAa,KAAK,CAAC;AAC5B;;;AChBA,SAAS,WAAW;AAEb,IAAM,eAAe,MAC1B,IAAI,IAAI,EAAE,CAAC;;;AFSb,IAAM,mBAAmB;AAAA,EACvB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,IAAM,cAAc,OAAO;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,MAAY;AACV,QAAM,YAAY,MAAM,aAAa,EAAE,UAAU,OAAO,CAAC;AAEzD,MAAI,CAAC,WAAW;AACd,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,uBAAuB,OAAO,KAAK,OAAK,EAAE,WAAW,UAAU,EAAE;AAEvE,MAAI,sBAAsB;AACxB,WAAO,CAAC;AAAA,EACV;AAEA,MAAI,CAAC,iBAAiB,SAAS,UAAU,MAAM,GAAG;AAChD,WAAO,CAAC;AAAA,EACV;AAEA,SAAO;AAAA,IACL,MAAM,cAAc;AAAA,MAClB,SAAS;AAAA,QACP,IAAI,aAAa;AAAA,QACjB,MAAM;AAAA,QACN,YAAY,MAAM,EAAE,KAAK;AAAA,QACzB,QAAQ;AAAA,QACR,oBAAoB;AAAA,QACpB,cAAc,MAAM,EAAE,KAAK;AAAA,QAC3B,eAAe;AAAA,QACf,QAAQ;AAAA,QACR,SAAS,CAAC;AAAA,QACV,QAAQ,UAAU;AAAA,QAClB,cAAc,UAAU;AAAA,QACxB,WAAW,UAAU;AAAA,QACrB,UAAU,CAAC;AAAA,QACX,UAAU,CAAC;AAAA,MACb;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AACF;;;AHxDO,IAAM,WAAW,OAAO;AAAA,EAC7B,kBAAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAKM;AACJ,QAAM,SAAS,MAAM,KAAKA,kBAAiB,MAAM,CAAC,YAChD,cAAc;AAAA,IACZ;AAAA,IACA;AAAA,EACF,CAAC,CACF;AAED,MAAI,WAAW;AACb,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,IACL,GAAG,MAAM,YAAY;AAAA,MACnB;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,GAAG;AAAA,EACL;AACF;;;AM/BO,IAAM,OAAO,OAAO;AAAA,EACzB,kBAAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,OAMG,MAAM,SAAS;AAAA,EACd,kBAAAA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC,GAAG,IAAI,CAAC,YACP,iBAAiB,EAAE,QAAQ,CAAC,CAC7B;;;ACtBI,IAAM,QAAQ;;;ACGd,IAAM,cAAc,CAAC;AAAA,EAC1B,kBAAAA;AACF,MAEM;AACJ,MAAIA,kBAAiB,KAAK,SAAS;AAAO,WAAO;AAEjD,SAAOA,kBAAiB,YAAY;AACtC;;;ACEO,IAAM,mBAAmB,OAAO;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AACF,MAAmC;AACjC,QAAMA,oBAAmB,MAAM,OAAO,KAAK,QAAQ,SAAS,KAAK,UAAU;AAAA,IACzE,GAAI,YAAY,EAAE,OAAO,UAAU,IAAI,CAAC;AAAA,IACxC;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL,MAAM,MAAM,KAAK;AAAA,MACf;AAAA,MACA,kBAAAA;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,IACD,aAAa,YAAY,EAAE,kBAAAA,kBAAiB,CAAC;AAAA;AAAA,IAE7C,QAAQA,kBAAiB,KAAK;AAAA,EAChC;AACF;;;AClCA,SAAS,QAAAC,aAAY;AAGd,IAAM,eAAe,CAAC;AAAA,EAC3B;AACF,MAGEA,MAAK,KAAK;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACZH,OAAOC,WAAU;AAEV,IAAM,gBAAgB,OAAO;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AACF,MAIM;AACJ,MAAI,CAAC,IAAI,iBAAiB;AACxB,UAAM,IAAI,MAAM,qCAAqC;AAAA,EACvD;AAEA,QAAM,YAAY,IAAI,gBAAgB,oBAAoB;AAE1D,SAAO,OAAO,KAAK,QAAQ,KAAK;AAAA,IAC9B,IAAI;AAAA,IACJ,IAAI;AAAA,IACJ;AAAA,MACE,cAAc,MAAMA;AAAA,QAAK;AAAA,QAAW,CAAC,aACnC,eAAe,EAAE,UAAU,IAAI,CAAC;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AACF;;;ACtBO,IAAM,eAAe,OAAO;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAKM;AACJ,mBAAiB,SAAS,QAAQ;AAChC,QAAI,CAAC,0BAA0B,0BAA0B,EAAE,SAAS,MAAM,KAAK,GAAG;AAChF,iBAAW,QAAQ,KAAK,UAAU;AAAA,QAChC,OAAO,MAAM;AAAA,QACb,MAAM,iBAAiB;AAAA,UACrB,SAAS,MAAM;AAAA,QACjB,CAAC;AAAA,MACH,CAAC,CAAC;AAAA,IACJ,WAAW,CAAC,wBAAwB,uBAAuB,EAAE,SAAS,MAAM,KAAK,GAAG;AAClF,iBAAW,QAAQ,KAAK,UAAU,KAAK,CAAC;AAAA,IAC1C,WAAW,MAAM,UAAU,sBAAsB;AAC/C,iBAAW,QAAQ,KAAK,UAAU;AAAA,QAChC,OAAO,MAAM;AAAA,QACb,MAAM,aAAa;AAAA,UACjB,KAAK,MAAM;AAAA,QACb,CAAC;AAAA,MACH,CAAC,CAAC;AAAA,IACJ,WAAW,CAAC,2BAA2B,2BAA2B,EAAE,SAAS,MAAM,KAAK,GAAG;AACzF,iBAAW,QAAQ,KAAK,UAAU;AAAA,QAChC,OAAO,MAAM;AAAA,QACb,MAAM,iBAAiB;AAAA,UACrB,SAAS,MAAM;AAAA,QACjB,CAAC;AAAA,MACH,CAAC,CAAC;AAAA,IACJ,WAAW,MAAM,UAAU,8BAA8B;AACvD,iBAAW,QAAQ,KAAK,UAAU,KAAK,CAAC;AAExC,cAAQ,IAAI,oCAAoC;AAChD,cAAQ,IAAI,EAAE,MAAM,GAAG,EAAE,OAAO,KAAK,CAAC;AACtC,YAAM,aAAa;AAAA,QACjB;AAAA,QACA,QAAQ,MAAM,cAAc;AAAA,UAC1B;AAAA,UACA,KAAK,MAAM;AAAA,UACX;AAAA,QACF,CAAC;AAAA,QACD;AAAA,QACA;AAAA,MACF,CAAC;AAAA,IACH,OAAO;AACL,cAAQ,IAAI,EAAE,MAAM,GAAG,EAAE,OAAO,KAAK,CAAC;AAAA,IACxC;AAAA,EACF;AACF;;;ACzDO,IAAM,wBAAwB,CAAC;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF,MAKE,IAAI,eAAe;AAAA,EACjB,MAAM,MAAM,YAAY;AACtB,UAAM,aAAa;AAAA,MACjB;AAAA,MACA,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,IACF,CAAC;AAED,YAAQ,IAAI,cAAc;AAC1B,eAAW,MAAM;AAAA,EACnB;AACF,CAAC","sourcesContent":["import { pick } from 'radash'\nimport OpenAI from 'openai'\n\nexport const serializeRunStep = ({\n runStep,\n}: {\n runStep: OpenAI.Beta.Threads.Runs.RunStep\n}) => (\n pick(runStep, [\n 'id',\n 'run_id',\n 'step_details',\n 'completed_at',\n 'cancelled_at',\n 'failed_at',\n 'status',\n ])\n)\n","import OpenAI from 'openai'\nimport { serializeRunStep } from '@/lib/runSteps/serializeRunStep'\n\nexport const serializeMessage = ({\n message,\n}: {\n message: OpenAI.Beta.Threads.Messages.Message & {\n runSteps?: OpenAI.Beta.Threads.Runs.RunStep[]\n }\n}) => ({\n id: message.id,\n role: message.role,\n created_at: message.created_at,\n content: message.content,\n run_id: message.run_id,\n assistant_id: message.assistant_id,\n thread_id: message.thread_id,\n file_ids: message.file_ids,\n metadata: message.metadata,\n runSteps: (message.runSteps ?? []).map((runStep) => (\n serializeRunStep({ runStep })\n )),\n status: message.status,\n})\n","import OpenAI from 'openai'\nimport pMap from 'p-map'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { runMessages } from './runMessages'\n\nexport const messages = async ({\n messagesResponse,\n pageParam,\n threadId,\n client,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.Message>\n pageParam?: string\n threadId: string\n client: OpenAI\n}) => {\n const result = await pMap(messagesResponse.data, (message) => (\n extendMessage({\n client,\n message,\n })\n ))\n\n if (pageParam) {\n return result\n }\n\n return [\n ...await runMessages({\n result,\n threadId,\n client,\n }),\n ...result,\n ]\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n runId: string\n client: OpenAI\n}\n\nexport const getRunSteps = async ({\n threadId,\n runId,\n client,\n}: Args) => {\n const runStepsResponse = await client.beta.threads.runs.steps.list(\n threadId,\n runId,\n )\n\n return runStepsResponse.data\n}\n","import OpenAI from 'openai'\nimport { getRunSteps } from '@/lib/runSteps/getRunSteps'\n\ntype Args = {\n message: OpenAI.Beta.Threads.Messages.Message\n client: OpenAI\n}\n\nexport const extendMessage = async ({\n message,\n client,\n}: Args) => {\n if (!message.run_id) {\n return {\n ...message,\n runSteps: [],\n }\n }\n\n return {\n ...message,\n runSteps: await getRunSteps({\n threadId: message.thread_id,\n runId: message.run_id,\n client,\n }),\n }\n}\n","import dayjs from 'dayjs'\nimport OpenAI from 'openai'\nimport { getLatestRun } from './getLatestRun'\nimport { extendMessage } from '@/lib/messages/extendMessage'\nimport { optimisticId } from '@/lib/optimistic/optimisticId'\n\ntype Args = {\n result: OpenAI.Beta.Threads.Messages.Message[]\n threadId: string\n client: OpenAI\n}\n\nconst progressStatuses = [\n 'queued',\n 'in_progress',\n 'requires_action',\n 'cancelling',\n]\n\nexport const runMessages = async ({\n result,\n threadId,\n client,\n}: Args) => {\n const latestRun = await getLatestRun({ threadId, client })\n\n if (!latestRun) {\n return []\n }\n\n const messageFromLatestRun = result.find(m => m.run_id === latestRun.id)\n\n if (messageFromLatestRun) {\n return []\n }\n\n if (!progressStatuses.includes(latestRun.status)) {\n return []\n }\n\n return [\n await extendMessage({\n message: {\n id: optimisticId(),\n role: 'assistant' as OpenAI.Beta.Threads.Messages.Message['role'],\n created_at: dayjs().unix(),\n object: 'thread.message' as OpenAI.Beta.Threads.Messages.Message['object'],\n incomplete_details: null,\n completed_at: dayjs().unix(),\n incomplete_at: null,\n status: 'completed',\n content: [],\n run_id: latestRun.id,\n assistant_id: latestRun.assistant_id,\n thread_id: latestRun.thread_id,\n file_ids: [],\n metadata: {},\n },\n client,\n }),\n ]\n}\n","import OpenAI from 'openai'\n\ntype Args = {\n threadId: string\n client: OpenAI\n}\n\nexport const getLatestRun = async ({\n threadId,\n client,\n}: Args) => {\n const runsResponse = await client.beta.threads.runs.list(threadId, {\n limit: 1,\n })\n\n return runsResponse.data[0]\n}\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n","import OpenAI from 'openai'\nimport { serializeMessage } from '@/lib/messages/serializeMessage'\nimport { messages } from './messages'\n\nexport const data = async ({\n messagesResponse,\n pageParam,\n threadId,\n client,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.Message>\n pageParam?: string\n threadId: string\n client: OpenAI\n}) => (\n (await messages({\n messagesResponse,\n pageParam,\n threadId,\n client,\n })).map((message) => (\n serializeMessage({ message })\n ))\n)\n","export const limit = 10\n","import OpenAI from 'openai'\nimport { limit } from './limit'\n\nexport const hasNextPage = ({\n messagesResponse,\n}: {\n messagesResponse: OpenAI.CursorPage<OpenAI.Beta.Threads.Messages.Message>\n}) => {\n if (messagesResponse.data.length < limit) return false\n\n return messagesResponse.hasNextPage()\n}\n","import _ from 'lodash'\nimport OpenAI from 'openai'\nimport { MessagesPage } from '@/types'\nimport { data } from './data'\nimport { limit } from './limit'\nimport { hasNextPage } from './hasNextPage'\n\ntype Args = {\n client: OpenAI\n threadId: string\n pageParam?: string\n}\n\nexport const messagesResponse = async ({\n client,\n threadId,\n pageParam,\n}: Args): Promise<MessagesPage> => {\n const messagesResponse = await client.beta.threads.messages.list(threadId, {\n ...(pageParam ? { after: pageParam } : {}),\n limit,\n })\n\n return {\n data: await data({\n client,\n messagesResponse,\n pageParam,\n threadId,\n }),\n hasNextPage: hasNextPage({ messagesResponse }),\n // @ts-ignore-next-line\n lastId: messagesResponse.body.last_id,\n }\n}\n","import { pick } from 'radash'\nimport OpenAI from 'openai'\n\nexport const serializeRun = ({\n run\n}: {\n run: OpenAI.Beta.Threads.Runs.Run\n}) => (\n pick(run, [\n 'id',\n 'thread_id',\n 'assistant_id',\n 'created_at',\n ])\n)\n","import OpenAI from 'openai'\nimport pMap from 'p-map'\n\nexport const actionsStream = async ({\n client,\n run,\n handleToolCall,\n}: {\n client: any\n run: OpenAI.Beta.Threads.Runs.Run\n handleToolCall: any\n}) => {\n if (!run.required_action) {\n throw new Error('Run does not have a required action')\n }\n\n const toolCalls = run.required_action.submit_tool_outputs.tool_calls\n\n return client.beta.threads.runs.submitToolOutputsStream(\n run.thread_id,\n run.id,\n {\n tool_outputs: await pMap(toolCalls, (toolCall) => (\n handleToolCall({ toolCall, run }))\n ),\n },\n )\n}\n","import { serializeMessage } from '@/lib/messages/serializeMessage'\nimport { serializeRun } from '@/lib/runs/serializeRun'\nimport { serializeRunStep } from '@/lib/runSteps/serializeRunStep'\nimport { actionsStream } from './actionsStream'\n\nexport const handleStream = async ({\n client,\n stream,\n controller,\n handleToolCall,\n}: {\n client: any\n stream: ReadableStream\n controller: ReadableStreamDefaultController\n handleToolCall: any\n}) => {\n for await (const value of stream) {\n if (['thread.message.created', 'thread.message.completed'].includes(value.event)) {\n controller.enqueue(JSON.stringify({\n event: value.event,\n data: serializeMessage({\n message: value.data,\n }),\n }))\n } else if (['thread.message.delta', 'thread.run.step.delta'].includes(value.event)) {\n controller.enqueue(JSON.stringify(value))\n } else if (value.event === 'thread.run.created') {\n controller.enqueue(JSON.stringify({\n event: value.event,\n data: serializeRun({\n run: value.data,\n }),\n }))\n } else if (['thread.run.step.created', 'thread.run.step.completed'].includes(value.event)) {\n controller.enqueue(JSON.stringify({\n event: value.event,\n data: serializeRunStep({\n runStep: value.data,\n }),\n }))\n } else if (value.event === 'thread.run.requires_action') {\n controller.enqueue(JSON.stringify(value))\n\n console.log('starting to handle in handleStream')\n console.dir({ value }, { depth: null })\n await handleStream({\n client,\n stream: await actionsStream({\n client,\n run: value.data,\n handleToolCall,\n }),\n controller,\n handleToolCall,\n })\n } else {\n console.dir({ value }, { depth: null })\n }\n }\n}\n","import { handleStream } from './handleStream'\n\nexport const createMessageResponse = ({\n client,\n createRunStream,\n handleToolCall,\n}: {\n client: any\n createRunStream: any\n handleToolCall: any\n}) => (\n new ReadableStream({\n async start(controller) {\n await handleStream({\n client,\n stream: createRunStream,\n controller,\n handleToolCall,\n })\n\n console.log('Stream ended')\n controller.close()\n },\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 OpenAI from 'openai'\n\nexport type
|
|
1
|
+
{"version":3,"sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA","sourcesContent":["import OpenAI from 'openai'\n\nexport type SerializedRunStep = Pick<OpenAI.Beta.Threads.Runs.RunStep, 'id' | 'run_id' | 'step_details' | 'completed_at' | 'cancelled_at' | 'failed_at' | 'status'>\n\nexport type SerializedMessage = Pick<OpenAI.Beta.Threads.Messages.Message, 'id' | 'role' | 'created_at' | 'content' | 'run_id' | 'assistant_id' | 'thread_id' | 'file_ids' | 'metadata' | 'status'> & {\n runSteps: SerializedRunStep[]\n}\n\nexport type MessagesPage = {\n data: SerializedMessage[]\n hasNextPage: boolean\n lastId: string\n}\n\nexport type MessageGroup = {\n id: string\n role: \"user\" | \"assistant\"\n messages: SerializedMessage[]\n createdAt: number\n}\n\nexport type AudioEngine = {\n source: MediaStreamAudioSourceNode | GainNode\n audioContext: AudioContext\n}\n\nexport type Toast = {\n type: 'success' | 'error'\n message: string\n}\n\nexport type ThreadMessageCreatedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCreated & {\n data: SerializedMessage\n}\n\nexport type ThreadMessageCompletedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCompleted & {\n data: SerializedMessage\n}\n\nexport type ThreadRunStepDeltaEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunStepDelta & {\n data: {\n run_id: string\n }\n}\n"]}
|
package/dist/types/index.d.cts
CHANGED
|
@@ -1,35 +1,20 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
type
|
|
4
|
-
type
|
|
5
|
-
runSteps:
|
|
3
|
+
type SerializedRunStep = Pick<OpenAI.Beta.Threads.Runs.RunStep, 'id' | 'run_id' | 'step_details' | 'completed_at' | 'cancelled_at' | 'failed_at' | 'status'>;
|
|
4
|
+
type SerializedMessage = Pick<OpenAI.Beta.Threads.Messages.Message, 'id' | 'role' | 'created_at' | 'content' | 'run_id' | 'assistant_id' | 'thread_id' | 'file_ids' | 'metadata' | 'status'> & {
|
|
5
|
+
runSteps: SerializedRunStep[];
|
|
6
6
|
};
|
|
7
7
|
type MessagesPage = {
|
|
8
|
-
data:
|
|
9
|
-
hasNextPage: boolean;
|
|
10
|
-
lastId: string;
|
|
11
|
-
};
|
|
12
|
-
type RunStepsPage = {
|
|
13
|
-
data: OpenAI.Beta.Threads.Runs.RunStep[];
|
|
8
|
+
data: SerializedMessage[];
|
|
14
9
|
hasNextPage: boolean;
|
|
15
10
|
lastId: string;
|
|
16
11
|
};
|
|
17
12
|
type MessageGroup = {
|
|
18
13
|
id: string;
|
|
19
14
|
role: "user" | "assistant";
|
|
20
|
-
messages:
|
|
15
|
+
messages: SerializedMessage[];
|
|
21
16
|
createdAt: number;
|
|
22
17
|
};
|
|
23
|
-
type Run = OpenAI.Beta.Threads.Runs.Run;
|
|
24
|
-
type RunsPage = {
|
|
25
|
-
data: Run[];
|
|
26
|
-
hasNextPage: boolean;
|
|
27
|
-
lastId: string;
|
|
28
|
-
};
|
|
29
|
-
type Fn = (args: any) => Promise<string>;
|
|
30
|
-
type Functions = {
|
|
31
|
-
[key: string]: Fn;
|
|
32
|
-
};
|
|
33
18
|
type AudioEngine = {
|
|
34
19
|
source: MediaStreamAudioSourceNode | GainNode;
|
|
35
20
|
audioContext: AudioContext;
|
|
@@ -38,5 +23,16 @@ type Toast = {
|
|
|
38
23
|
type: 'success' | 'error';
|
|
39
24
|
message: string;
|
|
40
25
|
};
|
|
26
|
+
type ThreadMessageCreatedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCreated & {
|
|
27
|
+
data: SerializedMessage;
|
|
28
|
+
};
|
|
29
|
+
type ThreadMessageCompletedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCompleted & {
|
|
30
|
+
data: SerializedMessage;
|
|
31
|
+
};
|
|
32
|
+
type ThreadRunStepDeltaEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunStepDelta & {
|
|
33
|
+
data: {
|
|
34
|
+
run_id: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
41
37
|
|
|
42
|
-
export type { AudioEngine,
|
|
38
|
+
export type { AudioEngine, MessageGroup, MessagesPage, SerializedMessage, SerializedRunStep, ThreadMessageCompletedEvent, ThreadMessageCreatedEvent, ThreadRunStepDeltaEvent, Toast };
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,35 +1,20 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
type
|
|
4
|
-
type
|
|
5
|
-
runSteps:
|
|
3
|
+
type SerializedRunStep = Pick<OpenAI.Beta.Threads.Runs.RunStep, 'id' | 'run_id' | 'step_details' | 'completed_at' | 'cancelled_at' | 'failed_at' | 'status'>;
|
|
4
|
+
type SerializedMessage = Pick<OpenAI.Beta.Threads.Messages.Message, 'id' | 'role' | 'created_at' | 'content' | 'run_id' | 'assistant_id' | 'thread_id' | 'file_ids' | 'metadata' | 'status'> & {
|
|
5
|
+
runSteps: SerializedRunStep[];
|
|
6
6
|
};
|
|
7
7
|
type MessagesPage = {
|
|
8
|
-
data:
|
|
9
|
-
hasNextPage: boolean;
|
|
10
|
-
lastId: string;
|
|
11
|
-
};
|
|
12
|
-
type RunStepsPage = {
|
|
13
|
-
data: OpenAI.Beta.Threads.Runs.RunStep[];
|
|
8
|
+
data: SerializedMessage[];
|
|
14
9
|
hasNextPage: boolean;
|
|
15
10
|
lastId: string;
|
|
16
11
|
};
|
|
17
12
|
type MessageGroup = {
|
|
18
13
|
id: string;
|
|
19
14
|
role: "user" | "assistant";
|
|
20
|
-
messages:
|
|
15
|
+
messages: SerializedMessage[];
|
|
21
16
|
createdAt: number;
|
|
22
17
|
};
|
|
23
|
-
type Run = OpenAI.Beta.Threads.Runs.Run;
|
|
24
|
-
type RunsPage = {
|
|
25
|
-
data: Run[];
|
|
26
|
-
hasNextPage: boolean;
|
|
27
|
-
lastId: string;
|
|
28
|
-
};
|
|
29
|
-
type Fn = (args: any) => Promise<string>;
|
|
30
|
-
type Functions = {
|
|
31
|
-
[key: string]: Fn;
|
|
32
|
-
};
|
|
33
18
|
type AudioEngine = {
|
|
34
19
|
source: MediaStreamAudioSourceNode | GainNode;
|
|
35
20
|
audioContext: AudioContext;
|
|
@@ -38,5 +23,16 @@ type Toast = {
|
|
|
38
23
|
type: 'success' | 'error';
|
|
39
24
|
message: string;
|
|
40
25
|
};
|
|
26
|
+
type ThreadMessageCreatedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCreated & {
|
|
27
|
+
data: SerializedMessage;
|
|
28
|
+
};
|
|
29
|
+
type ThreadMessageCompletedEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadMessageCompleted & {
|
|
30
|
+
data: SerializedMessage;
|
|
31
|
+
};
|
|
32
|
+
type ThreadRunStepDeltaEvent = OpenAI.Beta.Assistants.AssistantStreamEvent.ThreadRunStepDelta & {
|
|
33
|
+
data: {
|
|
34
|
+
run_id: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
41
37
|
|
|
42
|
-
export type { AudioEngine,
|
|
38
|
+
export type { AudioEngine, MessageGroup, MessagesPage, SerializedMessage, SerializedRunStep, ThreadMessageCompletedEvent, ThreadMessageCreatedEvent, ThreadRunStepDeltaEvent, Toast };
|
package/dist/utils.cjs
CHANGED
|
@@ -1,180 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
3
|
-
try {
|
|
4
|
-
var info = gen[key](arg);
|
|
5
|
-
var value = info.value;
|
|
6
|
-
} catch (error) {
|
|
7
|
-
reject(error);
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
if (info.done) {
|
|
11
|
-
resolve(value);
|
|
12
|
-
} else {
|
|
13
|
-
Promise.resolve(value).then(_next, _throw);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
function _async_to_generator(fn) {
|
|
17
|
-
return function() {
|
|
18
|
-
var self = this, args = arguments;
|
|
19
|
-
return new Promise(function(resolve, reject) {
|
|
20
|
-
var gen = fn.apply(self, args);
|
|
21
|
-
function _next(value) {
|
|
22
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
23
|
-
}
|
|
24
|
-
function _throw(err) {
|
|
25
|
-
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
26
|
-
}
|
|
27
|
-
_next(undefined);
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
function _define_property(obj, key, value) {
|
|
32
|
-
if (key in obj) {
|
|
33
|
-
Object.defineProperty(obj, key, {
|
|
34
|
-
value: value,
|
|
35
|
-
enumerable: true,
|
|
36
|
-
configurable: true,
|
|
37
|
-
writable: true
|
|
38
|
-
});
|
|
39
|
-
} else {
|
|
40
|
-
obj[key] = value;
|
|
41
|
-
}
|
|
42
|
-
return obj;
|
|
43
|
-
}
|
|
44
|
-
function _object_spread(target) {
|
|
45
|
-
for(var i = 1; i < arguments.length; i++){
|
|
46
|
-
var source = arguments[i] != null ? arguments[i] : {};
|
|
47
|
-
var ownKeys = Object.keys(source);
|
|
48
|
-
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
49
|
-
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
50
|
-
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
51
|
-
}));
|
|
52
|
-
}
|
|
53
|
-
ownKeys.forEach(function(key) {
|
|
54
|
-
_define_property(target, key, source[key]);
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
return target;
|
|
58
|
-
}
|
|
59
|
-
function ownKeys(object, enumerableOnly) {
|
|
60
|
-
var keys = Object.keys(object);
|
|
61
|
-
if (Object.getOwnPropertySymbols) {
|
|
62
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
63
|
-
if (enumerableOnly) {
|
|
64
|
-
symbols = symbols.filter(function(sym) {
|
|
65
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
keys.push.apply(keys, symbols);
|
|
69
|
-
}
|
|
70
|
-
return keys;
|
|
71
|
-
}
|
|
72
|
-
function _object_spread_props(target, source) {
|
|
73
|
-
source = source != null ? source : {};
|
|
74
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
75
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
76
|
-
} else {
|
|
77
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
78
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
return target;
|
|
82
|
-
}
|
|
83
|
-
function _ts_generator(thisArg, body) {
|
|
84
|
-
var f, y, t, g, _ = {
|
|
85
|
-
label: 0,
|
|
86
|
-
sent: function() {
|
|
87
|
-
if (t[0] & 1) throw t[1];
|
|
88
|
-
return t[1];
|
|
89
|
-
},
|
|
90
|
-
trys: [],
|
|
91
|
-
ops: []
|
|
92
|
-
};
|
|
93
|
-
return g = {
|
|
94
|
-
next: verb(0),
|
|
95
|
-
"throw": verb(1),
|
|
96
|
-
"return": verb(2)
|
|
97
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
98
|
-
return this;
|
|
99
|
-
}), g;
|
|
100
|
-
function verb(n) {
|
|
101
|
-
return function(v) {
|
|
102
|
-
return step([
|
|
103
|
-
n,
|
|
104
|
-
v
|
|
105
|
-
]);
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
function step(op) {
|
|
109
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
110
|
-
while(_)try {
|
|
111
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
112
|
-
if (y = 0, t) op = [
|
|
113
|
-
op[0] & 2,
|
|
114
|
-
t.value
|
|
115
|
-
];
|
|
116
|
-
switch(op[0]){
|
|
117
|
-
case 0:
|
|
118
|
-
case 1:
|
|
119
|
-
t = op;
|
|
120
|
-
break;
|
|
121
|
-
case 4:
|
|
122
|
-
_.label++;
|
|
123
|
-
return {
|
|
124
|
-
value: op[1],
|
|
125
|
-
done: false
|
|
126
|
-
};
|
|
127
|
-
case 5:
|
|
128
|
-
_.label++;
|
|
129
|
-
y = op[1];
|
|
130
|
-
op = [
|
|
131
|
-
0
|
|
132
|
-
];
|
|
133
|
-
continue;
|
|
134
|
-
case 7:
|
|
135
|
-
op = _.ops.pop();
|
|
136
|
-
_.trys.pop();
|
|
137
|
-
continue;
|
|
138
|
-
default:
|
|
139
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
140
|
-
_ = 0;
|
|
141
|
-
continue;
|
|
142
|
-
}
|
|
143
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
144
|
-
_.label = op[1];
|
|
145
|
-
break;
|
|
146
|
-
}
|
|
147
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
148
|
-
_.label = t[1];
|
|
149
|
-
t = op;
|
|
150
|
-
break;
|
|
151
|
-
}
|
|
152
|
-
if (t && _.label < t[2]) {
|
|
153
|
-
_.label = t[2];
|
|
154
|
-
_.ops.push(op);
|
|
155
|
-
break;
|
|
156
|
-
}
|
|
157
|
-
if (t[2]) _.ops.pop();
|
|
158
|
-
_.trys.pop();
|
|
159
|
-
continue;
|
|
160
|
-
}
|
|
161
|
-
op = body.call(thisArg, _);
|
|
162
|
-
} catch (e) {
|
|
163
|
-
op = [
|
|
164
|
-
6,
|
|
165
|
-
e
|
|
166
|
-
];
|
|
167
|
-
y = 0;
|
|
168
|
-
} finally{
|
|
169
|
-
f = t = 0;
|
|
170
|
-
}
|
|
171
|
-
if (op[0] & 5) throw op[1];
|
|
172
|
-
return {
|
|
173
|
-
value: op[0] ? op[1] : void 0,
|
|
174
|
-
done: true
|
|
175
|
-
};
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
2
|
var __defProp = Object.defineProperty;
|
|
179
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
180
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
@@ -224,89 +48,58 @@ var __toCommonJS = function(mod) {
|
|
|
224
48
|
// src/utils.ts
|
|
225
49
|
var utils_exports = {};
|
|
226
50
|
__export(utils_exports, {
|
|
227
|
-
extendMessage: function() {
|
|
228
|
-
return extendMessage;
|
|
229
|
-
},
|
|
230
51
|
optimisticId: function() {
|
|
231
52
|
return optimisticId;
|
|
53
|
+
},
|
|
54
|
+
serializeMessage: function() {
|
|
55
|
+
return serializeMessage;
|
|
232
56
|
}
|
|
233
57
|
});
|
|
234
58
|
module.exports = __toCommonJS(utils_exports);
|
|
235
|
-
// src/lib/runSteps/getRunSteps/index.ts
|
|
236
|
-
var getRunSteps = function() {
|
|
237
|
-
var _ref = _async_to_generator(function(param) {
|
|
238
|
-
var threadId, runId, client, runStepsResponse;
|
|
239
|
-
return _ts_generator(this, function(_state) {
|
|
240
|
-
switch(_state.label){
|
|
241
|
-
case 0:
|
|
242
|
-
threadId = param.threadId, runId = param.runId, client = param.client;
|
|
243
|
-
return [
|
|
244
|
-
4,
|
|
245
|
-
client.beta.threads.runs.steps.list(threadId, runId)
|
|
246
|
-
];
|
|
247
|
-
case 1:
|
|
248
|
-
runStepsResponse = _state.sent();
|
|
249
|
-
return [
|
|
250
|
-
2,
|
|
251
|
-
runStepsResponse.data
|
|
252
|
-
];
|
|
253
|
-
}
|
|
254
|
-
});
|
|
255
|
-
});
|
|
256
|
-
return function getRunSteps(_) {
|
|
257
|
-
return _ref.apply(this, arguments);
|
|
258
|
-
};
|
|
259
|
-
}();
|
|
260
|
-
// src/lib/messages/extendMessage.ts
|
|
261
|
-
var extendMessage = function() {
|
|
262
|
-
var _ref = _async_to_generator(function(param) {
|
|
263
|
-
var message, client, _tmp, _tmp1;
|
|
264
|
-
return _ts_generator(this, function(_state) {
|
|
265
|
-
switch(_state.label){
|
|
266
|
-
case 0:
|
|
267
|
-
message = param.message, client = param.client;
|
|
268
|
-
if (!message.run_id) {
|
|
269
|
-
return [
|
|
270
|
-
2,
|
|
271
|
-
_object_spread_props(_object_spread({}, message), {
|
|
272
|
-
runSteps: []
|
|
273
|
-
})
|
|
274
|
-
];
|
|
275
|
-
}
|
|
276
|
-
_tmp = [
|
|
277
|
-
_object_spread({}, message)
|
|
278
|
-
];
|
|
279
|
-
_tmp1 = {};
|
|
280
|
-
return [
|
|
281
|
-
4,
|
|
282
|
-
getRunSteps({
|
|
283
|
-
threadId: message.thread_id,
|
|
284
|
-
runId: message.run_id,
|
|
285
|
-
client: client
|
|
286
|
-
})
|
|
287
|
-
];
|
|
288
|
-
case 1:
|
|
289
|
-
return [
|
|
290
|
-
2,
|
|
291
|
-
_object_spread_props.apply(void 0, _tmp.concat([
|
|
292
|
-
(_tmp1.runSteps = _state.sent(), _tmp1)
|
|
293
|
-
]))
|
|
294
|
-
];
|
|
295
|
-
}
|
|
296
|
-
});
|
|
297
|
-
});
|
|
298
|
-
return function extendMessage(_) {
|
|
299
|
-
return _ref.apply(this, arguments);
|
|
300
|
-
};
|
|
301
|
-
}();
|
|
302
59
|
// src/lib/optimistic/optimisticId.ts
|
|
303
60
|
var import_radash = require("radash");
|
|
304
61
|
var optimisticId = function() {
|
|
305
62
|
return "-".concat((0, import_radash.uid)(24));
|
|
306
63
|
};
|
|
64
|
+
// src/lib/runSteps/serializeRunStep.ts
|
|
65
|
+
var import_radash2 = require("radash");
|
|
66
|
+
var serializeRunStep = function(param) {
|
|
67
|
+
var runStep = param.runStep;
|
|
68
|
+
return (0, import_radash2.pick)(runStep, [
|
|
69
|
+
"id",
|
|
70
|
+
"run_id",
|
|
71
|
+
"step_details",
|
|
72
|
+
"completed_at",
|
|
73
|
+
"cancelled_at",
|
|
74
|
+
"failed_at",
|
|
75
|
+
"status"
|
|
76
|
+
]);
|
|
77
|
+
};
|
|
78
|
+
// src/lib/messages/serializeMessage.ts
|
|
79
|
+
var serializeMessage = function(param) {
|
|
80
|
+
var message = param.message;
|
|
81
|
+
var _message_runSteps;
|
|
82
|
+
return {
|
|
83
|
+
id: message.id,
|
|
84
|
+
role: message.role,
|
|
85
|
+
created_at: message.created_at,
|
|
86
|
+
content: message.content,
|
|
87
|
+
run_id: message.run_id,
|
|
88
|
+
assistant_id: message.assistant_id,
|
|
89
|
+
thread_id: message.thread_id,
|
|
90
|
+
file_ids: message.file_ids,
|
|
91
|
+
metadata: message.metadata,
|
|
92
|
+
runSteps: ((_message_runSteps = message.runSteps) !== null && _message_runSteps !== void 0 ? _message_runSteps : []).map(function(runStep) {
|
|
93
|
+
return serializeRunStep({
|
|
94
|
+
runStep: runStep
|
|
95
|
+
});
|
|
96
|
+
}),
|
|
97
|
+
status: message.status
|
|
98
|
+
};
|
|
99
|
+
};
|
|
307
100
|
// Annotate the CommonJS export names for ESM import in node:
|
|
308
101
|
0 && (module.exports = {
|
|
309
|
-
|
|
310
|
-
|
|
102
|
+
optimisticId: optimisticId,
|
|
103
|
+
serializeMessage: serializeMessage
|
|
311
104
|
});
|
|
312
105
|
//# sourceMappingURL=utils.cjs.map
|
package/dist/utils.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/utils.ts","../src/lib/
|
|
1
|
+
{"version":3,"sources":["../src/utils.ts","../src/lib/optimistic/optimisticId.ts","../src/lib/runSteps/serializeRunStep.ts","../src/lib/messages/serializeMessage.ts"],"names":["import_radash"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,oBAAoB;AAEb,IAAM,eAAe,MAC1B,QAAI,mBAAI,EAAE,CAAC;;;ACHb,IAAAA,iBAAqB;AAGd,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AACF,UAGE,qBAAK,SAAS;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;;;ACbI,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AACF,OAIO;AAAA,EACL,IAAI,QAAQ;AAAA,EACZ,MAAM,QAAQ;AAAA,EACd,YAAY,QAAQ;AAAA,EACpB,SAAS,QAAQ;AAAA,EACjB,QAAQ,QAAQ;AAAA,EAChB,cAAc,QAAQ;AAAA,EACtB,WAAW,QAAQ;AAAA,EACnB,UAAU,QAAQ;AAAA,EAClB,UAAU,QAAQ;AAAA,EAClB,WAAW,QAAQ,YAAY,CAAC,GAAG,IAAI,CAAC,YACtC,iBAAiB,EAAE,QAAQ,CAAC,CAC7B;AAAA,EACD,QAAQ,QAAQ;AAClB","sourcesContent":["export { optimisticId } from '@/lib/optimistic/optimisticId'\nexport { serializeMessage } from '@/lib/messages/serializeMessage'\n","import { uid } from 'radash'\n\nexport const optimisticId = () => (\n `-${uid(24)}`\n)\n","import { pick } from 'radash'\nimport OpenAI from 'openai'\n\nexport const serializeRunStep = ({\n runStep,\n}: {\n runStep: OpenAI.Beta.Threads.Runs.RunStep\n}) => (\n pick(runStep, [\n 'id',\n 'run_id',\n 'step_details',\n 'completed_at',\n 'cancelled_at',\n 'failed_at',\n 'status',\n ])\n)\n","import OpenAI from 'openai'\nimport { serializeRunStep } from '@/lib/runSteps/serializeRunStep'\n\nexport const serializeMessage = ({\n message,\n}: {\n message: OpenAI.Beta.Threads.Messages.Message & {\n runSteps?: OpenAI.Beta.Threads.Runs.RunStep[]\n }\n}) => ({\n id: message.id,\n role: message.role,\n created_at: message.created_at,\n content: message.content,\n run_id: message.run_id,\n assistant_id: message.assistant_id,\n thread_id: message.thread_id,\n file_ids: message.file_ids,\n metadata: message.metadata,\n runSteps: (message.runSteps ?? []).map((runStep) => (\n serializeRunStep({ runStep })\n )),\n status: message.status,\n})\n"]}
|
package/dist/utils.d.cts
CHANGED
|
@@ -1,27 +1,23 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
declare const optimisticId: () => string;
|
|
4
|
+
|
|
5
|
+
declare const serializeMessage: ({ message, }: {
|
|
6
|
+
message: OpenAI.Beta.Threads.Messages.Message & {
|
|
7
|
+
runSteps?: OpenAI.Beta.Threads.Runs.RunStep[];
|
|
8
|
+
};
|
|
9
|
+
}) => {
|
|
9
10
|
id: string;
|
|
10
|
-
|
|
11
|
-
completed_at: number | null;
|
|
12
|
-
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
11
|
+
role: "user" | "assistant";
|
|
13
12
|
created_at: number;
|
|
13
|
+
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
14
|
+
run_id: string | null;
|
|
15
|
+
assistant_id: string | null;
|
|
16
|
+
thread_id: string;
|
|
14
17
|
file_ids: string[];
|
|
15
|
-
incomplete_at: number | null;
|
|
16
|
-
incomplete_details: OpenAI.Beta.Threads.Messages.Message.IncompleteDetails | null;
|
|
17
18
|
metadata: unknown;
|
|
18
|
-
|
|
19
|
-
role: "user" | "assistant";
|
|
20
|
-
run_id: string | null;
|
|
19
|
+
runSteps: Pick<OpenAI.Beta.Threads.Runs.Steps.RunStep, "id" | "run_id" | "step_details" | "completed_at" | "cancelled_at" | "failed_at" | "status">[];
|
|
21
20
|
status: "in_progress" | "incomplete" | "completed";
|
|
22
|
-
|
|
23
|
-
}>;
|
|
24
|
-
|
|
25
|
-
declare const optimisticId: () => string;
|
|
21
|
+
};
|
|
26
22
|
|
|
27
|
-
export {
|
|
23
|
+
export { optimisticId, serializeMessage };
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,27 +1,23 @@
|
|
|
1
1
|
import OpenAI from 'openai';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
declare const optimisticId: () => string;
|
|
4
|
+
|
|
5
|
+
declare const serializeMessage: ({ message, }: {
|
|
6
|
+
message: OpenAI.Beta.Threads.Messages.Message & {
|
|
7
|
+
runSteps?: OpenAI.Beta.Threads.Runs.RunStep[];
|
|
8
|
+
};
|
|
9
|
+
}) => {
|
|
9
10
|
id: string;
|
|
10
|
-
|
|
11
|
-
completed_at: number | null;
|
|
12
|
-
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
11
|
+
role: "user" | "assistant";
|
|
13
12
|
created_at: number;
|
|
13
|
+
content: OpenAI.Beta.Threads.Messages.MessageContent[];
|
|
14
|
+
run_id: string | null;
|
|
15
|
+
assistant_id: string | null;
|
|
16
|
+
thread_id: string;
|
|
14
17
|
file_ids: string[];
|
|
15
|
-
incomplete_at: number | null;
|
|
16
|
-
incomplete_details: OpenAI.Beta.Threads.Messages.Message.IncompleteDetails | null;
|
|
17
18
|
metadata: unknown;
|
|
18
|
-
|
|
19
|
-
role: "user" | "assistant";
|
|
20
|
-
run_id: string | null;
|
|
19
|
+
runSteps: Pick<OpenAI.Beta.Threads.Runs.Steps.RunStep, "id" | "run_id" | "step_details" | "completed_at" | "cancelled_at" | "failed_at" | "status">[];
|
|
21
20
|
status: "in_progress" | "incomplete" | "completed";
|
|
22
|
-
|
|
23
|
-
}>;
|
|
24
|
-
|
|
25
|
-
declare const optimisticId: () => string;
|
|
21
|
+
};
|
|
26
22
|
|
|
27
|
-
export {
|
|
23
|
+
export { optimisticId, serializeMessage };
|