@sikka/hawa 0.36.0-next → 0.36.1-next

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.
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
3
  // layout/appLayout/AppLayout.tsx
4
- import React12, { useEffect as useEffect2, useState as useState2 } from "react";
4
+ import React12, { useEffect as useEffect2, useLayoutEffect, useState as useState2 } from "react";
5
5
 
6
6
  // hooks/useClickOutside.ts
7
7
  import { useEffect, useRef } from "react";
@@ -1168,6 +1168,7 @@ var SidebarItem = ({
1168
1168
  };
1169
1169
 
1170
1170
  // layout/appLayout/AppLayout.tsx
1171
+ var LOCAL_STORAGE_KEY = "@sikka/hawa/keep-drawer-open";
1171
1172
  var AppLayout = ({
1172
1173
  profileMenuWidth = "default",
1173
1174
  DrawerFooterActions,
@@ -1178,14 +1179,18 @@ var AppLayout = ({
1178
1179
  drawerSize = "md",
1179
1180
  currentPage,
1180
1181
  clickedItem,
1181
- setKeepOpen,
1182
- keepOpen,
1183
1182
  DrawerLinkComponent,
1184
1183
  MenuLinkComponent,
1185
1184
  onAvatarClick,
1186
1185
  ...props
1187
1186
  }) => {
1188
1187
  var _a, _b;
1188
+ useLayoutEffect(() => {
1189
+ let isDrawerOpen = localStorage.getItem(LOCAL_STORAGE_KEY);
1190
+ if (isDrawerOpen === null) {
1191
+ localStorage.setItem(LOCAL_STORAGE_KEY, JSON.stringify(false));
1192
+ }
1193
+ }, []);
1189
1194
  let closeDrawerWidth = 56;
1190
1195
  let openDrawerWidth = 200;
1191
1196
  let drawerSizeStyle = {
@@ -1201,8 +1206,14 @@ var AppLayout = ({
1201
1206
  const [size, setSize] = useState2(
1202
1207
  typeof window !== "undefined" && window.innerWidth || 1200
1203
1208
  );
1204
- const [openSideMenu, setOpenSideMenu] = useState2(true);
1205
- const [keepDrawerOpen, setKeepDrawerOpen] = useState2(keepOpen);
1209
+ const [openSideMenu, setOpenSideMenu] = useState2(() => {
1210
+ const savedState = localStorage.getItem(LOCAL_STORAGE_KEY);
1211
+ return savedState ? JSON.parse(savedState) : false;
1212
+ });
1213
+ const [keepDrawerOpen, setKeepDrawerOpen] = useState2(() => {
1214
+ const savedState = localStorage.getItem(LOCAL_STORAGE_KEY);
1215
+ return savedState ? JSON.parse(savedState) : false;
1216
+ });
1206
1217
  const handleClickOutside = () => {
1207
1218
  if (typeof window !== "undefined") {
1208
1219
  if (window.innerWidth < 600) {
@@ -1228,12 +1239,16 @@ var AppLayout = ({
1228
1239
  }
1229
1240
  }, []);
1230
1241
  useEffect2(() => {
1231
- setKeepDrawerOpen(keepOpen);
1232
- }, [setKeepOpen]);
1242
+ setKeepDrawerOpen(() => {
1243
+ const savedState = localStorage.getItem(LOCAL_STORAGE_KEY);
1244
+ return savedState ? JSON.parse(savedState) : true;
1245
+ });
1246
+ }, [setKeepDrawerOpen]);
1233
1247
  useEffect2(() => {
1234
1248
  if (size > 600) {
1235
1249
  setOpenSideMenu(keepDrawerOpen);
1236
1250
  } else {
1251
+ setKeepDrawerOpen(false);
1237
1252
  setOpenSideMenu(false);
1238
1253
  }
1239
1254
  }, [size, keepDrawerOpen]);
@@ -1433,9 +1448,10 @@ var AppLayout = ({
1433
1448
  size: "smallIcon",
1434
1449
  onClick: () => {
1435
1450
  const newKeepOpenState = !keepDrawerOpen;
1436
- if (props.onDrawerExpand) {
1437
- props.onDrawerExpand(newKeepOpenState);
1438
- }
1451
+ localStorage.setItem(
1452
+ LOCAL_STORAGE_KEY,
1453
+ JSON.stringify(newKeepOpenState)
1454
+ );
1439
1455
  setKeepDrawerOpen(newKeepOpenState);
1440
1456
  }
1441
1457
  },