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}