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