@propknot/shared-ui 1.0.22 → 1.0.24
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 +12 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +12 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1525,14 +1525,26 @@ var CustomThemeProvider = ({ children }) => {
|
|
|
1525
1525
|
const canModifyTheme = Boolean(user && (user.role === "super_admin" || user.role === "admin" || user.role === "owner" || user.role === "property_manager" || user.role === "maintenance"));
|
|
1526
1526
|
useEffect2(() => {
|
|
1527
1527
|
if (!isEmbedded) return;
|
|
1528
|
+
let isInitialRequest = true;
|
|
1528
1529
|
const handleMessage = (event) => {
|
|
1529
1530
|
if (!event.origin.startsWith("http://localhost:")) return;
|
|
1530
1531
|
const { type, theme } = event.data;
|
|
1531
1532
|
if (type === "THEME_CHANGE" && theme && ["light", "dark"].includes(theme)) {
|
|
1533
|
+
const storedTheme2 = localStorage.getItem("embedded-theme");
|
|
1534
|
+
if (isInitialRequest && storedTheme2 && storedTheme2 !== theme) {
|
|
1535
|
+
isInitialRequest = false;
|
|
1536
|
+
return;
|
|
1537
|
+
}
|
|
1538
|
+
isInitialRequest = false;
|
|
1532
1539
|
setCurrentTheme(theme);
|
|
1540
|
+
localStorage.setItem("embedded-theme", theme);
|
|
1533
1541
|
}
|
|
1534
1542
|
};
|
|
1535
1543
|
window.addEventListener("message", handleMessage);
|
|
1544
|
+
const storedTheme = localStorage.getItem("embedded-theme");
|
|
1545
|
+
if (storedTheme && ["light", "dark"].includes(storedTheme)) {
|
|
1546
|
+
setCurrentTheme(storedTheme);
|
|
1547
|
+
}
|
|
1536
1548
|
if (window.parent !== window) {
|
|
1537
1549
|
window.parent.postMessage({ type: "REQUEST_THEME" }, "*");
|
|
1538
1550
|
}
|