@enigmax/dashboard 0.1.49 → 0.1.50
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/assets/index.html +9 -4
- package/package.json +1 -1
package/assets/index.html
CHANGED
|
@@ -247,6 +247,7 @@
|
|
|
247
247
|
.achip { display: inline-flex; align-items: center; justify-content: center; padding: 5px 8px; border-radius: 999px; border: 1px solid var(--border); background: var(--surface2); color: var(--muted); cursor: pointer; text-decoration: none; transition: color .15s, background .15s, border-color .15s; }
|
|
248
248
|
.achip:hover { border-color: #2f3744; color: var(--text); }
|
|
249
249
|
.achip.on { background: var(--good); color: #06210f; border-color: var(--good); }
|
|
250
|
+
.achip:disabled { opacity: .35; cursor: not-allowed; }
|
|
250
251
|
.achip svg { width: 14px; height: 14px; display: block; }
|
|
251
252
|
/* Inline app icons in the "where deployed" tag (static, name in tooltip). */
|
|
252
253
|
.aicons { display: inline-flex; gap: 5px; align-items: center; vertical-align: middle; margin-left: 6px; }
|
|
@@ -2787,9 +2788,13 @@ export {
|
|
|
2787
2788
|
// Project scope: same row, but the per-app chips toggle deployment INTO this project
|
|
2788
2789
|
// (data-pskill, handled by the scope delegate) and the global-only controls are hidden.
|
|
2789
2790
|
if (skillScope === "project") {
|
|
2790
|
-
const chips = (s.agentStates || []).map((a) =>
|
|
2791
|
-
|
|
2792
|
-
|
|
2791
|
+
const chips = (s.agentStates || []).map((a) => {
|
|
2792
|
+
// An app that is not installed on this machine can't be a deploy target - show
|
|
2793
|
+
// its chip disabled rather than letting a click create a dir for an unused agent.
|
|
2794
|
+
if (a.installed === false) return '<button type="button" class="achip" disabled aria-label="' + esc(a.label) + '" title="' + esc(a.label) + ' - not installed">' + (agentSvg(a.name) || esc(a.label)) + "</button>";
|
|
2795
|
+
return '<button type="button" class="achip' + (a.deployed ? " on" : "") + '" data-pskill="' + esc(s.name) + '" data-pagent="' + esc(a.name) + '" data-poff="' + (a.deployed ? 1 : 0) + '" aria-label="' + esc(a.label) + '" title="'
|
|
2796
|
+
+ (a.deployed ? esc(a.label) + " - deployed, click to remove" : esc(a.label) + " - not deployed, click to deploy") + '">' + (agentSvg(a.name) || esc(a.label)) + "</button>";
|
|
2797
|
+
}).join("");
|
|
2793
2798
|
return '<div class="set-row"><div class="set-meta"><div class="set-name">' + esc(s.name) + ver + "</div>"
|
|
2794
2799
|
+ '<div class="set-hint">' + esc(s.description || "") + "</div>"
|
|
2795
2800
|
+ '<div class="set-agents">' + (chips || '<span class="tag">no agents</span>') + "</div></div></div>";
|
|
@@ -3376,7 +3381,7 @@ export {
|
|
|
3376
3381
|
const agents = d.agents || [];
|
|
3377
3382
|
const skills = (d.available || []).map((s) => ({
|
|
3378
3383
|
name: s.name, description: s.description, source: "enigma",
|
|
3379
|
-
agentStates: agents.map((a) => ({ name: a.name, label: a.label, deployed: (a.deployed || []).indexOf(s.name) !== -1 })),
|
|
3384
|
+
agentStates: agents.map((a) => ({ name: a.name, label: a.label, installed: a.installed, deployed: (a.deployed || []).indexOf(s.name) !== -1 })),
|
|
3380
3385
|
}));
|
|
3381
3386
|
renderSkills(skills);
|
|
3382
3387
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@enigmax/dashboard",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.50",
|
|
4
4
|
"description": "Local browser dashboard UI for enigma: the static page and chart assets enigma serves on its loopback dashboard (savings, real tool usage, in-browser settings). Installed on demand by enigma-cli; not a runtime dependency.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|