1import fs from "fs";
2import path from "path";
3import { ColorScheme } from "./themes/common/colorScheme";
4
5const colorSchemes: ColorScheme[] = [];
6export default colorSchemes;
7
8const internalColorSchemes: ColorScheme[] = [];
9export { internalColorSchemes }
10
11const experimentalColorSchemes: ColorScheme[] = [];
12export { experimentalColorSchemes }
13
14
15function fillColorSchemes(themesPath: string, colorSchemes: ColorScheme[]) {
16 for (const fileName of fs.readdirSync(themesPath)) {
17 if (fileName == "template.ts") continue;
18 const filePath = path.join(themesPath, fileName);
19
20 if (fs.statSync(filePath).isFile()) {
21 const colorScheme = require(filePath);
22 if (colorScheme.dark) colorSchemes.push(colorScheme.dark);
23 if (colorScheme.light) colorSchemes.push(colorScheme.light);
24 }
25 }
26}
27
28fillColorSchemes(path.resolve(`${__dirname}/themes`), colorSchemes)
29fillColorSchemes(path.resolve(`${__dirname}/themes/internal`), internalColorSchemes)
30fillColorSchemes(path.resolve(`${__dirname}/themes/experiments`), experimentalColorSchemes)
31