blob: c0c84d277e61a98740f6f16deab0949fbf5cfdae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
import React from "react";
import clsx from "clsx";
import { range } from "lodash";
export interface SkeletonProps {
lineNumber?: number;
className?: string;
style?: React.CSSProperties;
}
const Skeleton: React.FC<SkeletonProps> = (props) => {
const { lineNumber: lineNumberProps, className, style } = props;
const lineNumber = lineNumberProps ?? 3;
return (
<div className={clsx(className, "cru-skeleton")} style={style}>
{range(lineNumber).map((i) => (
<div
key={i}
className={clsx("cru-skeleton-line", i === lineNumber - 1 && "last")}
/>
))}
</div>
);
};
export default Skeleton;
|