Rework Riverpod provider usage
[apps/flutter-dashboard.git] / lib / widgets / child_lock.dart
1 // SPDX-License-Identifier: Apache-2.0
2 import 'package:flutter/material.dart';
3 import 'package:flutter_riverpod/flutter_riverpod.dart';
4 import 'package:dashboard_app/size.dart';
5 import '../vehicle-signals/vss_providers.dart';
6
7 class ChildLockStatus extends ConsumerWidget {
8   ChildLockStatus({Key? key}) : super(key: key);
9
10   @override
11   Widget build(BuildContext context, WidgetRef ref) {
12     final vehicleLeftChildLockActive =
13         ref.watch(vehicleSignalLeftChildLockActiveProvider);
14     final vehicleRightChildLockActive =
15         ref.watch(vehicleSignalRightChildLockActiveProvider);
16
17     return vehicleLeftChildLockActive.engaged &&
18             vehicleRightChildLockActive.engaged
19         ? Column(
20             children: [
21               Text(
22                 "Child Lock",
23                 style: TextStyle(
24                     fontSize: SizeConfig.fontsize / 3, color: Colors.green),
25               ),
26               Text(
27                 "Activated",
28                 style: TextStyle(
29                     fontSize: SizeConfig.fontsize / 3, color: Colors.green),
30               ),
31               SizedBox(
32                 width: SizeConfig.safeBlockVertical / 2,
33               ),
34               Icon(
35                 Icons.lock,
36                 size: SizeConfig.fontsize / 3,
37                 color: Colors.green,
38               ),
39             ],
40           )
41         : Column(
42             children: [
43               Text(
44                 'No child  Lock',
45                 style: TextStyle(
46                   fontSize: SizeConfig.fontsize / 2,
47                   color: Colors.redAccent,
48                 ),
49               ),
50               SizedBox(
51                 height: SizeConfig.safeBlockVertical / 2,
52               ),
53               Icon(
54                 Icons.lock_open_outlined,
55                 size: SizeConfig.fontsize / 4,
56                 color: Colors.red,
57               ),
58             ],
59           );
60   }
61 }