Skip to content

Commit 06bb336

Browse files
author
DavidQ
committed
refactor(shell): dedupe workspace status from tiles and move to shared status line
remove per-tile Workspace badge from tool binding chips in Workspace context keep tile badges focused on tool-scoped bindings (Palette, Asset) add single shared workspace status at start of shared status row: Workspace: Loaded|Unsaved|none update shared assets label to Shared Assets: and keep shared palette alongside it
1 parent ece54ea commit 06bb336

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

tools/shared/platformShell.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,9 @@ function formatBindingValue(label, value, fallback = "none") {
119119
function resolveProjectBindingLabel() {
120120
const manifest = getManifest();
121121
if (!manifest) {
122-
return "Workspace: none";
122+
return "none";
123123
}
124-
return manifest.dirty === true ? "Workspace: Unsaved" : "Workspace: Loaded";
124+
return manifest.dirty === true ? "Unsaved" : "Loaded";
125125
}
126126

127127
function getToolBindingCompatibility(toolId) {
@@ -150,7 +150,6 @@ function renderToolBindingBadges(tool) {
150150
const assetLabel = compatibility.asset
151151
? formatBindingValue("Asset", asset?.displayName, "none")
152152
: "Asset: Not used";
153-
const projectLabel = resolveProjectBindingLabel();
154153
const paletteTitle = compatibility.palette
155154
? `Updated: ${escapeHtml(palette?.selectedAt || "not-set")}`
156155
: "Not used by this tool";
@@ -162,7 +161,6 @@ function renderToolBindingBadges(tool) {
162161
<div class="tools-platform-frame__binding-badges" aria-label="Tool data bindings">
163162
<span class="tools-platform-frame__binding-badge${compatibility.palette ? " is-active" : " is-muted"}" title="${paletteTitle}">${escapeHtml(paletteLabel)}</span>
164163
<span class="tools-platform-frame__binding-badge${compatibility.asset ? " is-active" : " is-muted"}" title="${assetTitle}">${escapeHtml(assetLabel)}</span>
165-
<span class="tools-platform-frame__binding-badge is-project" title="Workspace manifest dirty state">${escapeHtml(projectLabel)}</span>
166164
</div>
167165
`;
168166
}
@@ -287,14 +285,16 @@ function renderSharedSelectionSummary() {
287285
if (getPageMode() === "landing") {
288286
return "";
289287
}
288+
const workspaceLabel = resolveProjectBindingLabel();
290289
const asset = readSharedAssetHandoff();
291290
const palette = readSharedPaletteHandoff();
292291
const assetLabel = asset?.displayName || "No shared asset selected";
293292
const paletteLabel = palette?.displayName || "No shared palette selected";
294293

295294
return `
296295
<div class="tools-platform-frame__shared-status" aria-label="Shared asset and palette status">
297-
<span><strong>Shared Asset:</strong> ${escapeHtml(assetLabel)}</span>
296+
<span><strong>Workspace:</strong> ${escapeHtml(workspaceLabel)}</span>
297+
<span><strong>Shared Assets:</strong> ${escapeHtml(assetLabel)}</span>
298298
<span><strong>Shared Palette:</strong> ${escapeHtml(paletteLabel)}</span>
299299
</div>
300300
`;

0 commit comments

Comments
 (0)