default_colors.rs

   1use gpui::{Hsla, Rgba};
   2
   3use crate::scale::{ColorScaleSet, ColorScales};
   4use crate::ColorScale;
   5use crate::{SystemColors, ThemeColors};
   6
   7pub(crate) fn neutral() -> ColorScaleSet {
   8    sand()
   9}
  10
  11// Note: We aren't currently making use of the default colors, as all of the
  12// themes have a value set for each color.
  13//
  14// We'll need to revisit these once we're ready to launch user themes, which may
  15// not specify a value for each color (and thus should fall back to the defaults).
  16impl ThemeColors {
  17    pub fn light() -> Self {
  18        let system = SystemColors::default();
  19
  20        Self {
  21            border: neutral().light().step_6(),
  22            border_variant: neutral().light().step_5(),
  23            border_focused: blue().light().step_5(),
  24            border_selected: blue().light().step_5(),
  25            border_transparent: system.transparent,
  26            border_disabled: neutral().light().step_3(),
  27            elevated_surface_background: neutral().light().step_2(),
  28            surface_background: neutral().light().step_2(),
  29            background: neutral().light().step_1(),
  30            element_background: neutral().light().step_3(),
  31            element_hover: neutral().light_alpha().step_4(),
  32            element_active: neutral().light_alpha().step_5(),
  33            element_selected: neutral().light_alpha().step_5(),
  34            element_disabled: neutral().light_alpha().step_3(),
  35            drop_target_background: blue().light_alpha().step_2(),
  36            ghost_element_background: system.transparent,
  37            ghost_element_hover: neutral().light_alpha().step_3(),
  38            ghost_element_active: neutral().light_alpha().step_4(),
  39            ghost_element_selected: neutral().light_alpha().step_5(),
  40            ghost_element_disabled: neutral().light_alpha().step_3(),
  41            text: neutral().light().step_12(),
  42            text_muted: neutral().light().step_10(),
  43            text_placeholder: neutral().light().step_10(),
  44            text_disabled: neutral().light().step_9(),
  45            text_accent: blue().light().step_11(),
  46            icon: neutral().light().step_11(),
  47            icon_muted: neutral().light().step_10(),
  48            icon_disabled: neutral().light().step_9(),
  49            icon_placeholder: neutral().light().step_10(),
  50            icon_accent: blue().light().step_11(),
  51            status_bar_background: neutral().light().step_2(),
  52            title_bar_background: neutral().light().step_2(),
  53            toolbar_background: neutral().light().step_1(),
  54            tab_bar_background: neutral().light().step_2(),
  55            tab_inactive_background: neutral().light().step_2(),
  56            tab_active_background: neutral().light().step_1(),
  57            search_match_background: neutral().light().step_2(),
  58            panel_background: neutral().light().step_2(),
  59            panel_focused_border: blue().light().step_5(),
  60            pane_focused_border: blue().light().step_5(),
  61            scrollbar_thumb_background: neutral().light_alpha().step_3(),
  62            scrollbar_thumb_hover_background: neutral().light_alpha().step_4(),
  63            scrollbar_thumb_border: gpui::transparent_black(),
  64            scrollbar_track_background: gpui::transparent_black(),
  65            scrollbar_track_border: neutral().light().step_5(),
  66            editor_foreground: neutral().light().step_12(),
  67            editor_background: neutral().light().step_1(),
  68            editor_gutter_background: neutral().light().step_1(),
  69            editor_subheader_background: neutral().light().step_2(),
  70            editor_active_line_background: neutral().light_alpha().step_3(),
  71            editor_highlighted_line_background: neutral().light_alpha().step_3(),
  72            editor_line_number: neutral().light().step_10(),
  73            editor_active_line_number: neutral().light().step_11(),
  74            editor_invisible: neutral().light().step_10(),
  75            editor_wrap_guide: neutral().light_alpha().step_7(),
  76            editor_active_wrap_guide: neutral().light_alpha().step_8(),
  77            editor_document_highlight_read_background: neutral().light_alpha().step_3(),
  78            editor_document_highlight_write_background: neutral().light_alpha().step_4(),
  79            terminal_background: neutral().light().step_1(),
  80            terminal_ansi_bright_black: black().light().step_11(),
  81            terminal_ansi_bright_red: red().light().step_10(),
  82            terminal_ansi_bright_green: green().light().step_10(),
  83            terminal_ansi_bright_yellow: yellow().light().step_10(),
  84            terminal_ansi_bright_blue: blue().light().step_10(),
  85            terminal_ansi_bright_magenta: violet().light().step_10(),
  86            terminal_ansi_bright_cyan: cyan().light().step_10(),
  87            terminal_ansi_bright_white: neutral().light().step_11(),
  88            terminal_ansi_black: black().light().step_12(),
  89            terminal_ansi_red: red().light().step_11(),
  90            terminal_ansi_green: green().light().step_11(),
  91            terminal_ansi_yellow: yellow().light().step_11(),
  92            terminal_ansi_blue: blue().light().step_11(),
  93            terminal_ansi_magenta: violet().light().step_11(),
  94            terminal_ansi_cyan: cyan().light().step_11(),
  95            terminal_ansi_white: neutral().light().step_12(),
  96            link_text_hover: orange().light().step_10(),
  97        }
  98    }
  99
 100    pub fn dark() -> Self {
 101        let system = SystemColors::default();
 102
 103        Self {
 104            border: neutral().dark().step_6(),
 105            border_variant: neutral().dark().step_5(),
 106            border_focused: blue().dark().step_5(),
 107            border_selected: blue().dark().step_5(),
 108            border_transparent: system.transparent,
 109            border_disabled: neutral().dark().step_3(),
 110            elevated_surface_background: neutral().dark().step_2(),
 111            surface_background: neutral().dark().step_2(),
 112            background: neutral().dark().step_1(),
 113            element_background: neutral().dark().step_3(),
 114            element_hover: neutral().dark_alpha().step_4(),
 115            element_active: neutral().dark_alpha().step_5(),
 116            element_selected: neutral().dark_alpha().step_5(),
 117            element_disabled: neutral().dark_alpha().step_3(),
 118            drop_target_background: blue().dark_alpha().step_2(),
 119            ghost_element_background: system.transparent,
 120            ghost_element_hover: neutral().dark_alpha().step_4(),
 121            ghost_element_active: neutral().dark_alpha().step_5(),
 122            ghost_element_selected: neutral().dark_alpha().step_5(),
 123            ghost_element_disabled: neutral().dark_alpha().step_3(),
 124            text: neutral().dark().step_12(),
 125            text_muted: neutral().dark().step_11(),
 126            text_placeholder: neutral().dark().step_10(),
 127            text_disabled: neutral().dark().step_9(),
 128            text_accent: blue().dark().step_11(),
 129            icon: neutral().dark().step_11(),
 130            icon_muted: neutral().dark().step_10(),
 131            icon_disabled: neutral().dark().step_9(),
 132            icon_placeholder: neutral().dark().step_10(),
 133            icon_accent: blue().dark().step_11(),
 134            status_bar_background: neutral().dark().step_2(),
 135            title_bar_background: neutral().dark().step_2(),
 136            toolbar_background: neutral().dark().step_1(),
 137            tab_bar_background: neutral().dark().step_2(),
 138            tab_inactive_background: neutral().dark().step_2(),
 139            tab_active_background: neutral().dark().step_1(),
 140            search_match_background: neutral().dark().step_2(),
 141            panel_background: neutral().dark().step_2(),
 142            panel_focused_border: blue().dark().step_5(),
 143            pane_focused_border: blue().dark().step_5(),
 144            scrollbar_thumb_background: neutral().dark_alpha().step_3(),
 145            scrollbar_thumb_hover_background: neutral().dark_alpha().step_4(),
 146            scrollbar_thumb_border: gpui::transparent_black(),
 147            scrollbar_track_background: gpui::transparent_black(),
 148            scrollbar_track_border: neutral().dark().step_5(),
 149            editor_foreground: neutral().dark().step_12(),
 150            editor_background: neutral().dark().step_1(),
 151            editor_gutter_background: neutral().dark().step_1(),
 152            editor_subheader_background: neutral().dark().step_3(),
 153            editor_active_line_background: neutral().dark_alpha().step_3(),
 154            editor_highlighted_line_background: neutral().dark_alpha().step_4(),
 155            editor_line_number: neutral().dark_alpha().step_10(),
 156            editor_active_line_number: neutral().dark_alpha().step_12(),
 157            editor_invisible: neutral().dark_alpha().step_4(),
 158            editor_wrap_guide: neutral().dark_alpha().step_4(),
 159            editor_active_wrap_guide: neutral().dark_alpha().step_4(),
 160            editor_document_highlight_read_background: neutral().dark_alpha().step_4(),
 161            editor_document_highlight_write_background: neutral().dark_alpha().step_4(),
 162            terminal_background: neutral().dark().step_1(),
 163            terminal_ansi_bright_black: black().dark().step_11(),
 164            terminal_ansi_bright_red: red().dark().step_10(),
 165            terminal_ansi_bright_green: green().dark().step_10(),
 166            terminal_ansi_bright_yellow: yellow().dark().step_10(),
 167            terminal_ansi_bright_blue: blue().dark().step_10(),
 168            terminal_ansi_bright_magenta: violet().dark().step_10(),
 169            terminal_ansi_bright_cyan: cyan().dark().step_10(),
 170            terminal_ansi_bright_white: neutral().dark().step_11(),
 171            terminal_ansi_black: black().dark().step_12(),
 172            terminal_ansi_red: red().dark().step_11(),
 173            terminal_ansi_green: green().dark().step_11(),
 174            terminal_ansi_yellow: yellow().dark().step_11(),
 175            terminal_ansi_blue: blue().dark().step_11(),
 176            terminal_ansi_magenta: violet().dark().step_11(),
 177            terminal_ansi_cyan: cyan().dark().step_11(),
 178            terminal_ansi_white: neutral().dark().step_12(),
 179            link_text_hover: orange().dark().step_10(),
 180        }
 181    }
 182}
 183
 184type StaticColorScale = [&'static str; 12];
 185
 186struct StaticColorScaleSet {
 187    scale: &'static str,
 188    light: StaticColorScale,
 189    light_alpha: StaticColorScale,
 190    dark: StaticColorScale,
 191    dark_alpha: StaticColorScale,
 192}
 193
 194impl TryFrom<StaticColorScaleSet> for ColorScaleSet {
 195    type Error = anyhow::Error;
 196
 197    fn try_from(value: StaticColorScaleSet) -> Result<Self, Self::Error> {
 198        fn to_color_scale(scale: StaticColorScale) -> Result<ColorScale, anyhow::Error> {
 199            scale
 200                .into_iter()
 201                .map(|color| Rgba::try_from(color).map(Hsla::from))
 202                .collect::<Result<Vec<_>, _>>()
 203                .map(ColorScale::from_iter)
 204        }
 205
 206        Ok(Self::new(
 207            value.scale,
 208            to_color_scale(value.light)?,
 209            to_color_scale(value.light_alpha)?,
 210            to_color_scale(value.dark)?,
 211            to_color_scale(value.dark_alpha)?,
 212        ))
 213    }
 214}
 215
 216pub fn default_color_scales() -> ColorScales {
 217    ColorScales {
 218        gray: gray(),
 219        mauve: mauve(),
 220        slate: slate(),
 221        sage: sage(),
 222        olive: olive(),
 223        sand: sand(),
 224        gold: gold(),
 225        bronze: bronze(),
 226        brown: brown(),
 227        yellow: yellow(),
 228        amber: amber(),
 229        orange: orange(),
 230        tomato: tomato(),
 231        red: red(),
 232        ruby: ruby(),
 233        crimson: crimson(),
 234        pink: pink(),
 235        plum: plum(),
 236        purple: purple(),
 237        violet: violet(),
 238        iris: iris(),
 239        indigo: indigo(),
 240        blue: blue(),
 241        cyan: cyan(),
 242        teal: teal(),
 243        jade: jade(),
 244        green: green(),
 245        grass: grass(),
 246        lime: lime(),
 247        mint: mint(),
 248        sky: sky(),
 249        black: black(),
 250        white: white(),
 251    }
 252}
 253
 254pub(crate) fn gray() -> ColorScaleSet {
 255    StaticColorScaleSet {
 256        scale: "Gray",
 257        light: [
 258            "#fcfcfcff",
 259            "#f9f9f9ff",
 260            "#f0f0f0ff",
 261            "#e8e8e8ff",
 262            "#e0e0e0ff",
 263            "#d9d9d9ff",
 264            "#cececeff",
 265            "#bbbbbbff",
 266            "#8d8d8dff",
 267            "#838383ff",
 268            "#646464ff",
 269            "#202020ff",
 270        ],
 271        light_alpha: [
 272            "#00000003",
 273            "#00000006",
 274            "#0000000f",
 275            "#00000017",
 276            "#0000001f",
 277            "#00000026",
 278            "#00000031",
 279            "#00000044",
 280            "#00000072",
 281            "#0000007c",
 282            "#0000009b",
 283            "#000000df",
 284        ],
 285        dark: [
 286            "#111111ff",
 287            "#191919ff",
 288            "#222222ff",
 289            "#2a2a2aff",
 290            "#313131ff",
 291            "#3a3a3aff",
 292            "#484848ff",
 293            "#606060ff",
 294            "#6e6e6eff",
 295            "#7b7b7bff",
 296            "#b4b4b4ff",
 297            "#eeeeeeff",
 298        ],
 299        dark_alpha: [
 300            "#00000000",
 301            "#ffffff09",
 302            "#ffffff12",
 303            "#ffffff1b",
 304            "#ffffff22",
 305            "#ffffff2c",
 306            "#ffffff3b",
 307            "#ffffff55",
 308            "#ffffff64",
 309            "#ffffff72",
 310            "#ffffffaf",
 311            "#ffffffed",
 312        ],
 313    }
 314    .try_into()
 315    .unwrap()
 316}
 317
 318pub(crate) fn mauve() -> ColorScaleSet {
 319    StaticColorScaleSet {
 320        scale: "Mauve",
 321        light: [
 322            "#fdfcfdff",
 323            "#faf9fbff",
 324            "#f2eff3ff",
 325            "#eae7ecff",
 326            "#e3dfe6ff",
 327            "#dbd8e0ff",
 328            "#d0cdd7ff",
 329            "#bcbac7ff",
 330            "#8e8c99ff",
 331            "#84828eff",
 332            "#65636dff",
 333            "#211f26ff",
 334        ],
 335        light_alpha: [
 336            "#55005503",
 337            "#2b005506",
 338            "#30004010",
 339            "#20003618",
 340            "#20003820",
 341            "#14003527",
 342            "#10003332",
 343            "#08003145",
 344            "#05001d73",
 345            "#0500197d",
 346            "#0400119c",
 347            "#020008e0",
 348        ],
 349        dark: [
 350            "#121113ff",
 351            "#1a191bff",
 352            "#232225ff",
 353            "#2b292dff",
 354            "#323035ff",
 355            "#3c393fff",
 356            "#49474eff",
 357            "#625f69ff",
 358            "#6f6d78ff",
 359            "#7c7a85ff",
 360            "#b5b2bcff",
 361            "#eeeef0ff",
 362        ],
 363        dark_alpha: [
 364            "#00000000",
 365            "#f5f4f609",
 366            "#ebeaf814",
 367            "#eee5f81d",
 368            "#efe6fe25",
 369            "#f1e6fd30",
 370            "#eee9ff40",
 371            "#eee7ff5d",
 372            "#eae6fd6e",
 373            "#ece9fd7c",
 374            "#f5f1ffb7",
 375            "#fdfdffef",
 376        ],
 377    }
 378    .try_into()
 379    .unwrap()
 380}
 381
 382pub(crate) fn slate() -> ColorScaleSet {
 383    StaticColorScaleSet {
 384        scale: "Slate",
 385        light: [
 386            "#fcfcfdff",
 387            "#f9f9fbff",
 388            "#f0f0f3ff",
 389            "#e8e8ecff",
 390            "#e0e1e6ff",
 391            "#d9d9e0ff",
 392            "#cdced6ff",
 393            "#b9bbc6ff",
 394            "#8b8d98ff",
 395            "#80838dff",
 396            "#60646cff",
 397            "#1c2024ff",
 398        ],
 399        light_alpha: [
 400            "#00005503",
 401            "#00005506",
 402            "#0000330f",
 403            "#00002d17",
 404            "#0009321f",
 405            "#00002f26",
 406            "#00062e32",
 407            "#00083046",
 408            "#00051d74",
 409            "#00071b7f",
 410            "#0007149f",
 411            "#000509e3",
 412        ],
 413        dark: [
 414            "#111113ff",
 415            "#18191bff",
 416            "#212225ff",
 417            "#272a2dff",
 418            "#2e3135ff",
 419            "#363a3fff",
 420            "#43484eff",
 421            "#5a6169ff",
 422            "#696e77ff",
 423            "#777b84ff",
 424            "#b0b4baff",
 425            "#edeef0ff",
 426        ],
 427        dark_alpha: [
 428            "#00000000",
 429            "#d8f4f609",
 430            "#ddeaf814",
 431            "#d3edf81d",
 432            "#d9edfe25",
 433            "#d6ebfd30",
 434            "#d9edff40",
 435            "#d9edff5d",
 436            "#dfebfd6d",
 437            "#e5edfd7b",
 438            "#f1f7feb5",
 439            "#fcfdffef",
 440        ],
 441    }
 442    .try_into()
 443    .unwrap()
 444}
 445
 446pub(crate) fn sage() -> ColorScaleSet {
 447    StaticColorScaleSet {
 448        scale: "Sage",
 449        light: [
 450            "#fbfdfcff",
 451            "#f7f9f8ff",
 452            "#eef1f0ff",
 453            "#e6e9e8ff",
 454            "#dfe2e0ff",
 455            "#d7dad9ff",
 456            "#cbcfcdff",
 457            "#b8bcbaff",
 458            "#868e8bff",
 459            "#7c8481ff",
 460            "#5f6563ff",
 461            "#1a211eff",
 462        ],
 463        light_alpha: [
 464            "#00804004",
 465            "#00402008",
 466            "#002d1e11",
 467            "#001f1519",
 468            "#00180820",
 469            "#00140d28",
 470            "#00140a34",
 471            "#000f0847",
 472            "#00110b79",
 473            "#00100a83",
 474            "#000a07a0",
 475            "#000805e5",
 476        ],
 477        dark: [
 478            "#101211ff",
 479            "#171918ff",
 480            "#202221ff",
 481            "#272a29ff",
 482            "#2e3130ff",
 483            "#373b39ff",
 484            "#444947ff",
 485            "#5b625fff",
 486            "#63706bff",
 487            "#717d79ff",
 488            "#adb5b2ff",
 489            "#eceeedff",
 490        ],
 491        dark_alpha: [
 492            "#00000000",
 493            "#f0f2f108",
 494            "#f3f5f412",
 495            "#f2fefd1a",
 496            "#f1fbfa22",
 497            "#edfbf42d",
 498            "#edfcf73c",
 499            "#ebfdf657",
 500            "#dffdf266",
 501            "#e5fdf674",
 502            "#f4fefbb0",
 503            "#fdfffeed",
 504        ],
 505    }
 506    .try_into()
 507    .unwrap()
 508}
 509
 510pub(crate) fn olive() -> ColorScaleSet {
 511    StaticColorScaleSet {
 512        scale: "Olive",
 513        light: [
 514            "#fcfdfcff",
 515            "#f8faf8ff",
 516            "#eff1efff",
 517            "#e7e9e7ff",
 518            "#dfe2dfff",
 519            "#d7dad7ff",
 520            "#cccfccff",
 521            "#b9bcb8ff",
 522            "#898e87ff",
 523            "#7f847dff",
 524            "#60655fff",
 525            "#1d211cff",
 526        ],
 527        light_alpha: [
 528            "#00550003",
 529            "#00490007",
 530            "#00200010",
 531            "#00160018",
 532            "#00180020",
 533            "#00140028",
 534            "#000f0033",
 535            "#040f0047",
 536            "#050f0078",
 537            "#040e0082",
 538            "#020a00a0",
 539            "#010600e3",
 540        ],
 541        dark: [
 542            "#111210ff",
 543            "#181917ff",
 544            "#212220ff",
 545            "#282a27ff",
 546            "#2f312eff",
 547            "#383a36ff",
 548            "#454843ff",
 549            "#5c625bff",
 550            "#687066ff",
 551            "#767d74ff",
 552            "#afb5adff",
 553            "#eceeecff",
 554        ],
 555        dark_alpha: [
 556            "#00000000",
 557            "#f1f2f008",
 558            "#f4f5f312",
 559            "#f3fef21a",
 560            "#f2fbf122",
 561            "#f4faed2c",
 562            "#f2fced3b",
 563            "#edfdeb57",
 564            "#ebfde766",
 565            "#f0fdec74",
 566            "#f6fef4b0",
 567            "#fdfffded",
 568        ],
 569    }
 570    .try_into()
 571    .unwrap()
 572}
 573
 574pub(crate) fn sand() -> ColorScaleSet {
 575    StaticColorScaleSet {
 576        scale: "Sand",
 577        light: [
 578            "#fdfdfcff",
 579            "#f9f9f8ff",
 580            "#f1f0efff",
 581            "#e9e8e6ff",
 582            "#e2e1deff",
 583            "#dad9d6ff",
 584            "#cfcecaff",
 585            "#bcbbb5ff",
 586            "#8d8d86ff",
 587            "#82827cff",
 588            "#63635eff",
 589            "#21201cff",
 590        ],
 591        light_alpha: [
 592            "#55550003",
 593            "#25250007",
 594            "#20100010",
 595            "#1f150019",
 596            "#1f180021",
 597            "#19130029",
 598            "#19140035",
 599            "#1915014a",
 600            "#0f0f0079",
 601            "#0c0c0083",
 602            "#080800a1",
 603            "#060500e3",
 604        ],
 605        dark: [
 606            "#111110ff",
 607            "#191918ff",
 608            "#222221ff",
 609            "#2a2a28ff",
 610            "#31312eff",
 611            "#3b3a37ff",
 612            "#494844ff",
 613            "#62605bff",
 614            "#6f6d66ff",
 615            "#7c7b74ff",
 616            "#b5b3adff",
 617            "#eeeeecff",
 618        ],
 619        dark_alpha: [
 620            "#00000000",
 621            "#f4f4f309",
 622            "#f6f6f513",
 623            "#fefef31b",
 624            "#fbfbeb23",
 625            "#fffaed2d",
 626            "#fffbed3c",
 627            "#fff9eb57",
 628            "#fffae965",
 629            "#fffdee73",
 630            "#fffcf4b0",
 631            "#fffffded",
 632        ],
 633    }
 634    .try_into()
 635    .unwrap()
 636}
 637
 638pub(crate) fn gold() -> ColorScaleSet {
 639    StaticColorScaleSet {
 640        scale: "Gold",
 641        light: [
 642            "#fdfdfcff",
 643            "#faf9f2ff",
 644            "#f2f0e7ff",
 645            "#eae6dbff",
 646            "#e1dccfff",
 647            "#d8d0bfff",
 648            "#cbc0aaff",
 649            "#b9a88dff",
 650            "#978365ff",
 651            "#8c7a5eff",
 652            "#71624bff",
 653            "#3b352bff",
 654        ],
 655        light_alpha: [
 656            "#55550003",
 657            "#9d8a000d",
 658            "#75600018",
 659            "#6b4e0024",
 660            "#60460030",
 661            "#64440040",
 662            "#63420055",
 663            "#633d0072",
 664            "#5332009a",
 665            "#492d00a1",
 666            "#362100b4",
 667            "#130c00d4",
 668        ],
 669        dark: [
 670            "#121211ff",
 671            "#1b1a17ff",
 672            "#24231fff",
 673            "#2d2b26ff",
 674            "#38352eff",
 675            "#444039ff",
 676            "#544f46ff",
 677            "#696256ff",
 678            "#978365ff",
 679            "#a39073ff",
 680            "#cbb99fff",
 681            "#e8e2d9ff",
 682        ],
 683        dark_alpha: [
 684            "#91911102",
 685            "#f9e29d0b",
 686            "#f8ecbb15",
 687            "#ffeec41e",
 688            "#feecc22a",
 689            "#feebcb37",
 690            "#ffedcd48",
 691            "#fdeaca5f",
 692            "#ffdba690",
 693            "#fedfb09d",
 694            "#fee7c6c8",
 695            "#fef7ede7",
 696        ],
 697    }
 698    .try_into()
 699    .unwrap()
 700}
 701
 702pub(crate) fn bronze() -> ColorScaleSet {
 703    StaticColorScaleSet {
 704        scale: "Bronze",
 705        light: [
 706            "#fdfcfcff",
 707            "#fdf7f5ff",
 708            "#f6edeaff",
 709            "#efe4dfff",
 710            "#e7d9d3ff",
 711            "#dfcdc5ff",
 712            "#d3bcb3ff",
 713            "#c2a499ff",
 714            "#a18072ff",
 715            "#957468ff",
 716            "#7d5e54ff",
 717            "#43302bff",
 718        ],
 719        light_alpha: [
 720            "#55000003",
 721            "#cc33000a",
 722            "#92250015",
 723            "#80280020",
 724            "#7423002c",
 725            "#7324003a",
 726            "#6c1f004c",
 727            "#671c0066",
 728            "#551a008d",
 729            "#4c150097",
 730            "#3d0f00ab",
 731            "#1d0600d4",
 732        ],
 733        dark: [
 734            "#141110ff",
 735            "#1c1917ff",
 736            "#262220ff",
 737            "#302a27ff",
 738            "#3b3330ff",
 739            "#493e3aff",
 740            "#5a4c47ff",
 741            "#6f5f58ff",
 742            "#a18072ff",
 743            "#ae8c7eff",
 744            "#d4b3a5ff",
 745            "#ede0d9ff",
 746        ],
 747        dark_alpha: [
 748            "#d1110004",
 749            "#fbbc910c",
 750            "#faceb817",
 751            "#facdb622",
 752            "#ffd2c12d",
 753            "#ffd1c03c",
 754            "#fdd0c04f",
 755            "#ffd6c565",
 756            "#fec7b09b",
 757            "#fecab5a9",
 758            "#ffd7c6d1",
 759            "#fff1e9ec",
 760        ],
 761    }
 762    .try_into()
 763    .unwrap()
 764}
 765
 766pub(crate) fn brown() -> ColorScaleSet {
 767    StaticColorScaleSet {
 768        scale: "Brown",
 769        light: [
 770            "#fefdfcff",
 771            "#fcf9f6ff",
 772            "#f6eee7ff",
 773            "#f0e4d9ff",
 774            "#ebdacaff",
 775            "#e4cdb7ff",
 776            "#dcbc9fff",
 777            "#cea37eff",
 778            "#ad7f58ff",
 779            "#a07553ff",
 780            "#815e46ff",
 781            "#3e332eff",
 782        ],
 783        light_alpha: [
 784            "#aa550003",
 785            "#aa550009",
 786            "#a04b0018",
 787            "#9b4a0026",
 788            "#9f4d0035",
 789            "#a04e0048",
 790            "#a34e0060",
 791            "#9f4a0081",
 792            "#823c00a7",
 793            "#723300ac",
 794            "#522100b9",
 795            "#140600d1",
 796        ],
 797        dark: [
 798            "#12110fff",
 799            "#1c1816ff",
 800            "#28211dff",
 801            "#322922ff",
 802            "#3e3128ff",
 803            "#4d3c2fff",
 804            "#614a39ff",
 805            "#7c5f46ff",
 806            "#ad7f58ff",
 807            "#b88c67ff",
 808            "#dbb594ff",
 809            "#f2e1caff",
 810        ],
 811        dark_alpha: [
 812            "#91110002",
 813            "#fba67c0c",
 814            "#fcb58c19",
 815            "#fbbb8a24",
 816            "#fcb88931",
 817            "#fdba8741",
 818            "#ffbb8856",
 819            "#ffbe8773",
 820            "#feb87da8",
 821            "#ffc18cb3",
 822            "#fed1aad9",
 823            "#feecd4f2",
 824        ],
 825    }
 826    .try_into()
 827    .unwrap()
 828}
 829
 830pub(crate) fn yellow() -> ColorScaleSet {
 831    StaticColorScaleSet {
 832        scale: "Yellow",
 833        light: [
 834            "#fdfdf9ff",
 835            "#fefce9ff",
 836            "#fffab8ff",
 837            "#fff394ff",
 838            "#ffe770ff",
 839            "#f3d768ff",
 840            "#e4c767ff",
 841            "#d5ae39ff",
 842            "#ffe629ff",
 843            "#ffdc00ff",
 844            "#9e6c00ff",
 845            "#473b1fff",
 846        ],
 847        light_alpha: [
 848            "#aaaa0006",
 849            "#f4dd0016",
 850            "#ffee0047",
 851            "#ffe3016b",
 852            "#ffd5008f",
 853            "#ebbc0097",
 854            "#d2a10098",
 855            "#c99700c6",
 856            "#ffe100d6",
 857            "#ffdc00ff",
 858            "#9e6c00ff",
 859            "#2e2000e0",
 860        ],
 861        dark: [
 862            "#14120bff",
 863            "#1b180fff",
 864            "#2d2305ff",
 865            "#362b00ff",
 866            "#433500ff",
 867            "#524202ff",
 868            "#665417ff",
 869            "#836a21ff",
 870            "#ffe629ff",
 871            "#ffff57ff",
 872            "#f5e147ff",
 873            "#f6eeb4ff",
 874        ],
 875        dark_alpha: [
 876            "#d1510004",
 877            "#f9b4000b",
 878            "#ffaa001e",
 879            "#fdb70028",
 880            "#febb0036",
 881            "#fec40046",
 882            "#fdcb225c",
 883            "#fdca327b",
 884            "#ffe629ff",
 885            "#ffff57ff",
 886            "#fee949f5",
 887            "#fef6baf6",
 888        ],
 889    }
 890    .try_into()
 891    .unwrap()
 892}
 893
 894pub(crate) fn amber() -> ColorScaleSet {
 895    StaticColorScaleSet {
 896        scale: "Amber",
 897        light: [
 898            "#fefdfbff",
 899            "#fefbe9ff",
 900            "#fff7c2ff",
 901            "#ffee9cff",
 902            "#fbe577ff",
 903            "#f3d673ff",
 904            "#e9c162ff",
 905            "#e2a336ff",
 906            "#ffc53dff",
 907            "#ffba18ff",
 908            "#ab6400ff",
 909            "#4f3422ff",
 910        ],
 911        light_alpha: [
 912            "#c0800004",
 913            "#f4d10016",
 914            "#ffde003d",
 915            "#ffd40063",
 916            "#f8cf0088",
 917            "#eab5008c",
 918            "#dc9b009d",
 919            "#da8a00c9",
 920            "#ffb300c2",
 921            "#ffb300e7",
 922            "#ab6400ff",
 923            "#341500dd",
 924        ],
 925        dark: [
 926            "#16120cff",
 927            "#1d180fff",
 928            "#302008ff",
 929            "#3f2700ff",
 930            "#4d3000ff",
 931            "#5c3d05ff",
 932            "#714f19ff",
 933            "#8f6424ff",
 934            "#ffc53dff",
 935            "#ffd60aff",
 936            "#ffca16ff",
 937            "#ffe7b3ff",
 938        ],
 939        dark_alpha: [
 940            "#e63c0006",
 941            "#fd9b000d",
 942            "#fa820022",
 943            "#fc820032",
 944            "#fd8b0041",
 945            "#fd9b0051",
 946            "#ffab2567",
 947            "#ffae3587",
 948            "#ffc53dff",
 949            "#ffd60aff",
 950            "#ffca16ff",
 951            "#ffe7b3ff",
 952        ],
 953    }
 954    .try_into()
 955    .unwrap()
 956}
 957
 958pub(crate) fn orange() -> ColorScaleSet {
 959    StaticColorScaleSet {
 960        scale: "Orange",
 961        light: [
 962            "#fefcfbff",
 963            "#fff7edff",
 964            "#ffefd6ff",
 965            "#ffdfb5ff",
 966            "#ffd19aff",
 967            "#ffc182ff",
 968            "#f5ae73ff",
 969            "#ec9455ff",
 970            "#f76b15ff",
 971            "#ef5f00ff",
 972            "#cc4e00ff",
 973            "#582d1dff",
 974        ],
 975        light_alpha: [
 976            "#c0400004",
 977            "#ff8e0012",
 978            "#ff9c0029",
 979            "#ff91014a",
 980            "#ff8b0065",
 981            "#ff81007d",
 982            "#ed6c008c",
 983            "#e35f00aa",
 984            "#f65e00ea",
 985            "#ef5f00ff",
 986            "#cc4e00ff",
 987            "#431200e2",
 988        ],
 989        dark: [
 990            "#17120eff",
 991            "#1e160fff",
 992            "#331e0bff",
 993            "#462100ff",
 994            "#562800ff",
 995            "#66350cff",
 996            "#7e451dff",
 997            "#a35829ff",
 998            "#f76b15ff",
 999            "#ff801fff",
1000            "#ffa057ff",
1001            "#ffe0c2ff",
1002        ],
1003        dark_alpha: [
1004            "#ec360007",
1005            "#fe6d000e",
1006            "#fb6a0025",
1007            "#ff590039",
1008            "#ff61004a",
1009            "#fd75045c",
1010            "#ff832c75",
1011            "#fe84389d",
1012            "#fe6d15f7",
1013            "#ff801fff",
1014            "#ffa057ff",
1015            "#ffe0c2ff",
1016        ],
1017    }
1018    .try_into()
1019    .unwrap()
1020}
1021
1022pub(crate) fn tomato() -> ColorScaleSet {
1023    StaticColorScaleSet {
1024        scale: "Tomato",
1025        light: [
1026            "#fffcfcff",
1027            "#fff8f7ff",
1028            "#feebe7ff",
1029            "#ffdcd3ff",
1030            "#ffcdc2ff",
1031            "#fdbdafff",
1032            "#f5a898ff",
1033            "#ec8e7bff",
1034            "#e54d2eff",
1035            "#dd4425ff",
1036            "#d13415ff",
1037            "#5c271fff",
1038        ],
1039        light_alpha: [
1040            "#ff000003",
1041            "#ff200008",
1042            "#f52b0018",
1043            "#ff35002c",
1044            "#ff2e003d",
1045            "#f92d0050",
1046            "#e7280067",
1047            "#db250084",
1048            "#df2600d1",
1049            "#d72400da",
1050            "#cd2200ea",
1051            "#460900e0",
1052        ],
1053        dark: [
1054            "#181111ff",
1055            "#1f1513ff",
1056            "#391714ff",
1057            "#4e1511ff",
1058            "#5e1c16ff",
1059            "#6e2920ff",
1060            "#853a2dff",
1061            "#ac4d39ff",
1062            "#e54d2eff",
1063            "#ec6142ff",
1064            "#ff977dff",
1065            "#fbd3cbff",
1066        ],
1067        dark_alpha: [
1068            "#f1121208",
1069            "#ff55330f",
1070            "#ff35232b",
1071            "#fd201142",
1072            "#fe332153",
1073            "#ff4f3864",
1074            "#fd644a7d",
1075            "#fe6d4ea7",
1076            "#fe5431e4",
1077            "#ff6847eb",
1078            "#ff977dff",
1079            "#ffd6cefb",
1080        ],
1081    }
1082    .try_into()
1083    .unwrap()
1084}
1085
1086pub(crate) fn red() -> ColorScaleSet {
1087    StaticColorScaleSet {
1088        scale: "Red",
1089        light: [
1090            "#fffcfcff",
1091            "#fff7f7ff",
1092            "#feebecff",
1093            "#ffdbdcff",
1094            "#ffcdceff",
1095            "#fdbdbeff",
1096            "#f4a9aaff",
1097            "#eb8e90ff",
1098            "#e5484dff",
1099            "#dc3e42ff",
1100            "#ce2c31ff",
1101            "#641723ff",
1102        ],
1103        light_alpha: [
1104            "#ff000003",
1105            "#ff000008",
1106            "#f3000d14",
1107            "#ff000824",
1108            "#ff000632",
1109            "#f8000442",
1110            "#df000356",
1111            "#d2000571",
1112            "#db0007b7",
1113            "#d10005c1",
1114            "#c40006d3",
1115            "#55000de8",
1116        ],
1117        dark: [
1118            "#191111ff",
1119            "#201314ff",
1120            "#3b1219ff",
1121            "#500f1cff",
1122            "#611623ff",
1123            "#72232dff",
1124            "#8c333aff",
1125            "#b54548ff",
1126            "#e5484dff",
1127            "#ec5d5eff",
1128            "#ff9592ff",
1129            "#ffd1d9ff",
1130        ],
1131        dark_alpha: [
1132            "#f4121209",
1133            "#f22f3e11",
1134            "#ff173f2d",
1135            "#fe0a3b44",
1136            "#ff204756",
1137            "#ff3e5668",
1138            "#ff536184",
1139            "#ff5d61b0",
1140            "#fe4e54e4",
1141            "#ff6465eb",
1142            "#ff9592ff",
1143            "#ffd1d9ff",
1144        ],
1145    }
1146    .try_into()
1147    .unwrap()
1148}
1149
1150pub(crate) fn ruby() -> ColorScaleSet {
1151    StaticColorScaleSet {
1152        scale: "Ruby",
1153        light: [
1154            "#fffcfdff",
1155            "#fff7f8ff",
1156            "#feeaedff",
1157            "#ffdce1ff",
1158            "#ffced6ff",
1159            "#f8bfc8ff",
1160            "#efacb8ff",
1161            "#e592a3ff",
1162            "#e54666ff",
1163            "#dc3b5dff",
1164            "#ca244dff",
1165            "#64172bff",
1166        ],
1167        light_alpha: [
1168            "#ff005503",
1169            "#ff002008",
1170            "#f3002515",
1171            "#ff002523",
1172            "#ff002a31",
1173            "#e4002440",
1174            "#ce002553",
1175            "#c300286d",
1176            "#db002cb9",
1177            "#d2002cc4",
1178            "#c10030db",
1179            "#550016e8",
1180        ],
1181        dark: [
1182            "#191113ff",
1183            "#1e1517ff",
1184            "#3a141eff",
1185            "#4e1325ff",
1186            "#5e1a2eff",
1187            "#6f2539ff",
1188            "#883447ff",
1189            "#b3445aff",
1190            "#e54666ff",
1191            "#ec5a72ff",
1192            "#ff949dff",
1193            "#fed2e1ff",
1194        ],
1195        dark_alpha: [
1196            "#f4124a09",
1197            "#fe5a7f0e",
1198            "#ff235d2c",
1199            "#fd195e42",
1200            "#fe2d6b53",
1201            "#ff447665",
1202            "#ff577d80",
1203            "#ff5c7cae",
1204            "#fe4c70e4",
1205            "#ff617beb",
1206            "#ff949dff",
1207            "#ffd3e2fe",
1208        ],
1209    }
1210    .try_into()
1211    .unwrap()
1212}
1213
1214pub(crate) fn crimson() -> ColorScaleSet {
1215    StaticColorScaleSet {
1216        scale: "Crimson",
1217        light: [
1218            "#fffcfdff",
1219            "#fef7f9ff",
1220            "#ffe9f0ff",
1221            "#fedce7ff",
1222            "#faceddff",
1223            "#f3bed1ff",
1224            "#eaacc3ff",
1225            "#e093b2ff",
1226            "#e93d82ff",
1227            "#df3478ff",
1228            "#cb1d63ff",
1229            "#621639ff",
1230        ],
1231        light_alpha: [
1232            "#ff005503",
1233            "#e0004008",
1234            "#ff005216",
1235            "#f8005123",
1236            "#e5004f31",
1237            "#d0004b41",
1238            "#bf004753",
1239            "#b6004a6c",
1240            "#e2005bc2",
1241            "#d70056cb",
1242            "#c4004fe2",
1243            "#530026e9",
1244        ],
1245        dark: [
1246            "#191114ff",
1247            "#201318ff",
1248            "#381525ff",
1249            "#4d122fff",
1250            "#5c1839ff",
1251            "#6d2545ff",
1252            "#873356ff",
1253            "#b0436eff",
1254            "#e93d82ff",
1255            "#ee518aff",
1256            "#ff92adff",
1257            "#fdd3e8ff",
1258        ],
1259        dark_alpha: [
1260            "#f4126709",
1261            "#f22f7a11",
1262            "#fe2a8b2a",
1263            "#fd158741",
1264            "#fd278f51",
1265            "#fe459763",
1266            "#fd559b7f",
1267            "#fe5b9bab",
1268            "#fe418de8",
1269            "#ff5693ed",
1270            "#ff92adff",
1271            "#ffd5eafd",
1272        ],
1273    }
1274    .try_into()
1275    .unwrap()
1276}
1277
1278pub(crate) fn pink() -> ColorScaleSet {
1279    StaticColorScaleSet {
1280        scale: "Pink",
1281        light: [
1282            "#fffcfeff",
1283            "#fef7fbff",
1284            "#fee9f5ff",
1285            "#fbdcefff",
1286            "#f6cee7ff",
1287            "#efbfddff",
1288            "#e7acd0ff",
1289            "#dd93c2ff",
1290            "#d6409fff",
1291            "#cf3897ff",
1292            "#c2298aff",
1293            "#651249ff",
1294        ],
1295        light_alpha: [
1296            "#ff00aa03",
1297            "#e0008008",
1298            "#f4008c16",
1299            "#e2008b23",
1300            "#d1008331",
1301            "#c0007840",
1302            "#b6006f53",
1303            "#af006f6c",
1304            "#c8007fbf",
1305            "#c2007ac7",
1306            "#b60074d6",
1307            "#59003bed",
1308        ],
1309        dark: [
1310            "#191117ff",
1311            "#21121dff",
1312            "#37172fff",
1313            "#4b143dff",
1314            "#591c47ff",
1315            "#692955ff",
1316            "#833869ff",
1317            "#a84885ff",
1318            "#d6409fff",
1319            "#de51a8ff",
1320            "#ff8dccff",
1321            "#fdd1eaff",
1322        ],
1323        dark_alpha: [
1324            "#f412bc09",
1325            "#f420bb12",
1326            "#fe37cc29",
1327            "#fc1ec43f",
1328            "#fd35c24e",
1329            "#fd51c75f",
1330            "#fd62c87b",
1331            "#ff68c8a2",
1332            "#fe49bcd4",
1333            "#ff5cc0dc",
1334            "#ff8dccff",
1335            "#ffd3ecfd",
1336        ],
1337    }
1338    .try_into()
1339    .unwrap()
1340}
1341
1342pub(crate) fn plum() -> ColorScaleSet {
1343    StaticColorScaleSet {
1344        scale: "Plum",
1345        light: [
1346            "#fefcffff",
1347            "#fdf7fdff",
1348            "#fbebfbff",
1349            "#f7def8ff",
1350            "#f2d1f3ff",
1351            "#e9c2ecff",
1352            "#deade3ff",
1353            "#cf91d8ff",
1354            "#ab4abaff",
1355            "#a144afff",
1356            "#953ea3ff",
1357            "#53195dff",
1358        ],
1359        light_alpha: [
1360            "#aa00ff03",
1361            "#c000c008",
1362            "#cc00cc14",
1363            "#c200c921",
1364            "#b700bd2e",
1365            "#a400b03d",
1366            "#9900a852",
1367            "#9000a56e",
1368            "#89009eb5",
1369            "#7f0092bb",
1370            "#730086c1",
1371            "#40004be6",
1372        ],
1373        dark: [
1374            "#181118ff",
1375            "#201320ff",
1376            "#351a35ff",
1377            "#451d47ff",
1378            "#512454ff",
1379            "#5e3061ff",
1380            "#734079ff",
1381            "#92549cff",
1382            "#ab4abaff",
1383            "#b658c4ff",
1384            "#e796f3ff",
1385            "#f4d4f4ff",
1386        ],
1387        dark_alpha: [
1388            "#f112f108",
1389            "#f22ff211",
1390            "#fd4cfd27",
1391            "#f646ff3a",
1392            "#f455ff48",
1393            "#f66dff56",
1394            "#f07cfd70",
1395            "#ee84ff95",
1396            "#e961feb6",
1397            "#ed70ffc0",
1398            "#f19cfef3",
1399            "#feddfef4",
1400        ],
1401    }
1402    .try_into()
1403    .unwrap()
1404}
1405
1406pub(crate) fn purple() -> ColorScaleSet {
1407    StaticColorScaleSet {
1408        scale: "Purple",
1409        light: [
1410            "#fefcfeff",
1411            "#fbf7feff",
1412            "#f7edfeff",
1413            "#f2e2fcff",
1414            "#ead5f9ff",
1415            "#e0c4f4ff",
1416            "#d1afecff",
1417            "#be93e4ff",
1418            "#8e4ec6ff",
1419            "#8347b9ff",
1420            "#8145b5ff",
1421            "#402060ff",
1422        ],
1423        light_alpha: [
1424            "#aa00aa03",
1425            "#8000e008",
1426            "#8e00f112",
1427            "#8d00e51d",
1428            "#8000db2a",
1429            "#7a01d03b",
1430            "#6d00c350",
1431            "#6600c06c",
1432            "#5c00adb1",
1433            "#53009eb8",
1434            "#52009aba",
1435            "#250049df",
1436        ],
1437        dark: [
1438            "#18111bff",
1439            "#1e1523ff",
1440            "#301c3bff",
1441            "#3d224eff",
1442            "#48295cff",
1443            "#54346bff",
1444            "#664282ff",
1445            "#8457aaff",
1446            "#8e4ec6ff",
1447            "#9a5cd0ff",
1448            "#d19dffff",
1449            "#ecd9faff",
1450        ],
1451        dark_alpha: [
1452            "#b412f90b",
1453            "#b744f714",
1454            "#c150ff2d",
1455            "#bb53fd42",
1456            "#be5cfd51",
1457            "#c16dfd61",
1458            "#c378fd7a",
1459            "#c47effa4",
1460            "#b661ffc2",
1461            "#bc6fffcd",
1462            "#d19dffff",
1463            "#f1ddfffa",
1464        ],
1465    }
1466    .try_into()
1467    .unwrap()
1468}
1469
1470pub(crate) fn violet() -> ColorScaleSet {
1471    StaticColorScaleSet {
1472        scale: "Violet",
1473        light: [
1474            "#fdfcfeff",
1475            "#faf8ffff",
1476            "#f4f0feff",
1477            "#ebe4ffff",
1478            "#e1d9ffff",
1479            "#d4cafeff",
1480            "#c2b5f5ff",
1481            "#aa99ecff",
1482            "#6e56cfff",
1483            "#654dc4ff",
1484            "#6550b9ff",
1485            "#2f265fff",
1486        ],
1487        light_alpha: [
1488            "#5500aa03",
1489            "#4900ff07",
1490            "#4400ee0f",
1491            "#4300ff1b",
1492            "#3600ff26",
1493            "#3100fb35",
1494            "#2d01dd4a",
1495            "#2b00d066",
1496            "#2400b7a9",
1497            "#2300abb2",
1498            "#1f0099af",
1499            "#0b0043d9",
1500        ],
1501        dark: [
1502            "#14121fff",
1503            "#1b1525ff",
1504            "#291f43ff",
1505            "#33255bff",
1506            "#3c2e69ff",
1507            "#473876ff",
1508            "#56468bff",
1509            "#6958adff",
1510            "#6e56cfff",
1511            "#7d66d9ff",
1512            "#baa7ffff",
1513            "#e2ddfeff",
1514        ],
1515        dark_alpha: [
1516            "#4422ff0f",
1517            "#853ff916",
1518            "#8354fe36",
1519            "#7d51fd50",
1520            "#845ffd5f",
1521            "#8f6cfd6d",
1522            "#9879ff83",
1523            "#977dfea8",
1524            "#8668ffcc",
1525            "#9176fed7",
1526            "#baa7ffff",
1527            "#e3defffe",
1528        ],
1529    }
1530    .try_into()
1531    .unwrap()
1532}
1533
1534pub(crate) fn iris() -> ColorScaleSet {
1535    StaticColorScaleSet {
1536        scale: "Iris",
1537        light: [
1538            "#fdfdffff",
1539            "#f8f8ffff",
1540            "#f0f1feff",
1541            "#e6e7ffff",
1542            "#dadcffff",
1543            "#cbcdffff",
1544            "#b8baf8ff",
1545            "#9b9ef0ff",
1546            "#5b5bd6ff",
1547            "#5151cdff",
1548            "#5753c6ff",
1549            "#272962ff",
1550        ],
1551        light_alpha: [
1552            "#0000ff02",
1553            "#0000ff07",
1554            "#0011ee0f",
1555            "#000bff19",
1556            "#000eff25",
1557            "#000aff34",
1558            "#0008e647",
1559            "#0008d964",
1560            "#0000c0a4",
1561            "#0000b6ae",
1562            "#0600abac",
1563            "#000246d8",
1564        ],
1565        dark: [
1566            "#13131eff",
1567            "#171625ff",
1568            "#202248ff",
1569            "#262a65ff",
1570            "#303374ff",
1571            "#3d3e82ff",
1572            "#4a4a95ff",
1573            "#5958b1ff",
1574            "#5b5bd6ff",
1575            "#6e6adeff",
1576            "#b1a9ffff",
1577            "#e0dffeff",
1578        ],
1579        dark_alpha: [
1580            "#3636fe0e",
1581            "#564bf916",
1582            "#525bff3b",
1583            "#4d58ff5a",
1584            "#5b62fd6b",
1585            "#6d6ffd7a",
1586            "#7777fe8e",
1587            "#7b7afeac",
1588            "#6a6afed4",
1589            "#7d79ffdc",
1590            "#b1a9ffff",
1591            "#e1e0fffe",
1592        ],
1593    }
1594    .try_into()
1595    .unwrap()
1596}
1597
1598pub(crate) fn indigo() -> ColorScaleSet {
1599    StaticColorScaleSet {
1600        scale: "Indigo",
1601        light: [
1602            "#fdfdfeff",
1603            "#f7f9ffff",
1604            "#edf2feff",
1605            "#e1e9ffff",
1606            "#d2deffff",
1607            "#c1d0ffff",
1608            "#abbdf9ff",
1609            "#8da4efff",
1610            "#3e63ddff",
1611            "#3358d4ff",
1612            "#3a5bc7ff",
1613            "#1f2d5cff",
1614        ],
1615        light_alpha: [
1616            "#00008002",
1617            "#0040ff08",
1618            "#0047f112",
1619            "#0044ff1e",
1620            "#0044ff2d",
1621            "#003eff3e",
1622            "#0037ed54",
1623            "#0034dc72",
1624            "#0031d2c1",
1625            "#002ec9cc",
1626            "#002bb7c5",
1627            "#001046e0",
1628        ],
1629        dark: [
1630            "#11131fff",
1631            "#141726ff",
1632            "#182449ff",
1633            "#1d2e62ff",
1634            "#253974ff",
1635            "#304384ff",
1636            "#3a4f97ff",
1637            "#435db1ff",
1638            "#3e63ddff",
1639            "#5472e4ff",
1640            "#9eb1ffff",
1641            "#d6e1ffff",
1642        ],
1643        dark_alpha: [
1644            "#1133ff0f",
1645            "#3354fa17",
1646            "#2f62ff3c",
1647            "#3566ff57",
1648            "#4171fd6b",
1649            "#5178fd7c",
1650            "#5a7fff90",
1651            "#5b81feac",
1652            "#4671ffdb",
1653            "#5c7efee3",
1654            "#9eb1ffff",
1655            "#d6e1ffff",
1656        ],
1657    }
1658    .try_into()
1659    .unwrap()
1660}
1661
1662pub(crate) fn blue() -> ColorScaleSet {
1663    StaticColorScaleSet {
1664        scale: "Blue",
1665        light: [
1666            "#fbfdffff",
1667            "#f4faffff",
1668            "#e6f4feff",
1669            "#d5efffff",
1670            "#c2e5ffff",
1671            "#acd8fcff",
1672            "#8ec8f6ff",
1673            "#5eb1efff",
1674            "#0090ffff",
1675            "#0588f0ff",
1676            "#0d74ceff",
1677            "#113264ff",
1678        ],
1679        light_alpha: [
1680            "#0080ff04",
1681            "#008cff0b",
1682            "#008ff519",
1683            "#009eff2a",
1684            "#0093ff3d",
1685            "#0088f653",
1686            "#0083eb71",
1687            "#0084e6a1",
1688            "#0090ffff",
1689            "#0086f0fa",
1690            "#006dcbf2",
1691            "#002359ee",
1692        ],
1693        dark: [
1694            "#0d1520ff",
1695            "#111927ff",
1696            "#0d2847ff",
1697            "#003362ff",
1698            "#004074ff",
1699            "#104d87ff",
1700            "#205d9eff",
1701            "#2870bdff",
1702            "#0090ffff",
1703            "#3b9effff",
1704            "#70b8ffff",
1705            "#c2e6ffff",
1706        ],
1707        dark_alpha: [
1708            "#004df211",
1709            "#1166fb18",
1710            "#0077ff3a",
1711            "#0075ff57",
1712            "#0081fd6b",
1713            "#0f89fd7f",
1714            "#2a91fe98",
1715            "#3094feb9",
1716            "#0090ffff",
1717            "#3b9effff",
1718            "#70b8ffff",
1719            "#c2e6ffff",
1720        ],
1721    }
1722    .try_into()
1723    .unwrap()
1724}
1725
1726pub(crate) fn cyan() -> ColorScaleSet {
1727    StaticColorScaleSet {
1728        scale: "Cyan",
1729        light: [
1730            "#fafdfeff",
1731            "#f2fafbff",
1732            "#def7f9ff",
1733            "#caf1f6ff",
1734            "#b5e9f0ff",
1735            "#9ddde7ff",
1736            "#7dcedcff",
1737            "#3db9cfff",
1738            "#00a2c7ff",
1739            "#0797b9ff",
1740            "#107d98ff",
1741            "#0d3c48ff",
1742        ],
1743        light_alpha: [
1744            "#0099cc05",
1745            "#009db10d",
1746            "#00c2d121",
1747            "#00bcd435",
1748            "#01b4cc4a",
1749            "#00a7c162",
1750            "#009fbb82",
1751            "#00a3c0c2",
1752            "#00a2c7ff",
1753            "#0094b7f8",
1754            "#007491ef",
1755            "#00323ef2",
1756        ],
1757        dark: [
1758            "#0b161aff",
1759            "#101b20ff",
1760            "#082c36ff",
1761            "#003848ff",
1762            "#004558ff",
1763            "#045468ff",
1764            "#12677eff",
1765            "#11809cff",
1766            "#00a2c7ff",
1767            "#23afd0ff",
1768            "#4ccce6ff",
1769            "#b6ecf7ff",
1770        ],
1771        dark_alpha: [
1772            "#0091f70a",
1773            "#02a7f211",
1774            "#00befd28",
1775            "#00baff3b",
1776            "#00befd4d",
1777            "#00c7fd5e",
1778            "#14cdff75",
1779            "#11cfff95",
1780            "#00cfffc3",
1781            "#28d6ffcd",
1782            "#52e1fee5",
1783            "#bbf3fef7",
1784        ],
1785    }
1786    .try_into()
1787    .unwrap()
1788}
1789
1790pub(crate) fn teal() -> ColorScaleSet {
1791    StaticColorScaleSet {
1792        scale: "Teal",
1793        light: [
1794            "#fafefdff",
1795            "#f3fbf9ff",
1796            "#e0f8f3ff",
1797            "#ccf3eaff",
1798            "#b8eae0ff",
1799            "#a1ded2ff",
1800            "#83cdc1ff",
1801            "#53b9abff",
1802            "#12a594ff",
1803            "#0d9b8aff",
1804            "#008573ff",
1805            "#0d3d38ff",
1806        ],
1807        light_alpha: [
1808            "#00cc9905",
1809            "#00aa800c",
1810            "#00c69d1f",
1811            "#00c39633",
1812            "#00b49047",
1813            "#00a6855e",
1814            "#0099807c",
1815            "#009783ac",
1816            "#009e8ced",
1817            "#009684f2",
1818            "#008573ff",
1819            "#00332df2",
1820        ],
1821        dark: [
1822            "#0d1514ff",
1823            "#111c1bff",
1824            "#0d2d2aff",
1825            "#023b37ff",
1826            "#084843ff",
1827            "#145750ff",
1828            "#1c6961ff",
1829            "#207e73ff",
1830            "#12a594ff",
1831            "#0eb39eff",
1832            "#0bd8b6ff",
1833            "#adf0ddff",
1834        ],
1835        dark_alpha: [
1836            "#00deab05",
1837            "#12fbe60c",
1838            "#00ffe61e",
1839            "#00ffe92d",
1840            "#00ffea3b",
1841            "#1cffe84b",
1842            "#2efde85f",
1843            "#32ffe775",
1844            "#13ffe49f",
1845            "#0dffe0ae",
1846            "#0afed5d6",
1847            "#b8ffebef",
1848        ],
1849    }
1850    .try_into()
1851    .unwrap()
1852}
1853
1854pub(crate) fn jade() -> ColorScaleSet {
1855    StaticColorScaleSet {
1856        scale: "Jade",
1857        light: [
1858            "#fbfefdff",
1859            "#f4fbf7ff",
1860            "#e6f7edff",
1861            "#d6f1e3ff",
1862            "#c3e9d7ff",
1863            "#acdec8ff",
1864            "#8bceb6ff",
1865            "#56ba9fff",
1866            "#29a383ff",
1867            "#26997bff",
1868            "#208368ff",
1869            "#1d3b31ff",
1870        ],
1871        light_alpha: [
1872            "#00c08004",
1873            "#00a3460b",
1874            "#00ae4819",
1875            "#00a85129",
1876            "#00a2553c",
1877            "#009a5753",
1878            "#00945f74",
1879            "#00976ea9",
1880            "#00916bd6",
1881            "#008764d9",
1882            "#007152df",
1883            "#002217e2",
1884        ],
1885        dark: [
1886            "#0d1512ff",
1887            "#121c18ff",
1888            "#0f2e22ff",
1889            "#0b3b2cff",
1890            "#114837ff",
1891            "#1b5745ff",
1892            "#246854ff",
1893            "#2a7e68ff",
1894            "#29a383ff",
1895            "#27b08bff",
1896            "#1fd8a4ff",
1897            "#adf0d4ff",
1898        ],
1899        dark_alpha: [
1900            "#00de4505",
1901            "#27fba60c",
1902            "#02f99920",
1903            "#00ffaa2d",
1904            "#11ffb63b",
1905            "#34ffc24b",
1906            "#45fdc75e",
1907            "#48ffcf75",
1908            "#38feca9d",
1909            "#31fec7ab",
1910            "#21fec0d6",
1911            "#b8ffe1ef",
1912        ],
1913    }
1914    .try_into()
1915    .unwrap()
1916}
1917
1918pub(crate) fn green() -> ColorScaleSet {
1919    StaticColorScaleSet {
1920        scale: "Green",
1921        light: [
1922            "#fbfefcff",
1923            "#f4fbf6ff",
1924            "#e6f6ebff",
1925            "#d6f1dfff",
1926            "#c4e8d1ff",
1927            "#adddc0ff",
1928            "#8eceaaff",
1929            "#5bb98bff",
1930            "#30a46cff",
1931            "#2b9a66ff",
1932            "#218358ff",
1933            "#193b2dff",
1934        ],
1935        light_alpha: [
1936            "#00c04004",
1937            "#00a32f0b",
1938            "#00a43319",
1939            "#00a83829",
1940            "#019c393b",
1941            "#00963c52",
1942            "#00914071",
1943            "#00924ba4",
1944            "#008f4acf",
1945            "#008647d4",
1946            "#00713fde",
1947            "#002616e6",
1948        ],
1949        dark: [
1950            "#0e1512ff",
1951            "#121b17ff",
1952            "#132d21ff",
1953            "#113b29ff",
1954            "#174933ff",
1955            "#20573eff",
1956            "#28684aff",
1957            "#2f7c57ff",
1958            "#30a46cff",
1959            "#33b074ff",
1960            "#3dd68cff",
1961            "#b1f1cbff",
1962        ],
1963        dark_alpha: [
1964            "#00de4505",
1965            "#29f99d0b",
1966            "#22ff991e",
1967            "#11ff992d",
1968            "#2bffa23c",
1969            "#44ffaa4b",
1970            "#50fdac5e",
1971            "#54ffad73",
1972            "#44ffa49e",
1973            "#43fea4ab",
1974            "#46fea5d4",
1975            "#bbffd7f0",
1976        ],
1977    }
1978    .try_into()
1979    .unwrap()
1980}
1981
1982pub(crate) fn grass() -> ColorScaleSet {
1983    StaticColorScaleSet {
1984        scale: "Grass",
1985        light: [
1986            "#fbfefbff",
1987            "#f5fbf5ff",
1988            "#e9f6e9ff",
1989            "#daf1dbff",
1990            "#c9e8caff",
1991            "#b2ddb5ff",
1992            "#94ce9aff",
1993            "#65ba74ff",
1994            "#46a758ff",
1995            "#3e9b4fff",
1996            "#2a7e3bff",
1997            "#203c25ff",
1998        ],
1999        light_alpha: [
2000            "#00c00004",
2001            "#0099000a",
2002            "#00970016",
2003            "#009f0725",
2004            "#00930536",
2005            "#008f0a4d",
2006            "#018b0f6b",
2007            "#008d199a",
2008            "#008619b9",
2009            "#007b17c1",
2010            "#006514d5",
2011            "#002006df",
2012        ],
2013        dark: [
2014            "#0e1511ff",
2015            "#141a15ff",
2016            "#1b2a1eff",
2017            "#1d3a24ff",
2018            "#25482dff",
2019            "#2d5736ff",
2020            "#366740ff",
2021            "#3e7949ff",
2022            "#46a758ff",
2023            "#53b365ff",
2024            "#71d083ff",
2025            "#c2f0c2ff",
2026        ],
2027        dark_alpha: [
2028            "#00de1205",
2029            "#5ef7780a",
2030            "#70fe8c1b",
2031            "#57ff802c",
2032            "#68ff8b3b",
2033            "#71ff8f4b",
2034            "#77fd925d",
2035            "#77fd9070",
2036            "#65ff82a1",
2037            "#72ff8dae",
2038            "#89ff9fcd",
2039            "#ceffceef",
2040        ],
2041    }
2042    .try_into()
2043    .unwrap()
2044}
2045
2046pub(crate) fn lime() -> ColorScaleSet {
2047    StaticColorScaleSet {
2048        scale: "Lime",
2049        light: [
2050            "#fcfdfaff",
2051            "#f8faf3ff",
2052            "#eef6d6ff",
2053            "#e2f0bdff",
2054            "#d3e7a6ff",
2055            "#c2da91ff",
2056            "#abc978ff",
2057            "#8db654ff",
2058            "#bdee63ff",
2059            "#b0e64cff",
2060            "#5c7c2fff",
2061            "#37401cff",
2062        ],
2063        light_alpha: [
2064            "#66990005",
2065            "#6b95000c",
2066            "#96c80029",
2067            "#8fc60042",
2068            "#81bb0059",
2069            "#72aa006e",
2070            "#61990087",
2071            "#559200ab",
2072            "#93e4009c",
2073            "#8fdc00b3",
2074            "#375f00d0",
2075            "#1e2900e3",
2076        ],
2077        dark: [
2078            "#11130cff",
2079            "#151a10ff",
2080            "#1f2917ff",
2081            "#29371dff",
2082            "#334423ff",
2083            "#3d522aff",
2084            "#496231ff",
2085            "#577538ff",
2086            "#bdee63ff",
2087            "#d4ff70ff",
2088            "#bde56cff",
2089            "#e3f7baff",
2090        ],
2091        dark_alpha: [
2092            "#11bb0003",
2093            "#78f7000a",
2094            "#9bfd4c1a",
2095            "#a7fe5c29",
2096            "#affe6537",
2097            "#b2fe6d46",
2098            "#b6ff6f57",
2099            "#b6fd6d6c",
2100            "#caff69ed",
2101            "#d4ff70ff",
2102            "#d1fe77e4",
2103            "#e9febff7",
2104        ],
2105    }
2106    .try_into()
2107    .unwrap()
2108}
2109
2110pub(crate) fn mint() -> ColorScaleSet {
2111    StaticColorScaleSet {
2112        scale: "Mint",
2113        light: [
2114            "#f9fefdff",
2115            "#f2fbf9ff",
2116            "#ddf9f2ff",
2117            "#c8f4e9ff",
2118            "#b3ecdeff",
2119            "#9ce0d0ff",
2120            "#7ecfbdff",
2121            "#4cbba5ff",
2122            "#86ead4ff",
2123            "#7de0cbff",
2124            "#027864ff",
2125            "#16433cff",
2126        ],
2127        light_alpha: [
2128            "#00d5aa06",
2129            "#00b18a0d",
2130            "#00d29e22",
2131            "#00cc9937",
2132            "#00c0914c",
2133            "#00b08663",
2134            "#00a17d81",
2135            "#009e7fb3",
2136            "#00d3a579",
2137            "#00c39982",
2138            "#007763fd",
2139            "#00312ae9",
2140        ],
2141        dark: [
2142            "#0e1515ff",
2143            "#0f1b1bff",
2144            "#092c2bff",
2145            "#003a38ff",
2146            "#004744ff",
2147            "#105650ff",
2148            "#1e685fff",
2149            "#277f70ff",
2150            "#86ead4ff",
2151            "#a8f5e5ff",
2152            "#58d5baff",
2153            "#c4f5e1ff",
2154        ],
2155        dark_alpha: [
2156            "#00dede05",
2157            "#00f9f90b",
2158            "#00fff61d",
2159            "#00fff42c",
2160            "#00fff23a",
2161            "#0effeb4a",
2162            "#34fde55e",
2163            "#41ffdf76",
2164            "#92ffe7e9",
2165            "#aefeedf5",
2166            "#67ffded2",
2167            "#cbfee9f5",
2168        ],
2169    }
2170    .try_into()
2171    .unwrap()
2172}
2173
2174pub(crate) fn sky() -> ColorScaleSet {
2175    StaticColorScaleSet {
2176        scale: "Sky",
2177        light: [
2178            "#f9feffff",
2179            "#f1fafdff",
2180            "#e1f6fdff",
2181            "#d1f0faff",
2182            "#bee7f5ff",
2183            "#a9daedff",
2184            "#8dcae3ff",
2185            "#60b3d7ff",
2186            "#7ce2feff",
2187            "#74daf8ff",
2188            "#00749eff",
2189            "#1d3e56ff",
2190        ],
2191        light_alpha: [
2192            "#00d5ff06",
2193            "#00a4db0e",
2194            "#00b3ee1e",
2195            "#00ace42e",
2196            "#00a1d841",
2197            "#0092ca56",
2198            "#0089c172",
2199            "#0085bf9f",
2200            "#00c7fe83",
2201            "#00bcf38b",
2202            "#00749eff",
2203            "#002540e2",
2204        ],
2205        dark: [
2206            "#0d141fff",
2207            "#111a27ff",
2208            "#112840ff",
2209            "#113555ff",
2210            "#154467ff",
2211            "#1b537bff",
2212            "#1f6692ff",
2213            "#197caeff",
2214            "#7ce2feff",
2215            "#a8eeffff",
2216            "#75c7f0ff",
2217            "#c2f3ffff",
2218        ],
2219        dark_alpha: [
2220            "#0044ff0f",
2221            "#1171fb18",
2222            "#1184fc33",
2223            "#128fff49",
2224            "#1c9dfd5d",
2225            "#28a5ff72",
2226            "#2badfe8b",
2227            "#1db2fea9",
2228            "#7ce3fffe",
2229            "#a8eeffff",
2230            "#7cd3ffef",
2231            "#c2f3ffff",
2232        ],
2233    }
2234    .try_into()
2235    .unwrap()
2236}
2237
2238pub(crate) fn black() -> ColorScaleSet {
2239    StaticColorScaleSet {
2240        scale: "Black",
2241        light: [
2242            "#0000000d",
2243            "#0000001a",
2244            "#00000026",
2245            "#00000033",
2246            "#0000004d",
2247            "#00000066",
2248            "#00000080",
2249            "#00000099",
2250            "#000000b3",
2251            "#000000cc",
2252            "#000000e6",
2253            "#000000f2",
2254        ],
2255        light_alpha: [
2256            "#0000000d",
2257            "#0000001a",
2258            "#00000026",
2259            "#00000033",
2260            "#0000004d",
2261            "#00000066",
2262            "#00000080",
2263            "#00000099",
2264            "#000000b3",
2265            "#000000cc",
2266            "#000000e6",
2267            "#000000f2",
2268        ],
2269        dark: [
2270            "#0000000d",
2271            "#0000001a",
2272            "#00000026",
2273            "#00000033",
2274            "#0000004d",
2275            "#00000066",
2276            "#00000080",
2277            "#00000099",
2278            "#000000b3",
2279            "#000000cc",
2280            "#000000e6",
2281            "#000000f2",
2282        ],
2283        dark_alpha: [
2284            "#0000000d",
2285            "#0000001a",
2286            "#00000026",
2287            "#00000033",
2288            "#0000004d",
2289            "#00000066",
2290            "#00000080",
2291            "#00000099",
2292            "#000000b3",
2293            "#000000cc",
2294            "#000000e6",
2295            "#000000f2",
2296        ],
2297    }
2298    .try_into()
2299    .unwrap()
2300}
2301
2302pub(crate) fn white() -> ColorScaleSet {
2303    StaticColorScaleSet {
2304        scale: "White",
2305        light: [
2306            "#ffffff0d",
2307            "#ffffff1a",
2308            "#ffffff26",
2309            "#ffffff33",
2310            "#ffffff4d",
2311            "#ffffff66",
2312            "#ffffff80",
2313            "#ffffff99",
2314            "#ffffffb3",
2315            "#ffffffcc",
2316            "#ffffffe6",
2317            "#fffffff2",
2318        ],
2319        light_alpha: [
2320            "#ffffff0d",
2321            "#ffffff1a",
2322            "#ffffff26",
2323            "#ffffff33",
2324            "#ffffff4d",
2325            "#ffffff66",
2326            "#ffffff80",
2327            "#ffffff99",
2328            "#ffffffb3",
2329            "#ffffffcc",
2330            "#ffffffe6",
2331            "#fffffff2",
2332        ],
2333        dark: [
2334            "#ffffff0d",
2335            "#ffffff1a",
2336            "#ffffff26",
2337            "#ffffff33",
2338            "#ffffff4d",
2339            "#ffffff66",
2340            "#ffffff80",
2341            "#ffffff99",
2342            "#ffffffb3",
2343            "#ffffffcc",
2344            "#ffffffe6",
2345            "#fffffff2",
2346        ],
2347        dark_alpha: [
2348            "#ffffff0d",
2349            "#ffffff1a",
2350            "#ffffff26",
2351            "#ffffff33",
2352            "#ffffff4d",
2353            "#ffffff66",
2354            "#ffffff80",
2355            "#ffffff99",
2356            "#ffffffb3",
2357            "#ffffffcc",
2358            "#ffffffe6",
2359            "#fffffff2",
2360        ],
2361    }
2362    .try_into()
2363    .unwrap()
2364}