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