| 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]) |
| } |
|
|