ant-design/.dumi/theme/common/BehaviorMap/index.tsx

42 lines
1.0 KiB
TypeScript
Raw Normal View History

import type { FC } from 'react';
import React, { Suspense } from 'react';
import { Skeleton } from 'antd';
import { createStyles } from 'antd-style';
import type { BehaviorMapProps } from './BehaviorMap';
const InternalBehaviorMap = React.lazy(() => import('./BehaviorMap'));
const useStyle = createStyles(({ token, css }) => ({
fallback: css`
width: 100%;
> * {
width: 100%;
border-radius: 8px;
}
`,
placeholder: css`
color: ${token.colorTextDescription};
font-size: 16px;
`,
}));
const BehaviorMapFallback = () => {
const { styles } = useStyle();
return (
<div className={styles.fallback}>
<Skeleton.Node active style={{ height: 600, width: '100%' }}>
<span className={styles.placeholder}>...</span>
</Skeleton.Node>
</div>
);
};
const BehaviorMap: FC<BehaviorMapProps> = (props) => (
<Suspense fallback={<BehaviorMapFallback />}>
<InternalBehaviorMap {...props} />
</Suspense>
);
export default BehaviorMap;