store themes in a separate file

master
kkayam 2025-02-12 12:16:35 +00:00
parent 6fc78d3d03
commit 942285a290
3 changed files with 149 additions and 129 deletions

View File

@ -1,133 +1,21 @@
{// List of available themes {// List of available themes
let cl = (x) => { return g.setColor(x).getColor(); }; let cl = (x) => { return g.setColor(x).getColor(); };
const THEMES = { const THEMES_DATA = require("Storage").readJSON("themes.json");
"Light": {
fg: cl("#000"), // black // Convert hex colors to graphics context colors
bg: cl("#FFF"), // white const THEMES = {};
fg2: cl("#555"), // gray Object.keys(THEMES_DATA).forEach(themeName => {
bg2: cl("#AAA"), // light gray const theme = THEMES_DATA[themeName];
fgH: cl("#FFF"), // white THEMES[themeName] = {
bgH: cl("#000"), // black fg: cl(theme.fg),
dark: false bg: cl(theme.bg),
}, fg2: cl(theme.fg2),
"Dark": { bg2: cl(theme.bg2),
fg: cl("#FFF"), // white fgH: cl(theme.fgH),
bg: cl("#000"), // black bgH: cl(theme.bgH),
fg2: cl("#AAA"), // light gray dark: theme.dark
bg2: cl("#222"), // dark gray };
fgH: cl("#000"), // black });
bgH: cl("#FFF"), // white
dark: true
},
"Ruby": {
fg: cl("#000"), // black
bg: cl("#F00"), // red
fg2: cl("#800"), // dark red
bg2: cl("#F88"), // light red
fgH: cl("#FFF"), // white
bgH: cl("#800"), // dark red
dark: false
},
"Ocean": {
fg: cl("#FFF"), // white
bg: cl("#00F"), // blue
fg2: cl("#99F"), // light blue
bg2: cl("#008"), // dark blue
fgH: cl("#FFF"), // white
bgH: cl("#44F"), // medium blue
dark: true
},
"Forest": {
fg: cl("#000"), // black
bg: cl("#0F0"), // green
fg2: cl("#080"), // dark green
bg2: cl("#8F8"), // light green
fgH: cl("#FFF"), // white
bgH: cl("#080"), // dark green
dark: false
},
"Royal": {
fg: cl("#FFF"), // white
bg: cl("#808"), // purple
fg2: cl("#F8F"), // light purple
bg2: cl("#404"), // dark purple
fgH: cl("#FFF"), // white
bgH: cl("#C0C"), // bright purple
dark: true
},
"Sunset": {
fg: cl("#000"), // black
bg: cl("#F80"), // orange
fg2: cl("#840"), // dark orange
bg2: cl("#FC8"), // light orange
fgH: cl("#FFF"), // white
bgH: cl("#F60"), // bright orange
dark: false
},
"Bubblegum": {
fg: cl("#000"), // black
bg: cl("#F8C"), // pink
fg2: cl("#C48"), // dark pink
bg2: cl("#FAE"), // light pink
fgH: cl("#FFF"), // white
bgH: cl("#F68"), // bright pink
dark: false
},
"Arctic": {
fg: cl("#000"), // black
bg: cl("#0FF"), // cyan
fg2: cl("#088"), // dark cyan
bg2: cl("#8FF"), // light cyan
fgH: cl("#FFF"), // white
bgH: cl("#0CC"), // bright cyan
dark: false
},
"Sunflower": {
fg: cl("#000"), // black
bg: cl("#FF0"), // yellow
fg2: cl("#880"), // dark yellow
bg2: cl("#FF8"), // light yellow
fgH: cl("#000"), // black
bgH: cl("#CC0"), // bright yellow
dark: false
},
"Smoke": {
fg: cl("#000"), // black
bg: cl("#888"), // medium gray
fg2: cl("#444"), // dark gray
bg2: cl("#CCC"), // light gray
fgH: cl("#FFF"), // white
bgH: cl("#666"), // gray
dark: false
},
"Espresso": {
fg: cl("#FFF"), // white
bg: cl("#842"), // brown
fg2: cl("#CA8"), // light brown
bg2: cl("#421"), // dark brown
fgH: cl("#FFF"), // white
bgH: cl("#963"), // medium brown
dark: true
},
"Matrix": {
fg: cl("#0F0"), // bright green
bg: cl("#000"), // black
fg2: cl("#0A0"), // medium green
bg2: cl("#010"), // very dark green
fgH: cl("#FFF"), // white
bgH: cl("#0F0"), // bright green
dark: true
},
"Peach": {
fg: cl("#000"), // black
bg: cl("#E6A08F"), // darker soft peach
fg2: cl("#B85F47"), // darker peachy coral
bg2: cl("#E6B3A3"), // darker creamy peach
fgH: cl("#FFF"), // white
bgH: cl("#E67F66"), // darker coral peach
dark: false
}
};
// Function to apply the selected theme // Function to apply the selected theme
let setTheme = (themeNameOrObject) => { let setTheme = (themeNameOrObject) => {

View File

@ -2,7 +2,7 @@
"id": "themes", "id": "themes",
"name": "Themes", "name": "Themes",
"shortName": "Themes", "shortName": "Themes",
"version": "0.07", "version": "0.08",
"description": "Color palettes at your disposal", "description": "Color palettes at your disposal",
"type": "app", "type": "app",
"tags": "tool", "tags": "tool",
@ -20,6 +20,10 @@
"name": "themes.img", "name": "themes.img",
"url": "app-icon.js", "url": "app-icon.js",
"evaluate": true "evaluate": true
},
{
"name": "themes.json",
"url": "themes.json"
} }
] ]
} }

128
apps/themes/themes.json Normal file
View File

@ -0,0 +1,128 @@
{
"Light": {
"fg": "#000",
"bg": "#FFF",
"fg2": "#555",
"bg2": "#AAA",
"fgH": "#FFF",
"bgH": "#000",
"dark": false
},
"Dark": {
"fg": "#FFF",
"bg": "#000",
"fg2": "#AAA",
"bg2": "#222",
"fgH": "#000",
"bgH": "#FFF",
"dark": true
},
"Ruby": {
"fg": "#000",
"bg": "#F00",
"fg2": "#800",
"bg2": "#F88",
"fgH": "#FFF",
"bgH": "#800",
"dark": false
},
"Ocean": {
"fg": "#FFF",
"bg": "#00F",
"fg2": "#99F",
"bg2": "#008",
"fgH": "#FFF",
"bgH": "#44F",
"dark": true
},
"Forest": {
"fg": "#000",
"bg": "#0F0",
"fg2": "#080",
"bg2": "#8F8",
"fgH": "#FFF",
"bgH": "#080",
"dark": false
},
"Royal": {
"fg": "#FFF",
"bg": "#808",
"fg2": "#F8F",
"bg2": "#404",
"fgH": "#FFF",
"bgH": "#C0C",
"dark": true
},
"Sunset": {
"fg": "#000",
"bg": "#F80",
"fg2": "#840",
"bg2": "#FC8",
"fgH": "#FFF",
"bgH": "#F60",
"dark": false
},
"Bubblegum": {
"fg": "#000",
"bg": "#F8C",
"fg2": "#C48",
"bg2": "#FAE",
"fgH": "#FFF",
"bgH": "#F68",
"dark": false
},
"Arctic": {
"fg": "#000",
"bg": "#0FF",
"fg2": "#088",
"bg2": "#8FF",
"fgH": "#FFF",
"bgH": "#0CC",
"dark": false
},
"Sunflower": {
"fg": "#000",
"bg": "#FF0",
"fg2": "#880",
"bg2": "#FF8",
"fgH": "#000",
"bgH": "#CC0",
"dark": false
},
"Smoke": {
"fg": "#000",
"bg": "#888",
"fg2": "#444",
"bg2": "#CCC",
"fgH": "#FFF",
"bgH": "#666",
"dark": false
},
"Espresso": {
"fg": "#FFF",
"bg": "#842",
"fg2": "#CA8",
"bg2": "#421",
"fgH": "#FFF",
"bgH": "#963",
"dark": true
},
"Matrix": {
"fg": "#0F0",
"bg": "#000",
"fg2": "#0A0",
"bg2": "#010",
"fgH": "#FFF",
"bgH": "#0F0",
"dark": true
},
"Peach": {
"fg": "#000",
"bg": "#E6A08F",
"fg2": "#B85F47",
"bg2": "#E6B3A3",
"fgH": "#FFF",
"bgH": "#E67F66",
"dark": false
}
}