shadok-ai 0.12.7 → 0.12.8

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/public/index.html +16 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shadok-ai",
3
- "version": "0.12.7",
3
+ "version": "0.12.8",
4
4
  "main": "dist/session.js",
5
5
  "scripts": {
6
6
  "test": "node --import tsx --test test/*.ts context/*/test/*.test.mjs",
package/public/index.html CHANGED
@@ -504,7 +504,19 @@
504
504
  border-radius: 0 4px 4px 0;
505
505
  color: var(--text);
506
506
  }
507
- @media (prefers-reduced-motion: reduce) { .tab.working { animation: none; } }
507
+ /* Background work still running (shells and/or monitors the agent left going,
508
+ the ⏳/👁 on the row): a green diagonal HATCH that breathes, the way
509
+ .working breathes amber — so a tab with something ticking in the background
510
+ reads at a glance, distinct from the solid fill of an active turn. Layered as
511
+ a background-IMAGE, not the `background` shorthand, so a tab that is ALSO
512
+ working / needs-answer / unread keeps its state colour underneath the hatch. */
513
+ .tab.has-bg {
514
+ background-image: repeating-linear-gradient(45deg,
515
+ color-mix(in srgb, var(--ok) 22%, transparent) 0 5px,
516
+ transparent 5px 10px);
517
+ animation: breathe 1.8s ease-in-out infinite;
518
+ }
519
+ @media (prefers-reduced-motion: reduce) { .tab.working, .tab.has-bg { animation: none; } }
508
520
  #newTab, #newGroup {
509
521
  margin-top: 8px;
510
522
  border: 1px dashed var(--line);
@@ -2646,6 +2658,9 @@
2646
2658
  paintCount(tab.monitorsEl, Number(monitors) || 0, "monitor");
2647
2659
  tab.shells = Number(shells) || 0;
2648
2660
  tab.monitors = Number(monitors) || 0;
2661
+ // The green hatched breathe on the whole tab: on as soon as anything is left
2662
+ // running in the background, off when the last one stops.
2663
+ tab.btnEl.classList.toggle("has-bg", tab.shells > 0 || tab.monitors > 0);
2649
2664
  }
2650
2665
  function paintCount(el, n, noun) {
2651
2666
  if (!el) return;