release: WRNexusJS 0.6.0

This commit is contained in:
2026-08-01 01:09:58 +05:30
parent 3e565e8d03
commit 687d345882
502 changed files with 33038 additions and 11358 deletions
+29
View File
@@ -0,0 +1,29 @@
import { createStoreContainer } from "./index.ts";
let globalContainer: ReturnType<typeof createStoreContainer> | undefined;
export function browserStoreContainer(hydration: Record<string, unknown> = {}) {
if (!globalContainer) {
globalContainer = createStoreContainer({
runtime: "client",
hydration,
onMutation(mutation) {
try {
globalThis.dispatchEvent?.(
new CustomEvent("wrnexus:store-mutation", { detail: mutation }),
);
} catch {
// Minimal DOM and non-browser runtimes may not expose CustomEvent.
}
},
});
(globalThis as any).__wrnexusStoreContainer = globalContainer;
}
return globalContainer;
}
export async function resetBrowserStores() {
await globalContainer?.dispose();
globalContainer = undefined;
delete (globalThis as any).__wrnexusStoreContainer;
}