feat: add conversation image previews and sharing

This commit is contained in:
jjbrunton committed 2026-08-09 22:28:41 +01:00
1 parent 488145340d
commit b573b88b08
20 files changed
+634 -26

No files matched your search

+8
View File
@@ -2,6 +2,7 @@ import { z } from 'zod';
import { ErrorResponseSchema, RejectedActionResponseSchema } from './common.js';
import { MAX_CONFIGURED_AUTOMATED_CONVERSATION_TURNS } from './config.js';
import { RedditAccountOwnerSchema } from './session.js';
import { MediaLibraryAssetSchema, MediaLibraryTagSchema } from './media.js';
export const ChatMediaSchema = z.strictObject({
originalUrl: z.string(),
@@ -91,6 +92,12 @@ export const SuggestedReplyResponseSchema = z.strictObject({
conversationState: z.unknown().optional(),
});
export const SendReplyRequestSchema = z.strictObject({ message: z.string().min(1) });
export const ConversationMediaShareOptionsResponseSchema = z.strictObject({
requestKind: z.union([MediaLibraryTagSchema, z.literal('generic')]).nullable(),
assets: z.array(MediaLibraryAssetSchema),
reason: z.string().nullable(),
});
export const ShareConversationMediaRequestSchema = z.strictObject({ assetId: z.string().uuid() });
export const StartConversationRequestSchema = z.strictObject({
accountId: z.string().min(1),
username: z.string().min(1),
@@ -113,3 +120,4 @@ export const FetchAllChatsResponseSchema = z.strictObject({
export type ActiveChat = z.infer<typeof ActiveChatSchema>;
export type ChatSyncStatus = z.infer<typeof ChatSyncStatusSchema>;
export type ConversationDetailResponse = z.infer<typeof ConversationDetailResponseSchema>;
export type ConversationMediaShareOptions = z.infer<typeof ConversationMediaShareOptionsResponseSchema>;