@cryptiklemur/lattice 1.25.0 → 1.25.1
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.
|
@@ -198,7 +198,6 @@ export function getSidebarStore(): Store<SidebarState> {
|
|
|
198
198
|
|
|
199
199
|
export function setActiveProjectSlug(slug: string | null): void {
|
|
200
200
|
let prevSlug = sidebarStore.state.activeProjectSlug;
|
|
201
|
-
switchProjectWorkspace(prevSlug, slug);
|
|
202
201
|
sidebarStore.setState(function (state) {
|
|
203
202
|
return {
|
|
204
203
|
...state,
|
|
@@ -218,6 +217,8 @@ export function setActiveProjectSlug(slug: string | null): void {
|
|
|
218
217
|
window.history.pushState(null, "", path);
|
|
219
218
|
}
|
|
220
219
|
lastEncodedUrl = "";
|
|
220
|
+
// Switch workspace AFTER sidebar state is set so React sees both in same render
|
|
221
|
+
switchProjectWorkspace(prevSlug, slug);
|
|
221
222
|
}
|
|
222
223
|
|
|
223
224
|
export function setActiveSessionId(sessionId: string | null): void {
|
|
@@ -343,6 +344,7 @@ export function goToProjectDashboard(): void {
|
|
|
343
344
|
}
|
|
344
345
|
|
|
345
346
|
export function goToDashboard(): void {
|
|
347
|
+
let prevSlug = sidebarStore.state.activeProjectSlug;
|
|
346
348
|
sidebarStore.setState(function (state) {
|
|
347
349
|
return {
|
|
348
350
|
...state,
|
|
@@ -357,6 +359,7 @@ export function goToDashboard(): void {
|
|
|
357
359
|
if (window.location.pathname + window.location.search !== "/") {
|
|
358
360
|
window.history.pushState(null, "", "/");
|
|
359
361
|
}
|
|
362
|
+
switchProjectWorkspace(prevSlug, null);
|
|
360
363
|
lastEncodedUrl = "";
|
|
361
364
|
}
|
|
362
365
|
|
|
@@ -478,15 +478,20 @@ export function loadWorkspaceForProject(projectSlug: string | null): void {
|
|
|
478
478
|
urlSyncSuppressed = false;
|
|
479
479
|
}
|
|
480
480
|
|
|
481
|
+
var saveSuppressed = false;
|
|
482
|
+
|
|
481
483
|
export function switchProjectWorkspace(fromSlug: string | null, toSlug: string | null): void {
|
|
484
|
+
saveSuppressed = true;
|
|
482
485
|
saveWorkspaceForProject(fromSlug);
|
|
483
486
|
loadWorkspaceForProject(toSlug);
|
|
487
|
+
saveSuppressed = false;
|
|
484
488
|
}
|
|
485
489
|
|
|
486
490
|
workspaceStore.subscribe(function () {
|
|
487
491
|
notifyUrlSync();
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
+
if (!saveSuppressed) {
|
|
493
|
+
try {
|
|
494
|
+
saveWorkspaceForProject(currentProjectKey === "__global__" ? null : currentProjectKey);
|
|
495
|
+
} catch {}
|
|
496
|
+
}
|
|
492
497
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cryptiklemur/lattice",
|
|
3
|
-
"version": "1.25.
|
|
3
|
+
"version": "1.25.1",
|
|
4
4
|
"description": "Multi-machine agentic dashboard for Claude Code. Monitor sessions, manage MCP servers and skills, orchestrate across mesh-networked nodes.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Aaron Scherer <me@aaronscherer.me>",
|