Shuffle/app/lib/l10n/app_en.arb
cschlaefke 6020801fff
All checks were successful
CI / flutter (pull_request) Successful in 1m19s
CI / web-build (pull_request) Successful in 56s
CI / supabase (pull_request) Successful in 9s
CI / supabase-tests (pull_request) Successful in 31s
CI / e2e (pull_request) Successful in 3m0s
chore: merge main into feature/3b-katalog-suche-app
Refs #3

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-04 11:06:16 +01:00

215 lines
12 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"@@locale": "en",
"appTitle": "Shuffle",
"@appTitle": {
"description": "Name of the app"
},
"homePlaceholderMessage": "Welcome to Shuffle. The board game catalog is coming soon.",
"@homePlaceholderMessage": {
"description": "Placeholder text on the start page until real content exists"
},
"notFoundTitle": "Page not found",
"@notFoundTitle": {
"description": "Title of the 404 page"
},
"notFoundMessage": "This page does not exist or has been moved.",
"@notFoundMessage": {
"description": "Explanation on the 404 page"
},
"notFoundBackHome": "Back to start",
"@notFoundBackHome": {
"description": "Button on the 404 page that navigates to the start page"
},
"authErrorInvalidCredentials": "Email address or password is incorrect.",
"authErrorEmailNotConfirmed": "Please confirm your email address first. We sent you an email for this.",
"authActionResendConfirmation": "Resend confirmation email",
"authErrorRateLimited": "Too many attempts. Please wait a few minutes and try again.",
"authErrorWeakPasswordLength": "The password is too short.",
"authErrorWeakPasswordCharacters": "The password is too simple. Choose a different one.",
"authErrorWeakPasswordPwned": "This password is very common and easy to guess. Choose a different one.",
"authErrorSamePassword": "Choose a password different from your current one.",
"authErrorLinkInvalidOrExpired": "The link has expired or has already been used.",
"authActionRequestNewLink": "Request a new link",
"authErrorEmailInvalid": "Enter a valid email address.",
"authErrorRegistrationRejected": "Registration is not possible. Please check your details.",
"authErrorNetwork": "No connection. You need internet access for this step.",
"authErrorUnexpected": "Something went wrong. Please try again.",
"authActionRetry": "Try again",
"authPasswordTooShort": "At least 10 characters – {missing, plural, =1{1 more character needed} other{{missing} more characters needed}}.",
"@authPasswordTooShort": {
"placeholders": {
"missing": {
"type": "int"
}
}
},
"authPasswordCommon": "This password is very common and easy to guess. Choose a different one.",
"authPasswordRule": "At least 10 characters. Not a very common password.",
"authPasswordRequired": "Enter a password.",
"authDisplayNameEmpty": "Enter a display name.",
"authDisplayNameTooLong": "The display name can be at most {max} characters long.",
"@authDisplayNameTooLong": {
"placeholders": {
"max": {
"type": "int"
}
}
},
"authDisplayNameInvalid": "This display name is not allowed. Use visible characters.",
"authDisplayNameCounter": "{count}/{max}",
"@authDisplayNameCounter": {
"placeholders": {
"count": {
"type": "int"
},
"max": {
"type": "int"
}
}
},
"authAgeNotConfirmed": "Shuffle can only be used from age 16.",
"authTermsNotAccepted": "Please agree to the privacy policy and the terms of use.",
"authFieldEmailLabel": "Email address",
"authFieldPasswordLabel": "Password",
"authFieldDisplayNameLabel": "Display name",
"authPasswordShow": "Show password",
"authPasswordHide": "Hide password",
"authCheckboxAgeLabel": "I am at least 16 years old",
"authCheckboxTermsPrefix": "I have read the",
"authCheckboxTermsPrivacyLink": "privacy policy",
"authCheckboxTermsMiddle": "and agree to the",
"authCheckboxTermsTermsLink": "terms of use",
"authCheckboxTermsSuffix": "",
"authBannerTypeError": "Error",
"authBannerTypeInfo": "Note",
"authSubmitting": "Please wait …",
"authRegisterTitle": "Create account",
"authRegisterSubmit": "Create account",
"authRegisterHaveAccount": "Already have an account? Sign in",
"authLoginTitle": "Sign in",
"authLoginSubmit": "Sign in",
"authLoginForgotPassword": "Forgot password?",
"authLoginCreateAccount": "Create account",
"signInPromptTitle": "Your account",
"signInPromptBody": "Sign in to manage your collection and plays.",
"signInPromptSignIn": "Sign in",
"signInPromptRegister": "Create account",
"authCheckEmailTitle": "Check your inbox",
"authCheckEmailBody": "We sent you an email if the address is not registered yet. Follow the link in it to continue.",
"authCheckEmailDelayHint": "The email can take a few minutes. Also check your spam folder.",
"authCheckEmailValidity": "The link is valid for {duration}.",
"@authCheckEmailValidity": {
"placeholders": {
"duration": {
"type": "String"
}
}
},
"authCheckEmailValidityOneHour": "1 hour",
"authCheckEmailResend": "Resend email",
"authCheckEmailResent": "We resent the email, if there is something to send for this address.",
"authBackToLogin": "Back to sign in",
"authConfirmTitle": "Confirm email address",
"authConfirmBody": "One click is enough to confirm your email address.",
"authConfirmSubmit": "Confirm email address",
"authConfirmSuccess": "Email confirmed.",
"authConfirmSuccessMobileWeb": "You can now also sign in in the app.",
"authConfirmContinue": "Continue",
"authRecoveryTitle": "Set a new password",
"authRecoveryBody": "One click is enough to set a new password.",
"authRecoverySubmit": "Continue to new password",
"authForgotTitle": "Reset password",
"authForgotBody": "Enter the email address of your account. We will send you a reset link.",
"authForgotSubmit": "Send link",
"authCheckEmailBodyReset": "We sent you an email with a reset link if an account exists for this address.",
"authCheckEmailDifferentAddress": "Enter a different email address",
"authFieldNewPasswordLabel": "New password",
"authResetTitle": "Set a new password",
"authResetSubmit": "Save password",
"authResetCancel": "Cancel",
"authPasswordChanged": "Password changed. Other devices will be signed out; this can take up to an hour.",
"gameCoverPlaceholderLabel": "No cover for {title}",
"@gameCoverPlaceholderLabel": {
"description": "Semantics label of the uniform placeholder cover",
"placeholders": {"title": {"type": "String"}}
},
"gameCoverLabel": "Cover of {title}",
"@gameCoverLabel": {
"description": "Semantics label of a game cover image",
"placeholders": {"title": {"type": "String"}}
},
"catalogSearchTitle": "Search games",
"@catalogSearchTitle": {"description": "Title of the catalog search screen and label of the search field/entry button"},
"catalogSearchFieldHint": "Title or publisher",
"@catalogSearchFieldHint": {"description": "Hint text of the search field"},
"catalogSearchClear": "Clear search",
"@catalogSearchClear": {"description": "Tooltip/label of the clear button of the search field"},
"catalogSearchFilterButton": "{count, plural, =0{Filters} other{Filters ({count})}}",
"@catalogSearchFilterButton": {"description": "Button that opens the filters, with the number of active filters", "placeholders": {"count": {"type": "int"}}},
"catalogSearchFilterTitle": "Filters",
"@catalogSearchFilterTitle": {"description": "Title of the filter area"},
"catalogSearchFilterDone": "Done",
"@catalogSearchFilterDone": {"description": "Closes the filter sheet"},
"catalogSearchFilterReset": "Reset filters",
"@catalogSearchFilterReset": {"description": "Removes all filters"},
"catalogSearchFilterPlayers": "Number of players",
"@catalogSearchFilterPlayers": {"description": "Filter label"},
"catalogSearchFilterAny": "Any",
"@catalogSearchFilterAny": {"description": "Filter value without restriction"},
"catalogSearchFilterDuration": "Play time",
"@catalogSearchFilterDuration": {"description": "Filter label"},
"catalogSearchFilterDurationValue": "Up to {minutes} min",
"@catalogSearchFilterDurationValue": {"description": "Filter value: games lasting at most this many minutes", "placeholders": {"minutes": {"type": "int"}}},
"catalogSearchFilterAge": "Age",
"@catalogSearchFilterAge": {"description": "Filter label"},
"catalogSearchFilterAgeValue": "Suitable from age {age}",
"@catalogSearchFilterAgeValue": {"description": "Filter value: games suitable for players of this age", "placeholders": {"age": {"type": "int"}}},
"catalogSearchFilterGenres": "Genre",
"@catalogSearchFilterGenres": {"description": "Filter label"},
"catalogSearchFilterMechanics": "Mechanic",
"@catalogSearchFilterMechanics": {"description": "Filter label"},
"catalogSearchTermsError": "The options could not be loaded.",
"@catalogSearchTermsError": {"description": "Error in the genre/mechanic filter"},
"catalogSearchRetry": "Try again",
"@catalogSearchRetry": {"description": "Retry button"},
"catalogSearchResultCount": "{count, plural, =0{No games} =1{1 game} other{{count} games}}",
"@catalogSearchResultCount": {"description": "Number of hits above the list", "placeholders": {"count": {"type": "int", "format": "decimalPattern"}}},
"catalogSearchAnnouncement": "{count, plural, =0{No games found} =1{1 game found} other{{count} games found}}",
"@catalogSearchAnnouncement": {"description": "Screen reader announcement after a finished search", "placeholders": {"count": {"type": "int", "format": "decimalPattern"}}},
"catalogSearchAlsoKnownAs": "also: {title}",
"@catalogSearchAlsoKnownAs": {"description": "Alternative title that matched", "placeholders": {"title": {"type": "String"}}},
"catalogSearchPlayersCount": "{count, plural, =1{1 player} other{{count} players}}",
"@catalogSearchPlayersCount": {"description": "Number of players of a game", "placeholders": {"count": {"type": "int"}}},
"catalogSearchPlayersRange": "{min}–{max} players",
"@catalogSearchPlayersRange": {"description": "Player range of a game", "placeholders": {"min": {"type": "int"}, "max": {"type": "int"}}},
"catalogSearchMinutesSingle": "{minutes} min",
"@catalogSearchMinutesSingle": {"description": "Play time of a game", "placeholders": {"minutes": {"type": "int"}}},
"catalogSearchMinutesRange": "{min}–{max} min",
"@catalogSearchMinutesRange": {"description": "Play time range of a game", "placeholders": {"min": {"type": "int"}, "max": {"type": "int"}}},
"catalogSearchMinAge": "ages {age}+",
"@catalogSearchMinAge": {"description": "Minimum age of a game", "placeholders": {"age": {"type": "int"}}},
"catalogSearchPublishersMore": "{names} +{more}",
"@catalogSearchPublishersMore": {"description": "Publishers of a game, more than shown", "placeholders": {"names": {"type": "String"}, "more": {"type": "int"}}},
"catalogSearchLoadMore": "Load more",
"@catalogSearchLoadMore": {"description": "Button at the end of the list"},
"catalogSearchLoading": "Loading games",
"@catalogSearchLoading": {"description": "Spoken label of the loading indicator"},
"catalogSearchLoadMoreError": "More games could not be loaded.",
"@catalogSearchLoadMoreError": {"description": "Error when loading the next page"},
"catalogSearchEmptyForQuery": "No games found for “{query}”.",
"@catalogSearchEmptyForQuery": {"description": "Empty state with search text", "placeholders": {"query": {"type": "String"}}},
"catalogSearchEmptyForQueryHint": "Check the spelling or remove filters.",
"@catalogSearchEmptyForQueryHint": {"description": "Hint in the empty state with search text"},
"catalogSearchEmptyForFilters": "No games match your filters.",
"@catalogSearchEmptyForFilters": {"description": "Empty state with filters only"},
"catalogSearchEmptyCatalog": "The catalog is still empty.",
"@catalogSearchEmptyCatalog": {"description": "Empty state without search text and filters"},
"catalogSearchReportGame": "Report a missing game",
"@catalogSearchReportGame": {"description": "Action in the empty state"},
"catalogSearchErrorOffline": "No connection. You need internet for the search.",
"@catalogSearchErrorOffline": {"description": "Error state: offline"},
"catalogSearchErrorGeneric": "Search is not available right now.",
"@catalogSearchErrorGeneric": {"description": "Error state: other errors"},
"catalogSearchErrorInvalid": "This search is not supported. Change the search text or the filters.",
"@catalogSearchErrorInvalid": {"description": "Error state: the backend rejected the input (no retry offered)"}
}