This repository has been archived on 2023-11-18. You can view files and clone it, but cannot push or open issues or pull requests.
ha_client/lib/utils.class.dart
2018-10-02 00:41:40 +03:00

72 lines
1.3 KiB
Dart

part of 'main.dart';
class TheLogger {
static List<String> _log = [];
static String getLog() {
String res = '';
_log.forEach((line) {
res += "$line\n";
});
return res;
}
static bool get isInDebugMode {
bool inDebugMode = false;
assert(inDebugMode = true);
return inDebugMode;
}
static void log(String level, String message) {
if (isInDebugMode) {
debugPrint('$message');
}
_log.add("[$level] : $message");
if (_log.length > 50) {
_log.removeAt(0);
}
}
}
class HAUtils {
static void launchURL(String url) async {
if (await canLaunch(url)) {
await launch(url);
} else {
TheLogger.log("Error", "Could not launch $url");
}
}
}
class StateChangedEvent {
String entityId;
String newState;
bool localChange;
StateChangedEvent(this.entityId, this.newState, this.localChange);
}
class SettingsChangedEvent {
bool reconnect;
SettingsChangedEvent(this.reconnect);
}
class ServiceCallEvent {
String domain;
String service;
String entityId;
Map<String, String> additionalParams;
ServiceCallEvent(this.domain, this.service, this.entityId, this.additionalParams);
}
class ShowEntityPageEvent {
Entity entity;
ShowEntityPageEvent(this.entity);
}