@dheme/react 2.6.0 → 2.7.0

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
@@ -1071,21 +1071,30 @@ function ThemeGenerator({
1071
1071
  const debouncedSaturation = useDebounce(localSaturation[0], 200);
1072
1072
  const debouncedLightness = useDebounce(localLightness[0], 200);
1073
1073
  const debouncedRadius = useDebounce(localRadius[0], 200);
1074
+ const isMountedRef = (0, import_react7.useRef)(false);
1074
1075
  (0, import_react7.useEffect)(() => {
1076
+ if (!isMountedRef.current) return;
1075
1077
  generateTheme(paramsRef.current);
1076
1078
  }, [debouncedPrimary]);
1077
1079
  (0, import_react7.useEffect)(() => {
1078
- if (isSecondaryEnabled) generateTheme(paramsRef.current);
1080
+ if (!isMountedRef.current || !isSecondaryEnabled) return;
1081
+ generateTheme(paramsRef.current);
1079
1082
  }, [debouncedSecondary]);
1080
1083
  (0, import_react7.useEffect)(() => {
1084
+ if (!isMountedRef.current) return;
1081
1085
  generateTheme(paramsRef.current);
1082
1086
  }, [debouncedSaturation]);
1083
1087
  (0, import_react7.useEffect)(() => {
1088
+ if (!isMountedRef.current) return;
1084
1089
  generateTheme(paramsRef.current);
1085
1090
  }, [debouncedLightness]);
1086
1091
  (0, import_react7.useEffect)(() => {
1092
+ if (!isMountedRef.current) return;
1087
1093
  generateTheme(paramsRef.current);
1088
1094
  }, [debouncedRadius]);
1095
+ (0, import_react7.useEffect)(() => {
1096
+ isMountedRef.current = true;
1097
+ }, []);
1089
1098
  const handleEnableSecondary = () => {
1090
1099
  setIsSecondaryEnabled(true);
1091
1100
  generateTheme({ ...paramsRef.current, secondaryColor: localSecondary });
package/dist/index.mjs CHANGED
@@ -1021,21 +1021,30 @@ function ThemeGenerator({
1021
1021
  const debouncedSaturation = useDebounce(localSaturation[0], 200);
1022
1022
  const debouncedLightness = useDebounce(localLightness[0], 200);
1023
1023
  const debouncedRadius = useDebounce(localRadius[0], 200);
1024
+ const isMountedRef = useRef2(false);
1024
1025
  useEffect3(() => {
1026
+ if (!isMountedRef.current) return;
1025
1027
  generateTheme(paramsRef.current);
1026
1028
  }, [debouncedPrimary]);
1027
1029
  useEffect3(() => {
1028
- if (isSecondaryEnabled) generateTheme(paramsRef.current);
1030
+ if (!isMountedRef.current || !isSecondaryEnabled) return;
1031
+ generateTheme(paramsRef.current);
1029
1032
  }, [debouncedSecondary]);
1030
1033
  useEffect3(() => {
1034
+ if (!isMountedRef.current) return;
1031
1035
  generateTheme(paramsRef.current);
1032
1036
  }, [debouncedSaturation]);
1033
1037
  useEffect3(() => {
1038
+ if (!isMountedRef.current) return;
1034
1039
  generateTheme(paramsRef.current);
1035
1040
  }, [debouncedLightness]);
1036
1041
  useEffect3(() => {
1042
+ if (!isMountedRef.current) return;
1037
1043
  generateTheme(paramsRef.current);
1038
1044
  }, [debouncedRadius]);
1045
+ useEffect3(() => {
1046
+ isMountedRef.current = true;
1047
+ }, []);
1039
1048
  const handleEnableSecondary = () => {
1040
1049
  setIsSecondaryEnabled(true);
1041
1050
  generateTheme({ ...paramsRef.current, secondaryColor: localSecondary });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dheme/react",
3
- "version": "2.6.0",
3
+ "version": "2.7.0",
4
4
  "description": "React bindings for Dheme SDK with zero-FOUC theme application",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",