collaborative-ui
Version:
React component library for building real-time collaborative editing applications.
24 lines (23 loc) • 1.3 kB
JavaScript
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;
;