Fix vault dialog autofill: prevent browser password manager from overriding dark theme colors
This commit is contained in:
@@ -364,26 +364,26 @@ function VaultMain() {
|
||||
<Dialog open={newEntryOpen} onOpenChange={(open) => { setNewEntryOpen(open); if (!open) setEditEntryId(null) }}>
|
||||
<DialogContent>
|
||||
<DialogHeader><DialogTitle>{editEntryId ? 'Edit Entry' : 'New Entry'}</DialogTitle></DialogHeader>
|
||||
<form onSubmit={handleEntrySubmit} className="space-y-3">
|
||||
<form onSubmit={handleEntrySubmit} className="space-y-3" autoComplete="off">
|
||||
<div className="space-y-1">
|
||||
<Label>Name *</Label>
|
||||
<Input value={entryForm.name} onChange={(e) => setEntryForm((f) => ({ ...f, name: e.target.value }))} placeholder="e.g. Store WiFi" autoFocus />
|
||||
<Input value={entryForm.name} onChange={(e) => setEntryForm((f) => ({ ...f, name: e.target.value }))} placeholder="e.g. Store WiFi" autoFocus autoComplete="off" />
|
||||
</div>
|
||||
<div className="space-y-1">
|
||||
<Label>Username</Label>
|
||||
<Input value={entryForm.username} onChange={(e) => setEntryForm((f) => ({ ...f, username: e.target.value }))} placeholder="Optional" />
|
||||
<Input value={entryForm.username} onChange={(e) => setEntryForm((f) => ({ ...f, username: e.target.value }))} placeholder="Optional" autoComplete="off" />
|
||||
</div>
|
||||
<div className="space-y-1">
|
||||
<Label>URL</Label>
|
||||
<Input value={entryForm.url} onChange={(e) => setEntryForm((f) => ({ ...f, url: e.target.value }))} placeholder="Optional" />
|
||||
<Input value={entryForm.url} onChange={(e) => setEntryForm((f) => ({ ...f, url: e.target.value }))} placeholder="Optional" autoComplete="off" />
|
||||
</div>
|
||||
<div className="space-y-1">
|
||||
<Label>Notes</Label>
|
||||
<Input value={entryForm.notes} onChange={(e) => setEntryForm((f) => ({ ...f, notes: e.target.value }))} placeholder="Optional" />
|
||||
<Input value={entryForm.notes} onChange={(e) => setEntryForm((f) => ({ ...f, notes: e.target.value }))} placeholder="Optional" autoComplete="off" />
|
||||
</div>
|
||||
<div className="space-y-1">
|
||||
<Label>{editEntryId ? 'New Secret (leave blank to keep current)' : 'Secret'}</Label>
|
||||
<Input type="password" value={entryForm.secret} onChange={(e) => setEntryForm((f) => ({ ...f, secret: e.target.value }))} placeholder="Password or secret value" />
|
||||
<Input type="password" value={entryForm.secret} onChange={(e) => setEntryForm((f) => ({ ...f, secret: e.target.value }))} placeholder="Password or secret value" autoComplete="new-password" />
|
||||
</div>
|
||||
<Button type="submit" disabled={!entryForm.name.trim() || createEntryMutation.isPending || updateEntryMutation.isPending}>
|
||||
{(createEntryMutation.isPending || updateEntryMutation.isPending) ? 'Saving...' : editEntryId ? 'Update' : 'Create'}
|
||||
|
||||
Reference in New Issue
Block a user