diff --git a/components/Popup.vue b/components/Popup.vue
new file mode 100644
index 000000000..f7abcf819
--- /dev/null
+++ b/components/Popup.vue
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
diff --git a/nuxt.config.js b/nuxt.config.js
index 36a44df39..611554ce7 100644
--- a/nuxt.config.js
+++ b/nuxt.config.js
@@ -31,6 +31,7 @@ export default {
content: 'Modrinth',
},
{ hid: 'theme-color', name: 'theme-color', content: '#4d9227' },
+ { hid: 'color-scheme', name: 'color-scheme', content: 'light dark' },
{ hid: 'og:site_name', name: 'og:site_name', content: 'Modrinth' },
{
@@ -45,6 +46,8 @@ export default {
name: 'og:image',
content: 'https://cdn.modrinth.com/modrinth.png',
},
+ { hid: 'twitter:card', name: 'twitter:card', content: 'summary' },
+ { hid: 'twitter:site', name: 'twitter:site', content: '@modrinth' },
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
diff --git a/pages/mod/_id/index.vue b/pages/mod/_id/index.vue
index f932d84d5..8c0d443c4 100644
--- a/pages/mod/_id/index.vue
+++ b/pages/mod/_id/index.vue
@@ -73,6 +73,11 @@ export default {
name: 'og:site_name',
content: this.mod.title,
},
+ {
+ hid: 'og:url',
+ name: 'og:url',
+ content: `https://modrinth.com/mod/${this.mod.id}`,
+ },
{
hid: 'og:description',
name: 'og:description',
diff --git a/pages/mod/_id/settings.vue b/pages/mod/_id/settings.vue
new file mode 100644
index 000000000..6a00130e2
--- /dev/null
+++ b/pages/mod/_id/settings.vue
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
diff --git a/pages/mod/_id/version/_version.vue b/pages/mod/_id/version/_version.vue
index 5e9243744..d79a93612 100644
--- a/pages/mod/_id/version/_version.vue
+++ b/pages/mod/_id/version/_version.vue
@@ -1,7 +1,17 @@
-
{{ version.name }}
+
@@ -46,6 +56,8 @@ import xss from 'xss'
import marked from 'marked'
import DownloadIcon from '~/assets/images/utils/download.svg?inline'
+import UploadIcon from '~/assets/images/utils/upload.svg?inline'
+import TrashIcon from '~/assets/images/utils/trash.svg?inline'
import ForgeIcon from '~/assets/images/categories/forge.svg?inline'
import FabricIcon from '~/assets/images/categories/fabric.svg?inline'
@@ -56,6 +68,8 @@ export default {
ForgeIcon,
FabricIcon,
DownloadIcon,
+ UploadIcon,
+ TrashIcon,
},
auth: false,
async asyncData(data) {
@@ -121,12 +135,17 @@ export default {
name: 'og:site_name',
content: this.mod.title + ' - Modrinth',
},
+ {
+ hid: 'og:url',
+ name: 'og:url',
+ content: `https://modrinth.com/mod/${this.mod.id}`,
+ },
{
hid: 'og:description',
name: 'og:description',
content: this.mod.description,
},
- { hid: 'og:type', name: 'og:type', content: 'article' },
+ { hid: 'og:type', name: 'og:type', content: 'website' },
{
hid: 'og:image',
name: 'og:image',
@@ -147,6 +166,36 @@ export default {
box-shadow: 0 2px 3px 1px var(--color-grey-2);
padding: 1em;
+ .header {
+ h3 {
+ display: inline-block;
+ }
+ .user-actions {
+ float: right;
+
+ button {
+ cursor: pointer;
+ margin-right: 10px;
+ padding: 5px;
+ border: none;
+ border-radius: var(--size-rounded-sm);
+ }
+
+ .trash {
+ color: #9b2c2c;
+ background-color: var(--color-bg);
+ }
+
+ .upload {
+ color: var(--color-text);
+ background-color: var(--color-grey-1);
+ * {
+ margin: auto 0;
+ }
+ }
+ }
+ }
+
hr {
margin: 20px 0;
color: var(--color-grey-1);
diff --git a/pages/mod/_id/versions.vue b/pages/mod/_id/versions.vue
index b6a267150..1d52a5c5e 100644
--- a/pages/mod/_id/versions.vue
+++ b/pages/mod/_id/versions.vue
@@ -53,23 +53,159 @@
+
+ New Version
+
+
Error
+
{{ currentError }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -483,32 +463,6 @@ input {
margin-top: 0.5rem;
}
-[type='file'] {
- border: 0;
- clip: rect(0, 0, 0, 0);
- height: 1px;
- overflow: hidden;
- padding: 0;
- position: absolute !important;
- white-space: nowrap;
- width: 1px;
-
- + label {
- cursor: pointer;
- border-radius: 5px;
- color: var(--color-grey-5);
- background-color: var(--color-grey-1);
- padding: 10px 20px;
- }
-
- &:focus + label,
- + label:hover,
- &:focus + label {
- background-color: var(--color-grey-2);
- color: var(--color-text);
- }
-}
-
.initial {
display: flex;
.image-data {
@@ -587,38 +541,7 @@ input {
padding: 10px;
}
-.required:after {
- content: ' *';
- color: red;
-}
-
-.create-version-popup {
- top: 0;
- left: 0;
- z-index: 1;
- position: fixed;
- width: 100%;
- height: 100%;
- background-color: var(--color-grey-3);
- border: none;
- opacity: 0.6;
- overflow-x: hidden;
- cursor: pointer;
-}
-
.create-version-popup-body {
- position: fixed;
- top: 50%;
- left: 50%;
- transform: translate(-50%, -50%);
- z-index: 2;
- box-shadow: 0 2px 3px 1px var(--color-grey-2);
- padding: 5px 60px 60px 20px;
- border-radius: 10px;
- max-height: 80%;
- overflow-y: auto;
- background-color: var(--color-bg);
-
.popup-icons {
margin-top: 10px;
margin-right: -20px;
@@ -627,7 +550,7 @@ input {
.changelog-editor {
padding: 20px;
- width: 100%;
+ width: calc(100% - 40px);
height: 200px;
resize: none;
outline: none;
@@ -689,8 +612,4 @@ button {
.categories-input {
margin-bottom: 15px;
}
-
-.no-scroll {
- overflow: hidden !important;
-}