// ignore: unused_import import 'package:intl/intl.dart' as intl; import 'app_localizations.dart'; // ignore_for_file: type=lint /// The translations for English (`en`). class AppLocalizationsEn extends AppLocalizations { AppLocalizationsEn([String locale = 'en']) : super(locale); @override String get appTitle => 'Recipe App'; @override String get retryAction => 'Retry'; @override String get mealPlanTitle => 'Meal plan'; @override String get mealPlanLoading => 'Loading meal plan...'; @override String get mealPlanWeekPrevious => 'Previous week'; @override String get mealPlanWeekNext => 'Next week'; @override String get mealPlanWeekCurrent => 'Current week'; @override String get mealPlanDayNoRecipe => 'Nothing planned'; @override String get mealPlanSelectRecipe => 'Choose recipe'; @override String get mealPlanViewRecipe => 'View recipe'; @override String get mealPlanServingsLabel => 'Servings'; @override String get mealPlanResetServings => 'Reset'; @override String get mealPlanSaving => 'Saving...'; @override String mealPlanPlannedRecipes(int count) { String _temp0 = intl.Intl.pluralLogic( count, locale: localeName, other: '# recipes planned', one: '# recipe planned', ); return '$_temp0'; } @override String get mealPlanShoppingTitle => 'Shopping list'; @override String get mealPlanPickRecipeHint => 'Choose recipes above to see the combined ingredient list.'; @override String get mealPlanNoShoppingItems => 'No ingredients to show for this week.'; @override String get mealPlanNoRecipesTitle => 'There are no recipes to plan yet.'; @override String get mealPlanNoRecipesDescription => 'Create at least one recipe first, then add it to the meal plan.'; @override String mealPlanMissingCount(int count) { String _temp0 = intl.Intl.pluralLogic( count, locale: localeName, other: '# missing', one: '# missing', ); return '$_temp0'; } @override String mealPlanPartialCount(int count) { String _temp0 = intl.Intl.pluralLogic( count, locale: localeName, other: '# partially at home', one: '# partially at home', ); return '$_temp0'; } @override String mealPlanEnoughCount(int count) { String _temp0 = intl.Intl.pluralLogic( count, locale: localeName, other: '# at home', one: '# at home', ); return '$_temp0'; } @override String mealPlanPantryCount(int count) { String _temp0 = intl.Intl.pluralLogic( count, locale: localeName, other: '# pantry staples', one: '# pantry staple', ); return '$_temp0'; } @override String get mealPlanAllAtHome => 'You already have everything at home.'; @override String get mealPlanStatusMissing => 'Missing'; @override String get mealPlanStatusPartial => 'Partially at home'; @override String get mealPlanStatusEnough => 'At home'; @override String get mealPlanStatusPantry => 'Pantry staple'; @override String get loginTitle => 'Sign in'; @override String get usernameLabel => 'Username'; @override String get usernameRequired => 'Enter your username.'; @override String get passwordLabel => 'Password'; @override String get passwordRequired => 'Enter your password.'; @override String get loginAction => 'Sign in'; @override String get sessionExpiredError => 'Your session has expired. Sign in again.'; @override String get forbiddenError => 'You do not have permission to use this feature.'; @override String get serverError => 'A server error occurred. Try again in a moment.'; @override String get networkError => 'Network error. Check your connection and try again.'; @override String get unexpectedError => 'An unexpected error occurred.'; @override String get cancelAction => 'Cancel'; @override String get saveAction => 'Save'; @override String get deleteAction => 'Delete'; @override String get addAction => 'Add'; @override String get editTooltip => 'Edit'; @override String get deleteTooltip => 'Delete'; @override String get loadingLabel => 'Loading...'; @override String get cannotBeUndone => 'This action cannot be undone.'; @override String get yesLabel => 'Yes'; @override String get noLabel => 'No'; @override String get commentLabel => 'Comment'; @override String get commentOptionalLabel => 'Comment (optional)'; @override String get openedLabel => 'Opened'; @override String get quantityLabel => 'Quantity *'; @override String get quantityHint => 'Enter quantity'; @override String get invalidNumber => 'Invalid number'; @override String get unitLabel => 'Unit *'; @override String get selectDateLabel => 'Select date'; @override String get locationOptionalLabel => 'Location (optional)'; @override String get locationLabel => 'Location'; @override String get brandOptionalLabel => 'Brand (optional)'; @override String get brandLabel => 'Brand'; @override String get enterPositiveNumber => 'Enter a positive number'; @override String get inventoryTitle => 'Inventory'; @override String get inventoryFilterAndSort => 'Filter and sorting'; @override String get inventorySortLatest => 'Latest added'; @override String get inventorySortNameAsc => 'Name A-Z'; @override String get inventorySortBestBeforeAsc => 'Best before ascending'; @override String get inventorySortBestBeforeDesc => 'Best before descending'; @override String get inventorySortLabel => 'Sort'; @override String get inventoryAllFilter => 'All'; @override String get inventoryEmpty => 'Inventory is empty.'; @override String get inventoryLoading => 'Loading inventory...'; @override String get inventoryCreateTitle => 'Add inventory item'; @override String get inventoryEditTitle => 'Edit inventory item'; @override String get inventorySelectProduct => 'Select a product from the list.'; @override String get inventoryDeleteTitle => 'Delete inventory item?'; @override String get inventoryProductLabel => 'Product'; @override String get inventoryQuantityDisplayLabel => 'Quantity'; @override String get inventoryLocationDisplayLabel => 'Location'; @override String get inventoryBrandDisplayLabel => 'Brand'; @override String get inventoryPurchaseDateLabel => 'Purchase date'; @override String get inventoryBestBeforeLabel => 'Best before'; @override String get inventoryPurchaseDatePrefix => 'Purchase: '; @override String get inventoryBestBeforeDatePrefix => 'Best before: '; @override String get inventoryConsumeAction => 'Consume'; @override String get inventoryHistoryAction => 'Consumption history'; @override String get inventoryConsumeAmountLabel => 'Amount to consume *'; @override String get inventoryHistoryLoading => 'Loading history...'; @override String get inventoryHistoryEmpty => 'No consumption history exists.'; @override String get inventoryRecipesAction => 'Recipes'; @override String inventoryHistoryTitle(String name) { return 'History: $name'; } @override String inventoryConsumeNameTitle(String name) { return 'Consume: $name'; } @override String inventoryAvailableLabel(String quantity, String unit) { return 'Available: $quantity $unit'; } @override String get pantryDescription => 'Products you always expect to have at home.'; @override String get pantryLoading => 'Loading pantry...'; @override String get pantryNoLocation => 'No location selected'; @override String get pantryInvalidQuantity => 'Enter a valid quantity greater than 0.'; @override String get pantryRemoveTitle => 'Remove from pantry?'; @override String get pantryOtherCategory => 'Other'; @override String get pantryGoToRecipesTooltip => 'Go to recipes'; @override String pantryAddToInventoryTitle(String name) { return 'Add \"$name\" to inventory'; } @override String pantryItemAdded(String name) { return '$name added to inventory.'; } @override String pantryRemoveContent(String name) { return 'Do you want to remove \"$name\"?'; } @override String get recipesLoading => 'Loading recipes...'; @override String get recipesEmpty => 'No recipes found'; @override String get recipesEmptyDescription => 'Add a recipe to get started.'; @override String get recipesNewTooltip => 'New recipe'; @override String get recipeDetailLoading => 'Loading recipe...'; @override String get recipeDetailMakePrivate => 'Make private'; @override String get recipeDetailMakePublic => 'Make public'; @override String get recipeDetailShareWithUser => 'Share with user'; @override String get recipeDetailGoToInventory => 'Go to inventory'; @override String get recipeDetailShareTitle => 'Share recipe'; @override String get recipeDetailUsernameLabel => 'Username'; @override String get recipeDetailUsernameHint => 'e.g. anna'; @override String get recipeDetailRemoveShare => 'Remove sharing'; @override String get recipeDetailShareAction => 'Share'; @override String get recipeDetailDeleteTitle => 'Delete recipe?'; @override String get recipeDetailNowPublic => 'The recipe is now public.'; @override String get recipeDetailNowPrivate => 'The recipe is now private.'; @override String get recipeDetailServings => 'servings'; @override String get recipeDetailIngredients => 'Ingredients'; @override String get recipeDetailInstructions => 'Instructions'; @override String get recipeDetailBackToList => 'Back to recipe list'; @override String recipeDetailSharingRemoved(String user) { return 'Sharing removed for $user'; } @override String recipeDetailSharedWith(String user) { return 'Recipe shared with $user'; } @override String recipeDetailDeleteContent(String title) { return 'Do you want to delete \"$title\"? This action cannot be undone.'; } @override String get recipeCreateTitle => 'New recipe'; @override String get recipeCreateReviewIngredients => 'Review ingredients'; @override String get recipeCreateMarkdownPlaceholder => '# Recipe name\n\n## Ingredients\n- 500 g ground beef\n- 1 onion\n\n## Instructions\nFry the onion...'; @override String get recipeCreateMarkdownHint => 'Paste or write a recipe in Markdown format.'; @override String get recipeCreateNameRequired => 'Recipe name cannot be empty.'; @override String get recipeCreateSaveAction => 'Save recipe'; @override String get recipeCreateServingsLabel => 'Number of servings (optional)'; @override String get recipeCreateIngredientsLabel => 'Ingredients'; @override String get recipeCreateIngredientsHint => 'Check ingredients to include and select the right product.'; @override String get recipeCreateNoProductFound => 'No product found — ingredient will be skipped.'; @override String get recipeEditTitle => 'Edit recipe'; @override String get recipeEditNameLabel => 'Recipe name'; @override String get recipeEditNameRequired => 'Enter a recipe name.'; @override String get recipeEditDescriptionLabel => 'Description (optional)'; @override String get recipeEditServingsLabel => 'Number of servings (optional)'; @override String get recipeEditServingsInvalid => 'Enter a whole number.'; @override String get recipeEditInstructionsLabel => 'Instructions (optional)'; @override String get recipeEditIngredientsLabel => 'Ingredients'; @override String get recipeEditIngredientsHint => 'Select product, quantity and unit for each ingredient.'; @override String get recipeEditNoIngredients => 'No ingredients added yet.'; @override String get recipeEditIngredientPrefix => 'Ingredient '; @override String get recipeEditRemoveIngredient => 'Remove ingredient'; @override String get recipeEditMinIngredients => 'At least one ingredient is required.'; @override String get recipeEditSelectProduct => 'Select product for all ingredients.'; @override String get recipeEditValidQuantity => 'Enter valid quantity for all ingredients.'; @override String get recipeEditSelectUnit => 'Select unit for all ingredients.'; @override String get recipeEditSaveChanges => 'Save changes'; @override String get importTabDescription => 'Upload a PDF or image, or enter a recipe link — the recipe will be imported and opened directly in edit mode.'; @override String get importFileTabLabel => 'File / PDF'; @override String get importLinkTabLabel => 'Link'; @override String get importChooseFileAction => 'Choose file (PDF, PNG, JPG, WEBP, BMP)'; @override String get importFileAction => 'Import file'; @override String get importFileProcessing => 'Parsing recipe — this can take up to a minute...'; @override String get importLinkAction => 'Import from link'; @override String get importLinkLabel => 'Recipe link'; @override String get importLinkHint => 'https://example.com/recipe/...'; @override String get importWriteInstead => 'Write recipe instead'; @override String get errorDialogTitle => 'Error'; @override String get errorDialogClose => 'Close'; @override String get errorDialogCopy => 'Copy'; @override String get errorDialogCopied => 'Error message copied!'; @override String get profileMyProfileTab => 'My profile'; @override String get profileDatabaseTab => 'Database'; @override String get profileUsersTab => 'Users'; @override String get profilePendingTab => 'Suggestions'; @override String get profileAiTab => 'AI'; @override String get profileUsernameLabel => 'Username'; @override String get profileEmailLabel => 'E-mail'; @override String get profileEmailHint => 'Enter an e-mail address'; @override String get profileEmailInvalid => 'Invalid e-mail address'; @override String get profileFirstNameLabel => 'First name'; @override String get profileLastNameLabel => 'Last name'; @override String get profileSaveAction => 'Save changes'; @override String get profileSaved => 'Profile saved!'; @override String get profileInventoryTab => 'Inventory'; @override String get profilePantryTab => 'Pantry'; @override String get profileProductsTab => 'Products'; @override String get profileAddInventoryItem => 'Add inventory item'; @override String get profileOpenInventory => 'Open inventory'; @override String get profileInventoryDescription => 'Update and consume items in your inventory.'; @override String get profileOpenPantry => 'Open pantry'; @override String get profilePantryDescription => 'Manage items you always expect to have at home.'; @override String get adminChangeRole => 'Change role'; @override String get adminGivePremium => 'Give Premium'; @override String get adminRemovePremium => 'Remove Premium'; @override String get adminAllowSharing => 'Allow recipe sharing'; @override String get adminBlockSharing => 'Block recipe sharing'; @override String get adminResetPassword => 'Reset password'; @override String get adminTempPasswordTitle => 'Temporary password'; @override String get adminCopyAction => 'Copy'; @override String get adminCloseAction => 'Close'; @override String get adminEmailLabel => 'E-mail'; @override String get adminEmailInvalid => 'Invalid e-mail address.'; @override String get adminEmailUpdated => 'E-mail updated.'; @override String get adminDeleteUser => 'Delete user'; @override String get adminDeleteUserConfirm => 'Delete permanently? This cannot be undone.'; @override String get adminConfirmAction => 'Confirm'; @override String get adminNewUser => 'New user'; @override String get adminNoUsers => 'No users found.'; @override String get adminAdminRole => 'Admin'; @override String get adminUserRole => 'User'; @override String get adminPremiumLabel => 'Premium'; @override String get adminFreeLabel => 'Free'; @override String get adminSharingOn => 'Sharing: On'; @override String get adminSharingOff => 'Sharing: Off'; @override String get adminUsersDescription => 'Manage users directly from the profile page.'; @override String get adminDowngradeToUser => 'Downgrade to user'; @override String get adminUpgradeToAdmin => 'Upgrade to admin'; @override String get adminSortNewest => 'Sort: Newest'; @override String get adminSortOldest => 'Sort: Oldest'; @override String get adminSortNameAsc => 'Sort: Name A-Z'; @override String get adminSortNameDesc => 'Sort: Name Z-A'; @override String get adminSortCategoryAsc => 'Sort: Category A-Z'; @override String get adminSortCategoryDesc => 'Sort: Category Z-A'; @override String get adminSearchProduct => 'Search product'; @override String get adminShowDeleted => 'Show deleted'; @override String get adminOnlyUncategorized => 'Only uncategorized'; @override String get adminBulkSetCategory => 'Bulk: set category'; @override String get adminProductsUpdated => 'Products updated.'; @override String get adminNoAiSuggestions => 'No AI suggestions to show.'; @override String get adminMergeProducts => 'Merge products'; @override String get adminMergeSelectSource => 'Select which product should be moved into the other:'; @override String get adminMergeSource => 'Source: '; @override String get adminMergeTarget => 'Target: '; @override String get adminMergeAction => 'Merge'; @override String get adminDeleteProduct => 'Delete product'; @override String get adminProductDeleted => 'Product deleted.'; @override String get adminProductsRestored => 'Selected products restored.'; @override String get adminProductRestored => 'Product restored.'; @override String get adminNoPendingProducts => 'No pending product suggestions.'; @override String get adminCategoryPrefix => 'Category: '; @override String get adminSuggestedByPrefix => 'Suggested by: '; @override String get adminDatePrefix => 'Date: '; @override String get adminApproveAction => 'Approve'; @override String get adminRejectAction => 'Reject'; @override String get adminPendingDescription => 'Approve or reject pending product suggestions directly from the profile page.'; @override String get adminAiDescription => 'Overview of AI functions exposed by the backend.'; @override String get adminPagePrefix => 'Page: '; @override String get adminNewProductLabel => 'New product'; @override String get adminPasswordMustChange => 'The user must change their password at next login.'; @override String adminChangeRoleConfirm(String username, String role) { return 'Change $username to $role?'; } @override String adminGivePremiumConfirm(String username) { return 'Give Premium for $username'; } @override String adminRemovePremiumConfirm(String username) { return 'Remove Premium for $username'; } @override String adminAllowSharingConfirm(String username) { return 'Allow recipe sharing for $username'; } @override String adminBlockSharingConfirm(String username) { return 'Block recipe sharing for $username'; } @override String adminResetPasswordContent(String username) { return 'Generate a temporary password for $username'; } @override String adminPasswordTitle(String username) { return 'Password for $username'; } @override String adminChangeEmailTitle(String username) { return 'Change e-mail for $username'; } @override String adminDeleteProductContent(String name) { return 'Delete $name? The product can be restored later.'; } @override String adminAiAppliedCount(int count) { return 'AI suggestions applied to $count products.'; } @override String adminCategoryUpdated(String name) { return 'Category updated for $name'; } @override String adminProductUpdated(String name) { return 'Product updated for $name'; } @override String adminPremiumConfirm(String action, String username) { return '$action Premium for $username?'; } @override String adminSharingConfirm(String action, String username) { return '$action recipe sharing for $username?'; } @override String adminResetPasswordConfirm(String username) { return 'Generate a temporary password for $username?'; } @override String adminTempPasswordForUser(String username) { return 'Password for $username:'; } @override String adminEmailEditTitle(String username) { return 'Change e-mail for $username'; } @override String get adminEmailAction => 'Change e-mail'; @override String adminUserCreated(String username) { return 'User $username created.'; } @override String get adminCreateUserTitle => 'Create user'; @override String get adminMinChars2 => 'At least 2 characters'; @override String get adminMinChars8 => 'At least 8 characters'; @override String get adminPasswordLabel => 'Password'; @override String get adminRoleLabel => 'Role'; @override String get adminCreateAction => 'Create'; @override String get adminMergeProductsTitle => 'Merge products'; @override String get adminMergeProductsHint => 'Select which product should be moved into the other:'; @override String get adminMerge2Selected => 'Merge 2 selected'; @override String get adminProductsMerged => 'Products merged.'; @override String get adminDeleteProductTitle => 'Delete product'; @override String adminDeleteProductConfirm(String name) { return 'Delete $name? The product can be restored later.'; } @override String get adminAiSuggestionsTitle => 'AI suggestions'; @override String adminAiApplied(int count) { return 'AI suggestions applied to $count products.'; } @override String adminApplySelected(int count) { return 'Apply ($count)'; } @override String adminUpdateSelected(int count) { return 'Update selected ($count)'; } @override String get adminAiCategorizeAll => 'AI-categorize uncategorized'; @override String adminAiCategorizeSelected(int count) { return 'AI-categorize selected ($count)'; } @override String adminRestoreSelected(int count) { return 'Restore selected ($count)'; } @override String get adminShowUncategorized => 'Uncategorized only'; @override String get adminRemoveCategory => 'Remove category'; @override String get adminNoProductsFound => 'No products match the filter.'; @override String get adminInlineCategory => 'Category (inline)'; @override String get adminNoCategory => 'No category'; @override String get adminRestoreAction => 'Restore'; @override String get profileDeleteConfirmTitle => 'Confirm deletion'; @override String get profileDeleteConfirmMessage => 'Are you sure you want to delete your profile? All your data will be permanently deleted.'; @override String get profileDeleteAction => 'Delete my profile'; @override String get profileDeletedMessage => 'Your profile has been deleted.'; @override String get profileDatabaseDescription => 'The database tab covers your main areas for inventory and products.'; }