fix: resolve type error, formatting, and import order from PR #321

This commit is contained in:
Siddharth
2026-04-05 11:00:41 -07:00
parent 213637967e
commit ae971bc480
3 changed files with 25 additions and 31 deletions
+22 -25
View File
@@ -33,9 +33,9 @@ import PlaybackControls from "./PlaybackControls";
import {
createProjectData,
createProjectSnapshot,
hasProjectUnsavedChanges,
deriveNextId,
fromFileUrl,
hasProjectUnsavedChanges,
normalizeProjectEditor,
resolveProjectMedia,
toFileUrl,
@@ -258,26 +258,26 @@ export default function VideoEditor() {
return null;
}
return createProjectSnapshot(currentProjectMedia, {
wallpaper,
shadowIntensity,
showBlur,
motionBlurAmount,
borderRadius,
padding,
cropRegion,
zoomRegions,
trimRegions,
speedRegions,
annotationRegions,
aspectRatio,
webcamLayoutPreset,
webcamMaskShape,
webcamPosition,
exportQuality,
exportFormat,
gifFrameRate,
gifLoop,
gifSizePreset,
wallpaper,
shadowIntensity,
showBlur,
motionBlurAmount,
borderRadius,
padding,
cropRegion,
zoomRegions,
trimRegions,
speedRegions,
annotationRegions,
aspectRatio,
webcamLayoutPreset,
webcamMaskShape,
webcamPosition,
exportQuality,
exportFormat,
gifFrameRate,
gifLoop,
gifSizePreset,
});
}, [
currentProjectMedia,
@@ -303,10 +303,7 @@ export default function VideoEditor() {
gifSizePreset,
]);
const hasUnsavedChanges = hasProjectUnsavedChanges(
currentProjectSnapshot,
lastSavedSnapshot,
);
const hasUnsavedChanges = hasProjectUnsavedChanges(currentProjectSnapshot, lastSavedSnapshot);
useEffect(() => {
async function loadInitialData() {
@@ -68,7 +68,6 @@ describe("projectPersistence media compatibility", () => {
});
});
it("creates stable snapshots for identical project state", () => {
const media = {
screenVideoPath: "/tmp/screen.webm",
@@ -408,9 +408,9 @@ export function createProjectData(
export function createProjectSnapshot(
media: ProjectMedia,
editor: ProjectEditorState,
editor: Partial<ProjectEditorState>,
): string {
return JSON.stringify(createProjectData(media, editor));
return JSON.stringify(createProjectData(media, normalizeProjectEditor(editor)));
}
export function hasProjectUnsavedChanges(
@@ -418,8 +418,6 @@ export function hasProjectUnsavedChanges(
baselineSnapshot: string | null,
): boolean {
return Boolean(
currentSnapshot !== null &&
baselineSnapshot !== null &&
currentSnapshot !== baselineSnapshot,
currentSnapshot !== null && baselineSnapshot !== null && currentSnapshot !== baselineSnapshot,
);
}