Something went wrong. Try again.
[mirror] A local-first desktop markdown writer with grammar checking, at proto integration, and more github.com/stormlightlabs/writer/releases
Something went wrong. Try again.
12345678910111213141516171819202122import type { EditorMsg } from "$hooks/useEditor";import { useCallback } from "react";
type UseEditorBridgeArgs = { dispatchEditor: (msg: EditorMsg) => void; syncPreviewLine: (line: number) => void };
export function useEditorBridge({ dispatchEditor, syncPreviewLine }: UseEditorBridgeArgs) { const handleEditorChange = useCallback((text: string) => { dispatchEditor({ type: "EditorChanged", text }); }, [dispatchEditor]);
const handleCursorMove = useCallback((line: number, column: number) => { dispatchEditor({ type: "CursorMoved", line, column }); syncPreviewLine(line); }, [dispatchEditor, syncPreviewLine]);
const handleSelectionChange = useCallback((from: number, to: number | null) => { dispatchEditor({ type: "SelectionChanged", from, to }); }, [dispatchEditor]);
return { handleEditorChange, handleCursorMove, handleSelectionChange };}