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