- {{ name }} -
-- {{ description }} -
-- {{ $formatNumber(downloads) }} downloads -
-- {{ $formatNumber(follows) }} followers -
-diff --git a/.editorconfig b/.editorconfig index 94b3660e..9fdd83cb 100644 --- a/.editorconfig +++ b/.editorconfig @@ -3,8 +3,7 @@ root = true [*] charset = utf-8 -indent_style = space -indent_size = 4 +indent_style = "tab" end_of_line = lf insert_final_newline = true trim_trailing_whitespace = true @@ -15,5 +14,5 @@ indent_size = 2 max_line_length = off trim_trailing_whitespace = false -[*.{json,yml,yaml,ts,vue,scss,css,html,js,cjs,mjs,gltf,prettierrc}] +[*.{json,yml,yaml}] indent_size = 2 diff --git a/.vscode/settings.json b/.vscode/settings.json index 4d178702..81e9bb92 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,10 +1,15 @@ { - "prettier.endOfLine": "lf", - "editor.formatOnSave": true, - "eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact"], - "editor.detectIndentation": true, - "editor.codeActionsOnSave": { - "source.fixAll.eslint": "explicit", - "source.organizeImports": "always", - } + "prettier.endOfLine": "lf", + "editor.formatOnSave": true, + "eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact"], + "editor.detectIndentation": false, + "editor.insertSpaces": false, + "files.eol": "\n", + "files.trimTrailingWhitespace": true, + "files.insertFinalNewline": true, + "editor.codeActionsOnSave": { + "source.fixAll.eslint": "explicit", + "source.organizeImports": "always" + }, + "editor.defaultFormatter": "esbenp.prettier-vscode" } diff --git a/apps/app-frontend/.prettierignore b/apps/app-frontend/.prettierignore index 0cb3e84e..f631b52a 100644 --- a/apps/app-frontend/.prettierignore +++ b/apps/app-frontend/.prettierignore @@ -1,2 +1,3 @@ **/dist *.gltf +src/locales/ diff --git a/apps/app-frontend/eslint.config.mjs b/apps/app-frontend/eslint.config.mjs index 05f55942..3d6da7fb 100644 --- a/apps/app-frontend/eslint.config.mjs +++ b/apps/app-frontend/eslint.config.mjs @@ -1,22 +1,2 @@ -import { createConfigForNuxt } from '@nuxt/eslint-config/flat' -import { fixupPluginRules } from '@eslint/compat' -import turboPlugin from 'eslint-plugin-turbo' - -export default createConfigForNuxt().append([ - { - name: 'turbo', - plugins: { - turbo: fixupPluginRules(turboPlugin), - }, - rules: { - 'turbo/no-undeclared-env-vars': 'error', - }, - }, - { - name: 'modrinth', - rules: { - 'vue/html-self-closing': 'off', - 'vue/multi-word-component-names': 'off', - }, - }, -]) +import config from '@modrinth/tooling-config/eslint/nuxt.mjs' +export default config diff --git a/apps/app-frontend/index.html b/apps/app-frontend/index.html index e5549f28..50867a41 100644 --- a/apps/app-frontend/index.html +++ b/apps/app-frontend/index.html @@ -1,17 +1,17 @@ -
- - - -{{ instanceSection.key }}
- -{{ instanceSection.key }}
+ +Selected
-Selected
+- It looks like there were issues with the Modrinth App connecting to Microsoft's - servers. This is often the result of a poor connection, so we recommend trying again - to see if it works. If issues continue to persist, follow the steps in - - our support article - - to troubleshoot. -
- - -- The Modrinth App tried to connect to Microsoft / Xbox / Minecraft services, but the - remote server rejected the connection. This may indicate that these services are - blocked by the hosts file. Please visit - - our support article - - for steps on how to fix the issue. -
- - -- Double check you've signed in with the right account. You may own Minecraft on a - different Microsoft account. -
- -- Try signing in with the - official Minecraft Launcher - first. Once you're done, come back here and sign in! -
- - - - - -- It looks like the Modrinth App is unable to write to the directory you selected. - Please adjust the permissions of the directory and try again or cancel the directory - change. -
- - -- It looks like there is not enough space on the disk containing the directory you - selected. Please free up some space and try again or cancel the directory change. -
- - -- The Modrinth App is unable to migrate to the new directory you selected. Please - contact support for help or cancel the directory change. -
- ++ It looks like there were issues with the Modrinth App connecting to Microsoft's + servers. This is often the result of a poor connection, so we recommend trying again + to see if it works. If issues continue to persist, follow the steps in + + our support article + + to troubleshoot. +
+ + ++ The Modrinth App tried to connect to Microsoft / Xbox / Minecraft services, but the + remote server rejected the connection. This may indicate that these services are + blocked by the hosts file. Please visit + + our support article + + for steps on how to fix the issue. +
+ + ++ Double check you've signed in with the right account. You may own Minecraft on a + different Microsoft account. +
+ ++ Try signing in with the + official Minecraft Launcher + first. Once you're done, come back here and sign in! +
+ + + + + ++ It looks like the Modrinth App is unable to write to the directory you selected. + Please adjust the permissions of the directory and try again or cancel the directory + change. +
+ + ++ It looks like there is not enough space on the disk containing the directory you + selected. Please free up some space and try again or cancel the directory change. +
+ + ++ The Modrinth App is unable to migrate to the new directory you selected. Please + contact support for help or cancel the directory change. +
+ - - -- To play this instance, you must sign in through Microsoft below. If you don't have a - Minecraft account, you can purchase the game on the - Minecraft website. -
- -- Modrinth App failed to load correctly. This may be because of a corrupted file, or - because the app is missing crucial files. -
-You may be able to fix it through one of the following ways:
-The Modrinth App failed to find the loader version for this instance.
-To resolve this, you need to repair the instance. Click the button below to do so.
- - - - {{ debugInfo }} - - -- If nothing is working and you need help, visit - our support page - and start a chat using the widget in the bottom right and we will be more than happy to - assist! Make sure to provide the following debug information to the agent: -
- -+ To play this instance, you must sign in through Microsoft below. If you don't have a + Minecraft account, you can purchase the game on the + Minecraft website. +
+ ++ Modrinth App failed to load correctly. This may be because of a corrupted file, or + because the app is missing crucial files. +
+You may be able to fix it through one of the following ways:
+The Modrinth App failed to find the loader version for this instance.
+To resolve this, you need to repair the instance. Click the button below to do so.
+ + + + {{ debugInfo }} + + ++ If nothing is working and you need help, visit + our support page + and start a chat using the widget in the bottom right and we will be more than happy to + assist! Make sure to provide the following debug information to the agent: +
+ +Modpack Name
-Version number
-Description
+Modpack Name
+Version number
+Description
-Name
- -Loader
-Game version
-Loader version
-Select version
-Select a game version before you select a loader version
-Name
+ +Loader
+Game version
+Loader version
+Select version
+Select a game version before you select a loader version
+- {{ project.description }} -
-+ {{ project.description }} +
+
-
-
-
+
+
+ Add friends to share what you're playing!
-You have no pending friend requests :C
-- - {{ friend.username }} sent you a friend request - - - You sent {{ friend.username }} a friend request - -
-- {{ formatRelativeTime(friend.created.toISOString()) }} -
-You can add friends with their Modrinth username.
- -Add friends to share what you're playing!
+You have no pending friend requests :C
++ + {{ friend.username }} sent you a friend request + + + You sent {{ friend.username }} a friend request + +
++ {{ formatRelativeTime(friend.created.toISOString()) }} +
+You can add friends with their Modrinth username.
+ +- This {{ versions?.length > 0 ? 'project' : 'version' }} is not compatible with the instance - you're trying to install it on. Are you sure you want to continue? Dependencies will not be - installed. -
-| {{ instance?.name }} | -{{ project.title }} | -
|---|---|
| {{ instance?.loader }} {{ instance?.game_version }} | -
- |
-
+ This {{ versions?.length > 0 ? 'project' : 'version' }} is not compatible with the instance + you're trying to install it on. Are you sure you want to continue? Dependencies will not be + installed. +
+| {{ instance?.name }} | +{{ project.title }} | +
|---|---|
| {{ instance?.loader }} {{ instance?.game_version }} | +
+ |
+
You already have this modpack installed. Are you sure you want to install it again?
-You already have this modpack installed. Are you sure you want to install it again?
+- {{ formatMessage(messages.duplicateInstanceDescription) }} -
-- {{ formatMessage(messages.libraryGroupsDescription) }} -
-- {{ formatMessage(messages.deleteInstanceDescription) }} -
-+ {{ formatMessage(messages.duplicateInstanceDescription) }} +
++ {{ formatMessage(messages.libraryGroupsDescription) }} +
++ {{ formatMessage(messages.deleteInstanceDescription) }} +
+- {{ formatMessage(messages.hooksDescription) }} -
-+ {{ formatMessage(messages.hooksDescription) }} +
+- {{ formatMessage(messages.preLaunchDescription) }} -
- ++ {{ formatMessage(messages.preLaunchDescription) }} +
+ -- {{ formatMessage(messages.wrapperDescription) }} -
- ++ {{ formatMessage(messages.wrapperDescription) }} +
+ -- {{ formatMessage(messages.postExitDescription) }} -
- -+ {{ formatMessage(messages.postExitDescription) }} +
+ +
-
{{ formatMessage(messages.debugInformation) }}
-- {{ formatMessage(messages.unlinkInstanceDescription) }} -
-- {{ formatMessage(messages.reinstallModpackDescription) }} -
-
+
{{ formatMessage(messages.debugInformation) }}
++ {{ formatMessage(messages.unlinkInstanceDescription) }} +
++ {{ formatMessage(messages.reinstallModpackDescription) }} +
+- {{ formatMessage(messages.fullscreenDescription) }} -
-+ {{ formatMessage(messages.fullscreenDescription) }} +
+- {{ formatMessage(messages.widthDescription) }} -
-+ {{ formatMessage(messages.widthDescription) }} +
+- {{ formatMessage(messages.heightDescription) }} -
-+ {{ formatMessage(messages.heightDescription) }} +
+- {{ formatMessage(developerModeEnabled) }} -
-Modrinth App {{ version }}
-- MacOS - {{ osPlatform }} - {{ osVersion }} -
-+ {{ formatMessage(developerModeEnabled) }} +
+Modrinth App {{ version }}
++ MacOS + {{ osPlatform }} + {{ osVersion }} +
+- Please sign in at the browser window that just opened to continue. -
-+ Please sign in at the browser window that just opened to continue. +
+Select your preferred color theme for Modrinth App.
+Select your preferred color theme for Modrinth App.
-- Enables advanced rendering such as blur effects that may cause performance issues without - hardware-accelerated rendering. -
-+ Enables advanced rendering such as blur effects that may cause performance issues without + hardware-accelerated rendering. +
+Disables the nametag above your player on the skins page.
-Disables the nametag above your player on the skins page.
+Use system window frame (app restart required).
-Use system window frame (app restart required).
+Minimize the launcher when a Minecraft process starts.
-Minimize the launcher when a Minecraft process starts.
+Change the page to which the launcher opens on.
-Change the page to which the launcher opens on.
+Includes recent worlds in the "Jump back in" section on the Home page.
-Includes recent worlds in the "Jump back in" section on the Home page.
+Enables the ability to toggle the sidebar.
-Enables the ability to toggle the sidebar.
+- Overwrites the options.txt file to start in full screen when launched. -
-+ Overwrites the options.txt file to start in full screen when launched. +
+- The width of the game window when launched. -
-+ The width of the game window when launched. +
+- The height of the game window when launched. -
-+ The height of the game window when launched. +
+The memory allocated to each instance when it is ran.
-The memory allocated to each instance when it is ran.
+Ran before the instance is launched.
- +Ran before the instance is launched.
+ -- Wrapper command for launching Minecraft. -
- ++ Wrapper command for launching Minecraft. +
+ -Ran after the game closes.
- -Ran after the game closes.
+ +- Modrinth's ad provider, Aditude, shows ads based on your preferences. By disabling this - option, you opt out and ads will no longer be shown based on your interests. -
-+ Modrinth's ad provider, Aditude, shows ads based on your preferences. By disabling this + option, you opt out and ads will no longer be shown based on your interests. +
+- Modrinth collects anonymized analytics and usage data to improve our user experience and - customize your experience. By disabling this option, you opt out and your data will no - longer be collected. -
-+ Modrinth collects anonymized analytics and usage data to improve our user experience and + customize your experience. By disabling this option, you opt out and your data will no + longer be collected. +
+- Manages the Discord Rich Presence integration. Disabling this will cause 'Modrinth' to no - longer show up as a game or app you are using on your Discord profile. -
-- Note: This will not prevent any instance-specific Discord Rich Presence integrations, such - as those added by mods. (app restart required to take effect) -
-+ Manages the Discord Rich Presence integration. Disabling this will cause 'Modrinth' to no + longer show up as a game or app you are using on your Discord profile. +
++ Note: This will not prevent any instance-specific Discord Rich Presence integrations, such + as those added by mods. (app restart required to take effect) +
+- The directory where the launcher stores all of its files. Changes will be applied after - restarting the launcher. -
++ The directory where the launcher stores all of its files. Changes will be applied after + restarting the launcher. +
-- The Modrinth app stores a cache of data to speed up loading. This can be purged to force the - app to reload data. This may slow down the app temporarily. -
-+ The Modrinth app stores a cache of data to speed up loading. This can be purged to force the + app to reload data. This may slow down the app temporarily. +
+- The maximum amount of files the launcher can download at the same time. Set this to a lower - value if you have a poor internet connection. (app restart required to take effect) -
-+ The maximum amount of files the launcher can download at the same time. Set this to a lower + value if you have a poor internet connection. (app restart required to take effect) +
+- The maximum amount of files the launcher can write to the disk at once. Set this to a lower - value if you are frequently getting I/O errors. (app restart required to take effect) -
-+ The maximum amount of files the launcher can write to the disk at once. Set this to a lower + value if you are frequently getting I/O errors. (app restart required to take effect) +
+- Please sign into your Minecraft account to use the skin management features of the - Modrinth app. -
-+ Please sign into your Minecraft account to use the skin management features of the + Modrinth app. +
+
- You haven't added any content to this instance yet.
-
+ You haven't added any content to this instance yet.
+
-
+ - Your new collection will be created as a public collection with - {{ projectIds.length > 0 ? projectIds.length : "no" }} - {{ projectIds.length !== 1 ? "projects" : "project" }}. -
-+ Your new collection will be created as a public collection with + {{ projectIds.length > 0 ? projectIds.length : 'no' }} + {{ projectIds.length !== 1 ? 'projects' : 'project' }}. +
+- You will be the owner of this organization, but you can invite other members and transfer - ownership at any time. -
-+ You will be the owner of this organization, but you can invite other members and transfer + ownership at any time. +
+- {{ description }} -
-- {{ $formatNumber(downloads) }} downloads -
-- {{ $formatNumber(follows) }} followers -
-+ {{ description }} +
++ {{ $formatNumber(downloads) }} downloads +
++ {{ $formatNumber(follows) }} followers +
+- {{ formatMessage(messages.invitationWithRole, { role: currentMember.project_role }) }} -
-{{ getFormattedMessage(messages.invitationNoRole) }}
-+ {{ formatMessage(messages.invitationWithRole, { role: currentMember.project_role }) }} +
+{{ getFormattedMessage(messages.invitationNoRole) }}
+- You are done moderating this project! - - There are - {{ moderationStore.queueLength }} left. - -
-+ You are done moderating this project! + + There are + {{ moderationStore.queueLength }} left. + +
+All permissions already obtained.
-All permissions already obtained.
+All permission checks complete!
-All permission checks complete!
+What is the approval type of {{ modPackData[currentIndex].file_name }}?
-What is the approval type of {{ modPackData[currentIndex].file_name }}?
+- What is the approval type of {{ modPackData[currentIndex].title }} ({{ modPackData[currentIndex].url }})? -
-+ What is the approval type of {{ modPackData[currentIndex].title }} ({{ modPackData[currentIndex].url }})? +
+- Does this project provide identification and permission for - {{ modPackData[currentIndex].file_name }}? -
-- Does this project provide attribution for - {{ modPackData[currentIndex].file_name }}? -
-- Does this project provide proof of permission for - {{ modPackData[currentIndex].file_name }}? -
-+ Does this project provide identification and permission for + {{ modPackData[currentIndex].file_name }}? +
++ Does this project provide attribution for + {{ modPackData[currentIndex].file_name }}? +
++ Does this project provide proof of permission for + {{ modPackData[currentIndex].file_name }}? +
+- There are at least {{ MAX_REPORTS }} open reports. This page is at its max reports and will - not show any more recent ones. -
-There are {{ filteredReports.length }} open reports.
-- There are {{ filteredReports.length }}/{{ reports.length }} open '{{ reasonFilter }}' reports. -
- -You don't have any active reports.
+ ++ There are at least {{ MAX_REPORTS }} open reports. This page is at its max reports and will + not show any more recent ones. +
+There are {{ filteredReports.length }} open reports.
++ There are {{ filteredReports.length }}/{{ reports.length }} open '{{ reasonFilter }}' reports. +
+ +You don't have any active reports.
diff --git a/apps/frontend/src/components/ui/search/Categories.vue b/apps/frontend/src/components/ui/search/Categories.vue index 7ef1efaf..814b1b7f 100644 --- a/apps/frontend/src/components/ui/search/Categories.vue +++ b/apps/frontend/src/components/ui/search/Categories.vue @@ -1,72 +1,72 @@ -{{ backup }}
- {{ backup }}
+ - Automatically create a backup of your server - {{ backupIntervalsLabel.toLowerCase() }} -
-+ Automatically create a backup of your server + {{ backupIntervalsLabel.toLowerCase() }} +
+- The amount of time between each backup. This will only backup your server if it has been - modified since the last backup. -
-+ The amount of time between each backup. This will only backup your server if it has been + modified since the last backup. +
+- - {{ - noCompatibleVersions - ? `No compatible versions of this ${type.toLowerCase()} were found` - : versionFilter - ? "Game version and platform is provided by the server" - : "Incompatible game version and platform versions are unlocked" - }} - -
-
- {{
- noCompatibleVersions
- ? `No versions compatible with your server were found. You can still select any available version.`
- : versionFilter
- ? `Unlocking this filter may allow you to change this ${type.toLowerCase()}
+
+
+ {{
+ noCompatibleVersions
+ ? `No compatible versions of this ${type.toLowerCase()} were found`
+ : versionFilter
+ ? 'Game version and platform is provided by the server'
+ : 'Incompatible game version and platform versions are unlocked'
+ }}
+
+
+ {{
+ noCompatibleVersions
+ ? `No versions compatible with your server were found. You can still select any available version.`
+ : versionFilter
+ ? `Unlocking this filter may allow you to change this ${type.toLowerCase()}
to an incompatible version.`
- : "You might see versions listed that aren't compatible with your server configuration."
- }}
-
- {{ message }} -
-+ {{ message }} +
+{{ state.errorMessage || "Invalid or empty image file." }}
-{{ state.errorMessage || 'Invalid or empty image file.' }}
+- - Over 100 files will be overwritten if you proceed with extraction; here is just some of - them: - - - The following {{ files.length }} files already exist on your server, and will be - overwritten if you proceed with extraction: - -
-+ + Over 100 files will be overwritten if you proceed with extraction; here is just some of + them: + + + The following {{ files.length }} files already exist on your server, and will be + overwritten if you proceed with extraction: + +
+- Drop {{ type ? type.toLocaleLowerCase() : "file" }}s here to upload -
-+ Drop {{ type ? type.toLocaleLowerCase() : 'file' }}s here to upload +
+- {{ loaderVersion }} -
-+ {{ loaderVersion }} +
+- Are you sure you want to {{ confirmActionText }} the - server? -
-+ Are you sure you want to + {{ confirmActionText }} the server? +
+{{ serverData }}
- {{ serverData }}
+ - Select the version of {{ props.project?.title || "the modpack" }} you want to install on - your server. -
-- Currently installed: {{ props.currentVersion.version_number }} -
-+ Select the version of {{ props.project?.title || 'the modpack' }} you want to install on + your server. +
++ Currently installed: {{ props.currentVersion.version_number }} +
+- This will reinstall your server and erase all data. You may want to back up your server - before proceeding. Are you sure you want to continue? -
-+ This will reinstall your server and erase all data. You may want to back up your server + before proceeding. Are you sure you want to continue? +
+- {{ - "This will reinstall your server and erase all data. Are you sure you want to continue?" - }} -
-+ {{ + 'This will reinstall your server and erase all data. Are you sure you want to continue?' + }} +
+Something went wrong while loading your modpack.
-- {{ versionsError || currentVersionError }} -
-Something went wrong while loading your modpack.
++ {{ versionsError || currentVersionError }} +
+Your server's platform is the software that runs mods and plugins.
-Your server's platform is the software that runs mods and plugins.
+It'll appear here once it's ready.
-It'll appear here once it's ready.
+
- Modrinth Servers is a new way to play modded Minecraft with your friends.
-
+ Modrinth Servers is a new way to play modded Minecraft with your friends.
+{{ formatMessage(plans[plan].description) }}
-{{ formatMessage(plans[plan].description) }}
+This thread is closed and new messages cannot be sent to it.
-This thread is closed and new messages cannot be sent to it.
+This thread is closed and new messages cannot be sent to it.
-This thread is closed and new messages cannot be sent to it.
+