|
|
|
import React from 'react'; |
|
import { BonsaiIcon } from './icons'; |
|
|
|
interface SpinnerProps { |
|
text?: string; |
|
} |
|
|
|
const Spinner: React.FC<SpinnerProps> = ({ text = "Yuki the Bonsai Sensei is analyzing your tree..." }) => { |
|
return ( |
|
<div className="flex flex-col items-center justify-center gap-4 text-center p-8"> |
|
<BonsaiIcon className="h-12 w-12 text-green-700 animate-pulse" /> |
|
<p className="text-lg font-medium text-stone-600">{text}</p> |
|
<div className="w-48 h-2 bg-stone-200 rounded-full overflow-hidden"> |
|
<div className="h-full bg-green-600 rounded-full animate-[progress_2s_ease-in-out_infinite]"></div> |
|
</div> |
|
<style>{` |
|
@keyframes progress { |
|
0% { width: 0%; } |
|
50% { width: 100%; } |
|
100% { width: 0%; } |
|
} |
|
`}</style> |
|
</div> |
|
); |
|
}; |
|
|
|
export default Spinner; |