mirror of
https://github.com/Drop-OSS/drop.git
synced 2025-11-09 20:12:10 +10:00
* feat: small library tweaks + company page * feat: new store view * fix: ci merge error * feat: add genres to store page * feat: sorting * feat: lock game/version imports while their tasks are running * feat: feature games * feat: tag based filtering * fix: make tags alphabetical * refactor: move a bunch of i18n to common * feat: add localizations for everything * fix: title description on panel * fix: feature carousel text * fix: i18n footer strings * feat: add tag page * fix: develop merge * feat: offline games support (don't error out if provider throws) * feat: tag management * feat: show library next to game import + small fixes * feat: most of the company and tag managers * feat: company text field editing * fix: small fixes + tsgo experiemental * feat: upload icon and banner * feat: store infinite scrolling and bulk import mode * fix: lint * fix: add drop-base to prettier ignore
483 lines
19 KiB
JSON
483 lines
19 KiB
JSON
{
|
|
"account": {
|
|
"devices": {
|
|
"capabilities": "Aye, yer Capabilities",
|
|
"lastConnected": "Last Linked",
|
|
"noDevices": "No contraptions tied to yer coffers, eh?",
|
|
"platform": "Ship",
|
|
"revoke": "Scuttle 'em",
|
|
"subheader": "Manage the contraptions allowed access to yer Drop booty.",
|
|
"title": "Contraptions"
|
|
},
|
|
"notifications": {
|
|
"all": "Gaze upon all {arrow}",
|
|
"desc": "View and manage yer messages from the crows' nest.",
|
|
"markAllAsRead": "Mark all as read, aye!",
|
|
"markAsRead": "Mark as read, matey!",
|
|
"none": "No messages, savvy?",
|
|
"notifications": "Crows' Nest",
|
|
"title": "Messages from the Crows' Nest",
|
|
"unread": "Unread Messages"
|
|
},
|
|
"settings": "Account Settings, savvy?",
|
|
"title": "Yer Own Coffer"
|
|
},
|
|
"actions": "Deeds",
|
|
"add": "Add",
|
|
"adminTitle": "Cap'n's Quarters - Drop",
|
|
"adminTitleTemplate": "{0} - Cap'n - Drop",
|
|
"auth": {
|
|
"callback": {
|
|
"authClient": "Grant passage to this scallywag?",
|
|
"authorize": "Grant Passage",
|
|
"authorizedClient": "Drop has granted passage to the scallywag. Ye may now shut this porthole.",
|
|
"issues": "Troubles be brewin', matey?",
|
|
"learn": "Learn more {arrow}",
|
|
"paste": "Scribble this code into the scallywag to carry on:",
|
|
"permWarning": "Grantin' this request allows \"{name}\" on \"{platform}\" to:",
|
|
"requestedAccess": "\"{name}\" has requested passage to yer Drop coffer.",
|
|
"success": "Shiver me timbers, it worked!"
|
|
},
|
|
"confirmPassword": "Confirm @:auth.password",
|
|
"displayName": "Yer Scallywag Name",
|
|
"email": "Salty Mail",
|
|
"password": "Secret Word",
|
|
"register": {
|
|
"confirmPasswordFormat": "Must be the same as above, savvy?",
|
|
"emailFormat": "Must be in the fashion of a true scallywag {'@'} example.com",
|
|
"passwordFormat": "Must be 14 or more marks, ye landlubber!",
|
|
"subheader": "Fill in yer details below to make yer mark.",
|
|
"title": "Forge yer Drop Mark",
|
|
"usernameFormat": "Must be 5 or more marks, and all lowercase, argh!"
|
|
},
|
|
"signin": {
|
|
"externalProvider": "Sign in with another ship's captain {arrow}",
|
|
"forgot": "Forgot yer secret word, eh?",
|
|
"noAccount": "No mark in the logbook? Beg a cap'n to make ye one, argh!",
|
|
"or": "OR",
|
|
"pageTitle": "Sign in to Drop, ye dog!",
|
|
"rememberMe": "Remember me, savvy?",
|
|
"signin": "Sign in, ye scurvy dog!",
|
|
"title": "Sign in to yer mark"
|
|
},
|
|
"signout": "Cast off!",
|
|
"username": "Scallywag Name"
|
|
},
|
|
"cancel": "Belay that!",
|
|
"chars": {
|
|
"arrow": "→",
|
|
"arrowBack": "←",
|
|
"quoted": "\"\"",
|
|
"srComma": ", {0}"
|
|
},
|
|
"common": {
|
|
"cannotUndo": "This deed cannot be undone, ye hear!",
|
|
"close": "Shut yer trap!",
|
|
"create": "Forge!",
|
|
"date": "Date",
|
|
"deleteConfirm": "Are ye sure ye want to scuttle \"{0}\", ye rogue?",
|
|
"divider": "{'|'}",
|
|
"edit": "Amend",
|
|
"friends": "Shipmates",
|
|
"groups": "Crews",
|
|
"insert": "Insert",
|
|
"name": "Name, argh!",
|
|
"noResults": "No plunder found!",
|
|
"save": "Stow it!",
|
|
"servers": "Ships",
|
|
"srLoading": "Loading, loading, argh...",
|
|
"tags": "Marks",
|
|
"today": "Today"
|
|
},
|
|
"delete": "Scuttle!",
|
|
"drop": {
|
|
"desc": "An open-source game distribution platform built for speed, flexibility and beauty, like a swift brigantine!",
|
|
"drop": "Drop"
|
|
},
|
|
"editor": {
|
|
"bold": "Bold, like a cannonball!",
|
|
"boldPlaceholder": "bold text, matey",
|
|
"code": "Code, ye scallywag!",
|
|
"codePlaceholder": "code, argh!",
|
|
"heading": "Heading, to the horizon!",
|
|
"headingPlaceholder": "heading, savvy?",
|
|
"italic": "Italic, like a wobbly deck!",
|
|
"italicPlaceholder": "italic text, arrr!",
|
|
"link": "Link, a chain to adventure!",
|
|
"linkPlaceholder": "link text, ye dog!",
|
|
"listItem": "List Item, for yer plunder!",
|
|
"listItemPlaceholder": "list item, eh?"
|
|
},
|
|
"errors": {
|
|
"backHome": "{arrow} Back to yer safe harbor",
|
|
"game": {
|
|
"banner": {
|
|
"description": "Drop failed to hoist the banner image: {0}",
|
|
"title": "Failed to hoist the banner image"
|
|
},
|
|
"carousel": {
|
|
"description": "Drop failed to update the image carousel: {0}",
|
|
"title": "Failed to update image carousel"
|
|
},
|
|
"cover": {
|
|
"description": "Drop failed to hoist the cover image: {0}",
|
|
"title": "Failed to hoist the cover image"
|
|
},
|
|
"deleteImage": {
|
|
"description": "Drop failed to scuttle the image: {0}",
|
|
"title": "Failed to scuttle the image"
|
|
},
|
|
"description": {
|
|
"description": "Drop failed to update the game description: {0}",
|
|
"title": "Failed to update game description"
|
|
},
|
|
"metadata": {
|
|
"description": "Drop failed to update the game's charts: {0}",
|
|
"title": "Failed to update yer charts"
|
|
}
|
|
},
|
|
"invalidBody": "Invalid request, ye barnacle-encrusted body: {0}",
|
|
"inviteRequired": "Invitation demanded to sign up, ye landlubber.",
|
|
"library": {
|
|
"add": {
|
|
"desc": "Drop couldn't add this game to yer treasure hoard: {0}",
|
|
"title": "Failed to add game to yer treasure hoard"
|
|
},
|
|
"collection": {
|
|
"create": {
|
|
"desc": "Drop couldn't forge yer collection, argh: {0}",
|
|
"title": "Failed to forge collection"
|
|
}
|
|
},
|
|
"source": {
|
|
"delete": {
|
|
"desc": "Drop couldn't scuttle this source: {0}",
|
|
"title": "Failed to scuttle treasure hoard source"
|
|
}
|
|
}
|
|
},
|
|
"news": {
|
|
"article": {
|
|
"delete": {
|
|
"desc": "Drop couldn't scuttle this article: {0}",
|
|
"title": "Failed to scuttle article"
|
|
}
|
|
}
|
|
},
|
|
"occurred": "An error occurred whilst answerin' yer plea. If ye believe this be a bug, report it, ye dog! Try signin' in and see if it clears the decks.",
|
|
"ohNo": "Blimey!",
|
|
"pageTitle": "{0} | Drop",
|
|
"revokeClient": "Failed to scuttle scallywag",
|
|
"revokeClientFull": "Failed to scuttle scallywag {0}",
|
|
"signIn": "Sign in {arrow}, ye scurvy dog!",
|
|
"support": "Support Discord, arrr!",
|
|
"unknown": "An unknown blunder occurred, savvy?",
|
|
"upload": {
|
|
"description": "Drop couldn't hoist the file: {0}",
|
|
"title": "Failed to hoist the file"
|
|
},
|
|
"version": {
|
|
"delete": {
|
|
"desc": "Drop met a squall whilst scuttlin' the version: {error}",
|
|
"title": "There was a squall whilst scuttlin' the version"
|
|
},
|
|
"order": {
|
|
"desc": "Drop met a squall whilst updatin' the version: {error}",
|
|
"title": "There was a squall whilst updatin' the version order"
|
|
}
|
|
}
|
|
},
|
|
"footer": {
|
|
"about": "About, savvy?",
|
|
"aboutDrop": "About Drop, argh!",
|
|
"comparison": "Comparison, matey!",
|
|
"docs": {
|
|
"client": "Scallywag's Docs",
|
|
"server": "Cap'n's Docs"
|
|
},
|
|
"documentation": "Charts and Scrolls",
|
|
"findGame": "Find a Game, ye dog!",
|
|
"footer": "Keel",
|
|
"games": "Games",
|
|
"social": {
|
|
"discord": "Discord, argh!",
|
|
"github": "GitHub, savvy?"
|
|
},
|
|
"topSellers": "Top Plunderers"
|
|
},
|
|
"header": {
|
|
"admin": {
|
|
"admin": "Cap'n",
|
|
"tasks": "Duties",
|
|
"users": "Crew"
|
|
},
|
|
"back": "Aft!",
|
|
"openSidebar": "Open the side-hatch!"
|
|
},
|
|
"helpUsTranslate": "Help us translate Drop {arrow}, argh!",
|
|
"highest": "highest",
|
|
"home": "Home Port",
|
|
"library": {
|
|
"addGames": "All Plunder",
|
|
"addToLib": "Add to Yer Treasure Hoard",
|
|
"admin": {
|
|
"detectedGame": "Drop has found new plunder to import, argh!",
|
|
"detectedVersion": "Drop has found new versions of this plunder to import, savvy!",
|
|
"game": {
|
|
"addCarouselNoImages": "No images to add, ye dog.",
|
|
"addDescriptionNoImages": "No images to add, argh.",
|
|
"addImageCarousel": "Add from image treasure hoard",
|
|
"currentBanner": "banner",
|
|
"currentCover": "cover",
|
|
"deleteImage": "Scuttle image",
|
|
"editGameDescription": "Plunder Description",
|
|
"editGameName": "Plunder Name",
|
|
"imageCarousel": "Image Carousel",
|
|
"imageCarouselDescription": "Customize what images and what order be shown on the store page, savvy.",
|
|
"imageCarouselEmpty": "No images added to the carousel yet, argh.",
|
|
"imageLibrary": "Image treasure hoard",
|
|
"imageLibraryDescription": "Please note all images hoisted be accessible to all crew through browser dev-tools, savvy.",
|
|
"removeImageCarousel": "Remove image",
|
|
"setBanner": "Set as banner",
|
|
"setCover": "Set as cover"
|
|
},
|
|
"gameLibrary": "Game Treasure Hoard",
|
|
"import": {
|
|
"import": "Import, ye dog!",
|
|
"link": "Import {arrow}",
|
|
"loading": "Loadin' plunder results, arrr...",
|
|
"search": "Search",
|
|
"searchPlaceholder": "Fallout 4, savvy?",
|
|
"selectDir": "Pick a directory, ye landlubber...",
|
|
"selectGame": "Pick plunder to import",
|
|
"selectGamePlaceholder": "Pick a game, ye dog...",
|
|
"selectGameSearch": "Pick game",
|
|
"selectPlatform": "Pick a ship, ye scallywag...",
|
|
"version": {
|
|
"advancedOptions": "Advanced options, savvy?",
|
|
"import": "Import version",
|
|
"installDir": "(install_dir)/",
|
|
"launchCmd": "Launch executable/command, argh!",
|
|
"launchDesc": "Executable to launch the game, matey!",
|
|
"launchPlaceholder": "game.exe, aye!",
|
|
"loadingVersion": "Loading version charts...",
|
|
"noAdv": "No advanced options for this rig, argh.",
|
|
"noVersions": "No versions to import, savvy!",
|
|
"platform": "Ship type",
|
|
"setupCmd": "Setup executable/command",
|
|
"setupDesc": "Ran once when the game is installed, ye hear!",
|
|
"setupMode": "Setup mode, savvy?",
|
|
"setupModeDesc": "When enabled, this version has no launch command, and merely runs the executable on the crew's computer. Useful for games that only give installers and not portable files, argh!",
|
|
"setupPlaceholder": "setup.exe, aye!",
|
|
"umuLauncherId": "UMU Launcher ID",
|
|
"umuOverride": "Override UMU Launcher Game ID",
|
|
"umuOverrideDesc": "By default, Drop uses a non-ID when launchin' with UMU Launcher. To get the right patches for some games, ye might have to set this field by hand, savvy.",
|
|
"updateMode": "Update mode, argh!",
|
|
"updateModeDesc": "When enabled, these files will be installed atop (overwritin') the previous version's. If many 'update modes' be chained together, they be applied in order, ye hear!",
|
|
"version": "Pick version to import"
|
|
},
|
|
"withoutMetadata": "Import without charts"
|
|
},
|
|
"metadataProvider": "Charts Provider",
|
|
"noGames": "No plunder imported, savvy!",
|
|
"openEditor": "Open in Editor {arrow}",
|
|
"openStore": "Open in Store, argh!",
|
|
"shortDesc": "Short Description",
|
|
"sources": {
|
|
"create": "Forge source",
|
|
"createDesc": "Drop will use this source to get to yer game treasure hoard, and make 'em available, argh.",
|
|
"desc": "Rig yer treasure hoard sources, where Drop will look for new plunder and versions to import, savvy.",
|
|
"fsDesc": "Imports games from a path on disk. Needs version-based folder structure, and backs archived games, ye hear!",
|
|
"fsPath": "Path",
|
|
"fsPathDesc": "An absolute path to yer game treasure hoard.",
|
|
"fsPathPlaceholder": "/mnt/games, aye!",
|
|
"link": "Sources {arrow}",
|
|
"nameDesc": "The name of yer source, for yer own reckonin', argh.",
|
|
"namePlaceholder": "My New Source, savvy?",
|
|
"sources": "Treasure Hoard Sources",
|
|
"typeDesc": "The type of yer source. Changes the demanded options, ye dog!",
|
|
"working": "Workin', eh?"
|
|
},
|
|
"subheader": "As ye add folders to yer treasure hoard sources, Drop will find 'em and ask ye to import 'em. Each game needs to be imported before ye can import a version, savvy.",
|
|
"title": "Treasure Hoards",
|
|
"version": {
|
|
"delta": "Upgrade mode",
|
|
"noVersions": "Ye have no versions of this plunder available, ye dog!",
|
|
"noVersionsAdded": "no versions added, argh!"
|
|
},
|
|
"versionPriority": "Version priority"
|
|
},
|
|
"back": "Aft to Treasure Hoard",
|
|
"collection": {
|
|
"addToNew": "Add to new collection",
|
|
"collections": "Collections",
|
|
"create": "Forge Collection",
|
|
"createDesc": "Collections can be used to sort yer plunder and find 'em easier, especially if ye have a grand treasure hoard, argh!",
|
|
"delete": "Scuttle Collection",
|
|
"namePlaceholder": "Collection name, matey!",
|
|
"noCollections": "No collections, savvy!",
|
|
"notFound": "Collection not found, argh!",
|
|
"subheader": "Add a new collection to sort yer plunder",
|
|
"title": "Collection"
|
|
},
|
|
"gameCount": "{0} plunder | {0} plunder | {0} plunder",
|
|
"inLib": "In Treasure Hoard",
|
|
"launcherOpen": "Open in Launcher, argh!",
|
|
"noGames": "No plunder in treasure hoard, savvy!",
|
|
"notFound": "Plunder not found, matey!",
|
|
"search": "Search treasure hoard, ye dog...",
|
|
"subheader": "Sort yer plunder into collections for easy access, and get to all yer plunder, savvy!"
|
|
},
|
|
"lowest": "lowest",
|
|
"news": {
|
|
"article": {
|
|
"add": "Add, ye dog!",
|
|
"content": "Content (Markdown), savvy!",
|
|
"create": "Forge New Article",
|
|
"editor": "Editor",
|
|
"editorGuide": "Use the quick ways above or scribble Markdown directly. Backs **bold**, *italic*, [links](url), and more, argh!",
|
|
"new": "New article, savvy!",
|
|
"preview": "Preview, matey!",
|
|
"shortDesc": "Short description",
|
|
"submit": "Submit, ye scurvy dog!",
|
|
"tagPlaceholder": "Add a mark, ye dog...",
|
|
"titles": "Title, argh!",
|
|
"uploadCover": "Hoist cover image"
|
|
},
|
|
"back": "Aft to News",
|
|
"checkLater": "Check back later for new charts, matey!",
|
|
"delete": "Scuttle Article",
|
|
"filter": {
|
|
"all": "All time, savvy!",
|
|
"month": "This moon",
|
|
"week": "This week",
|
|
"year": "This year, argh!"
|
|
},
|
|
"none": "No articles, savvy!",
|
|
"notFound": "Article not found, matey!",
|
|
"search": "Search articles, ye dog!",
|
|
"searchPlaceholder": "Search articles, argh...",
|
|
"subheader": "Stay up to date with the latest charts and announcements, savvy!",
|
|
"title": "Latest News from the High Seas"
|
|
},
|
|
"options": "Options, matey!",
|
|
"security": "Safety",
|
|
"selectLanguage": "Pick yer tongue",
|
|
"settings": "Settings",
|
|
"store": {
|
|
"commingSoon": "comin' soon, argh!",
|
|
"exploreMore": "Explore more {arrow}, ye dog!",
|
|
"images": "Plunder Images",
|
|
"lookAt": "Look at it, ye scurvy dog!",
|
|
"noGame": "no plunder",
|
|
"noImages": "No images, savvy!",
|
|
"openAdminDashboard": "Open in Cap'n's Quarters",
|
|
"platform": "Ship | Ship | Ships",
|
|
"rating": "Rating, argh!",
|
|
"readLess": "Click to read less, matey!",
|
|
"readMore": "Click to read more, ye dog!",
|
|
"recentlyAdded": "Recently Added Plunder",
|
|
"recentlyReleased": "Recently set sail",
|
|
"recentlyUpdated": "Recently Updated",
|
|
"released": "Released, argh!",
|
|
"reviews": "({0} Sea Tales)",
|
|
"title": "Store",
|
|
"view": "View in Store"
|
|
},
|
|
"tasks": {
|
|
"admin": {
|
|
"back": "{arrow} Aft to Duties",
|
|
"completedTasksTitle": "Duties completed",
|
|
"dailyScheduledTitle": "Daily scheduled duties",
|
|
"noTasksRunning": "No duties currently underway",
|
|
"runningTasksTitle": "Duties underway",
|
|
"scheduled": {
|
|
"checkUpdateDescription": "Check if Drop has new charts.",
|
|
"checkUpdateName": "Check for new charts.",
|
|
"cleanupInvitationsDescription": "Cleans up expired invitations from the logbook to save space, savvy.",
|
|
"cleanupInvitationsName": "Clean up invitations",
|
|
"cleanupObjectsDescription": "Finds and scuttles unreferenced and unused objects to save space, argh.",
|
|
"cleanupObjectsName": "Clean up objects",
|
|
"cleanupSessionsDescription": "Cleans up expired sessions to save space and keep ye safe, ye dog!",
|
|
"cleanupSessionsName": "Clean up sessions."
|
|
},
|
|
"viewTask": "View {arrow}"
|
|
}
|
|
},
|
|
"title": "Drop",
|
|
"titleTemplate": "{0} | Drop",
|
|
"todo": "Todo, argh!",
|
|
"type": "Type",
|
|
"upload": "Hoist!",
|
|
"uploadFile": "Hoist file",
|
|
"userHeader": {
|
|
"closeSidebar": "Close side-hatch!",
|
|
"links": {
|
|
"community": "Shipmates",
|
|
"library": "Treasure Hoard",
|
|
"news": "News from the High Seas"
|
|
},
|
|
"profile": {
|
|
"admin": "Cap'n's Quarters",
|
|
"settings": "Account settings, savvy!"
|
|
}
|
|
},
|
|
"users": {
|
|
"admin": {
|
|
"adminHeader": "Cap'n, eh?",
|
|
"adminUserLabel": "Cap'n of the crew",
|
|
"authLink": "Passage {arrow}",
|
|
"authentication": {
|
|
"configure": "Rig",
|
|
"description": "Drop backs many 'passage ways'. As ye enable or disable 'em, they show on the sign-in screen for the crew to pick. Click the dot menu to rig the passage way.",
|
|
"disabled": "Disabled",
|
|
"enabled": "Enabled",
|
|
"enabledKey": "Enabled, argh?",
|
|
"oidc": "OpenID Connect, savvy?",
|
|
"simple": "Simple (crew name/secret word)",
|
|
"srOpenOptions": "Open options",
|
|
"title": "Passage"
|
|
},
|
|
"authoptionsHeader": "Passage Options",
|
|
"description": "Manage the crew on yer Drop vessel, and set yer passage methods, savvy?",
|
|
"displayNameHeader": "Scallywag Name",
|
|
"emailHeader": "Salty Mail",
|
|
"normalUserLabel": "Common crewman",
|
|
"simple": {
|
|
"adminInvitation": "Cap'n's Invitation",
|
|
"createInvitation": "Forge Invitation",
|
|
"description": "Simple passage uses a system of 'invitations' to create crew. Ye can forge an invitation, and optionally name a crew name or salty mail for the crew, then it'll make a magic scroll that can be used to make a mark.",
|
|
"expires": "Expires: {expiry}",
|
|
"invitationTitle": "Invitations",
|
|
"invite3Days": "3 suns",
|
|
"invite6Months": "6 moons",
|
|
"inviteAdminSwitchDescription": "Make this crewman a cap'n, argh!",
|
|
"inviteAdminSwitchLabel": "Cap'n's invitation",
|
|
"inviteButton": "Invite, ye dog!",
|
|
"inviteDescription": "Drop will make a scroll ye can send to the scallywag ye want to invite. Ye can optionally name a crew name or salty mail for them to use.",
|
|
"inviteEmailDescription": "Must be in the fashion of a scallywag {'@'} example.com",
|
|
"inviteEmailLabel": "Salty mail address (optional)",
|
|
"inviteEmailPlaceholder": "me{'@'}example.com",
|
|
"inviteExpiryLabel": "Expires",
|
|
"inviteMonth": "1 moon",
|
|
"inviteNever": "Never",
|
|
"inviteTitle": "Invite crew to Drop",
|
|
"inviteUsernameFormat": "Must be 5 or more marks",
|
|
"inviteUsernameLabel": "Crew Name (optional)",
|
|
"inviteUsernamePlaceholder": "myScallywagName",
|
|
"inviteWeek": "1 week",
|
|
"inviteYear": "1 year",
|
|
"neverExpires": "Never expires, savvy.",
|
|
"noEmailEnforced": "No salty mail forced, matey.",
|
|
"noInvitations": "No invitations, argh.",
|
|
"noUsernameEnforced": "No crew name forced, argh.",
|
|
"title": "Simple passage",
|
|
"userInvitation": "Crewman's Invitation"
|
|
},
|
|
"srEditLabel": "Amend",
|
|
"usernameHeader": "Crew Name"
|
|
}
|
|
},
|
|
"welcome": "Ahoy, Welcome!"
|
|
}
|