Fix message types

This commit is contained in:
Will Chen
2025-04-18 12:04:37 -07:00
parent ebf8743778
commit db7ac39c97
7 changed files with 33 additions and 7 deletions

View File

@@ -1,4 +1,4 @@
import type { Message } from "ai";
import type { Message } from "@/ipc/ipc_types";
import { atom } from "jotai";
import type { ChatSummary } from "@/lib/schemas";

View File

@@ -1,5 +1,5 @@
import { memo } from "react";
import type { Message } from "ai";
import type { Message } from "@/ipc/ipc_types";
import { DyadMarkdownParser } from "./DyadMarkdownParser";
import { motion } from "framer-motion";
import { useStreamChat } from "@/hooks/useStreamChat";
@@ -66,6 +66,19 @@ const ChatMessage = ({ message }: ChatMessageProps) => {
<DyadMarkdownParser content={message.content} />
</div>
)}
{message.approvalState && (
<div className="mt-2 text-xs">
{message.approvalState === "approved" ? (
<div className="bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200 p-1 rounded">
Approved
</div>
) : message.approvalState === "rejected" ? (
<div className="bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200 p-1 rounded">
Rejected
</div>
) : null}
</div>
)}
</div>
</div>
);

View File

@@ -1,5 +1,5 @@
import type React from "react";
import type { Message } from "ai";
import type { Message } from "@/ipc/ipc_types";
import { forwardRef } from "react";
import ChatMessage from "./ChatMessage";
import { SetupBanner } from "../SetupBanner";

View File

@@ -1,5 +1,5 @@
import { useCallback, useState } from "react";
import type { Message } from "ai";
import type { Message } from "@/ipc/ipc_types";
import { useAtom, useSetAtom } from "jotai";
import {
chatErrorAtom,

View File

@@ -50,9 +50,17 @@ const getProposalHandler = async (
columns: {
id: true, // Fetch the ID
content: true, // Fetch the content to parse
approvalState: true,
},
});
if (
latestAssistantMessage?.approvalState === "approved" ||
latestAssistantMessage?.approvalState === "rejected"
) {
return null;
}
if (latestAssistantMessage?.content && latestAssistantMessage.id) {
const messageId = latestAssistantMessage.id; // Get the message ID
console.log(

View File

@@ -1,4 +1,3 @@
import type { Message } from "ai";
import type { IpcRenderer } from "electron";
import {
type ChatSummary,
@@ -15,6 +14,7 @@ import type {
CreateAppResult,
ListAppsResponse,
NodeSystemInfo,
Message,
Version,
} from "./ipc_types";
import type { Proposal } from "@/lib/schemas";

View File

@@ -1,5 +1,3 @@
import type { Message } from "ai";
export interface AppOutput {
type: "stdout" | "stderr" | "info" | "client-error";
message: string;
@@ -37,6 +35,13 @@ export interface CreateAppResult {
chatId: number;
}
export interface Message {
id: string;
role: "user" | "assistant";
content: string;
approvalState?: "approved" | "rejected";
}
export interface Chat {
id: number;
title: string;