filament_verwaltung/lib/widgets/modern_loading_indicator.dart

54 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
class ModernLoadingIndicator extends StatelessWidget {
final String? message;
const ModernLoadingIndicator({super.key, this.message});
@override
Widget build(BuildContext context) {
return Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Container(
padding: EdgeInsets.all(24),
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topLeft,
end: Alignment.bottomRight,
colors: [Colors.blue.shade50, Colors.purple.shade50],
),
shape: BoxShape.circle,
boxShadow: [
BoxShadow(
color: Colors.black.withAlpha(15),
blurRadius: 20,
offset: Offset(0, 10),
),
],
),
child: CircularProgressIndicator(
strokeWidth: 3,
valueColor: AlwaysStoppedAnimation<Color>(
Colors.deepPurple.shade600,
),
),
),
if (message != null) ...[
SizedBox(height: 24),
Text(
message!,
style: TextStyle(
fontSize: 16,
color: Colors.grey.shade600,
fontWeight: FontWeight.w500,
),
),
],
],
),
);
}
}