SurfSense/surfsense_web/components/editor/editor-save-context.tsx

25 lines
634 B
TypeScript
Raw Normal View History

2026-02-17 12:47:39 +05:30
"use client";
2026-02-17 12:47:39 +05:30
import { createContext, useContext } from "react";
interface EditorSaveContextValue {
2026-02-17 12:47:39 +05:30
/** Callback to save the current editor content */
onSave?: () => void;
/** Whether there are unsaved changes */
hasUnsavedChanges: boolean;
/** Whether a save operation is in progress */
isSaving: boolean;
/** Whether the user can toggle between editing and viewing modes */
canToggleMode: boolean;
}
export const EditorSaveContext = createContext<EditorSaveContextValue>({
2026-02-17 12:47:39 +05:30
hasUnsavedChanges: false,
isSaving: false,
canToggleMode: false,
});
export function useEditorSave() {
2026-02-17 12:47:39 +05:30
return useContext(EditorSaveContext);
}