초기 커밋

This commit is contained in:
2026-03-01 07:55:59 +09:00
commit b0262d6bab
67 changed files with 4660 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
import 'package:flutter/material.dart';
import 'package:gap/gap.dart';
class AppErrorWidget extends StatelessWidget {
const AppErrorWidget({
required this.message,
this.onRetry,
this.icon,
super.key,
});
final String message;
final VoidCallback? onRetry;
final IconData? icon;
@override
Widget build(BuildContext context) {
final theme = Theme.of(context);
return Center(
child: Padding(
padding: const EdgeInsets.all(24),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Icon(
icon ?? Icons.error_outline,
size: 64,
color: theme.colorScheme.error,
),
const Gap(16),
Text(
message,
style: theme.textTheme.bodyLarge,
textAlign: TextAlign.center,
),
if (onRetry != null) ...[
const Gap(16),
FilledButton.tonal(
onPressed: onRetry,
child: const Text('다시 시도'),
),
],
],
),
),
);
}
}