diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4858e553..8b799e3c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,3 +24,18 @@ jobs: - name: Test run: bun test + + - name: Install Chat UI Dependencies + working-directory: chat-ui + run: bun install --frozen-lockfile + + - name: Chat UI Typecheck + working-directory: chat-ui + run: bun run typecheck + + - name: Chat UI Test + working-directory: chat-ui + run: bun test + + - name: Chat UI Build + run: bun run build:chat-ui diff --git a/.gitignore b/.gitignore index 1fca3d65..f36b8462 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ node_modules/ dist/ +public/chat/ data/ .env.* .env.local diff --git a/chat-ui/src/components/artifact-tray.tsx b/chat-ui/src/components/artifact-tray.tsx new file mode 100644 index 00000000..82af8b62 --- /dev/null +++ b/chat-ui/src/components/artifact-tray.tsx @@ -0,0 +1,67 @@ +import { formatArtifactSize } from "@/lib/chat-artifacts"; +import type { ChatArtifactView } from "@/lib/chat-types"; +import { cn } from "@/lib/utils"; +import { Copy, ExternalLink, FileText } from "lucide-react"; + +export function ArtifactTray({ artifacts }: { artifacts: ChatArtifactView[] }) { + if (artifacts.length === 0) return null; + + return ( +