const constructure

This commit is contained in:
Efril
2026-03-01 20:02:12 +07:00
parent 5058f99fe0
commit e625bd3d2a
142 changed files with 817 additions and 760 deletions
@@ -27,7 +27,7 @@ class _OrderAddItemDialogState extends State<OrderAddItemDialog> {
void initState() {
super.initState();
context.read<OrderLoaderBloc>().add(
OrderLoaderEvent.fetched(status: 'pending', isRefresh: true),
const OrderLoaderEvent.fetched(status: 'pending', isRefresh: true),
);
}
@@ -51,7 +51,7 @@ class _OrderAddItemDialogState extends State<OrderAddItemDialog> {
BlocBuilder<OrderLoaderBloc, OrderLoaderState>(
builder: (context, state) {
if (state.isFetching) {
return Center(child: LoaderWithText());
return const Center(child: LoaderWithText());
}
final availableOrders = state.orders;
@@ -258,7 +258,7 @@ class _OrderAddItemDialogState extends State<OrderAddItemDialog> {
);
},
),
SpaceHeight(16),
const SpaceHeight(16),
BlocBuilder<OrderFormBloc, OrderFormState>(
builder: (context, state) {
return AppElevatedButton.filled(
@@ -195,7 +195,7 @@ class OrderPayLaterDialog extends StatelessWidget {
Text(
searchEntry.isEmpty
? "Tidak ada meja tersedia"
: "Tidak ditemukan meja dengan '${searchEntry}'",
: "Tidak ditemukan meja dengan '$searchEntry'",
style: TextStyle(
color: Colors.grey.shade600,
fontSize: 14,
@@ -233,7 +233,7 @@ class OrderPayLaterDialog extends StatelessWidget {
);
},
),
SpaceHeight(24),
const SpaceHeight(24),
BlocBuilder<OrderFormBloc, OrderFormState>(
builder: (context, orderState) {
return AppElevatedButton.filled(
@@ -29,7 +29,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
minWidth: context.deviceWidth * 0.5,
minHeight: context.deviceHeight * 0.8,
bottom: Container(
padding: EdgeInsets.all(16),
padding: const EdgeInsets.all(16),
child: Row(
children: [
Expanded(
@@ -38,7 +38,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
label: 'Batalkan',
),
),
SpaceWidth(12),
const SpaceWidth(12),
Expanded(
child: AppElevatedButton.filled(
isLoading: state.isCreating,
@@ -63,7 +63,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
children: [
Container(
width: double.infinity,
padding: EdgeInsets.all(16),
padding: const EdgeInsets.all(16),
decoration: BoxDecoration(
color: AppColor.textSecondary.withOpacity(0.05),
borderRadius: BorderRadius.circular(12),
@@ -75,7 +75,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
),
),
if (checkoutState.items.isNotEmpty) ...[
SpaceHeight(16),
const SpaceHeight(16),
Container(
width: double.infinity,
decoration: BoxDecoration(
@@ -87,22 +87,22 @@ class OrderSaveConfirmDialog extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: EdgeInsets.all(16),
padding: const EdgeInsets.all(16),
child: Row(
children: [
Container(
padding: EdgeInsets.all(6),
padding: const EdgeInsets.all(6),
decoration: BoxDecoration(
color: AppColor.primary,
borderRadius: BorderRadius.circular(6),
),
child: Icon(
child: const Icon(
Icons.list_alt_rounded,
color: AppColor.white,
size: 16,
),
),
SizedBox(width: 8),
const SizedBox(width: 8),
Text(
'Item yang akan dipesan:',
style: AppStyle.md.copyWith(
@@ -114,10 +114,10 @@ class OrderSaveConfirmDialog extends StatelessWidget {
),
),
Container(
constraints: BoxConstraints(maxHeight: 120),
constraints: const BoxConstraints(maxHeight: 120),
child: Scrollbar(
child: SingleChildScrollView(
padding: EdgeInsets.only(
padding: const EdgeInsets.only(
left: 16,
right: 16,
bottom: 16,
@@ -125,8 +125,8 @@ class OrderSaveConfirmDialog extends StatelessWidget {
child: Column(
children: checkoutState.items.map((item) {
return Container(
margin: EdgeInsets.only(bottom: 6),
padding: EdgeInsets.all(10),
margin: const EdgeInsets.only(bottom: 6),
padding: const EdgeInsets.all(10),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(6),
@@ -134,7 +134,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
BoxShadow(
color: Colors.black.withOpacity(0.03),
blurRadius: 2,
offset: Offset(0, 1),
offset: const Offset(0, 1),
),
],
),
@@ -143,12 +143,12 @@ class OrderSaveConfirmDialog extends StatelessWidget {
Container(
width: 6,
height: 6,
decoration: BoxDecoration(
decoration: const BoxDecoration(
color: AppColor.primary,
shape: BoxShape.circle,
),
),
SizedBox(width: 8),
const SizedBox(width: 8),
Expanded(
child: Column(
crossAxisAlignment:
@@ -172,7 +172,7 @@ class OrderSaveConfirmDialog extends StatelessWidget {
),
),
Container(
padding: EdgeInsets.symmetric(
padding: const EdgeInsets.symmetric(
horizontal: 6,
vertical: 2,
),
@@ -39,14 +39,14 @@ class OrderSaveDialog extends StatelessWidget {
context.maybePop();
if (checkoutState.orderType == OrderType.dineIn) {
Future.delayed(Duration(milliseconds: 100), () {
Future.delayed(const Duration(milliseconds: 100), () {
showDialog(
context: context,
builder: (context) => OrderPayLaterDialog(tables: tables),
);
});
} else {
Future.delayed(Duration(milliseconds: 100), () {
Future.delayed(const Duration(milliseconds: 100), () {
showDialog(
context: context,
builder: (context) =>
@@ -56,7 +56,7 @@ class OrderSaveDialog extends StatelessWidget {
}
},
),
SpaceHeight(16.0),
const SpaceHeight(16.0),
_item(
icon: Icons.shopping_cart_checkout_outlined,
title: 'Tambahkan Pesanan',
@@ -92,7 +92,7 @@ class OrderSaveDialog extends StatelessWidget {
child: Row(
children: [
Icon(icon, color: AppColor.primary, size: 26.0),
SpaceWidth(12.0),
const SpaceWidth(12.0),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@@ -21,7 +21,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
return CustomModalDialog(
title: 'Konfirmasi Void',
subtitle: 'Tindakan ini tidak dapat dibatalkan',
contentPadding: EdgeInsets.all(16),
contentPadding: const EdgeInsets.all(16),
bottom: Padding(
padding: const EdgeInsets.all(16.0),
child: Row(
@@ -37,7 +37,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
child: AppElevatedButton.filled(
onPressed: () {
context.read<VoidFormBloc>().add(
VoidFormEvent.submitted(),
const VoidFormEvent.submitted(),
);
},
label: state.voidType.isAll ? 'Void Pesanan' : 'Void Item',
@@ -60,7 +60,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
if (state.voidType.isItem &&
state.selectedItemQuantities.isNotEmpty) ...[
SizedBox(height: 16),
const SizedBox(height: 16),
// Items section
Container(
@@ -74,22 +74,22 @@ class OrderVoidConfirmDialog extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Padding(
padding: EdgeInsets.all(16),
padding: const EdgeInsets.all(16),
child: Row(
children: [
Container(
padding: EdgeInsets.all(6),
padding: const EdgeInsets.all(6),
decoration: BoxDecoration(
color: AppColor.primary.withOpacity(0.2),
borderRadius: BorderRadius.circular(6),
),
child: Icon(
child: const Icon(
Icons.list_alt_rounded,
color: AppColor.primary,
size: 16,
),
),
SizedBox(width: 8),
const SizedBox(width: 8),
Text(
'Item yang akan divoid:',
style: AppStyle.md.copyWith(
@@ -101,10 +101,10 @@ class OrderVoidConfirmDialog extends StatelessWidget {
),
),
Container(
constraints: BoxConstraints(maxHeight: 120),
constraints: const BoxConstraints(maxHeight: 120),
child: Scrollbar(
child: SingleChildScrollView(
padding: EdgeInsets.only(
padding: const EdgeInsets.only(
left: 16,
right: 16,
bottom: 16,
@@ -117,8 +117,8 @@ class OrderVoidConfirmDialog extends StatelessWidget {
(item) => item.id == entry.key,
);
return Container(
margin: EdgeInsets.only(bottom: 6),
padding: EdgeInsets.all(10),
margin: const EdgeInsets.only(bottom: 6),
padding: const EdgeInsets.all(10),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(6),
@@ -128,7 +128,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
0.03,
),
blurRadius: 2,
offset: Offset(0, 1),
offset: const Offset(0, 1),
),
],
),
@@ -137,12 +137,12 @@ class OrderVoidConfirmDialog extends StatelessWidget {
Container(
width: 6,
height: 6,
decoration: BoxDecoration(
decoration: const BoxDecoration(
color: AppColor.primary,
shape: BoxShape.circle,
),
),
SizedBox(width: 8),
const SizedBox(width: 8),
Expanded(
child: Column(
crossAxisAlignment:
@@ -169,7 +169,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
),
),
Container(
padding: EdgeInsets.symmetric(
padding: const EdgeInsets.symmetric(
horizontal: 6,
vertical: 2,
),
@@ -201,11 +201,11 @@ class OrderVoidConfirmDialog extends StatelessWidget {
),
),
],
SizedBox(height: 16),
const SizedBox(height: 16),
// Reason section
Container(
width: double.infinity,
padding: EdgeInsets.all(12),
padding: const EdgeInsets.all(12),
decoration: BoxDecoration(
color: Colors.blue[50],
borderRadius: BorderRadius.circular(8),
@@ -215,18 +215,18 @@ class OrderVoidConfirmDialog extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Container(
padding: EdgeInsets.all(6),
padding: const EdgeInsets.all(6),
decoration: BoxDecoration(
color: AppColor.info.withOpacity(0.1),
borderRadius: BorderRadius.circular(6),
),
child: Icon(
child: const Icon(
Icons.note_alt_rounded,
color: AppColor.info,
size: 16,
),
),
SizedBox(width: 8),
const SizedBox(width: 8),
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
@@ -239,7 +239,7 @@ class OrderVoidConfirmDialog extends StatelessWidget {
fontSize: 12,
),
),
SizedBox(height: 2),
const SizedBox(height: 2),
Text(
state.voidReason ?? "",
style: TextStyle(