dipc 1.1.0

Convert your favorite images and wallpapers with your favorite color palettes/themes
use serde_json::Value;

use crate::cli::ColorPalette;

impl ColorPalette {
    pub fn get_json(self) -> serde_json::Map<String, Value> {
        let colors = match self {
            ColorPalette::RawJSON { map } => return map,
            ColorPalette::Catppuccin => {
                serde_json::from_str(include_str!("./palettes/catppuccin.json")).unwrap()
            }
            ColorPalette::Dracula => {
                serde_json::from_str(include_str!("./palettes/dracula.json")).unwrap()
            }
            ColorPalette::Edge => {
                serde_json::from_str(include_str!("./palettes/edge.json")).unwrap()
            }
            ColorPalette::Everforest => {
                serde_json::from_str(include_str!("./palettes/everforest.json")).unwrap()
            }
            ColorPalette::Gruvbox => {
                serde_json::from_str(include_str!("./palettes/gruvbox.json")).unwrap()
            }
            ColorPalette::GruvboxMaterial => {
                serde_json::from_str(include_str!("./palettes/gruvbox-material.json")).unwrap()
            }
            ColorPalette::Nord => {
                serde_json::from_str(include_str!("./palettes/nord.json")).unwrap()
            }
            ColorPalette::OneDark => {
                serde_json::from_str(include_str!("./palettes/onedark.json")).unwrap()
            }
            ColorPalette::RosePine => {
                serde_json::from_str(include_str!("./palettes/rose-pine.json")).unwrap()
            }
            ColorPalette::Solarized => {
                serde_json::from_str(include_str!("./palettes/solarized.json")).unwrap()
            }
            ColorPalette::TokyoNight => {
                serde_json::from_str(include_str!("./palettes/tokyo-night.json")).unwrap()
            }
        };
        let Value::Object(obj) = colors else {
            panic!("An included theme appears to not be a JSON object?")
        };
        obj
    }
}