🎯 Use case
This file lives under “hooks/”, which covers reusable UI or integration hooks. On the API surface it exposes useFileHistorySnapshotInit — mainly functions, hooks, or classes. Dependencies touch React UI. It composes internal code from utils (relative imports).
Generated from folder role, exports, dependency roots, and inline comments — not hand-reviewed for every path.
🧠 Inline summary
import { useEffect, useRef } from 'react' import { type FileHistorySnapshot, type FileHistoryState, fileHistoryEnabled,
📤 Exports (heuristic)
useFileHistorySnapshotInit
📚 External import roots
Package roots from from "…" (relative paths omitted).
react
🖥️ Source preview
import { useEffect, useRef } from 'react'
import {
type FileHistorySnapshot,
type FileHistoryState,
fileHistoryEnabled,
fileHistoryRestoreStateFromLog,
} from '../utils/fileHistory.js'
export function useFileHistorySnapshotInit(
initialFileHistorySnapshots: FileHistorySnapshot[] | undefined,
fileHistoryState: FileHistoryState,
onUpdateState: (newState: FileHistoryState) => void,
): void {
const initialized = useRef(false)
useEffect(() => {
if (!fileHistoryEnabled() || initialized.current) {
return
}
initialized.current = true
if (initialFileHistorySnapshots) {
fileHistoryRestoreStateFromLog(initialFileHistorySnapshots, onUpdateState)
}
}, [fileHistoryState, initialFileHistorySnapshots, onUpdateState])
}