14 lines
590 B
TypeScript
14 lines
590 B
TypeScript
import React from 'react';
|
|
|
|
interface Props { size?: number; }
|
|
|
|
export const LoadingSpinner: React.FC<Props> = ({ size = 32 }) => (
|
|
<div role="status" aria-label="Loading" style={{ width: size, height: size }}>
|
|
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth={2}>
|
|
<circle cx={12} cy={12} r={10} strokeOpacity={0.25} />
|
|
<path d="M12 2 a10 10 0 0 1 10 10" strokeLinecap="round">
|
|
<animateTransform attributeName="transform" type="rotate" from="0 12 12" to="360 12 12" dur="0.8s" repeatCount="indefinite" />
|
|
</path>
|
|
</svg>
|
|
</div>
|
|
);
|