1467 lines
40 KiB
Dart
1467 lines
40 KiB
Dart
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_nl.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('nl'),
|
||
];
|
||
|
||
/// No description provided for @appTitle.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'KoolTab'**
|
||
String get appTitle;
|
||
|
||
/// No description provided for @barTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Bar Tabs'**
|
||
String get barTabs;
|
||
|
||
/// No description provided for @products.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Products'**
|
||
String get products;
|
||
|
||
/// No description provided for @addProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Add product'**
|
||
String get addProduct;
|
||
|
||
/// No description provided for @noProductsYet.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No products yet.'**
|
||
String get noProductsYet;
|
||
|
||
/// No description provided for @addFirstProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Add your first product to start selling.'**
|
||
String get addFirstProduct;
|
||
|
||
/// No description provided for @manageProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Manage products'**
|
||
String get manageProducts;
|
||
|
||
/// No description provided for @tabHistory.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Tab history'**
|
||
String get tabHistory;
|
||
|
||
/// No description provided for @refresh.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Refresh'**
|
||
String get refresh;
|
||
|
||
/// No description provided for @settings.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Settings'**
|
||
String get settings;
|
||
|
||
/// No description provided for @logout.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Logout'**
|
||
String get logout;
|
||
|
||
/// No description provided for @openOrSelectTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Open or select a tab first.'**
|
||
String get openOrSelectTab;
|
||
|
||
/// No description provided for @openNewTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Open new tab'**
|
||
String get openNewTab;
|
||
|
||
/// No description provided for @customerGroupName.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Customer / group name'**
|
||
String get customerGroupName;
|
||
|
||
/// No description provided for @cancel.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cancel'**
|
||
String get cancel;
|
||
|
||
/// No description provided for @openTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Open tab'**
|
||
String get openTab;
|
||
|
||
/// No description provided for @couldNotCreateTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not create tab: {error}'**
|
||
String couldNotCreateTab(String error);
|
||
|
||
/// No description provided for @searchByName.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Search by name…'**
|
||
String get searchByName;
|
||
|
||
/// No description provided for @allCustomers.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'All customers'**
|
||
String get allCustomers;
|
||
|
||
/// No description provided for @customer.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Customer'**
|
||
String get customer;
|
||
|
||
/// No description provided for @noClosedTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No closed tabs yet'**
|
||
String get noClosedTabs;
|
||
|
||
/// No description provided for @settingsTitle.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Settings'**
|
||
String get settingsTitle;
|
||
|
||
/// No description provided for @security.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Security'**
|
||
String get security;
|
||
|
||
/// No description provided for @pinRequired.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PIN Required'**
|
||
String get pinRequired;
|
||
|
||
/// No description provided for @changePin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Change PIN'**
|
||
String get changePin;
|
||
|
||
/// No description provided for @appearance.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Appearance'**
|
||
String get appearance;
|
||
|
||
/// No description provided for @language.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Language'**
|
||
String get language;
|
||
|
||
/// No description provided for @languageSystem.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'System default'**
|
||
String get languageSystem;
|
||
|
||
/// No description provided for @languageEnglish.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'English'**
|
||
String get languageEnglish;
|
||
|
||
/// No description provided for @languageDutch.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Dutch'**
|
||
String get languageDutch;
|
||
|
||
/// No description provided for @productGridRows.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product grid rows'**
|
||
String get productGridRows;
|
||
|
||
/// No description provided for @rowsCount.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{count} rows'**
|
||
String rowsCount(int count);
|
||
|
||
/// No description provided for @theme.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Theme'**
|
||
String get theme;
|
||
|
||
/// No description provided for @system.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'System'**
|
||
String get system;
|
||
|
||
/// No description provided for @light.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Light'**
|
||
String get light;
|
||
|
||
/// No description provided for @dark.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Dark'**
|
||
String get dark;
|
||
|
||
/// No description provided for @ugly.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Ugly'**
|
||
String get ugly;
|
||
|
||
/// No description provided for @setPinCode.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Set PIN Code'**
|
||
String get setPinCode;
|
||
|
||
/// No description provided for @enterPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter PIN'**
|
||
String get enterPin;
|
||
|
||
/// No description provided for @enterCurrentPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter Current PIN'**
|
||
String get enterCurrentPin;
|
||
|
||
/// No description provided for @enterNewPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter New PIN'**
|
||
String get enterNewPin;
|
||
|
||
/// No description provided for @fourDigits.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'4 digits'**
|
||
String get fourDigits;
|
||
|
||
/// No description provided for @enterPinFourDigits.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter PIN (4 digits)'**
|
||
String get enterPinFourDigits;
|
||
|
||
/// No description provided for @confirm.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Confirm'**
|
||
String get confirm;
|
||
|
||
/// No description provided for @confirmPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Confirm PIN'**
|
||
String get confirmPin;
|
||
|
||
/// No description provided for @pinExactlyFour.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PIN must be exactly 4 digits'**
|
||
String get pinExactlyFour;
|
||
|
||
/// No description provided for @couldNotSavePin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not save PIN setting.'**
|
||
String get couldNotSavePin;
|
||
|
||
/// No description provided for @editProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Edit product'**
|
||
String get editProduct;
|
||
|
||
/// No description provided for @productName.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product name'**
|
||
String get productName;
|
||
|
||
/// No description provided for @category.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Category'**
|
||
String get category;
|
||
|
||
/// No description provided for @price.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Price'**
|
||
String get price;
|
||
|
||
/// No description provided for @stock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Stock'**
|
||
String get stock;
|
||
|
||
/// No description provided for @lowStockThreshold.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Low stock threshold'**
|
||
String get lowStockThreshold;
|
||
|
||
/// No description provided for @chooseProductImage.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Choose product image'**
|
||
String get chooseProductImage;
|
||
|
||
/// No description provided for @changeImage.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Change image'**
|
||
String get changeImage;
|
||
|
||
/// No description provided for @deleteProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Delete product?'**
|
||
String get deleteProduct;
|
||
|
||
/// No description provided for @deleteProductDescription.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'This will remove the product from the product list.'**
|
||
String get deleteProductDescription;
|
||
|
||
/// No description provided for @delete.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Delete'**
|
||
String get delete;
|
||
|
||
/// No description provided for @productNotFound.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product not found.'**
|
||
String get productNotFound;
|
||
|
||
/// No description provided for @chooseImage.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Choose a product image.'**
|
||
String get chooseImage;
|
||
|
||
/// No description provided for @selectCategory.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Please select a category.'**
|
||
String get selectCategory;
|
||
|
||
/// No description provided for @enterProductName.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter a product name.'**
|
||
String get enterProductName;
|
||
|
||
/// No description provided for @version.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Version {version}'**
|
||
String version(String version);
|
||
|
||
/// No description provided for @selectTabToAddItems.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Select a tab to add items'**
|
||
String get selectTabToAddItems;
|
||
|
||
/// No description provided for @openTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Open tabs'**
|
||
String get openTabs;
|
||
|
||
/// No description provided for @selectOrOpenTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Select or open a tab'**
|
||
String get selectOrOpenTab;
|
||
|
||
/// No description provided for @noOpenTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No open tabs'**
|
||
String get noOpenTabs;
|
||
|
||
/// No description provided for @edit.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Edit'**
|
||
String get edit;
|
||
|
||
/// No description provided for @close.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Close'**
|
||
String get close;
|
||
|
||
/// No description provided for @tabItemSummary.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{count, plural, =1 {1 item - {total}} other {{count} items - {total}}}'**
|
||
String tabItemSummary(int count, String total);
|
||
|
||
/// No description provided for @tabItemCount.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{count, plural, =1 {1 item} other {{count} items}}'**
|
||
String tabItemCount(int count);
|
||
|
||
/// No description provided for @tapProductsToAdd.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Tap products to add them'**
|
||
String get tapProductsToAdd;
|
||
|
||
/// No description provided for @total.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total'**
|
||
String get total;
|
||
|
||
/// No description provided for @closeTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Close tab'**
|
||
String get closeTab;
|
||
|
||
/// No description provided for @productStockSummary.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{category} • {price} • Stock: {stock}'**
|
||
String productStockSummary(String category, String price, int stock);
|
||
|
||
/// No description provided for @outOfStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'OUT OF STOCK'**
|
||
String get outOfStock;
|
||
|
||
/// No description provided for @tabsYouCloseAppearHere.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Tabs you close will show up here.'**
|
||
String get tabsYouCloseAppearHere;
|
||
|
||
/// No description provided for @enterPinSubtitle.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'You’ll use this to unlock the app'**
|
||
String get enterPinSubtitle;
|
||
|
||
/// No description provided for @confirmPinSubtitle.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter the same PIN again'**
|
||
String get confirmPinSubtitle;
|
||
|
||
/// No description provided for @createPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Create a PIN'**
|
||
String get createPin;
|
||
|
||
/// No description provided for @pinsDidNotMatch.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PINs didn’t match. Try again.'**
|
||
String get pinsDidNotMatch;
|
||
|
||
/// No description provided for @somethingWentWrong.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Something went wrong.'**
|
||
String get somethingWentWrong;
|
||
|
||
/// No description provided for @incorrectPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Incorrect PIN.'**
|
||
String get incorrectPin;
|
||
|
||
/// No description provided for @enterPrice.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter a price.'**
|
||
String get enterPrice;
|
||
|
||
/// No description provided for @enterValidPrice.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter a valid price.'**
|
||
String get enterValidPrice;
|
||
|
||
/// No description provided for @enterValidStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter a valid stock amount.'**
|
||
String get enterValidStock;
|
||
|
||
/// No description provided for @enterValidThreshold.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Enter a valid threshold.'**
|
||
String get enterValidThreshold;
|
||
|
||
/// No description provided for @couldNotLoadProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load product.'**
|
||
String get couldNotLoadProduct;
|
||
|
||
/// No description provided for @couldNotSaveProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not save product.'**
|
||
String get couldNotSaveProduct;
|
||
|
||
/// No description provided for @couldNotDeleteProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not delete product.'**
|
||
String get couldNotDeleteProduct;
|
||
|
||
/// No description provided for @paymentMethod.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Payment method'**
|
||
String get paymentMethod;
|
||
|
||
/// No description provided for @cash.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cash'**
|
||
String get cash;
|
||
|
||
/// No description provided for @payconiq.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Payconiq'**
|
||
String get payconiq;
|
||
|
||
/// No description provided for @closeTabForCustomer.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Close tab for {customerName}?'**
|
||
String closeTabForCustomer(String customerName);
|
||
|
||
/// No description provided for @currentTotal.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Current total: {total}'**
|
||
String currentTotal(String total);
|
||
|
||
/// No description provided for @couldNotCloseTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not close tab.'**
|
||
String get couldNotCloseTab;
|
||
|
||
/// No description provided for @closingTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Closing tab…'**
|
||
String get closingTab;
|
||
|
||
/// No description provided for @slideToConfirmClosing.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Slide to confirm closing'**
|
||
String get slideToConfirmClosing;
|
||
|
||
/// No description provided for @errorScreen.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Error Screen'**
|
||
String get errorScreen;
|
||
|
||
/// No description provided for @unexpectedError.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'An unexpected error occurred.\nPlease try restarting the app.'**
|
||
String get unexpectedError;
|
||
|
||
/// No description provided for @goToBarScreen.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Go to bar screen'**
|
||
String get goToBarScreen;
|
||
|
||
/// No description provided for @updates.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Updates'**
|
||
String get updates;
|
||
|
||
/// No description provided for @checkingForUpdates.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Checking for updates…'**
|
||
String get checkingForUpdates;
|
||
|
||
/// No description provided for @checkForUpdates.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Check for updates'**
|
||
String get checkForUpdates;
|
||
|
||
/// No description provided for @latestVersion.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'You are already on the latest version.'**
|
||
String get latestVersion;
|
||
|
||
/// No description provided for @updateCheckFailed.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update check failed.'**
|
||
String get updateCheckFailed;
|
||
|
||
/// No description provided for @updateAvailable.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update available'**
|
||
String get updateAvailable;
|
||
|
||
/// No description provided for @versionAvailable.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Version {version} is available.'**
|
||
String versionAvailable(String version);
|
||
|
||
/// No description provided for @later.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Later'**
|
||
String get later;
|
||
|
||
/// No description provided for @update.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update'**
|
||
String get update;
|
||
|
||
/// No description provided for @updateReady.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update ready'**
|
||
String get updateReady;
|
||
|
||
/// No description provided for @updateReadyDescription.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'The update has been downloaded and installed. Restart the app now to apply the changes.'**
|
||
String get updateReadyDescription;
|
||
|
||
/// No description provided for @restartApp.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Restart app'**
|
||
String get restartApp;
|
||
|
||
/// No description provided for @updateFailed.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update failed'**
|
||
String get updateFailed;
|
||
|
||
/// No description provided for @retry.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Retry'**
|
||
String get retry;
|
||
|
||
/// No description provided for @updating.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Updating'**
|
||
String get updating;
|
||
|
||
/// No description provided for @installing.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Installing'**
|
||
String get installing;
|
||
|
||
/// No description provided for @doNotCloseDuringUpdate.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Do not close the app during the update'**
|
||
String get doNotCloseDuringUpdate;
|
||
|
||
/// No description provided for @cancelUpdate.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cancel update?'**
|
||
String get cancelUpdate;
|
||
|
||
/// No description provided for @cancelUpdateDescription.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'The update is in progress. If you leave now, the app may become unstable.'**
|
||
String get cancelUpdateDescription;
|
||
|
||
/// No description provided for @continueUpdate.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Continue update'**
|
||
String get continueUpdate;
|
||
|
||
/// No description provided for @cancelUpdateAction.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cancel update'**
|
||
String get cancelUpdateAction;
|
||
|
||
/// No description provided for @preparingDownload.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Preparing download…'**
|
||
String get preparingDownload;
|
||
|
||
/// No description provided for @simulatedDownloadError.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Simulated download error (network timeout)'**
|
||
String get simulatedDownloadError;
|
||
|
||
/// No description provided for @downloadFailed.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Download failed'**
|
||
String get downloadFailed;
|
||
|
||
/// No description provided for @downloading.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Downloading {percent}%'**
|
||
String downloading(String percent);
|
||
|
||
/// No description provided for @installingUpdate.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Installing update…'**
|
||
String get installingUpdate;
|
||
|
||
/// No description provided for @updateInstalledRestarting.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update installed! Restarting…'**
|
||
String get updateInstalledRestarting;
|
||
|
||
/// No description provided for @installationFailed.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Installation failed'**
|
||
String get installationFailed;
|
||
|
||
/// No description provided for @updateAlreadyInProgress.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update already in progress'**
|
||
String get updateAlreadyInProgress;
|
||
|
||
/// No description provided for @updateAlreadyRunning.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Update already running'**
|
||
String get updateAlreadyRunning;
|
||
|
||
/// No description provided for @genericError.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'An unexpected error occurred.'**
|
||
String get genericError;
|
||
|
||
/// No description provided for @couldNotLoadBar.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load bar screen.'**
|
||
String get couldNotLoadBar;
|
||
|
||
/// No description provided for @couldNotCreateTabMessage.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not create tab.'**
|
||
String get couldNotCreateTabMessage;
|
||
|
||
/// No description provided for @productOutOfStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product is out of stock.'**
|
||
String get productOutOfStock;
|
||
|
||
/// No description provided for @couldNotAddProductToTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not add product to tab.'**
|
||
String get couldNotAddProductToTab;
|
||
|
||
/// No description provided for @couldNotUpdateQuantity.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not update item quantity.'**
|
||
String get couldNotUpdateQuantity;
|
||
|
||
/// No description provided for @couldNotReloadTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not reload tabs.'**
|
||
String get couldNotReloadTabs;
|
||
|
||
/// No description provided for @couldNotLoadHistory.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load tab history.'**
|
||
String get couldNotLoadHistory;
|
||
|
||
/// No description provided for @couldNotLoadMoreTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load more tabs.'**
|
||
String get couldNotLoadMoreTabs;
|
||
|
||
/// No description provided for @couldNotLoadProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load products.'**
|
||
String get couldNotLoadProducts;
|
||
|
||
/// No description provided for @couldNotAddProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not add product.'**
|
||
String get couldNotAddProduct;
|
||
|
||
/// No description provided for @couldNotUpdateProduct.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not update product.'**
|
||
String get couldNotUpdateProduct;
|
||
|
||
/// No description provided for @couldNotDeleteProductMessage.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not delete product.'**
|
||
String get couldNotDeleteProductMessage;
|
||
|
||
/// No description provided for @couldNotCheckPinStatus.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not check PIN status.'**
|
||
String get couldNotCheckPinStatus;
|
||
|
||
/// No description provided for @couldNotVerifyPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not verify PIN.'**
|
||
String get couldNotVerifyPin;
|
||
|
||
/// No description provided for @currentPinIncorrect.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Current PIN is incorrect.'**
|
||
String get currentPinIncorrect;
|
||
|
||
/// No description provided for @couldNotLoadSettings.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not load settings.'**
|
||
String get couldNotLoadSettings;
|
||
|
||
/// No description provided for @couldNotSaveSettings.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Could not save settings.'**
|
||
String get couldNotSaveSettings;
|
||
|
||
/// No description provided for @downloadFailedWithDetail.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Download failed.'**
|
||
String get downloadFailedWithDetail;
|
||
|
||
/// No description provided for @installationFailedWithDetail.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Installation failed.'**
|
||
String get installationFailedWithDetail;
|
||
|
||
/// No description provided for @devMenu.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Dev Menu'**
|
||
String get devMenu;
|
||
|
||
/// No description provided for @dataManagement.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Data Management'**
|
||
String get dataManagement;
|
||
|
||
/// No description provided for @clearOpenTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear all open tabs'**
|
||
String get clearOpenTabs;
|
||
|
||
/// No description provided for @clearClosedHistory.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear closed tab history'**
|
||
String get clearClosedHistory;
|
||
|
||
/// No description provided for @seedDefaultProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Seed default products'**
|
||
String get seedDefaultProducts;
|
||
|
||
/// No description provided for @onlySeedsWhenEmpty.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Only seeds if table is empty'**
|
||
String get onlySeedsWhenEmpty;
|
||
|
||
/// No description provided for @clearAndReseedProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear & reseed products'**
|
||
String get clearAndReseedProducts;
|
||
|
||
/// No description provided for @wipesAndReseeds.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Wipes all products, then seeds defaults'**
|
||
String get wipesAndReseeds;
|
||
|
||
/// No description provided for @clearAllProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear all products'**
|
||
String get clearAllProducts;
|
||
|
||
/// No description provided for @clearProductImages.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear product images'**
|
||
String get clearProductImages;
|
||
|
||
/// No description provided for @deletesProductImages.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Deletes images from product_images folder'**
|
||
String get deletesProductImages;
|
||
|
||
/// No description provided for @debugging.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Debugging'**
|
||
String get debugging;
|
||
|
||
/// No description provided for @resetPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Reset PIN'**
|
||
String get resetPin;
|
||
|
||
/// No description provided for @removePinLock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Remove PIN lock'**
|
||
String get removePinLock;
|
||
|
||
/// No description provided for @toggleDebugOverlay.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Toggle debug overlay'**
|
||
String get toggleDebugOverlay;
|
||
|
||
/// No description provided for @showFpsMemoryWidgets.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Show FPS, memory, widget count'**
|
||
String get showFpsMemoryWidgets;
|
||
|
||
/// No description provided for @errorScreenMenu.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Error screen'**
|
||
String get errorScreenMenu;
|
||
|
||
/// No description provided for @viewErrorScreen.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'View the error screen UI'**
|
||
String get viewErrorScreen;
|
||
|
||
/// No description provided for @featureToggles.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Feature Toggles'**
|
||
String get featureToggles;
|
||
|
||
/// No description provided for @simulateUpdateDownload.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Simulate update download'**
|
||
String get simulateUpdateDownload;
|
||
|
||
/// No description provided for @openDownloadProgress.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Open the download progress screen'**
|
||
String get openDownloadProgress;
|
||
|
||
/// No description provided for @testingHelpers.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Testing Helpers'**
|
||
String get testingHelpers;
|
||
|
||
/// No description provided for @createTestTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Create test tab'**
|
||
String get createTestTab;
|
||
|
||
/// No description provided for @addRandomItems.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Add tab with random items'**
|
||
String get addRandomItems;
|
||
|
||
/// No description provided for @addTestProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Add 100 test products'**
|
||
String get addTestProducts;
|
||
|
||
/// No description provided for @stressTestGrid.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Stress test product grid'**
|
||
String get stressTestGrid;
|
||
|
||
/// No description provided for @simulateLowStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Simulate low stock'**
|
||
String get simulateLowStock;
|
||
|
||
/// No description provided for @setProductsBelowThreshold.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Set all products below threshold'**
|
||
String get setProductsBelowThreshold;
|
||
|
||
/// No description provided for @generateMockOrders.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Generate 100 mock orders'**
|
||
String get generateMockOrders;
|
||
|
||
/// No description provided for @randomCustomersItemsAmounts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Random customers, items, and amounts'**
|
||
String get randomCustomersItemsAmounts;
|
||
|
||
/// No description provided for @performance.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Performance'**
|
||
String get performance;
|
||
|
||
/// No description provided for @clearImageCache.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear image cache'**
|
||
String get clearImageCache;
|
||
|
||
/// No description provided for @reloadProductImages.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Reload product images'**
|
||
String get reloadProductImages;
|
||
|
||
/// No description provided for @debugOverlay.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Debug Overlay'**
|
||
String get debugOverlay;
|
||
|
||
/// No description provided for @debugOverlayDescription.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'The debug overlay shows FPS, memory usage, and widget counts. Enable it via Flutter DevTools in debug mode.'**
|
||
String get debugOverlayDescription;
|
||
|
||
/// No description provided for @ok.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'OK'**
|
||
String get ok;
|
||
|
||
/// No description provided for @simulateUpdate.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Simulate update'**
|
||
String get simulateUpdate;
|
||
|
||
/// No description provided for @chooseSimulationMode.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Choose a simulation mode:'**
|
||
String get chooseSimulationMode;
|
||
|
||
/// No description provided for @successfulDownload.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Successful download'**
|
||
String get successfulDownload;
|
||
|
||
/// No description provided for @progressThenInstall.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Progress 0→100%, then install, then done'**
|
||
String get progressThenInstall;
|
||
|
||
/// No description provided for @downloadError.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Download error'**
|
||
String get downloadError;
|
||
|
||
/// No description provided for @failsWithNetworkTimeout.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Fails at 50% with a network timeout'**
|
||
String get failsWithNetworkTimeout;
|
||
|
||
/// No description provided for @realDownloadWillFail.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Real download (will fail)'**
|
||
String get realDownloadWillFail;
|
||
|
||
/// No description provided for @attemptsFakeUrl.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Attempts real OTA with fake URL'**
|
||
String get attemptsFakeUrl;
|
||
|
||
/// No description provided for @categoryBeer.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Beer'**
|
||
String get categoryBeer;
|
||
|
||
/// No description provided for @categoryWine.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Wine'**
|
||
String get categoryWine;
|
||
|
||
/// No description provided for @categorySoftDrinks.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Soft drinks'**
|
||
String get categorySoftDrinks;
|
||
|
||
/// No description provided for @categoryCocktails.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cocktails'**
|
||
String get categoryCocktails;
|
||
|
||
/// No description provided for @categorySnacks.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Snacks'**
|
||
String get categorySnacks;
|
||
|
||
/// No description provided for @categoryCoffee.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Coffee'**
|
||
String get categoryCoffee;
|
||
|
||
/// No description provided for @categoryTea.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Tea'**
|
||
String get categoryTea;
|
||
|
||
/// No description provided for @categoryOther.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Other'**
|
||
String get categoryOther;
|
||
|
||
/// No description provided for @devActionClearedOpenTabs.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cleared all open tabs'**
|
||
String get devActionClearedOpenTabs;
|
||
|
||
/// No description provided for @devActionClearedHistory.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cleared closed tab history'**
|
||
String get devActionClearedHistory;
|
||
|
||
/// No description provided for @devActionClearedProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cleared all products'**
|
||
String get devActionClearedProducts;
|
||
|
||
/// No description provided for @devActionSeededProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Seeded {count} products'**
|
||
String devActionSeededProducts(int count);
|
||
|
||
/// No description provided for @devActionReseededProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cleared and reseeded {count} products'**
|
||
String devActionReseededProducts(int count);
|
||
|
||
/// No description provided for @devActionImagesCleared.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product images cleared'**
|
||
String get devActionImagesCleared;
|
||
|
||
/// No description provided for @devActionResetPin.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PIN reset (no PIN required)'**
|
||
String get devActionResetPin;
|
||
|
||
/// No description provided for @devActionNoProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No products available'**
|
||
String get devActionNoProducts;
|
||
|
||
/// No description provided for @devActionImagesReloaded.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Product images reloaded'**
|
||
String get devActionImagesReloaded;
|
||
|
||
/// No description provided for @devActionCacheCleared.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Image cache cleared (no-op in debug mode)'**
|
||
String get devActionCacheCleared;
|
||
|
||
/// No description provided for @devActionLowStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Simulated low stock for {count} products'**
|
||
String devActionLowStock(int count);
|
||
|
||
/// No description provided for @devActionTestTab.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Created test tab with {count} items'**
|
||
String devActionTestTab(int count);
|
||
|
||
/// No description provided for @devActionTestProducts.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Added {count} test products'**
|
||
String devActionTestProducts(int count);
|
||
|
||
/// No description provided for @devActionMockOrders.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Generated {orders} mock orders across {customers} customers'**
|
||
String devActionMockOrders(int orders, int customers);
|
||
|
||
/// No description provided for @devActionFailedImages.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Failed to clear images.'**
|
||
String get devActionFailedImages;
|
||
|
||
/// No description provided for @devActionResetStock.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Reset stock for {count} products'**
|
||
String devActionResetStock(int count);
|
||
|
||
/// No description provided for @paymentCash.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cash'**
|
||
String get paymentCash;
|
||
|
||
/// No description provided for @paymentPayconiq.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Payconiq'**
|
||
String get paymentPayconiq;
|
||
|
||
/// No description provided for @simulatedUpdateNotes.
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Bug fixes and performance improvements.'**
|
||
String get simulatedUpdateNotes;
|
||
}
|
||
|
||
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', 'nl'].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 'nl':
|
||
return AppLocalizationsNl();
|
||
}
|
||
|
||
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.',
|
||
);
|
||
}
|