diff --git a/pages/dashboard/moderation.vue b/pages/dashboard/moderation.vue
new file mode 100644
index 00000000..740e3671
--- /dev/null
+++ b/pages/dashboard/moderation.vue
@@ -0,0 +1,121 @@
+
+
+
+
+
+
+
diff --git a/pages/dashboard/projects.vue b/pages/dashboard/projects.vue
index 86ed02bc..40d195c2 100644
--- a/pages/dashboard/projects.vue
+++ b/pages/dashboard/projects.vue
@@ -7,6 +7,16 @@
My mods
+
+
+ Moderation
+
@@ -49,12 +59,14 @@ import EthicalAd from '@/components/EthicalAd'
import ModCard from '@/components/ProjectCard'
import ModIcon from '~/assets/images/sidebar/mod.svg?inline'
+import ModerationIcon from '~/assets/images/sidebar/admin.svg?inline'
export default {
components: {
EthicalAd,
ModCard,
ModIcon,
+ ModerationIcon,
},
async asyncData(data) {
const config = {
@@ -92,86 +104,6 @@ export default {
}
}
-table {
- border-collapse: collapse;
- table-layout: fixed;
- width: 100%;
- margin-bottom: var(--spacing-card-md);
- background: var(--color-raised-bg);
- border-radius: var(--size-rounded-card);
-
- * {
- text-align: left;
- }
-
- tr:not(:last-child),
- tr:first-child {
- th,
- td {
- border-bottom: 1px solid var(--color-divider);
- }
- }
-
- th,
- td {
- &:first-child {
- text-align: center;
- width: 7%;
- }
-
- &:nth-child(2) {
- padding-left: 0;
- width: 30%;
- }
- }
-
- th {
- color: var(--color-heading);
- font-size: 0.8rem;
- letter-spacing: 0.02rem;
- margin-bottom: 0.5rem;
- margin-top: 1.5rem;
- padding: 1rem 1rem;
- text-transform: uppercase;
- }
-
- td {
- padding: 0.75rem;
-
- img {
- height: 3rem;
- width: 3rem;
- }
- }
-}
-
-@media screen and (max-width: 550px) {
- th,
- td {
- &:nth-child(1) {
- img {
- height: 2rem;
- width: 2rem;
- }
- }
- &:nth-child(3) {
- display: none;
- }
- }
-}
-
-@media screen and (max-width: 850px) {
- th,
- td {
- &:nth-child(2) {
- width: 25% !important;
- }
- &:nth-child(6) {
- display: none;
- }
- }
-}
-
.mod-name {
font-weight: bold;
}
diff --git a/pages/mod/_id/index.vue b/pages/mod/_id/index.vue
index 80b92ceb..455645be 100644
--- a/pages/mod/_id/index.vue
+++ b/pages/mod/_id/index.vue
@@ -18,36 +18,39 @@ export default {
},
}
- let res = await axios.get(
- `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
- config
- )
- const mod = res.data
-
- res = await axios.get(
- `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
- config
- )
- const members = res.data
- for (let i = 0; i < members.length; i++) {
- res = await axios.get(
- `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ const mod = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
config
)
- members[i].avatar_url = res.data.avatar_url
+ ).data
+
+ const members = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
+ config
+ )
+ ).data
+ for (let i = 0; i < members.length; i++) {
+ members[i].avatar_url = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ config
+ )
+ ).data.avatar_url
}
+ const versions = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
+ mod.versions
+ )}`,
+ config
+ )
+ ).data.reverse()
+
const body = (await axios.get(mod.body_url)).data
- res = await axios.get(
- `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
- mod.versions
- )}`,
- config
- )
-
- const versions = res.data.reverse()
-
return {
mod,
body,
diff --git a/pages/mod/_id/version/_version.vue b/pages/mod/_id/version/_version.vue
index 0f374173..b27f48fb 100644
--- a/pages/mod/_id/version/_version.vue
+++ b/pages/mod/_id/version/_version.vue
@@ -125,33 +125,36 @@ export default {
},
}
- let res = await axios.get(
- `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
- config
- )
- const mod = res.data
-
- res = await axios.get(
- `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
- config
- )
- const members = res.data
- for (let i = 0; i < members.length; i++) {
- res = await axios.get(
- `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ const mod = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
config
)
- members[i].avatar_url = res.data.avatar_url
+ ).data
+
+ const members = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
+ config
+ )
+ ).data
+ for (let i = 0; i < members.length; i++) {
+ members[i].avatar_url = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ config
+ )
+ ).data.avatar_url
}
- res = await axios.get(
- `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
- mod.versions
- )}`,
- config
- )
-
- const versions = res.data.reverse()
+ const versions = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
+ mod.versions
+ )}`,
+ config
+ )
+ ).data.reverse()
const version = versions.find((x) => x.id === data.params.version)
diff --git a/pages/mod/_id/versions.vue b/pages/mod/_id/versions.vue
index 2f16964f..7cfd77e3 100644
--- a/pages/mod/_id/versions.vue
+++ b/pages/mod/_id/versions.vue
@@ -224,39 +224,44 @@ export default {
},
}
- let res = await axios.get(
- `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
- config
- )
- const mod = res.data
-
- res = await axios.get(
- `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
- config
- )
- const members = res.data
- for (let i = 0; i < members.length; i++) {
- res = await axios.get(
- `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ const mod = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/mod/${data.params.id}`,
config
)
- members[i].avatar_url = res.data.avatar_url
+ ).data
+
+ const members = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/team/${mod.team}/members`,
+ config
+ )
+ ).data
+ for (let i = 0; i < members.length; i++) {
+ members[i].avatar_url = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/user/${members[i].user_id}`,
+ config
+ )
+ ).data.avatar_url
}
- res = await axios.get(
- `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
- mod.versions
- )}`,
- config
- )
+ const versions = (
+ await axios.get(
+ `https://api.modrinth.com/api/v1/versions?ids=${JSON.stringify(
+ mod.versions
+ )}`,
+ config
+ )
+ ).data.reverse()
- const versions = res.data.reverse()
+ const selectableLoaders = (
+ await axios.get(`https://api.modrinth.com/api/v1/tag/loader`)
+ ).data
- res = await axios.get(`https://api.modrinth.com/api/v1/tag/loader`)
- const selectableLoaders = res.data
-
- res = await axios.get(`https://api.modrinth.com/api/v1/tag/game_version`)
- const selectableVersions = res.data
+ const selectableVersions = (
+ await axios.get(`https://api.modrinth.com/api/v1/tag/game_version`)
+ ).data
return {
mod,