2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-08-10 05:40:55 +00:00
Files
InvenTree/src/frontend/src/functions/loading.tsx
2024-04-15 21:31:46 +02:00

29 lines
635 B
TypeScript

import { Center, Loader, MantineProvider, Stack } from '@mantine/core';
import { Suspense } from 'react';
import { theme } from '../theme';
function LoadingFallback() {
return (
<MantineProvider theme={theme}>
<Stack>
<Center>
<Loader />
</Center>
</Stack>
</MantineProvider>
);
}
export const Loadable = (Component: any) => (props: JSX.IntrinsicAttributes) =>
(
<Suspense fallback={<LoadingFallback />}>
<Component {...props} />
</Suspense>
);
export function LoadingItem({ item }: { item: any }): JSX.Element {
const Itm = Loadable(item);
return <Itm />;
}