@xenosystem/agent-interface-ui 0.1.42 → 0.1.43

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/dist/agent.css +31 -0
  2. package/package.json +6 -6
package/dist/agent.css CHANGED
@@ -7873,6 +7873,37 @@ img.xa-fav { padding: 1px; background: #fff; }
7873
7873
  .xa-citecard-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12.5px; font-weight: 500; line-height: 1.3; color: var(--xa-t1); }
7874
7874
  .xa-citecard-site { display: flex; align-items: center; gap: 6px; font-size: 11px; color: var(--xa-t4); }
7875
7875
 
7876
+ /* ── the thread scrubber: a map of the conversation on the right edge ─────────────────────
7877
+ 6 px of rail until hovered, then 14 px; rectangular ticks (never dots), the person's longer than
7878
+ the reply's, the one under the viewport bright, a marked tick where the turn did work. The card
7879
+ is the citation card's plate. Hidden below two viewports of thread — the component decides. */
7880
+ .xa-scrub { position: absolute; top: 8px; right: 6px; bottom: 8px; z-index: 6; display: flex; flex-direction: column; align-items: flex-end; width: 22px; padding: 2px 0; opacity: 0.55; transition: opacity 160ms linear; }
7881
+ .xa-scrub:hover, .xa-scrub:focus-within { opacity: 1; }
7882
+ .xa-scrub-end { flex: none; width: 16px; height: 16px; margin-right: 1px; border-radius: 3px; color: var(--xa-t5); opacity: 0; transition: opacity 160ms linear, background 120ms linear, color 120ms linear; }
7883
+ .xa-scrub:hover .xa-scrub-end, .xa-scrub:focus-within .xa-scrub-end { opacity: 1; }
7884
+ .xa-scrub-end:hover { color: var(--xa-t2); background: var(--xa-wash-hover); }
7885
+ .xa-scrub-end svg { width: 11px; height: 11px; }
7886
+ .xa-scrub-ticks { flex: 1; min-height: 0; display: flex; flex-direction: column; justify-content: space-evenly; width: 100%; overflow: hidden; padding: 4px 0; }
7887
+ /* the rail IS the scrollbar while it shows — Grok's move: two scroll affordances on one edge fight for the pointer */
7888
+ .xa-app:has(> .xa-scrub) > .xa-transcript { scrollbar-width: none; }
7889
+ .xa-app:has(> .xa-scrub) > .xa-transcript::-webkit-scrollbar { display: none; }
7890
+ .xa-tick { flex: none; align-self: flex-end; height: 2px; border-radius: 1px; background: var(--xa-t6); opacity: 0.55; transition: width 160ms var(--xa-ease), background 120ms linear, opacity 120ms linear; cursor: pointer; padding: 0; box-sizing: content-box; }
7891
+ .xa-tick-user { width: 10px; }
7892
+ .xa-tick-assistant { width: 6px; opacity: 0.35; }
7893
+ .xa-scrub:hover .xa-tick-user, .xa-scrub:focus-within .xa-tick-user { width: 18px; }
7894
+ .xa-scrub:hover .xa-tick-assistant, .xa-scrub:focus-within .xa-tick-assistant { width: 11px; }
7895
+ .xa-tick.xa-cur { background: var(--xa-t1); opacity: 1; height: 3px; }
7896
+ .xa-tick.xa-mark { background: var(--xa-t3); opacity: 0.8; }
7897
+ .xa-tick.xa-mark.xa-cur { background: var(--xa-t1); }
7898
+ .xa-tick:hover, .xa-tick:focus-visible { background: var(--xa-t2); opacity: 1; outline: none; }
7899
+ /* a bigger target than the tick itself */
7900
+ .xa-tick::before { content: ''; position: absolute; right: 0; width: 22px; height: 9px; margin-top: -3.5px; }
7901
+ .xa-tick { position: relative; }
7902
+ .xa-scrub-card { position: absolute; right: 26px; z-index: 40; display: flex; flex-direction: column; gap: 3px; width: 240px; padding: 8px 10px; border-radius: 8px; border: 1px solid var(--xa-line-tip); background: var(--xa-menu); box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35); pointer-events: none; }
7903
+ .xa-scrub-who { font-size: 10.5px; color: var(--xa-t5); }
7904
+ .xa-scrub-line { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; line-height: 1.35; color: var(--xa-t1); }
7905
+ @media (prefers-reduced-motion: reduce) { .xa-tick, .xa-scrub, .xa-scrub-end { transition: none; } }
7906
+
7876
7907
  /* ── cards: A's card, Z's cadence — Cancel left, the way forward right ─── */
7877
7908
  .xa-row .xa-brk { flex: 0 0 100%; height: 0; }
7878
7909
  .xa-row .xa-brk + .xa-cardslot { margin-top: -9px; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xenosystem/agent-interface-ui",
3
- "version": "0.1.42",
3
+ "version": "0.1.43",
4
4
  "license": "UNLICENSED",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -42,11 +42,11 @@
42
42
  "react-markdown": "^10.1.0",
43
43
  "remark-gfm": "^4.0.1",
44
44
  "zustand": "^5.0.2",
45
- "@xenosystem/agent-conversation": "0.1.42",
46
- "@xenosystem/agent-interface-core": "0.1.42",
47
- "@xenosystem/agent-interface-hub-adapter": "0.1.42",
48
- "@xenosystem/agent-interface-contract": "0.1.42",
49
- "@xenosystem/agent-interface-client": "0.1.42"
45
+ "@xenosystem/agent-conversation": "0.1.43",
46
+ "@xenosystem/agent-interface-contract": "0.1.43",
47
+ "@xenosystem/agent-interface-client": "0.1.43",
48
+ "@xenosystem/agent-interface-core": "0.1.43",
49
+ "@xenosystem/agent-interface-hub-adapter": "0.1.43"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "react": "^19.0.0",