diff --git a/packages/web/app/src/pages/organization.tsx b/packages/web/app/src/pages/organization.tsx index bb5708205d..222eb877dc 100644 --- a/packages/web/app/src/pages/organization.tsx +++ b/packages/web/app/src/pages/organization.tsx @@ -23,7 +23,7 @@ import { subDays } from '@/lib/date-time'; import { useFormattedNumber } from '@/lib/hooks'; import { pluralize } from '@/lib/utils'; import { UTCDate } from '@date-fns/utc'; -import { Link, useRouter } from '@tanstack/react-router'; +import { Link, useParams, useRouter } from '@tanstack/react-router'; export const OrganizationIndexRouteSearch = z.object({ search: z.string().optional(), @@ -49,7 +49,6 @@ const projectTypeFullNames = { const ProjectCard = (props: { project: FragmentType | null; - cleanOrganizationId: string | null; highestNumberOfRequests: number; requestsOverTime: { date: string; value: number }[] | null; schemaVersionsCount: number | null; @@ -79,146 +78,156 @@ const ProjectCard = (props: { const requestsInDateRange = useFormattedNumber(totalNumberOfRequests); const schemaVersionsInDateRange = useFormattedNumber(totalNumberOfVersions); - return ( - - - -
-
-
- - {size => ( - +
+
+
+ + {size => ( + - )} - + ]), + }, + emphasis: { + focus: 'series', + }, + data: requests, + }, + ], + }} + /> + )} + +
+
+ {project ? ( +
+

{project.slug}

+

{projectTypeFullNames[project.type]}

-
- {project ? ( -
-

{project.slug}

-

{projectTypeFullNames[project.type]}

-
- ) : ( -
-
-
-
- )} -
- {project ? ( - <> - - -
- -
- {requestsInDateRange}{' '} - {pluralize(totalNumberOfRequests, 'request', 'requests')} -
-
-
- - Number of GraphQL requests in the last {props.days} days. - -
- - -
- -
- {schemaVersionsInDateRange}{' '} - {pluralize(totalNumberOfVersions, 'commit', 'commits')} -
-
-
- - Number of schemas pushed to this project in the last {props.days} days. - -
- - ) : ( - <> -
-
- - )} -
+ ) : ( +
+
+
+ )} +
+ {project ? ( + <> + + +
+ +
+ {requestsInDateRange}{' '} + {pluralize(totalNumberOfRequests, 'request', 'requests')} +
+
+
+ + Number of GraphQL requests in the last {props.days} days. + +
+ + +
+ +
+ {schemaVersionsInDateRange}{' '} + {pluralize(totalNumberOfVersions, 'commit', 'commits')} +
+
+
+ + Number of schemas pushed to this project in the last {props.days} days. + +
+ + ) : ( + <> +
+
+ + )}
- - +
+
+ + ); + + const { organizationSlug } = useParams({ from: '/authenticated/$organizationSlug' }); + + return ( + + {project ? ( + + {children} + + ) : ( + children + )} ); }; @@ -461,7 +470,6 @@ function OrganizationPageContent( {projects.map(project => ( diff --git a/packages/web/app/src/pages/project.tsx b/packages/web/app/src/pages/project.tsx index ca27b22218..153af199d2 100644 --- a/packages/web/app/src/pages/project.tsx +++ b/packages/web/app/src/pages/project.tsx @@ -8,6 +8,7 @@ import { useQuery } from 'urql'; import { z } from 'zod'; import { Page, ProjectLayout } from '@/components/layouts/project'; import { Button } from '@/components/ui/button'; +import { Card } from '@/components/ui/card'; import { EmptyList } from '@/components/ui/empty-list'; import { Input } from '@/components/ui/input'; import { Meta } from '@/components/ui/meta'; @@ -16,13 +17,12 @@ import { QueryError } from '@/components/ui/query-error'; import { Select, SelectContent, SelectItem, SelectTrigger } from '@/components/ui/select'; import { Separator } from '@/components/ui/separator'; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'; -import { Card } from '@/components/v2/card'; import { FragmentType, graphql, useFragment } from '@/gql'; import { subDays } from '@/lib/date-time'; import { useFormattedNumber } from '@/lib/hooks'; import { cn, pluralize } from '@/lib/utils'; import { UTCDate } from '@date-fns/utc'; -import { Link, useRouter } from '@tanstack/react-router'; +import { Link, useParams, useRouter } from '@tanstack/react-router'; const TargetCard_TargetFragment = graphql(` fragment TargetCard_TargetFragment on Target { @@ -37,8 +37,6 @@ const TargetCard = (props: { requestsOverTime: { date: string; value: number }[] | null; schemaVersionsCount: number | null; days: number; - organizationSlug: string; - projectSlug: string; }): ReactElement => { const target = useFragment(TargetCard_TargetFragment, props.target); const { highestNumberOfRequests } = props; @@ -61,146 +59,155 @@ const TargetCard = (props: { const requestsInDateRange = useFormattedNumber(totalNumberOfRequests); const schemaVersionsInDateRange = useFormattedNumber(totalNumberOfVersions); - return ( - - - -
-
-
- - {size => ( - +
+
+
+ + {size => ( + - )} - -
-
-
- {target ? ( -

{target.slug}

- ) : ( -
- )} -
-
- {target ? ( - <> - - -
- -
- {requestsInDateRange}{' '} - {pluralize(totalNumberOfRequests, 'request', 'requests')} -
-
-
- - Number of GraphQL requests in the last {props.days} days. - -
- - -
- -
- {schemaVersionsInDateRange}{' '} - {pluralize(totalNumberOfVersions, 'commit', 'commits')} -
-
-
- - Number of schemas pushed to this project in the last {props.days} days. - -
- - ) : ( - <> -
-
- - )} -
-
+ ]), + }, + emphasis: { + focus: 'series', + }, + data: requests, + }, + ], + }} + /> + )} + +
+
+
+ {target ? ( +

{target.slug}

+ ) : ( +
+ )} +
+
+ {target ? ( + <> + + +
+ +
+ {requestsInDateRange}{' '} + {pluralize(totalNumberOfRequests, 'request', 'requests')} +
+
+
+ + Number of GraphQL requests in the last {props.days} days. + +
+ + +
+ +
+ {schemaVersionsInDateRange}{' '} + {pluralize(totalNumberOfVersions, 'commit', 'commits')} +
+
+
+ + Number of schemas pushed to this project in the last {props.days} days. + +
+ + ) : ( + <> +
+
+ + )}
- - +
+
+ + ); + + const { organizationSlug, projectSlug } = useParams({ + from: '/authenticated/$organizationSlug/$projectSlug', + }); + + return ( + + {target ? ( + + {children} + + ) : ( + children + )} ); }; @@ -428,26 +435,20 @@ const ProjectsPageContent = ( highestNumberOfRequests={highestNumberOfRequests} requestsOverTime={target.requestsOverTime} schemaVersionsCount={target.schemaVersionsCount} - organizationSlug={props.organizationSlug} - projectSlug={props.projectSlug} /> )) ) ) : ( - <> - {Array.from({ length: 4 }).map((_, index) => ( - - ))} - + Array.from({ length: 4 }).map((_, index) => ( + + )) )}