workouttest_app/lib/util/enums.dart
2021-02-20 16:48:01 +01:00

65 lines
1.5 KiB
Dart

enum LoginType { email, fb, google, apple }
extension LoginTypeExt on LoginType {
bool equalsTo(LoginType type) => this.toString() == type.toString();
bool equalsStringTo(String type) => this.toString() == type;
}
enum TrackingEvent {
enter,
login,
logout,
registration,
home,
sizes,
sizes_save,
my_development,
my_exerciseplan,
account,
settings,
sales_page,
purchase_request,
purchase_successful,
exercise_new,
result,
exercise_log,
exercise_log_open,
exercise_log_delete,
exercise_log_result,
my_body_development,
my_muscle_development,
my_size_development,
my_custom_exercise_plan,
my_custom_exercise_plan_save,
my_exercise_plan_execute_open,
my_exercise_plan_execute_save,
my_special_plan,
my_suggested_plan,
prediction,
exercise_device,
customer_change,
settings_lang,
settings_server
}
T enumFromString<T>(Iterable<T> values, String value) {
return values.firstWhere((type) => type.toString().split(".").last == value, orElse: () => null);
}
extension TrackingEventExt on TrackingEvent {
String enumToString() => this.toString().split(".").last;
bool equalsTo(TrackingEvent event) => this.toString() == event.toString();
bool equalsStringTo(String event) => this.toString() == event;
}
enum PropertyEnum { Ectomorph, Mesomorph, Endomorph }
extension PropertyExt on PropertyEnum {
String toStr() => this.toString().split(".").last;
bool equalsTo(PropertyEnum event) => this.toString() == event.toString();
bool equalsStringTo(String event) => this.toString() == event;
}