bump version
Some checks failed
Flutter analyze & test / flutter_analyze_and_test (push) Has been cancelled

This commit is contained in:
otsmr 2026-06-10 00:07:18 +02:00
parent 726cdaf89f
commit 3981341cd3
9 changed files with 134 additions and 296 deletions

View file

@ -140,18 +140,6 @@ abstract class AppLocalizations {
/// **'Say goodbye to addictive features! twonly was created for sharing moments, free from useless distractions or ads.'**
String get onboardingFocusBody;
/// No description provided for @onboardingSendTwonliesTitle.
///
/// In en, this message translates to:
/// **'Send twonlies'**
String get onboardingSendTwonliesTitle;
/// No description provided for @onboardingSendTwonliesBody.
///
/// In en, this message translates to:
/// **'Share moments securely with your partner. twonly ensures that only your partner can open it, keeping your moments with your partner a two(o)nly thing!'**
String get onboardingSendTwonliesBody;
/// No description provided for @onboardingNotProductTitle.
///
/// In en, this message translates to:
@ -164,12 +152,6 @@ abstract class AppLocalizations {
/// **'twonly is financed by donations and an optional subscription. Your data will never be sold.'**
String get onboardingNotProductBody;
/// No description provided for @onboardingGetStartedTitle.
///
/// In en, this message translates to:
/// **'Let\'s go!'**
String get onboardingGetStartedTitle;
/// No description provided for @registerUsernameSlogan.
///
/// In en, this message translates to:
@ -320,24 +302,12 @@ abstract class AppLocalizations {
/// **'Username not found'**
String get searchUsernameNotFound;
/// No description provided for @searchUsernameNotFoundBody.
///
/// In en, this message translates to:
/// **'There is no user with the username \"{username}\" registered'**
String searchUsernameNotFoundBody(Object username);
/// No description provided for @searchUsernameNewFollowerTitle.
///
/// In en, this message translates to:
/// **'Open requests'**
String get searchUsernameNewFollowerTitle;
/// No description provided for @chatListViewSearchUserNameBtn.
///
/// In en, this message translates to:
/// **'Add your first twonly contact!'**
String get chatListViewSearchUserNameBtn;
/// No description provided for @chatListDetailInput.
///
/// In en, this message translates to:
@ -512,12 +482,6 @@ abstract class AppLocalizations {
/// **'Store in Gallery'**
String get settingsStorageDataStoreInGTitle;
/// No description provided for @settingsStorageDataStoreInGSubtitle.
///
/// In en, this message translates to:
/// **'Store saved images additional in the systems gallery.'**
String get settingsStorageDataStoreInGSubtitle;
/// No description provided for @settingsStorageDataMediaAutoDownload.
///
/// In en, this message translates to:
@ -611,13 +575,13 @@ abstract class AppLocalizations {
/// No description provided for @settingsPrivacyBlockUsers.
///
/// In en, this message translates to:
/// **'Block users'**
/// **'Block contacts'**
String get settingsPrivacyBlockUsers;
/// No description provided for @settingsPrivacyBlockUsersDesc.
///
/// In en, this message translates to:
/// **'Blocked users will not be able to communicate with you. You can unblock a blocked user at any time.'**
/// **'Blocked contacts will not be able to communicate with you. You can unblock a blocked contact at any time.'**
String get settingsPrivacyBlockUsersDesc;
/// No description provided for @settingsPrivacyBlockUsersCount.
@ -632,12 +596,6 @@ abstract class AppLocalizations {
/// **'Security Profile'**
String get settingsPrivacyProfileSelectionTitle;
/// No description provided for @settingsPrivacyProfileSelectionDesc.
///
/// In en, this message translates to:
/// **'Choose your setup path and security configuration'**
String get settingsPrivacyProfileSelectionDesc;
/// No description provided for @securityProfileTitle.
///
/// In en, this message translates to:
@ -935,13 +893,19 @@ abstract class AppLocalizations {
/// No description provided for @contactVerifyNumberTitle.
///
/// In en, this message translates to:
/// **'Verify contact'**
/// **'Verify contacts'**
String get contactVerifyNumberTitle;
/// No description provided for @contactVerifyNumberSubtitle.
///
/// In en, this message translates to:
/// **'Verify the identity of your contacts to make sure you are texting the right person.'**
String get contactVerifyNumberSubtitle;
/// No description provided for @userVerifiedTitle.
///
/// In en, this message translates to:
/// **'User verified'**
/// **'Contact verified'**
String get userVerifiedTitle;
/// No description provided for @contactVerifiedBy.
@ -1013,13 +977,13 @@ abstract class AppLocalizations {
/// No description provided for @contactBlockBody.
///
/// In en, this message translates to:
/// **'A blocked user will no longer be able to send you messages and their profile will be hidden from view. To unblock a user, simply navigate to Settings > Privacy > Blocked Users.'**
/// **'A blocked contact will no longer be able to send you messages and their profile will be hidden from view. To unblock a contact, simply navigate to Settings > Privacy > Blocked Contacts.'**
String get contactBlockBody;
/// No description provided for @contactRemove.
///
/// In en, this message translates to:
/// **'Remove user'**
/// **'Remove contact'**
String get contactRemove;
/// No description provided for @contactRemoveTitle.
@ -1031,7 +995,7 @@ abstract class AppLocalizations {
/// No description provided for @contactRemoveBody.
///
/// In en, this message translates to:
/// **'Permanently remove the user. If the user tries to send you a new message, you will have to accept the user again first.'**
/// **'Permanently remove the contact. If the contact tries to send you a new message, you will have to accept the contact again first.'**
String get contactRemoveBody;
/// No description provided for @undo.
@ -1721,7 +1685,7 @@ abstract class AppLocalizations {
/// No description provided for @reportUser.
///
/// In en, this message translates to:
/// **'Report user'**
/// **'Report contact'**
String get reportUser;
/// No description provided for @newDeviceRegistered.
@ -2360,18 +2324,6 @@ abstract class AppLocalizations {
/// **'Draft'**
String get draftMessage;
/// No description provided for @exportMemories.
///
/// In en, this message translates to:
/// **'Export memories (Beta)'**
String get exportMemories;
/// No description provided for @importMemories.
///
/// In en, this message translates to:
/// **'Import memories (Beta)'**
String get importMemories;
/// No description provided for @voiceMessageSlideToCancel.
///
/// In en, this message translates to:
@ -2771,7 +2723,7 @@ abstract class AppLocalizations {
/// No description provided for @verificationBadgeGreenDesc.
///
/// In en, this message translates to:
/// **'A contact you have *personally* verified.'**
/// **'A contact you have *personally verified* using the QR code.'**
String get verificationBadgeGreenDesc;
/// No description provided for @verificationBadgeYellowDesc.
@ -2786,6 +2738,18 @@ abstract class AppLocalizations {
/// **'A contact whose identity has *not* yet been verified.'**
String get verificationBadgeRedDesc;
/// No description provided for @scanNow.
///
/// In en, this message translates to:
/// **'Scan now'**
String get scanNow;
/// No description provided for @openQrCode.
///
/// In en, this message translates to:
/// **'Open QR code'**
String get openQrCode;
/// No description provided for @deleteVerificationTitle.
///
/// In en, this message translates to:
@ -2810,12 +2774,6 @@ abstract class AppLocalizations {
/// **'{count, plural, =1{1 mutual group} other{{count} mutual groups}}'**
String mutualGroupsTitle(num count);
/// No description provided for @mutualGroupsSentMessages.
///
/// In en, this message translates to:
/// **'{count, plural, =1{1 message sent} other{{count} messages sent}}'**
String mutualGroupsSentMessages(num count);
/// No description provided for @chatEntryFlameRestored.
///
/// In en, this message translates to:
@ -2888,12 +2846,6 @@ abstract class AppLocalizations {
/// **'When the typing indicator is turned off, you can\'t see when others are typing a message.'**
String get settingsTypingIndicationSubtitle;
/// No description provided for @scanQrOrShow.
///
/// In en, this message translates to:
/// **'Scan / Show QR'**
String get scanQrOrShow;
/// No description provided for @contactActionBlock.
///
/// In en, this message translates to:
@ -2948,12 +2900,6 @@ abstract class AppLocalizations {
/// **'Mutual Friends'**
String get userDiscoverySettingsTitle;
/// No description provided for @userDiscoveryWhyThisIsUsed.
///
/// In en, this message translates to:
/// **'Why this is used'**
String get userDiscoveryWhyThisIsUsed;
/// No description provided for @userDiscoveryFeatureOffers.
///
/// In en, this message translates to:
@ -3236,12 +3182,6 @@ abstract class AppLocalizations {
/// **'Back'**
String get back;
/// No description provided for @onboardingExampleLabel.
///
/// In en, this message translates to:
/// **'Example'**
String get onboardingExampleLabel;
/// No description provided for @makerChangedUsername.
///
/// In en, this message translates to:
@ -3410,12 +3350,6 @@ abstract class AppLocalizations {
/// **'Drag to Zoom'**
String get dragToZoom;
/// No description provided for @showUsername.
///
/// In en, this message translates to:
/// **'Show username'**
String get showUsername;
/// No description provided for @onboardingProfileSelectionTitle.
///
/// In en, this message translates to:
@ -3642,30 +3576,6 @@ abstract class AppLocalizations {
/// **'There are no images on your device.'**
String get importGalleryNoImagesFoundDesc;
/// No description provided for @importGalleryShowAllImages.
///
/// In en, this message translates to:
/// **'Show all images'**
String get importGalleryShowAllImages;
/// No description provided for @importGalleryShowTwonlyAlbum.
///
/// In en, this message translates to:
/// **'Show twonly album'**
String get importGalleryShowTwonlyAlbum;
/// No description provided for @importGalleryToggleDescAll.
///
/// In en, this message translates to:
/// **'Viewing all images on your device.'**
String get importGalleryToggleDescAll;
/// No description provided for @importGalleryToggleDescTwonly.
///
/// In en, this message translates to:
/// **'Viewing the \"twonly\" album.'**
String get importGalleryToggleDescTwonly;
/// No description provided for @importGalleryFilterTwonly.
///
/// In en, this message translates to:

View file

@ -33,13 +33,6 @@ class AppLocalizationsDe extends AppLocalizations {
String get onboardingFocusBody =>
'Verabschiede dich von süchtig machenden Funktionen! twonly wurde für das Teilen von Momenten ohne nutzlose Ablenkungen oder Werbung entwickelt.';
@override
String get onboardingSendTwonliesTitle => 'twonlies senden';
@override
String get onboardingSendTwonliesBody =>
'Teile Momente sicher mit deinem Partner. twonly stellt sicher, dass nur dein Partner sie öffnen kann, sodass deine Momente mit deinem Partner eine two(o)nly Sache bleiben!';
@override
String get onboardingNotProductTitle => 'Du bist nicht das Produkt!';
@ -47,9 +40,6 @@ class AppLocalizationsDe extends AppLocalizations {
String get onboardingNotProductBody =>
'twonly wird durch Spenden und ein optionales Abonnement finanziert. Deine Daten werden niemals verkauft.';
@override
String get onboardingGetStartedTitle => 'Auf geht\'s';
@override
String get registerUsernameSlogan => 'Konto erstellen';
@ -126,18 +116,9 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get searchUsernameNotFound => 'Benutzername nicht gefunden';
@override
String searchUsernameNotFoundBody(Object username) {
return 'Es wurde kein Benutzer mit dem Benutzernamen \"$username\" gefunden.';
}
@override
String get searchUsernameNewFollowerTitle => 'Offene Anfragen';
@override
String get chatListViewSearchUserNameBtn =>
'Füge deinen ersten twonly-Kontakt hinzu!';
@override
String get chatListDetailInput => 'Nachricht eingeben';
@ -229,10 +210,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get settingsStorageDataStoreInGTitle => 'In der Galerie speichern';
@override
String get settingsStorageDataStoreInGSubtitle =>
'Speichere Bilder zusätzlich in der Systemgalerie.';
@override
String get settingsStorageDataMediaAutoDownload =>
'Automatischer Mediendownload';
@ -280,11 +257,11 @@ class AppLocalizationsDe extends AppLocalizations {
String get settingsPrivacy => 'Datenschutz & Sicherheit';
@override
String get settingsPrivacyBlockUsers => 'Benutzer blockieren';
String get settingsPrivacyBlockUsers => 'Kontakte blockieren';
@override
String get settingsPrivacyBlockUsersDesc =>
'Blockierte Benutzer können nicht mit dir kommunizieren. Du kannst einen blockierten Benutzer jederzeit wieder entsperren.';
'Blockierte Kontakte können nicht mit dir kommunizieren. Du kannst einen blockierten Kontakt jederzeit wieder entsperren.';
@override
String settingsPrivacyBlockUsersCount(Object len) {
@ -294,10 +271,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get settingsPrivacyProfileSelectionTitle => 'Sicherheitsprofil';
@override
String get settingsPrivacyProfileSelectionDesc =>
'Wähle deinen Setup-Pfad und deine Sicherheitskonfiguration';
@override
String get securityProfileTitle => 'Sicherheitsprofil';
@ -460,10 +433,14 @@ class AppLocalizationsDe extends AppLocalizations {
'Dein Konto wird gelöscht. Es gibt keine Möglichkeit, es wiederherzustellen.';
@override
String get contactVerifyNumberTitle => 'Benutzer verifizieren';
String get contactVerifyNumberTitle => 'Kontakte verifizieren';
@override
String get userVerifiedTitle => 'Benutzer verifiziert';
String get contactVerifyNumberSubtitle =>
'Überprüfe die Identität deiner Kontakte, um sicherzugehen, dass du mit der richtigen Person schreibst.';
@override
String get userVerifiedTitle => 'Kontakt verifiziert';
@override
String contactVerifiedBy(Object username) {
@ -508,10 +485,10 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get contactBlockBody =>
'Ein blockierter Benutzer kann dir keine Nachrichten mehr senden, und deren Profil ist nicht mehr sichtbar. Um die Blockierung eines Benutzers aufzuheben, navigiere einfach zu Einstellungen > Datenschutz > Blockierte Benutzer.';
'Ein blockierter Kontakt kann dir keine Nachrichten mehr senden, und deren Profil ist nicht mehr sichtbar. Um die Blockierung eines Kontakts aufzuheben, navigiere einfach zu Einstellungen > Datenschutz > Blockierte Kontakte.';
@override
String get contactRemove => 'Benutzer löschen';
String get contactRemove => 'Kontakt löschen';
@override
String contactRemoveTitle(Object username) {
@ -520,7 +497,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get contactRemoveBody =>
'Den Benutzer dauerhaft entfernen. Wenn der Benutzer versucht, dir eine neue Nachricht zu senden, musst du den Benutzer erst wieder akzeptieren.';
'Den Kontakt dauerhaft entfernen. Wenn der Kontakt versucht, dir eine neue Nachricht zu senden, musst du den Kontakt erst wieder akzeptieren.';
@override
String get undo => 'Rückgängig';
@ -910,7 +887,7 @@ class AppLocalizationsDe extends AppLocalizations {
String get reportUserReason => 'Meldegrund';
@override
String get reportUser => 'Benutzer melden';
String get reportUser => 'Kontakt melden';
@override
String get newDeviceRegistered =>
@ -1307,12 +1284,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get draftMessage => 'Entwurf';
@override
String get exportMemories => 'Memories exportieren (Beta)';
@override
String get importMemories => 'Memories importieren (Beta)';
@override
String get voiceMessageSlideToCancel => 'Zum Abbrechen ziehen';
@ -1561,7 +1532,7 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get verificationBadgeGreenDesc =>
'Ein Kontakt, den du *persönlich verifiziert* hast.';
'Ein Kontakt, den du über den QR-code *persönlich verifiziert* hast.';
@override
String get verificationBadgeYellowDesc =>
@ -1571,6 +1542,12 @@ class AppLocalizationsDe extends AppLocalizations {
String get verificationBadgeRedDesc =>
'Ein Kontakt, dessen Identität noch *nicht überprüft* wurde.';
@override
String get scanNow => 'Jetzt scannen';
@override
String get openQrCode => 'QR-Code öffnen';
@override
String get deleteVerificationTitle => 'Verifizierung löschen?';
@ -1594,17 +1571,6 @@ class AppLocalizationsDe extends AppLocalizations {
return '$_temp0';
}
@override
String mutualGroupsSentMessages(num count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count Nachrichten gesendet',
one: '1 Nachricht gesendet',
);
return '$_temp0';
}
@override
String chatEntryFlameRestored(Object count) {
return '$count Flammen wiederhergestellt';
@ -1650,9 +1616,6 @@ class AppLocalizationsDe extends AppLocalizations {
String get settingsTypingIndicationSubtitle =>
'Bei deaktivierten Tipp-Indikatoren kannst du nicht sehen, wenn andere gerade eine Nachricht tippen.';
@override
String get scanQrOrShow => 'QR scannen / anzeigen';
@override
String get contactActionBlock => 'Blockieren';
@ -1684,9 +1647,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get userDiscoverySettingsTitle => 'Gemeinsame Freunde';
@override
String get userDiscoveryWhyThisIsUsed => 'Warum dies verwendet wird';
@override
String get userDiscoveryFeatureOffers => 'Dein Nutzen auf einen Blick';
@ -1854,9 +1814,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get back => 'Zurück';
@override
String get onboardingExampleLabel => 'Beispiel';
@override
String makerChangedUsername(Object maker, Object oldName, Object newName) {
return '$maker hat den Benutzernamen von $oldName zu $newName geändert.';
@ -1957,9 +1914,6 @@ class AppLocalizationsDe extends AppLocalizations {
@override
String get dragToZoom => 'Zum Zoomen ziehen';
@override
String get showUsername => 'Benutzernamen anzeigen';
@override
String get onboardingProfileSelectionTitle => 'Wähle deinen Setup-Weg';
@ -2094,20 +2048,6 @@ class AppLocalizationsDe extends AppLocalizations {
String get importGalleryNoImagesFoundDesc =>
'Es befinden sich keine Bilder auf deinem Gerät.';
@override
String get importGalleryShowAllImages => 'Alle Bilder anzeigen';
@override
String get importGalleryShowTwonlyAlbum => 'twonly-Album anzeigen';
@override
String get importGalleryToggleDescAll =>
'Es werden alle Bilder auf deinem Gerät angezeigt.';
@override
String get importGalleryToggleDescTwonly =>
'Es wird das \"twonly\"-Album angezeigt.';
@override
String get importGalleryFilterTwonly => 'Nur das twonly-Album anzeigen';

View file

@ -32,13 +32,6 @@ class AppLocalizationsEn extends AppLocalizations {
String get onboardingFocusBody =>
'Say goodbye to addictive features! twonly was created for sharing moments, free from useless distractions or ads.';
@override
String get onboardingSendTwonliesTitle => 'Send twonlies';
@override
String get onboardingSendTwonliesBody =>
'Share moments securely with your partner. twonly ensures that only your partner can open it, keeping your moments with your partner a two(o)nly thing!';
@override
String get onboardingNotProductTitle => 'You are not the product!';
@ -46,9 +39,6 @@ class AppLocalizationsEn extends AppLocalizations {
String get onboardingNotProductBody =>
'twonly is financed by donations and an optional subscription. Your data will never be sold.';
@override
String get onboardingGetStartedTitle => 'Let\'s go!';
@override
String get registerUsernameSlogan => 'Create your account';
@ -125,17 +115,9 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get searchUsernameNotFound => 'Username not found';
@override
String searchUsernameNotFoundBody(Object username) {
return 'There is no user with the username \"$username\" registered';
}
@override
String get searchUsernameNewFollowerTitle => 'Open requests';
@override
String get chatListViewSearchUserNameBtn => 'Add your first twonly contact!';
@override
String get chatListDetailInput => 'Type a message';
@ -226,10 +208,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get settingsStorageDataStoreInGTitle => 'Store in Gallery';
@override
String get settingsStorageDataStoreInGSubtitle =>
'Store saved images additional in the systems gallery.';
@override
String get settingsStorageDataMediaAutoDownload => 'Media auto-download';
@ -276,11 +254,11 @@ class AppLocalizationsEn extends AppLocalizations {
String get settingsPrivacy => 'Privacy & Security';
@override
String get settingsPrivacyBlockUsers => 'Block users';
String get settingsPrivacyBlockUsers => 'Block contacts';
@override
String get settingsPrivacyBlockUsersDesc =>
'Blocked users will not be able to communicate with you. You can unblock a blocked user at any time.';
'Blocked contacts will not be able to communicate with you. You can unblock a blocked contact at any time.';
@override
String settingsPrivacyBlockUsersCount(Object len) {
@ -290,10 +268,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get settingsPrivacyProfileSelectionTitle => 'Security Profile';
@override
String get settingsPrivacyProfileSelectionDesc =>
'Choose your setup path and security configuration';
@override
String get securityProfileTitle => 'Security Profile';
@ -455,10 +429,14 @@ class AppLocalizationsEn extends AppLocalizations {
'Your account will be deleted. There is no change to restore it.';
@override
String get contactVerifyNumberTitle => 'Verify contact';
String get contactVerifyNumberTitle => 'Verify contacts';
@override
String get userVerifiedTitle => 'User verified';
String get contactVerifyNumberSubtitle =>
'Verify the identity of your contacts to make sure you are texting the right person.';
@override
String get userVerifiedTitle => 'Contact verified';
@override
String contactVerifiedBy(Object username) {
@ -503,10 +481,10 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get contactBlockBody =>
'A blocked user will no longer be able to send you messages and their profile will be hidden from view. To unblock a user, simply navigate to Settings > Privacy > Blocked Users.';
'A blocked contact will no longer be able to send you messages and their profile will be hidden from view. To unblock a contact, simply navigate to Settings > Privacy > Blocked Contacts.';
@override
String get contactRemove => 'Remove user';
String get contactRemove => 'Remove contact';
@override
String contactRemoveTitle(Object username) {
@ -515,7 +493,7 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get contactRemoveBody =>
'Permanently remove the user. If the user tries to send you a new message, you will have to accept the user again first.';
'Permanently remove the contact. If the contact tries to send you a new message, you will have to accept the contact again first.';
@override
String get undo => 'Undo';
@ -904,7 +882,7 @@ class AppLocalizationsEn extends AppLocalizations {
String get reportUserReason => 'Reporting reason';
@override
String get reportUser => 'Report user';
String get reportUser => 'Report contact';
@override
String get newDeviceRegistered =>
@ -1298,12 +1276,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get draftMessage => 'Draft';
@override
String get exportMemories => 'Export memories (Beta)';
@override
String get importMemories => 'Import memories (Beta)';
@override
String get voiceMessageSlideToCancel => 'Slide to cancel';
@ -1547,7 +1519,7 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get verificationBadgeGreenDesc =>
'A contact you have *personally* verified.';
'A contact you have *personally verified* using the QR code.';
@override
String get verificationBadgeYellowDesc =>
@ -1557,6 +1529,12 @@ class AppLocalizationsEn extends AppLocalizations {
String get verificationBadgeRedDesc =>
'A contact whose identity has *not* yet been verified.';
@override
String get scanNow => 'Scan now';
@override
String get openQrCode => 'Open QR code';
@override
String get deleteVerificationTitle => 'Delete verification?';
@ -1580,17 +1558,6 @@ class AppLocalizationsEn extends AppLocalizations {
return '$_temp0';
}
@override
String mutualGroupsSentMessages(num count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count messages sent',
one: '1 message sent',
);
return '$_temp0';
}
@override
String chatEntryFlameRestored(Object count) {
return '$count flames restored';
@ -1636,9 +1603,6 @@ class AppLocalizationsEn extends AppLocalizations {
String get settingsTypingIndicationSubtitle =>
'When the typing indicator is turned off, you can\'t see when others are typing a message.';
@override
String get scanQrOrShow => 'Scan / Show QR';
@override
String get contactActionBlock => 'Block';
@ -1670,9 +1634,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get userDiscoverySettingsTitle => 'Mutual Friends';
@override
String get userDiscoveryWhyThisIsUsed => 'Why this is used';
@override
String get userDiscoveryFeatureOffers => 'Your benefits at a glance';
@ -1840,9 +1801,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get back => 'Back';
@override
String get onboardingExampleLabel => 'Example';
@override
String makerChangedUsername(Object maker, Object oldName, Object newName) {
return '$maker changed their username from $oldName to $newName.';
@ -1942,9 +1900,6 @@ class AppLocalizationsEn extends AppLocalizations {
@override
String get dragToZoom => 'Drag to Zoom';
@override
String get showUsername => 'Show username';
@override
String get onboardingProfileSelectionTitle => 'Choose your setup path';
@ -2079,18 +2034,6 @@ class AppLocalizationsEn extends AppLocalizations {
String get importGalleryNoImagesFoundDesc =>
'There are no images on your device.';
@override
String get importGalleryShowAllImages => 'Show all images';
@override
String get importGalleryShowTwonlyAlbum => 'Show twonly album';
@override
String get importGalleryToggleDescAll => 'Viewing all images on your device.';
@override
String get importGalleryToggleDescTwonly => 'Viewing the \"twonly\" album.';
@override
String get importGalleryFilterTwonly => 'Only show the twonly-Album';

@ -1 +1 @@
Subproject commit c95e98ca929d630ead028d84e13934b30dbeba3b
Subproject commit 673f6d8c3036d64060b1114912bd5bf5515d5420

View file

@ -1,14 +1,23 @@
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart'
show FaIcon, FontAwesomeIcons;
import 'package:go_router/go_router.dart';
import 'package:twonly/locator.dart';
import 'package:twonly/src/constants/routes.keys.dart';
import 'package:twonly/src/services/profile.service.dart';
import 'package:twonly/src/utils/misc.dart';
import 'package:twonly/src/visual/elements/my_button.element.dart';
import 'package:twonly/src/visual/elements/svg_icon.element.dart';
import 'package:twonly/src/visual/themes/light.dart';
const colorVerificationBadgeYellow = Color.fromARGB(255, 0, 182, 238);
class VerificationBadgeInfo extends StatelessWidget {
const VerificationBadgeInfo({super.key});
const VerificationBadgeInfo({
this.displayButtons = false,
super.key,
});
final bool displayButtons;
@override
Widget build(BuildContext context) {
@ -24,7 +33,44 @@ class VerificationBadgeInfo extends StatelessWidget {
icon: const SvgIcon(assetPath: SvgIcons.verifiedGreen, size: 40),
description: context.lang.verificationBadgeGreenDesc,
boldTextColor: primaryColor,
onTap: () => context.push(Routes.cameraQRScanner),
),
if (displayButtons)
Padding(
padding: const EdgeInsets.only(bottom: 20),
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
IntrinsicWidth(
child: MyButton(
variant: MyButtonVariant.primaryDense,
onPressed: () => context.push(Routes.cameraQRScanner),
child: Row(
children: [
const FaIcon(FontAwesomeIcons.camera),
const SizedBox(width: 6),
Text(context.lang.scanNow),
],
),
),
),
const SizedBox(width: 8),
IntrinsicWidth(
child: MyButton(
variant: MyButtonVariant.primaryDense,
onPressed: () => context.push(Routes.settingsPublicProfile),
child: Row(
children: [
const FaIcon(FontAwesomeIcons.qrcode),
const SizedBox(width: 6),
Text(context.lang.openQrCode),
],
),
),
),
],
),
),
if (userService.currentUser.securityProfile != SecurityProfile.strict ||
userService.currentUser.isUserDiscoveryEnabled)
_buildItem(
@ -52,8 +98,9 @@ class VerificationBadgeInfo extends StatelessWidget {
required Widget icon,
required String description,
required Color boldTextColor,
VoidCallback? onTap,
}) {
return Padding(
final item = Padding(
padding: const EdgeInsets.symmetric(vertical: 25),
child: Row(
children: [
@ -74,5 +121,14 @@ class VerificationBadgeInfo extends StatelessWidget {
],
),
);
if (onTap != null) {
return GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: onTap,
child: item,
);
}
return item;
}
}

View file

@ -18,9 +18,9 @@ import 'package:twonly/src/visual/views/settings/privacy/user_discovery/componen
enum SetupPages {
profile,
backup,
verificationBadge,
profileSelection,
securityProfile,
verificationBadge,
shareYourFriends,
letYourFriendsFindYou,
}
@ -40,22 +40,23 @@ extension SetupPagesExtension on SetupPages {
return [
SetupPages.profile,
SetupPages.backup,
SetupPages.verificationBadge,
SetupPages.profileSelection,
];
case SetupProfile.maximum:
return [
SetupPages.profile,
SetupPages.backup,
SetupPages.profileSelection,
SetupPages.verificationBadge,
SetupPages.profileSelection,
];
case SetupProfile.customized:
return [
SetupPages.profile,
SetupPages.backup,
SetupPages.verificationBadge,
SetupPages.profileSelection,
SetupPages.securityProfile,
SetupPages.verificationBadge,
SetupPages.shareYourFriends,
SetupPages.letYourFriendsFindYou,
];

View file

@ -1,10 +1,6 @@
import 'package:flutter/material.dart';
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:go_router/go_router.dart';
import 'package:twonly/src/constants/routes.keys.dart';
import 'package:twonly/src/utils/misc.dart';
import 'package:twonly/src/visual/components/verification_badge_info.comp.dart';
import 'package:twonly/src/visual/elements/better_list_title.element.dart';
class VerificationBadeFaqView extends StatefulWidget {
const VerificationBadeFaqView({super.key});
@ -23,18 +19,9 @@ class _VerificationBadeFaqViewState extends State<VerificationBadeFaqView> {
),
body: ListView(
padding: const EdgeInsets.all(40),
children: [
const VerificationBadgeInfo(),
const SizedBox(height: 20),
BetterListTile(
leading: const FaIcon(FontAwesomeIcons.camera),
text: context.lang.scanOtherProfile,
onTap: () => context.push(Routes.cameraQRScanner),
),
BetterListTile(
leading: const FaIcon(FontAwesomeIcons.qrcode),
text: context.lang.openYourOwnQRcode,
onTap: () => context.push(Routes.settingsPublicProfile),
children: const [
VerificationBadgeInfo(
displayButtons: true,
),
],
),

View file

@ -67,8 +67,9 @@ class _PrivacyViewState extends State<PrivacyView> {
),
ListTile(
title: Text(context.lang.contactVerifyNumberTitle),
subtitle: Text(context.lang.contactVerifyNumberSubtitle),
onTap: () async {
await context.push(Routes.settingsPublicProfile);
await context.push(Routes.settingsHelpFaqVerifyBadge);
setState(() {});
},
),

View file

@ -3,7 +3,7 @@ description: "twonly, a privacy-friendly way to connect with friends through sec
publish_to: 'none'
version: 0.2.29+138
version: 0.3.0+139
environment:
sdk: ^3.11.0