feat(ext/popup): Identity view + form (profile-card signature block)

This commit is contained in:
adlee-was-taken
2026-04-23 22:29:04 -04:00
parent 99d689b9b0
commit 113b0b690a
4 changed files with 281 additions and 2 deletions

View File

@@ -5,10 +5,12 @@ import { navigate, getState } from '../popup';
import type { Item, ItemType } from '../../shared/types';
import * as login from './types/login';
import * as secureNote from './types/secure-note';
import * as identity from './types/identity';
export function renderItemForm(app: HTMLElement, mode: 'add' | 'edit'): void {
login.teardown(); // detail-view's ticker/listener don't leak into form
secureNote.teardown();
identity.teardown();
const state = getState();
const existing = mode === 'edit' ? state.selectedItem : null;
const type: ItemType = existing?.type ?? state.newType ?? 'login';
@@ -16,7 +18,7 @@ export function renderItemForm(app: HTMLElement, mode: 'add' | 'edit'): void {
switch (type) {
case 'login': return login.renderForm(app, mode, existing);
case 'secure_note': return secureNote.renderForm(app, mode, existing);
case 'identity':
case 'identity': return identity.renderForm(app, mode, existing);
case 'card':
case 'key':
case 'totp':