{ "@@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)"} }