37 lines
882 B
JavaScript
37 lines
882 B
JavaScript
import ColorScheme from 'color-scheme';
|
|
import Color from 'color';
|
|
|
|
export const get_colours = (basis) => {
|
|
const basis_c = Color(basis);
|
|
const hslb = basis_c.hsl();
|
|
const hue = hslb['color'][0];
|
|
const saturation = hslb['color'][1];
|
|
const luminance = hslb['color'][2];
|
|
const scheme = new ColorScheme;
|
|
scheme.from_hue(hue).scheme("tetrade").distance(0.75);
|
|
const colours = scheme.colors().slice(1, 9);
|
|
colours.reverse();
|
|
const hsl = colours.map((c) => Color("#" + c).hsl());
|
|
const resaturated = hsl.map((hslc) => hslc.saturationl(saturation).rgbNumber());
|
|
resaturated.unshift(basis);
|
|
return resaturated;
|
|
}
|
|
|
|
// basic colours where 0 = blue
|
|
// 1 - dark blue
|
|
// 2 - white
|
|
// 3 - light cyan
|
|
// 4 - light orange
|
|
// 5 - dark orange
|
|
|
|
export const get_plain_colours = (basis) => {
|
|
return [
|
|
basis,
|
|
0xffffff,
|
|
0x00ff00,
|
|
0xff0000,
|
|
0x0000ff,
|
|
0xff9900,
|
|
0x000000,
|
|
]
|
|
} |