import { useLocal } from "@/context/local" import { useSession } from "@/context/session" import { FileIcon } from "@/ui" import { getDirectory, getFilename } from "@/utils" import { Accordion, Button, Diff, DiffChanges, Icon, IconButton, Tooltip } from "@opencode-ai/ui" import { For, Match, Show, Switch } from "solid-js" import { StickyAccordionHeader } from "./sticky-accordion-header" import { createStore } from "solid-js/store" export const SessionReview = (props: { split?: boolean; class?: string; hideExpand?: boolean }) => { const local = useLocal() const session = useSession() const [store, setStore] = createStore({ open: session.diffs().map((d) => d.file), }) const handleChange = (open: string[]) => { setStore("open", open) } const handleExpandOrCollapseAll = () => { if (store.open.length > 0) { setStore("open", []) } else { setStore( "open", session.diffs().map((d) => d.file), ) } } return (
Session changes
{ local.layout.review.tab() session.layout.setActiveTab("review") }} />
{(diff) => (
{getDirectory(diff.file)}‎ {getFilename(diff.file)}
)}
) }