diff --git a/src/components/analysis/relationship/GroupRelationshipGalaxyView.vue b/src/components/analysis/relationship/GroupRelationshipGalaxyView.vue index 4adf601a..227a09df 100644 --- a/src/components/analysis/relationship/GroupRelationshipGalaxyView.vue +++ b/src/components/analysis/relationship/GroupRelationshipGalaxyView.vue @@ -13,7 +13,10 @@ import LazyAvatar from '@/components/common/avatar/LazyAvatar.vue' import RelationshipGalaxyThreeCanvas from '@/components/charts/relationship-galaxy/RelationshipGalaxyThreeCanvas.vue' import { useDataService } from '@/services' import { reportError } from '@/services/log-report' -import { buildGroupRelationshipGalaxyConnections } from './group-relationship-galaxy-view' +import { + buildGroupRelationshipGalaxyConnections, + resolveGroupRelationshipGalaxyDisplayState, +} from './group-relationship-galaxy-view' type GalaxyCanvasInstance = { focusNode: (key: string) => boolean @@ -43,6 +46,14 @@ const selectedMember = computed(() => { }) const connections = computed(() => buildGroupRelationshipGalaxyConnections(galaxyData.value, selectedKey.value)) const hasGraph = computed(() => (galaxyData.value?.graph.nodes.length ?? 0) > 0) +const displayState = computed(() => + resolveGroupRelationshipGalaxyDisplayState({ + isLoading: isLoading.value, + hasGraph: hasGraph.value, + hasError: Boolean(loadError.value), + webglUnavailable: webglUnavailable.value, + }) +) const safeInsetRight = computed(() => (selectedMember.value && isWideLayout.value ? 392 : 0)) const numberFormatter = computed( () => new Intl.NumberFormat(locale.value, { maximumFractionDigits: 1, notation: 'compact' }) @@ -143,9 +154,13 @@ onBeforeUnmount(() => {