openreader/src/components/Spinner.tsx
Richard R 9ba20c8a9e feat(auth): add user authentication and rate limiting
- Implement user sign-in, sign-up, and account management using better-auth
- Add rate limiting for TTS API with daily character limits for authenticated and anonymous users
- Integrate SQLite and PostgreSQL database support for user sessions and data persistence
- Update UI components to include authentication flows, user menu, and privacy popup
- Modify Dockerfile and package.json for new dependencies and entrypoint script
- Bump version to v1.3.0
2026-01-24 17:36:11 -07:00

12 lines
No EOL
369 B
TypeScript

// Loading spinner component
interface SpinnerProps {
className?: string;
}
export function LoadingSpinner({ className }: SpinnerProps = {}) {
return (
<div className={className || "absolute inset-0 flex items-center justify-center"}>
<div className="animate-spin h-4 w-4 border-2 border-foreground border-t-transparent rounded-full" />
</div>
);
}