@opengeni/react 0.28.2 → 0.32.1

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 (208) hide show
  1. package/dist/approvals.d.ts +14 -0
  2. package/dist/{chunk-M7X4JZOD.js → chunk-4QOQ2DSR.js} +8 -1
  3. package/dist/chunk-4QOQ2DSR.js.map +1 -0
  4. package/dist/{chunk-HQFPO7VX.js → chunk-7CJOAW3V.js} +24 -3
  5. package/dist/{chunk-HQFPO7VX.js.map → chunk-7CJOAW3V.js.map} +1 -1
  6. package/dist/{chunk-PMSGE233.js → chunk-A2WITZTI.js} +377 -113
  7. package/dist/chunk-A2WITZTI.js.map +1 -0
  8. package/dist/{chunk-BC6RKIHS.js → chunk-GZ4KR67U.js} +11 -11
  9. package/dist/{chunk-4F2YLLHP.js → chunk-KZRUYCL4.js} +14 -17
  10. package/dist/chunk-KZRUYCL4.js.map +1 -0
  11. package/dist/{chunk-OCHBZ2X7.js → chunk-TCCE5ZU5.js} +192 -28
  12. package/dist/chunk-TCCE5ZU5.js.map +1 -0
  13. package/dist/chunk-U255M5EZ.js +178 -0
  14. package/dist/chunk-U255M5EZ.js.map +1 -0
  15. package/dist/{chunk-XVVQP7A4.js → chunk-WY2QN2CX.js} +2539 -2174
  16. package/dist/chunk-WY2QN2CX.js.map +1 -0
  17. package/dist/chunk-ZNNE2VES.js +6413 -0
  18. package/dist/chunk-ZNNE2VES.js.map +1 -0
  19. package/dist/client.d.ts +33 -0
  20. package/dist/commands/index.d.ts +3 -0
  21. package/dist/commands/registry.d.ts +41 -0
  22. package/dist/commands/types.d.ts +85 -0
  23. package/dist/components/approval-surface.d.ts +28 -0
  24. package/dist/components/chat-composer.d.ts +51 -0
  25. package/dist/components/code-editor.d.ts +43 -0
  26. package/dist/components/command-palette.d.ts +25 -0
  27. package/dist/components/composer-transcription-control.d.ts +36 -0
  28. package/dist/components/composer.d.ts +277 -0
  29. package/dist/components/copy-button.d.ts +26 -0
  30. package/dist/components/desktop-viewer.d.ts +85 -0
  31. package/dist/components/diff-view.d.ts +38 -0
  32. package/dist/components/enrollment-consent.d.ts +33 -0
  33. package/dist/components/enrollment-device-flow.d.ts +27 -0
  34. package/dist/components/file-browser.d.ts +47 -0
  35. package/dist/components/fleet-tile.d.ts +18 -0
  36. package/dist/components/human-input-form.d.ts +47 -0
  37. package/dist/components/machine-card.d.ts +21 -0
  38. package/dist/components/machine-dock-bar.d.ts +31 -0
  39. package/dist/components/machine-health-pill.d.ts +9 -0
  40. package/dist/components/machine-metrics.d.ts +15 -0
  41. package/dist/components/machine-status-pill.d.ts +54 -0
  42. package/dist/components/machines/health.d.ts +25 -0
  43. package/dist/components/machines/machine-detail.d.ts +14 -0
  44. package/dist/components/machines/metric-history-chart.d.ts +24 -0
  45. package/dist/components/machines/metric-sparkline.d.ts +9 -0
  46. package/dist/components/machines/series.d.ts +24 -0
  47. package/dist/components/machines-dashboard.d.ts +30 -0
  48. package/dist/components/markdown.d.ts +31 -0
  49. package/dist/components/message-timeline.d.ts +98 -0
  50. package/dist/components/model-picker.d.ts +19 -0
  51. package/dist/components/pierre-diff.d.ts +34 -0
  52. package/dist/components/pierre-file.d.ts +27 -0
  53. package/dist/components/queue-draft-policy.d.ts +7 -0
  54. package/dist/components/queue-surface-implementation.d.ts +20 -0
  55. package/dist/components/queue-surface-state.d.ts +12 -0
  56. package/dist/components/queue-surface.d.ts +12 -0
  57. package/dist/components/sandbox-files.d.ts +49 -0
  58. package/dist/components/sandbox-terminal.d.ts +123 -0
  59. package/dist/components/sandbox-workspace.d.ts +128 -0
  60. package/dist/components/session-chrome.d.ts +70 -0
  61. package/dist/components/session-status.d.ts +25 -0
  62. package/dist/components/soften-streaming-markdown.d.ts +13 -0
  63. package/dist/components/stream-reveal.d.ts +37 -0
  64. package/dist/components/tip-follow.d.ts +139 -0
  65. package/dist/components/tooltip.d.ts +16 -0
  66. package/dist/components/workbench-changes.d.ts +34 -0
  67. package/dist/components/workspace-dock.d.ts +35 -0
  68. package/dist/composer.d.ts +11 -7
  69. package/dist/composer.js +9 -6
  70. package/dist/hooks/internal.d.ts +46 -0
  71. package/dist/hooks/use-available-models.d.ts +37 -0
  72. package/dist/hooks/use-billing-usage.d.ts +26 -0
  73. package/dist/hooks/use-codex-accounts.d.ts +69 -0
  74. package/dist/{use-composer-ClHy1rkL.d.ts → hooks/use-composer.d.ts} +16 -24
  75. package/dist/hooks/use-desktop-stream.d.ts +43 -0
  76. package/dist/hooks/use-environments.d.ts +35 -0
  77. package/dist/{use-file-attachments-BmT8WtqO.d.ts → hooks/use-file-attachments.d.ts} +6 -9
  78. package/dist/hooks/use-goal.d.ts +46 -0
  79. package/dist/hooks/use-human-input.d.ts +26 -0
  80. package/dist/hooks/use-last-started-turn-policy.d.ts +27 -0
  81. package/dist/hooks/use-machine-chip.d.ts +54 -0
  82. package/dist/hooks/use-machines.d.ts +81 -0
  83. package/dist/hooks/use-packs.d.ts +27 -0
  84. package/dist/hooks/use-relay-frame-stream.d.ts +53 -0
  85. package/dist/hooks/use-rigs.d.ts +87 -0
  86. package/dist/hooks/use-sandbox-files.d.ts +108 -0
  87. package/dist/hooks/use-sandbox-git.d.ts +58 -0
  88. package/dist/hooks/use-sandbox-terminal.d.ts +62 -0
  89. package/dist/hooks/use-scheduled-tasks.d.ts +15 -0
  90. package/dist/hooks/use-session-capabilities.d.ts +83 -0
  91. package/dist/hooks/use-session-control.d.ts +22 -0
  92. package/dist/hooks/use-session-events.d.ts +92 -0
  93. package/dist/hooks/use-session-lineage.d.ts +17 -0
  94. package/dist/hooks/use-session-mcp-approval-policy.d.ts +23 -0
  95. package/dist/hooks/use-session.d.ts +23 -0
  96. package/dist/hooks/use-slash-commands.d.ts +66 -0
  97. package/dist/hooks/use-terminal-stream.d.ts +46 -0
  98. package/dist/hooks/use-transcription.d.ts +73 -0
  99. package/dist/hooks/use-turn-queue.d.ts +44 -0
  100. package/dist/hooks/use-voice-input.d.ts +25 -0
  101. package/dist/hooks/use-windowed-sections.d.ts +42 -0
  102. package/dist/hooks/use-workspace-capture.d.ts +49 -0
  103. package/dist/hooks/use-workspace-edit.d.ts +73 -0
  104. package/dist/hooks/use-workspace-sessions.d.ts +30 -0
  105. package/dist/hooks/use-workspaces.d.ts +22 -0
  106. package/dist/human-input.d.ts +18 -0
  107. package/dist/index.d.ts +144 -2119
  108. package/dist/index.js +421 -324
  109. package/dist/index.js.map +1 -1
  110. package/dist/lib/clipboard.d.ts +7 -0
  111. package/dist/lib/cn.d.ts +3 -0
  112. package/dist/lib/format.d.ts +48 -0
  113. package/dist/lib/git-patch.d.ts +8 -0
  114. package/dist/lib/motion-inspect.d.ts +5 -0
  115. package/dist/lib/motion.d.ts +14 -0
  116. package/dist/lib/noto-sans-arabic-loader.d.ts +1 -0
  117. package/dist/lib/noto-sans-jp-loader.generated.d.ts +1 -0
  118. package/dist/lib/relay-wire.d.ts +30 -0
  119. package/dist/lib/use-portal-token-style.d.ts +9 -0
  120. package/dist/lib/use-theme-type.d.ts +5 -0
  121. package/dist/lib/use-unicode-fonts.d.ts +12 -0
  122. package/dist/lib/xterm-renderer.d.ts +19 -0
  123. package/dist/lib/xterm-theme.d.ts +75 -0
  124. package/dist/machines.d.ts +30 -413
  125. package/dist/machines.js +3 -3
  126. package/dist/model-policy.d.ts +32 -0
  127. package/dist/model-policy.js +33 -0
  128. package/dist/model-policy.js.map +1 -0
  129. package/dist/provider.d.ts +16 -0
  130. package/dist/{queue-surface-implementation-UQ535OKQ.js → queue-surface-implementation-THPAKGMD.js} +2 -2
  131. package/dist/{queue-surface-implementation-UQ535OKQ.js.map → queue-surface-implementation-THPAKGMD.js.map} +1 -1
  132. package/dist/session-context.d.ts +82 -0
  133. package/dist/session-ui.d.ts +10 -7
  134. package/dist/session-ui.js +9 -5
  135. package/dist/session.d.ts +28 -6
  136. package/dist/session.js +11 -11
  137. package/dist/timeline/activity-rail.d.ts +19 -0
  138. package/dist/timeline/disclosure-context.d.ts +14 -0
  139. package/dist/timeline/entrance.d.ts +14 -0
  140. package/dist/timeline/fleet-decision-projection.d.ts +9 -0
  141. package/dist/timeline/fleet-decision-row.d.ts +11 -0
  142. package/dist/timeline/fold-memory.d.ts +15 -0
  143. package/dist/timeline/index.d.ts +18 -0
  144. package/dist/timeline/parsers.d.ts +96 -0
  145. package/dist/timeline/projection.d.ts +38 -0
  146. package/dist/timeline/registry.d.ts +40 -0
  147. package/dist/timeline/screenshot-lightbox.d.ts +26 -0
  148. package/dist/timeline/seen-activity-ids.d.ts +2 -0
  149. package/dist/timeline/shared.d.ts +125 -0
  150. package/dist/timeline/tool-diff.d.ts +8 -0
  151. package/dist/timeline/tool-display-name.d.ts +10 -0
  152. package/dist/timeline/tool-renderers.d.ts +5 -0
  153. package/dist/timeline/turn-summary.d.ts +116 -0
  154. package/dist/{use-turn-queue-Drm_ypue.d.ts → timeline/types.d.ts} +57 -67
  155. package/dist/types/machines.d.ts +11 -0
  156. package/package.json +8 -4
  157. package/src/client.ts +1 -0
  158. package/src/components/composer-transcription-control.tsx +278 -130
  159. package/src/components/composer.tsx +20 -15
  160. package/src/components/copy-button.tsx +127 -0
  161. package/src/components/markdown.tsx +231 -32
  162. package/src/components/message-timeline.tsx +1382 -378
  163. package/src/components/model-picker.tsx +83 -43
  164. package/src/components/queue-surface-implementation.tsx +1 -1
  165. package/src/components/session-chrome.tsx +942 -0
  166. package/src/components/soften-streaming-markdown.ts +205 -0
  167. package/src/components/stream-reveal.ts +195 -0
  168. package/src/components/tip-follow.ts +459 -0
  169. package/src/components/tooltip.tsx +103 -0
  170. package/src/composer.ts +6 -0
  171. package/src/hooks/internal.ts +30 -4
  172. package/src/hooks/use-available-models.ts +51 -4
  173. package/src/hooks/use-composer.ts +24 -18
  174. package/src/hooks/use-last-started-turn-policy.ts +95 -0
  175. package/src/hooks/use-session-events.ts +359 -5
  176. package/src/hooks/use-voice-input.ts +232 -0
  177. package/src/index.ts +49 -1
  178. package/src/lib/clipboard.ts +58 -0
  179. package/src/lib/format.ts +18 -0
  180. package/src/lib/motion-inspect.ts +5 -0
  181. package/src/lib/motion.ts +80 -0
  182. package/src/model-policy.ts +210 -0
  183. package/src/session-ui.ts +7 -0
  184. package/src/session.ts +2 -0
  185. package/src/timeline/activity-rail.tsx +46 -7
  186. package/src/timeline/entrance.tsx +10 -0
  187. package/src/timeline/fold-memory.ts +52 -0
  188. package/src/timeline/index.ts +11 -1
  189. package/src/timeline/projection.ts +252 -47
  190. package/src/timeline/seen-activity-ids.ts +19 -0
  191. package/src/timeline/shared.tsx +1 -1
  192. package/src/timeline/tool-renderers.tsx +75 -6
  193. package/src/timeline/turn-summary.tsx +387 -97
  194. package/src/timeline/types.ts +47 -0
  195. package/styles/index.css +99 -7
  196. package/styles/tokens.css +44 -3
  197. package/dist/chunk-4F2YLLHP.js.map +0 -1
  198. package/dist/chunk-M7X4JZOD.js.map +0 -1
  199. package/dist/chunk-OCHBZ2X7.js.map +0 -1
  200. package/dist/chunk-PMSGE233.js.map +0 -1
  201. package/dist/chunk-WAA247AB.js +0 -3858
  202. package/dist/chunk-WAA247AB.js.map +0 -1
  203. package/dist/chunk-XVVQP7A4.js.map +0 -1
  204. package/dist/composer-BMzimGTO.d.ts +0 -528
  205. package/dist/session-C3tIXLim.d.ts +0 -264
  206. package/dist/session-context-CAjlaeZb.d.ts +0 -84
  207. package/dist/session-ui-B_7cfN5u.d.ts +0 -259
  208. /package/dist/{chunk-BC6RKIHS.js.map → chunk-GZ4KR67U.js.map} +0 -0
@@ -1,8 +1,5 @@
1
- import { ToolAuthNeededPayload, ResourceRef, ToolRef, SessionStatus, SessionQueueSnapshot, SessionTurn, SessionPendingInputPreview, EffectiveSessionControl, ComposerDraft, SessionEvent } from '@opengeni/sdk';
2
- import { a as EmbeddedSessionClientOverride } from './session-context-CAjlaeZb.js';
3
- import { S as SessionEventFeedOptions } from './use-composer-ClHy1rkL.js';
4
-
5
- type UserMessageItem = {
1
+ import type { ResourceRef, SessionStatus, ToolAuthNeededPayload, ToolRef } from "@opengeni/sdk";
2
+ export type UserMessageItem = {
6
3
  kind: "user-message";
7
4
  id: string;
8
5
  text: string;
@@ -12,7 +9,7 @@ type UserMessageItem = {
12
9
  tools: ToolRef[];
13
10
  occurredAt: string;
14
11
  };
15
- type AgentMessageItem = {
12
+ export type AgentMessageItem = {
16
13
  kind: "agent-message";
17
14
  id: string;
18
15
  turnId: string | null;
@@ -21,7 +18,7 @@ type AgentMessageItem = {
21
18
  streaming: boolean;
22
19
  occurredAt: string;
23
20
  };
24
- type ReasoningItem = {
21
+ export type ReasoningItem = {
25
22
  kind: "reasoning";
26
23
  id: string;
27
24
  turnId: string | null;
@@ -29,7 +26,7 @@ type ReasoningItem = {
29
26
  streaming: boolean;
30
27
  occurredAt: string;
31
28
  };
32
- type ToolCallItem = {
29
+ export type ToolCallItem = {
33
30
  kind: "tool-call";
34
31
  id: string;
35
32
  turnId: string | null;
@@ -53,7 +50,7 @@ type ToolCallItem = {
53
50
  * messaging a worker. Rendered as a first-class "worker" row, not a generic
54
51
  * tool call.
55
52
  */
56
- type WorkerItem = {
53
+ export type WorkerItem = {
57
54
  kind: "worker";
58
55
  id: string;
59
56
  turnId: string | null;
@@ -66,7 +63,7 @@ type WorkerItem = {
66
63
  status: "running" | "complete" | "failed" | "cancelled";
67
64
  occurredAt: string;
68
65
  };
69
- type WorkerCompletionItem = {
66
+ export type WorkerCompletionItem = {
70
67
  kind: "worker-completion";
71
68
  id: string;
72
69
  turnId: string | null;
@@ -79,7 +76,7 @@ type WorkerCompletionItem = {
79
76
  pausedReason: string | null;
80
77
  text: string;
81
78
  };
82
- type SandboxItem = {
79
+ export type SandboxItem = {
83
80
  kind: "sandbox";
84
81
  id: string;
85
82
  turnId: string | null;
@@ -99,7 +96,7 @@ type SandboxItem = {
99
96
  * `onMemoryClick` handler the row also deep-links to the record in its memory
100
97
  * pane; without one it is non-interactive rich content.
101
98
  */
102
- type MemoryItem = {
99
+ export type MemoryItem = {
103
100
  kind: "memory";
104
101
  id: string;
105
102
  turnId: string | null;
@@ -125,7 +122,7 @@ type MemoryItem = {
125
122
  replacementMemoryId?: string;
126
123
  occurredAt: string;
127
124
  };
128
- type FleetDecisionScoreItem = {
125
+ export type FleetDecisionScoreItem = {
129
126
  candidateKey: string;
130
127
  eligible: boolean;
131
128
  rejectionReason: "allocator_disabled" | "unavailable" | "cooling" | "quota_ceiling" | "overlay_isolation" | null;
@@ -136,7 +133,7 @@ type FleetDecisionScoreItem = {
136
133
  * One production-vs-shadow placement explanation. Candidate keys are
137
134
  * event-local aliases only; no credential/account identity reaches this item.
138
135
  */
139
- type FleetDecisionItem = {
136
+ export type FleetDecisionItem = {
140
137
  kind: "fleet-decision";
141
138
  id: string;
142
139
  turnId: string | null;
@@ -160,20 +157,20 @@ type FleetDecisionItem = {
160
157
  scores: FleetDecisionScoreItem[];
161
158
  occurredAt: string;
162
159
  };
163
- type SessionStatusItem = {
160
+ export type SessionStatusItem = {
164
161
  kind: "session-status";
165
162
  id: string;
166
163
  status: SessionStatus;
167
164
  occurredAt: string;
168
165
  };
169
- type GoalItem = {
166
+ export type GoalItem = {
170
167
  kind: "goal";
171
168
  id: string;
172
169
  action: "set" | "updated" | "completed" | "paused" | "resumed" | "cleared" | "continuation";
173
170
  text: string | null;
174
171
  occurredAt: string;
175
172
  };
176
- type NoticeItem = {
173
+ export type NoticeItem = {
177
174
  kind: "notice";
178
175
  id: string;
179
176
  tone: "waiting" | "cancelled" | "failed" | "input";
@@ -189,6 +186,41 @@ type NoticeItem = {
189
186
  };
190
187
  occurredAt: string;
191
188
  };
189
+ /**
190
+ * First-class conversation-memory checkpoint. Stays outside collapsed turns so
191
+ * auto-compaction cannot vanish behind a chevron. Chat bubbles are unchanged.
192
+ */
193
+ export type ContextCompactionItem = {
194
+ kind: "context-compaction";
195
+ id: string;
196
+ turnId: string | null;
197
+ phase: "started" | "compacted" | "skipped";
198
+ trigger: "auto" | "operator" | "proactive" | "overflow" | null;
199
+ estimatedTokensBefore: number | null;
200
+ estimatedTokensAfter: number | null;
201
+ skipReason: string | null;
202
+ /** Provider implementation id for debug disclosure only. */
203
+ implementation: string | null;
204
+ occurredAt: string;
205
+ };
206
+ export type MachineInputMember = {
207
+ id: string;
208
+ kind: "scheduled_occurrence" | "goal_continuation" | "agent_message" | "agent_steer_instruction" | "child_terminal_result";
209
+ classification: "success" | "failure" | "action_required" | "info";
210
+ sourceId: string;
211
+ summary: string;
212
+ };
213
+ /**
214
+ * One or more durable non-human inputs that joined the following agent turn.
215
+ * This is communication, not a warning or a protocol-debug payload.
216
+ */
217
+ export type MachineInputBatchItem = {
218
+ kind: "machine-input-batch";
219
+ id: string;
220
+ turnId: string | null;
221
+ members: MachineInputMember[];
222
+ occurredAt: string;
223
+ };
192
224
  /**
193
225
  * A tool call hit a missing or lapsed connection. The broker reports that
194
226
  * condition as a tool error and the turn continues; reconnecting never resumes
@@ -199,7 +231,7 @@ type NoticeItem = {
199
231
  * re-entry for an api-key one). The `reason` shapes the human copy but is never
200
232
  * shown raw.
201
233
  */
202
- type AuthNeededItem = {
234
+ export type AuthNeededItem = {
203
235
  kind: "auth-needed";
204
236
  id: string;
205
237
  turnId: string | null;
@@ -218,8 +250,8 @@ type AuthNeededItem = {
218
250
  authorizationUrl: string | null;
219
251
  occurredAt: string;
220
252
  };
221
- type TurnOutcome = "complete" | "failed" | "cancelled";
222
- type TurnEndItem = {
253
+ export type TurnOutcome = "complete" | "failed" | "cancelled";
254
+ export type TurnEndItem = {
223
255
  kind: "turn-end";
224
256
  id: string;
225
257
  turnId: string | null;
@@ -227,10 +259,10 @@ type TurnEndItem = {
227
259
  failureText: string | null;
228
260
  occurredAt: string;
229
261
  };
230
- type TimelineItem = UserMessageItem | AgentMessageItem | ReasoningItem | ToolCallItem | WorkerItem | WorkerCompletionItem | SandboxItem | SessionStatusItem | GoalItem | NoticeItem | AuthNeededItem | MemoryItem | FleetDecisionItem | TurnEndItem;
262
+ export type TimelineItem = UserMessageItem | AgentMessageItem | ReasoningItem | ToolCallItem | WorkerItem | WorkerCompletionItem | SandboxItem | SessionStatusItem | GoalItem | NoticeItem | ContextCompactionItem | MachineInputBatchItem | AuthNeededItem | MemoryItem | FleetDecisionItem | TurnEndItem;
231
263
  /** Activity items cluster between chat messages (reasoning, tools, workers, sandbox, memory). */
232
- type ActivityItem = ReasoningItem | ToolCallItem | WorkerItem | SandboxItem | MemoryItem | FleetDecisionItem;
233
- type TimelineGroup = {
264
+ export type ActivityItem = ReasoningItem | ToolCallItem | WorkerItem | SandboxItem | MemoryItem | FleetDecisionItem;
265
+ export type TimelineGroup = {
234
266
  kind: "item";
235
267
  item: TimelineItem;
236
268
  } | {
@@ -247,48 +279,6 @@ type TimelineGroup = {
247
279
  startedAt: string;
248
280
  endedAt: string;
249
281
  groups: TimelineGroup[];
282
+ /** Adjacent compaction landmark just before this fold (secondary chip facet). */
283
+ contextCompactionCount?: number;
250
284
  };
251
-
252
- /** Events that can change the authoritative prompt queue or effective control. */
253
- declare function isTurnQueueEvent(event: Pick<SessionEvent, "type">): boolean;
254
- type QueueMutationKind = "move" | "edit" | "steer" | "delete";
255
- type UseTurnQueueOptions = EmbeddedSessionClientOverride & SessionEventFeedOptions & {
256
- pollIntervalMs?: number | undefined;
257
- };
258
- type UseTurnQueueResult = {
259
- snapshot: SessionQueueSnapshot | null;
260
- /** Human/API prompts exactly in server execution order. Never client-sorted. */
261
- queue: SessionTurn[];
262
- /** Canonical pending machine inputs. Events only trigger an authoritative refresh. */
263
- pendingInputs: SessionPendingInputPreview[];
264
- /** Exact pending members projected to join an already-waiting prompt. */
265
- pendingInputAttachment: SessionQueueSnapshot["pendingInputAttachment"];
266
- effectiveControl: EffectiveSessionControl | null;
267
- /** The latest interrupted attempt has not yet durably proved physical quiescence. */
268
- stoppingPreviousAttempt: boolean;
269
- loading: boolean;
270
- error: Error | null;
271
- refresh: () => Promise<void>;
272
- moveTurn: (turnId: string, beforeTurnId: string | null) => Promise<boolean>;
273
- /** Atomically withdraw a waiting prompt into the private durable composer draft. */
274
- editTurn: (turnId: string, options: {
275
- expectedDraftRevision: number;
276
- replaceDraft: boolean;
277
- }) => Promise<ComposerDraft | null>;
278
- /** Advance the same durable waiting prompt; no duplicate prompt is created. */
279
- steerTurn: (turnId: string) => Promise<boolean>;
280
- removeTurn: (turnId: string) => Promise<boolean>;
281
- pendingByTurn: Readonly<Record<string, QueueMutationKind>>;
282
- mutationFor: (turnId: string) => QueueMutationKind | null;
283
- mutating: boolean;
284
- mutationError: Error | null;
285
- clearMutationError: () => void;
286
- };
287
- /**
288
- * The one authoritative human prompt queue. Every mutation carries the exact
289
- * server versions the operator saw and accepts only monotonic snapshots. A
290
- * conflict immediately reloads server truth; the client never invents order.
291
- */
292
- declare function useTurnQueue(sessionId: string | null | undefined, options?: UseTurnQueueOptions): UseTurnQueueResult;
293
-
294
- export { type ActivityItem as A, type GoalItem as G, type MemoryItem as M, type NoticeItem as N, type QueueMutationKind as Q, type ReasoningItem as R, type SandboxItem as S, type TimelineGroup as T, type UseTurnQueueOptions as U, type WorkerItem as W, type AgentMessageItem as a, type AuthNeededItem as b, type SessionStatusItem as c, type TimelineItem as d, type ToolCallItem as e, type TurnEndItem as f, type TurnOutcome as g, type UseTurnQueueResult as h, type UserMessageItem as i, isTurnQueueEvent as j, type WorkerCompletionItem as k, useTurnQueue as u };
@@ -0,0 +1,11 @@
1
+ import type { MachineKind, MachineMetricsSeriesResponse, MachinesResponse, MachineState, MachineView, MetricSample } from "@opengeni/sdk";
2
+ export type { MachineKind, MachineMetricsSeriesResponse, MachinesResponse, MachineState, MachineView, MetricSample, };
3
+ /**
4
+ * The three connection-status pill values the UI surfaces across the dashboard,
5
+ * the dock, and the timeline. `consent_required` / `display_unavailable` /
6
+ * `enrolling` are NOT connection states — they map onto a connection state for
7
+ * the pill and carry their own badge separately.
8
+ */
9
+ export type ConnectionStatus = "online" | "reconnecting" | "offline";
10
+ /** Project a machine `state` onto its connection-status pill value. */
11
+ export declare function connectionStatusForState(state: MachineState): ConnectionStatus;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeni/react",
3
- "version": "0.28.2",
3
+ "version": "0.32.1",
4
4
  "description": "React hooks and styled components for OpenGeni: live session streaming, chat composer, message timeline, session status, and fleet views — token-themed (CSS variables), dark-first, built on Tailwind v4 + Radix + Motion.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -39,6 +39,10 @@
39
39
  "types": "./dist/machines.d.ts",
40
40
  "import": "./dist/machines.js"
41
41
  },
42
+ "./model-policy": {
43
+ "types": "./dist/model-policy.d.ts",
44
+ "import": "./dist/model-policy.js"
45
+ },
42
46
  "./styles.css": {
43
47
  "types": "./styles/index.d.ts",
44
48
  "import": "./styles/index.css"
@@ -53,8 +57,8 @@
53
57
  "provenance": true
54
58
  },
55
59
  "scripts": {
56
- "typecheck": "tsgo --noEmit",
57
- "build": "tsup",
60
+ "typecheck": "tsc --noEmit",
61
+ "build": "bun ../../scripts/build-typescript-package.ts",
58
62
  "demo": "vite dev demo --port 3100",
59
63
  "demo:build": "vite build demo",
60
64
  "prepublishOnly": "bash ../../scripts/prepublish-guard"
@@ -66,7 +70,7 @@
66
70
  "@dnd-kit/utilities": "3.2.2",
67
71
  "@fontsource-variable/noto-sans-arabic": "5.2.10",
68
72
  "@fontsource-variable/noto-sans-jp": "5.2.10",
69
- "@opengeni/sdk": "^0.28.2",
73
+ "@opengeni/sdk": "^0.32.1",
70
74
  "clsx": "^2.1.1",
71
75
  "lucide-react": "^1.8.0",
72
76
  "motion": "^12.0.0",
package/src/client.ts CHANGED
@@ -86,6 +86,7 @@ export type SessionClientLike = Pick<
86
86
  | "updateWorkspace"
87
87
  | "setWorkspaceInferenceState"
88
88
  | "getWorkspace"
89
+ | "getWorkspaceModelCatalog"
89
90
  | "listWorkspaceControlEvents"
90
91
  | "streamWorkspaceControlEvents"
91
92
  | "getBillingUsage"