feat: Initialize project

This commit is contained in:
Yaël Perret
2024-10-21 22:03:17 +02:00
parent aefa3309d0
commit e722368fa6
404 changed files with 43535 additions and 2 deletions

View File

@@ -0,0 +1,108 @@
import 'package:flutter/material.dart';
import 'package:bahla_front/ui/common/app_colors.dart';
import 'package:bahla_front/ui/common/ui_helpers.dart';
import 'package:stacked/stacked.dart';
import 'package:stacked_services/stacked_services.dart';
import 'info_alert_dialog_model.dart';
const double _graphicSize = 60;
class InfoAlertDialog extends StackedView<InfoAlertDialogModel> {
final DialogRequest request;
final Function(DialogResponse) completer;
const InfoAlertDialog({
Key? key,
required this.request,
required this.completer,
}) : super(key: key);
@override
Widget builder(
BuildContext context,
InfoAlertDialogModel viewModel,
Widget? child,
) {
return Dialog(
shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(10)),
backgroundColor: Colors.white,
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 20),
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Expanded(
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
request.title!,
style: const TextStyle(
fontSize: 16, fontWeight: FontWeight.w900),
),
verticalSpaceTiny,
Text(
request.description!,
style:
const TextStyle(fontSize: 14, color: kcMediumGrey),
maxLines: 3,
softWrap: true,
),
],
),
),
Container(
width: _graphicSize,
height: _graphicSize,
decoration: const BoxDecoration(
color: Color(0xffF6E7B0),
borderRadius: BorderRadius.all(
Radius.circular(_graphicSize / 2),
),
),
alignment: Alignment.center,
child: const Text(
'⭐️',
style: TextStyle(fontSize: 30),
),
)
],
),
verticalSpaceMedium,
GestureDetector(
onTap: () => completer(DialogResponse(
confirmed: true,
)),
child: Container(
height: 50,
width: double.infinity,
alignment: Alignment.center,
decoration: BoxDecoration(
color: Colors.black,
borderRadius: BorderRadius.circular(10),
),
child: const Text(
'Got it',
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.bold,
fontSize: 16,
),
),
),
)
],
),
),
);
}
@override
InfoAlertDialogModel viewModelBuilder(BuildContext context) =>
InfoAlertDialogModel();
}

View File

@@ -0,0 +1,3 @@
import 'package:stacked/stacked.dart';
class InfoAlertDialogModel extends BaseViewModel {}