ionbase-ui 0.70.0 → 0.75.0

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 (52) hide show
  1. package/dist/components/Chart.d.ts +95 -0
  2. package/dist/components/Chart.d.ts.map +1 -0
  3. package/dist/components/Chart.js +60 -0
  4. package/dist/components/Chart.js.map +1 -0
  5. package/dist/components/SettingRow.d.ts +54 -0
  6. package/dist/components/SettingRow.d.ts.map +1 -0
  7. package/dist/components/SettingRow.js +60 -0
  8. package/dist/components/SettingRow.js.map +1 -0
  9. package/dist/components/StatTile.d.ts +65 -0
  10. package/dist/components/StatTile.d.ts.map +1 -0
  11. package/dist/components/StatTile.js +54 -0
  12. package/dist/components/StatTile.js.map +1 -0
  13. package/dist/components/agent-run.d.ts +147 -0
  14. package/dist/components/agent-run.d.ts.map +1 -0
  15. package/dist/components/agent-run.js +250 -0
  16. package/dist/components/agent-run.js.map +1 -0
  17. package/dist/components/index.d.ts +10 -0
  18. package/dist/components/index.d.ts.map +1 -1
  19. package/dist/components/index.js +16 -0
  20. package/dist/components/index.js.map +1 -1
  21. package/dist/components/use-agent-run.d.ts +65 -0
  22. package/dist/components/use-agent-run.d.ts.map +1 -0
  23. package/dist/components/use-agent-run.js +127 -0
  24. package/dist/components/use-agent-run.js.map +1 -0
  25. package/dist/figma-descriptions.json +88 -63
  26. package/dist/figma-map.json +236 -2
  27. package/dist/meta/ChartLegend.json +125 -0
  28. package/dist/meta/ChartTooltip.json +126 -0
  29. package/dist/meta/SettingRow.json +102 -0
  30. package/dist/meta/StatGroup.json +65 -0
  31. package/dist/meta/StatTile.json +163 -0
  32. package/dist/meta/components.json +595 -1
  33. package/dist/meta/contrast.json +613 -1
  34. package/dist/meta/index.json +64 -1
  35. package/dist/meta/patterns/AgentRun.json +14 -0
  36. package/dist/meta/patterns/HumanApproval.json +4 -0
  37. package/dist/meta/patterns/SettingsPanel.json +2 -1
  38. package/dist/meta/patterns/index.json +4 -1
  39. package/dist/styles/chart.css +275 -0
  40. package/dist/styles/index.css +3 -0
  41. package/dist/styles/setting-row.css +58 -0
  42. package/dist/styles/stat-tile.css +66 -0
  43. package/dist/styles/tokens/base.css +36 -8
  44. package/dist/styles/tokens/theme-dark.css +12 -0
  45. package/dist/tokens/index.d.ts +193 -40
  46. package/dist/tokens/index.d.ts.map +1 -1
  47. package/dist/tokens/index.js +157 -32
  48. package/dist/tokens/index.js.map +1 -1
  49. package/eslint-plugin/meta-data.js +9 -0
  50. package/eslint-plugin/rules/needs-accessible-name.js +14 -1
  51. package/llms.txt +19 -2
  52. package/package.json +1 -1
@@ -0,0 +1,250 @@
1
+ /**
2
+ * Agent run state, as a reducer over events.
3
+ *
4
+ * AgentActivity, ApprovalGate, StreamingText and AgentStop each render one
5
+ * state well, and none of them knows about the others. What turns "the agent
6
+ * started step 3" into the right props on all four — one step active at a
7
+ * time, a stopped run keeping what it did, an unanswered approval never
8
+ * counting as a yes — was left to every product, and every product got a
9
+ * different edge wrong. This file is that logic, once.
10
+ *
11
+ * It is plain data in, plain data out: no React, no timers. The same events
12
+ * drive a live run (from a stream, a socket, a poll) and a recorded one
13
+ * (`replayAgentRun`), and `agentRunFrom` rebuilds a finished run for a history
14
+ * page without playing it. `useAgentRun` wraps it for components.
15
+ *
16
+ * Events are JSON-serialisable on purpose, so a recording can be stored as a
17
+ * run log and a backend can emit them as-is.
18
+ */
19
+ export const initialAgentRunState = {
20
+ phase: 'idle',
21
+ steps: [],
22
+ approval: null,
23
+ output: '',
24
+ isStreaming: false,
25
+ isStopping: false,
26
+ };
27
+ const ENDED = ['finished', 'failed', 'stopped', 'expired'];
28
+ /** Whether the run has reached an end — finished, failed, stopped or expired. */
29
+ export const agentRunHasEnded = (state) => ENDED.includes(state.phase);
30
+ const upsert = (steps, id, patch) => steps.some((s) => s.id === id)
31
+ ? steps.map((s) => (s.id === id ? { ...s, ...patch } : s))
32
+ : [...steps, { id, status: 'pending', started: false, ...patch }];
33
+ /** Exactly one step is active: starting `id` finishes whichever else was. */
34
+ const closeActive = (steps, id) => steps.map((s) => s.status === 'active' && s.id !== id
35
+ ? { ...s, status: 'done' }
36
+ : s);
37
+ /** Anything still pending or active becomes skipped — nothing looks queued after an end. */
38
+ const skipUnfinished = (steps) => steps.map((s) => s.status === 'pending' || s.status === 'active'
39
+ ? { ...s, status: 'skipped' }
40
+ : s);
41
+ /**
42
+ * The whole policy. Every rule here is one the AgentRun or HumanApproval
43
+ * pattern states; the comment says which.
44
+ */
45
+ export function agentRunReducer(state, event) {
46
+ if (event.type === 'reset')
47
+ return initialAgentRunState;
48
+ // An ended run is a record. A late event from a slow stream must not
49
+ // reopen it — a "finished" run whose step flips back to active is a lie.
50
+ if (agentRunHasEnded(state))
51
+ return state;
52
+ switch (event.type) {
53
+ case 'run-started':
54
+ return {
55
+ ...initialAgentRunState,
56
+ phase: 'running',
57
+ steps: (event.steps ?? []).map((s) => ({
58
+ id: s.id,
59
+ label: s.label,
60
+ status: 'pending',
61
+ started: false,
62
+ })),
63
+ };
64
+ case 'step-started': {
65
+ // Exactly one step is active at a time (AgentRun). A producer that
66
+ // starts the next step without closing the last has finished it.
67
+ return {
68
+ ...state,
69
+ phase: state.phase === 'idle' ? 'running' : state.phase,
70
+ steps: upsert(closeActive(state.steps, event.id), event.id, {
71
+ status: 'active',
72
+ started: true,
73
+ ...(event.label !== undefined ? { label: event.label } : {}),
74
+ }),
75
+ };
76
+ }
77
+ case 'step-done':
78
+ return {
79
+ ...state,
80
+ steps: upsert(state.steps, event.id, { status: 'done' }),
81
+ };
82
+ case 'step-skipped':
83
+ return {
84
+ ...state,
85
+ steps: upsert(state.steps, event.id, { status: 'skipped' }),
86
+ };
87
+ case 'step-failed':
88
+ return {
89
+ ...state,
90
+ steps: upsert(state.steps, event.id, {
91
+ status: 'failed',
92
+ started: true,
93
+ error: event.error,
94
+ }),
95
+ };
96
+ case 'approval-requested':
97
+ return {
98
+ ...state,
99
+ phase: 'awaiting',
100
+ steps: upsert(closeActive(state.steps, event.id), event.id, {
101
+ status: 'active',
102
+ started: true,
103
+ }),
104
+ approval: { stepId: event.id, status: 'pending', isSubmitting: false },
105
+ };
106
+ case 'decision-submitted':
107
+ return state.approval?.stepId === event.id
108
+ ? {
109
+ ...state,
110
+ approval: {
111
+ ...state.approval,
112
+ isSubmitting: true,
113
+ error: undefined,
114
+ },
115
+ }
116
+ : state;
117
+ case 'decision-failed':
118
+ // The decision did not arrive, so nothing happened: the approval stays
119
+ // pending and the buttons come back (HumanApproval, error).
120
+ return state.approval?.stepId === event.id
121
+ ? {
122
+ ...state,
123
+ approval: {
124
+ ...state.approval,
125
+ isSubmitting: false,
126
+ error: event.error,
127
+ },
128
+ }
129
+ : state;
130
+ case 'approval-resolved': {
131
+ const approval = {
132
+ stepId: event.id,
133
+ status: event.decision,
134
+ resolution: event.resolution,
135
+ isSubmitting: false,
136
+ };
137
+ if (event.decision === 'expired') {
138
+ // Silence is not consent: an approval nobody answered ends the run
139
+ // without doing the thing (HumanApproval).
140
+ return {
141
+ ...state,
142
+ phase: 'expired',
143
+ approval,
144
+ isStreaming: false,
145
+ isStopping: false,
146
+ steps: skipUnfinished(state.steps),
147
+ };
148
+ }
149
+ return {
150
+ ...state,
151
+ phase: 'running',
152
+ approval,
153
+ steps: upsert(state.steps, event.id, {
154
+ status: event.decision === 'approved' ? 'done' : 'skipped',
155
+ }),
156
+ };
157
+ }
158
+ case 'output':
159
+ return {
160
+ ...state,
161
+ output: state.output + event.text,
162
+ isStreaming: true,
163
+ };
164
+ case 'output-done':
165
+ return { ...state, isStreaming: false };
166
+ case 'run-finished':
167
+ return {
168
+ ...state,
169
+ phase: 'finished',
170
+ isStreaming: false,
171
+ isStopping: false,
172
+ steps: state.steps.map((s) => s.status === 'active'
173
+ ? { ...s, status: 'done' }
174
+ : s.status === 'pending'
175
+ ? { ...s, status: 'skipped' }
176
+ : s),
177
+ };
178
+ case 'run-failed': {
179
+ // Mark the step that was running as the one that failed, keep every
180
+ // earlier step, and skip the rest (AgentRun, error).
181
+ const hasFailed = state.steps.some((s) => s.status === 'failed');
182
+ const steps = hasFailed
183
+ ? state.steps
184
+ : state.steps.map((s) => s.status === 'active' ? { ...s, status: 'failed' } : s);
185
+ return {
186
+ ...state,
187
+ phase: 'failed',
188
+ error: event.error,
189
+ isStreaming: false,
190
+ isStopping: false,
191
+ steps: skipUnfinished(steps),
192
+ };
193
+ }
194
+ case 'stop-requested':
195
+ return { ...state, isStopping: true };
196
+ case 'stop-failed':
197
+ // The run is still going, so the stop control must work again.
198
+ return { ...state, isStopping: false };
199
+ case 'run-stopped':
200
+ // Keep what was done, mark the interrupted step skipped (AgentRun,
201
+ // partial). An approval nobody answered did not happen.
202
+ return {
203
+ ...state,
204
+ phase: 'stopped',
205
+ isStreaming: false,
206
+ isStopping: false,
207
+ steps: skipUnfinished(state.steps),
208
+ approval: state.approval?.status === 'pending'
209
+ ? {
210
+ ...state.approval,
211
+ status: 'expired',
212
+ isSubmitting: false,
213
+ resolution: event.resolution ?? state.approval.resolution,
214
+ }
215
+ : state.approval,
216
+ };
217
+ }
218
+ }
219
+ /** A finished run rebuilt from its events, without playing it — for a history page. */
220
+ export const agentRunFrom = (events) => events.reduce(agentRunReducer, initialAgentRunState);
221
+ /** Steps that began, in order — what AgentActivity lists. Never planned-but-unreached ones. */
222
+ export const agentRunLog = (state) => state.steps.filter((s) => s.started);
223
+ /**
224
+ * Plays a recording into `dispatch` on timers. Returns a function that cancels
225
+ * the rest — call it on unmount, or on stop before dispatching `run-stopped`.
226
+ */
227
+ export function replayAgentRun(recording, dispatch, { speed = 1 } = {}) {
228
+ let cancelled = false;
229
+ let timer;
230
+ let i = 0;
231
+ const next = () => {
232
+ if (cancelled || i >= recording.length)
233
+ return;
234
+ const { delay, event } = recording[i];
235
+ timer = setTimeout(() => {
236
+ if (cancelled)
237
+ return;
238
+ i++;
239
+ dispatch(event);
240
+ next();
241
+ }, Math.max(0, delay / speed));
242
+ };
243
+ next();
244
+ return () => {
245
+ cancelled = true;
246
+ if (timer !== undefined)
247
+ clearTimeout(timer);
248
+ };
249
+ }
250
+ //# sourceMappingURL=agent-run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-run.js","sourceRoot":"","sources":["../../src/components/agent-run.ts"],"names":[],"mappings":"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"}
@@ -99,4 +99,14 @@ export type { DatePickerProps, DatePickerSize } from './DatePicker.js';
99
99
  export { DateRangePicker } from './DateRangePicker.js';
100
100
  export type { DateRangePickerProps, DateRangePickerSize, DateRange, DateRangePreset, } from './DateRangePicker.js';
101
101
  export type { IsoDate } from './iso-date.js';
102
+ export { StatGroup, StatTile } from './StatTile.js';
103
+ export type { StatGroupProps, StatTileProps, StatTileGoodWhen, StatTileChangeUnit, } from './StatTile.js';
104
+ export { SettingRow } from './SettingRow.js';
105
+ export type { SettingRowProps, SettingRowIds } from './SettingRow.js';
106
+ export { ChartLegend, ChartTooltip, chartAxisProps, chartGridProps, chartSeriesClass, chartTooltipProps, } from './Chart.js';
107
+ export type { ChartLegendItem, ChartLegendProps, ChartLegendShape, ChartSeries, ChartTooltipProps, ChartTooltipRow, } from './Chart.js';
108
+ export { agentRunFrom, agentRunHasEnded, agentRunLog, agentRunReducer, initialAgentRunState, replayAgentRun, } from './agent-run.js';
109
+ export type { AgentRunApproval, AgentRunEvent, AgentRunPhase, AgentRunRecording, AgentRunState, AgentRunStep, AgentRunStepStatus, ReplayAgentRunOptions, } from './agent-run.js';
110
+ export { useAgentRun } from './use-agent-run.js';
111
+ export type { UseAgentRunOptions, UseAgentRunResult } from './use-agent-run.js';
102
112
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
@@ -48,4 +48,20 @@ export { FileUpload } from './FileUpload.js';
48
48
  export { Combobox } from './Combobox.js';
49
49
  export { DatePicker } from './DatePicker.js';
50
50
  export { DateRangePicker } from './DateRangePicker.js';
51
+ export { StatGroup, StatTile } from './StatTile.js';
52
+ export { SettingRow } from './SettingRow.js';
53
+ /*
54
+ * Chart parts. IonBase does not draw charts — visx does — so besides the two
55
+ * components this exports the class names visx needs as spreadable props.
56
+ * They are values, not components; build-meta lists them as helpers.
57
+ */
58
+ export { ChartLegend, ChartTooltip, chartAxisProps, chartGridProps, chartSeriesClass, chartTooltipProps, } from './Chart.js';
59
+ /*
60
+ * Agent run state. One reducer turns what a run reports into the props
61
+ * AgentActivity, ApprovalGate, StreamingText and AgentStop take, so the
62
+ * AgentRun and HumanApproval patterns' rules live in code, once. The reducer
63
+ * and replay are server-safe; only the hook needs a client.
64
+ */
65
+ export { agentRunFrom, agentRunHasEnded, agentRunLog, agentRunReducer, initialAgentRunState, replayAgentRun, } from './agent-run.js';
66
+ export { useAgentRun } from './use-agent-run.js';
51
67
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import { type AgentRunEvent, type AgentRunRecording, type AgentRunState, type ReplayAgentRunOptions } from './agent-run.js';
2
+ export interface UseAgentRunOptions {
3
+ /**
4
+ * Stop the real run. Resolve once it has stopped; the hook then records the
5
+ * run as stopped (unless your producer already sent `run-stopped`). Throw if
6
+ * it could not be stopped, and the stop control comes back.
7
+ *
8
+ * Not needed for a replay — stopping a replay cancels it.
9
+ */
10
+ onStop?: () => void | Promise<void>;
11
+ /**
12
+ * Send an approval decision. Resolve — optionally with the resolution text,
13
+ * e.g. "Approved by Ada at 14:02" — once it is recorded. Throw if it did not
14
+ * arrive: the approval stays pending and says so, because a decision the
15
+ * server never received must not look made.
16
+ *
17
+ * Without it the approval renders without buttons, as a record.
18
+ */
19
+ onDecision?: (stepId: string, decision: 'approved' | 'rejected') => void | string | Promise<void | string>;
20
+ }
21
+ /**
22
+ * useAgentRun — run state for AgentActivity, ApprovalGate, StreamingText and
23
+ * AgentStop, from events.
24
+ *
25
+ * Feed it events with `dispatch` from however the run reports progress, or
26
+ * play a recording with `replay`. It hands back the state and props ready to
27
+ * spread, and applies the AgentRun and HumanApproval patterns' rules on the
28
+ * way: one active step, a stopped run keeps what it did, an unanswered
29
+ * approval is not a yes, a failed decision is not a decision.
30
+ */
31
+ export declare function useAgentRun(options?: UseAgentRunOptions): {
32
+ state: AgentRunState;
33
+ dispatch: (event: AgentRunEvent) => void;
34
+ reset: () => void;
35
+ replay: (recording: AgentRunRecording, replayOptions?: ReplayAgentRunOptions) => void;
36
+ /** Steps that began — what AgentActivity lists. */
37
+ log: import("./agent-run.js").AgentRunStep[];
38
+ hasEnded: boolean;
39
+ /** Show AgentStop while this is true. */
40
+ isRunning: boolean;
41
+ stop: () => Promise<void>;
42
+ approve: () => undefined;
43
+ reject: () => undefined;
44
+ /** Spread onto AgentStop. */
45
+ stopProps: {
46
+ onStop: () => undefined;
47
+ isStopping: boolean;
48
+ };
49
+ /** Spread onto StreamingText. */
50
+ outputProps: {
51
+ isStreaming: boolean;
52
+ children: string;
53
+ };
54
+ /** Spread onto the ApprovalGate for `state.approval.stepId`, with your title. */
55
+ approvalProps: {
56
+ onApprove?: (() => undefined) | undefined;
57
+ onReject?: (() => undefined) | undefined;
58
+ status: "pending" | "approved" | "rejected" | "expired";
59
+ isSubmitting: boolean;
60
+ resolution: string | undefined;
61
+ } | null;
62
+ };
63
+ export type UseAgentRunResult = ReturnType<typeof useAgentRun>;
64
+ export type { AgentRunState };
65
+ //# sourceMappingURL=use-agent-run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-agent-run.d.ts","sourceRoot":"","sources":["../../src/components/use-agent-run.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC3B,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,kBAAkB;IACjC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,CACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,UAAU,GAAG,UAAU,KAC9B,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;CAC7C;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB;;cAkFhC,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI;;wBA/D1C,iBAAiB,kBAAkB,qBAAqB;IAkElE,mDAAmD;;;IAGnD,yCAAyC;;;;;IAKzC,6BAA6B;;;;;IAE7B,iCAAiC;;;;;IAKjC,iFAAiF;;;;;;;;EAsBtF;AAED,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAC/D,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,127 @@
1
+ 'use client';
2
+ import { useCallback, useEffect, useMemo, useReducer, useRef } from 'react';
3
+ import { agentRunHasEnded, agentRunLog, agentRunReducer, initialAgentRunState, replayAgentRun, } from './agent-run.js';
4
+ /**
5
+ * useAgentRun — run state for AgentActivity, ApprovalGate, StreamingText and
6
+ * AgentStop, from events.
7
+ *
8
+ * Feed it events with `dispatch` from however the run reports progress, or
9
+ * play a recording with `replay`. It hands back the state and props ready to
10
+ * spread, and applies the AgentRun and HumanApproval patterns' rules on the
11
+ * way: one active step, a stopped run keeps what it did, an unanswered
12
+ * approval is not a yes, a failed decision is not a decision.
13
+ */
14
+ export function useAgentRun(options = {}) {
15
+ const [state, dispatch] = useReducer(agentRunReducer, initialAgentRunState);
16
+ // Async handlers read the latest state and options, not the render's.
17
+ const stateRef = useRef(state);
18
+ stateRef.current = state;
19
+ const optionsRef = useRef(options);
20
+ optionsRef.current = options;
21
+ const cancelReplay = useRef(null);
22
+ useEffect(() => () => cancelReplay.current?.(), []);
23
+ const reset = useCallback(() => {
24
+ cancelReplay.current?.();
25
+ cancelReplay.current = null;
26
+ dispatch({ type: 'reset' });
27
+ }, []);
28
+ const replay = useCallback((recording, replayOptions) => {
29
+ reset();
30
+ const cancel = replayAgentRun(recording, dispatch, replayOptions);
31
+ cancelReplay.current = () => {
32
+ cancel();
33
+ cancelReplay.current = null;
34
+ };
35
+ }, [reset]);
36
+ const stop = useCallback(async () => {
37
+ const s = stateRef.current;
38
+ if (agentRunHasEnded(s) || s.isStopping || s.phase === 'idle')
39
+ return;
40
+ dispatch({ type: 'stop-requested' });
41
+ if (cancelReplay.current) {
42
+ cancelReplay.current();
43
+ dispatch({ type: 'run-stopped' });
44
+ return;
45
+ }
46
+ try {
47
+ await optionsRef.current.onStop?.();
48
+ }
49
+ catch {
50
+ dispatch({ type: 'stop-failed' });
51
+ return;
52
+ }
53
+ dispatch({ type: 'run-stopped' });
54
+ }, []);
55
+ const decide = useCallback(async (decision) => {
56
+ const approval = stateRef.current.approval;
57
+ const send = optionsRef.current.onDecision;
58
+ if (!send || !approval || approval.status !== 'pending')
59
+ return;
60
+ if (approval.isSubmitting)
61
+ return;
62
+ const id = approval.stepId;
63
+ dispatch({ type: 'decision-submitted', id });
64
+ try {
65
+ const resolution = await send(id, decision);
66
+ dispatch({
67
+ type: 'approval-resolved',
68
+ id,
69
+ decision,
70
+ resolution: typeof resolution === 'string' ? resolution : undefined,
71
+ });
72
+ }
73
+ catch (e) {
74
+ dispatch({
75
+ type: 'decision-failed',
76
+ id,
77
+ error: e instanceof Error ? e.message : String(e),
78
+ });
79
+ }
80
+ }, []);
81
+ const approve = useCallback(() => void decide('approved'), [decide]);
82
+ const reject = useCallback(() => void decide('rejected'), [decide]);
83
+ const onStop = useCallback(() => void stop(), [stop]);
84
+ const hasEnded = agentRunHasEnded(state);
85
+ const interactive = options.onDecision !== undefined;
86
+ return useMemo(() => ({
87
+ state,
88
+ dispatch: dispatch,
89
+ reset,
90
+ replay,
91
+ /** Steps that began — what AgentActivity lists. */
92
+ log: agentRunLog(state),
93
+ hasEnded,
94
+ /** Show AgentStop while this is true. */
95
+ isRunning: state.phase === 'running' || state.phase === 'awaiting',
96
+ stop,
97
+ approve,
98
+ reject,
99
+ /** Spread onto AgentStop. */
100
+ stopProps: { onStop, isStopping: state.isStopping },
101
+ /** Spread onto StreamingText. */
102
+ outputProps: {
103
+ isStreaming: state.isStreaming,
104
+ children: state.output,
105
+ },
106
+ /** Spread onto the ApprovalGate for `state.approval.stepId`, with your title. */
107
+ approvalProps: state.approval && {
108
+ status: state.approval.status,
109
+ isSubmitting: state.approval.isSubmitting,
110
+ resolution: state.approval.resolution,
111
+ ...(interactive && state.approval.status === 'pending'
112
+ ? { onApprove: approve, onReject: reject }
113
+ : {}),
114
+ },
115
+ }), [
116
+ state,
117
+ reset,
118
+ replay,
119
+ hasEnded,
120
+ stop,
121
+ approve,
122
+ reject,
123
+ onStop,
124
+ interactive,
125
+ ]);
126
+ }
127
+ //# sourceMappingURL=use-agent-run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-agent-run.js","sourceRoot":"","sources":["../../src/components/use-agent-run.ts"],"names":[],"mappings":"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"}