feat: add auto-select reply identity feature with settings and localization

This commit is contained in:
Linus Rath
2026-03-27 23:58:42 +01:00
parent 92ff5fe449
commit ddb636ed73
17 changed files with 201 additions and 0 deletions
@@ -29,4 +29,14 @@ describe('settings-store attachment action', () => {
expect(exported.calendarInvitationParsingEnabled).toBe(false);
});
it('includes reply identity auto-selection in exported settings', () => {
useSettingsStore.getState().updateSetting('autoSelectReplyIdentity', true);
const exported = JSON.parse(useSettingsStore.getState().exportSettings()) as {
autoSelectReplyIdentity?: boolean;
};
expect(exported.autoSelectReplyIdentity).toBe(true);
});
});
+3
View File
@@ -119,6 +119,7 @@ interface SettingsState {
autoSaveDraftInterval: number; // milliseconds
sendConfirmation: boolean;
defaultReplyMode: ReplyMode;
autoSelectReplyIdentity: boolean;
plainTextMode: boolean; // Send plain text only (no rich text editor)
// Privacy & Security
@@ -238,6 +239,7 @@ const DEFAULT_SETTINGS = {
autoSaveDraftInterval: 60000, // 1 minute
sendConfirmation: false,
defaultReplyMode: 'reply' as ReplyMode,
autoSelectReplyIdentity: false,
plainTextMode: false,
// Privacy & Security
@@ -346,6 +348,7 @@ export const useSettingsStore = create<SettingsState>()(
autoSaveDraftInterval: state.autoSaveDraftInterval,
sendConfirmation: state.sendConfirmation,
defaultReplyMode: state.defaultReplyMode,
autoSelectReplyIdentity: state.autoSelectReplyIdentity,
plainTextMode: state.plainTextMode,
sessionTimeout: state.sessionTimeout,
emailNotificationsEnabled: state.emailNotificationsEnabled,