UNPKG

nice-ui

Version:

React design system, components, and utilities

23 lines (22 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ThemeContextItem = void 0; const React = require("react"); const use_t_1 = require("use-t"); const ContextMenu_1 = require("../../../../../4-card/ContextMenu"); const Split_1 = require("../../../../../3-list-item/Split"); const Checkbox_1 = require("../../../../../2-inline-block/Checkbox"); const context_1 = require("../../../../../context"); const useBehaviorSubject_1 = require("../../../../../hooks/useBehaviorSubject"); const ThemeContextItem = () => { const [t] = (0, use_t_1.useT)(); const services = (0, context_1.useNiceUiServices)(); const theme = (0, useBehaviorSubject_1.useBehaviorSubject)(services.theme$); const isLight = theme !== 'dark'; const handleClick = () => services.setTheme(isLight ? 'dark' : 'light'); return (React.createElement(ContextMenu_1.ContextItem, { onClick: handleClick }, React.createElement(Split_1.Split, { style: { alignItems: 'center' } }, React.createElement("span", null, isLight ? t('Light theme') : t('Dark theme')), React.createElement(Checkbox_1.Checkbox, { as: "span", small: true, on: isLight })))); }; exports.ThemeContextItem = ThemeContextItem;