Files
record-tool/lib/shared/widgets/app_card.dart
2026-06-04 10:50:24 +08:00

40 lines
921 B
Dart

import 'package:flutter/material.dart';
import 'package:recording_tool/app/theme/app_theme.dart';
class AppCard extends StatelessWidget {
const AppCard({
super.key,
required this.child,
this.padding = const EdgeInsets.all(AppSpacing.lg),
this.margin,
this.onTap,
});
final Widget child;
final EdgeInsetsGeometry padding;
final EdgeInsetsGeometry? margin;
final VoidCallback? onTap;
@override
Widget build(BuildContext context) {
final card = Container(
margin: margin,
padding: padding,
decoration: BoxDecoration(
color: Theme.of(context).colorScheme.surface,
borderRadius: BorderRadius.circular(8),
border: Border.all(color: AppTheme.border),
),
child: child,
);
if (onTap == null) return card;
return InkWell(
onTap: onTap,
borderRadius: BorderRadius.circular(8),
child: card,
);
}
}