feat: web app support for workspaces

This commit is contained in:
Carlos Florêncio
2026-01-11 16:28:25 +00:00
parent 602ce61bc5
commit af6e482c4c
32 changed files with 458 additions and 348 deletions
@@ -1,6 +1,6 @@
'use client';
import { memo, useEffect, useMemo, useState } from 'react';
import { memo, useMemo, useState } from 'react';
import { DiffModeEnum, DiffView } from '@git-diff-view/react';
import { IconArrowBackUp, IconCopy, IconLayoutColumns, IconLayoutRows } from '@tabler/icons-react';
import { useTheme } from 'next-themes';
@@ -21,16 +21,11 @@ const TaskChangesPanel = memo(function TaskChangesPanel({
onClearSelected,
}: TaskChangesPanelProps) {
const defaultDiffMode: 'unified' | 'split' = 'unified';
const [diffViewMode, setDiffViewMode] = useState<'unified' | 'split'>(defaultDiffMode);
const [diffViewMode, setDiffViewMode] = useState<'unified' | 'split'>(() =>
getLocalStorage('task-diff-view-mode', defaultDiffMode)
);
const { resolvedTheme } = useTheme();
useEffect(() => {
const storedDiffMode = getLocalStorage('task-diff-view-mode', defaultDiffMode);
if (storedDiffMode !== defaultDiffMode) {
setDiffViewMode(storedDiffMode);
}
}, []);
const diffTargets = useMemo(
() => (selectedDiffPath ? [selectedDiffPath] : CHANGED_FILES.map((file) => file.path)),
[selectedDiffPath]