feat: report page
This commit is contained in:
@@ -1,13 +1,12 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:enaklo_pos/core/assets/assets.gen.dart';
|
||||
|
||||
import '../../../core/components/spaces.dart';
|
||||
import '../../../core/constants/colors.dart';
|
||||
|
||||
|
||||
|
||||
class ReportMenu extends StatelessWidget {
|
||||
final String label;
|
||||
final String subtitle;
|
||||
final IconData icon;
|
||||
final VoidCallback onPressed;
|
||||
final bool isActive;
|
||||
|
||||
@@ -16,6 +15,8 @@ class ReportMenu extends StatelessWidget {
|
||||
required this.label,
|
||||
required this.onPressed,
|
||||
required this.isActive,
|
||||
required this.subtitle,
|
||||
required this.icon,
|
||||
});
|
||||
|
||||
@override
|
||||
@@ -23,38 +24,43 @@ class ReportMenu extends StatelessWidget {
|
||||
return GestureDetector(
|
||||
onTap: onPressed,
|
||||
child: Container(
|
||||
margin: const EdgeInsets.all(5.0),
|
||||
width: 180.0,
|
||||
height: 160.0,
|
||||
alignment: Alignment.center,
|
||||
padding: const EdgeInsets.all(12.0),
|
||||
decoration: BoxDecoration(
|
||||
color:
|
||||
isActive ? AppColors.primary.withOpacity(0.13) : AppColors.white,
|
||||
borderRadius: BorderRadius.circular(18.0),
|
||||
border: Border.all(
|
||||
color: isActive ? AppColors.primary : AppColors.stroke,
|
||||
border: Border(
|
||||
right: BorderSide(
|
||||
color: isActive ? AppColors.primary : Colors.transparent,
|
||||
width: 4.0,
|
||||
),
|
||||
),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.end,
|
||||
child: Row(
|
||||
children: [
|
||||
Assets.icons.report.svg(
|
||||
colorFilter: isActive
|
||||
? const ColorFilter.mode(
|
||||
AppColors.primary,
|
||||
BlendMode.srcIn,
|
||||
)
|
||||
: null,
|
||||
Icon(
|
||||
icon,
|
||||
size: 24.0,
|
||||
color: isActive ? AppColors.primary : AppColors.grey,
|
||||
),
|
||||
const SpaceHeight(28.0),
|
||||
Text(
|
||||
label,
|
||||
style: TextStyle(
|
||||
color: isActive ? AppColors.primary : AppColors.black,
|
||||
fontWeight: FontWeight.w600,
|
||||
const SpaceWidth(12),
|
||||
Expanded(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Text(
|
||||
label,
|
||||
style: const TextStyle(
|
||||
fontSize: 16.0,
|
||||
fontWeight: FontWeight.bold,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 4.0),
|
||||
Text(
|
||||
subtitle,
|
||||
style:
|
||||
const TextStyle(fontSize: 14.0, color: AppColors.grey),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
const SpaceHeight(24.0),
|
||||
],
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user