--- name: apply_theme kind: function lang: ts domain: ui version: "1.0.0" purity: impure signature: "applyTheme(theme: Theme): void" description: "Inyecta un tema como CSS variables en document.documentElement. Maneja clase dark automáticamente. Mapea 40 tokens semánticos." tags: [theme, css-variables, apply, runtime, ui] uses_functions: [] uses_types: [ThemeConfig_ts_ui] returns: [] returns_optional: false error_type: "error_go_core" imports: [] tested: false tests: [] test_file_path: "" file_path: "frontend/functions/ui/apply_theme.tsx" source_repo: "https://gitea-dgg044oo04woo4ggcsws4gk0.organic-machine.com/Bl4cksmith/Frontend_Library" source_license: "MIT" source_file: "frontend/src/hooks/use-theme.tsx" --- ## Ejemplo ```typescript import { applyTheme } from './apply_theme' applyTheme({ name: 'dark', label: 'Oscuro', colors: themeConfigToColors(darkThemeConfig) }) ``` ## Notas Función impura (modifica el DOM). Mapea cada key de ThemeColors a una CSS variable. Temas oscuros (dark, midnight, sunset) añaden clase `dark` al root.