mirror of
https://github.com/inventree/InvenTree.git
synced 2025-08-10 05:40:55 +00:00
29 lines
635 B
TypeScript
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 />;
|
|
}
|