summaryrefslogtreecommitdiff
path: root/apps/web
diff options
context:
space:
mode:
Diffstat (limited to 'apps/web')
-rw-r--r--apps/web/src/stores/keybindings/migrations/index.ts4
-rw-r--r--apps/web/src/stores/keybindings/migrations/v6-to-v7.ts19
2 files changed, 22 insertions, 1 deletions
diff --git a/apps/web/src/stores/keybindings/migrations/index.ts b/apps/web/src/stores/keybindings/migrations/index.ts
index 330c7df7..71fd81a6 100644
--- a/apps/web/src/stores/keybindings/migrations/index.ts
+++ b/apps/web/src/stores/keybindings/migrations/index.ts
@@ -2,6 +2,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";
+import { v6ToV7 } from "./v6-to-v7";
type MigrationFn = ({ state }: { state: unknown }) => unknown;
@@ -10,9 +11,10 @@ const migrations: Record<number, MigrationFn> = {
3: v3ToV4,
4: v4ToV5,
5: v5ToV6,
+ 6: v6ToV7,
};
-export const CURRENT_VERSION = 6;
+export const CURRENT_VERSION = 7;
export function runMigrations({
state,
diff --git a/apps/web/src/stores/keybindings/migrations/v6-to-v7.ts b/apps/web/src/stores/keybindings/migrations/v6-to-v7.ts
new file mode 100644
index 00000000..8c5fd96c
--- /dev/null
+++ b/apps/web/src/stores/keybindings/migrations/v6-to-v7.ts
@@ -0,0 +1,19 @@
+import type { KeybindingConfig } from "@/lib/actions/keybinding";
+
+interface V6State {
+ keybindings: KeybindingConfig;
+ isCustomized: boolean;
+}
+
+export function v6ToV7({ state }: { state: unknown }): unknown {
+ const v6 = state as V6State;
+ const keybindings = { ...v6.keybindings };
+
+ for (const key of Object.keys(keybindings) as Array<keyof KeybindingConfig>) {
+ if (keybindings[key] === ("split-element" as never)) {
+ keybindings[key] = "split";
+ }
+ }
+
+ return { ...v6, keybindings };
+}