Skip to content

Commit b7840f7

Browse files
committed
feat(web): integrate RelatedEntitiesSection into entity routes (task-17)
Integrated RelatedEntitiesSection into works, authors, and institutions routes to display related entities for each entity type.
1 parent 88dd54b commit b7840f7

File tree

3 files changed

+24
-6
lines changed

3 files changed

+24
-6
lines changed

apps/web/src/routes/authors/$_.lazy.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { useQuery } from "@tanstack/react-query";
44
import { createLazyFileRoute,useParams, useSearch } from "@tanstack/react-router";
55
import { useState } from "react";
66

7-
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState } from "@/components/entity-detail";
7+
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState, RelatedEntitiesSection } from "@/components/entity-detail";
88
import { ENTITY_TYPE_CONFIGS } from "@/components/entity-detail/EntityTypeConfig";
99
import { IncomingRelationships } from "@/components/relationship/IncomingRelationships";
1010
import { OutgoingRelationships } from "@/components/relationship/OutgoingRelationships";
@@ -63,7 +63,7 @@ const AuthorRoute = () => {
6363
});
6464

6565
// Get relationship counts from API queries
66-
const { incomingCount, outgoingCount } = useEntityRelationshipQueries(
66+
const { incomingCount, outgoingCount, incoming: incomingSections, outgoing: outgoingSections } = useEntityRelationshipQueries(
6767
decodedAuthorId || '',
6868
'authors'
6969
);
@@ -94,6 +94,12 @@ const AuthorRoute = () => {
9494
onViewModeChange={setViewMode}
9595
data={author as Record<string, unknown>}>
9696
<RelationshipCounts incomingCount={incomingCount} outgoingCount={outgoingCount} />
97+
<RelatedEntitiesSection
98+
incomingSections={incomingSections}
99+
outgoingSections={outgoingSections}
100+
entityId={decodedAuthorId}
101+
entityType="authors"
102+
/>
97103
<IncomingRelationships
98104
entityId={decodedAuthorId}
99105
entityType="authors"

apps/web/src/routes/institutions/$_.lazy.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { useQuery } from "@tanstack/react-query";
44
import { createLazyFileRoute,useParams, useSearch } from "@tanstack/react-router";
55
import { useState } from "react";
66

7-
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState } from "@/components/entity-detail";
7+
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState, RelatedEntitiesSection } from "@/components/entity-detail";
88
import { ENTITY_TYPE_CONFIGS } from "@/components/entity-detail/EntityTypeConfig";
99
import { IncomingRelationships } from "@/components/relationship/IncomingRelationships";
1010
import { OutgoingRelationships } from "@/components/relationship/OutgoingRelationships";
@@ -63,7 +63,7 @@ const InstitutionRoute = () => {
6363
});
6464

6565
// Get relationship counts for summary display - MUST be called before early returns (Rules of Hooks)
66-
const { incomingCount, outgoingCount } = useEntityRelationshipQueries(
66+
const { incomingCount, outgoingCount, incoming: incomingSections, outgoing: outgoingSections } = useEntityRelationshipQueries(
6767
decodedInstitutionId || '',
6868
'institutions'
6969
);
@@ -94,6 +94,12 @@ const InstitutionRoute = () => {
9494
onViewModeChange={setViewMode}
9595
data={institution as Record<string, unknown>}>
9696
<RelationshipCounts incomingCount={incomingCount} outgoingCount={outgoingCount} />
97+
<RelatedEntitiesSection
98+
incomingSections={incomingSections}
99+
outgoingSections={outgoingSections}
100+
entityId={decodedInstitutionId}
101+
entityType="institutions"
102+
/>
97103
<IncomingRelationships entityId={decodedInstitutionId} entityType="institutions" />
98104
<OutgoingRelationships entityId={decodedInstitutionId} entityType="institutions" />
99105
</EntityDetailLayout>

apps/web/src/routes/works/$_.lazy.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { useQuery } from "@tanstack/react-query";
66
import { createLazyFileRoute,useParams, useSearch } from "@tanstack/react-router";
77
import { useEffect,useState } from "react";
88

9-
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState } from "@/components/entity-detail";
9+
import { type DetailViewMode, EntityDetailLayout, ErrorState, LoadingState, RelatedEntitiesSection } from "@/components/entity-detail";
1010
import { ENTITY_TYPE_CONFIGS } from "@/components/entity-detail/EntityTypeConfig";
1111
import { PdfViewer } from "@/components/pdf";
1212
import { IncomingRelationships } from "@/components/relationship/IncomingRelationships";
@@ -128,7 +128,7 @@ const WorkRoute = () => {
128128
});
129129

130130
// Get relationship counts for summary display - MUST be called before early returns (Rules of Hooks)
131-
const { incomingCount, outgoingCount } = useEntityRelationshipQueries(
131+
const { incomingCount, outgoingCount, incoming: incomingSections, outgoing: outgoingSections } = useEntityRelationshipQueries(
132132
normalizedWorkId || '',
133133
'works'
134134
);
@@ -243,6 +243,12 @@ const WorkRoute = () => {
243243
/>
244244
)}
245245
<RelationshipCounts incomingCount={incomingCount} outgoingCount={outgoingCount} />
246+
<RelatedEntitiesSection
247+
incomingSections={incomingSections}
248+
outgoingSections={outgoingSections}
249+
entityId={normalizedWorkId}
250+
entityType="works"
251+
/>
246252
<IncomingRelationships entityId={normalizedWorkId} entityType="works" />
247253
<OutgoingRelationships entityId={normalizedWorkId} entityType="works" />
248254
</EntityDetailLayout>

0 commit comments

Comments
 (0)