revisions

This commit is contained in:
2026-02-26 04:10:30 +10:00
parent ee048084b0
commit f9333626aa
14 changed files with 534 additions and 37 deletions

View File

@@ -1,5 +1,5 @@
import { create } from 'zustand'
import type { FileNode, ChatMessage, TextAnnotation, AnalysisMode } from '../types/editor'
import type { FileNode, ChatMessage, TextAnnotation, AnalysisMode, RevisionMeta } from '../types/editor'
interface AnnotationFileState {
mode: AnalysisMode
@@ -60,6 +60,12 @@ interface EditorState {
theme: 'dark' | 'light'
toggleTheme: () => void
// Revision panel
revisionPanelOpen: boolean
toggleRevisionPanel: () => void
revisions: RevisionMeta[]
setRevisions: (revisions: RevisionMeta[]) => void
// Session persistence
loadSession: () => Promise<void>
}
@@ -286,6 +292,11 @@ export const useEditorStore = create<EditorState>((set, get) => ({
projectWordCount: 0,
setProjectWordCount: (projectWordCount) => set({ projectWordCount }),
revisionPanelOpen: false,
toggleRevisionPanel: () => set((s) => ({ revisionPanelOpen: !s.revisionPanelOpen })),
revisions: [],
setRevisions: (revisions) => set({ revisions }),
fontSize: Number(localStorage.getItem('editorFontSize')) || 15,
setFontSize: (size) => {
const clamped = Math.max(11, Math.min(24, size))