feat: publish HoloLake model-native living system source
This commit is contained in:
parent
6ad10edde1
commit
c395dd3a99
2467 changed files with 615073 additions and 0 deletions
55
product-source/hololake-platform/src/lib/guanghuTheme.ts
Normal file
55
product-source/hololake-platform/src/lib/guanghuTheme.ts
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
export const GUANGHU_THEME_STORAGE_KEY = 'guanghu-theme'
|
||||
|
||||
export const GUANGHU_THEMES = [
|
||||
'native',
|
||||
'guanghu-native-galaxy',
|
||||
'lake-light',
|
||||
'lake-dark',
|
||||
'aurora-dark',
|
||||
'ice-heart',
|
||||
'yaoming-purple',
|
||||
'starfield-indigo',
|
||||
'dawn-gold',
|
||||
'tundra-green',
|
||||
'peach-mist',
|
||||
] as const
|
||||
export type GuanghuTheme = typeof GUANGHU_THEMES[number]
|
||||
|
||||
export const GUANGHU_THEME_LABELS: Record<GuanghuTheme, string> = {
|
||||
native: '跟随原生',
|
||||
'guanghu-native-galaxy': '光湖原生星系',
|
||||
'lake-light': '湖光浅色(亮)',
|
||||
'lake-dark': '湖心深色(暗)',
|
||||
'aurora-dark': '极光深海',
|
||||
'ice-heart': '冰心蓝',
|
||||
'yaoming-purple': '曜冥紫',
|
||||
'starfield-indigo': '星野靛青',
|
||||
'dawn-gold': '晨曦金',
|
||||
'tundra-green': '苔原绿',
|
||||
'peach-mist': '桃雾晨光',
|
||||
}
|
||||
|
||||
export function normalizeGuanghuTheme(value: unknown): GuanghuTheme {
|
||||
return typeof value === 'string' && (GUANGHU_THEMES as readonly string[]).includes(value)
|
||||
? value as GuanghuTheme
|
||||
: 'native'
|
||||
}
|
||||
|
||||
export function readGuanghuTheme(storage: Pick<Storage, 'getItem'>): GuanghuTheme {
|
||||
try {
|
||||
const storedTheme = storage.getItem(GUANGHU_THEME_STORAGE_KEY)
|
||||
return storedTheme === null
|
||||
? 'guanghu-native-galaxy'
|
||||
: normalizeGuanghuTheme(storedTheme)
|
||||
} catch {
|
||||
return 'guanghu-native-galaxy'
|
||||
}
|
||||
}
|
||||
|
||||
export function writeGuanghuTheme(storage: Pick<Storage, 'setItem'>, theme: GuanghuTheme): void {
|
||||
try {
|
||||
storage.setItem(GUANGHU_THEME_STORAGE_KEY, theme)
|
||||
} catch {
|
||||
// Storage may be unavailable in restricted browser contexts.
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue