54 lines
1.5 KiB
Dart
54 lines
1.5 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:yimaru_app/ui/common/app_colors.dart';
|
|
import 'package:yimaru_app/ui/common/ui_helpers.dart';
|
|
import 'package:stacked/stacked.dart';
|
|
import 'package:stacked_services/stacked_services.dart';
|
|
|
|
import 'notice_sheet_model.dart';
|
|
|
|
class NoticeSheet extends StackedView<NoticeSheetModel> {
|
|
final Function(SheetResponse)? completer;
|
|
final SheetRequest request;
|
|
const NoticeSheet({Key? key, required this.completer, required this.request})
|
|
: super(key: key);
|
|
|
|
@override
|
|
Widget builder(
|
|
BuildContext context,
|
|
NoticeSheetModel viewModel,
|
|
Widget? child,
|
|
) {
|
|
return Container(
|
|
padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 15),
|
|
decoration: const BoxDecoration(
|
|
color: Colors.white,
|
|
borderRadius: BorderRadius.only(
|
|
topLeft: Radius.circular(10),
|
|
topRight: Radius.circular(10),
|
|
),
|
|
),
|
|
child: Column(
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
mainAxisSize: MainAxisSize.min,
|
|
children: [
|
|
Text(
|
|
request.title!,
|
|
style: const TextStyle(fontSize: 25, fontWeight: FontWeight.w900),
|
|
),
|
|
verticalSpaceTiny,
|
|
Text(
|
|
request.description!,
|
|
style: const TextStyle(fontSize: 14, color: kcMediumGrey),
|
|
maxLines: 3,
|
|
softWrap: true,
|
|
),
|
|
verticalSpaceLarge,
|
|
],
|
|
),
|
|
);
|
|
}
|
|
|
|
@override
|
|
NoticeSheetModel viewModelBuilder(BuildContext context) => NoticeSheetModel();
|
|
}
|