@coreui/react-pro 4.12.0-beta.0 → 4.12.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -2494,11 +2494,16 @@ CSSTransition.propTypes = process.env.NODE_ENV !== "production" ? _extends$1({},
2494
2494
  }) : {};
2495
2495
  var CSSTransition$1 = CSSTransition;
2496
2496
 
2497
- var getStoredTheme = function (localStorageItemName) { return localStorage.getItem(localStorageItemName); };
2497
+ var getStoredTheme = function (localStorageItemName) {
2498
+ return typeof window !== 'undefined' && localStorage.getItem(localStorageItemName);
2499
+ };
2498
2500
  var setStoredTheme = function (localStorageItemName, colorMode) {
2499
2501
  return localStorage.setItem(localStorageItemName, colorMode);
2500
2502
  };
2501
2503
  var getPreferredColorScheme = function (localStorageItemName) {
2504
+ if (typeof window === 'undefined') {
2505
+ return;
2506
+ }
2502
2507
  var storedTheme = getStoredTheme(localStorageItemName);
2503
2508
  if (storedTheme) {
2504
2509
  return storedTheme;
@@ -2517,19 +2522,22 @@ var useColorModes = function (localStorageItemName) {
2517
2522
  if (localStorageItemName === void 0) { localStorageItemName = 'coreui-react-color-scheme'; }
2518
2523
  var _a = React$1.useState(getPreferredColorScheme(localStorageItemName)), colorMode = _a[0], setColorMode = _a[1];
2519
2524
  React$1.useEffect(function () {
2520
- setStoredTheme(localStorageItemName, colorMode);
2521
- setTheme(colorMode);
2525
+ if (colorMode) {
2526
+ setStoredTheme(localStorageItemName, colorMode);
2527
+ setTheme(colorMode);
2528
+ }
2522
2529
  }, [colorMode]);
2523
2530
  React$1.useEffect(function () {
2524
2531
  window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', function () {
2525
2532
  var storedTheme = getStoredTheme(localStorageItemName);
2526
- if (storedTheme !== 'light' && storedTheme !== 'dark') {
2533
+ if (storedTheme !== 'light' && storedTheme !== 'dark' && colorMode) {
2527
2534
  setTheme(colorMode);
2528
2535
  }
2529
2536
  });
2530
2537
  }, []);
2531
2538
  return {
2532
2539
  getColorMode: function () { return colorMode; },
2540
+ isColorModeSet: function () { return Boolean(getStoredTheme(localStorageItemName)); },
2533
2541
  setColorMode: function (mode) { return setColorMode(mode); },
2534
2542
  };
2535
2543
  };