2022-05-23 07:57:22 +00:00
|
|
|
import clsx from 'clsx';
|
2022-11-28 02:00:28 +00:00
|
|
|
import { Settings } from 'lucide-react';
|
|
|
|
|
|
|
|
import { Icon } from '@@/Icon';
|
2022-05-23 07:57:22 +00:00
|
|
|
|
|
|
|
import styles from './ViewLoading.module.css';
|
|
|
|
|
|
|
|
interface Props {
|
|
|
|
message?: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
export function ViewLoading({ message }: Props) {
|
|
|
|
return (
|
|
|
|
<div className={clsx('row', styles.root)}>
|
|
|
|
<div className="sk-fold">
|
|
|
|
<div className="sk-fold-cube" />
|
|
|
|
<div className="sk-fold-cube" />
|
|
|
|
<div className="sk-fold-cube" />
|
|
|
|
<div className="sk-fold-cube" />
|
|
|
|
</div>
|
|
|
|
{message && (
|
|
|
|
<span className={styles.message}>
|
|
|
|
{message}
|
2023-02-12 21:04:24 +00:00
|
|
|
<Icon icon={Settings} className="!ml-1 animate-spin-slow" />
|
2022-05-23 07:57:22 +00:00
|
|
|
</span>
|
|
|
|
)}
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
}
|