1037 lines
25 KiB
Dart
1037 lines
25 KiB
Dart
// ignore: unused_import
|
|
import 'package:intl/intl.dart' as intl;
|
|
import 'app_localizations.dart';
|
|
|
|
// ignore_for_file: type=lint
|
|
|
|
/// The translations for Swedish (`sv`).
|
|
class AppLocalizationsSv extends AppLocalizations {
|
|
AppLocalizationsSv([String locale = 'sv']) : super(locale);
|
|
|
|
@override
|
|
String get appTitle => 'Recipe App';
|
|
|
|
@override
|
|
String get retryAction => 'Försök igen';
|
|
|
|
@override
|
|
String get mealPlanTitle => 'Matsedel';
|
|
|
|
@override
|
|
String get mealPlanLoading => 'Laddar matsedel...';
|
|
|
|
@override
|
|
String get mealPlanWeekPrevious => 'Förra veckan';
|
|
|
|
@override
|
|
String get mealPlanWeekNext => 'Nästa vecka';
|
|
|
|
@override
|
|
String get mealPlanWeekCurrent => 'Denna vecka';
|
|
|
|
@override
|
|
String get mealPlanDayNoRecipe => 'Inget planerat';
|
|
|
|
@override
|
|
String get mealPlanSelectRecipe => 'Välj recept';
|
|
|
|
@override
|
|
String get mealPlanViewRecipe => 'Visa recept';
|
|
|
|
@override
|
|
String get mealPlanServingsLabel => 'Portioner';
|
|
|
|
@override
|
|
String get mealPlanResetServings => 'Återställ';
|
|
|
|
@override
|
|
String get mealPlanSaving => 'Sparar...';
|
|
|
|
@override
|
|
String mealPlanPlannedRecipes(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '# recept planerade',
|
|
one: '# recept planerat',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get mealPlanShoppingTitle => 'Inköpslista';
|
|
|
|
@override
|
|
String get mealPlanPickRecipeHint =>
|
|
'Välj recept ovan för att se en samlad ingredienslista.';
|
|
|
|
@override
|
|
String get mealPlanNoShoppingItems =>
|
|
'Inga ingredienser att visa för den här veckan.';
|
|
|
|
@override
|
|
String get mealPlanNoRecipesTitle =>
|
|
'Det finns inga recept att planera ännu.';
|
|
|
|
@override
|
|
String get mealPlanNoRecipesDescription =>
|
|
'Skapa minst ett recept först, så kan du lägga det i matsedeln.';
|
|
|
|
@override
|
|
String mealPlanMissingCount(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '# saknas',
|
|
one: '# saknas',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String mealPlanPartialCount(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '# delvis hemma',
|
|
one: '# delvis hemma',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String mealPlanEnoughCount(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '# hemma',
|
|
one: '# hemma',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String mealPlanPantryCount(int count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '# baslager',
|
|
one: '# baslager',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get mealPlanAllAtHome => 'Du har allt hemma.';
|
|
|
|
@override
|
|
String get mealPlanStatusMissing => 'Saknas';
|
|
|
|
@override
|
|
String get mealPlanStatusPartial => 'Delvis hemma';
|
|
|
|
@override
|
|
String get mealPlanStatusEnough => 'Finns hemma';
|
|
|
|
@override
|
|
String get mealPlanStatusPantry => 'Baslager';
|
|
|
|
@override
|
|
String get loginTitle => 'Logga in';
|
|
|
|
@override
|
|
String get usernameLabel => 'Användarnamn';
|
|
|
|
@override
|
|
String get usernameRequired => 'Ange ditt användarnamn.';
|
|
|
|
@override
|
|
String get passwordLabel => 'Lösenord';
|
|
|
|
@override
|
|
String get passwordRequired => 'Ange ditt lösenord.';
|
|
|
|
@override
|
|
String get loginAction => 'Logga in';
|
|
|
|
@override
|
|
String get sessionExpiredError => 'Din session har gått ut. Logga in igen.';
|
|
|
|
@override
|
|
String get forbiddenError => 'Du saknar behörighet för denna funktion.';
|
|
|
|
@override
|
|
String get serverError => 'Serverfel uppstod. Försök igen om en stund.';
|
|
|
|
@override
|
|
String get networkError =>
|
|
'Nätverksfel. Kontrollera anslutningen och försök igen.';
|
|
|
|
@override
|
|
String get unexpectedError => 'Ett oväntat fel uppstod.';
|
|
|
|
@override
|
|
String get cancelAction => 'Avbryt';
|
|
|
|
@override
|
|
String get saveAction => 'Spara';
|
|
|
|
@override
|
|
String get deleteAction => 'Ta bort';
|
|
|
|
@override
|
|
String get addAction => 'Lägg till';
|
|
|
|
@override
|
|
String get editTooltip => 'Redigera';
|
|
|
|
@override
|
|
String get deleteTooltip => 'Ta bort';
|
|
|
|
@override
|
|
String get loadingLabel => 'Laddar...';
|
|
|
|
@override
|
|
String get cannotBeUndone => 'Åtgärden kan inte ångras.';
|
|
|
|
@override
|
|
String get yesLabel => 'Ja';
|
|
|
|
@override
|
|
String get noLabel => 'Nej';
|
|
|
|
@override
|
|
String get commentLabel => 'Kommentar';
|
|
|
|
@override
|
|
String get commentOptionalLabel => 'Kommentar (valfri)';
|
|
|
|
@override
|
|
String get openedLabel => 'Öppnad';
|
|
|
|
@override
|
|
String get quantityLabel => 'Mängd *';
|
|
|
|
@override
|
|
String get quantityHint => 'Ange mängd';
|
|
|
|
@override
|
|
String get invalidNumber => 'Ogiltigt tal';
|
|
|
|
@override
|
|
String get unitLabel => 'Enhet *';
|
|
|
|
@override
|
|
String get selectDateLabel => 'Välj datum';
|
|
|
|
@override
|
|
String get locationOptionalLabel => 'Plats (valfri)';
|
|
|
|
@override
|
|
String get locationLabel => 'Plats';
|
|
|
|
@override
|
|
String get brandOptionalLabel => 'Märke (valfritt)';
|
|
|
|
@override
|
|
String get brandLabel => 'Märke';
|
|
|
|
@override
|
|
String get enterPositiveNumber => 'Ange ett positivt tal';
|
|
|
|
@override
|
|
String get inventoryTitle => 'Inventarie';
|
|
|
|
@override
|
|
String get inventoryFilterAndSort => 'Filter och sortering';
|
|
|
|
@override
|
|
String get inventorySortLatest => 'Senast tillagda';
|
|
|
|
@override
|
|
String get inventorySortNameAsc => 'Namn A-Ö';
|
|
|
|
@override
|
|
String get inventorySortBestBeforeAsc => 'Bäst före stigande';
|
|
|
|
@override
|
|
String get inventorySortBestBeforeDesc => 'Bäst före fallande';
|
|
|
|
@override
|
|
String get inventorySortLabel => 'Sortering';
|
|
|
|
@override
|
|
String get inventoryAllFilter => 'Alla';
|
|
|
|
@override
|
|
String get inventoryEmpty => 'Inventariet är tomt.';
|
|
|
|
@override
|
|
String get inventoryLoading => 'Laddar inventarie...';
|
|
|
|
@override
|
|
String get inventoryCreateTitle => 'Lägg till inventariepost';
|
|
|
|
@override
|
|
String get inventoryEditTitle => 'Redigera inventariepost';
|
|
|
|
@override
|
|
String get inventorySelectProduct => 'Välj en produkt ur listan.';
|
|
|
|
@override
|
|
String get inventoryDeleteTitle => 'Ta bort inventariepost?';
|
|
|
|
@override
|
|
String get inventoryProductLabel => 'Produkt';
|
|
|
|
@override
|
|
String get inventoryQuantityDisplayLabel => 'Mängd';
|
|
|
|
@override
|
|
String get inventoryLocationDisplayLabel => 'Plats';
|
|
|
|
@override
|
|
String get inventoryBrandDisplayLabel => 'Märke';
|
|
|
|
@override
|
|
String get inventoryPurchaseDateLabel => 'Inköpsdatum';
|
|
|
|
@override
|
|
String get inventoryBestBeforeLabel => 'Bäst före';
|
|
|
|
@override
|
|
String get inventoryPurchaseDatePrefix => 'Inköp: ';
|
|
|
|
@override
|
|
String get inventoryBestBeforeDatePrefix => 'Bäst före: ';
|
|
|
|
@override
|
|
String get inventoryConsumeAction => 'Konsumera';
|
|
|
|
@override
|
|
String get inventoryHistoryAction => 'Konsumtionshistorik';
|
|
|
|
@override
|
|
String get inventoryConsumeAmountLabel => 'Mängd att konsumera *';
|
|
|
|
@override
|
|
String get inventoryHistoryLoading => 'Laddar historik...';
|
|
|
|
@override
|
|
String get inventoryHistoryEmpty => 'Ingen konsumtionshistorik finns.';
|
|
|
|
@override
|
|
String get inventoryRecipesAction => 'Recept';
|
|
|
|
@override
|
|
String inventoryHistoryTitle(String name) {
|
|
return 'Historik: $name';
|
|
}
|
|
|
|
@override
|
|
String inventoryConsumeNameTitle(String name) {
|
|
return 'Konsumera: $name';
|
|
}
|
|
|
|
@override
|
|
String inventoryAvailableLabel(String quantity, String unit) {
|
|
return 'Tillgängligt: $quantity $unit';
|
|
}
|
|
|
|
@override
|
|
String get pantryDescription =>
|
|
'Produkter du alltid räknar med att ha hemma.';
|
|
|
|
@override
|
|
String get pantryLoading => 'Laddar baslager...';
|
|
|
|
@override
|
|
String get pantryNoLocation => 'Ingen plats vald';
|
|
|
|
@override
|
|
String get pantryInvalidQuantity => 'Ange en giltig mängd över 0.';
|
|
|
|
@override
|
|
String get pantryRemoveTitle => 'Ta bort från baslager?';
|
|
|
|
@override
|
|
String get pantryOtherCategory => 'Övrigt';
|
|
|
|
@override
|
|
String get pantryGoToRecipesTooltip => 'Gå till recept';
|
|
|
|
@override
|
|
String pantryAddToInventoryTitle(String name) {
|
|
return 'Lägg \"$name\" i inventarie';
|
|
}
|
|
|
|
@override
|
|
String pantryItemAdded(String name) {
|
|
return '$name tillagd i inventarie.';
|
|
}
|
|
|
|
@override
|
|
String pantryRemoveContent(String name) {
|
|
return 'Vill du ta bort \"$name\"?';
|
|
}
|
|
|
|
@override
|
|
String get recipesLoading => 'Laddar recept...';
|
|
|
|
@override
|
|
String get recipesEmpty => 'Inga recept hittades';
|
|
|
|
@override
|
|
String get recipesEmptyDescription =>
|
|
'Lägg till ett recept för att komma igång.';
|
|
|
|
@override
|
|
String get recipesNewTooltip => 'Nytt recept';
|
|
|
|
@override
|
|
String get recipeDetailLoading => 'Laddar recept...';
|
|
|
|
@override
|
|
String get recipeDetailMakePrivate => 'Gör privat';
|
|
|
|
@override
|
|
String get recipeDetailMakePublic => 'Gör publik';
|
|
|
|
@override
|
|
String get recipeDetailShareWithUser => 'Dela med användare';
|
|
|
|
@override
|
|
String get recipeDetailGoToInventory => 'Gå till inventarie';
|
|
|
|
@override
|
|
String get recipeDetailShareTitle => 'Dela recept';
|
|
|
|
@override
|
|
String get recipeDetailUsernameLabel => 'Användarnamn';
|
|
|
|
@override
|
|
String get recipeDetailUsernameHint => 't.ex. anna';
|
|
|
|
@override
|
|
String get recipeDetailRemoveShare => 'Ta bort delning';
|
|
|
|
@override
|
|
String get recipeDetailShareAction => 'Dela';
|
|
|
|
@override
|
|
String get recipeDetailDeleteTitle => 'Ta bort recept?';
|
|
|
|
@override
|
|
String get recipeDetailNowPublic => 'Receptet är nu publikt.';
|
|
|
|
@override
|
|
String get recipeDetailNowPrivate => 'Receptet är nu privat.';
|
|
|
|
@override
|
|
String get recipeDetailServings => 'portioner';
|
|
|
|
@override
|
|
String get recipeDetailIngredients => 'Ingredienser';
|
|
|
|
@override
|
|
String get recipeDetailInstructions => 'Tillvägagångssätt';
|
|
|
|
@override
|
|
String get recipeDetailBackToList => 'Tillbaka till receptlistan';
|
|
|
|
@override
|
|
String recipeDetailSharingRemoved(String user) {
|
|
return 'Delning borttagen för $user';
|
|
}
|
|
|
|
@override
|
|
String recipeDetailSharedWith(String user) {
|
|
return 'Receptet delades med $user';
|
|
}
|
|
|
|
@override
|
|
String recipeDetailDeleteContent(String title) {
|
|
return 'Vill du ta bort \"$title\"? Åtgärden kan inte ångras.';
|
|
}
|
|
|
|
@override
|
|
String get recipeCreateTitle => 'Nytt recept';
|
|
|
|
@override
|
|
String get recipeCreateReviewIngredients => 'Granska ingredienser';
|
|
|
|
@override
|
|
String get recipeCreateMarkdownPlaceholder =>
|
|
'# Receptnamn\n\n## Ingredienser\n- 500 g köttfärs\n- 1 st lök\n\n## Tillvägagångssätt\nStek löken...';
|
|
|
|
@override
|
|
String get recipeCreateMarkdownHint =>
|
|
'Klistra in eller skriv ett recept i Markdown-format.';
|
|
|
|
@override
|
|
String get recipeCreateNameRequired => 'Receptnamnet får inte vara tomt.';
|
|
|
|
@override
|
|
String get recipeCreateSaveAction => 'Spara recept';
|
|
|
|
@override
|
|
String get recipeCreateServingsLabel => 'Antal portioner (valfritt)';
|
|
|
|
@override
|
|
String get recipeCreateIngredientsLabel => 'Ingredienser';
|
|
|
|
@override
|
|
String get recipeCreateIngredientsHint =>
|
|
'Bocka av ingredienser att inkludera och välj rätt produkt.';
|
|
|
|
@override
|
|
String get recipeCreateNoProductFound =>
|
|
'Ingen produkt hittades — ingrediensen hoppas över.';
|
|
|
|
@override
|
|
String get recipeEditTitle => 'Redigera recept';
|
|
|
|
@override
|
|
String get recipeEditNameLabel => 'Receptnamn';
|
|
|
|
@override
|
|
String get recipeEditNameRequired => 'Ange ett receptnamn.';
|
|
|
|
@override
|
|
String get recipeEditDescriptionLabel => 'Beskrivning (valfritt)';
|
|
|
|
@override
|
|
String get recipeEditServingsLabel => 'Antal portioner (valfritt)';
|
|
|
|
@override
|
|
String get recipeEditServingsInvalid => 'Ange ett heltal.';
|
|
|
|
@override
|
|
String get recipeEditInstructionsLabel => 'Tillvägagångssätt (valfritt)';
|
|
|
|
@override
|
|
String get recipeEditIngredientsLabel => 'Ingredienser';
|
|
|
|
@override
|
|
String get recipeEditIngredientsHint =>
|
|
'Välj produkt, mängd och enhet för varje ingrediens.';
|
|
|
|
@override
|
|
String get recipeEditNoIngredients => 'Inga ingredienser tillagda än.';
|
|
|
|
@override
|
|
String get recipeEditIngredientPrefix => 'Ingrediens ';
|
|
|
|
@override
|
|
String get recipeEditRemoveIngredient => 'Ta bort ingrediens';
|
|
|
|
@override
|
|
String get recipeEditMinIngredients => 'Minst en ingrediens krävs.';
|
|
|
|
@override
|
|
String get recipeEditSelectProduct => 'Välj produkt för alla ingredienser.';
|
|
|
|
@override
|
|
String get recipeEditValidQuantity =>
|
|
'Ange giltig mängd för alla ingredienser.';
|
|
|
|
@override
|
|
String get recipeEditSelectUnit => 'Välj enhet för alla ingredienser.';
|
|
|
|
@override
|
|
String get recipeEditSaveChanges => 'Spara ändringar';
|
|
|
|
@override
|
|
String get importTabDescription =>
|
|
'Ladda upp en PDF eller bild, eller ange en receptlänk — receptet importeras och öppnas direkt i redigeringsläget.';
|
|
|
|
@override
|
|
String get importFileTabLabel => 'Fil / PDF';
|
|
|
|
@override
|
|
String get importLinkTabLabel => 'Länk';
|
|
|
|
@override
|
|
String get importChooseFileAction => 'Välj fil (PDF, PNG, JPG, WEBP, BMP)';
|
|
|
|
@override
|
|
String get importFileAction => 'Importera fil';
|
|
|
|
@override
|
|
String get importFileProcessing =>
|
|
'Tolkar receptet — detta kan ta upp till en minut...';
|
|
|
|
@override
|
|
String get importLinkAction => 'Importera från länk';
|
|
|
|
@override
|
|
String get importLinkLabel => 'Receptlänk';
|
|
|
|
@override
|
|
String get importLinkHint => 'https://exempel.se/recept/...';
|
|
|
|
@override
|
|
String get importWriteInstead => 'Skriv in recept istället';
|
|
|
|
@override
|
|
String get errorDialogTitle => 'Fel';
|
|
|
|
@override
|
|
String get errorDialogClose => 'Stäng';
|
|
|
|
@override
|
|
String get errorDialogCopy => 'Kopiera';
|
|
|
|
@override
|
|
String get errorDialogCopied => 'Felmeddelande kopierat!';
|
|
|
|
@override
|
|
String get profileMyProfileTab => 'Min profil';
|
|
|
|
@override
|
|
String get profileDatabaseTab => 'Databas';
|
|
|
|
@override
|
|
String get profileUsersTab => 'Användare';
|
|
|
|
@override
|
|
String get profilePendingTab => 'Förslag';
|
|
|
|
@override
|
|
String get profileAiTab => 'AI';
|
|
|
|
@override
|
|
String get profileUsernameLabel => 'Användarnamn';
|
|
|
|
@override
|
|
String get profileEmailLabel => 'E-post';
|
|
|
|
@override
|
|
String get profileEmailHint => 'Ange en e-postadress';
|
|
|
|
@override
|
|
String get profileEmailInvalid => 'Ogiltig e-postadress';
|
|
|
|
@override
|
|
String get profileFirstNameLabel => 'Förnamn';
|
|
|
|
@override
|
|
String get profileLastNameLabel => 'Efternamn';
|
|
|
|
@override
|
|
String get profileSaveAction => 'Spara ändringar';
|
|
|
|
@override
|
|
String get profileSaved => 'Profil sparad!';
|
|
|
|
@override
|
|
String get profileInventoryTab => 'Inventarie';
|
|
|
|
@override
|
|
String get profilePantryTab => 'Baslager';
|
|
|
|
@override
|
|
String get profileProductsTab => 'Produkter';
|
|
|
|
@override
|
|
String get profileAddInventoryItem => 'Lägg till inventariepost';
|
|
|
|
@override
|
|
String get profileOpenInventory => 'Öppna inventarie';
|
|
|
|
@override
|
|
String get profileInventoryDescription =>
|
|
'Uppdatera och konsumera varor i ditt inventarie.';
|
|
|
|
@override
|
|
String get profileOpenPantry => 'Öppna baslager';
|
|
|
|
@override
|
|
String get profilePantryDescription =>
|
|
'Hantera varor du alltid räknar med att ha hemma.';
|
|
|
|
@override
|
|
String get adminChangeRole => 'Ändra roll';
|
|
|
|
@override
|
|
String get adminGivePremium => 'Ge Premium';
|
|
|
|
@override
|
|
String get adminRemovePremium => 'Ta bort Premium';
|
|
|
|
@override
|
|
String get adminAllowSharing => 'Tillåt receptdelning';
|
|
|
|
@override
|
|
String get adminBlockSharing => 'Blockera receptdelning';
|
|
|
|
@override
|
|
String get adminResetPassword => 'Återställ lösenord';
|
|
|
|
@override
|
|
String get adminTempPasswordTitle => 'Tillfälligt lösenord';
|
|
|
|
@override
|
|
String get adminCopyAction => 'Kopiera';
|
|
|
|
@override
|
|
String get adminCloseAction => 'Stäng';
|
|
|
|
@override
|
|
String get adminEmailLabel => 'E-post';
|
|
|
|
@override
|
|
String get adminEmailInvalid => 'Ogiltig e-postadress.';
|
|
|
|
@override
|
|
String get adminEmailUpdated => 'E-post uppdaterad.';
|
|
|
|
@override
|
|
String get adminDeleteUser => 'Ta bort användare';
|
|
|
|
@override
|
|
String get adminDeleteUserConfirm =>
|
|
'Ta bort permanent? Detta går inte att ångra.';
|
|
|
|
@override
|
|
String get adminConfirmAction => 'Bekräfta';
|
|
|
|
@override
|
|
String get adminNewUser => 'Ny användare';
|
|
|
|
@override
|
|
String get adminNoUsers => 'Inga användare hittades.';
|
|
|
|
@override
|
|
String get adminAdminRole => 'Admin';
|
|
|
|
@override
|
|
String get adminUserRole => 'User';
|
|
|
|
@override
|
|
String get adminPremiumLabel => 'Premium';
|
|
|
|
@override
|
|
String get adminFreeLabel => 'Free';
|
|
|
|
@override
|
|
String get adminSharingOn => 'Delning: På';
|
|
|
|
@override
|
|
String get adminSharingOff => 'Delning: Av';
|
|
|
|
@override
|
|
String get adminUsersDescription =>
|
|
'Hantera användare direkt från profilsidan.';
|
|
|
|
@override
|
|
String get adminDowngradeToUser => 'Nedgradera till user';
|
|
|
|
@override
|
|
String get adminUpgradeToAdmin => 'Uppgradera till admin';
|
|
|
|
@override
|
|
String get adminSortNewest => 'Sortera: Nyast';
|
|
|
|
@override
|
|
String get adminSortOldest => 'Sortera: Äldst';
|
|
|
|
@override
|
|
String get adminSortNameAsc => 'Sortera: Namn A-Ö';
|
|
|
|
@override
|
|
String get adminSortNameDesc => 'Sortera: Namn Ö-A';
|
|
|
|
@override
|
|
String get adminSortCategoryAsc => 'Sortera: Kategori A-Ö';
|
|
|
|
@override
|
|
String get adminSortCategoryDesc => 'Sortera: Kategori Ö-A';
|
|
|
|
@override
|
|
String get adminSearchProduct => 'Sök produkt';
|
|
|
|
@override
|
|
String get adminShowDeleted => 'Visa raderade';
|
|
|
|
@override
|
|
String get adminOnlyUncategorized => 'Endast okategoriserade';
|
|
|
|
@override
|
|
String get adminBulkSetCategory => 'Bulk: sätt kategori';
|
|
|
|
@override
|
|
String get adminProductsUpdated => 'Produkter uppdaterade.';
|
|
|
|
@override
|
|
String get adminNoAiSuggestions => 'Inga AI-förslag att visa.';
|
|
|
|
@override
|
|
String get adminMergeProducts => 'Slå ihop produkter';
|
|
|
|
@override
|
|
String get adminMergeSelectSource =>
|
|
'Välj vilken produkt som ska flyttas in i den andra:';
|
|
|
|
@override
|
|
String get adminMergeSource => 'Källa: ';
|
|
|
|
@override
|
|
String get adminMergeTarget => 'Mål: ';
|
|
|
|
@override
|
|
String get adminMergeAction => 'Slå ihop';
|
|
|
|
@override
|
|
String get adminDeleteProduct => 'Ta bort produkt';
|
|
|
|
@override
|
|
String get adminProductDeleted => 'Produkt borttagen.';
|
|
|
|
@override
|
|
String get adminProductsRestored => 'Valda produkter återställda.';
|
|
|
|
@override
|
|
String get adminProductRestored => 'Produkt återställd.';
|
|
|
|
@override
|
|
String get adminNoPendingProducts => 'Inga väntande produktförslag.';
|
|
|
|
@override
|
|
String get adminCategoryPrefix => 'Kategori: ';
|
|
|
|
@override
|
|
String get adminSuggestedByPrefix => 'Föreslagen av: ';
|
|
|
|
@override
|
|
String get adminDatePrefix => 'Datum: ';
|
|
|
|
@override
|
|
String get adminApproveAction => 'Godkänn';
|
|
|
|
@override
|
|
String get adminRejectAction => 'Avvisa';
|
|
|
|
@override
|
|
String get adminPendingDescription =>
|
|
'Godkänn eller avvisa väntande produktförslag direkt från profilsidan.';
|
|
|
|
@override
|
|
String get adminAiDescription =>
|
|
'Översikt över AI-funktioner som backend exponerar.';
|
|
|
|
@override
|
|
String get adminPagePrefix => 'Sida: ';
|
|
|
|
@override
|
|
String get adminNewProductLabel => 'Ny produkt';
|
|
|
|
@override
|
|
String get adminPasswordMustChange =>
|
|
'Användaren måste byta lösenord vid nästa inloggning.';
|
|
|
|
@override
|
|
String adminChangeRoleConfirm(String username, String role) {
|
|
return 'Ändra $username till $role?';
|
|
}
|
|
|
|
@override
|
|
String adminGivePremiumConfirm(String username) {
|
|
return 'Ge Premium för $username';
|
|
}
|
|
|
|
@override
|
|
String adminRemovePremiumConfirm(String username) {
|
|
return 'Ta bort Premium för $username';
|
|
}
|
|
|
|
@override
|
|
String adminAllowSharingConfirm(String username) {
|
|
return 'Tillåt receptdelning för $username';
|
|
}
|
|
|
|
@override
|
|
String adminBlockSharingConfirm(String username) {
|
|
return 'Blockera receptdelning för $username';
|
|
}
|
|
|
|
@override
|
|
String adminResetPasswordContent(String username) {
|
|
return 'Generera ett tillfälligt lösenord för $username';
|
|
}
|
|
|
|
@override
|
|
String adminPasswordTitle(String username) {
|
|
return 'Lösenord för $username';
|
|
}
|
|
|
|
@override
|
|
String adminChangeEmailTitle(String username) {
|
|
return 'Ändra e-post för $username';
|
|
}
|
|
|
|
@override
|
|
String adminDeleteProductContent(String name) {
|
|
return 'Ta bort $name? Produkten kan återställas senare.';
|
|
}
|
|
|
|
@override
|
|
String adminAiAppliedCount(int count) {
|
|
return 'AI-förslag tillämpade på $count produkter.';
|
|
}
|
|
|
|
@override
|
|
String adminCategoryUpdated(String name) {
|
|
return 'Kategori uppdaterad för $name';
|
|
}
|
|
|
|
@override
|
|
String adminProductUpdated(String name) {
|
|
return 'Produkt uppdaterad för $name';
|
|
}
|
|
|
|
@override
|
|
String adminPremiumConfirm(String action, String username) {
|
|
return '$action Premium för $username?';
|
|
}
|
|
|
|
@override
|
|
String adminSharingConfirm(String action, String username) {
|
|
return '$action receptdelning för $username?';
|
|
}
|
|
|
|
@override
|
|
String adminResetPasswordConfirm(String username) {
|
|
return 'Generera ett tillfälligt lösenord för $username?';
|
|
}
|
|
|
|
@override
|
|
String adminTempPasswordForUser(String username) {
|
|
return 'Lösenord för $username:';
|
|
}
|
|
|
|
@override
|
|
String adminEmailEditTitle(String username) {
|
|
return 'Ändra e-post för $username';
|
|
}
|
|
|
|
@override
|
|
String get adminEmailAction => 'Ändra e-post';
|
|
|
|
@override
|
|
String adminUserCreated(String username) {
|
|
return 'Användare $username skapad.';
|
|
}
|
|
|
|
@override
|
|
String get adminCreateUserTitle => 'Skapa användare';
|
|
|
|
@override
|
|
String get adminMinChars2 => 'Minst 2 tecken';
|
|
|
|
@override
|
|
String get adminMinChars8 => 'Minst 8 tecken';
|
|
|
|
@override
|
|
String get adminPasswordLabel => 'Lösenord';
|
|
|
|
@override
|
|
String get adminRoleLabel => 'Roll';
|
|
|
|
@override
|
|
String get adminCreateAction => 'Skapa';
|
|
|
|
@override
|
|
String get adminMergeProductsTitle => 'Slå ihop produkter';
|
|
|
|
@override
|
|
String get adminMergeProductsHint =>
|
|
'Välj vilken produkt som ska flyttas in i den andra:';
|
|
|
|
@override
|
|
String get adminMerge2Selected => 'Slå ihop 2 valda';
|
|
|
|
@override
|
|
String get adminProductsMerged => 'Produkter sammanslagna.';
|
|
|
|
@override
|
|
String get adminDeleteProductTitle => 'Ta bort produkt';
|
|
|
|
@override
|
|
String adminDeleteProductConfirm(String name) {
|
|
return 'Ta bort $name? Produkten kan återställas senare.';
|
|
}
|
|
|
|
@override
|
|
String get adminAiSuggestionsTitle => 'AI-förslag';
|
|
|
|
@override
|
|
String adminAiApplied(int count) {
|
|
return 'AI-förslag tillämpade på $count produkter.';
|
|
}
|
|
|
|
@override
|
|
String adminApplySelected(int count) {
|
|
return 'Tillämpa ($count)';
|
|
}
|
|
|
|
@override
|
|
String adminUpdateSelected(int count) {
|
|
return 'Uppdatera valda ($count)';
|
|
}
|
|
|
|
@override
|
|
String get adminAiCategorizeAll => 'AI-kategorisera okategoriserade';
|
|
|
|
@override
|
|
String adminAiCategorizeSelected(int count) {
|
|
return 'AI-kategorisera valda ($count)';
|
|
}
|
|
|
|
@override
|
|
String adminRestoreSelected(int count) {
|
|
return 'Återställ valda ($count)';
|
|
}
|
|
|
|
@override
|
|
String get adminShowUncategorized => 'Endast okategoriserade';
|
|
|
|
@override
|
|
String get adminRemoveCategory => 'Ta bort kategori';
|
|
|
|
@override
|
|
String get adminNoProductsFound => 'Inga produkter matchar filtret.';
|
|
|
|
@override
|
|
String get adminInlineCategory => 'Kategori (inline)';
|
|
|
|
@override
|
|
String get adminNoCategory => 'Ingen kategori';
|
|
|
|
@override
|
|
String get adminRestoreAction => 'Återställ';
|
|
|
|
@override
|
|
String get required => 'Obligatoriskt';
|
|
|
|
@override
|
|
String get logoutAction => 'Logga ut';
|
|
|
|
@override
|
|
String get profileDeleteConfirmTitle => 'Bekräfta radering';
|
|
|
|
@override
|
|
String get profileDeleteConfirmMessage =>
|
|
'Är du säker på att du vill ta bort din profil? Alla dina data kommer att raderas permanent.';
|
|
|
|
@override
|
|
String get profileDeleteAction => 'Ta bort min profil';
|
|
|
|
@override
|
|
String get profileDeletedMessage => 'Din profil har tagits bort.';
|
|
|
|
@override
|
|
String get profileDatabaseDescription =>
|
|
'Databasfliken samlar dina huvudområden för lager och produkter.';
|
|
}
|