@adonis-agora/agent 0.70.1 → 0.72.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.
- package/CHANGELOG.md +22 -0
- package/dist/providers/agent_provider.d.ts.map +1 -1
- package/dist/providers/agent_provider.js +3 -0
- package/dist/providers/agent_provider.js.map +1 -1
- package/dist/src/a2ui/adapter.d.ts +45 -0
- package/dist/src/a2ui/adapter.d.ts.map +1 -0
- package/dist/src/a2ui/adapter.js +291 -0
- package/dist/src/a2ui/adapter.js.map +1 -0
- package/dist/src/a2ui/core.d.ts +258 -0
- package/dist/src/a2ui/core.d.ts.map +1 -0
- package/dist/src/a2ui/core.js +635 -0
- package/dist/src/a2ui/core.js.map +1 -0
- package/dist/src/a2ui/index.d.ts +10 -0
- package/dist/src/a2ui/index.d.ts.map +1 -0
- package/dist/src/a2ui/index.js +10 -0
- package/dist/src/a2ui/index.js.map +1 -0
- package/dist/src/ag-ui/adapter.d.ts +14 -0
- package/dist/src/ag-ui/adapter.d.ts.map +1 -1
- package/dist/src/ag-ui/adapter.js +34 -2
- package/dist/src/ag-ui/adapter.js.map +1 -1
- package/dist/src/ag-ui/core/encoder.d.ts +7 -0
- package/dist/src/ag-ui/core/encoder.d.ts.map +1 -1
- package/dist/src/ag-ui/core/encoder.js +12 -1
- package/dist/src/ag-ui/core/encoder.js.map +1 -1
- package/dist/src/ag-ui/core/input.d.ts +7 -0
- package/dist/src/ag-ui/core/input.d.ts.map +1 -1
- package/dist/src/ag-ui/core/input.js +7 -0
- package/dist/src/ag-ui/core/input.js.map +1 -1
- package/dist/src/ag-ui/core/types.d.ts +8 -0
- package/dist/src/ag-ui/core/types.d.ts.map +1 -1
- package/dist/src/ag-ui/core/types.js.map +1 -1
- package/dist/src/genui/actions.d.ts +96 -0
- package/dist/src/genui/actions.d.ts.map +1 -0
- package/dist/src/genui/actions.js +192 -0
- package/dist/src/genui/actions.js.map +1 -0
- package/dist/src/genui/builtins.d.ts +1 -1
- package/dist/src/genui/builtins.d.ts.map +1 -1
- package/dist/src/genui/builtins.js +1 -0
- package/dist/src/genui/builtins.js.map +1 -1
- package/dist/src/genui/catalog.d.ts +9 -0
- package/dist/src/genui/catalog.d.ts.map +1 -1
- package/dist/src/genui/catalog.js +2 -0
- package/dist/src/genui/catalog.js.map +1 -1
- package/dist/src/genui/index.d.ts +9 -0
- package/dist/src/genui/index.d.ts.map +1 -1
- package/dist/src/genui/index.js +6 -2
- package/dist/src/genui/index.js.map +1 -1
- package/dist/src/genui/progressive.d.ts +3 -1
- package/dist/src/genui/progressive.d.ts.map +1 -1
- package/dist/src/genui/progressive.js +27 -3
- package/dist/src/genui/progressive.js.map +1 -1
- package/dist/src/genui/public.d.ts +2 -0
- package/dist/src/genui/public.d.ts.map +1 -1
- package/dist/src/genui/public.js +2 -0
- package/dist/src/genui/public.js.map +1 -1
- package/dist/src/genui/sandbox.d.ts +169 -0
- package/dist/src/genui/sandbox.d.ts.map +1 -0
- package/dist/src/genui/sandbox.js +307 -0
- package/dist/src/genui/sandbox.js.map +1 -0
- package/dist/src/genui/tools.d.ts.map +1 -1
- package/dist/src/genui/tools.js +36 -0
- package/dist/src/genui/tools.js.map +1 -1
- package/dist/src/genui/tree.d.ts +2 -2
- package/dist/src/genui/tree.d.ts.map +1 -1
- package/dist/src/genui/tree.js +24 -6
- package/dist/src/genui/tree.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/react/core/components/message-item.d.ts.map +1 -1
- package/dist/src/react/core/components/message-item.js +6 -3
- package/dist/src/react/core/components/message-item.js.map +1 -1
- package/dist/src/react/core/genui/generative-ui.d.ts +19 -2
- package/dist/src/react/core/genui/generative-ui.d.ts.map +1 -1
- package/dist/src/react/core/genui/generative-ui.js +14 -3
- package/dist/src/react/core/genui/generative-ui.js.map +1 -1
- package/dist/src/react/core/genui/index.d.ts +4 -1
- package/dist/src/react/core/genui/index.d.ts.map +1 -1
- package/dist/src/react/core/genui/index.js +4 -1
- package/dist/src/react/core/genui/index.js.map +1 -1
- package/dist/src/react/core/genui/sandbox.d.ts +91 -0
- package/dist/src/react/core/genui/sandbox.d.ts.map +1 -0
- package/dist/src/react/core/genui/sandbox.js +242 -0
- package/dist/src/react/core/genui/sandbox.js.map +1 -0
- package/dist/src/react/core/genui/types.d.ts +6 -0
- package/dist/src/react/core/genui/types.d.ts.map +1 -1
- package/dist/src/react/core/genui/ui-action-chip.d.ts +21 -0
- package/dist/src/react/core/genui/ui-action-chip.d.ts.map +1 -0
- package/dist/src/react/core/genui/ui-action-chip.js +18 -0
- package/dist/src/react/core/genui/ui-action-chip.js.map +1 -0
- package/dist/src/react/core/index.d.ts +1 -1
- package/dist/src/react/core/index.d.ts.map +1 -1
- package/dist/src/react/core/index.js.map +1 -1
- package/dist/src/react/core/transcript/index.d.ts +1 -1
- package/dist/src/react/core/transcript/index.d.ts.map +1 -1
- package/dist/src/react/core/transcript/index.js.map +1 -1
- package/dist/src/react/core/transcript/model.d.ts +9 -0
- package/dist/src/react/core/transcript/model.d.ts.map +1 -1
- package/dist/src/react/core/transcript/model.js +3 -0
- package/dist/src/react/core/transcript/model.js.map +1 -1
- package/dist/src/react/core/transcript/use-chat-transcript.d.ts +6 -1
- package/dist/src/react/core/transcript/use-chat-transcript.d.ts.map +1 -1
- package/dist/src/react/core/transcript/use-chat-transcript.js +8 -1
- package/dist/src/react/core/transcript/use-chat-transcript.js.map +1 -1
- package/dist/src/react/core/use-agent-chat.d.ts +3 -0
- package/dist/src/react/core/use-agent-chat.d.ts.map +1 -1
- package/dist/src/react/core/use-agent-chat.js +8 -0
- package/dist/src/react/core/use-agent-chat.js.map +1 -1
- package/dist/src/spi/protocol-adapter.d.ts +3 -0
- package/dist/src/spi/protocol-adapter.d.ts.map +1 -1
- package/package.json +30 -22
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
2
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
3
|
+
import { type UiAction } from '../../../genui/actions.js';
|
|
4
|
+
import { type SandboxPolicy, type SandboxProps } from '../../../genui/sandbox.js';
|
|
5
|
+
import type { JsonSchema } from '../../../genui/schema.js';
|
|
6
|
+
import type { GenuiRenderer } from './types.js';
|
|
7
|
+
/** What a drawn component calls to hand an action back to the agent (the next user turn). */
|
|
8
|
+
export type GenuiActionHandler = (action: UiAction) => void;
|
|
9
|
+
/**
|
|
10
|
+
* Where UI actions go — a sandbox's `agent.send(…)`, an app component's button. Typically the chat's
|
|
11
|
+
* `sendUiAction`, which sends the action as the next user message:
|
|
12
|
+
*
|
|
13
|
+
* ```tsx
|
|
14
|
+
* const chat = useAgentChat()
|
|
15
|
+
* <GenuiActionProvider onAction={chat.sendUiAction}>…</GenuiActionProvider>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare function GenuiActionProvider({ onAction, children, }: {
|
|
19
|
+
onAction: GenuiActionHandler;
|
|
20
|
+
children?: ReactNode;
|
|
21
|
+
}): import("react").JSX.Element;
|
|
22
|
+
/** The enclosing {@link GenuiActionProvider}'s handler, or `null` outside one. */
|
|
23
|
+
export declare function useGenuiAction(): GenuiActionHandler | null;
|
|
24
|
+
/** Why the host refused something a sandbox sent. */
|
|
25
|
+
export type SandboxRefusal = {
|
|
26
|
+
reason: 'too-large';
|
|
27
|
+
bytes: number;
|
|
28
|
+
limit: number;
|
|
29
|
+
} | {
|
|
30
|
+
reason: 'too-soon';
|
|
31
|
+
waitMs: number;
|
|
32
|
+
} | {
|
|
33
|
+
reason: 'too-many';
|
|
34
|
+
limit: number;
|
|
35
|
+
} | {
|
|
36
|
+
reason: 'not-json';
|
|
37
|
+
} | {
|
|
38
|
+
reason: 'invalid';
|
|
39
|
+
issues: {
|
|
40
|
+
path: (string | number)[];
|
|
41
|
+
message: string;
|
|
42
|
+
}[];
|
|
43
|
+
} | {
|
|
44
|
+
reason: 'declined';
|
|
45
|
+
} | {
|
|
46
|
+
reason: 'no-handler';
|
|
47
|
+
};
|
|
48
|
+
export interface SandboxRendererOptions {
|
|
49
|
+
/**
|
|
50
|
+
* The policy the frame runs under. Default: the one the catalog's definition carries
|
|
51
|
+
* (`defineSandbox({ policy })`, read through the enclosing `GenuiProvider`'s catalog), else none
|
|
52
|
+
* — no network, the default limits.
|
|
53
|
+
*/
|
|
54
|
+
policy?: SandboxPolicy;
|
|
55
|
+
/** Checks the values of every `agent.send(…)` (a Zod object, any Standard Schema, or a JSON Schema). */
|
|
56
|
+
schema?: StandardSchemaV1 | JsonSchema;
|
|
57
|
+
/** Last word on an action before it is sent — e.g. a confirmation dialog. Falsy → dropped. */
|
|
58
|
+
confirm?: (action: UiAction) => boolean | Promise<boolean>;
|
|
59
|
+
/** Where actions go. Default: the enclosing {@link GenuiActionProvider}. */
|
|
60
|
+
onAction?: GenuiActionHandler;
|
|
61
|
+
/** Something the frame sent was refused (see {@link SandboxRefusal}). */
|
|
62
|
+
onRefused?: (refusal: SandboxRefusal) => void;
|
|
63
|
+
/** An uncaught error in the generated code. */
|
|
64
|
+
onError?: (message: string) => void;
|
|
65
|
+
/** What to draw while nothing is drawable yet. Default: a busy box of `initialHeight` with the placeholder lines. */
|
|
66
|
+
placeholder?: (state: {
|
|
67
|
+
height: number;
|
|
68
|
+
messages: string[];
|
|
69
|
+
title?: string;
|
|
70
|
+
}) => ReactNode;
|
|
71
|
+
className?: string;
|
|
72
|
+
style?: CSSProperties;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* A renderer for the sandbox component (`Sandbox`): the model's HTML, CSS and JS in an isolated
|
|
76
|
+
* iframe — `srcdoc`, `sandbox="allow-scripts"` (never `allow-same-origin`, so its origin is opaque
|
|
77
|
+
* and it reaches no cookie, storage or DOM of the page), a strict CSP, sized to its content.
|
|
78
|
+
*
|
|
79
|
+
* While the model writes it (a tree node flagged `incomplete`): a placeholder of `initialHeight`,
|
|
80
|
+
* then a preview of the styled markup (no code runs), then — once the markup is done — the live
|
|
81
|
+
* view, whose `jsFunctions` and `jsExpressions` run as each one closes (only for a node the server
|
|
82
|
+
* trimmed; anything else runs its code once complete).
|
|
83
|
+
*
|
|
84
|
+
* The frame's only way out is `agent.send(values)`. The host accepts it only from this frame's
|
|
85
|
+
* window, with this frame's token, from the opaque origin, within the size, rate and count limits,
|
|
86
|
+
* past `schema` and `confirm` — and hands it on as a {@link UiAction}.
|
|
87
|
+
*/
|
|
88
|
+
export declare function createSandboxRenderer(options?: SandboxRendererOptions): GenuiRenderer<SandboxProps>;
|
|
89
|
+
/** The sandbox renderer with its defaults — register it as `Sandbox` in a genui registry. */
|
|
90
|
+
export declare const SandboxView: GenuiRenderer<SandboxProps>;
|
|
91
|
+
//# sourceMappingURL=sandbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/genui/sandbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AACf,OAAO,EAGL,KAAK,QAAQ,EAEd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,YAAY,EAElB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,6FAA6F;AAC7F,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,CAAC;AAE5D;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,+BAEA;AAED,kFAAkF;AAClF,wBAAgB,cAAc,IAAI,kBAAkB,GAAG,IAAI,CAE1D;AAED,qDAAqD;AACrD,MAAM,MAAM,cAAc,GACtB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GACtB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE;QAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,GAC/E;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GACtB;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC;AAE7B,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,wGAAwG;IACxG,MAAM,CAAC,EAAE,gBAAgB,GAAG,UAAU,CAAC;IACvC,8FAA8F;IAC9F,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,yEAAyE;IACzE,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,CAAC;IAC9C,+CAA+C;IAC/C,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,qHAAqH;IACrH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,SAAS,CAAC;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AA+CD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,GAAE,sBAA2B,GACnC,aAAa,CAAC,YAAY,CAAC,CAuM7B;AAOD,6FAA6F;AAC7F,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,YAAY,CAA2B,CAAC"}
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
|
|
3
|
+
import { jsonByteLength, sandboxAction, validateUiActionContext, } from '../../../genui/actions.js';
|
|
4
|
+
import { buildSandboxDocument, previewHtml, SANDBOX_DEFAULTS, SANDBOX_IFRAME_FLAGS, SANDBOX_MESSAGE, sandboxPolicyOf, } from '../../../genui/sandbox.js';
|
|
5
|
+
import { GenuiActionContext, useGenuiNode, useGenuiProvider } from './generative-ui.js';
|
|
6
|
+
/**
|
|
7
|
+
* Where UI actions go — a sandbox's `agent.send(…)`, an app component's button. Typically the chat's
|
|
8
|
+
* `sendUiAction`, which sends the action as the next user message:
|
|
9
|
+
*
|
|
10
|
+
* ```tsx
|
|
11
|
+
* const chat = useAgentChat()
|
|
12
|
+
* <GenuiActionProvider onAction={chat.sendUiAction}>…</GenuiActionProvider>
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function GenuiActionProvider({ onAction, children, }) {
|
|
16
|
+
return _jsx(GenuiActionContext.Provider, { value: onAction, children: children });
|
|
17
|
+
}
|
|
18
|
+
/** The enclosing {@link GenuiActionProvider}'s handler, or `null` outside one. */
|
|
19
|
+
export function useGenuiAction() {
|
|
20
|
+
return useContext(GenuiActionContext);
|
|
21
|
+
}
|
|
22
|
+
function randomToken() {
|
|
23
|
+
const bytes = new Uint8Array(16);
|
|
24
|
+
globalThis.crypto.getRandomValues(bytes);
|
|
25
|
+
return Array.from(bytes, (byte) => byte.toString(16).padStart(2, '0')).join('');
|
|
26
|
+
}
|
|
27
|
+
function DefaultPlaceholder({ height, messages, title, }) {
|
|
28
|
+
const [index, setIndex] = useState(0);
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
if (messages.length < 2)
|
|
31
|
+
return;
|
|
32
|
+
const timer = setInterval(() => setIndex((value) => (value + 1) % messages.length), 1800);
|
|
33
|
+
return () => clearInterval(timer);
|
|
34
|
+
}, [messages.length]);
|
|
35
|
+
const line = messages[index % Math.max(1, messages.length)] ?? 'Building the view…';
|
|
36
|
+
return (_jsx("div", { role: "status", "aria-busy": "true", "data-genui-skeleton": "", "data-testid": "sandbox-placeholder", "data-sandbox-phase": "placeholder", style: {
|
|
37
|
+
height,
|
|
38
|
+
display: 'flex',
|
|
39
|
+
alignItems: 'center',
|
|
40
|
+
justifyContent: 'center',
|
|
41
|
+
border: '1px dashed rgba(127,127,127,.35)',
|
|
42
|
+
borderRadius: 8,
|
|
43
|
+
color: 'rgba(90,90,90,.9)',
|
|
44
|
+
fontSize: 13,
|
|
45
|
+
}, children: title !== undefined ? `${title} — ${line}` : line }));
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* A renderer for the sandbox component (`Sandbox`): the model's HTML, CSS and JS in an isolated
|
|
49
|
+
* iframe — `srcdoc`, `sandbox="allow-scripts"` (never `allow-same-origin`, so its origin is opaque
|
|
50
|
+
* and it reaches no cookie, storage or DOM of the page), a strict CSP, sized to its content.
|
|
51
|
+
*
|
|
52
|
+
* While the model writes it (a tree node flagged `incomplete`): a placeholder of `initialHeight`,
|
|
53
|
+
* then a preview of the styled markup (no code runs), then — once the markup is done — the live
|
|
54
|
+
* view, whose `jsFunctions` and `jsExpressions` run as each one closes (only for a node the server
|
|
55
|
+
* trimmed; anything else runs its code once complete).
|
|
56
|
+
*
|
|
57
|
+
* The frame's only way out is `agent.send(values)`. The host accepts it only from this frame's
|
|
58
|
+
* window, with this frame's token, from the opaque origin, within the size, rate and count limits,
|
|
59
|
+
* past `schema` and `confirm` — and hands it on as a {@link UiAction}.
|
|
60
|
+
*/
|
|
61
|
+
export function createSandboxRenderer(options = {}) {
|
|
62
|
+
function SandboxView(props) {
|
|
63
|
+
const node = useGenuiNode();
|
|
64
|
+
const provided = useGenuiProvider();
|
|
65
|
+
const contextAction = useGenuiAction();
|
|
66
|
+
const definition = provided?.catalog?.get?.(node?.type ?? 'Sandbox');
|
|
67
|
+
const policy = useMemo(() => options.policy ?? sandboxPolicyOf(definition) ?? {}, [definition]);
|
|
68
|
+
const incomplete = node?.incomplete === true;
|
|
69
|
+
// The server drops half-written code from what it previews (`sandboxPartialProps`); props
|
|
70
|
+
// from anywhere else may hold it, so their code waits for the whole view.
|
|
71
|
+
const trimmed = incomplete && node?.streamSafe === true;
|
|
72
|
+
const token = useMemo(randomToken, []);
|
|
73
|
+
const frame = useRef(null);
|
|
74
|
+
const ready = useRef(false);
|
|
75
|
+
const ran = useRef({ functions: false, expressions: 0 });
|
|
76
|
+
const sends = useRef({ count: 0, last: 0 });
|
|
77
|
+
const initial = clampHeight(props.initialHeight ?? SANDBOX_DEFAULTS.initialHeight, policy);
|
|
78
|
+
// The content's own height once the frame has reported it; the declared one until then.
|
|
79
|
+
const [measured, setMeasured] = useState(null);
|
|
80
|
+
const height = measured ?? initial;
|
|
81
|
+
// Mounted while the model was still writing: code arrives by message, never inlined.
|
|
82
|
+
const streamedIn = useRef(incomplete);
|
|
83
|
+
const hasMarkup = typeof props.html === 'string' && props.html.length > 0;
|
|
84
|
+
const markupDone = !incomplete || props.jsFunctions !== undefined || props.jsExpressions !== undefined;
|
|
85
|
+
const phase = !incomplete
|
|
86
|
+
? 'live'
|
|
87
|
+
: markupDone && hasMarkup && trimmed
|
|
88
|
+
? 'live'
|
|
89
|
+
: props.css !== undefined || hasMarkup
|
|
90
|
+
? 'preview'
|
|
91
|
+
: 'placeholder';
|
|
92
|
+
const hostOrigin = typeof window === 'undefined' ? '' : window.location.origin;
|
|
93
|
+
const inlineJs = !streamedIn.current;
|
|
94
|
+
const css = props.css;
|
|
95
|
+
const html = props.html;
|
|
96
|
+
// The live document is built once per markup: code that arrives later is posted in, so the
|
|
97
|
+
// frame (and what the user did in it) stays.
|
|
98
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: rebuilt on the markup only, see above
|
|
99
|
+
const srcDoc = useMemo(() => {
|
|
100
|
+
if (phase === 'placeholder' || hostOrigin === '')
|
|
101
|
+
return '';
|
|
102
|
+
return phase === 'preview'
|
|
103
|
+
? buildSandboxDocument({}, { token, hostOrigin, policy, mode: 'preview' })
|
|
104
|
+
: buildSandboxDocument(props, { token, hostOrigin, policy, mode: 'live', inlineJs });
|
|
105
|
+
}, [phase, token, hostOrigin, css, html, inlineJs, policy]);
|
|
106
|
+
const post = useCallback((message) => {
|
|
107
|
+
frame.current?.contentWindow?.postMessage({ ...message, token }, '*');
|
|
108
|
+
}, [token]);
|
|
109
|
+
const runPending = useCallback(() => {
|
|
110
|
+
if (!ready.current || inlineJs || phase !== 'live')
|
|
111
|
+
return;
|
|
112
|
+
if (!trimmed && incomplete)
|
|
113
|
+
return;
|
|
114
|
+
const done = ran.current;
|
|
115
|
+
if (!done.functions && typeof props.jsFunctions === 'string') {
|
|
116
|
+
post({ type: SANDBOX_MESSAGE.run, code: props.jsFunctions });
|
|
117
|
+
done.functions = true;
|
|
118
|
+
}
|
|
119
|
+
// Expressions call the functions: while the model writes, wait for them — unless it has
|
|
120
|
+
// already moved on to the expressions (it wrote no functions).
|
|
121
|
+
if (!done.functions && incomplete && props.jsExpressions === undefined)
|
|
122
|
+
return;
|
|
123
|
+
const expressions = props.jsExpressions ?? [];
|
|
124
|
+
while (done.expressions < expressions.length) {
|
|
125
|
+
const code = expressions[done.expressions];
|
|
126
|
+
done.expressions += 1;
|
|
127
|
+
if (typeof code === 'string')
|
|
128
|
+
post({ type: SANDBOX_MESSAGE.run, code });
|
|
129
|
+
}
|
|
130
|
+
}, [inlineJs, phase, trimmed, incomplete, props.jsFunctions, props.jsExpressions, post]);
|
|
131
|
+
const preview = useCallback(() => {
|
|
132
|
+
if (!ready.current || phase !== 'preview')
|
|
133
|
+
return;
|
|
134
|
+
post({ type: SANDBOX_MESSAGE.render, css: css ?? '', html: previewHtml(html ?? '') });
|
|
135
|
+
}, [phase, css, html, post]);
|
|
136
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: a new document starts from nothing
|
|
137
|
+
useEffect(() => {
|
|
138
|
+
ready.current = false;
|
|
139
|
+
ran.current = { functions: false, expressions: 0 };
|
|
140
|
+
}, [srcDoc]);
|
|
141
|
+
useEffect(() => {
|
|
142
|
+
preview();
|
|
143
|
+
runPending();
|
|
144
|
+
}, [preview, runPending]);
|
|
145
|
+
const onAction = options.onAction ?? contextAction;
|
|
146
|
+
const title = props.title;
|
|
147
|
+
const nodeId = node?.id;
|
|
148
|
+
const send = useCallback(async (payload) => {
|
|
149
|
+
const limits = sends.current;
|
|
150
|
+
const maxSends = policy.maxSends ?? SANDBOX_DEFAULTS.maxSends;
|
|
151
|
+
if (limits.count >= maxSends)
|
|
152
|
+
return options.onRefused?.({ reason: 'too-many', limit: maxSends });
|
|
153
|
+
const now = Date.now();
|
|
154
|
+
const interval = policy.minSendIntervalMs ?? SANDBOX_DEFAULTS.minSendIntervalMs;
|
|
155
|
+
if (limits.last > 0 && now - limits.last < interval) {
|
|
156
|
+
return options.onRefused?.({
|
|
157
|
+
reason: 'too-soon',
|
|
158
|
+
waitMs: interval - (now - limits.last),
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
const bytes = jsonByteLength(payload);
|
|
162
|
+
if (bytes === undefined)
|
|
163
|
+
return options.onRefused?.({ reason: 'not-json' });
|
|
164
|
+
const limit = policy.maxPayloadBytes ?? SANDBOX_DEFAULTS.maxPayloadBytes;
|
|
165
|
+
if (bytes > limit)
|
|
166
|
+
return options.onRefused?.({ reason: 'too-large', bytes, limit });
|
|
167
|
+
limits.last = now;
|
|
168
|
+
let action = sandboxAction(payload, {
|
|
169
|
+
...(nodeId !== undefined ? { componentId: nodeId } : {}),
|
|
170
|
+
...(title !== undefined ? { title } : {}),
|
|
171
|
+
});
|
|
172
|
+
if (options.schema !== undefined) {
|
|
173
|
+
const checked = await validateUiActionContext(action, options.schema);
|
|
174
|
+
if (!checked.ok)
|
|
175
|
+
return options.onRefused?.({ reason: 'invalid', issues: checked.issues });
|
|
176
|
+
action = { ...action, context: checked.context };
|
|
177
|
+
}
|
|
178
|
+
if (options.confirm !== undefined && !(await options.confirm(action))) {
|
|
179
|
+
return options.onRefused?.({ reason: 'declined' });
|
|
180
|
+
}
|
|
181
|
+
if (onAction === null || onAction === undefined)
|
|
182
|
+
return options.onRefused?.({ reason: 'no-handler' });
|
|
183
|
+
limits.count += 1;
|
|
184
|
+
onAction(action);
|
|
185
|
+
}, [policy, nodeId, title, onAction]);
|
|
186
|
+
useEffect(() => {
|
|
187
|
+
if (phase === 'placeholder')
|
|
188
|
+
return;
|
|
189
|
+
const listener = (event) => {
|
|
190
|
+
// Only this frame's window, from its opaque origin, with its token.
|
|
191
|
+
if (frame.current === null || event.source !== frame.current.contentWindow)
|
|
192
|
+
return;
|
|
193
|
+
if (event.origin !== 'null')
|
|
194
|
+
return;
|
|
195
|
+
const data = event.data;
|
|
196
|
+
if (data === null || typeof data !== 'object' || data.token !== token)
|
|
197
|
+
return;
|
|
198
|
+
switch (data.type) {
|
|
199
|
+
case SANDBOX_MESSAGE.ready:
|
|
200
|
+
ready.current = true;
|
|
201
|
+
preview();
|
|
202
|
+
runPending();
|
|
203
|
+
return;
|
|
204
|
+
case SANDBOX_MESSAGE.resize:
|
|
205
|
+
if (typeof data.height === 'number' && Number.isFinite(data.height)) {
|
|
206
|
+
setMeasured(clampHeight(data.height, policy));
|
|
207
|
+
}
|
|
208
|
+
return;
|
|
209
|
+
case SANDBOX_MESSAGE.send:
|
|
210
|
+
void send(data.payload);
|
|
211
|
+
return;
|
|
212
|
+
case SANDBOX_MESSAGE.error:
|
|
213
|
+
options.onError?.(typeof data.message === 'string' ? data.message.slice(0, 500) : 'error');
|
|
214
|
+
return;
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
window.addEventListener('message', listener);
|
|
218
|
+
return () => window.removeEventListener('message', listener);
|
|
219
|
+
}, [phase, token, policy, preview, runPending, send]);
|
|
220
|
+
const messages = (props.placeholderMessages ?? []).filter((line) => typeof line === 'string');
|
|
221
|
+
if (phase === 'placeholder' || hostOrigin === '') {
|
|
222
|
+
const state = { height: initial, messages, ...(title !== undefined ? { title } : {}) };
|
|
223
|
+
return (_jsx(_Fragment, { children: options.placeholder ? options.placeholder(state) : _jsx(DefaultPlaceholder, { ...state }) }));
|
|
224
|
+
}
|
|
225
|
+
return (_jsx("iframe", { ref: frame, title: title ?? 'Interactive view', srcDoc: srcDoc, sandbox: SANDBOX_IFRAME_FLAGS, referrerPolicy: "no-referrer", allow: "", "data-testid": "sandbox-frame", "data-sandbox-phase": phase, "aria-busy": incomplete || undefined, className: options.className, style: {
|
|
226
|
+
display: 'block',
|
|
227
|
+
width: '100%',
|
|
228
|
+
border: 0,
|
|
229
|
+
height,
|
|
230
|
+
transition: 'height 120ms ease-out',
|
|
231
|
+
...options.style,
|
|
232
|
+
} }, phase));
|
|
233
|
+
}
|
|
234
|
+
return SandboxView;
|
|
235
|
+
}
|
|
236
|
+
function clampHeight(value, policy) {
|
|
237
|
+
const max = policy.maxHeight ?? SANDBOX_DEFAULTS.maxHeight;
|
|
238
|
+
return Math.max(24, Math.min(max, Math.ceil(value)));
|
|
239
|
+
}
|
|
240
|
+
/** The sandbox renderer with its defaults — register it as `Sandbox` in a genui registry. */
|
|
241
|
+
export const SandboxView = createSandboxRenderer();
|
|
242
|
+
//# sourceMappingURL=sandbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../../../../src/react/core/genui/sandbox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,12 @@ export interface GenuiNodeState {
|
|
|
44
44
|
incomplete: boolean;
|
|
45
45
|
/** The node is a placeholder for a component that is only drawn whole (`streaming: 'complete'`). */
|
|
46
46
|
held: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* The node came from a server preview (a partial `genui:tree` frame): the server already dropped
|
|
49
|
+
* what its component must not show half written (`partialProps`). Unset for props from anywhere
|
|
50
|
+
* else (a client parsing tool arguments itself), which a renderer should treat as raw.
|
|
51
|
+
*/
|
|
52
|
+
streamSafe?: boolean;
|
|
47
53
|
}
|
|
48
54
|
/**
|
|
49
55
|
* An app's renderer for one component: it receives the component's props spread, plus `children`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/genui/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtD,wHAAwH;AACxH,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAEjD,wHAAwH;AACxH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,IAAI,CAAC;CAChB;AAED,qFAAqF;AACrF,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,yEAAyE;IACzE,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,qGAAqG;IACrG,IAAI,CAAC,EAAE,IAAI,CAAC;CACb;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,qGAAqG;IACrG,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,yFAAyF;IACzF,UAAU,EAAE,OAAO,CAAC;IACpB,oGAAoG;IACpG,IAAI,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/genui/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import { type UiActionMessage } from '../../../genui/actions.js';
|
|
3
|
+
export interface UiActionChipProps {
|
|
4
|
+
/** The action: a transcript block's `uiAction`, or a user message's text (read with `readUiActionText`). */
|
|
5
|
+
action: UiActionMessage | string;
|
|
6
|
+
/** Plain values shown after the sentence. Default 3; `0` shows the sentence alone. */
|
|
7
|
+
maxValues?: number;
|
|
8
|
+
className?: string;
|
|
9
|
+
/** Replaces the default content (the summary line). */
|
|
10
|
+
children?: ReactNode;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* A user message that is a UI action — a sandbox's `agent.send`, a component's button — drawn as a
|
|
14
|
+
* compact chip: what the user said, then a few of its values (`Recalculate · people: 4, tip: 15`).
|
|
15
|
+
* The message's JSON block stays in the message (the model reads it); the chip's `title` lists every
|
|
16
|
+
* value for a reader who wants them. A string that is not a UI action draws as itself.
|
|
17
|
+
*
|
|
18
|
+
* Unstyled: `className`, or the `[data-ui-action]` attribute, is the hook.
|
|
19
|
+
*/
|
|
20
|
+
export declare function UiActionChip({ action, maxValues, className, children }: UiActionChipProps): import("react").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=ui-action-chip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-action-chip.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/genui/ui-action-chip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAoB,KAAK,eAAe,EAAmB,MAAM,2BAA2B,CAAC;AAEpG,MAAM,WAAW,iBAAiB;IAChC,4GAA4G;IAC5G,MAAM,EAAE,eAAe,GAAG,MAAM,CAAC;IACjC,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAczF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { readUiActionText, uiActionSummary } from '../../../genui/actions.js';
|
|
3
|
+
/**
|
|
4
|
+
* A user message that is a UI action — a sandbox's `agent.send`, a component's button — drawn as a
|
|
5
|
+
* compact chip: what the user said, then a few of its values (`Recalculate · people: 4, tip: 15`).
|
|
6
|
+
* The message's JSON block stays in the message (the model reads it); the chip's `title` lists every
|
|
7
|
+
* value for a reader who wants them. A string that is not a UI action draws as itself.
|
|
8
|
+
*
|
|
9
|
+
* Unstyled: `className`, or the `[data-ui-action]` attribute, is the hook.
|
|
10
|
+
*/
|
|
11
|
+
export function UiActionChip({ action, maxValues, className, children }) {
|
|
12
|
+
const parsed = typeof action === 'string' ? readUiActionText(action) : action;
|
|
13
|
+
if (parsed === null)
|
|
14
|
+
return _jsx(_Fragment, { children: action });
|
|
15
|
+
const values = Object.keys(parsed.context).length > 0 ? JSON.stringify(parsed.context) : '';
|
|
16
|
+
return (_jsx("span", { className: className, "data-ui-action": parsed.name, "data-ui-action-source": parsed.source, title: values.length > 0 ? `${parsed.text}\n${values}` : parsed.text, children: children ?? uiActionSummary(parsed, maxValues !== undefined ? { maxValues } : {}) }));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=ui-action-chip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-action-chip.js","sourceRoot":"","sources":["../../../../../src/react/core/genui/ui-action-chip.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAwB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAYpG;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAqB;IACxF,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC9E,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,4BAAG,MAAgB,GAAI,CAAC;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5F,OAAO,CACL,eACE,SAAS,EAAE,SAAS,oBACJ,MAAM,CAAC,IAAI,2BACJ,MAAM,CAAC,MAAM,EACpC,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,YAEnE,QAAQ,IAAI,eAAe,CAAC,MAAM,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAC7E,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -30,6 +30,6 @@ export { storedMessageToUiMessage } from './stored-message-to-ui-message.js';
|
|
|
30
30
|
export { type AgentMessageMetadata, type AggregatedTurnUsage, type StoredTurnMetadata, storedThreadToUiMessages, } from './stored-thread-to-ui-messages.js';
|
|
31
31
|
export { notifyThreads, onThreadsEvent, type ThreadsEvent, } from './threads/threads-events.js';
|
|
32
32
|
export { type ThreadsState, type UseThreadsOptions, useThreads } from './threads/use-threads.js';
|
|
33
|
-
export { type AnswerInput, type ApprovalBlockOptions, type ApproveInput, type ApproveOptions, type BuildBlocksOptions, buildTranscriptBlocks, type ChatTranscript, describeTimestamp, describeUsage, type EditSubmitInput, type ElicitationBlockOptions, extractMessageText, type MessageActionInput, type RejectInput, type RetrievedPassage, type SettleAction, type SkipInput, type StickToBottom, type StickToBottomOptions, type TimestampInfo, type TranscriptActionState, type TranscriptApproval, type TranscriptApprovalStatus, type TranscriptBlock, type TranscriptCopyState, type TranscriptEditState, type TranscriptElicitationBlock, type TranscriptElicitationOutcome, type TranscriptFile, type TranscriptFilesBlock, type TranscriptItem, type TranscriptItemOptions, type TranscriptQuestion, type TranscriptQuestionOption, type TranscriptQueuedFile, type TranscriptQueuedItem, type TranscriptReasoningBlock, type TranscriptSettleState, type TranscriptSource, type TranscriptSourcesBlock, type TranscriptStopState, type TranscriptTextBlock, type TranscriptToolBlock, type TranscriptToolCall, type TranscriptUiBlock, type TranscriptWindow, type UsageSummary, type UseChatTranscriptOptions, type UseTranscriptItemOptions, useChatTranscript, useStickToBottom, useTranscriptItem, } from './transcript/index.js';
|
|
33
|
+
export { type AnswerInput, type ApprovalBlockOptions, type ApproveInput, type ApproveOptions, type BuildBlocksOptions, buildTranscriptBlocks, type ChatTranscript, describeTimestamp, describeUsage, type EditSubmitInput, type ElicitationBlockOptions, extractMessageText, type MessageActionInput, type RejectInput, type RetrievedPassage, type SettleAction, type SkipInput, type StickToBottom, type StickToBottomOptions, type TimestampInfo, type TranscriptActionState, type TranscriptApproval, type TranscriptApprovalStatus, type TranscriptBlock, type TranscriptCopyState, type TranscriptEditState, type TranscriptElicitationBlock, type TranscriptElicitationOutcome, type TranscriptFile, type TranscriptFilesBlock, type TranscriptItem, type TranscriptItemOptions, type TranscriptQuestion, type TranscriptQuestionOption, type TranscriptQueuedFile, type TranscriptQueuedItem, type TranscriptReasoningBlock, type TranscriptSettleState, type TranscriptSource, type TranscriptSourcesBlock, type TranscriptStopState, type TranscriptTextBlock, type TranscriptToolBlock, type TranscriptToolCall, type TranscriptUiAction, type TranscriptUiBlock, type TranscriptWindow, type UsageSummary, type UseChatTranscriptOptions, type UseTranscriptItemOptions, useChatTranscript, useStickToBottom, useTranscriptItem, } from './transcript/index.js';
|
|
34
34
|
export { type ChatBackground, QuotaBlockedError, type UseAgentChatOptions, useAgentChat, } from './use-agent-chat.js';
|
|
35
35
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/core/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/core/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react/core/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,cAAc,EACd,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,GAKnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,iBAAiB,EAEjB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAA6B,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACpG,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAGlB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAQL,cAAc,GACf,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,4BAA4B,EAU5B,oBAAoB,GAErB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAsB,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAA2C,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAIL,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,EAEX,cAAc,GAKf,MAAM,aAAa,CAAC;AACrB,iGAAiG;AACjG,oGAAoG;AACpG,OAAO,EAEL,sBAAsB,EAEtB,SAAS,EAGT,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EAGX,eAAe,EAEf,WAAW,EAIX,iBAAiB,EAOjB,gBAAgB,EAIhB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAML,eAAe,EAGf,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EAMjB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,YAAY,EAIZ,cAAc,EACd,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,kBAAkB,GACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,SAAS,EACT,QAAQ,EAER,eAAe,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EAGf,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAEhB,iBAAiB,EACjB,YAAY,EAKZ,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EAGV,cAAc,GACf,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAA2B,eAAe,EAAE,MAAM,eAAe,CAAC;AAOxF,OAAO,EAAyC,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EACL,aAAa,EACb,eAAe,EAEf,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,EAGrB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAIL,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,aAAa,EACb,cAAc,GAEf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAA6C,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAML,qBAAqB,EAErB,iBAAiB,EACjB,aAAa,EAGb,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react/core/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAGL,cAAc,EACd,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,GAKnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,iBAAiB,EAEjB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAA6B,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACpG,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAGlB,YAAY,GACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAQL,cAAc,GACf,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,4BAA4B,EAU5B,oBAAoB,GAErB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAsB,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAA2C,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAIL,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,WAAW,EAEX,cAAc,GAKf,MAAM,aAAa,CAAC;AACrB,iGAAiG;AACjG,oGAAoG;AACpG,OAAO,EAEL,sBAAsB,EAEtB,SAAS,EAGT,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,WAAW,EAGX,eAAe,EAEf,WAAW,EAIX,iBAAiB,EAOjB,gBAAgB,EAIhB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAML,eAAe,EAGf,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EAMjB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,cAAc,GACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAEL,YAAY,EAIZ,cAAc,EACd,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,kBAAkB,GACnB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,SAAS,EACT,QAAQ,EAER,eAAe,GAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,eAAe,EAGf,iBAAiB,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EAEhB,iBAAiB,EACjB,YAAY,EAKZ,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,UAAU,EAGV,cAAc,GACf,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAA2B,eAAe,EAAE,MAAM,eAAe,CAAC;AAOxF,OAAO,EAAyC,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EACL,aAAa,EACb,eAAe,EAEf,UAAU,GACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,EAGrB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAIL,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,aAAa,EACb,cAAc,GAEf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAA6C,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAML,qBAAqB,EAErB,iBAAiB,EACjB,aAAa,EAGb,kBAAkB,EAuClB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,iBAAiB,EAEjB,YAAY,GACb,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { type AnyToolUIPart, type ApprovalBlockOptions, type ApproveOptions, type BuildBlocksOptions, buildTranscriptBlocks, type ChatStatus, describeTimestamp, describeUsage, type ElicitationBlockOptions, extractMessageText, formatRelativeTime, type MessageUsageInfo, type RetrievedPassage, type SettleAction, type TimestampInfo, type TranscriptApproval, type TranscriptApprovalStatus, type TranscriptBlock, type TranscriptElicitationBlock, type TranscriptElicitationOutcome, type TranscriptFile, type TranscriptFilesBlock, type TranscriptQuestion, type TranscriptQuestionOption, type TranscriptReasoningBlock, type TranscriptSettleState, type TranscriptSource, type TranscriptSourcesBlock, type TranscriptTextBlock, type TranscriptToolBlock, type TranscriptToolCall, type TranscriptUiBlock, type UsageSummary, } from './model.js';
|
|
1
|
+
export { type AnyToolUIPart, type ApprovalBlockOptions, type ApproveOptions, type BuildBlocksOptions, buildTranscriptBlocks, type ChatStatus, describeTimestamp, describeUsage, type ElicitationBlockOptions, extractMessageText, formatRelativeTime, type MessageUsageInfo, type RetrievedPassage, type SettleAction, type TimestampInfo, type TranscriptApproval, type TranscriptApprovalStatus, type TranscriptBlock, type TranscriptElicitationBlock, type TranscriptElicitationOutcome, type TranscriptFile, type TranscriptFilesBlock, type TranscriptQuestion, type TranscriptQuestionOption, type TranscriptReasoningBlock, type TranscriptSettleState, type TranscriptSource, type TranscriptSourcesBlock, type TranscriptTextBlock, type TranscriptToolBlock, type TranscriptToolCall, type TranscriptUiAction, type TranscriptUiBlock, type UsageSummary, } from './model.js';
|
|
2
2
|
export { type AnswerInput, type ApproveInput, type ChatTranscript, type EditSubmitInput, type MessageActionInput, type RejectInput, type SkipInput, type TranscriptActionState, type TranscriptCopyState, type TranscriptEditState, type TranscriptItem, type TranscriptItemOptions, type TranscriptQueuedFile, type TranscriptQueuedItem, type TranscriptStopState, type TranscriptWindow, type UseChatTranscriptOptions, type UseTranscriptItemOptions, useChatTranscript, useTranscriptItem, } from './use-chat-transcript.js';
|
|
3
3
|
export { type StickToBottom, type StickToBottomOptions, useStickToBottom, } from './use-stick-to-bottom.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/transcript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,KAAK,UAAU,EACf,iBAAiB,EACjB,aAAa,EACb,KAAK,uBAAuB,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/transcript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,KAAK,UAAU,EACf,iBAAiB,EACjB,aAAa,EACb,KAAK,uBAAuB,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,YAAY,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/react/core/transcript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,qBAAqB,EAErB,iBAAiB,EACjB,aAAa,EAEb,kBAAkB,EAClB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/react/core/transcript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,qBAAqB,EAErB,iBAAiB,EACjB,aAAa,EAEb,kBAAkB,EAClB,kBAAkB,GAwBnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAmBL,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,gBAAgB,GACjB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type DynamicToolUIPart, type ToolUIPart, type UIMessage } from 'ai';
|
|
2
2
|
import { type ElicitationInput } from '../../../elicitation-input.js';
|
|
3
|
+
import { type UiActionMessage } from '../../../genui/actions.js';
|
|
3
4
|
import type { ToolConfirmation } from '../../../index.js';
|
|
4
5
|
import type { ApprovalTarget } from '../approvals/proposals.js';
|
|
5
6
|
import { type RawAnswer } from '../elicitation/answers.js';
|
|
@@ -29,7 +30,15 @@ export interface TranscriptTextBlock {
|
|
|
29
30
|
key: string;
|
|
30
31
|
text: string;
|
|
31
32
|
isStreaming: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* A user message that is a UI action (a sandbox's `agent.send`, a component's button —
|
|
35
|
+
* `uiActionText`): its parts. Draw `uiAction.text` (or `uiActionSummary(uiAction)`) as a chip
|
|
36
|
+
* instead of `text`, whose JSON block is for the model. Absent on every other block.
|
|
37
|
+
*/
|
|
38
|
+
uiAction?: TranscriptUiAction;
|
|
32
39
|
}
|
|
40
|
+
/** A UI action a user message carries ({@link TranscriptTextBlock.uiAction}). */
|
|
41
|
+
export type TranscriptUiAction = UiActionMessage;
|
|
33
42
|
/** One file on a message — an uploaded attachment, or one the model produced. */
|
|
34
43
|
export interface TranscriptFile {
|
|
35
44
|
/** Presigned or otherwise directly fetchable. Display-only: the model reads its own copy. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/transcript/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EAQtB,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,IAAI,CAAC;AACZ,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACzB,MAAM,kCAAkC,CAAC;AAG1C,2FAA2F;AAC3F,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,iBAAiB,CAAC;AAE3D;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,OAAO,CAAC;AAExF,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../../src/react/core/transcript/model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { getToolName, isDataUIPart, isFileUIPart, isReasoningUIPart, isTextUIPart, isToolUIPart, } from 'ai';
|
|
2
2
|
import { readElicitationInput, validateElicitationAnswer, } from '../../../elicitation-input.js';
|
|
3
|
+
import { readUiActionText } from '../../../genui/actions.js';
|
|
3
4
|
import { coerceAnswer } from '../elicitation/answers.js';
|
|
4
5
|
import { describeToolCall, groupToolActivity, } from '../presentation/tool-activity.js';
|
|
5
6
|
import { readReasoningMs } from '../reasoning/timing.js';
|
|
@@ -124,11 +125,13 @@ export function buildTranscriptBlocks(message, options) {
|
|
|
124
125
|
continue;
|
|
125
126
|
}
|
|
126
127
|
if (isTextUIPart(part)) {
|
|
128
|
+
const uiAction = message.role === 'user' ? readUiActionText(part.text) : null;
|
|
127
129
|
blocks.push({
|
|
128
130
|
kind: 'text',
|
|
129
131
|
key: `${message.id}-text-${textCounter++}`,
|
|
130
132
|
text: part.text,
|
|
131
133
|
isStreaming: part.state === 'streaming',
|
|
134
|
+
...(uiAction !== null ? { uiAction } : {}),
|
|
132
135
|
});
|
|
133
136
|
continue;
|
|
134
137
|
}
|