TF-2057 Add event description detail widget

(cherry picked from commit 7f8693755c849e2cf3d4cbb37290da4e20050bc8)
This commit is contained in:
dab246
2023-07-27 18:41:08 +07:00
committed by Dat Vu
parent ab4a14753e
commit 03426ec638
5 changed files with 61 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path
d="M14.475 17.325L16.475 13.325H12.675V5.675H20.325V13.075L18.2 17.325H14.475ZM5.475 17.325L7.475 13.325H3.675V5.675H11.325V13.075L9.2 17.325H5.475Z"
fill="#D9D9D9" />
</svg>

After

Width:  |  Height:  |  Size: 297 B

@@ -196,6 +196,7 @@ extension AppColor on Color {
static const colorShadowCalendarDateIcon = Color(0x26000000);
static const colorOrganizerMailto = Color(0xFFB3B3B3);
static const colorMailto = Color(0xFFB3B3B3);
static const colorEventDescriptionBackground = Color(0x05000000);
static const mapGradientColor = [
[Color(0xFF21D4FD), Color(0xFFB721FF)],
@@ -198,6 +198,7 @@ class ImagePaths {
String get icEventInvited => _getImagePath('ic_event_invited.svg');
String get icEventUpdated => _getImagePath('ic_event_updated.svg');
String get icEventCanceled => _getImagePath('ic_event_canceled.svg');
String get icFormatQuote => _getImagePath('ic_format_quote.svg');
String _getImagePath(String imageName) {
return AssetsPaths.images + imageName;
@@ -0,0 +1,7 @@
class EventDescriptionDetailWidgetStyles {
static const double textSize = 16;
static const double borderRadius = 16;
static const double contentPadding = 16;
static const double fieldTopPadding = 16;
}
@@ -0,0 +1,47 @@
import 'package:core/presentation/extensions/color_extension.dart';
import 'package:core/presentation/resources/image_paths.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/email/presentation/styles/event_description_detail_widget_styles.dart';
class EventDescriptionDetailWidget extends StatelessWidget {
final String description;
const EventDescriptionDetailWidget({
super.key,
required this.description
});
@override
Widget build(BuildContext context) {
final imagePath = Get.find<ImagePaths>();
return Container(
clipBehavior: Clip.antiAlias,
decoration: const BoxDecoration(
color: AppColor.colorEventDescriptionBackground,
borderRadius: BorderRadius.all(Radius.circular(EventDescriptionDetailWidgetStyles.borderRadius)),
),
padding: const EdgeInsetsDirectional.all(EventDescriptionDetailWidgetStyles.contentPadding),
child: Stack(
children: [
Text(
description,
style: const TextStyle(
fontWeight: FontWeight.w500,
fontSize: EventDescriptionDetailWidgetStyles.textSize,
color: Colors.black
)
),
PositionedDirectional(
top: 0,
end: 0,
child: SvgPicture.asset(imagePath.icFormatQuote)
)
],
),
);
}
}