rose-pine-moon.ts

 1import {
 2    chroma,
 3    color_ramp,
 4    ThemeAppearance,
 5    ThemeLicenseType,
 6    ThemeConfig,
 7} from "../../common"
 8
 9import { color as c, syntax } from "./common"
10
11const color = c.moon
12
13const green = chroma.mix(color.foam, "#10b981", 0.6, "lab")
14const magenta = chroma.mix(color.love, color.pine, 0.5, "lab")
15
16export const theme: ThemeConfig = {
17    name: "Rosé Pine Moon",
18    author: "edunfelt",
19    appearance: ThemeAppearance.Dark,
20    license_type: ThemeLicenseType.MIT,
21    license_url: "https://github.com/edunfelt/base16-rose-pine-scheme",
22    license_file: `${__dirname}/LICENSE`,
23    input_color: {
24        neutral: chroma
25            .scale([
26                color.base,
27                color.surface,
28                color.highlight_high,
29                color.overlay,
30                color.muted,
31                color.subtle,
32                color.text,
33            ])
34            .domain([0, 0.3, 0.55, 1]),
35        red: color_ramp(chroma(color.love)),
36        orange: color_ramp(chroma(color.iris)),
37        yellow: color_ramp(chroma(color.gold)),
38        green: color_ramp(chroma(green)),
39        cyan: color_ramp(chroma(color.pine)),
40        blue: color_ramp(chroma(color.foam)),
41        violet: color_ramp(chroma(color.iris)),
42        magenta: color_ramp(chroma(magenta)),
43    },
44    override: {
45        syntax: syntax(color),
46    },
47}