refactor(mosaic): move the API keys table skeleton out of the view · clerk/javascript@7f32447 · GitHub
Skip to content

Commit 7f32447

Browse files
committed
refactor(mosaic): move the API keys table skeleton out of the view
1 parent 9eb7bdb commit 7f32447

8 files changed

Lines changed: 304 additions & 178 deletions

File tree

‎packages/mosaic/src/features/api-keys/__tests__/api-keys-table.feature.test.tsx‎

Lines changed: 60 additions & 36 deletions
Large diffs are not rendered by default.
Lines changed: 133 additions & 0 deletions

‎packages/mosaic/src/features/api-keys/api-keys-table.tsx‎

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { useMessages } from '../../localization';
55
import { useAPIKeysTableController } from './api-keys-table.controller';
66
import { resolveAPIKeysTableMessages } from './api-keys-table.messages';
77
import { PAGE_SIZE } from './api-keys-table.model';
8+
import { APIKeysTableSkeleton } from './api-keys-table.skeleton';
89
import type { APIKeysTableMessages } from './api-keys-table.types';
910
import { APIKeysTableView } from './api-keys-table.view';
1011

@@ -42,7 +43,7 @@ function SubjectAPIKeysTable({
4243
overrides,
4344
);
4445
const pageSize = perPage !== undefined && Number.isInteger(perPage) && perPage > 0 ? perPage : PAGE_SIZE;
45-
const { isLoaded, isAvailable, manage, ...controller } = useAPIKeysTableController({
46+
const { isLoaded, isAvailable, isLoading, manage, ...controller } = useAPIKeysTableController({
4647
subject,
4748
pageSize,
4849
showDescription,
@@ -52,6 +53,14 @@ function SubjectAPIKeysTable({
5253
if (!isLoaded || !isAvailable) {
5354
return fallback ?? null;
5455
}
56+
if (isLoading) {
57+
return (
58+
<APIKeysTableSkeleton
59+
messages={messages}
60+
canManage={Boolean(manage)}
61+
/>
62+
);
63+
}
5564

5665
return (
5766
<APIKeysTableView

‎packages/mosaic/src/features/api-keys/api-keys-table.types.ts‎

Lines changed: 0 additions & 1 deletion

0 commit comments

Comments
 (0)