* [WIP] Transfer collections to own branch * fixes * rewrite js * Add visibility dropdown to collection edit modal * Add visibility badges to collection page * Update visibility options and icons in collection page * Add delete functionality to collection modal * Collection project deletion flow * remove "visit project" button on overflow * Remove via checklist not individually * Update manage title in settings.vue * remove collections from settings page * hook up collections page * collection header to look like project header * Refactor layout.scss and collections.vue * fix omorphia * Update * Conform collections to old design structure * Update navigation links and remove unused code * Add collection view and collections to user page * Refactor user project display logic * Add collection creation functionality and update profile labels * Add function calls to initialize user collections * Refactor collection page layout and functionality * Add initialization of user collections in create function * Fix styling issue in collection page * Update collection status to private * remove name * Refactor card component and update grid layout * Finish collections --------- Co-authored-by: Carter <safe@fea.st>
52 lines
1.5 KiB
Vue
52 lines
1.5 KiB
Vue
<template>
|
|
<div v-if="user.follows.length > 0" class="project-list display-mode--list">
|
|
<ProjectCard
|
|
v-for="project in user.follows"
|
|
:id="project.id"
|
|
:key="project.id"
|
|
:type="project.project_type"
|
|
:categories="project.categories"
|
|
:created-at="project.published"
|
|
:updated-at="project.updated"
|
|
:description="project.description"
|
|
:downloads="project.downloads ? project.downloads.toString() : '0'"
|
|
:icon-url="project.icon_url"
|
|
:name="project.title"
|
|
:client-side="project.client_side"
|
|
:server-side="project.server_side"
|
|
:color="project.color"
|
|
:show-updated-date="false"
|
|
>
|
|
<button class="iconified-button" @click="userUnfollowProject(project)">
|
|
<HeartIcon />
|
|
Unfollow
|
|
</button>
|
|
</ProjectCard>
|
|
</div>
|
|
<div v-else class="error">
|
|
<FollowIllustration class="icon" />
|
|
<br />
|
|
<span class="text"
|
|
>You don't have any followed projects. <br />
|
|
Why don't you <nuxt-link class="link" to="/mods">search</nuxt-link> for new ones?</span
|
|
>
|
|
</div>
|
|
</template>
|
|
|
|
<script setup>
|
|
import ProjectCard from '~/components/ui/ProjectCard.vue'
|
|
|
|
import HeartIcon from 'assets/images/utils/heart.svg'
|
|
import FollowIllustration from 'assets/images/illustrations/follow_illustration.svg'
|
|
|
|
const user = await useUser()
|
|
if (process.client) {
|
|
await initUserFollows()
|
|
}
|
|
|
|
useHead({ title: 'Followed review - Modrinth' })
|
|
definePageMeta({
|
|
middleware: 'auth',
|
|
})
|
|
</script>
|