Files
authsec_flutter/lib/l10n/app_localizations.dart
T
2026-10-02 22:52:46 +05:30

374 lines
9.5 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import 'dart:async';
import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:intl/intl.dart' as intl;
import 'app_localizations_en.dart';
import 'app_localizations_hi.dart';
// ignore_for_file: type=lint
/// Callers can lookup localized strings with an instance of AppLocalizations
/// returned by `AppLocalizations.of(context)`.
///
/// Applications need to include `AppLocalizations.delegate()` in their app's
/// `localizationDelegates` list, and the locales they support in the app's
/// `supportedLocales` list. For example:
///
/// ```dart
/// import 'l10n/app_localizations.dart';
///
/// return MaterialApp(
/// localizationsDelegates: AppLocalizations.localizationsDelegates,
/// supportedLocales: AppLocalizations.supportedLocales,
/// home: MyApplicationHome(),
/// );
/// ```
///
/// ## Update pubspec.yaml
///
/// Please make sure to update your pubspec.yaml to include the following
/// packages:
///
/// ```yaml
/// dependencies:
/// # Internationalization support.
/// flutter_localizations:
/// sdk: flutter
/// intl: any # Use the pinned version from flutter_localizations
///
/// # Rest of dependencies
/// ```
///
/// ## iOS Applications
///
/// iOS applications define key application metadata, including supported
/// locales, in an Info.plist file that is built into the application bundle.
/// To configure the locales supported by your app, you’ll need to edit this
/// file.
///
/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file.
/// Then, in the Project Navigator, open the Info.plist file under the Runner
/// project’s Runner folder.
///
/// Next, select the Information Property List item, select Add Item from the
/// Editor menu, then select Localizations from the pop-up menu.
///
/// Select and expand the newly-created Localizations item then, for each
/// locale your application supports, add a new item and select the locale
/// you wish to add from the pop-up menu in the Value field. This list should
/// be consistent with the languages listed in the AppLocalizations.supportedLocales
/// property.
abstract class AppLocalizations {
AppLocalizations(String locale)
: localeName = intl.Intl.canonicalizedLocale(locale.toString());
final String localeName;
static AppLocalizations? of(BuildContext context) {
return Localizations.of<AppLocalizations>(context, AppLocalizations);
}
static const LocalizationsDelegate<AppLocalizations> delegate =
_AppLocalizationsDelegate();
/// A list of this localizations delegate along with the default localizations
/// delegates.
///
/// Returns a list of localizations delegates containing this delegate along with
/// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
/// and GlobalWidgetsLocalizations.delegate.
///
/// Additional delegates can be added by appending to this list in
/// MaterialApp. This list does not have to be used at all if a custom list
/// of delegates is preferred or required.
static const List<LocalizationsDelegate<dynamic>> localizationsDelegates =
<LocalizationsDelegate<dynamic>>[
delegate,
GlobalMaterialLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
];
/// A list of this localizations delegate's supported locales.
static const List<Locale> supportedLocales = <Locale>[
Locale('en'),
Locale('hi')
];
/// Dialog error title
///
/// In en, this message translates to:
/// **'Error'**
String get error;
/// Dialog OK button
///
/// In en, this message translates to:
/// **'OK'**
String get ok;
/// List search hint
///
/// In en, this message translates to:
/// **'Search...'**
String get search;
/// Delete dialog title
///
/// In en, this message translates to:
/// **'Confirm Deletion'**
String get confirmDeletion;
/// Delete dialog body
///
/// In en, this message translates to:
/// **'Are you sure you want to delete?'**
String get deleteConfirmation;
/// Cancel button
///
/// In en, this message translates to:
/// **'Cancel'**
String get cancel;
/// Delete button
///
/// In en, this message translates to:
/// **'Delete'**
String get delete;
/// Audit fields dialog title
///
/// In en, this message translates to:
/// **'Additional Fields'**
String get additionalFields;
/// Close button
///
/// In en, this message translates to:
/// **'Close'**
String get close;
/// Image picker title
///
/// In en, this message translates to:
/// **'Select Image Source'**
String get selectImageSource;
/// Image gallery option
///
/// In en, this message translates to:
/// **'Gallery'**
String get gallery;
/// Camera option
///
/// In en, this message translates to:
/// **'Camera'**
String get camera;
/// Form submit button
///
/// In en, this message translates to:
/// **'Submit'**
String get submit;
/// Form update button
///
/// In en, this message translates to:
/// **'Update'**
String get update;
/// Edit action
///
/// In en, this message translates to:
/// **'Edit'**
String get edit;
/// Logout button
///
/// In en, this message translates to:
/// **'Logout'**
String get logout;
/// Forgot password title
///
/// In en, this message translates to:
/// **'Forgot Password'**
String get forgotPassword;
/// Email label
///
/// In en, this message translates to:
/// **'Email'**
String get email;
/// Email input hint
///
/// In en, this message translates to:
/// **'Enter Email'**
String get enterEmail;
/// Forgot password submit button
///
/// In en, this message translates to:
/// **'Send me an access link'**
String get sendAccessLink;
/// Forgot password success message
///
/// In en, this message translates to:
/// **'An email with a reset link has been sent to {email}.'**
String forgotPasswordSentMessage(String email);
/// Forgot password failure message
///
/// In en, this message translates to:
/// **'Failed to send the reset link. Please try again.'**
String get forgotPasswordFailedMessage;
/// Return to login link
///
/// In en, this message translates to:
/// **'Click here to return to login'**
String get backToLogin;
/// Login email validation
///
/// In en, this message translates to:
/// **'You must provide an email or username'**
String get provideEmailOrUsername;
/// Login username hint
///
/// In en, this message translates to:
/// **'Username or email address'**
String get usernameOrEmailHint;
/// Login password validation
///
/// In en, this message translates to:
/// **'Password cannot be empty'**
String get passwordEmpty;
/// Password hint
///
/// In en, this message translates to:
/// **'Password'**
String get password;
/// Stay logged in checkbox
///
/// In en, this message translates to:
/// **'Stay Logged In'**
String get stayLoggedIn;
/// Login button
///
/// In en, this message translates to:
/// **'Log in'**
String get logIn;
/// Login success snackbar
///
/// In en, this message translates to:
/// **'Login Successful'**
String get loginSuccessful;
/// Missing details snackbar
///
/// In en, this message translates to:
/// **'Please provide all required details'**
String get provideRequiredDetails;
/// Processing snackbar
///
/// In en, this message translates to:
/// **'Processing...'**
String get processing;
/// Login help link
///
/// In en, this message translates to:
/// **'Having trouble logging in?'**
String get loginTrouble;
/// Alternative login divider
///
/// In en, this message translates to:
/// **'Or Continue with'**
String get orContinueWith;
/// Sign up button
///
/// In en, this message translates to:
/// **'Sign Up'**
String get signUp;
/// Google sign in button
///
/// In en, this message translates to:
/// **'Sign in with Google'**
String get signInGoogle;
/// LinkedIn sign in button
///
/// In en, this message translates to:
/// **'Sign in with LinkedIn'**
String get signInLinkedin;
/// Login help screen name
///
/// In en, this message translates to:
/// **'Login Help'**
String get loginHelp;
/// Sign in link on signup
///
/// In en, this message translates to:
/// **'Already have an account? Sign in'**
String get alreadyHaveAccount;
/// Language section label
///
/// In en, this message translates to:
/// **'Language'**
String get language;
}
class _AppLocalizationsDelegate
extends LocalizationsDelegate<AppLocalizations> {
const _AppLocalizationsDelegate();
@override
Future<AppLocalizations> load(Locale locale) {
return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));
}
@override
bool isSupported(Locale locale) =>
<String>['en', 'hi'].contains(locale.languageCode);
@override
bool shouldReload(_AppLocalizationsDelegate old) => false;
}
AppLocalizations lookupAppLocalizations(Locale locale) {
// Lookup logic when only language code is specified.
switch (locale.languageCode) {
case 'en':
return AppLocalizationsEn();
case 'hi':
return AppLocalizationsHi();
}
throw FlutterError(
'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely '
'an issue with the localizations generation tool. Please file an issue '
'on GitHub with a reproducible sample app and the gen-l10n configuration '
'that was used.');
}