perf(history): batch transform drag undo

This commit is contained in:
syntaxbullet
2026-07-04 15:49:13 +02:00
parent a030f2065a
commit 1acfcbe4a5
5 changed files with 159 additions and 8 deletions

View File

@@ -24,6 +24,7 @@ export type TransformSetBoundsPayload = {
export const transformBeginCommand: Command<TransformBeginPayload> = {
id: commandIds.transformBegin,
name: "Begin transform",
history: { mode: "deferred", phase: "begin" },
execute({ state }, payload) {
return {
...state,
@@ -43,6 +44,7 @@ export const transformBeginCommand: Command<TransformBeginPayload> = {
export const transformUpdateCommand: Command<TransformUpdatePayload> = {
id: commandIds.transformUpdate,
name: "Update transform",
history: { mode: "deferred", phase: "update" },
execute({ state }, payload) {
const session = state.editor.transformSession;
if (!session) return state;
@@ -78,6 +80,7 @@ export const transformSetBoundsCommand: Command<TransformSetBoundsPayload> = {
export const transformEndCommand: Command = {
id: commandIds.transformEnd,
name: "End transform",
history: { mode: "deferred", phase: "commit" },
execute({ state }) {
if (!state.editor.transformSession) return state;