Add a draggable crop frame behind APPLY, whole-look undo, and recipe import

This commit is contained in:
2026-09-17 20:14:21 +07:00
parent cc313f2ea9
commit 751beb52c1
6 changed files with 430 additions and 69 deletions
+5 -2
View File
@@ -1,4 +1,4 @@
import type { CropRatio, FrameId, GPSInfo, Recipe } from '../../shared/types';
import type { CropRatio, CropRect, FrameId, GPSInfo, Recipe } from '../../shared/types';
// Studio session: the working photo plus every knob the workspace holds, so a
// reload resumes exactly where the user left off — guest or signed in (the
@@ -15,7 +15,10 @@ export interface StudioState {
recipe?: Recipe;
simId?: string | null;
frameId?: FrameId;
crop?: Exclude<CropRatio, 'free'>;
crop?: CropRatio;
cropRect?: CropRect;
// false = the frame is on screen but not accepted yet (still draggable).
cropApplied?: boolean;
rotation?: 0 | 90 | 180 | 270;
gps?: GPSInfo | null;
gpsManual?: { lat: string; lng: string };