fluffychat/lib/pangea/enum/lemma_category_enum.dart
Kelrap f021e3deb2
Vocab v2 (#1402)
* starting to change vocab analytics page

* couple extra details

* Add enum for lemma categories

* Set up vocab v2 card

* Adds basic lemma definition page

* Added more elements to definition page

* Add more definition page features

* Add tooltips to definition page icons

* Get forms + examples working

* Add scrolling, edit POS retrieval

* Added POS clarification to duplicate lemmas

* Add comments, minor fix to dots

* fix: dart format and remove duplicate functions

---------

Co-authored-by: wcjord <32568597+wcjord@users.noreply.github.com>
Co-authored-by: ggurdin <ggurdin@gmail.com>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
2025-01-14 09:20:41 -05:00

60 lines
1.8 KiB
Dart

import 'package:flutter/material.dart';
import 'package:fluffychat/config/app_config.dart';
import 'package:fluffychat/pangea/constants/analytics_constants.dart';
enum LemmaCategoryEnum {
flowers,
greens,
seeds,
}
extension LemmaCategoryExtension on LemmaCategoryEnum {
Color get color {
switch (this) {
case LemmaCategoryEnum.flowers:
return Color.lerp(AppConfig.primaryColor, Colors.white, 0.6) ??
AppConfig.primaryColor;
case LemmaCategoryEnum.greens:
return Color.lerp(AppConfig.success, Colors.white, 0.6) ??
AppConfig.success;
case LemmaCategoryEnum.seeds:
return Color.lerp(AppConfig.gold, Colors.white, 0.6) ?? AppConfig.gold;
}
}
Color get darkColor {
switch (this) {
case LemmaCategoryEnum.flowers:
return Color.lerp(AppConfig.primaryColor, Colors.white, 0.3) ??
AppConfig.primaryColor;
case LemmaCategoryEnum.greens:
return Color.lerp(AppConfig.success, Colors.black, 0.3) ??
AppConfig.success;
case LemmaCategoryEnum.seeds:
return Color.lerp(AppConfig.gold, Colors.black, 0.3) ?? AppConfig.gold;
}
}
String get emoji {
switch (this) {
case LemmaCategoryEnum.flowers:
return AnalyticsConstants.emojiForFlower;
case LemmaCategoryEnum.greens:
return AnalyticsConstants.emojiForGreen;
case LemmaCategoryEnum.seeds:
return AnalyticsConstants.emojiForSeed;
}
}
String get xpString {
switch (this) {
case LemmaCategoryEnum.flowers:
return ">${AnalyticsConstants.xpForFlower}";
case LemmaCategoryEnum.greens:
return ">${AnalyticsConstants.xpForGreens}";
case LemmaCategoryEnum.seeds:
return "<${AnalyticsConstants.xpForGreens}";
}
}
}