feat(app): one Profile for every app, the person's own tab first, then each app's (ADR 0014)
The public profile was already one per person for every service of an instance (the register, ADR 0016); its app side was Learn's alone. It moves into halkyon_app: the model, the repository on the module's endpoints, the form, the avatar drawn on the device and the sheet with someone's profile. They take the Public prefix (PublicProfileRepository, BasePublicProfileGateway), as Train's own ProfileRepository holds the body's figures. AppDependencies gains profiles and files, the picker the avatar is chosen with, which moves out of Learn too. HalkyonProfile is every app's Profile screen: the person's own tab first, the same in every app (the account and the ways they sign in, the app's own cards, then the public profile), then the app's own tabs, folding into the title. Learn adds its inbox and Statistics. Train adds Progress, Days and, where nothing records, Plans, and so opens on the person's tab, no longer on Progress. Todo, which has no Profile tab, opens it from a row at the top of Browse, where Todoist keeps the account. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
a0bb75f1ad
commit
b7b0b937fe
5 changed files with 1668 additions and 1293 deletions
|
|
@ -446,5 +446,73 @@
|
|||
"assistantProblemNotAllowed": "Das können nur die, für die er freigegeben ist.",
|
||||
"assistantProblemFailed": "Das hat nicht geklappt. Versuch es noch einmal.",
|
||||
"whatsNewTitle": "Neuigkeiten",
|
||||
"whatsNewVersion": "Version {version}"
|
||||
"whatsNewVersion": "Version {version}",
|
||||
"profileIdentified": "Dein Fortschritt wird in deinem Konto gespeichert.",
|
||||
"profileProblemAvatarInvalid": "Dieses Bild lässt sich nicht verwenden: Wähle ein PNG-, JPEG-, WebP- oder GIF-Bild.",
|
||||
"profileProblemBioTooLong": "Höchstens 500 Zeichen.",
|
||||
"profileProblemDisplayNameTooLong": "Höchstens 30 Zeichen.",
|
||||
"profileProblemHandleInvalid": "Ein Handle besteht aus 1 bis 30 Buchstaben (a bis z), Ziffern oder Unterstrichen.",
|
||||
"profileProblemHandleReserved": "Dieses Handle ist der Instanz vorbehalten.",
|
||||
"profileProblemHandleTaken": "Dieses Handle hat schon jemand anderes.",
|
||||
"profileProblemLinkInvalid": "Links beginnen mit https:// oder http://.",
|
||||
"profileProblemPublished": "Du hast veröffentlicht: Dein Handle kann sich nicht mehr ändern und dein Profil nicht mehr gehen.",
|
||||
"profileProblemTooManyHandleChecks": "Es wurden zu viele Handles ausprobiert. Versuche es in einer Stunde noch einmal.",
|
||||
"profileProblemTooManyLinkChecks": "Die Links wurden zu oft geprüft. Versuche es in einer Stunde noch einmal.",
|
||||
"profileProblemTooManyLinks": "Höchstens 4 Links.",
|
||||
"profileSheetNotFound": "Niemand auf dieser Instanz hat diesen Handle.",
|
||||
"profileSheetTitle": "Profil",
|
||||
"profileSheetUnreachable": "Das Profil konnte nicht geladen werden. Prüfe deine Verbindung.",
|
||||
"profileSignInWays": "Anmeldewege",
|
||||
"profileTabProfile": "Profil",
|
||||
"profileTitle": "Profil",
|
||||
"profileWayEmail": "E-Mail-Adresse",
|
||||
"profileWayLinked": "Meldet dich an",
|
||||
"publicProfileAddLink": "Link hinzufügen",
|
||||
"publicProfileAddress": "Andere finden dich als @{address}",
|
||||
"publicProfileAddressPrivate": "Privat, bis du dein Profil ausfüllst oder etwas veröffentlichst; dann finden dich andere als @{address}.",
|
||||
"publicProfileBio": "Über dich",
|
||||
"publicProfileCheckLinks": "Links prüfen",
|
||||
"publicProfileChoosePicture": "Bild wählen",
|
||||
"publicProfileDisplayName": "Anzeigename",
|
||||
"publicProfileDisplayNameHint": "Der Name neben deinem Handle",
|
||||
"publicProfileFailed": "Die Instanz ist nicht erreichbar. Versuche es erneut.",
|
||||
"publicProfileHandle": "Handle",
|
||||
"publicProfileHandleChangeTitle": "Ändere dein Handle",
|
||||
"publicProfileHandleChecking": "Wird geprüft …",
|
||||
"publicProfileHandleChoose": "Wähle ein Handle",
|
||||
"publicProfileHandleChooseTitle": "Wähle dein Handle",
|
||||
"publicProfileHandleConfirmChange": "Ändern",
|
||||
"publicProfileHandleConfirmChoose": "Wählen",
|
||||
"publicProfileHandleDialogText": "Andere finden dich unter deinem Handle. Du kannst es ändern, bis du zum ersten Mal ein Lernset veröffentlichst.",
|
||||
"publicProfileHandleFirst": "Wähle zuerst dein Handle: Damit wird dein Profil angelegt, und ab dann speichert es sich beim Schreiben.",
|
||||
"publicProfileHandleFixed": "Fest, seit du veröffentlicht hast: Andere verweisen darauf.",
|
||||
"publicProfileHandleFree": "@{handle} ist frei",
|
||||
"publicProfileHandleHint": "Buchstaben, Ziffern und Unterstriche, bis zu 30",
|
||||
"publicProfileHandleYours": "Das ist dein Handle",
|
||||
"publicProfileIntro": "Wie andere dich sehen, sobald du veröffentlichst: das Handle, unter dem sie dich finden, dein Name, ein paar Worte und Links. Es speichert sich beim Schreiben, sobald du dein Handle gewählt hast.",
|
||||
"publicProfileLinkHint": "https://…",
|
||||
"publicProfileLinkVerified": "Verlinkt zurück auf dein Profil",
|
||||
"publicProfileLinks": "Links",
|
||||
"publicProfileLinksChecked": "{count, plural, =1{Geprüft: {verified} von 1 Link verlinkt zurück auf dein Profil.} other{Geprüft: {verified} von {count} Links verlinken zurück auf dein Profil.}}",
|
||||
"publicProfileLinksHint": "Deine Website oder andere Konten, bis zu 4.",
|
||||
"publicProfilePage": "Deine Profilseite: {url}",
|
||||
"publicProfilePageCopied": "Adresse kopiert.",
|
||||
"publicProfilePageCopy": "Adresse kopieren",
|
||||
"publicProfilePicture": "Bild",
|
||||
"publicProfilePictureLater": "Wähle dein Handle, um ein Bild hinzuzufügen.",
|
||||
"publicProfilePictureType": "Bilder",
|
||||
"publicProfileRemove": "Profil entfernen",
|
||||
"publicProfileRemoveLink": "Link entfernen",
|
||||
"publicProfileRemoveMessage": "Anzeigename, Text über dich, Links und Bild werden entfernt. Dein Handle bleibt deins und privat, bis du dein Profil wieder ausfüllst oder etwas veröffentlichst.",
|
||||
"publicProfileRemovePicture": "Bild entfernen",
|
||||
"publicProfileRemoveTitle": "Dein öffentliches Profil entfernen?",
|
||||
"publicProfileRemoved": "Profil entfernt.",
|
||||
"publicProfileRetry": "Erneut versuchen",
|
||||
"publicProfileSavedNow": "Gespeichert",
|
||||
"publicProfileSaving": "Wird gespeichert …",
|
||||
"publicProfileTitle": "Öffentliches Profil",
|
||||
"publicProfileUnreachable": "Dein öffentliches Profil ist gerade nicht erreichbar.",
|
||||
"publicProfileVerifyHint": "Ein Link bekommt ein Häkchen, sobald seine Seite mit rel=\"me\" auf deine Profilseite zurückverlinkt, wie Mastodon Links prüft.",
|
||||
"profileAccount": "Konto",
|
||||
"profileSheetLinkVerified": "Verlinkt zurück auf dieses Profil"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1468,6 +1468,116 @@
|
|||
"whatsNewVersion": "Version {version}",
|
||||
"@whatsNewVersion": {
|
||||
"description": "Above a release's changes in What's new.",
|
||||
"placeholders": {"version": {"type": "String"}}
|
||||
}
|
||||
"placeholders": {
|
||||
"version": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"profileIdentified": "Your progress is kept with your account.",
|
||||
"profileProblemAvatarInvalid": "This picture can't be used: choose a PNG, JPEG, WebP or GIF image.",
|
||||
"profileProblemBioTooLong": "At most 500 characters.",
|
||||
"profileProblemDisplayNameTooLong": "At most 30 characters.",
|
||||
"profileProblemHandleInvalid": "A handle is 1 to 30 letters (a to z), digits or underscores.",
|
||||
"profileProblemHandleReserved": "This handle is kept for the instance.",
|
||||
"profileProblemHandleTaken": "Someone else has this handle.",
|
||||
"profileProblemLinkInvalid": "Links start with https:// or http://.",
|
||||
"profileProblemPublished": "You have published: your handle can't change, nor your profile go.",
|
||||
"profileProblemTooManyHandleChecks": "Too many handles were tried. Try again in an hour.",
|
||||
"profileProblemTooManyLinkChecks": "The links were checked too often. Try again in an hour.",
|
||||
"profileProblemTooManyLinks": "At most 4 links.",
|
||||
"profileSheetNotFound": "Nobody on this instance has this handle.",
|
||||
"profileSheetTitle": "Profile",
|
||||
"profileSheetUnreachable": "The profile couldn’t be loaded. Check your connection.",
|
||||
"profileSignInWays": "Ways to sign in",
|
||||
"profileTabProfile": "Profile",
|
||||
"profileTitle": "Profile",
|
||||
"profileWayEmail": "Email address",
|
||||
"profileWayLinked": "Signs you in",
|
||||
"publicProfileAddLink": "Add link",
|
||||
"publicProfileAddress": "Others find you as @{address}",
|
||||
"@publicProfileAddress": {
|
||||
"placeholders": {
|
||||
"address": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"publicProfileAddressPrivate": "Private until you fill in your profile or publish something; then others find you as @{address}.",
|
||||
"@publicProfileAddressPrivate": {
|
||||
"placeholders": {
|
||||
"address": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"publicProfileBio": "Bio",
|
||||
"publicProfileCheckLinks": "Check links",
|
||||
"publicProfileChoosePicture": "Choose picture",
|
||||
"publicProfileDisplayName": "Display name",
|
||||
"publicProfileDisplayNameHint": "The name shown beside your handle",
|
||||
"publicProfileFailed": "Couldn't reach the instance. Try again.",
|
||||
"publicProfileHandle": "Handle",
|
||||
"publicProfileHandleChangeTitle": "Change your handle",
|
||||
"publicProfileHandleChecking": "Checking…",
|
||||
"publicProfileHandleChoose": "Choose a handle",
|
||||
"publicProfileHandleChooseTitle": "Choose your handle",
|
||||
"publicProfileHandleConfirmChange": "Change",
|
||||
"publicProfileHandleConfirmChoose": "Choose",
|
||||
"publicProfileHandleDialogText": "Others find you by your handle. You can change it until you first publish a studyset.",
|
||||
"publicProfileHandleFirst": "Choose your handle first: your profile is made with it, and saves as you write from then on.",
|
||||
"publicProfileHandleFixed": "Fixed since you published: others refer to it.",
|
||||
"publicProfileHandleFree": "@{handle} is free",
|
||||
"@publicProfileHandleFree": {
|
||||
"placeholders": {
|
||||
"handle": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"publicProfileHandleHint": "Letters, digits and underscores, up to 30",
|
||||
"publicProfileHandleYours": "This is your handle",
|
||||
"publicProfileIntro": "How others see you once you publish: the handle they find you by, your name, a few words and links. It saves as you write, once you have chosen your handle.",
|
||||
"publicProfileLinkHint": "https://…",
|
||||
"publicProfileLinkVerified": "Links back to your profile",
|
||||
"publicProfileLinks": "Links",
|
||||
"publicProfileLinksChecked": "{count, plural, =1{Checked: {verified} of 1 link links back to your profile.} other{Checked: {verified} of {count} links link back to your profile.}}",
|
||||
"@publicProfileLinksChecked": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
},
|
||||
"verified": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"publicProfileLinksHint": "Your site or other accounts, up to 4.",
|
||||
"publicProfilePage": "Your profile page: {url}",
|
||||
"@publicProfilePage": {
|
||||
"placeholders": {
|
||||
"url": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"publicProfilePageCopied": "Address copied.",
|
||||
"publicProfilePageCopy": "Copy the address",
|
||||
"publicProfilePicture": "Picture",
|
||||
"publicProfilePictureLater": "Choose your handle to add a picture.",
|
||||
"publicProfilePictureType": "Images",
|
||||
"publicProfileRemove": "Remove profile",
|
||||
"publicProfileRemoveLink": "Remove link",
|
||||
"publicProfileRemoveMessage": "Your display name, bio, links and picture are removed. Your handle stays yours and private until you fill in your profile again or publish something.",
|
||||
"publicProfileRemovePicture": "Remove picture",
|
||||
"publicProfileRemoveTitle": "Remove your public profile?",
|
||||
"publicProfileRemoved": "Profile removed.",
|
||||
"publicProfileRetry": "Retry",
|
||||
"publicProfileSavedNow": "Saved",
|
||||
"publicProfileSaving": "Saving…",
|
||||
"publicProfileTitle": "Public profile",
|
||||
"publicProfileUnreachable": "Your public profile can't be reached right now.",
|
||||
"publicProfileVerifyHint": "A link gets a checkmark once its page links back to your profile page with rel=\"me\", as Mastodon checks links.",
|
||||
"profileAccount": "Account",
|
||||
"profileSheetLinkVerified": "Links back to this profile"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2784,6 +2784,414 @@ abstract class HalkyonAppLocalizations {
|
|||
/// In en, this message translates to:
|
||||
/// **'Version {version}'**
|
||||
String whatsNewVersion(String version);
|
||||
|
||||
/// No description provided for @profileIdentified.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your progress is kept with your account.'**
|
||||
String get profileIdentified;
|
||||
|
||||
/// No description provided for @profileProblemAvatarInvalid.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'This picture can\'t be used: choose a PNG, JPEG, WebP or GIF image.'**
|
||||
String get profileProblemAvatarInvalid;
|
||||
|
||||
/// No description provided for @profileProblemBioTooLong.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'At most 500 characters.'**
|
||||
String get profileProblemBioTooLong;
|
||||
|
||||
/// No description provided for @profileProblemDisplayNameTooLong.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'At most 30 characters.'**
|
||||
String get profileProblemDisplayNameTooLong;
|
||||
|
||||
/// No description provided for @profileProblemHandleInvalid.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'A handle is 1 to 30 letters (a to z), digits or underscores.'**
|
||||
String get profileProblemHandleInvalid;
|
||||
|
||||
/// No description provided for @profileProblemHandleReserved.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'This handle is kept for the instance.'**
|
||||
String get profileProblemHandleReserved;
|
||||
|
||||
/// No description provided for @profileProblemHandleTaken.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Someone else has this handle.'**
|
||||
String get profileProblemHandleTaken;
|
||||
|
||||
/// No description provided for @profileProblemLinkInvalid.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Links start with https:// or http://.'**
|
||||
String get profileProblemLinkInvalid;
|
||||
|
||||
/// No description provided for @profileProblemPublished.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'You have published: your handle can\'t change, nor your profile go.'**
|
||||
String get profileProblemPublished;
|
||||
|
||||
/// No description provided for @profileProblemTooManyHandleChecks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Too many handles were tried. Try again in an hour.'**
|
||||
String get profileProblemTooManyHandleChecks;
|
||||
|
||||
/// No description provided for @profileProblemTooManyLinkChecks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The links were checked too often. Try again in an hour.'**
|
||||
String get profileProblemTooManyLinkChecks;
|
||||
|
||||
/// No description provided for @profileProblemTooManyLinks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'At most 4 links.'**
|
||||
String get profileProblemTooManyLinks;
|
||||
|
||||
/// No description provided for @profileSheetNotFound.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Nobody on this instance has this handle.'**
|
||||
String get profileSheetNotFound;
|
||||
|
||||
/// No description provided for @profileSheetTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Profile'**
|
||||
String get profileSheetTitle;
|
||||
|
||||
/// No description provided for @profileSheetUnreachable.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The profile couldn’t be loaded. Check your connection.'**
|
||||
String get profileSheetUnreachable;
|
||||
|
||||
/// No description provided for @profileSignInWays.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Ways to sign in'**
|
||||
String get profileSignInWays;
|
||||
|
||||
/// No description provided for @profileTabProfile.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Profile'**
|
||||
String get profileTabProfile;
|
||||
|
||||
/// No description provided for @profileTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Profile'**
|
||||
String get profileTitle;
|
||||
|
||||
/// No description provided for @profileWayEmail.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Email address'**
|
||||
String get profileWayEmail;
|
||||
|
||||
/// No description provided for @profileWayLinked.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Signs you in'**
|
||||
String get profileWayLinked;
|
||||
|
||||
/// No description provided for @publicProfileAddLink.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Add link'**
|
||||
String get publicProfileAddLink;
|
||||
|
||||
/// No description provided for @publicProfileAddress.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Others find you as @{address}'**
|
||||
String publicProfileAddress(String address);
|
||||
|
||||
/// No description provided for @publicProfileAddressPrivate.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Private until you fill in your profile or publish something; then others find you as @{address}.'**
|
||||
String publicProfileAddressPrivate(String address);
|
||||
|
||||
/// No description provided for @publicProfileBio.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Bio'**
|
||||
String get publicProfileBio;
|
||||
|
||||
/// No description provided for @publicProfileCheckLinks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Check links'**
|
||||
String get publicProfileCheckLinks;
|
||||
|
||||
/// No description provided for @publicProfileChoosePicture.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose picture'**
|
||||
String get publicProfileChoosePicture;
|
||||
|
||||
/// No description provided for @publicProfileDisplayName.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Display name'**
|
||||
String get publicProfileDisplayName;
|
||||
|
||||
/// No description provided for @publicProfileDisplayNameHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'The name shown beside your handle'**
|
||||
String get publicProfileDisplayNameHint;
|
||||
|
||||
/// No description provided for @publicProfileFailed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Couldn\'t reach the instance. Try again.'**
|
||||
String get publicProfileFailed;
|
||||
|
||||
/// No description provided for @publicProfileHandle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Handle'**
|
||||
String get publicProfileHandle;
|
||||
|
||||
/// No description provided for @publicProfileHandleChangeTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Change your handle'**
|
||||
String get publicProfileHandleChangeTitle;
|
||||
|
||||
/// No description provided for @publicProfileHandleChecking.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Checking…'**
|
||||
String get publicProfileHandleChecking;
|
||||
|
||||
/// No description provided for @publicProfileHandleChoose.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose a handle'**
|
||||
String get publicProfileHandleChoose;
|
||||
|
||||
/// No description provided for @publicProfileHandleChooseTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose your handle'**
|
||||
String get publicProfileHandleChooseTitle;
|
||||
|
||||
/// No description provided for @publicProfileHandleConfirmChange.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Change'**
|
||||
String get publicProfileHandleConfirmChange;
|
||||
|
||||
/// No description provided for @publicProfileHandleConfirmChoose.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose'**
|
||||
String get publicProfileHandleConfirmChoose;
|
||||
|
||||
/// No description provided for @publicProfileHandleDialogText.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Others find you by your handle. You can change it until you first publish a studyset.'**
|
||||
String get publicProfileHandleDialogText;
|
||||
|
||||
/// No description provided for @publicProfileHandleFirst.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose your handle first: your profile is made with it, and saves as you write from then on.'**
|
||||
String get publicProfileHandleFirst;
|
||||
|
||||
/// No description provided for @publicProfileHandleFixed.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Fixed since you published: others refer to it.'**
|
||||
String get publicProfileHandleFixed;
|
||||
|
||||
/// No description provided for @publicProfileHandleFree.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'@{handle} is free'**
|
||||
String publicProfileHandleFree(String handle);
|
||||
|
||||
/// No description provided for @publicProfileHandleHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Letters, digits and underscores, up to 30'**
|
||||
String get publicProfileHandleHint;
|
||||
|
||||
/// No description provided for @publicProfileHandleYours.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'This is your handle'**
|
||||
String get publicProfileHandleYours;
|
||||
|
||||
/// No description provided for @publicProfileIntro.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'How others see you once you publish: the handle they find you by, your name, a few words and links. It saves as you write, once you have chosen your handle.'**
|
||||
String get publicProfileIntro;
|
||||
|
||||
/// No description provided for @publicProfileLinkHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'https://…'**
|
||||
String get publicProfileLinkHint;
|
||||
|
||||
/// No description provided for @publicProfileLinkVerified.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Links back to your profile'**
|
||||
String get publicProfileLinkVerified;
|
||||
|
||||
/// No description provided for @publicProfileLinks.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Links'**
|
||||
String get publicProfileLinks;
|
||||
|
||||
/// No description provided for @publicProfileLinksChecked.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{Checked: {verified} of 1 link links back to your profile.} other{Checked: {verified} of {count} links link back to your profile.}}'**
|
||||
String publicProfileLinksChecked(int count, int verified);
|
||||
|
||||
/// No description provided for @publicProfileLinksHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your site or other accounts, up to 4.'**
|
||||
String get publicProfileLinksHint;
|
||||
|
||||
/// No description provided for @publicProfilePage.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your profile page: {url}'**
|
||||
String publicProfilePage(String url);
|
||||
|
||||
/// No description provided for @publicProfilePageCopied.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Address copied.'**
|
||||
String get publicProfilePageCopied;
|
||||
|
||||
/// No description provided for @publicProfilePageCopy.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Copy the address'**
|
||||
String get publicProfilePageCopy;
|
||||
|
||||
/// No description provided for @publicProfilePicture.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Picture'**
|
||||
String get publicProfilePicture;
|
||||
|
||||
/// No description provided for @publicProfilePictureLater.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Choose your handle to add a picture.'**
|
||||
String get publicProfilePictureLater;
|
||||
|
||||
/// No description provided for @publicProfilePictureType.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Images'**
|
||||
String get publicProfilePictureType;
|
||||
|
||||
/// No description provided for @publicProfileRemove.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove profile'**
|
||||
String get publicProfileRemove;
|
||||
|
||||
/// No description provided for @publicProfileRemoveLink.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove link'**
|
||||
String get publicProfileRemoveLink;
|
||||
|
||||
/// No description provided for @publicProfileRemoveMessage.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your display name, bio, links and picture are removed. Your handle stays yours and private until you fill in your profile again or publish something.'**
|
||||
String get publicProfileRemoveMessage;
|
||||
|
||||
/// No description provided for @publicProfileRemovePicture.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove picture'**
|
||||
String get publicProfileRemovePicture;
|
||||
|
||||
/// No description provided for @publicProfileRemoveTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Remove your public profile?'**
|
||||
String get publicProfileRemoveTitle;
|
||||
|
||||
/// No description provided for @publicProfileRemoved.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Profile removed.'**
|
||||
String get publicProfileRemoved;
|
||||
|
||||
/// No description provided for @publicProfileRetry.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Retry'**
|
||||
String get publicProfileRetry;
|
||||
|
||||
/// No description provided for @publicProfileSavedNow.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Saved'**
|
||||
String get publicProfileSavedNow;
|
||||
|
||||
/// No description provided for @publicProfileSaving.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Saving…'**
|
||||
String get publicProfileSaving;
|
||||
|
||||
/// No description provided for @publicProfileTitle.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Public profile'**
|
||||
String get publicProfileTitle;
|
||||
|
||||
/// No description provided for @publicProfileUnreachable.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Your public profile can\'t be reached right now.'**
|
||||
String get publicProfileUnreachable;
|
||||
|
||||
/// No description provided for @publicProfileVerifyHint.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'A link gets a checkmark once its page links back to your profile page with rel=\"me\", as Mastodon checks links.'**
|
||||
String get publicProfileVerifyHint;
|
||||
|
||||
/// No description provided for @profileAccount.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Account'**
|
||||
String get profileAccount;
|
||||
|
||||
/// No description provided for @profileSheetLinkVerified.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Links back to this profile'**
|
||||
String get profileSheetLinkVerified;
|
||||
}
|
||||
|
||||
class _HalkyonAppLocalizationsDelegate
|
||||
|
|
|
|||
|
|
@ -1764,4 +1764,247 @@ class HalkyonAppLocalizationsDe extends HalkyonAppLocalizations {
|
|||
String whatsNewVersion(String version) {
|
||||
return 'Version $version';
|
||||
}
|
||||
|
||||
@override
|
||||
String get profileIdentified =>
|
||||
'Dein Fortschritt wird in deinem Konto gespeichert.';
|
||||
|
||||
@override
|
||||
String get profileProblemAvatarInvalid =>
|
||||
'Dieses Bild lässt sich nicht verwenden: Wähle ein PNG-, JPEG-, WebP- oder GIF-Bild.';
|
||||
|
||||
@override
|
||||
String get profileProblemBioTooLong => 'Höchstens 500 Zeichen.';
|
||||
|
||||
@override
|
||||
String get profileProblemDisplayNameTooLong => 'Höchstens 30 Zeichen.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleInvalid =>
|
||||
'Ein Handle besteht aus 1 bis 30 Buchstaben (a bis z), Ziffern oder Unterstrichen.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleReserved =>
|
||||
'Dieses Handle ist der Instanz vorbehalten.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleTaken =>
|
||||
'Dieses Handle hat schon jemand anderes.';
|
||||
|
||||
@override
|
||||
String get profileProblemLinkInvalid =>
|
||||
'Links beginnen mit https:// oder http://.';
|
||||
|
||||
@override
|
||||
String get profileProblemPublished =>
|
||||
'Du hast veröffentlicht: Dein Handle kann sich nicht mehr ändern und dein Profil nicht mehr gehen.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyHandleChecks =>
|
||||
'Es wurden zu viele Handles ausprobiert. Versuche es in einer Stunde noch einmal.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyLinkChecks =>
|
||||
'Die Links wurden zu oft geprüft. Versuche es in einer Stunde noch einmal.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyLinks => 'Höchstens 4 Links.';
|
||||
|
||||
@override
|
||||
String get profileSheetNotFound =>
|
||||
'Niemand auf dieser Instanz hat diesen Handle.';
|
||||
|
||||
@override
|
||||
String get profileSheetTitle => 'Profil';
|
||||
|
||||
@override
|
||||
String get profileSheetUnreachable =>
|
||||
'Das Profil konnte nicht geladen werden. Prüfe deine Verbindung.';
|
||||
|
||||
@override
|
||||
String get profileSignInWays => 'Anmeldewege';
|
||||
|
||||
@override
|
||||
String get profileTabProfile => 'Profil';
|
||||
|
||||
@override
|
||||
String get profileTitle => 'Profil';
|
||||
|
||||
@override
|
||||
String get profileWayEmail => 'E-Mail-Adresse';
|
||||
|
||||
@override
|
||||
String get profileWayLinked => 'Meldet dich an';
|
||||
|
||||
@override
|
||||
String get publicProfileAddLink => 'Link hinzufügen';
|
||||
|
||||
@override
|
||||
String publicProfileAddress(String address) {
|
||||
return 'Andere finden dich als @$address';
|
||||
}
|
||||
|
||||
@override
|
||||
String publicProfileAddressPrivate(String address) {
|
||||
return 'Privat, bis du dein Profil ausfüllst oder etwas veröffentlichst; dann finden dich andere als @$address.';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileBio => 'Über dich';
|
||||
|
||||
@override
|
||||
String get publicProfileCheckLinks => 'Links prüfen';
|
||||
|
||||
@override
|
||||
String get publicProfileChoosePicture => 'Bild wählen';
|
||||
|
||||
@override
|
||||
String get publicProfileDisplayName => 'Anzeigename';
|
||||
|
||||
@override
|
||||
String get publicProfileDisplayNameHint => 'Der Name neben deinem Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileFailed =>
|
||||
'Die Instanz ist nicht erreichbar. Versuche es erneut.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandle => 'Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChangeTitle => 'Ändere dein Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChecking => 'Wird geprüft …';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChoose => 'Wähle ein Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChooseTitle => 'Wähle dein Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleConfirmChange => 'Ändern';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleConfirmChoose => 'Wählen';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleDialogText =>
|
||||
'Andere finden dich unter deinem Handle. Du kannst es ändern, bis du zum ersten Mal ein Lernset veröffentlichst.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleFirst =>
|
||||
'Wähle zuerst dein Handle: Damit wird dein Profil angelegt, und ab dann speichert es sich beim Schreiben.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleFixed =>
|
||||
'Fest, seit du veröffentlicht hast: Andere verweisen darauf.';
|
||||
|
||||
@override
|
||||
String publicProfileHandleFree(String handle) {
|
||||
return '@$handle ist frei';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileHandleHint =>
|
||||
'Buchstaben, Ziffern und Unterstriche, bis zu 30';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleYours => 'Das ist dein Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileIntro =>
|
||||
'Wie andere dich sehen, sobald du veröffentlichst: das Handle, unter dem sie dich finden, dein Name, ein paar Worte und Links. Es speichert sich beim Schreiben, sobald du dein Handle gewählt hast.';
|
||||
|
||||
@override
|
||||
String get publicProfileLinkHint => 'https://…';
|
||||
|
||||
@override
|
||||
String get publicProfileLinkVerified => 'Verlinkt zurück auf dein Profil';
|
||||
|
||||
@override
|
||||
String get publicProfileLinks => 'Links';
|
||||
|
||||
@override
|
||||
String publicProfileLinksChecked(int count, int verified) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other:
|
||||
'Geprüft: $verified von $count Links verlinken zurück auf dein Profil.',
|
||||
one: 'Geprüft: $verified von 1 Link verlinkt zurück auf dein Profil.',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileLinksHint =>
|
||||
'Deine Website oder andere Konten, bis zu 4.';
|
||||
|
||||
@override
|
||||
String publicProfilePage(String url) {
|
||||
return 'Deine Profilseite: $url';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfilePageCopied => 'Adresse kopiert.';
|
||||
|
||||
@override
|
||||
String get publicProfilePageCopy => 'Adresse kopieren';
|
||||
|
||||
@override
|
||||
String get publicProfilePicture => 'Bild';
|
||||
|
||||
@override
|
||||
String get publicProfilePictureLater =>
|
||||
'Wähle dein Handle, um ein Bild hinzuzufügen.';
|
||||
|
||||
@override
|
||||
String get publicProfilePictureType => 'Bilder';
|
||||
|
||||
@override
|
||||
String get publicProfileRemove => 'Profil entfernen';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveLink => 'Link entfernen';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveMessage =>
|
||||
'Anzeigename, Text über dich, Links und Bild werden entfernt. Dein Handle bleibt deins und privat, bis du dein Profil wieder ausfüllst oder etwas veröffentlichst.';
|
||||
|
||||
@override
|
||||
String get publicProfileRemovePicture => 'Bild entfernen';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveTitle => 'Dein öffentliches Profil entfernen?';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoved => 'Profil entfernt.';
|
||||
|
||||
@override
|
||||
String get publicProfileRetry => 'Erneut versuchen';
|
||||
|
||||
@override
|
||||
String get publicProfileSavedNow => 'Gespeichert';
|
||||
|
||||
@override
|
||||
String get publicProfileSaving => 'Wird gespeichert …';
|
||||
|
||||
@override
|
||||
String get publicProfileTitle => 'Öffentliches Profil';
|
||||
|
||||
@override
|
||||
String get publicProfileUnreachable =>
|
||||
'Dein öffentliches Profil ist gerade nicht erreichbar.';
|
||||
|
||||
@override
|
||||
String get publicProfileVerifyHint =>
|
||||
'Ein Link bekommt ein Häkchen, sobald seine Seite mit rel=\"me\" auf deine Profilseite zurückverlinkt, wie Mastodon Links prüft.';
|
||||
|
||||
@override
|
||||
String get profileAccount => 'Konto';
|
||||
|
||||
@override
|
||||
String get profileSheetLinkVerified => 'Verlinkt zurück auf dieses Profil';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1737,6 +1737,244 @@ class HalkyonAppLocalizationsEn extends HalkyonAppLocalizations {
|
|||
String whatsNewVersion(String version) {
|
||||
return 'Version $version';
|
||||
}
|
||||
|
||||
@override
|
||||
String get profileIdentified => 'Your progress is kept with your account.';
|
||||
|
||||
@override
|
||||
String get profileProblemAvatarInvalid =>
|
||||
'This picture can\'t be used: choose a PNG, JPEG, WebP or GIF image.';
|
||||
|
||||
@override
|
||||
String get profileProblemBioTooLong => 'At most 500 characters.';
|
||||
|
||||
@override
|
||||
String get profileProblemDisplayNameTooLong => 'At most 30 characters.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleInvalid =>
|
||||
'A handle is 1 to 30 letters (a to z), digits or underscores.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleReserved =>
|
||||
'This handle is kept for the instance.';
|
||||
|
||||
@override
|
||||
String get profileProblemHandleTaken => 'Someone else has this handle.';
|
||||
|
||||
@override
|
||||
String get profileProblemLinkInvalid =>
|
||||
'Links start with https:// or http://.';
|
||||
|
||||
@override
|
||||
String get profileProblemPublished =>
|
||||
'You have published: your handle can\'t change, nor your profile go.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyHandleChecks =>
|
||||
'Too many handles were tried. Try again in an hour.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyLinkChecks =>
|
||||
'The links were checked too often. Try again in an hour.';
|
||||
|
||||
@override
|
||||
String get profileProblemTooManyLinks => 'At most 4 links.';
|
||||
|
||||
@override
|
||||
String get profileSheetNotFound => 'Nobody on this instance has this handle.';
|
||||
|
||||
@override
|
||||
String get profileSheetTitle => 'Profile';
|
||||
|
||||
@override
|
||||
String get profileSheetUnreachable =>
|
||||
'The profile couldn’t be loaded. Check your connection.';
|
||||
|
||||
@override
|
||||
String get profileSignInWays => 'Ways to sign in';
|
||||
|
||||
@override
|
||||
String get profileTabProfile => 'Profile';
|
||||
|
||||
@override
|
||||
String get profileTitle => 'Profile';
|
||||
|
||||
@override
|
||||
String get profileWayEmail => 'Email address';
|
||||
|
||||
@override
|
||||
String get profileWayLinked => 'Signs you in';
|
||||
|
||||
@override
|
||||
String get publicProfileAddLink => 'Add link';
|
||||
|
||||
@override
|
||||
String publicProfileAddress(String address) {
|
||||
return 'Others find you as @$address';
|
||||
}
|
||||
|
||||
@override
|
||||
String publicProfileAddressPrivate(String address) {
|
||||
return 'Private until you fill in your profile or publish something; then others find you as @$address.';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileBio => 'Bio';
|
||||
|
||||
@override
|
||||
String get publicProfileCheckLinks => 'Check links';
|
||||
|
||||
@override
|
||||
String get publicProfileChoosePicture => 'Choose picture';
|
||||
|
||||
@override
|
||||
String get publicProfileDisplayName => 'Display name';
|
||||
|
||||
@override
|
||||
String get publicProfileDisplayNameHint =>
|
||||
'The name shown beside your handle';
|
||||
|
||||
@override
|
||||
String get publicProfileFailed => 'Couldn\'t reach the instance. Try again.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandle => 'Handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChangeTitle => 'Change your handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChecking => 'Checking…';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChoose => 'Choose a handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleChooseTitle => 'Choose your handle';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleConfirmChange => 'Change';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleConfirmChoose => 'Choose';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleDialogText =>
|
||||
'Others find you by your handle. You can change it until you first publish a studyset.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleFirst =>
|
||||
'Choose your handle first: your profile is made with it, and saves as you write from then on.';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleFixed =>
|
||||
'Fixed since you published: others refer to it.';
|
||||
|
||||
@override
|
||||
String publicProfileHandleFree(String handle) {
|
||||
return '@$handle is free';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileHandleHint =>
|
||||
'Letters, digits and underscores, up to 30';
|
||||
|
||||
@override
|
||||
String get publicProfileHandleYours => 'This is your handle';
|
||||
|
||||
@override
|
||||
String get publicProfileIntro =>
|
||||
'How others see you once you publish: the handle they find you by, your name, a few words and links. It saves as you write, once you have chosen your handle.';
|
||||
|
||||
@override
|
||||
String get publicProfileLinkHint => 'https://…';
|
||||
|
||||
@override
|
||||
String get publicProfileLinkVerified => 'Links back to your profile';
|
||||
|
||||
@override
|
||||
String get publicProfileLinks => 'Links';
|
||||
|
||||
@override
|
||||
String publicProfileLinksChecked(int count, int verified) {
|
||||
String _temp0 = intl.Intl.pluralLogic(
|
||||
count,
|
||||
locale: localeName,
|
||||
other: 'Checked: $verified of $count links link back to your profile.',
|
||||
one: 'Checked: $verified of 1 link links back to your profile.',
|
||||
);
|
||||
return '$_temp0';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfileLinksHint => 'Your site or other accounts, up to 4.';
|
||||
|
||||
@override
|
||||
String publicProfilePage(String url) {
|
||||
return 'Your profile page: $url';
|
||||
}
|
||||
|
||||
@override
|
||||
String get publicProfilePageCopied => 'Address copied.';
|
||||
|
||||
@override
|
||||
String get publicProfilePageCopy => 'Copy the address';
|
||||
|
||||
@override
|
||||
String get publicProfilePicture => 'Picture';
|
||||
|
||||
@override
|
||||
String get publicProfilePictureLater =>
|
||||
'Choose your handle to add a picture.';
|
||||
|
||||
@override
|
||||
String get publicProfilePictureType => 'Images';
|
||||
|
||||
@override
|
||||
String get publicProfileRemove => 'Remove profile';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveLink => 'Remove link';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveMessage =>
|
||||
'Your display name, bio, links and picture are removed. Your handle stays yours and private until you fill in your profile again or publish something.';
|
||||
|
||||
@override
|
||||
String get publicProfileRemovePicture => 'Remove picture';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoveTitle => 'Remove your public profile?';
|
||||
|
||||
@override
|
||||
String get publicProfileRemoved => 'Profile removed.';
|
||||
|
||||
@override
|
||||
String get publicProfileRetry => 'Retry';
|
||||
|
||||
@override
|
||||
String get publicProfileSavedNow => 'Saved';
|
||||
|
||||
@override
|
||||
String get publicProfileSaving => 'Saving…';
|
||||
|
||||
@override
|
||||
String get publicProfileTitle => 'Public profile';
|
||||
|
||||
@override
|
||||
String get publicProfileUnreachable =>
|
||||
'Your public profile can\'t be reached right now.';
|
||||
|
||||
@override
|
||||
String get publicProfileVerifyHint =>
|
||||
'A link gets a checkmark once its page links back to your profile page with rel=\"me\", as Mastodon checks links.';
|
||||
|
||||
@override
|
||||
String get profileAccount => 'Account';
|
||||
|
||||
@override
|
||||
String get profileSheetLinkVerified => 'Links back to this profile';
|
||||
}
|
||||
|
||||
/// The translations for English, as used in the United Kingdom (`en_GB`).
|
||||
|
|
|
|||
Loading…
Reference in a new issue