UNPKG

@zextras/carbonio-shell-ui

Version:

The Zextras Carbonio web client

31 lines 1.55 kB
"use strict"; /* * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com> * * SPDX-License-Identifier: AGPL-3.0-only */ Object.defineProperty(exports, "__esModule", { value: true }); exports.isDarkReaderPropValues = isDarkReaderPropValues; exports.useDarkReaderResultValue = useDarkReaderResultValue; const react_1 = require("react"); const lodash_1 = require("lodash"); const constants_1 = require("../constants"); const account_1 = require("../store/account"); const store_1 = require("../store/login/store"); function isDarkReaderPropValues(maybeDarkReaderPropValue) { return (typeof maybeDarkReaderPropValue === 'string' && constants_1.DARK_READER_VALUES.includes(maybeDarkReaderPropValue)); } // return the final calculated value between carbonioPrefDarkMode value and carbonioWebUiDarkMode config function useDarkReaderResultValue() { const settings = (0, account_1.useUserSettings)(); const carbonioWebUiDarkMode = (0, store_1.useLoginConfigStore)((s) => s.carbonioWebUiDarkMode); const settingReceived = (0, react_1.useMemo)(() => (0, lodash_1.size)(settings.prefs) > 0 || (0, lodash_1.size)(settings.attrs) > 0 || (0, lodash_1.size)(settings.props) > 0, [settings]); return (0, react_1.useMemo)(() => { if (settingReceived) { return (settings.prefs.carbonioPrefDarkMode || (carbonioWebUiDarkMode && 'enabled') || 'disabled'); } return undefined; }, [settingReceived, settings, carbonioWebUiDarkMode]); } //# sourceMappingURL=use-dark-reader-result-value.js.map