UNPKG

collaborative-ui

Version:

React component library for building real-time collaborative editing applications.

24 lines (23 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ThemeContextItem = void 0; const tslib_1 = require("tslib"); const React = tslib_1.__importStar(require("react")); const use_t_1 = require("use-t"); const ContextMenu_1 = require("nice-ui/lib/4-card/ContextMenu"); const Split_1 = require("nice-ui/lib/3-list-item/Split"); const Checkbox_1 = require("nice-ui/lib/2-inline-block/Checkbox"); const context_1 = require("nice-ui/lib/context"); const useBehaviorSubject_1 = require("nice-ui/lib/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, { closePopup: true, 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;