import 'package:flutter/material.dart'; import 'package:survive_app/ui/style/colors.dart'; import 'package:survive_app/ui/style/dimensions.dart'; import 'package:survive_app/ui/viewmodel/drag_sheet_viewmodel.dart'; class DragSheet extends StatelessWidget { final DragSheetViewmodel vm; const DragSheet({super.key, required this.vm}); @override Widget build(BuildContext context) { return DraggableScrollableSheet( controller: vm.controller, initialChildSize: 0.45, minChildSize: 0.3, maxChildSize: 0.75, snap: true, snapSizes: const [0.60], builder: (context, scrollController) { return Container( width: double.infinity, decoration: const BoxDecoration( color: Colors.white, borderRadius: BorderRadius.only( topLeft: Radius.circular(30), topRight: Radius.circular(30), ), boxShadow: [ BoxShadow(color: Color.fromARGB(100, 20, 20, 20), blurRadius: 10), ], ), child: SingleChildScrollView( child: Padding( padding: EdgeInsets.all(Margins.medium), child: Column( children: [ TextField( cursorColor: ColorPalette.primary, decoration: InputDecoration( suffixIcon: Container( decoration: BoxDecoration( color: ColorPalette.secondary, borderRadius: BorderRadius.all(Radius.circular(100)), ), child: IconButton( onPressed: () {}, color: ColorPalette.primary, icon: Icon(Icons.download, size: 18), ), ), hintText: "Podaj nazwe punktu orientacyjnego...", filled: true, fillColor: ColorPalette.secondary, focusColor: Colors.transparent, enabledBorder: OutlineInputBorder( borderSide: BorderSide(color: Colors.transparent), borderRadius: BorderRadius.all(Radius.circular(15)), ), focusedBorder: OutlineInputBorder( borderSide: BorderSide(color: Colors.transparent), borderRadius: BorderRadius.all(Radius.circular(15)), ), ), controller: vm.waypointInputController, ), ], ), ), ), ); }, ); } }