rn-custom-style-sheet
Version:
React Native component to select a specific value from a range of values.
41 lines (40 loc) • 1.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.StorageKeys = void 0;
exports.default = useUpdateTheme;
var _react = require("react");
var _Core = require("../../../Core");
const StorageKeys = exports.StorageKeys = {
AppThemeNameKey: 'appThemeNameKey',
AppThemeModeKey: 'appThemeModeKey',
SystemThemeModeKey: 'systemThemeModeKey'
};
function useUpdateTheme() {
const {
dispatch,
storage
} = (0, _Core.useThemeContext)();
const handleAppTheme = (0, _react.useCallback)((appThemeName, appThemeMode) => {
if (appThemeName !== undefined) {
storage?.setStorage(StorageKeys.AppThemeNameKey, appThemeName);
}
if (appThemeMode !== undefined) {
storage?.setStorage(StorageKeys.AppThemeModeKey, appThemeMode);
}
if (appThemeName !== undefined || appThemeMode !== undefined) {
dispatch({
type: _Core.ReducerEventEnum.ChangeAppTheme,
payload: {
appThemeName: appThemeName,
appThemeMode: appThemeMode
}
});
}
},
// eslint-disable-next-line react-hooks/exhaustive-deps
[]);
return handleAppTheme;
}
//# sourceMappingURL=UseUpdateTheme.js.map