@xenosystem/agent-conversation 0.1.109 → 0.1.111

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.
@@ -151,7 +151,7 @@ export declare function useFoldPick(open: boolean, options: {
151
151
  * element mounted and hidden so it can RISE in and SINK out; unmounting it makes it blink away,
152
152
  * and `.xa-sink` in the stylesheet had nothing to set it.
153
153
  */
154
- export declare function usePresence(present: boolean): "shown" | "hidden" | "rise" | "sink";
154
+ export declare function usePresence(present: boolean): "hidden" | "shown" | "rise" | "sink";
155
155
  export declare function PermChip({ value, open, onToggle, onPick, disabled, present }: {
156
156
  value: PermPosture;
157
157
  open: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xenosystem/agent-conversation",
3
- "version": "0.1.109",
3
+ "version": "0.1.111",
4
4
  "license": "UNLICENSED",
5
5
  "description": "The XENO Agent conversation surface: the transcript, the composer, and the logic behind them.",
6
6
  "type": "module",
@@ -42,10 +42,10 @@
42
42
  "react-markdown": "^10.1.0",
43
43
  "remark-gfm": "^4.0.1",
44
44
  "zustand": "^5.0.2",
45
- "@xenosystem/agent-interface-client": "0.1.109",
46
- "@xenosystem/agent-interface-hub-adapter": "0.1.109",
47
- "@xenosystem/agent-interface-contract": "0.1.109",
48
- "@xenosystem/agent-interface-core": "0.1.109"
45
+ "@xenosystem/agent-interface-core": "0.1.111",
46
+ "@xenosystem/agent-interface-client": "0.1.111",
47
+ "@xenosystem/agent-interface-contract": "0.1.111",
48
+ "@xenosystem/agent-interface-hub-adapter": "0.1.111"
49
49
  },
50
50
  "peerDependencies": {
51
51
  "react": "^19.0.0",
package/src/composer.css CHANGED
@@ -99,6 +99,14 @@
99
99
  of the square once the group has folded */
100
100
  .xa-dock .xa-status { display: none; position: absolute; right: 31px; top: 50%; transform: translateY(-50%); font-size: 11px; color: var(--xa-t4); white-space: nowrap; }
101
101
  .xa-dock .xa-controls.xa-running .xa-status { display: inline; animation: xa-stin 200ms ease-out var(--xa-stin, 520ms) both; }
102
+ /* the fold above is an animation, and reduced motion switches animations off, which left the lane and model
103
+ labels standing under `Working · 2s`. Without motion the running state is reached directly. */
104
+ @media (prefers-reduced-motion: reduce) {
105
+ .xa-dock .xa-controls.xa-running .xa-mgrp { display: none; }
106
+ /* the same for everything else whose exit is an animation: go straight to where the animation ends */
107
+ .xa-dock .xa-permgrp.xa-sink { visibility: hidden; }
108
+ .xa-dock .xa-permgrp .xa-permicon.xa-out, .xa-dock .xa-mgrp .xa-laneicon.xa-out { display: none; }
109
+ }
102
110
  @keyframes xa-stin { from { opacity: 0; transform: translate(6px, -50%); } to { opacity: 1; transform: translate(0, -50%); } }
103
111
  .xa-dock .xa-controls .xa-grow { flex: 1; }
104
112
  .xa-dock .xa-ic { width: 24px; height: 24px; border-radius: 4px; color: var(--xa-t4); }
@@ -138,6 +138,10 @@
138
138
  /* the bench's motion rule: a person who asked for less motion gets none — no rise, no glide, no breathing */
139
139
  @media (prefers-reduced-motion: reduce) {
140
140
  :where(.xa-app, .xa-transcript, .xa-dock), :where(.xa-app, .xa-transcript, .xa-dock) *, :where(.xa-app, .xa-transcript, .xa-dock) *::before, :where(.xa-app, .xa-transcript, .xa-dock) *::after { animation: none !important; transition: none !important; }
141
+ /* animations are off, so an exit has to be its end state: the outgoing tool line and the settling dot go at once
142
+ instead of sitting under what replaced them until their element is removed */
143
+ .xa-line .xa-cur .xa-gl.xa-out, .xa-line .xa-cur .xa-t.xa-out { display: none; }
144
+ .xa-turn.xa-settle .xa-line .xa-dot, .xa-turn.xa-settle .xa-line.xa-thoughtsolo > .xa-vr { opacity: 0; }
141
145
  }
142
146
  /* back to the live end of the thread — shows only when you have scrolled up (bench `.tobottom`) */
143
147
  .xa-tobottom { position: absolute; right: 22px; z-index: 5; width: 24px; height: 24px; border-radius: 4px; background: var(--xa-plate); border: 1px solid var(--xa-line-tip); color: var(--xa-t3); opacity: 0; pointer-events: none; transform: translateY(6px); transition: opacity 160ms linear, transform 160ms var(--xa-ease); }