solarized.ts

 1import chroma from "chroma-js"
 2import { Meta as Metadata } from "./common/colorScheme"
 3import { colorRamp, createColorScheme } from "./common/ramps"
 4
 5const name = "Solarized"
 6
 7const ramps = {
 8    neutral: chroma
 9        .scale([
10            "#002b36",
11            "#073642",
12            "#586e75",
13            "#657b83",
14            "#839496",
15            "#93a1a1",
16            "#eee8d5",
17            "#fdf6e3",
18        ])
19        .domain([0, 0.2, 0.38, 0.45, 0.65, 0.7, 0.85, 1]),
20    red: colorRamp(chroma("#dc322f")),
21    orange: colorRamp(chroma("#cb4b16")),
22    yellow: colorRamp(chroma("#b58900")),
23    green: colorRamp(chroma("#859900")),
24    cyan: colorRamp(chroma("#2aa198")),
25    blue: colorRamp(chroma("#268bd2")),
26    violet: colorRamp(chroma("#6c71c4")),
27    magenta: colorRamp(chroma("#d33682")),
28}
29
30export const dark = createColorScheme(`${name} Dark`, false, ramps)
31export const light = createColorScheme(`${name} Light`, true, ramps)
32
33export const meta: Metadata = {
34    name,
35    author: "Ethan Schoonover",
36    license: {
37        SPDX: "MIT",
38        license_text: {
39            https_url:
40                "https://raw.githubusercontent.com/altercation/solarized/master/LICENSE",
41            license_checksum:
42                "494aefdabf86acce06bd63001ad8aedad4ee38da23509d3f917d95aa3368b9a6",
43        },
44    },
45    url: "https://github.com/altercation/solarized",
46}