refactor: extract hexToRgba and prefersReducedMotion to shared utils

Move hexToRgba() (3 identical copies) and prefersReducedMotion (5 module-level
copies) to src/lib/utils.ts. Re-export prefersReducedMotion from
constellation/constants.ts to preserve existing importers. Add clarifying
comments to constellation.ts and tags.ts re-export layers (Phase 1.4).
This commit is contained in:
2026-02-17 01:48:43 +00:00
parent 45b87466be
commit 296b18f025
9 changed files with 19 additions and 32 deletions
+9
View File
@@ -6,3 +6,12 @@ export function calculateSkillOffset(level: number, radius: number): number {
export function formatBootLine(text: string): string {
return text
}
export function hexToRgba(hex: string, opacity: number): string {
const r = parseInt(hex.slice(1, 3), 16)
const g = parseInt(hex.slice(3, 5), 16)
const b = parseInt(hex.slice(5, 7), 16)
return `rgba(${r},${g},${b},${opacity})`
}
export const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches