ionic-planb-logistic-app-fl.../lib/components/map_sidebar_layout.dart

38 lines
794 B
Dart

import 'package:flutter/material.dart';
import '../utils/breakpoints.dart';
class MapSidebarLayout extends StatelessWidget {
final Widget mapWidget;
final Widget sidebarWidget;
final double mapRatio;
const MapSidebarLayout({
super.key,
required this.mapWidget,
required this.sidebarWidget,
this.mapRatio = 2 / 3,
});
@override
Widget build(BuildContext context) {
final isMobile = MediaQuery.of(context).size.width < Breakpoints.tablet;
if (isMobile) {
return sidebarWidget;
}
return Row(
children: [
Expanded(
flex: (mapRatio * 100).toInt(),
child: mapWidget,
),
Expanded(
flex: ((1 - mapRatio) * 100).toInt(),
child: sidebarWidget,
),
],
);
}
}