63ac2b8ffc
* feat: nginx + torrential basics & services system * fix: lint + i18n * fix: update torrential to remove openssl * feat: add torrential to Docker build * feat: move to self hosted runner * fix: move off self-hosted runner * fix: update nginx.conf * feat: torrential cache invalidation * fix: update torrential for cache invalidation * feat: integrity check task * fix: lint * feat: move to version ids * fix: client fixes and client-side checks * feat: new depot apis and version id fixes * feat: update torrential * feat: droplet bump and remove unsafe update functions * fix: lint * feat: v4 featureset: emulators, multi-launch commands * fix: lint * fix: mobile ui for game editor * feat: launch options * fix: lint * fix: remove axios, use $fetch * feat: metadata and task api improvements * feat: task actions * fix: slight styling issue * feat: fix style and lints * feat: totp backend routes * feat: oidc groups * fix: update drop-base * feat: creation of passkeys & totp * feat: totp signin * feat: webauthn mfa/signin * feat: launch selecting ui * fix: manually running tasks * feat: update add company game modal to use new SelectorGame * feat: executor selector * fix(docker): update rust to rust nightly for torrential build (#305) * feat: new version ui * feat: move package lookup to build time to allow for deno dev * fix: lint * feat: localisation cleanup * feat: apply localisation cleanup * feat: potential i18n refactor logic * feat: remove args from commands * fix: lint * fix: lockfile --------- Co-authored-by: Aden Lindsay <140392385+AdenMGB@users.noreply.github.com>
110 lines
4.3 KiB
TypeScript
110 lines
4.3 KiB
TypeScript
import type { systemACLs, userACLs } from ".";
|
|
|
|
type ObjectFromList<T extends ReadonlyArray<string>, V = string> = {
|
|
[K in T extends ReadonlyArray<infer U> ? U : never]: V;
|
|
};
|
|
|
|
export const userACLDescriptions: ObjectFromList<typeof userACLs> = {
|
|
read: "Fetch user information like username, display name, email, etc...",
|
|
|
|
"store:read":
|
|
"Fetch and search the store for games, developers and publishers.",
|
|
|
|
"object:read":
|
|
"Read object objects like game images, profile pictures, and downloads.",
|
|
"object:update":
|
|
"Update objects like game images, profile pictures, and downloads.",
|
|
"object:delete":
|
|
"Delete objects like game images, profile pictures, and downloads.",
|
|
|
|
"notifications:read": "Fetch this account's notifications.",
|
|
"notifications:mark": "Mark notifications as read for this account.",
|
|
"notifications:listen": "Connect to a websocket to receive notifications.",
|
|
"notifications:delete": "Delete this account's notifications.",
|
|
|
|
"screenshots:new": "Create screenshots for this account",
|
|
"screenshots:read": "Read all screenshots for this account",
|
|
"screenshots:delete": "Delete a screenshot for this account",
|
|
|
|
"collections:new": "Create collections for this account.",
|
|
"collections:read": "Fetch all collections (including library).",
|
|
"collections:delete": "Delete a collection for this account.",
|
|
"collections:add": "Add a game to any collection (excluding library).",
|
|
"collections:remove":
|
|
"Remove a game from any collection (excluding library).",
|
|
"library:add": "Add a game to your library.",
|
|
"library:remove": "Remove a game from your library.",
|
|
|
|
"clients:read": "Read the clients connected to this account",
|
|
"clients:revoke": "Remove clients connected to this account",
|
|
|
|
"news:read": "Read the server's news articles.",
|
|
|
|
"settings:read": "Read system settings.",
|
|
};
|
|
|
|
export const systemACLDescriptions: ObjectFromList<typeof systemACLs> = {
|
|
setup:
|
|
"All permissions required to setup a new Drop instance (setup wizard).",
|
|
|
|
"auth:read":
|
|
"Fetch the list of enabled authentication mechanisms configured.",
|
|
"auth:simple:invitation:read": "Fetch simple auth invitations.",
|
|
"auth:simple:invitation:new": "Create new simple auth invitations.",
|
|
"auth:simple:invitation:delete": "Delete a simple auth invitation.",
|
|
|
|
"library:read": "Fetch a list of all games on this instance.",
|
|
"library:sources:read":
|
|
"Fetch a list of all library sources on this instance",
|
|
"library:sources:new": "Create a new library source.",
|
|
"library:sources:update": "Update existing library sources.",
|
|
"library:sources:delete": "Delete library sources.",
|
|
|
|
"notifications:read": "Read system notifications.",
|
|
"notifications:mark": "Mark system notifications as read.",
|
|
"notifications:listen": "Connect to the system notification websocket.",
|
|
"notifications:delete": "Delete system notifications.",
|
|
|
|
"game:read": "Fetch a given game on this instance.",
|
|
"game:update": "Update a game on this instance.",
|
|
"game:delete": "Delete a game on this instance.",
|
|
"game:version:update": "Update the version order on a game.",
|
|
"game:version:delete": "Delete a version for a game.",
|
|
"game:image:new": "Upload an image for a game.",
|
|
"game:image:delete": "Delete an image for a game.",
|
|
|
|
"company:read": "Fetch companies.",
|
|
"company:create": "Create a new company.",
|
|
"company:update": "Update existing companies.",
|
|
"company:delete": "Delete companies.",
|
|
|
|
"import:version:read":
|
|
"Fetch versions to be imported, and information about versions to be imported.",
|
|
"import:version:new": "Import a game version.",
|
|
"import:game:read":
|
|
"Fetch games to be imported, and search the metadata for games.",
|
|
"import:game:new": "Import a game.",
|
|
|
|
"tags:read": "Fetch all tags",
|
|
"tags:create": "Create a tag",
|
|
"tags:delete": "Delete a tag",
|
|
|
|
"user:read": "Fetch any user's information.",
|
|
"user:delete": "Delete a user.",
|
|
|
|
"news:read": "Read news articles.",
|
|
"news:create": "Create a new news article.",
|
|
"news:delete": "Delete a news article.",
|
|
|
|
"task:read": "Read all tasks currently running on server.",
|
|
"task:start": "Manually execute scheduled tasks.",
|
|
|
|
"maintenance:read":
|
|
"Read tasks and maintenance information, like updates available and cleanup.",
|
|
|
|
"settings:update": "Update system settings.",
|
|
|
|
"depot:new": "Create a new download depot",
|
|
"depot:delete": "Remove a download depot",
|
|
};
|