feat: persist settings and enrich conversation context
This commit is contained in:
1 parent
a36723a325
commit
2c100d72b6
84 files changed
+2248
-644
No files matched your search
@@ -15,6 +15,8 @@ export const ActivityItemSchema = z.strictObject({
|
||||
message: z.string(),
|
||||
recipient: z.string().optional(),
|
||||
imageUrl: z.string().optional(),
|
||||
postTitle: z.string().optional(),
|
||||
postUrl: z.string().optional(),
|
||||
});
|
||||
|
||||
export const ActivityResponseSchema = z.array(ActivityItemSchema);
|
||||
|
||||
@@ -24,6 +24,7 @@ export const ActiveChatSchema = z.strictObject({
|
||||
roomId: z.string().optional(),
|
||||
messages: z.array(ChatMessageSchema).optional(),
|
||||
originMessage: z.string().optional(),
|
||||
hasReceivedImages: z.boolean().optional(),
|
||||
});
|
||||
export const ChatsResponseSchema = z.array(ActiveChatSchema);
|
||||
export const ConversationsResponseSchema = ChatsResponseSchema;
|
||||
@@ -62,6 +63,7 @@ export const ConversationDetailResponseSchema = ActiveChatSchema.extend({
|
||||
subreddit: z.string().optional(),
|
||||
title: z.string().optional(),
|
||||
url: z.string(),
|
||||
imageUrl: z.string().nullable().optional(),
|
||||
sentAt: z.number(),
|
||||
}).nullable(),
|
||||
syncInProgress: z.strictObject({
|
||||
|
||||
@@ -35,17 +35,20 @@ export const SubredditConfigSchema = z.strictObject({
|
||||
export const ConfigResponseSchema = RuntimeConfigSchema.extend({
|
||||
subreddits: z.array(SubredditConfigSchema),
|
||||
tones: z.array(ToneKeySchema),
|
||||
advanced: z.record(z.string(), z.unknown()).optional(),
|
||||
});
|
||||
export const ConfigUpdateRequestSchema = z.strictObject({
|
||||
rateLimit: RateLimitConfigSchema.partial().optional(),
|
||||
browser: z.strictObject({ dryRun: z.boolean().optional() }).optional(),
|
||||
reddit: RuntimeRedditConfigSchema.partial().optional(),
|
||||
subreddits: z.array(SubredditConfigSchema).min(1).optional(),
|
||||
advanced: z.record(z.string(), z.unknown()).optional(),
|
||||
});
|
||||
export const ConfigUpdateResponseSchema = z.strictObject({
|
||||
success: z.literal(true),
|
||||
config: RuntimeConfigSchema,
|
||||
subreddits: z.array(SubredditConfigSchema),
|
||||
advanced: z.record(z.string(), z.unknown()).optional(),
|
||||
});
|
||||
|
||||
export type RuntimeConfig = z.infer<typeof RuntimeConfigSchema>;
|
||||
|
||||
@@ -13,6 +13,7 @@ export const SentMessageSchema = z.strictObject({
|
||||
chatRoomId: z.string().nullable(),
|
||||
subreddit: z.string().optional(),
|
||||
postTitle: z.string().optional(),
|
||||
postUrl: z.string().optional(),
|
||||
postImageUrl: z.string().optional(),
|
||||
postImageAnalysis: z.string().optional(),
|
||||
});
|
||||
@@ -23,6 +24,7 @@ export const ProcessedPostSchema = z.strictObject({
|
||||
subreddit: z.string(),
|
||||
author: z.string(),
|
||||
title: z.string(),
|
||||
postUrl: z.string().nullable().optional(),
|
||||
imageUrl: z.string().nullable(),
|
||||
imageAnalysis: z.string().nullable(),
|
||||
generatedMessage: z.string().nullable(),
|
||||
|
||||
Reference in new issue
Block a user