foxygit / Torlinkc Log in
commits tags

/src/ui/theme.cpp · 890 B

raw
#include "torlinkc/ui/theme.hpp"

#include <unordered_map>

namespace torlinkc::ui {

SourceStyle sourceStyle(const std::string& id) {
  static const std::unordered_map<std::string, SourceStyle> styles = {
      {"fitgirl", {"FG", palette::accent}},
      {"yts", {"YTS", palette::good}},
      {"eztv", {"EZTV", palette::warn}},
      {"nyaa", {"NYAA", palette::bright}},
      {"subsplease", {"SUB", palette::alt}},
      {"tpb-movies", {"TPB", ftxui::Color::RGB(95, 208, 197)}},
      {"tpb-tv", {"TPB", ftxui::Color::RGB(95, 208, 197)}},
      {"x1337-movies", {"1337", ftxui::Color::RGB(246, 165, 92)}},
      {"x1337-tv", {"1337", ftxui::Color::RGB(246, 165, 92)}},
      {"bittorrented", {"BT", ftxui::Color::RGB(125, 184, 240)}},
  };
  if (auto it = styles.find(id); it != styles.end()) return it->second;
  return SourceStyle{"•", palette::alt};
}

}  // namespace torlinkc::ui