UNPKG

@yandex/ui

Version:

Yandex UI components

18 lines (17 loc) 839 B
import { cn } from '@bem-react/classname'; import { canUseDOM } from '../lib/canUseDOM'; export var cnTheme = cn('Theme'); var prevClassName = ''; export var configureRootTheme = function (_a) { var theme = _a.theme, _b = _a.root, root = _b === void 0 ? canUseDOM() ? document.body : null : _b; if (!canUseDOM()) { return; } if (!root) { throw new Error('Значение в root не является DOM-элементом, невозможно установить глобальную тему.'); } // Удаляем старый className, чтобы устранить дубликаты при повторном вызове. var rootClassName = root.className.replace(prevClassName, ''); prevClassName = cnTheme(theme); root.className = rootClassName + " " + prevClassName; };