From 0c82db88da1a58a9c363769471aca9e85e9424a9 Mon Sep 17 00:00:00 2001 From: Jakob Wennberg Date: Thu, 3 Sep 2026 18:42:20 +0200 Subject: [PATCH] fix(settings): say on the Danger zone rows that a typed confirmation follows (#2214) (#2245) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(settings): say on the Danger zone rows that a typed confirmation follows (#2214) A Discord user reported that the Danger zone button looked like it could be triggered by a stray swipe on a phone, and did not dare press it. Every action there already opens a dialog that requires the company name (or the account e-mail) typed in before anything happens, but nothing on the row said so, and the only way to learn it was to press the link. Both company rows (Starta om migrering, Radera företag) and the account deletion row now carry one line under the note: "Inget händer direkt: du bekräftar i nästa steg genom att skriva företagets namn" (e-mail for the account). Keys added to sv and en. Closes #2214 Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01VnConrmMCxJRQ5kfiPPWyy * chore: carry the DECISIONS.md line for this PR in #2247 instead (append-only log conflicts on every merge) --------- Co-authored-by: Jakob Wennberg <311770904+jakobwennberg-oss@users.noreply.github.com> Co-authored-by: Claude Fable 5.1 --- components/settings/AccountDangerZone.tsx | 7 ++++++- components/settings/CompanyDangerZone.tsx | 14 ++++++++++++-- messages/en.json | 2 ++ messages/sv.json | 2 ++ 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/components/settings/AccountDangerZone.tsx b/components/settings/AccountDangerZone.tsx index 3da8c19e..851bf14e 100644 --- a/components/settings/AccountDangerZone.tsx +++ b/components/settings/AccountDangerZone.tsx @@ -181,7 +181,12 @@ export function AccountDangerZone() { // lives behind the "?": the visible row stays one quiet line. help={} > - {tRetention('account_title')} +
+ {tRetention('account_title')} + {/* Says up front that a typed confirmation follows (issue #2214, + same as CompanyDangerZone). */} + {t('confirm_hint')} +
{/* Live region always mounted so the failure is announced when it appears, not merely inserted. */}
diff --git a/components/settings/CompanyDangerZone.tsx b/components/settings/CompanyDangerZone.tsx index f7b03832..b2670215 100644 --- a/components/settings/CompanyDangerZone.tsx +++ b/components/settings/CompanyDangerZone.tsx @@ -96,7 +96,14 @@ export function CompanyDangerZone() { - {t('reset_row_note')} + {/* Both destructive rows say up front that a typed confirmation + follows. A reader who does not dare press the link cannot find + that out any other way, and on a phone the link sits where a + stray tap while scrolling lands (issue #2214). */} +
+ {t('reset_row_note')} + {t('danger_confirm_hint')} +