Files
syncrow-web/lib/utils/constants/const.dart
2024-08-20 16:36:05 +03:00

80 lines
1.5 KiB
Dart

enum AccessType {
onlineOnetime,
onlineMultiple,
offlineOnetime,
offlineMultiple,
}
extension AccessTypeExtension on AccessType {
String get value {
switch (this) {
case AccessType.onlineOnetime:
return "Online Password";
case AccessType.onlineMultiple:
return "online Multiple Password";
case AccessType.offlineOnetime:
return "Offline Onetime Password";
case AccessType.offlineMultiple:
return "Offline Multiple Password";
}
}
static AccessType fromString(String value) {
switch (value) {
case "ONLINE_ONETIME":
return AccessType.onlineOnetime;
case "ONLINE_MULTIPLE":
return AccessType.onlineMultiple;
case "OFFLINE_ONETIME":
return AccessType.offlineOnetime;
case "OFFLINE_MULTIPLE":
return AccessType.offlineMultiple;
default:
throw ArgumentError("Invalid access type: $value");
}
}
}
enum DeviseStatus {
online,
offline,
}
extension OnlineTypeExtension on DeviseStatus {
String get value {
switch (this) {
case DeviseStatus.online:
return "Online";
case DeviseStatus.offline:
return "Offline";
}
}
static DeviseStatus fromString(bool value) {
switch (value) {
case false:
return DeviseStatus.offline;
case true:
return DeviseStatus.online;
default:
throw ArgumentError("Invalid access type: $value");
}
}
}