diff --git a/dashboard/src/components/BuildDetails/BuildDetails.tsx b/dashboard/src/components/BuildDetails/BuildDetails.tsx index 7bf6b291..6d868dbf 100644 --- a/dashboard/src/components/BuildDetails/BuildDetails.tsx +++ b/dashboard/src/components/BuildDetails/BuildDetails.tsx @@ -44,7 +44,6 @@ import BuildDetailsTestSection from './BuildDetailsTestSection'; interface BuildDetailsProps { breadcrumb?: JSX.Element; - buildId?: string; onClickFilter: (filter: PossibleTableFilters) => void; tableFilter: TableFilter; getTestTableRowLink: (testId: string) => LinkProps; @@ -52,17 +51,17 @@ interface BuildDetailsProps { const BuildDetails = ({ breadcrumb, - buildId, onClickFilter, tableFilter, getTestTableRowLink, }: BuildDetailsProps): JSX.Element => { - const { data, isLoading, status, error } = useBuildDetails(buildId ?? ''); + const { buildId } = useParams({ from: '/build/$buildId' }); + const { data, isLoading, status, error } = useBuildDetails(buildId); const { data: issueData, status: issueStatus, error: issueError, - } = useBuildIssues(buildId ?? ''); + } = useBuildIssues(buildId); const { formatMessage } = useIntl(); diff --git a/dashboard/src/components/IssueDetails/IssueDetails.tsx b/dashboard/src/components/IssueDetails/IssueDetails.tsx index 5cd3328f..66bad6d1 100644 --- a/dashboard/src/components/IssueDetails/IssueDetails.tsx +++ b/dashboard/src/components/IssueDetails/IssueDetails.tsx @@ -2,7 +2,7 @@ import { useIntl } from 'react-intl'; import { ErrorBoundary } from 'react-error-boundary'; import { useMemo, useState, type JSX } from 'react'; -import type { LinkProps } from '@tanstack/react-router'; +import { useParams, type LinkProps } from '@tanstack/react-router'; import SectionGroup from '@/components/Section/SectionGroup'; import type { ISection } from '@/components/Section/Section'; @@ -47,7 +47,6 @@ import { IssueDetailsTestSection } from './IssueDetailsTestSection'; import { IssueDetailsBuildSection } from './IssueDetailsBuildSection'; interface IIssueDetails { - issueId: string; versionNumber?: number; tableFilter: TableFilter; onClickTestFilter: (filter: PossibleTableFilters) => void; @@ -58,7 +57,6 @@ interface IIssueDetails { } export const IssueDetails = ({ - issueId, versionNumber, tableFilter, onClickTestFilter, @@ -67,6 +65,7 @@ export const IssueDetails = ({ getBuildTableRowLink, breadcrumb, }: IIssueDetails): JSX.Element => { + const { issueId } = useParams({ from: '/issue/$issueId' }); const { data, isLoading, status, error } = useIssueDetails( issueId, versionNumber, diff --git a/dashboard/src/components/TestDetails/TestDetails.tsx b/dashboard/src/components/TestDetails/TestDetails.tsx index b68028eb..f2a7089d 100644 --- a/dashboard/src/components/TestDetails/TestDetails.tsx +++ b/dashboard/src/components/TestDetails/TestDetails.tsx @@ -4,7 +4,12 @@ import { memo, useCallback, useMemo, useState } from 'react'; import type { Dispatch, SetStateAction, JSX } from 'react'; import type { LinkProps } from '@tanstack/react-router'; -import { Link, useRouterState, useSearch } from '@tanstack/react-router'; +import { + Link, + useParams, + useRouterState, + useSearch, +} from '@tanstack/react-router'; import { shouldTruncate, truncateBigText, valueOrEmpty } from '@/lib/string'; import type { TTestDetails } from '@/types/tree/TestDetails'; @@ -314,13 +319,11 @@ const TestDetailsSections = ({ interface TestsDetailsProps { breadcrumb?: JSX.Element; - testId?: string; } -const TestDetails = ({ - breadcrumb, - testId, -}: TestsDetailsProps): JSX.Element => { +const TestDetails = ({ breadcrumb }: TestsDetailsProps): JSX.Element => { + const { testId } = useParams({ from: '/test/$testId' }); + const { formatMessage } = useIntl(); const { data, isLoading, status, error } = useTestDetails(testId ?? ''); diff --git a/dashboard/src/pages/BuildDetails/BuildDetails.tsx b/dashboard/src/pages/BuildDetails/BuildDetails.tsx index 6dd0ea74..72916f81 100644 --- a/dashboard/src/pages/BuildDetails/BuildDetails.tsx +++ b/dashboard/src/pages/BuildDetails/BuildDetails.tsx @@ -1,12 +1,7 @@ import { useCallback, type JSX } from 'react'; import type { LinkProps } from '@tanstack/react-router'; -import { - useSearch, - useParams, - useNavigate, - useRouterState, -} from '@tanstack/react-router'; +import { useSearch, useNavigate, useRouterState } from '@tanstack/react-router'; import { zTableFilterInfoDefault, @@ -21,7 +16,6 @@ import HardwareBuildDetails from '@/pages/HardwareBuildDetails'; const BuildDetailsPage = (): JSX.Element => { const searchParams = useSearch({ from: '/build/$buildId' }); - const { buildId } = useParams({ from: '/build/$buildId' }); const navigate = useNavigate({ from: '/build/$buildId' }); const historyState = useRouterState({ select: s => s.location.state }); @@ -66,7 +60,6 @@ const BuildDetailsPage = (): JSX.Element => { return ( { const searchParams = useSearch({ from: '/build/$buildId' }); - const { buildId } = useParams({ from: '/build/$buildId' }); const historyState = useRouterState({ select: s => s.location.state }); const hardwareId = historyState.id; @@ -58,7 +52,6 @@ const HardwareBuildDetails = (): JSX.Element => { return ( { const searchParams = useSearch({ from: '/test/$testId/' }); - const { testId } = useParams({ from: '/test/$testId/' }); return ( ({ const IssueDetailsPage = (): JSX.Element => { const searchParams = useSearch({ from: ISSUE_ROUTE }); - const { issueId } = useParams({ from: ISSUE_ROUTE }); const navigate = useNavigate({ from: ISSUE_ROUTE }); const historyState = useRouterState({ select: s => s.location.state }); @@ -101,7 +95,6 @@ const IssueDetailsPage = (): JSX.Element => { return ( { const historyState = useRouterState({ select: s => s.location.state }); - const { testId } = useParams({ from: '/test/$testId' }); if (historyState.id !== undefined) { if (historyState.from === RedirectFrom.Tree) { @@ -23,7 +22,7 @@ const TestDetailsPage = (): JSX.Element => { } } - return ; + return ; }; export default TestDetailsPage; diff --git a/dashboard/src/pages/TreeBuildDetails/TreeBuildDetails.tsx b/dashboard/src/pages/TreeBuildDetails/TreeBuildDetails.tsx index db47dad7..ed94bf16 100644 --- a/dashboard/src/pages/TreeBuildDetails/TreeBuildDetails.tsx +++ b/dashboard/src/pages/TreeBuildDetails/TreeBuildDetails.tsx @@ -1,10 +1,5 @@ import type { LinkProps } from '@tanstack/react-router'; -import { - useNavigate, - useParams, - useRouterState, - useSearch, -} from '@tanstack/react-router'; +import { useNavigate, useRouterState, useSearch } from '@tanstack/react-router'; import { useCallback, type JSX } from 'react'; @@ -18,7 +13,6 @@ import { MemoizedTreeBreadcrumb } from '@/components/Breadcrumb/TreeBreadcrumb'; const TreeBuildDetails = (): JSX.Element => { const searchParams = useSearch({ from: '/build/$buildId' }); - const { buildId } = useParams({ from: '/build/$buildId' }); const historyState = useRouterState({ select: s => s.location.state }); const treeId = historyState.id; @@ -56,7 +50,6 @@ const TreeBuildDetails = (): JSX.Element => { return ( { const searchParams = useSearch({ from: '/test/$testId/' }); - const { testId } = useParams({ from: '/test/$testId/' }); return (