Skip to content

Commit

Permalink
Merge branch 'release/v4.1.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
adocyn committed Mar 28, 2023
2 parents 46f2a33 + 5c667d3 commit e33e5ac
Show file tree
Hide file tree
Showing 11 changed files with 452 additions and 278 deletions.
25 changes: 17 additions & 8 deletions TwoFAS/TwoFAS.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -1618,6 +1618,10 @@
C26D146E2263C5B500599101 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
C26D147C2263D4D900599101 /* TimerHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimerHandler.swift; sourceTree = "<group>"; };
C26D1AC42600041400D3D868 /* UIImage+.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIImage+.swift"; sourceTree = "<group>"; };
C26DE43A29C7B9ED003D0804 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/TwoFASWidget.strings; sourceTree = "<group>"; };
C26DE43B29C7B9ED003D0804 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = "<group>"; };
C26DE43C29C7B9EE003D0804 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = "<group>"; };
C26DE43D29C7B9EE003D0804 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = "<group>"; };
C270365B293E9DDC00659CBF /* TokensModuleInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TokensModuleInteractor.swift; sourceTree = "<group>"; };
C2712217288D607D002F2018 /* ProtectionInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProtectionInteractor.swift; sourceTree = "<group>"; };
C271B64727BAE67500D0D743 /* ComposeServiceModuleInteractor.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ComposeServiceModuleInteractor.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -6799,6 +6803,7 @@
Base,
de,
"pt-PT",
fr,
);
mainGroup = C236666A1FB2644900989ACA;
packageReferences = (
Expand Down Expand Up @@ -8117,6 +8122,7 @@
C225E613241CFCD10041C238 /* en */,
C263F46E299060FD009B0837 /* de */,
C2FDC8B529B5379B00623145 /* pt-PT */,
C26DE43C29C7B9EE003D0804 /* fr */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
Expand All @@ -8127,6 +8133,7 @@
C225E616241CFCE90041C238 /* en */,
C263F46D299060FC009B0837 /* de */,
C2FDC8B429B5379A00623145 /* pt-PT */,
C26DE43B29C7B9ED003D0804 /* fr */,
);
name = Localizable.strings;
sourceTree = "<group>";
Expand All @@ -8146,6 +8153,7 @@
C284B41926BC700900321AC9 /* en */,
C263F46C299060FC009B0837 /* de */,
C2FDC8B329B5379A00623145 /* pt-PT */,
C26DE43A29C7B9ED003D0804 /* fr */,
);
name = TwoFASWidget.intentdefinition;
sourceTree = "<group>";
Expand All @@ -8156,6 +8164,7 @@
C2A7B99826B7077400055738 /* en */,
C263F46F299060FD009B0837 /* de */,
C2FDC8B629B5379B00623145 /* pt-PT */,
C26DE43D29C7B9EE003D0804 /* fr */,
);
name = Localizable.strings;
sourceTree = "<group>";
Expand Down Expand Up @@ -8545,7 +8554,7 @@
"@executable_path/Frameworks",
);
MACH_O_TYPE = mh_execute;
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
OTHER_LDFLAGS = (
"$(OTHER_LDFLAGS)",
Expand Down Expand Up @@ -8586,7 +8595,7 @@
"@executable_path/Frameworks",
);
MACH_O_TYPE = mh_execute;
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
OTHER_LDFLAGS = (
"$(OTHER_LDFLAGS)",
"-ObjC",
Expand Down Expand Up @@ -8860,7 +8869,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASAuth;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
Expand Down Expand Up @@ -8888,7 +8897,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASAuth;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
Expand Down Expand Up @@ -9191,7 +9200,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASWidget;
Expand Down Expand Up @@ -9221,7 +9230,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASWidget;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand All @@ -9248,7 +9257,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASServiceIntent;
Expand Down Expand Up @@ -9276,7 +9285,7 @@
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 4.1.1;
MARKETING_VERSION = 4.1.2;
MTL_FAST_MATH = YES;
PRODUCT_BUNDLE_IDENTIFIER = com.twofas.org.TwoFASServiceIntent;
PRODUCT_NAME = "$(TARGET_NAME)";
Expand Down
53 changes: 49 additions & 4 deletions TwoFAS/TwoFAS/Other/Generated/T.generated.swift
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,9 @@ internal enum T {
internal static let backupNoticeCta = T.tr("Localizable", "backup_notice_cta", fallback: "Turn On")
/// Maybe Later
internal static let backupNoticeLater = T.tr("Localizable", "backup_notice_later", fallback: "Maybe Later")
/// Turn on 2FAS Backup and keep your codes secure in Google Drive.
internal static let backupNoticeMsg = T.tr("Localizable", "backup_notice_msg", fallback: "Turn on 2FAS Backup and keep your codes secure in Google Drive.")
/// Turn on 2FAS Backup. In case of resetting
/// or losing your phone, you will be able to restore all your tokens.
internal static let backupNoticeMsg = T.tr("Localizable", "backup_notice_msg", fallback: "Turn on 2FAS Backup. In case of resetting\nor losing your phone, you will be able to restore all your tokens.")
/// 2FAS Backup
internal static let backupNoticeTitle = T.tr("Localizable", "backup_notice_title", fallback: "2FAS Backup")
/// Google account
Expand Down Expand Up @@ -225,6 +226,12 @@ internal enum T {
/// 2FAS Authenticator
internal static let name = T.tr("Localizable", "app__name", fallback: "2FAS Authenticator")
}
internal enum Appearance {
/// Active search on startup
internal static let activeSearchDescription = T.tr("Localizable", "appearance__active_search_description", fallback: "Active search on startup")
/// Active search
internal static let toggleActiveSearch = T.tr("Localizable", "appearance__toggle_active_search", fallback: "Active search")
}
internal enum Backup {
/// 2FAS Backup
internal static let _2fasBackup = T.tr("Localizable", "backup__2fas_backup", fallback: "2FAS Backup")
Expand Down Expand Up @@ -326,6 +333,10 @@ internal enum T {
internal static let password = T.tr("Localizable", "backup__password", fallback: "Password")
/// Passwords don't match
internal static let passwordsDontMatch = T.tr("Localizable", "backup__passwords_dont_match", fallback: "Passwords don't match")
/// Go to backup settings
internal static let reminderCta = T.tr("Localizable", "backup__reminder_cta", fallback: "Go to backup settings")
/// Google Drive not synced.
internal static let reminderMsg = T.tr("Localizable", "backup__reminder_msg", fallback: "Google Drive not synced.")
/// Enter the backup password to proceed with remove.
internal static let removePasswordMsg = T.tr("Localizable", "backup__remove_password_msg", fallback: "Enter the backup password to proceed with remove.")
/// Repeat password
Expand Down Expand Up @@ -506,6 +517,8 @@ internal enum T {
internal static let add = T.tr("Localizable", "commons__add", fallback: "Add")
/// Approve
internal static let approve = T.tr("Localizable", "commons__approve", fallback: "Approve")
/// Best match
internal static let bestMatch = T.tr("Localizable", "commons__best_match", fallback: "Best match")
/// Point your camera at the screen to capture the QR code
internal static let cameraTitle = T.tr("Localizable", "commons__camera_title", fallback: "Point your camera at the screen to capture the QR code")
/// Cancel
Expand Down Expand Up @@ -600,6 +613,16 @@ internal enum T {
internal static let outOfDiskSpace = T.tr("Localizable", "error__out_of_disk_space", fallback: "It appears that either you've run out of disk space now, or such an event in the past damaged the database")
}
internal enum Errors {
/// Input can not be empty
internal static let inputEmpty = T.tr("Localizable", "errors__input_empty", fallback: "Input can not be empty")
/// Input must be integer number
internal static let inputIntegerNumber = T.tr("Localizable", "errors__input_integer_number", fallback: "Input must be integer number")
/// Input must be a number
internal static let inputNumber = T.tr("Localizable", "errors__input_number", fallback: "Input must be a number")
/// Input is too long. Limit: %d
internal static func inputTooLong(_ p1: Int) -> String {
return T.tr("Localizable", "errors__input_too_long", p1, fallback: "Input is too long. Limit: %d")
}
/// No application that supports this link
internal static let noApp = T.tr("Localizable", "errors__no_app", fallback: "No application that supports this link")
}
Expand Down Expand Up @@ -838,6 +861,8 @@ internal enum T {
internal static let appBlocking = T.tr("Localizable", "settings__app_blocking", fallback: "Lockout settings")
/// App security
internal static let appSecurity = T.tr("Localizable", "settings__app_security", fallback: "App security")
/// Appearance
internal static let appearance = T.tr("Localizable", "settings__appearance", fallback: "Appearance")
/// Backup and Synchronization
internal static let backupAndSynchronization = T.tr("Localizable", "settings__backup_and_synchronization", fallback: "Backup and Synchronization")
/// Biometric Authentication
Expand All @@ -863,14 +888,18 @@ internal enum T {
internal static let donateTwofas = T.tr("Localizable", "settings__donate_twofas", fallback: "Donate to 2FAS")
/// Donations
internal static let donations = T.tr("Localizable", "settings__donations", fallback: "Donations")
/// Send anonymous crash reports
internal static let enableCrashlytics = T.tr("Localizable", "settings__enable_crashlytics", fallback: "Send anonymous crash reports")
/// Send anonymous crash reports to help 2FAS identify and solve issues in the app (app restart required).
internal static let enableCrashlyticsDescription = T.tr("Localizable", "settings__enable_crashlytics_description", fallback: "Send anonymous crash reports to help 2FAS identify and solve issues in the app (app restart required).")
/// Import tokens
internal static let externalImport = T.tr("Localizable", "settings__external_import", fallback: "Import tokens")
/// Face ID
internal static let faceId = T.tr("Localizable", "settings__face_id", fallback: "Face ID")
/// Are you sure? Without Google Drive sync, you won't be able to restore your tokens if you lose or reset your phone!
internal static let gdSyncDisableConfirm = T.tr("Localizable", "settings__gd_sync_disable_confirm", fallback: "Are you sure? Without Google Drive sync, you won't be able to restore your tokens if you lose or reset your phone!")
/// Google Drive sync info
internal static let gdSyncInfo = T.tr("Localizable", "settings__gd_sync_info", fallback: "Google Drive sync info")
/// Google Drive sync reminder
internal static let gdSyncInfo = T.tr("Localizable", "settings__gd_sync_info", fallback: "Google Drive sync reminder")
/// General
internal static let general = T.tr("Localizable", "settings__general", fallback: "General")
/// Select the maximum number of unsuccessful passcode attempts before locking the application.
Expand All @@ -880,6 +909,12 @@ internal enum T {
internal static let knowledge = T.tr("Localizable", "settings__knowledge", fallback: "Knowledge")
/// Max failed attempts
internal static let limitOfTrials = T.tr("Localizable", "settings__limit_of_trials", fallback: "Max failed attempts")
/// List style
internal static let listStyle = T.tr("Localizable", "settings__list_style", fallback: "List style")
/// Compact
internal static let listStyleOptionCompact = T.tr("Localizable", "settings__list_style_option_compact", fallback: "Compact")
/// Default
internal static let listStyleOptionDefault = T.tr("Localizable", "settings__list_style_option_default", fallback: "Default")
/// Mail services are not available
internal static let mailServicesNotAvailable = T.tr("Localizable", "settings__mail_services_not_available", fallback: "Mail services are not available")
/// No limit
Expand Down Expand Up @@ -938,6 +973,8 @@ internal enum T {
internal static let shareApp = T.tr("Localizable", "settings__share_app", fallback: "Share the app")
/// Show next token
internal static let showNextToken = T.tr("Localizable", "settings__show_next_token", fallback: "Show next token")
/// Show next token when current one is about to expire.
internal static let showNextTokenDesc = T.tr("Localizable", "settings__show_next_token_desc", fallback: "Show next token when current one is about to expire.")
/// An SSL error has occurred and a secure connection to the server cannot be made. Ensure you have the latest version of the app or try to change the network.
internal static let sslErrorDescription = T.tr("Localizable", "settings__ssl_error_description", fallback: "An SSL error has occurred and a secure connection to the server cannot be made. Ensure you have the latest version of the app or try to change the network.")
/// SSL Error
Expand Down Expand Up @@ -1075,6 +1112,8 @@ internal enum T {
internal static let label = T.tr("Localizable", "tokens__label", fallback: "Label")
/// Label (1 or 2 characters):
internal static let labelCharactersTitle = T.tr("Localizable", "tokens__label_characters_title", fallback: "Label (1 or 2 characters):")
/// Manage list
internal static let manageList = T.tr("Localizable", "tokens__manage_list", fallback: "Manage list")
/// Move to Trash
internal static let moveToTrash = T.tr("Localizable", "tokens__move_to_trash", fallback: "Move to Trash")
/// My Tokens
Expand Down Expand Up @@ -1306,6 +1345,12 @@ internal enum T {
/// Use the Add Service button to add a new service
internal static let useAddServiceButtonTitle = T.tr("Localizable", "voiceover__use_add_service_button_title", fallback: "Use the Add Service button to add a new service")
}
internal enum Widgets {
/// Expires in:
internal static let expiresIn = T.tr("Localizable", "widgets__expires_in", fallback: "Expires in:")
/// Widget settings
internal static let settings = T.tr("Localizable", "widgets__settings", fallback: "Widget settings")
}
}
// swiftlint:enable explicit_type_interface function_parameter_count identifier_name line_length
// swiftlint:enable nesting type_body_length type_name vertical_whitespace_opening_braces
Expand Down
Loading

0 comments on commit e33e5ac

Please sign in to comment.