UNPKG

assistant-cloud

Version:

Cloud integration for assistant-ui

39 lines (38 loc) 1.7 kB
import { readCloudArray, readCloudInteger, readCloudJSONObject, readCloudNullableString, readCloudRecord, readCloudString, readCloudTimestamp } from "./cloudResponse.js"; //#region src/AssistantCloudThreadMessages.ts const decodeCloudMessage = (value, field) => { const message = readCloudRecord(value, field); return { id: readCloudString(message.id, `${field}.id`), parent_id: readCloudNullableString(message.parent_id, `${field}.parent_id`), height: readCloudInteger(message.height, `${field}.height`), created_at: readCloudTimestamp(message.created_at, `${field}.created_at`), updated_at: readCloudTimestamp(message.updated_at, `${field}.updated_at`), format: readCloudString(message.format, `${field}.format`), content: readCloudJSONObject(message.content, `${field}.content`) }; }; var AssistantCloudThreadMessages = class { cloud; constructor(cloud) { this.cloud = cloud; } async list(threadId, query) { return { messages: readCloudArray(readCloudRecord(await this.cloud.makeRequest(`/threads/${encodeURIComponent(threadId)}/messages`, { query }), "thread message list response").messages, "messages").map((message, index) => decodeCloudMessage(message, `messages[${index}]`)) }; } async create(threadId, body) { return this.cloud.makeRequest(`/threads/${encodeURIComponent(threadId)}/messages`, { method: "POST", body }); } async update(threadId, messageId, body) { return this.cloud.makeRequest(`/threads/${encodeURIComponent(threadId)}/messages/${encodeURIComponent(messageId)}`, { method: "PUT", body }); } }; //#endregion export { AssistantCloudThreadMessages, decodeCloudMessage }; //# sourceMappingURL=AssistantCloudThreadMessages.js.map