bfd4af2367
- Move TransactionLedger + types from @excalidraw/element into packages/excalidraw/transaction.ts (no external consumers) - Move commitSyntheticIncrement from App passthrough to Store directly, fix didAppStateChange to use Delta.isRightDifferent instead of presence-check, and replace isolated increments queue with direct scheduleMicroAction + flushMicroActions - Remove commitSyntheticHistoryEntry from App, expose store and createTransaction on AppClassProperties instead - Replace O(N) deep-copy snapshot in updateScene with shallow map copy (element refs are safe — ledger ignores index, the only in-place mutated prop, and deep-copies only recorded elements) - Merge ledger + manager tests into single transaction.test.tsx - Update dev-docs to reflect new file structure Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>