~bigbes/lethe

ref: 96e95ab9e44d2234ab036319836a5087eb4c2a2f lethe/web/src/lib/density.ts -rw-r--r-- 793 bytes
96e95ab9 — Eugene Blikh fix: add tool column to search table; remove conversation bleed from comments 23 days ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Density preference — side-effect-free at import time.
// Call bootstrapDensity() once from main.tsx before render.

export type DensityPreference = 'cozy' | 'compact'

export function getDensityPreference(): DensityPreference {
  const stored = localStorage.getItem('density')
  if (stored === 'compact') return 'compact'
  return 'cozy'
}

export function bootstrapDensity(): void {
  const val = getDensityPreference()
  document.documentElement.dataset['density'] = val
}

export function setDensity(density: DensityPreference | null): void {
  if (density === null) {
    localStorage.removeItem('density')
    document.documentElement.dataset['density'] = 'cozy'
  } else {
    localStorage.setItem('density', density)
    document.documentElement.dataset['density'] = density
  }
}