,
This commit is contained in:
parent
70423851ba
commit
1fe5015056
55 changed files with 2036 additions and 685 deletions
18
src/vibes.ts
18
src/vibes.ts
|
|
@ -1,17 +1,21 @@
|
|||
import { appConfig, type VibePreset } from './config';
|
||||
import { readBrowserStorage } from './utils/browser-storage';
|
||||
|
||||
export type { GardenVibeSettings, VibePreset } from './config';
|
||||
export type { VibePreset } from './config';
|
||||
|
||||
export const VIBE_PRESETS: Array<VibePreset> = appConfig.vibes.presets;
|
||||
|
||||
const HEX_COLOR_PATTERN =
|
||||
/^#?(?<red>[0-9a-f]{2})(?<green>[0-9a-f]{2})(?<blue>[0-9a-f]{2})$/i;
|
||||
|
||||
export const hexToRgb = (hex: string): [number, number, number] => {
|
||||
const value = hex.replace('#', '');
|
||||
return [
|
||||
parseInt(value.slice(0, 2), 16) / 255,
|
||||
parseInt(value.slice(2, 4), 16) / 255,
|
||||
parseInt(value.slice(4, 6), 16) / 255,
|
||||
];
|
||||
const match = HEX_COLOR_PATTERN.exec(hex);
|
||||
if (!match?.groups) {
|
||||
return [0, 0, 0];
|
||||
}
|
||||
|
||||
const { red, green, blue } = match.groups;
|
||||
return [parseInt(red, 16) / 255, parseInt(green, 16) / 255, parseInt(blue, 16) / 255];
|
||||
};
|
||||
|
||||
export const getInitialVibe = (): VibePreset => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue