Skip to content

Commit cab2a65

Browse files
committed
Update settingsStore.ts
1 parent 7bd93b8 commit cab2a65

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

apps/array/src/renderer/stores/settingsStore.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,21 @@ import { create } from "zustand";
22
import { trpcVanilla } from "../trpc";
33

44
export type TerminalLayoutMode = "split" | "tabbed";
5+
export type SendMessagesWith = "enter" | "cmd+enter";
56

67
interface SettingsState {
78
terminalLayoutMode: TerminalLayoutMode;
9+
sendMessagesWith: SendMessagesWith;
810
isLoading: boolean;
911
loadTerminalLayout: () => Promise<void>;
1012
setTerminalLayout: (mode: TerminalLayoutMode) => Promise<void>;
13+
loadSendMessagesWith: () => Promise<void>;
14+
setSendMessagesWith: (mode: SendMessagesWith) => Promise<void>;
1115
}
1216

1317
export const useSettingsStore = create<SettingsState>()((set) => ({
1418
terminalLayoutMode: "split",
19+
sendMessagesWith: "enter",
1520
isLoading: true,
1621

1722
loadTerminalLayout: async () => {
@@ -34,4 +39,27 @@ export const useSettingsStore = create<SettingsState>()((set) => ({
3439
set({ terminalLayoutMode: mode });
3540
} catch (_error) {}
3641
},
42+
43+
loadSendMessagesWith: async () => {
44+
try {
45+
const mode = await trpcVanilla.secureStore.getItem.query({
46+
key: "sendMessagesWith",
47+
});
48+
if (mode === "enter" || mode === "cmd+enter") {
49+
set({ sendMessagesWith: mode });
50+
}
51+
} catch (_error) {
52+
// Keep default value
53+
}
54+
},
55+
56+
setSendMessagesWith: async (mode: SendMessagesWith) => {
57+
try {
58+
await trpcVanilla.secureStore.setItem.query({
59+
key: "sendMessagesWith",
60+
value: mode,
61+
});
62+
set({ sendMessagesWith: mode });
63+
} catch (_error) {}
64+
},
3765
}));

0 commit comments

Comments
 (0)