From 025629cacfa1674f8e9c40916425d3ed1042eb00 Mon Sep 17 00:00:00 2001 From: adlee-was-taken Date: Fri, 24 Apr 2026 18:57:11 -0400 Subject: [PATCH] feat(ext/sw): generate_passphrase popup-only message --- extension/src/service-worker/router/popup-only.ts | 5 +++++ extension/src/shared/messages.ts | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/extension/src/service-worker/router/popup-only.ts b/extension/src/service-worker/router/popup-only.ts index 7903de9..58aa66c 100644 --- a/extension/src/service-worker/router/popup-only.ts +++ b/extension/src/service-worker/router/popup-only.ts @@ -149,6 +149,11 @@ export async function handle( return { ok: true, data: { password } }; } + case 'generate_passphrase': { + const passphrase = state.wasm.generate_passphrase(JSON.stringify(msg.request)); + return { ok: true, data: { passphrase } }; + } + case 'fill_credentials': return handleFillCredentials(msg, state); diff --git a/extension/src/shared/messages.ts b/extension/src/shared/messages.ts index a79e126..2654bca 100644 --- a/extension/src/shared/messages.ts +++ b/extension/src/shared/messages.ts @@ -20,6 +20,7 @@ export type PopupMessage = | { type: 'save_setup'; config: VaultConfig; imageBase64: string } | { type: 'rate_passphrase'; passphrase: string } | { type: 'generate_password'; request: GeneratorRequest } + | { type: 'generate_passphrase'; request: GeneratorRequest } | { type: 'fill_credentials'; id: ItemId; capturedTabId: number; capturedUrl: string } | { type: 'ack_autofill_origin'; hostname: string } | { type: 'get_settings' } @@ -99,7 +100,8 @@ export interface VaultSettingsResponse extends Extract { export const POPUP_ONLY_TYPES: ReadonlySet = new Set([ 'is_unlocked', 'unlock', 'lock', 'list_items', 'get_item', 'add_item', 'update_item', 'delete_item', 'get_totp', 'sync', 'get_setup_state', - 'save_setup', 'rate_passphrase', 'generate_password', 'fill_credentials', + 'save_setup', 'rate_passphrase', 'generate_password', 'generate_passphrase', + 'fill_credentials', 'ack_autofill_origin', 'get_settings', 'update_settings', 'get_vault_settings', 'update_vault_settings', 'get_blacklist', 'remove_blacklist',