From 2898cc8fbf6a2116eb11417d58f0a8933d0c6124 Mon Sep 17 00:00:00 2001 From: "mr.mojtaba" Date: Mon, 26 May 2025 12:43:59 +0330 Subject: [PATCH] feat : base widget for bottom sheet --- .../bottom_sheet/base_bottom_sheet.dart | 57 +++++++++++++++++++ .../core/lib/presentation/widget/widget.dart | 1 + 2 files changed, 58 insertions(+) create mode 100644 packages/core/lib/presentation/widget/bottom_sheet/base_bottom_sheet.dart diff --git a/packages/core/lib/presentation/widget/bottom_sheet/base_bottom_sheet.dart b/packages/core/lib/presentation/widget/bottom_sheet/base_bottom_sheet.dart new file mode 100644 index 0000000..e628b35 --- /dev/null +++ b/packages/core/lib/presentation/widget/bottom_sheet/base_bottom_sheet.dart @@ -0,0 +1,57 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:rasadyar_core/presentation/common/app_color.dart'; + +class BaseBottomSheet extends StatelessWidget { + const BaseBottomSheet({super.key, required this.child}); + + final Widget child; + + @override + Widget build(BuildContext context) { + return Container( + padding: EdgeInsets.symmetric(vertical: 15, horizontal: 20), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.only(topLeft: Radius.circular(25), topRight: Radius.circular(25)), + ), + child: SingleChildScrollView( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.center, + spacing: 8, + children: [ + SizedBox( + width: MediaQuery.of(context).size.width, + height: 20, + child: Stack( + alignment: AlignmentDirectional.center, + children: [ + Container( + height: 3, + width: 50, + decoration: BoxDecoration(color: AppColor.darkGreyDark, borderRadius: BorderRadius.circular(8)), + ), + + Positioned( + left: 0, + child: IconButton( + onPressed: () { + Navigator.of(context).pop(); + }, + icon: Icon(CupertinoIcons.clear_circled), + ), + ), + ], + ), + ), + + SizedBox(height: 2), + + child, + ], + ), + ), + ); + } +} diff --git a/packages/core/lib/presentation/widget/widget.dart b/packages/core/lib/presentation/widget/widget.dart index 8888a00..52c3f21 100644 --- a/packages/core/lib/presentation/widget/widget.dart +++ b/packages/core/lib/presentation/widget/widget.dart @@ -19,3 +19,4 @@ export 'card/card_with_icon_with_border.dart'; export 'chips/r_chips.dart'; export 'overlay_dropdown_widget/view.dart'; export 'inputs/input_fixed_hint.dart'; +export 'bottom_sheet/base_bottom_sheet.dart';