Files
Netcatty/domain/appIconVariant.ts
T
bincxz 7cba6bae2a feat(settings): add runtime Dock/taskbar icon variants (#1716)
Let users pick icon styles in Appearance settings with live Dock/window updates, dev public asset resolution, and cross-window sync.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-26 23:14:57 +08:00

27 lines
694 B
TypeScript

export const APP_ICON_VARIANTS = [
'original',
'bright',
'dark',
'colorful',
'high-contrast',
'white-navy',
'white-sky',
'white-rose',
'white-emerald',
'white-amber',
'white-violet',
'rainbow',
] as const;
export type AppIconVariant = (typeof APP_ICON_VARIANTS)[number];
export const DEFAULT_APP_ICON_VARIANT: AppIconVariant = 'original';
export function isValidAppIconVariant(value: unknown): value is AppIconVariant {
return typeof value === 'string' && (APP_ICON_VARIANTS as readonly string[]).includes(value);
}
export function resolveAppIconVariant(value: unknown): AppIconVariant {
return isValidAppIconVariant(value) ? value : DEFAULT_APP_ICON_VARIANT;
}