import 'package:flutter/material.dart'; import 'package:syncrow_app/features/devices/model/device_model.dart'; import 'package:syncrow_app/features/shared_widgets/text_widgets/body_small.dart'; import 'package:syncrow_app/utils/context_extension.dart'; import 'package:syncrow_app/utils/resource_manager/color_manager.dart'; class CircularButton extends StatelessWidget { const CircularButton({ super.key, required this.device, required this.label, required this.onTap, required this.icons, }); final DeviceModel? device; final String label; final Function()? onTap; final IconData icons; @override Widget build(BuildContext context) { return Column( mainAxisSize: MainAxisSize.min, children: [ Card( elevation: 3, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(100), ), child: GestureDetector( onTap: onTap, child: Stack( alignment: Alignment.center, children: [ Container( width: 60, height: 60, decoration: BoxDecoration( color: Colors.grey[300], borderRadius: BorderRadius.circular(100), ), ), Container( width: 40, height: 40, decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.circular(100), ), child: Center( child: label == 'All On' ? BodySmall( text: "On", style: context.bodyMedium.copyWith( color: ColorsManager.primaryColorWithOpacity, fontWeight: FontWeight.bold), ) : label == 'All Off' ? BodySmall( text: "Off", style: context.bodyMedium.copyWith( color: ColorsManager.primaryColorWithOpacity, fontWeight: FontWeight.bold), ) : Icon( icons, color: ColorsManager.primaryColorWithOpacity, size: 25, ), ), ), ], ), ), ), const SizedBox(height: 10), BodySmall( // text: "Timer", text: label, style: context.bodyMedium.copyWith( color: ColorsManager.textPrimaryColor, ), ), ], ); } }