UNPKG

@livelike/react-native

Version:

LiveLike React Native package

37 lines (36 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTheme = useTheme; var _react = require("react"); var _reactNative = require("react-native"); var _store = require("../store"); var _utils = require("../utils"); var _useStore = require("./useStore"); function useTheme() { let { themeType: themeTypeArg } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; const colorScheme = (0, _reactNative.useColorScheme)(); const { themes, currentThemeType, isNonDefaultThemeType } = (0, _useStore.useStore)(_store.themeStore); const _themeType = (0, _react.useMemo)(() => { if (isNonDefaultThemeType) { return currentThemeType; } return colorScheme; }, [colorScheme, currentThemeType, isNonDefaultThemeType]); return (0, _react.useMemo)(() => ({ themeType: _themeType, themes, themeAssets: (0, _utils.getThemeAssets)(_themeType), theme: themes[themeTypeArg || _themeType], setThemeType: _store.themeStoreActions.setThemeTypeAction, setThemes: _store.themeStoreActions.setThemesAction }), [_themeType, themeTypeArg, themes]); } //# sourceMappingURL=useTheme.js.map