mirror of
https://github.com/lollipopkit/flutter_server_box.git
synced 2025-12-17 07:14:28 +01:00
new: custom cmds (#313)
This commit is contained in:
39
lib/data/model/server/server.ext.dart
Normal file
39
lib/data/model/server/server.ext.dart
Normal file
@@ -0,0 +1,39 @@
|
||||
part of 'server.dart';
|
||||
|
||||
extension ServerX on Server {
|
||||
String get topRightStr {
|
||||
switch (state) {
|
||||
case ServerState.disconnected:
|
||||
return l10n.disconnected;
|
||||
case ServerState.finished:
|
||||
final cmdTemp = status.customCmds['temperature'];
|
||||
final temp = status.temps.first;
|
||||
final sensorTemp = SensorItem.findPreferTempVal(status.sensors);
|
||||
final temperatureVal = () {
|
||||
if (temp != null) {
|
||||
return temp;
|
||||
}
|
||||
if (sensorTemp != null) {
|
||||
return sensorTemp;
|
||||
}
|
||||
return null;
|
||||
}();
|
||||
final tempVal = temperatureVal != null
|
||||
? '${temperatureVal.toStringAsFixed(1)}°C'
|
||||
: null;
|
||||
final upTime = status.more[StatusCmdType.uptime];
|
||||
final items = [tempVal ?? cmdTemp, upTime];
|
||||
final str = items.where((e) => e != null && e.isNotEmpty).join(' | ');
|
||||
if (str.isEmpty) return l10n.noResult;
|
||||
return str;
|
||||
case ServerState.loading:
|
||||
return l10n.serverTabLoading;
|
||||
case ServerState.connected:
|
||||
return l10n.connected;
|
||||
case ServerState.connecting:
|
||||
return l10n.serverTabConnecting;
|
||||
case ServerState.failed:
|
||||
return status.err ?? l10n.serverTabFailed;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user