import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:syncrow_app/features/devices/bloc/devices_cubit.dart'; import 'package:syncrow_app/features/devices/model/device_model.dart'; import 'package:syncrow_app/features/devices/model/room_model.dart'; import 'package:syncrow_app/features/devices/view/widgets/room_page_switch.dart'; import 'package:syncrow_app/utils/resource_manager/constants.dart'; class RoomPage extends StatelessWidget { const RoomPage({super.key, required this.room}); final RoomModel room; @override Widget build(BuildContext context) { List devices = []; for (var category in room.categories) { devices.addAll(category.devices); } return Padding( padding: const EdgeInsets.symmetric(horizontal: Constants.defaultPadding), child: SingleChildScrollView( child: BlocBuilder( builder: (context, state) { return GridView.builder( gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 2, crossAxisSpacing: 10, mainAxisSpacing: 10, childAspectRatio: 1.5, ), padding: const EdgeInsets.only(top: 10), physics: const NeverScrollableScrollPhysics(), shrinkWrap: true, itemCount: devices.length, itemBuilder: (_, index) { return RoomPageSwitch(device: devices[index]); }, ); }, ), ), ); } }