fix: status widget rerendering

This commit is contained in:
Thibault Le Ouay
2024-04-10 17:05:22 +02:00
parent 6285ef2cc0
commit f7ae3104ea
2 changed files with 6 additions and 8 deletions

View File

@ -6,7 +6,7 @@ import { StatusWidget } from './status-widget';
export function StatusWidgetContainer() { export function StatusWidgetContainer() {
return ( return (
<Suspense fallback={<StatusWidgetFallback />}> <Suspense fallback={<StatusWidgetFallback />}>
<StatusWidget /> <StatusWidget slug="documenso-status" />
</Suspense> </Suspense>
); );
} }

View File

@ -1,7 +1,6 @@
import { use, useMemo } from 'react'; import { memo, use } from 'react';
import type { Status } from '@openstatus/react'; import { type Status, getStatus } from '@openstatus/react';
import { getStatus } from '@openstatus/react';
import { cn } from '@documenso/ui/lib/utils'; import { cn } from '@documenso/ui/lib/utils';
@ -45,9 +44,8 @@ const getStatusLevel = (level: Status) => {
}[level]; }[level];
}; };
export function StatusWidget() { export const StatusWidget = memo(function StatusWidget({ slug }: { slug: string }) {
const getStatusMemoized = useMemo(async () => getStatus('documenso-status'), []); const { status } = use(getStatus(slug));
const { status } = use(getStatusMemoized);
const level = getStatusLevel(status); const level = getStatusLevel(status);
return ( return (
@ -72,4 +70,4 @@ export function StatusWidget() {
</span> </span>
</a> </a>
); );
} });