from collections import OrderedDict

from .. import Provider as ColorProvider

localized = True


class Provider(ColorProvider):
    """Color provider for mk_MK locale (Macedonian).

    Sources:
    - https://mk.wikipedia.org/wiki/Боја (spectrum colors with hex codes)
    - Standard Macedonian color terminology with CSS/web hex values
    """

    all_colors = OrderedDict(
        (
            ("Црвена", "#FF0000"),
            ("Портокалова", "#FF6600"),
            ("Жолта", "#FFFF00"),
            ("Зелена", "#008000"),
            ("Сина", "#0000FF"),
            ("Виолетова", "#8000FF"),
            ("Бела", "#FFFFFF"),
            ("Црна", "#000000"),
            ("Сива", "#808080"),
            ("Кафеава", "#8B4513"),
            ("Розова", "#FFC0CB"),
            ("Тиркизна", "#40E0D0"),
            ("Кармин", "#DC143C"),
            ("Лимонова", "#FFF44F"),
            ("Маслинова", "#808000"),
            ("Темноцрвена", "#8B0000"),
            ("Темносина", "#00008B"),
            ("Темнозелена", "#006400"),
            ("Светлосина", "#ADD8E6"),
            ("Светлозелена", "#90EE90"),
            ("Светлосива", "#D3D3D3"),
            ("Темносива", "#A9A9A9"),
            ("Сребрена", "#C0C0C0"),
            ("Златна", "#FFD700"),
            ("Бронзена", "#CD7F32"),
            ("Индиго", "#4B0082"),
            ("Лавандула", "#E6E6FA"),
            ("Корал", "#FF7F50"),
            ("Лосос", "#FA8072"),
            ("Магента", "#FF00FF"),
            ("Цијан", "#00FFFF"),
            ("Мастилена", "#000080"),
            ("Бордо", "#800020"),
            ("Бежова", "#F5F5DC"),
            ("Теракота", "#E2725B"),
            ("Охра", "#CC7722"),
            ("Слонова коска", "#FFFFF0"),
            ("Нане", "#98FF98"),
            ("Рубин", "#9B111E"),
            ("Смарагдна", "#50C878"),
            ("Аквамарин", "#7FFFD4"),
            ("Чоколадова", "#D2691E"),
        )
    )

    safe_colors = (
        "црна",
        "кестенлива",
        "зелена",
        "маслинова",
        "виолетова",
        "цијан",
        "сина",
        "сребрена",
        "сива",
        "жолта",
        "бела",
    )
