pest-css-parser 0.1.7

A stylesheet (css) parser using pest
Documentation
use std::{sync::Mutex, collections::HashMap};

use once_cell::sync::Lazy;

use crate::Color;

/// https://developer.mozilla.org/en-US/docs/Web/CSS/named-color
pub static COLORS: Lazy<Mutex<HashMap<String, Color>>> = Lazy::new(|| {
    let mut m = HashMap::new();

    m.insert(String::from("aliceblue"), Color::from_hex("#f0f8ff"));
    m.insert(String::from("antiquewhite"), Color::from_hex("#FAEBD7"));
    m.insert(String::from("aqua"), Color::from_hex("#00ffff"));
    m.insert(String::from("aquamarine"), Color::from_hex("#7fffd4"));
    m.insert(String::from("azure"), Color::from_hex("#f0ffff"));
    m.insert(String::from("beige"), Color::from_hex("#f5f5dc"));
    m.insert(String::from("bisque"), Color::from_hex("#ffe4c4"));
    m.insert(String::from("black"), Color::from_hex("#000000"));
    m.insert(String::from("blanchedalmond"), Color::from_hex("#ffebcd"));
    m.insert(String::from("blue"), Color::from_hex("#0000ff"));
    m.insert(String::from("blueviolet"), Color::from_hex("#8a2be2"));
    m.insert(String::from("brown"), Color::from_hex("#a52a2a"));
    m.insert(String::from("burlywood"), Color::from_hex("#deb887"));
    m.insert(String::from("cadetblue"), Color::from_hex("#5f9ea0"));
    m.insert(String::from("chartreuse"), Color::from_hex("#7fff00"));
    m.insert(String::from("chocolate"), Color::from_hex("#d2691e"));
    m.insert(String::from("coral"), Color::from_hex("#ff7f50"));
    m.insert(String::from("cornflowerblue"), Color::from_hex("#6495ed"));
    m.insert(String::from("cornsilk"), Color::from_hex("#fff8dc"));
    m.insert(String::from("crimson"), Color::from_hex("#dc143c"));
    m.insert(String::from("cyan"), Color::from_hex("#00ffff"));
    m.insert(String::from("cyan"), Color::from_hex("#00ffff"));
    m.insert(String::from("darkblue"), Color::from_hex("#00008b"));
    m.insert(String::from("darkcyan"), Color::from_hex("#008b8b"));
    m.insert(String::from("darkgoldenrod"), Color::from_hex("#b8860b"));
    m.insert(String::from("darkgray"), Color::from_hex("#a9a9a9"));
    m.insert(String::from("darkgreen"), Color::from_hex("#006400"));
    m.insert(String::from("darkgrey"), Color::from_hex("#a9a9a9"));
    m.insert(String::from("darkkhaki"), Color::from_hex("#bdb76b"));
    m.insert(String::from("darkmagenta"), Color::from_hex("#8b008b"));
    m.insert(String::from("darkolivegreen"), Color::from_hex("#556b2f"));
    m.insert(String::from("darkorange"), Color::from_hex("#ff8c00"));
    m.insert(String::from("darkorchid"), Color::from_hex("#9932cc"));
    m.insert(String::from("darkred"), Color::from_hex("#8b0000"));
    m.insert(String::from("darksalmon"), Color::from_hex("#e9967a"));
    m.insert(String::from("darkseagreen"), Color::from_hex("#8fbc8f"));
    m.insert(String::from("darkslateblue"), Color::from_hex("#483d8b"));
    m.insert(String::from("darkslategray"), Color::from_hex("#2f4f4f"));
    m.insert(String::from("darkslategrey"), Color::from_hex("#2f4f4f"));
    m.insert(String::from("darkturquoise"), Color::from_hex("#00ced1"));
    m.insert(String::from("darkviolet"), Color::from_hex("#9400d3"));
    m.insert(String::from("deeppink"), Color::from_hex("#ff1493"));
    m.insert(String::from("deepskyblue"), Color::from_hex("#00bfff"));
    m.insert(String::from("dimgray"), Color::from_hex("#696969"));
    m.insert(String::from("dimgrey"), Color::from_hex("#696969"));
    m.insert(String::from("dodgerblue"), Color::from_hex("#1e90ff"));
    m.insert(String::from("firebrick"), Color::from_hex("#b22222"));
    m.insert(String::from("floralwhite"), Color::from_hex("#fffaf0"));
    m.insert(String::from("forestgreen"), Color::from_hex("#228b22"));
    m.insert(String::from("fuchsia"), Color::from_hex("#ff00ff"));
    m.insert(String::from("gainsboro"), Color::from_hex("#dcdcdc"));
    m.insert(String::from("ghostwhite"), Color::from_hex("#f8f8ff"));
    m.insert(String::from("gold"), Color::from_hex("#ffd700"));
    m.insert(String::from("goldenrod"), Color::from_hex("#daa520"));
    m.insert(String::from("gray"), Color::from_hex("#808080"));
    m.insert(String::from("green"), Color::from_hex("#008000"));
    m.insert(String::from("greenyellow"), Color::from_hex("#adff2f"));
    m.insert(String::from("grey"), Color::from_hex("#808080"));
    m.insert(String::from("honeydew"), Color::from_hex("#f0fff0"));
    m.insert(String::from("hotpink"), Color::from_hex("#ff69b4"));
    m.insert(String::from("indigo"), Color::from_hex("#4b0082"));
    m.insert(String::from("indigo"), Color::from_hex("#4b0082"));
    m.insert(String::from("ivory"), Color::from_hex("#fffff0"));
    m.insert(String::from("khaki"), Color::from_hex("#f0e68c"));
    m.insert(String::from("lavender"), Color::from_hex("#e6e6fa"));
    m.insert(String::from("lavenderblush"), Color::from_hex("#fff0f5"));
    m.insert(String::from("lawngreen"), Color::from_hex("#7cfc00"));
    m.insert(String::from("lemonchiffon"), Color::from_hex("#fffacd"));
    m.insert(String::from("lightblue"), Color::from_hex("#add8e6"));
    m.insert(String::from("lightcoral"), Color::from_hex("#f08080"));
    m.insert(String::from("lightcyan"), Color::from_hex("#e0ffff"));
    m.insert(String::from("lightgoldenrodyellow"), Color::from_hex("#fafad2"));
    m.insert(String::from("lightgray"), Color::from_hex("#d3d3d3"));
    m.insert(String::from("lightgreen"), Color::from_hex("#90ee90"));
    m.insert(String::from("lightpink"), Color::from_hex("#ffb6c1"));
    m.insert(String::from("lightsalmon"), Color::from_hex("#ffa07a"));
    m.insert(String::from("lightseagreen"), Color::from_hex("#20b2aa"));
    m.insert(String::from("lightskyblue"), Color::from_hex("#87cefa"));
    m.insert(String::from("lightslategray"), Color::from_hex("#778899"));
    m.insert(String::from("lightslategrey"), Color::from_hex("#778899"));
    m.insert(String::from("lightsteelblue"), Color::from_hex("#b0c4de"));
    m.insert(String::from("lightyellow"), Color::from_hex("#ffffe0"));
    m.insert(String::from("lime"), Color::from_hex("#00ff00"));
    m.insert(String::from("limegreen"), Color::from_hex("#32cd32"));
    m.insert(String::from("linen"), Color::from_hex("#faf0e6"));
    m.insert(String::from("magenta"), Color::from_hex("#ff00ff"));
    m.insert(String::from("maroon"), Color::from_hex("#800000"));
    m.insert(String::from("mediumaquamarine"), Color::from_hex("#66cdaa"));
    m.insert(String::from("mediumblue"), Color::from_hex("#0000cd"));
    m.insert(String::from("mediumorchid"), Color::from_hex("#ba55d3"));
    m.insert(String::from("mediumpurple"), Color::from_hex("#9370db"));
    m.insert(String::from("mediumseagreen"), Color::from_hex("#3cb371"));
    m.insert(String::from("mediumslateblue"), Color::from_hex("#7b68ee"));
    m.insert(String::from("mediumspringgreen"), Color::from_hex("#00fa9a"));
    m.insert(String::from("mediumturquoise"), Color::from_hex("#48d1cc"));
    m.insert(String::from("mediumvioletred"), Color::from_hex("#c71585"));
    m.insert(String::from("midnightblue"), Color::from_hex("#191970"));
    m.insert(String::from("mintcream"), Color::from_hex("#f5fffa"));
    m.insert(String::from("mistyrose"), Color::from_hex("#ffe4e1"));
    m.insert(String::from("moccasin"), Color::from_hex("#ffe4b5"));
    m.insert(String::from("moccasin"), Color::from_hex("#ffe4b5"));
    m.insert(String::from("navajowhite"), Color::from_hex("#ffdead"));
    m.insert(String::from("navy"), Color::from_hex("#000080"));
    m.insert(String::from("oldlace"), Color::from_hex("#fdf5e6"));
    m.insert(String::from("olive"), Color::from_hex("#808000"));
    m.insert(String::from("olivedrab"), Color::from_hex("#6b8e23"));
    m.insert(String::from("orange"), Color::from_hex("#ffa500"));
    m.insert(String::from("orangered"), Color::from_hex("#ff4500"));
    m.insert(String::from("orchid"), Color::from_hex("#da70d6"));
    m.insert(String::from("palegoldenrod"), Color::from_hex("#eee8aa"));
    m.insert(String::from("palegreen"), Color::from_hex("#98fb98"));
    m.insert(String::from("paleturquoise"), Color::from_hex("#afeeee"));
    m.insert(String::from("palevioletred"), Color::from_hex("#db7093"));
    m.insert(String::from("papayawhip"), Color::from_hex("#ffefd5"));
    m.insert(String::from("peachpuff"), Color::from_hex("#ffdab9"));
    m.insert(String::from("peru"), Color::from_hex("#cd853f"));
    m.insert(String::from("pink"), Color::from_hex("#ffc0cb"));
    m.insert(String::from("plum"), Color::from_hex("#dda0dd"));
    m.insert(String::from("powderblue"), Color::from_hex("#b0e0e6"));
    m.insert(String::from("purple"), Color::from_hex("#800080"));
    m.insert(String::from("rebeccapurple"), Color::from_hex("#663399"));
    m.insert(String::from("red"), Color::from_hex("#ff0000"));
    m.insert(String::from("rosybrown"), Color::from_hex("#bc8f8f"));
    m.insert(String::from("royalblue"), Color::from_hex("#4169e1"));
    m.insert(String::from("saddlebrown"), Color::from_hex("#8b4513"));
    m.insert(String::from("salmon"), Color::from_hex("#fa8072"));
    m.insert(String::from("sandybrown"), Color::from_hex("#f4a460"));
    m.insert(String::from("seagreen"), Color::from_hex("#2e8b57"));
    m.insert(String::from("seashell"), Color::from_hex("#fff5ee"));
    m.insert(String::from("sienna"), Color::from_hex("#a0522d"));
    m.insert(String::from("silver"), Color::from_hex("#c0c0c0"));
    m.insert(String::from("skyblue"), Color::from_hex("#87ceeb"));
    m.insert(String::from("slateblue"), Color::from_hex("#6a5acd"));
    m.insert(String::from("slategray"), Color::from_hex("#708090"));
    m.insert(String::from("slategrey"), Color::from_hex("#708090"));
    m.insert(String::from("snow"), Color::from_hex("#fffafa"));
    m.insert(String::from("springgreen"), Color::from_hex("#00ff7f"));
    m.insert(String::from("steelblue"), Color::from_hex("#4682b4"));
    m.insert(String::from("tan"), Color::from_hex("#d2b48c"));
    m.insert(String::from("teal"), Color::from_hex("#008080"));
    m.insert(String::from("thistle"), Color::from_hex("#d8bfd8"));
    m.insert(String::from("tomato"), Color::from_hex("#ff6347"));
    m.insert(String::from("transparent"), Color { r: 0, g: 0, b: 0, a: 255 });
    m.insert(String::from("turquoise"), Color::from_hex("#40e0d0"));
    m.insert(String::from("violet"), Color::from_hex("#ee82ee"));
    m.insert(String::from("wheat"), Color::from_hex("#f5deb3"));
    m.insert(String::from("white"), Color::from_hex("#ffffff"));
    m.insert(String::from("whitesmoke"), Color::from_hex("#f5f5f5"));
    m.insert(String::from("yellow"), Color::from_hex("#ffff00"));
    m.insert(String::from("yellowgreen"), Color::from_hex("#9acd32"));

    Mutex::new(m)
});