@opencosmos/ui 1.3.4 → 1.3.5
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.d.mts +3 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -4
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/components/layout/AppSidebar.tsx +6 -4
package/dist/index.d.mts
CHANGED
|
@@ -2441,8 +2441,10 @@ interface AppSidebarProviderProps {
|
|
|
2441
2441
|
children: React__default.ReactNode;
|
|
2442
2442
|
/** Initial open state used on server and first render @default true */
|
|
2443
2443
|
defaultOpen?: boolean;
|
|
2444
|
+
/** localStorage key for persisting open state. Use unique keys per page to avoid cross-page state bleed. @default 'appsidebar:state' */
|
|
2445
|
+
storageKey?: string;
|
|
2444
2446
|
}
|
|
2445
|
-
declare function AppSidebarProvider({ children, defaultOpen }: AppSidebarProviderProps): react_jsx_runtime.JSX.Element;
|
|
2447
|
+
declare function AppSidebarProvider({ children, defaultOpen, storageKey }: AppSidebarProviderProps): react_jsx_runtime.JSX.Element;
|
|
2446
2448
|
declare function AppSidebarInset({ children, className, }: {
|
|
2447
2449
|
children: React__default.ReactNode;
|
|
2448
2450
|
className?: string;
|
package/dist/index.d.ts
CHANGED
|
@@ -2441,8 +2441,10 @@ interface AppSidebarProviderProps {
|
|
|
2441
2441
|
children: React__default.ReactNode;
|
|
2442
2442
|
/** Initial open state used on server and first render @default true */
|
|
2443
2443
|
defaultOpen?: boolean;
|
|
2444
|
+
/** localStorage key for persisting open state. Use unique keys per page to avoid cross-page state bleed. @default 'appsidebar:state' */
|
|
2445
|
+
storageKey?: string;
|
|
2444
2446
|
}
|
|
2445
|
-
declare function AppSidebarProvider({ children, defaultOpen }: AppSidebarProviderProps): react_jsx_runtime.JSX.Element;
|
|
2447
|
+
declare function AppSidebarProvider({ children, defaultOpen, storageKey }: AppSidebarProviderProps): react_jsx_runtime.JSX.Element;
|
|
2446
2448
|
declare function AppSidebarInset({ children, className, }: {
|
|
2447
2449
|
children: React__default.ReactNode;
|
|
2448
2450
|
className?: string;
|
package/dist/index.js
CHANGED
|
@@ -11073,13 +11073,13 @@ var DEFAULT_CONTEXT = {
|
|
|
11073
11073
|
function useAppSidebar() {
|
|
11074
11074
|
return (0, import_react19.useContext)(AppSidebarContext) ?? DEFAULT_CONTEXT;
|
|
11075
11075
|
}
|
|
11076
|
-
function AppSidebarProvider({ children, defaultOpen = true }) {
|
|
11076
|
+
function AppSidebarProvider({ children, defaultOpen = true, storageKey = STORAGE_KEY }) {
|
|
11077
11077
|
const [isOpen, setIsOpen] = (0, import_react19.useState)(defaultOpen);
|
|
11078
11078
|
(0, import_react19.useEffect)(() => {
|
|
11079
|
-
const stored = localStorage.getItem(
|
|
11079
|
+
const stored = localStorage.getItem(storageKey);
|
|
11080
11080
|
if (stored !== null) setIsOpen(stored === "true");
|
|
11081
|
-
}, []);
|
|
11082
|
-
const persist3 = (value) => localStorage.setItem(
|
|
11081
|
+
}, [storageKey]);
|
|
11082
|
+
const persist3 = (value) => localStorage.setItem(storageKey, String(value));
|
|
11083
11083
|
const toggle = () => setIsOpen((prev) => {
|
|
11084
11084
|
const next = !prev;
|
|
11085
11085
|
persist3(next);
|