import 'package:flutter/material.dart'; /// Shows a modal bottom sheet for a detail view (appointment, file, lesson, /// custom event, etc.). All detail sheets in the app share this layout: drag /// handle on top, default theme background, optional ListTile-style header /// followed by a divider, scrollable body below. void showDetailsBottomSheet( BuildContext context, { Widget? header, required List Function(BuildContext sheetContext) children, }) { showModalBottomSheet( context: context, isScrollControlled: true, showDragHandle: true, useSafeArea: true, builder: (sheetContext) => SafeArea( child: SingleChildScrollView( padding: const EdgeInsets.only(bottom: 16), child: Column( mainAxisSize: MainAxisSize.min, crossAxisAlignment: CrossAxisAlignment.stretch, children: [ if (header != null) ...[header, const Divider(height: 1)], ...children(sheetContext), ], ), ), ), ); }