From fd61d2766071d9d81db0e36f7095619dbc0091a6 Mon Sep 17 00:00:00 2001 From: hieubt Date: Tue, 17 Oct 2023 17:30:08 +0700 Subject: [PATCH] TF-1801 Add styles for attachment list (cherry picked from commit ea1f34af07c0e7b461bea116ae0682a86c5695d5) --- .../attachment/attachment_list_styles.dart | 113 ++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 lib/features/email/presentation/styles/attachment/attachment_list_styles.dart diff --git a/lib/features/email/presentation/styles/attachment/attachment_list_styles.dart b/lib/features/email/presentation/styles/attachment/attachment_list_styles.dart new file mode 100644 index 000000000..78edbfb1a --- /dev/null +++ b/lib/features/email/presentation/styles/attachment/attachment_list_styles.dart @@ -0,0 +1,113 @@ +import 'package:core/presentation/extensions/color_extension.dart'; +import 'package:flutter/material.dart'; + +class AttachmentListStyles { + static const double headerBorderWidth = 1.0; + static const double titleSpace = 8.0; + static const double scrollbarThickness = 8.0; + static const double separatorHeight = 1.0; + static const double buttonsSpaceBetween = 12.0; + static const double dialogBottomSpace = 20.0; + static const double buttonBorderWidth = 1.0; + + static const RoundedRectangleBorder shapeBorder = RoundedRectangleBorder( + borderRadius: BorderRadius.all(Radius.circular(16.0)) + ); + static const EdgeInsets dialogPaddingWeb = EdgeInsets.symmetric( + horizontal: 336.0, + vertical: 112.0 + ); + static const EdgeInsets dialogPaddingTablet = EdgeInsets.symmetric( + horizontal: 64.0, + vertical: 160.0 + ); + static const EdgeInsetsGeometry headerPadding = EdgeInsets.only( + top: 8, + bottom: 8, + right: 4 + ); + static const EdgeInsetsGeometry listAreaPadding = EdgeInsets.all(12.0); + static const EdgeInsetsGeometry listAreaPaddingMobile = EdgeInsets.symmetric(vertical: 12); + static const EdgeInsetsGeometry listItemPadding = EdgeInsets.only(right: 8.0); + static const EdgeInsetsGeometry separatorPadding = EdgeInsets.only(right: 8.0); + static const EdgeInsetsGeometry buttonsPadding = EdgeInsets.symmetric( + horizontal: 24.0, + vertical: 12.0 + ); + + static const Color bodyBackgroundColor = Colors.white; + static const Color headerBorderColor = AppColor.colorDividerEmailView; + static const Color titleTextColor = Colors.black; + static const Color subTitleTextColor = AppColor.colorSubtitle; + static const Color scrollbarTrackColor = AppColor.colorScrollbarTrackColor; + static const Color scrollbarThumbColor = AppColor.colorScrollbarThumbColor; + static const Color scrollbarTrackBorderColor = Colors.transparent; + static const Color separatorColor = AppColor.colorAttachmentBorder; + static const Color downloadAllButtonColor = AppColor.primaryColor; + static const Color cancelButtonColor = Colors.transparent; + static const Color downloadAllButtonTextColor = Colors.white; + static const Color cancelButtonTextColor = AppColor.primaryColor; + static const Color cancelButtonBorderColor = AppColor.colorButtonBorder; + static const Color barrierColor = AppColor.colorDefaultCupertinoActionSheet; + static const Color modalBackgroundColor = Colors.transparent; + static const Color buttonBorderDefaultColor = Colors.transparent; + + static const BorderRadiusGeometry bodyBorderRadius = BorderRadius.all(Radius.circular(16.0)); + + static const Radius scrollbarTrackRadius = Radius.circular(10.0); + static const Radius scrollbarThumbRadius = Radius.circular(10.0); + static const BorderRadius buttonRadius = BorderRadius.all(Radius.circular(10.0)); + static const BorderRadiusGeometry modalRadius = BorderRadius.only( + topRight: Radius.circular(14), + topLeft: Radius.circular(14), + ); + + static const BoxDecoration dialogBodyDecoration = BoxDecoration( + color: bodyBackgroundColor, + borderRadius: bodyBorderRadius + ); + static const BoxDecoration dialogBodyDecorationMobile = BoxDecoration( + border: Border( + top: BorderSide( + color: headerBorderColor, + width: headerBorderWidth, + ) + ) + ); + static const BoxDecoration headerDecoration = BoxDecoration( + border: Border( + bottom: BorderSide( + color: headerBorderColor, + width: headerBorderWidth + ) + ) + ); + + static const double titleFontSize = 17.0; + static const double subTitleFontSize = 12.0; + + static const FontWeight titleFontWeight = FontWeight.w700; + static const FontWeight subTitleFontWeight = FontWeight.w400; + static const FontWeight buttonFontWeight = FontWeight.w500; + + static const TextStyle titleTextStyle = TextStyle( + fontSize: titleFontSize, + fontWeight: titleFontWeight, + color: titleTextColor + ); + static const TextStyle subTitleTextStyle = TextStyle( + fontSize: subTitleFontSize, + fontWeight: subTitleFontWeight, + color: subTitleTextColor + ); + static const TextStyle downloadAllButtonTextStyle = TextStyle( + fontSize: titleFontSize, + fontWeight: buttonFontWeight, + color: downloadAllButtonTextColor + ); + static const TextStyle cancelButtonTextStyle = TextStyle( + fontSize: titleFontSize, + fontWeight: buttonFontWeight, + color: cancelButtonTextColor + ); +} \ No newline at end of file