feat(app): adding SimpleLogin to an account (ADR 0020, D21, D23)
All checks were successful
CI / check (push) Successful in 32m34s
CI / deploy (push) Has been skipped

halkyon_app reads where the device's person stands with SimpleLogin
(nothing to show, linked, or missing) and shows it in SimpleLoginSection,
which each app places above the password part: Add SimpleLogin, once
added one more way in. GitHub is added to nobody where SimpleLogin is
offered, and Learn's Profile offers an anonymous person SimpleLogin
alone there (D23).

No cut-off day, reminder or banner (D24): with the developer the only
person on learn.halkyon.eu, the cut-off is the operator taking GitHub's
OAuth app out of the deploy's settings once that account has SimpleLogin.
ADR 0020 records it and drops step 5.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-10-24 11:56:26 +02:00
commit fad12b4411
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
5 changed files with 829 additions and 77 deletions

View file

@ -278,5 +278,9 @@
"simpleLoginHandleInvalid": "Ein Handle besteht aus 1 bis 30 Buchstaben (a bis z), Ziffern oder Unterstrichen.",
"simpleLoginHandleReserved": "Dieses Handle ist der Instanz vorbehalten.",
"simpleLoginHandleTaken": "Dieses Handle hat schon jemand anderes.",
"simpleLoginTooManyHandleChecks": "Es wurden zu viele Handles ausprobiert. Versuch es in einer Stunde noch einmal."
"simpleLoginTooManyHandleChecks": "Es wurden zu viele Handles ausprobiert. Versuch es in einer Stunde noch einmal.",
"simpleLoginSectionTitle": "SimpleLogin",
"simpleLoginSignsYouIn": "Meldet dich an",
"simpleLoginAddHint": "Melde dich mit SimpleLogin an, oder mit deinem Proton-Konto.",
"simpleLoginAdded": "SimpleLogin hinzugefügt."
}

View file

@ -604,5 +604,9 @@
"simpleLoginHandleInvalid": "A handle is 1 to 30 letters (a to z), digits or underscores.",
"simpleLoginHandleReserved": "This handle is kept for the instance.",
"simpleLoginHandleTaken": "Someone else has this handle.",
"simpleLoginTooManyHandleChecks": "Too many handles were tried. Try again in an hour."
"simpleLoginTooManyHandleChecks": "Too many handles were tried. Try again in an hour.",
"simpleLoginSectionTitle": "SimpleLogin",
"simpleLoginSignsYouIn": "Signs you in",
"simpleLoginAddHint": "Sign in with SimpleLogin, or with your Proton account.",
"simpleLoginAdded": "SimpleLogin added."
}

View file

@ -1776,6 +1776,30 @@ abstract class HalkyonAppLocalizations {
/// In en, this message translates to:
/// **'Too many handles were tried. Try again in an hour.'**
String get simpleLoginTooManyHandleChecks;
/// No description provided for @simpleLoginSectionTitle.
///
/// In en, this message translates to:
/// **'SimpleLogin'**
String get simpleLoginSectionTitle;
/// No description provided for @simpleLoginSignsYouIn.
///
/// In en, this message translates to:
/// **'Signs you in'**
String get simpleLoginSignsYouIn;
/// No description provided for @simpleLoginAddHint.
///
/// In en, this message translates to:
/// **'Sign in with SimpleLogin, or with your Proton account.'**
String get simpleLoginAddHint;
/// No description provided for @simpleLoginAdded.
///
/// In en, this message translates to:
/// **'SimpleLogin added.'**
String get simpleLoginAdded;
}
class _HalkyonAppLocalizationsDelegate

View file

@ -1051,4 +1051,17 @@ class HalkyonAppLocalizationsDe extends HalkyonAppLocalizations {
@override
String get simpleLoginTooManyHandleChecks =>
'Es wurden zu viele Handles ausprobiert. Versuch es in einer Stunde noch einmal.';
@override
String get simpleLoginSectionTitle => 'SimpleLogin';
@override
String get simpleLoginSignsYouIn => 'Meldet dich an';
@override
String get simpleLoginAddHint =>
'Melde dich mit SimpleLogin an, oder mit deinem Proton-Konto.';
@override
String get simpleLoginAdded => 'SimpleLogin hinzugefügt.';
}

View file

@ -1032,6 +1032,19 @@ class HalkyonAppLocalizationsEn extends HalkyonAppLocalizations {
@override
String get simpleLoginTooManyHandleChecks =>
'Too many handles were tried. Try again in an hour.';
@override
String get simpleLoginSectionTitle => 'SimpleLogin';
@override
String get simpleLoginSignsYouIn => 'Signs you in';
@override
String get simpleLoginAddHint =>
'Sign in with SimpleLogin, or with your Proton account.';
@override
String get simpleLoginAdded => 'SimpleLogin added.';
}
/// The translations for English, as used in the United Kingdom (`en_GB`).