mirror of
https://github.com/modrinth/code.git
synced 2026-08-25 09:04:55 +00:00
add loading states for creators + server details (#7033)
* add loading states for creators + server details * prepr
This commit is contained in:
@@ -432,7 +432,8 @@
|
||||
|
||||
<div class="normal-page__sidebar">
|
||||
<ProjectSidebarServerInfo
|
||||
v-if="isServerProject && serverDataLoaded"
|
||||
v-if="isServerProject"
|
||||
:loading="!serverDataLoaded"
|
||||
:project-v3="projectV3"
|
||||
:tags="tags"
|
||||
:required-content="serverRequiredContent"
|
||||
@@ -462,6 +463,7 @@
|
||||
<ProjectSidebarCreators
|
||||
:organization="organization"
|
||||
:members="members"
|
||||
:loading="creatorsLoading"
|
||||
:org-link="(slug) => `/organization/${slug}`"
|
||||
:user-link="(username) => `/user/${username}`"
|
||||
class="card flex-card"
|
||||
@@ -1023,7 +1025,11 @@ watch(serverModpackVersionId, (versionId) => {
|
||||
})
|
||||
|
||||
// Members
|
||||
const { data: allMembersRaw, error: _membersError } = useQuery({
|
||||
const {
|
||||
data: allMembersRaw,
|
||||
error: _membersError,
|
||||
isPending: membersPending,
|
||||
} = useQuery({
|
||||
queryKey: computed(() => ['project', projectId.value, 'members']),
|
||||
queryFn: () => client.labrinth.projects_v3.getMembers(projectId.value),
|
||||
staleTime: STALE_TIME,
|
||||
@@ -1074,7 +1080,7 @@ const {
|
||||
|
||||
// Organization
|
||||
// Only fetch organization if project belongs to one
|
||||
const { data: organizationRaw } = useQuery({
|
||||
const { data: organizationRaw, isPending: organizationPending } = useQuery({
|
||||
queryKey: computed(() => ['project', projectId.value, 'organization']),
|
||||
queryFn: () => client.labrinth.projects_v3.getOrganization(projectId.value),
|
||||
staleTime: STALE_TIME,
|
||||
@@ -1085,6 +1091,13 @@ const { data: organizationRaw } = useQuery({
|
||||
// Return null when the project no longer belongs to an organization.
|
||||
const organization = computed(() => (projectRaw.value?.organization ? organizationRaw.value : null))
|
||||
|
||||
const creatorsLoading = computed(
|
||||
() =>
|
||||
!projectRaw.value ||
|
||||
membersPending.value ||
|
||||
(!!projectRaw.value.organization && organizationPending.value),
|
||||
)
|
||||
|
||||
const { data: thread } = useQuery({
|
||||
queryKey: computed(() => ['thread', projectRaw.value?.thread_id]),
|
||||
queryFn: () => client.labrinth.threads_v3.getThread(projectRaw.value.thread_id),
|
||||
|
||||
Reference in New Issue
Block a user