diff --git a/apps/frontend/src/pages/[type]/[id].vue b/apps/frontend/src/pages/[type]/[id].vue index 0eab31f45..36d9f5859 100644 --- a/apps/frontend/src/pages/[type]/[id].vue +++ b/apps/frontend/src/pages/[type]/[id].vue @@ -47,7 +47,6 @@ v-model:project="project" v-model:project-v3="projectV3" v-model:versions="versions" - v-model:featured-versions="featuredVersions" v-model:members="members" v-model:all-members="allMembers" v-model:dependencies="dependencies" @@ -913,7 +912,6 @@ useBaseFetch(`project/${projectId.value}/dependencies`, {}), ), - useAsyncData(`project/${projectId.value}/version?featured=true`, () => - useBaseFetch(`project/${projectId.value}/version?featured=true`), - ), useAsyncData(`project/${projectId.value}/version`, () => useBaseFetch(`project/${projectId.value}/version`), ), @@ -1501,7 +1493,6 @@ try { await updateProjectRoute() versions = shallowRef(toRaw(versions)) - featuredVersions = shallowRef(toRaw(featuredVersions)) } catch (err) { throw createError({ fatal: true, @@ -1551,7 +1542,6 @@ handleError(projectV2Error, true) handleError(projectV3Error) handleError(membersError) handleError(dependenciesError) -handleError(featuredVersionsError) handleError(versionsError) if (!project.value) { @@ -1634,21 +1624,6 @@ const hasEditDetailsPermission = computed(() => { versions.value = data.$computeVersions(versions.value, allMembers.value) -// Q: Why do this instead of computing the versions of featuredVersions? -// A: It will incorrectly generate the version slugs because it doesn't have the full context of -// all the versions. For example, if version 1.1.0 for Forge is featured but 1.1.0 for Fabric -// is not, but the Fabric one was uploaded first, the Forge version would link to the Fabric -/// version -const featuredIds = featuredVersions.value.map((x) => x.id) -featuredVersions.value = versions.value.filter((version) => featuredIds.includes(version.id)) - -featuredVersions.value.sort((a, b) => { - const aLatest = a.game_versions[a.game_versions.length - 1] - const bLatest = b.game_versions[b.game_versions.length - 1] - const gameVersions = tags.value.gameVersions.map((e) => e.version) - return gameVersions.indexOf(aLatest) - gameVersions.indexOf(bLatest) -}) - const projectTypeDisplay = computed(() => formatProjectType( data.$getProjectTypeForDisplay(project.value.project_type, project.value.loaders), diff --git a/apps/frontend/src/pages/[type]/[id]/settings.vue b/apps/frontend/src/pages/[type]/[id]/settings.vue index 96fd6c516..99c7c33ab 100644 --- a/apps/frontend/src/pages/[type]/[id]/settings.vue +++ b/apps/frontend/src/pages/[type]/[id]/settings.vue @@ -34,7 +34,6 @@ const flags = useFeatureFlags() const project = defineModel('project', { required: true }) const projectV3 = defineModel('projectV3', { required: true }) const versions = defineModel('versions') -const featuredVersions = defineModel('featuredVersions') const members = defineModel('members') const allMembers = defineModel('allMembers') const dependencies = defineModel('dependencies') @@ -145,7 +144,6 @@ const organization = defineModel('organization') v-model:project="project" v-model:project-v3="projectV3" v-model:versions="versions" - v-model:featured-versions="featuredVersions" v-model:members="members" v-model:all-members="allMembers" v-model:dependencies="dependencies" diff --git a/apps/frontend/src/pages/[type]/[id]/version/[version]-new.vue b/apps/frontend/src/pages/[type]/[id]/version/[version]-new.vue index 5aac0cc2b..d7bb61035 100644 --- a/apps/frontend/src/pages/[type]/[id]/version/[version]-new.vue +++ b/apps/frontend/src/pages/[type]/[id]/version/[version]-new.vue @@ -91,7 +91,6 @@ const router = useRouter() const props = defineProps<{ project: Project versions: Version[] - featuredVersions: Version[] members: User[] currentMember: User dependencies: Dependency[] diff --git a/apps/frontend/src/pages/[type]/[id]/version/[version].vue b/apps/frontend/src/pages/[type]/[id]/version/[version].vue index 375031b35..dad618387 100644 --- a/apps/frontend/src/pages/[type]/[id]/version/[version].vue +++ b/apps/frontend/src/pages/[type]/[id]/version/[version].vue @@ -76,14 +76,6 @@

{{ version.name }}

- -
    @@ -123,11 +115,16 @@ Save - - @@ -718,12 +715,6 @@ export default defineNuxtComponent({ return [] }, }, - featuredVersions: { - type: Array, - default() { - return [] - }, - }, members: { type: Array, default() { @@ -897,6 +888,8 @@ export default defineNuxtComponent({ .format('MMM D, YYYY')}. ${version.downloads} downloads.`, ) + const usesFeaturedVersions = computed(() => props.versions.some((v) => v.featured)) + useSeoMeta({ title, description, @@ -908,6 +901,7 @@ export default defineNuxtComponent({ auth, tags, flags, + usesFeaturedVersions, fileTypes: ref(fileTypes), oldFileTypes: ref(oldFileTypes), isCreating: ref(isCreating), @@ -1309,20 +1303,14 @@ export default defineNuxtComponent({ this.shouldPreventActions = false }, async resetProjectVersions() { - const [versions, featuredVersions, dependencies] = await Promise.all([ + const [versions, dependencies] = await Promise.all([ useBaseFetch(`project/${this.version.project_id}/version`), - useBaseFetch(`project/${this.version.project_id}/version?featured=true`), useBaseFetch(`project/${this.version.project_id}/dependencies`), this.resetProject(), ]) const newCreatedVersions = this.$computeVersions(versions, this.members) - const featuredIds = featuredVersions.map((x) => x.id) this.$emit('update:versions', newCreatedVersions) - this.$emit( - 'update:featuredVersions', - newCreatedVersions.filter((version) => featuredIds.includes(version.id)), - ) this.$emit('update:dependencies', dependencies) return newCreatedVersions