mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-12 06:06:10 +00:00
fix(ui): tell Bitwarden to skip config and secret fields
The Input and Textarea primitives already opted config and secret fields out of 1Password and LastPass autofill (data-1p-ignore / data-lpignore) whenever autocomplete was off, but Bitwarden had no opt-out hint anywhere, so it kept offering to fill and save API keys, tokens and integration URLs. Emit data-bwignore alongside the existing hints, which covers every field flowing through the primitives. Pin explicit autocomplete on the change-password dialog so genuine credentials still autofill, and add the ignore hints to the export passphrase and the few new-password admin config fields that opt in directly.
This commit is contained in:
1 parent
8ce98a802f
commit
fa2e2c6ba2
9 files changed
+31
-3
No files matched your search
@@ -9,6 +9,7 @@ describe("<Input>", () => {
|
||||
expect(html).toContain('autoComplete="off"');
|
||||
expect(html).toContain('data-lpignore="true"');
|
||||
expect(html).toContain('data-1p-ignore="true"');
|
||||
expect(html).toContain('data-bwignore="true"');
|
||||
});
|
||||
|
||||
it("respects an explicit autoComplete value and drops the ignore attrs", () => {
|
||||
@@ -18,6 +19,7 @@ describe("<Input>", () => {
|
||||
expect(html).toContain('autoComplete="email"');
|
||||
expect(html).not.toContain('data-lpignore="true"');
|
||||
expect(html).not.toContain('data-1p-ignore="true"');
|
||||
expect(html).not.toContain('data-bwignore="true"');
|
||||
});
|
||||
|
||||
it("explicit autoComplete=username keeps password manager active for login flows", () => {
|
||||
@@ -27,6 +29,7 @@ describe("<Input>", () => {
|
||||
expect(html).toContain('autoComplete="username"');
|
||||
expect(html).not.toContain("lpignore");
|
||||
expect(html).not.toContain("1p-ignore");
|
||||
expect(html).not.toContain("bwignore");
|
||||
});
|
||||
|
||||
it("derives inputMode=decimal from type=number", () => {
|
||||
|
||||
@@ -21,6 +21,7 @@ describe("<Textarea>", () => {
|
||||
expect(html).toContain('autoComplete="off"');
|
||||
expect(html).toContain('data-lpignore="true"');
|
||||
expect(html).toContain('data-1p-ignore="true"');
|
||||
expect(html).toContain('data-bwignore="true"');
|
||||
});
|
||||
|
||||
it("defaults autoCapitalize to sentences for prose-like free-text input", () => {
|
||||
@@ -51,6 +52,7 @@ describe("<Textarea>", () => {
|
||||
expect(html).toContain('autoComplete="on"');
|
||||
expect(html).not.toContain('data-lpignore="true"');
|
||||
expect(html).not.toContain('data-1p-ignore="true"');
|
||||
expect(html).not.toContain('data-bwignore="true"');
|
||||
});
|
||||
|
||||
it("merges caller className via cn() without dropping defaults", () => {
|
||||
|
||||
Reference in new issue
Block a user