import 'package:flutter/material.dart'; import 'package:syncrow_web/pages/device_managment/all_devices/models/devices_model.dart'; import 'package:syncrow_web/pages/routines/models/device_functions.dart'; import 'package:syncrow_web/pages/routines/widgets/condition_toggle.dart'; import 'package:syncrow_web/pages/routines/widgets/function_slider.dart'; import 'package:syncrow_web/pages/routines/widgets/value_display.dart'; class SliderValueSelector extends StatelessWidget { final String selectedFunction; final DeviceFunctionData functionData; final AllDevicesModel? device; final String dialogType; final (double, double) sliderRange; final String displayedValue; final Object? initialValue; final void Function(String condition) onConditionChanged; final void Function(double value) onSliderChanged; const SliderValueSelector({ required this.selectedFunction, required this.functionData, required this.device, required this.dialogType, required this.sliderRange, required this.displayedValue, required this.initialValue, required this.onConditionChanged, required this.onSliderChanged, super.key, }); @override Widget build(BuildContext context) { return Column( spacing: 16, mainAxisAlignment: MainAxisAlignment.center, children: [ ConditionToggle( currentCondition: functionData.condition, onChanged: onConditionChanged, ), ValueDisplay( value: initialValue, label: displayedValue, ), FunctionSlider( initialValue: initialValue, range: sliderRange, onChanged: onSliderChanged, ), ], ); } }