Skip to content

Commit f303a8c

Browse files
committed
Better color chart selection
1 parent 7c5e37b commit f303a8c

1 file changed

Lines changed: 26 additions & 5 deletions

File tree

client/src/utils/colors.tsx

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,42 @@ import { sortBy, values } from "lodash";
55
export const { common, ...accentColors } = muiColors;
66
export const colors = sortBy(
77
values(accentColors),
8-
(c) => convert.hex.hsl(c[100])[0]
8+
(c) => convert.hex.hsl(c[100])[0],
99
);
1010

1111
export const tone = (
1212
mode: "light" | "dark" = "light",
13-
color: (typeof accentColors)[keyof typeof accentColors]
13+
color: (typeof accentColors)[keyof typeof accentColors],
1414
) => {
1515
return color[mode === "dark" ? "400" : "500"];
1616
};
1717

18+
// Remove greys from palette
19+
const tones = [
20+
accentColors["amber"],
21+
accentColors["blue"],
22+
accentColors["brown"],
23+
accentColors["cyan"],
24+
accentColors["deepOrange"],
25+
accentColors["deepPurple"],
26+
accentColors["green"],
27+
accentColors["indigo"],
28+
accentColors["lightBlue"],
29+
accentColors["lightGreen"],
30+
accentColors["lime"],
31+
accentColors["orange"],
32+
accentColors["pink"],
33+
accentColors["purple"],
34+
accentColors["red"],
35+
accentColors["teal"],
36+
accentColors["yellow"],
37+
];
38+
1839
export const toneBy = (
1940
mode: "light" | "dark" = "light",
2041
index: number = 0,
21-
skip = 2,
22-
rotate = 7
42+
skip = 1,
43+
rotate = 7,
2344
) => {
24-
return tone(mode, colors[(index * skip + rotate) % colors.length]);
45+
return tone(mode, tones[(index * skip + rotate) % tones.length]);
2546
};

0 commit comments

Comments
 (0)