diff options
| author | Maze Winther <mazewinther@gmail.com> | 2026-03-25 16:47:22 +0100 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2026-03-29 15:48:22 +0200 |
| commit | 8db3bead13441a5882d8689dfc6a9f09c82375d9 (patch) | |
| tree | e9d0cafa93904ffcbec3188c37961bcc16c6422d /apps/web/src/stores/keybindings | |
| parent | 39ea298a9ccba3104c549c0ca079c231981811f5 (diff) | |
| download | opencut-8db3bead13441a5882d8689dfc6a9f09c82375d9.tar.gz | |
feat: masks, properties refactor, shaders, storage migrations, and more
Diffstat (limited to 'apps/web/src/stores/keybindings')
5 files changed, 24 insertions, 5 deletions
diff --git a/apps/web/src/stores/keybindings/migrations/index.ts b/apps/web/src/stores/keybindings/migrations/index.ts index e6641f41..330c7df7 100644 --- a/apps/web/src/stores/keybindings/migrations/index.ts +++ b/apps/web/src/stores/keybindings/migrations/index.ts @@ -1,6 +1,7 @@ import { v2ToV3 } from "./v2-to-v3"; import { v3ToV4 } from "./v3-to-v4"; import { v4ToV5 } from "./v4-to-v5"; +import { v5ToV6 } from "./v5-to-v6"; type MigrationFn = ({ state }: { state: unknown }) => unknown; @@ -8,9 +9,10 @@ const migrations: Record<number, MigrationFn> = { 2: v2ToV3, 3: v3ToV4, 4: v4ToV5, + 5: v5ToV6, }; -export const CURRENT_VERSION = 5; +export const CURRENT_VERSION = 6; export function runMigrations({ state, diff --git a/apps/web/src/stores/keybindings/migrations/v2-to-v3.ts b/apps/web/src/stores/keybindings/migrations/v2-to-v3.ts index 1517b52b..da0df588 100644 --- a/apps/web/src/stores/keybindings/migrations/v2-to-v3.ts +++ b/apps/web/src/stores/keybindings/migrations/v2-to-v3.ts @@ -1,4 +1,4 @@ -import type { KeybindingConfig, ShortcutKey } from "@/types/keybinding"; +import type { KeybindingConfig, ShortcutKey } from "@/lib/actions/keybinding"; import type { TActionWithOptionalArgs } from "@/lib/actions"; interface V2State { diff --git a/apps/web/src/stores/keybindings/migrations/v3-to-v4.ts b/apps/web/src/stores/keybindings/migrations/v3-to-v4.ts index b53e082f..be3b4a64 100644 --- a/apps/web/src/stores/keybindings/migrations/v3-to-v4.ts +++ b/apps/web/src/stores/keybindings/migrations/v3-to-v4.ts @@ -1,6 +1,6 @@ import type { TActionWithOptionalArgs } from "@/lib/actions"; -import type { ShortcutKey } from "@/types/keybinding"; -import type { KeybindingConfig } from "@/types/keybinding"; +import type { ShortcutKey } from "@/lib/actions/keybinding"; +import type { KeybindingConfig } from "@/lib/actions/keybinding"; interface V3State { keybindings: KeybindingConfig; diff --git a/apps/web/src/stores/keybindings/migrations/v4-to-v5.ts b/apps/web/src/stores/keybindings/migrations/v4-to-v5.ts index 2ab39247..4e23e0f4 100644 --- a/apps/web/src/stores/keybindings/migrations/v4-to-v5.ts +++ b/apps/web/src/stores/keybindings/migrations/v4-to-v5.ts @@ -1,4 +1,4 @@ -import type { KeybindingConfig } from "@/types/keybinding"; +import type { KeybindingConfig } from "@/lib/actions/keybinding"; interface V4State { keybindings: KeybindingConfig; diff --git a/apps/web/src/stores/keybindings/migrations/v5-to-v6.ts b/apps/web/src/stores/keybindings/migrations/v5-to-v6.ts new file mode 100644 index 00000000..3545815d --- /dev/null +++ b/apps/web/src/stores/keybindings/migrations/v5-to-v6.ts @@ -0,0 +1,17 @@ +import type { KeybindingConfig } from "@/lib/actions/keybinding"; + +interface V5State { + keybindings: KeybindingConfig; + isCustomized: boolean; +} + +export function v5ToV6({ state }: { state: unknown }): unknown { + const v5 = state as V5State; + const keybindings = { ...v5.keybindings }; + + if (keybindings.escape === "deselect-all") { + keybindings.escape = "cancel-interaction"; + } + + return { ...v5, keybindings }; +} |
