@jini-ai/agentic 0.1.1 → 0.3.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/README.md +92 -0
- package/dist/a2ui/agent-to-renderer.d.ts +36 -2
- package/dist/a2ui/agent-to-renderer.d.ts.map +1 -1
- package/dist/a2ui/agent-to-renderer.js +23 -1
- package/dist/a2ui/agent-to-renderer.js.map +1 -1
- package/dist/a2ui/interpreter.d.ts +24 -1
- package/dist/a2ui/interpreter.d.ts.map +1 -1
- package/dist/a2ui/interpreter.js +115 -65
- package/dist/a2ui/interpreter.js.map +1 -1
- package/dist/a2ui/json-pointer.d.ts.map +1 -1
- package/dist/a2ui/json-pointer.js +28 -3
- package/dist/a2ui/json-pointer.js.map +1 -1
- package/dist/a2ui/renderer-to-agent.d.ts +35 -11
- package/dist/a2ui/renderer-to-agent.d.ts.map +1 -1
- package/dist/a2ui/renderer-to-agent.js +15 -2
- package/dist/a2ui/renderer-to-agent.js.map +1 -1
- package/dist/a2ui/resolve.d.ts +1 -1
- package/dist/a2ui/resolve.d.ts.map +1 -1
- package/dist/a2ui/resolve.js +29 -3
- package/dist/a2ui/resolve.js.map +1 -1
- package/dist/a2ui/tree.d.ts +27 -2
- package/dist/a2ui/tree.d.ts.map +1 -1
- package/dist/a2ui/tree.js +48 -9
- package/dist/a2ui/tree.js.map +1 -1
- package/dist/ag-ui.d.ts.map +1 -1
- package/dist/ag-ui.js +30 -1
- package/dist/ag-ui.js.map +1 -1
- package/dist/core/a2ui/agent-to-renderer.d.ts +613 -0
- package/dist/core/a2ui/agent-to-renderer.d.ts.map +1 -0
- package/dist/core/a2ui/agent-to-renderer.js +191 -0
- package/dist/core/a2ui/agent-to-renderer.js.map +1 -0
- package/dist/core/a2ui/catalog.d.ts +73 -0
- package/dist/core/a2ui/catalog.d.ts.map +1 -0
- package/dist/core/a2ui/catalog.js +304 -0
- package/dist/core/a2ui/catalog.js.map +1 -0
- package/dist/core/a2ui/common-types.d.ts +401 -0
- package/dist/core/a2ui/common-types.d.ts.map +1 -0
- package/dist/core/a2ui/common-types.js +130 -0
- package/dist/core/a2ui/common-types.js.map +1 -0
- package/dist/core/a2ui/index.d.ts +16 -0
- package/dist/core/a2ui/index.d.ts.map +1 -0
- package/dist/core/a2ui/index.js +16 -0
- package/dist/core/a2ui/index.js.map +1 -0
- package/dist/core/a2ui/interpreter.d.ts +71 -0
- package/dist/core/a2ui/interpreter.d.ts.map +1 -0
- package/dist/core/a2ui/interpreter.js +341 -0
- package/dist/core/a2ui/interpreter.js.map +1 -0
- package/dist/core/a2ui/json-pointer.d.ts +48 -0
- package/dist/core/a2ui/json-pointer.d.ts.map +1 -0
- package/dist/core/a2ui/json-pointer.js +174 -0
- package/dist/core/a2ui/json-pointer.js.map +1 -0
- package/dist/core/a2ui/renderer-to-agent.d.ts +342 -0
- package/dist/core/a2ui/renderer-to-agent.d.ts.map +1 -0
- package/dist/core/a2ui/renderer-to-agent.js +111 -0
- package/dist/core/a2ui/renderer-to-agent.js.map +1 -0
- package/dist/core/a2ui/resolve.d.ts +28 -0
- package/dist/core/a2ui/resolve.d.ts.map +1 -0
- package/dist/core/a2ui/resolve.js +144 -0
- package/dist/core/a2ui/resolve.js.map +1 -0
- package/dist/core/a2ui/tree.d.ts +66 -0
- package/dist/core/a2ui/tree.d.ts.map +1 -0
- package/dist/core/a2ui/tree.js +74 -0
- package/dist/core/a2ui/tree.js.map +1 -0
- package/dist/core/ag-ui.d.ts +82 -0
- package/dist/core/ag-ui.d.ts.map +1 -0
- package/dist/core/ag-ui.js +85 -0
- package/dist/core/ag-ui.js.map +1 -0
- package/dist/core/capability.d.ts +81 -0
- package/dist/core/capability.d.ts.map +1 -0
- package/dist/core/capability.js +79 -0
- package/dist/core/capability.js.map +1 -0
- package/dist/core/dom/dom-page-driver.d.ts +36 -0
- package/dist/core/dom/dom-page-driver.d.ts.map +1 -0
- package/dist/core/dom/dom-page-driver.js +601 -0
- package/dist/core/dom/dom-page-driver.js.map +1 -0
- package/dist/core/dom/index.d.ts +17 -0
- package/dist/core/dom/index.d.ts.map +1 -0
- package/dist/core/dom/index.js +17 -0
- package/dist/core/dom/index.js.map +1 -0
- package/dist/core/dom/model-context.d.ts +69 -0
- package/dist/core/dom/model-context.d.ts.map +1 -0
- package/dist/core/dom/model-context.js +44 -0
- package/dist/core/dom/model-context.js.map +1 -0
- package/dist/core/element-handles.d.ts +120 -0
- package/dist/core/element-handles.d.ts.map +1 -0
- package/dist/core/element-handles.js +39 -0
- package/dist/core/element-handles.js.map +1 -0
- package/dist/core/gen-ui/encoder.d.ts +50 -0
- package/dist/core/gen-ui/encoder.d.ts.map +1 -0
- package/dist/core/gen-ui/encoder.js +97 -0
- package/dist/core/gen-ui/encoder.js.map +1 -0
- package/dist/core/gen-ui/events.d.ts +59 -0
- package/dist/core/gen-ui/events.d.ts.map +1 -0
- package/dist/core/gen-ui/events.js +15 -0
- package/dist/core/gen-ui/events.js.map +1 -0
- package/dist/core/gen-ui/index.d.ts +18 -0
- package/dist/core/gen-ui/index.d.ts.map +1 -0
- package/dist/core/gen-ui/index.js +17 -0
- package/dist/core/gen-ui/index.js.map +1 -0
- package/dist/core/guards.d.ts +96 -0
- package/dist/core/guards.d.ts.map +1 -0
- package/dist/core/guards.js +186 -0
- package/dist/core/guards.js.map +1 -0
- package/dist/core/handle.d.ts +41 -0
- package/dist/core/handle.d.ts.map +1 -0
- package/dist/core/handle.js +41 -0
- package/dist/core/handle.js.map +1 -0
- package/dist/core/index.d.ts +75 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +74 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/list-handles.d.ts +43 -0
- package/dist/core/list-handles.d.ts.map +1 -0
- package/dist/core/list-handles.js +57 -0
- package/dist/core/list-handles.js.map +1 -0
- package/dist/core/mcp-ui-apps.d.ts +223 -0
- package/dist/core/mcp-ui-apps.d.ts.map +1 -0
- package/dist/core/mcp-ui-apps.js +252 -0
- package/dist/core/mcp-ui-apps.js.map +1 -0
- package/dist/core/page-capabilities.d.ts +14 -0
- package/dist/core/page-capabilities.d.ts.map +1 -0
- package/dist/core/page-capabilities.js +129 -0
- package/dist/core/page-capabilities.js.map +1 -0
- package/dist/core/page-driver.d.ts +120 -0
- package/dist/core/page-driver.d.ts.map +1 -0
- package/dist/core/page-driver.js +2 -0
- package/dist/core/page-driver.js.map +1 -0
- package/dist/core/page-executor.d.ts +94 -0
- package/dist/core/page-executor.d.ts.map +1 -0
- package/dist/core/page-executor.js +320 -0
- package/dist/core/page-executor.js.map +1 -0
- package/dist/core/webmcp.d.ts +202 -0
- package/dist/core/webmcp.d.ts.map +1 -0
- package/dist/core/webmcp.js +173 -0
- package/dist/core/webmcp.js.map +1 -0
- package/dist/dom/dom-page-driver.d.ts +9 -2
- package/dist/dom/dom-page-driver.d.ts.map +1 -1
- package/dist/dom/dom-page-driver.js +84 -40
- package/dist/dom/dom-page-driver.js.map +1 -1
- package/dist/dom/index.d.ts +1 -1
- package/dist/dom/index.d.ts.map +1 -1
- package/dist/dom/index.js +1 -1
- package/dist/dom/index.js.map +1 -1
- package/dist/element-handles.d.ts +22 -1
- package/dist/element-handles.d.ts.map +1 -1
- package/dist/gen-ui/encoder.d.ts +8 -8
- package/dist/gen-ui/encoder.d.ts.map +1 -1
- package/dist/gen-ui/encoder.js +2 -2
- package/dist/gen-ui/encoder.js.map +1 -1
- package/dist/gen-ui/events.d.ts +10 -10
- package/dist/gen-ui/events.d.ts.map +1 -1
- package/dist/gen-ui/index.d.ts +3 -3
- package/dist/gen-ui/index.d.ts.map +1 -1
- package/dist/gen-ui/index.js +2 -2
- package/dist/gen-ui/index.js.map +1 -1
- package/dist/guards.d.ts +8 -3
- package/dist/guards.d.ts.map +1 -1
- package/dist/guards.js +6 -1
- package/dist/guards.js.map +1 -1
- package/dist/index.d.ts +4 -62
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -61
- package/dist/index.js.map +1 -1
- package/dist/mcp-ui-apps.d.ts +19 -0
- package/dist/mcp-ui-apps.d.ts.map +1 -1
- package/dist/mcp-ui-apps.js +50 -5
- package/dist/mcp-ui-apps.js.map +1 -1
- package/dist/page-capabilities.js +6 -6
- package/dist/page-capabilities.js.map +1 -1
- package/dist/page-driver.d.ts +15 -2
- package/dist/page-driver.d.ts.map +1 -1
- package/dist/page-executor.d.ts +11 -4
- package/dist/page-executor.d.ts.map +1 -1
- package/dist/page-executor.js +47 -15
- package/dist/page-executor.js.map +1 -1
- package/package.json +18 -9
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module webmcp
|
|
3
|
+
*
|
|
4
|
+
* Projection: {@link CapabilityDef} → a WebMCP tool registration.
|
|
5
|
+
*
|
|
6
|
+
* WebMCP (`document.modelContext.registerTool`) is the browser API by which a *page* offers
|
|
7
|
+
* tools to an agent running inside the browser. It is a W3C Community Group draft, not a
|
|
8
|
+
* standards-track spec, and it moves: the API relocated from `navigator.modelContext` to
|
|
9
|
+
* `document.modelContext` on 2026-07-21, Chrome 150 deprecated the `navigator` location while
|
|
10
|
+
* still serving it during the origin trial (Chrome 149–156), Edge ships it behind a flag, and
|
|
11
|
+
* Firefox and Safari have made no commitment. Feature detection must therefore check `document`
|
|
12
|
+
* first and fall back to `navigator`.
|
|
13
|
+
*
|
|
14
|
+
* That detection is deliberately NOT here: it touches browser globals, and this package holds
|
|
15
|
+
* none. Framework bindings own host access; this file owns only the shape translation, so when
|
|
16
|
+
* the registration shape changes again there is exactly one place to change it.
|
|
17
|
+
*
|
|
18
|
+
* Re-verified 2026-07-28 against the primary spec source
|
|
19
|
+
* (https://webmachinelearning.github.io/webmcp/, `index.bs`). Four real gaps closed this pass,
|
|
20
|
+
* all additive — none change the confirmation gate below, which is Jini's own addition and has
|
|
21
|
+
* no spec counterpart:
|
|
22
|
+
*
|
|
23
|
+
* 1. **`signal`/`exposedTo`** — `ModelContextRegisterToolOptions`, the *second* positional
|
|
24
|
+
* argument to `registerTool(tool, options)`. `signal` is the spec's ONLY unregistration
|
|
25
|
+
* mechanism (there is no `unregisterTool()`); aborting it removes the tool and fires
|
|
26
|
+
* `toolchange`. `exposedTo` scopes which cross-origin documents in the same tree may see the
|
|
27
|
+
* tool. Neither belongs on the `ModelContextTool` dict itself, so they are not fields of
|
|
28
|
+
* {@link WebMcpToolRegistration} — they ride along on its optional `registerOptions`, computed
|
|
29
|
+
* from {@link ToWebMcpToolOptions}, so a caller has exactly one object to destructure:
|
|
30
|
+
* `modelContext.registerTool(reg, reg.registerOptions)`.
|
|
31
|
+
* 2. **`title`/`annotations`** — real `ModelContextTool` dict fields (`USVString title`,
|
|
32
|
+
* `ToolAnnotations annotations`), now on {@link WebMcpToolRegistration}. `annotations.readOnlyHint`
|
|
33
|
+
* defaults from {@link CapabilityDef.risk} (`'read'` → `true`) since Jini's manifests already
|
|
34
|
+
* carry that judgment; a caller may override or add `untrustedContentHint` via `options.annotations`.
|
|
35
|
+
* 3. **Tool name validation** — the spec's `registerTool` algorithm rejects (with an
|
|
36
|
+
* `InvalidStateError` `DOMException`) a name that is empty, over 128 code points, or contains
|
|
37
|
+
* anything outside ASCII alphanumeric plus `_`, `-`, `.`. `capability.id` becomes `name`
|
|
38
|
+
* verbatim, so a malformed manifest entry previously surfaced as a cryptic browser-side
|
|
39
|
+
* rejection days later; {@link toWebMcpTool} now checks it at projection time and names the
|
|
40
|
+
* offending capability.
|
|
41
|
+
* 4. **Schema-on-error** — WebMCP defines no input validation of its own (the spec's
|
|
42
|
+
* `ToolExecuteCallback` is just `Promise<any> (object input)`), and this module's own doc used
|
|
43
|
+
* to say so ("the caller is responsible for validating it... WebMCP does not"). That left a
|
|
44
|
+
* wrong-schema call to fail deep inside whatever `execute` does, with no way for the caller to
|
|
45
|
+
* self-correct in the same turn. `execute` now runs the manifest's own
|
|
46
|
+
* {@link findCapabilityInputError} first and, on failure, throws the same
|
|
47
|
+
* `"<id>: <reason>. Expected input: <schema>"` shape `page-executor.ts` already uses for
|
|
48
|
+
* `page.*` — one discipline, not two.
|
|
49
|
+
*/
|
|
50
|
+
import { findCapabilityInputError } from './capability.js';
|
|
51
|
+
/** Thrown in place of executing, when a call needed confirmation and did not get it. */
|
|
52
|
+
export class WebMcpConfirmationRequiredError extends Error {
|
|
53
|
+
capabilityId;
|
|
54
|
+
reason;
|
|
55
|
+
constructor(capabilityId, reason) {
|
|
56
|
+
super(reason === 'declined'
|
|
57
|
+
? `WebMCP: "${capabilityId}" was declined by the user`
|
|
58
|
+
: `WebMCP: "${capabilityId}" requires confirmation, but no requestUserInteraction handler was supplied`);
|
|
59
|
+
this.capabilityId = capabilityId;
|
|
60
|
+
this.reason = reason;
|
|
61
|
+
this.name = 'WebMcpConfirmationRequiredError';
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* The spec's tool-name rule, verbatim: "The tool definition's name's length must be between 1 and
|
|
66
|
+
* 128, inclusive, and only consist of ASCII alphanumeric code points, U+005F LOW LINE (_), U+002D
|
|
67
|
+
* HYPHEN-MINUS (-), and U+002E FULL STOP (.)." A name outside this is rejected by `registerTool`
|
|
68
|
+
* with an `InvalidStateError` `DOMException` — this projection checks it earlier, at manifest time.
|
|
69
|
+
*/
|
|
70
|
+
const WEBMCP_TOOL_NAME_PATTERN = /^[A-Za-z0-9_.-]{1,128}$/;
|
|
71
|
+
/** Whether `name` satisfies the spec's tool-name rule. Exported so a caller can pre-check a manifest without registering anything. */
|
|
72
|
+
export function isValidWebMcpToolName(name) {
|
|
73
|
+
return WEBMCP_TOOL_NAME_PATTERN.test(name);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Thrown synchronously by {@link toWebMcpTool} for a capability whose `id` cannot legally become a
|
|
77
|
+
* WebMCP tool name. Distinct from {@link WebMcpConfirmationRequiredError}: this is a manifest
|
|
78
|
+
* defect caught before any registration is attempted, not a runtime refusal of a call.
|
|
79
|
+
*/
|
|
80
|
+
export class InvalidWebMcpToolNameError extends Error {
|
|
81
|
+
capabilityId;
|
|
82
|
+
constructor(capabilityId) {
|
|
83
|
+
super(`WebMCP: capability id "${capabilityId}" is not a valid tool name — the spec requires 1-128 `
|
|
84
|
+
+ 'ASCII alphanumeric characters plus "_", "-", "." '
|
|
85
|
+
+ '(https://webmachinelearning.github.io/webmcp/#dom-modelcontext-registertool)');
|
|
86
|
+
this.capabilityId = capabilityId;
|
|
87
|
+
this.name = 'InvalidWebMcpToolNameError';
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Projects one capability into a WebMCP registration.
|
|
92
|
+
*
|
|
93
|
+
* **The confirmation gate is fail-closed.** A capability with `requiresConfirmation` will not run
|
|
94
|
+
* unless `options.requestUserInteraction` is supplied *and* resolves `true`. Omitting the handler
|
|
95
|
+
* does not silently downgrade to "just run it" — it makes the tool permanently refuse, which is
|
|
96
|
+
* the only safe reading of a manifest that asked for confirmation.
|
|
97
|
+
*
|
|
98
|
+
* This does not make WebMCP governed. It is a page-local gate over a path that still has no run,
|
|
99
|
+
* no principal, no `ToolExecutor` and no audit trail (see this package's `frontend-session-registry`
|
|
100
|
+
* note and §11 of the capability report). It closes the *accidental* case — a destructive
|
|
101
|
+
* capability reaching the page with nothing in front of it — not the authorization gap.
|
|
102
|
+
*
|
|
103
|
+
* @param capability - The capability to expose.
|
|
104
|
+
* @param execute - Runs the capability. Receives the raw argument object, already checked against
|
|
105
|
+
* `capability.inputSchema` — a caller-supplied value that fails validation never reaches this.
|
|
106
|
+
* @param options - Optional confirmation handler, title/annotations, and registration options
|
|
107
|
+
* (`signal`/`exposedTo`); required in practice for any capability declaring `requiresConfirmation`.
|
|
108
|
+
* @returns The registration object to hand to `registerTool`.
|
|
109
|
+
* @throws {@link InvalidWebMcpToolNameError} synchronously, if `capability.id` cannot be a WebMCP
|
|
110
|
+
* tool name.
|
|
111
|
+
* @throws {@link WebMcpConfirmationRequiredError} from `execute`, when confirmation is required
|
|
112
|
+
* and is either declined or unobtainable.
|
|
113
|
+
*/
|
|
114
|
+
export function toWebMcpTool(capability, execute, options = {}) {
|
|
115
|
+
if (!isValidWebMcpToolName(capability.id)) {
|
|
116
|
+
throw new InvalidWebMcpToolNameError(capability.id);
|
|
117
|
+
}
|
|
118
|
+
const { title, annotations, signal, exposedTo } = options;
|
|
119
|
+
const resolvedAnnotations = {
|
|
120
|
+
readOnlyHint: capability.risk === 'read',
|
|
121
|
+
...annotations,
|
|
122
|
+
};
|
|
123
|
+
const registerOptions = signal !== undefined || exposedTo !== undefined
|
|
124
|
+
? { ...(signal !== undefined ? { signal } : {}), ...(exposedTo !== undefined ? { exposedTo } : {}) }
|
|
125
|
+
: undefined;
|
|
126
|
+
return {
|
|
127
|
+
name: capability.id,
|
|
128
|
+
...(title !== undefined ? { title } : {}),
|
|
129
|
+
description: capability.description,
|
|
130
|
+
inputSchema: capability.inputSchema,
|
|
131
|
+
execute: async (args) => {
|
|
132
|
+
const input = args ?? {};
|
|
133
|
+
// Schema-on-error, matching page-executor.ts's discipline for page.* — WebMCP defines no
|
|
134
|
+
// input validation of its own, so a wrong-schema call would otherwise reach `execute` (or a
|
|
135
|
+
// confirmation prompt for one) with bad arguments instead of a same-turn correctable error.
|
|
136
|
+
const inputError = findCapabilityInputError(capability, input);
|
|
137
|
+
if (inputError !== null) {
|
|
138
|
+
throw new Error(`${capability.id}: ${inputError}. Expected input: ${JSON.stringify(capability.inputSchema)}`);
|
|
139
|
+
}
|
|
140
|
+
if (capability.requiresConfirmation === true) {
|
|
141
|
+
const { requestUserInteraction } = options;
|
|
142
|
+
if (!requestUserInteraction) {
|
|
143
|
+
throw new WebMcpConfirmationRequiredError(capability.id, 'no-handler');
|
|
144
|
+
}
|
|
145
|
+
const approved = await requestUserInteraction({ capability, args: input });
|
|
146
|
+
if (approved !== true) {
|
|
147
|
+
throw new WebMcpConfirmationRequiredError(capability.id, 'declined');
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return execute(capability.id, input);
|
|
151
|
+
},
|
|
152
|
+
annotations: resolvedAnnotations,
|
|
153
|
+
...(registerOptions !== undefined ? { registerOptions } : {}),
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Projects a whole manifest.
|
|
158
|
+
*
|
|
159
|
+
* `options` is shared across every capability — safe for `requestUserInteraction`, `signal`, and
|
|
160
|
+
* `exposedTo`, which are naturally uniform for one registration session; do not pass `title`
|
|
161
|
+
* through this one, since it would repeat verbatim across every tool in the manifest (see
|
|
162
|
+
* {@link ToWebMcpToolOptions.title}).
|
|
163
|
+
*
|
|
164
|
+
* @param capabilities - Capabilities to expose, already filtered by whatever policy applies.
|
|
165
|
+
* @param execute - Shared dispatcher, keyed by capability id.
|
|
166
|
+
* @returns One registration per capability, in manifest order.
|
|
167
|
+
* @throws {@link InvalidWebMcpToolNameError} synchronously, for the first capability whose `id`
|
|
168
|
+
* cannot be a WebMCP tool name.
|
|
169
|
+
*/
|
|
170
|
+
export function toWebMcpTools(capabilities, execute, options = {}) {
|
|
171
|
+
return capabilities.map((capability) => toWebMcpTool(capability, execute, options));
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=webmcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webmcp.js","sourceRoot":"","sources":["../../src/core/webmcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import type { PageDriver } from '../page-driver.js';
|
|
2
|
+
/** One page a host allows navigation to: its human label, and how to actually get there. */
|
|
3
|
+
export interface DomPageDriverPage {
|
|
4
|
+
/** Shown to a caller by `page.find_elements`/`page.navigate`'s refusal message — see
|
|
5
|
+
* `PageSummary.label` for why this exists at all. */
|
|
6
|
+
readonly label: string;
|
|
7
|
+
readonly navigate: () => void;
|
|
8
|
+
}
|
|
2
9
|
export interface DomPageDriverOptions {
|
|
3
10
|
/** The subtree to expose. Never pass `document`. */
|
|
4
11
|
readonly root: ParentNode & {
|
|
5
12
|
querySelector: Element['querySelector'];
|
|
6
13
|
};
|
|
7
|
-
/** Page ids this driver may navigate to, and how to get there. */
|
|
8
|
-
readonly pages: Readonly<Record<string,
|
|
14
|
+
/** Page ids this driver may navigate to, each with its label and how to get there. */
|
|
15
|
+
readonly pages: Readonly<Record<string, DomPageDriverPage>>;
|
|
9
16
|
/**
|
|
10
17
|
* The id of the page currently shown, reported on every element.
|
|
11
18
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-page-driver.d.ts","sourceRoot":"","sources":["../../src/dom/dom-page-driver.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAsB,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"dom-page-driver.d.ts","sourceRoot":"","sources":["../../src/dom/dom-page-driver.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAsB,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAgNxE,4FAA4F;AAC5F,MAAM,WAAW,iBAAiB;IAChC;0DACsD;IACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG;QAAE,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;KAAE,CAAC;IACxE,sFAAsF;IACtF,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC5D;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,UAAU,CA2V7E;AAgDD,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,SAAS,CAGrE"}
|
|
@@ -53,51 +53,55 @@ function isEditableRegion(element) {
|
|
|
53
53
|
// Editability inherited from an ancestor, which only a real layout engine can tell us about.
|
|
54
54
|
return element.isContentEditable === true;
|
|
55
55
|
}
|
|
56
|
-
/**
|
|
57
|
-
function
|
|
56
|
+
/** The text of every `<label>` associated with `control`, by any of the relationships that link one. */
|
|
57
|
+
function labelTextsOf(control) {
|
|
58
|
+
const texts = [];
|
|
59
|
+
const add = (text) => {
|
|
60
|
+
const trimmed = text?.trim();
|
|
61
|
+
if (trimmed)
|
|
62
|
+
texts.push(trimmed);
|
|
63
|
+
};
|
|
58
64
|
// Real form controls carry `.labels` — every associated <label>, both for-linked and wrapping.
|
|
59
65
|
const associated = 'labels' in control
|
|
60
66
|
? Array.from(control.labels ?? [])
|
|
61
67
|
: [];
|
|
62
|
-
for (const label of associated)
|
|
63
|
-
|
|
64
|
-
if (text)
|
|
65
|
-
return text;
|
|
66
|
-
}
|
|
68
|
+
for (const label of associated)
|
|
69
|
+
add(label.textContent);
|
|
67
70
|
// A contenteditable region is not a form control and has no `.labels`; resolve the same two
|
|
68
71
|
// relationships by hand — an ancestor <label> (implicit wrapping) and a for-linked one (explicit).
|
|
69
72
|
const wrapping = control.closest('label');
|
|
70
|
-
if (wrapping)
|
|
71
|
-
|
|
72
|
-
if (text)
|
|
73
|
-
return text;
|
|
74
|
-
}
|
|
73
|
+
if (wrapping)
|
|
74
|
+
add(wrapping.textContent);
|
|
75
75
|
if (control.id) {
|
|
76
76
|
for (const label of Array.from(control.ownerDocument.querySelectorAll('label'))) {
|
|
77
|
-
if (label.htmlFor === control.id)
|
|
78
|
-
|
|
79
|
-
if (text)
|
|
80
|
-
return text;
|
|
81
|
-
}
|
|
77
|
+
if (label.htmlFor === control.id)
|
|
78
|
+
add(label.textContent);
|
|
82
79
|
}
|
|
83
80
|
}
|
|
84
|
-
return
|
|
81
|
+
return texts;
|
|
85
82
|
}
|
|
86
83
|
/**
|
|
87
|
-
*
|
|
88
|
-
* a CMS emitting `name="field_47"` next to a visibly-labelled "Card number" leaves every
|
|
89
|
-
* nothing to judge unless this is populated.
|
|
90
|
-
* then the text of
|
|
91
|
-
*
|
|
84
|
+
* **Every** human-visible naming of the field, for the guard's benefit: `name`/`id` are the machine
|
|
85
|
+
* names, and a CMS emitting `name="field_47"` next to a visibly-labelled "Card number" leaves every
|
|
86
|
+
* guard here nothing to judge unless this is populated. Sources, in the order a human would read
|
|
87
|
+
* them: `aria-label`, `placeholder`, then the text of each associated `<label>` (for-linked or
|
|
88
|
+
* wrapping).
|
|
89
|
+
*
|
|
90
|
+
* All of them, not the first that resolves. Stopping at the first made the *page* the one choosing
|
|
91
|
+
* which of its own labels the guard is allowed to see, which is the opposite of what a guard is
|
|
92
|
+
* for: `<label for=f>Card number</label><input id=f name=field_47 placeholder="Enter value">` was
|
|
93
|
+
* described to the guard as "Enter value" alone, and its value read back in full.
|
|
94
|
+
*
|
|
95
|
+
* De-duplicated because one label is often reachable twice (a wrapping `<label>` is also in
|
|
96
|
+
* `.labels`), and a repeated entry is noise in every refusal built from these.
|
|
92
97
|
*/
|
|
93
|
-
function
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
return labelTextOf(control);
|
|
98
|
+
function accessibleLabelsOf(control) {
|
|
99
|
+
const candidates = [
|
|
100
|
+
control.getAttribute('aria-label')?.trim(),
|
|
101
|
+
control.getAttribute('placeholder')?.trim(),
|
|
102
|
+
...labelTextsOf(control),
|
|
103
|
+
];
|
|
104
|
+
return [...new Set(candidates.filter((text) => !!text))];
|
|
101
105
|
}
|
|
102
106
|
/** The field attributes the guards need, or `null` when the control is not a text-bearing input. */
|
|
103
107
|
function fieldDescriptorOf(control) {
|
|
@@ -114,7 +118,7 @@ function fieldDescriptorOf(control) {
|
|
|
114
118
|
autocomplete: control.getAttribute('autocomplete')?.toLowerCase() || undefined,
|
|
115
119
|
name: control.getAttribute('name') || undefined,
|
|
116
120
|
id: control.id || undefined,
|
|
117
|
-
|
|
121
|
+
accessibleLabels: accessibleLabelsOf(control),
|
|
118
122
|
readOnly: control.getAttribute('aria-readonly') === 'true',
|
|
119
123
|
disabled: control.getAttribute('aria-disabled') === 'true',
|
|
120
124
|
};
|
|
@@ -127,7 +131,7 @@ function fieldDescriptorOf(control) {
|
|
|
127
131
|
autocomplete: control.getAttribute('autocomplete')?.toLowerCase() ?? undefined,
|
|
128
132
|
name: control.name || undefined,
|
|
129
133
|
id: control.id || undefined,
|
|
130
|
-
|
|
134
|
+
accessibleLabels: accessibleLabelsOf(control),
|
|
131
135
|
readOnly: control.readOnly,
|
|
132
136
|
// `.disabled` reflects only this element's own attribute — not the "actually disabled" state
|
|
133
137
|
// a control gets from an ancestor `<fieldset disabled>`. `:disabled` is the platform's own
|
|
@@ -178,7 +182,14 @@ function describe(element, page) {
|
|
|
178
182
|
const role = element.getAttribute(AGENT_ROLE_ATTRIBUTE);
|
|
179
183
|
/* c8 ignore next -- `Node.textContent` is typed nullable for the abstract node; on an Element it is always a string, so the `?? ''` satisfies the type and is not a reachable path. */
|
|
180
184
|
const text = element.textContent ?? '';
|
|
181
|
-
|
|
185
|
+
// Live text is a fine fallback label for an ordinary element — it is the page's own ontology,
|
|
186
|
+
// rendered openly. For an editable region it is not: a contenteditable's content is the *user's
|
|
187
|
+
// data*, so falling back to it published the contents of a rich-text field to every
|
|
188
|
+
// `find_elements` caller, with no `withState` asked for and no read guard anywhere in the way
|
|
189
|
+
// (`<div contenteditable name="password">hunter2</div>` reported `label: "hunter2"`). Such a
|
|
190
|
+
// region is named by what labels it instead, exactly as `fieldDescriptorOf` describes it.
|
|
191
|
+
const fallback = isEditableRegion(element) ? (accessibleLabelsOf(element)[0] ?? '') : text;
|
|
192
|
+
const label = element.getAttribute(AGENT_LABEL_ATTRIBUTE) ?? fallback;
|
|
182
193
|
/* c8 ignore next -- only ever called on a `[data-agent-element]` match, so the attribute is present by construction. */
|
|
183
194
|
const handle = element.getAttribute(AGENT_ELEMENT_ATTRIBUTE) ?? '';
|
|
184
195
|
return {
|
|
@@ -294,7 +305,10 @@ export function createDomPageDriver(options) {
|
|
|
294
305
|
});
|
|
295
306
|
},
|
|
296
307
|
async listPages() {
|
|
297
|
-
|
|
308
|
+
// `Object.entries`, same own-enumerable-keys-only guarantee `Object.keys` gives `navigate`'s
|
|
309
|
+
// own `hasOwnProperty` check above — no risk of a `pages.label`/`pages.navigate`-shaped
|
|
310
|
+
// prototype entry leaking in as a fake page id.
|
|
311
|
+
return Object.entries(pages).map(([id, page]) => ({ id, label: page.label }));
|
|
298
312
|
},
|
|
299
313
|
async describeField(handle) {
|
|
300
314
|
return fieldDescriptorOf(controlOf(find(handle)));
|
|
@@ -323,6 +337,10 @@ export function createDomPageDriver(options) {
|
|
|
323
337
|
type: 'select',
|
|
324
338
|
name: dropdown.name || undefined,
|
|
325
339
|
id: dropdown.id || undefined,
|
|
340
|
+
// Same reason `fieldDescriptorOf` carries these: a `<select aria-label="Card number"
|
|
341
|
+
// name="f9">` states its sensitivity nowhere else, and this descriptor is built by hand
|
|
342
|
+
// rather than going through that function, so it needs the labels wired up separately.
|
|
343
|
+
accessibleLabels: accessibleLabelsOf(dropdown),
|
|
326
344
|
// Same `:disabled` reasoning as `disabledOf` — a `<select>` inside a disabled `<fieldset>`
|
|
327
345
|
// is not itself flagged by the `.disabled` IDL property.
|
|
328
346
|
disabled: dropdown.matches(':disabled'),
|
|
@@ -334,6 +352,12 @@ export function createDomPageDriver(options) {
|
|
|
334
352
|
const text = element.textContent ?? '';
|
|
335
353
|
return {
|
|
336
354
|
text,
|
|
355
|
+
// A contenteditable region has no `.value`; its content IS its value, so `text` is the
|
|
356
|
+
// one channel carrying it and the executor has to gate it exactly like a value. Reported
|
|
357
|
+
// as a mechanical fact about the element, not as a judgment about the content — the
|
|
358
|
+
// decision of whether it may be shown stays in `projectElementState`, with every other
|
|
359
|
+
// secrecy rule.
|
|
360
|
+
...(isEditableRegion(control) ? { textIsValue: true } : {}),
|
|
337
361
|
// Reported raw and unconditionally; `projectElementState` applies the read guard. A
|
|
338
362
|
// driver deciding here which values are secret is a driver holding policy.
|
|
339
363
|
...(value !== undefined ? { value } : {}),
|
|
@@ -442,11 +466,24 @@ export function createDomPageDriver(options) {
|
|
|
442
466
|
if (!(control instanceof HTMLSelectElement)) {
|
|
443
467
|
throw new Error(`"${handle}" is not a dropdown`);
|
|
444
468
|
}
|
|
469
|
+
// A disabled control is not one a user could touch, so writing to it is a way around the
|
|
470
|
+
// page's own rule and the resulting selection cannot be submitted. The per-`<option>` filter
|
|
471
|
+
// below reads as if it enforced that, but only ever looked at each option — a
|
|
472
|
+
// `<select disabled>` (and a `<select>` inside a `<fieldset disabled>`, which `:disabled`
|
|
473
|
+
// also covers and `.disabled` does not) was written to happily, and the executor then
|
|
474
|
+
// reported `targetChanged: true` because the value really had changed.
|
|
475
|
+
//
|
|
476
|
+
// Checked before the option lookup on purpose: the refusal is about the control, so it must
|
|
477
|
+
// not depend on the caller having named a real option, and the "Available: ..." message must
|
|
478
|
+
// not enumerate a disabled control's options.
|
|
479
|
+
if (control.matches(':disabled')) {
|
|
480
|
+
throw new Error(`"${handle}" is disabled, so its selection cannot be changed — `
|
|
481
|
+
+ 'a user cannot change it either, and its value would not be submitted');
|
|
482
|
+
}
|
|
445
483
|
// Visible text first, then value: the text is what a caller saw in `find_elements`, and
|
|
446
484
|
// matching value first would make an option whose value collides with another's label
|
|
447
485
|
// resolve to the wrong entry.
|
|
448
|
-
// A disabled option is not selectable by the user either,
|
|
449
|
-
// be a way around the page's own rule — and the resulting selection cannot be submitted.
|
|
486
|
+
// A disabled option is not selectable by the user either, for the same reason.
|
|
450
487
|
const options = Array.from(control.options).filter((entry) => !entry.disabled);
|
|
451
488
|
const match = options.find((entry) => entry.text.trim() === option)
|
|
452
489
|
?? options.find((entry) => entry.value === option);
|
|
@@ -491,15 +528,22 @@ export function createDomPageDriver(options) {
|
|
|
491
528
|
control.dispatchEvent(new Event('change', { bubbles: true }));
|
|
492
529
|
},
|
|
493
530
|
async navigate(page) {
|
|
494
|
-
|
|
531
|
+
// `hasOwnProperty`, not `pages[page]`: a plain object literal inherits everything
|
|
532
|
+
// `Object.prototype` contributes, so a bare lookup answered `navigate("constructor")` with
|
|
533
|
+
// the `Object` constructor — a function the host never published, which this then called,
|
|
534
|
+
// reporting a navigation that never happened. `navigate("__proto__")` was worse in a
|
|
535
|
+
// different way: it resolved a non-callable object and failed with "go is not a function"
|
|
536
|
+
// instead of the refusal this check exists to produce. `listPages` already reports only own
|
|
537
|
+
// keys (`Object.keys`), so this is what makes the two agree.
|
|
538
|
+
const published = Object.prototype.hasOwnProperty.call(pages, page);
|
|
495
539
|
// The executor already checked the allowlist and sanitizes this same message before this
|
|
496
540
|
// driver-level check would ever be reached through it; this is the belt on the braces. But
|
|
497
541
|
// `PageDriver` is a public interface — a caller that reaches this method directly, bypassing
|
|
498
542
|
// the executor entirely, hands `page` in unsanitized, so the same bound-and-strip treatment
|
|
499
543
|
// applies here too rather than assuming the only caller is the one that already checked.
|
|
500
|
-
if (
|
|
544
|
+
if (!published)
|
|
501
545
|
throw new Error(`"${normalizeAgentLabel(page).text}" is not a published page`);
|
|
502
|
-
|
|
546
|
+
pages[page].navigate();
|
|
503
547
|
},
|
|
504
548
|
};
|
|
505
549
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom-page-driver.js","sourceRoot":"","sources":["../../src/dom/dom-page-driver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dom-page-driver.js","sourceRoot":"","sources":["../../src/dom/dom-page-driver.ts"],"names":[],"mappings":"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"}
|
package/dist/dom/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* `@jini-ai/chat-react` is this package's one in-repo consumer today.
|
|
9
9
|
*/
|
|
10
|
-
export { createDomPageDriver, currentAgentPage, type DomPageDriverOptions } from './dom-page-driver.js';
|
|
10
|
+
export { createDomPageDriver, currentAgentPage, type DomPageDriverOptions, type DomPageDriverPage, } from './dom-page-driver.js';
|
|
11
11
|
/**
|
|
12
12
|
* WebMCP feature detection — moved 2026-07-26 from `@jini-ai/ui`'s `agent-tools/model-context.ts`
|
|
13
13
|
* (plan §8 step 6). See `model-context.ts`'s module doc for why it lives here rather than
|
package/dist/dom/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAE9B;;;;GAIG;AACH,OAAO,EACL,oBAAoB,EACpB,KAAK,qBAAqB,EAC1B,KAAK,iCAAiC,GACvC,MAAM,oBAAoB,CAAC"}
|
package/dist/dom/index.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* `@jini-ai/chat-react` is this package's one in-repo consumer today.
|
|
9
9
|
*/
|
|
10
|
-
export { createDomPageDriver, currentAgentPage } from './dom-page-driver.js';
|
|
10
|
+
export { createDomPageDriver, currentAgentPage, } from './dom-page-driver.js';
|
|
11
11
|
/**
|
|
12
12
|
* WebMCP feature detection — moved 2026-07-26 from `@jini-ai/ui`'s `agent-tools/model-context.ts`
|
|
13
13
|
* (plan §8 step 6). See `model-context.ts`'s module doc for why it lives here rather than
|
package/dist/dom/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dom/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EACL,mBAAmB,EACnB,gBAAgB,GAGjB,MAAM,sBAAsB,CAAC;AAE9B;;;;GAIG;AACH,OAAO,EACL,oBAAoB,GAGrB,MAAM,oBAAoB,CAAC"}
|
|
@@ -55,9 +55,20 @@ export interface AgentElementDescriptor {
|
|
|
55
55
|
* `text` and any `value` are page-authored and therefore untrusted, exactly like `label`.
|
|
56
56
|
*/
|
|
57
57
|
export interface AgentElementState {
|
|
58
|
-
/**
|
|
58
|
+
/**
|
|
59
|
+
* Live text rendered inside the element, normalized and bounded. Empty for a bare input, and
|
|
60
|
+
* empty when withheld — see {@link AgentElementState.textWithheld}.
|
|
61
|
+
*/
|
|
59
62
|
readonly text: string;
|
|
60
63
|
readonly textTruncated: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Why `text` is empty on an element that has some — so a caller reads "withheld", not "blank".
|
|
66
|
+
*
|
|
67
|
+
* Only ever set for an editable region (a `contenteditable`), whose text is the field's own
|
|
68
|
+
* contents rather than page-authored chrome. Every other element's text is what the page already
|
|
69
|
+
* renders openly to anyone looking at it.
|
|
70
|
+
*/
|
|
71
|
+
readonly textWithheld?: string;
|
|
61
72
|
/** The field's current contents. Absent when the element is not a field, or when withheld. */
|
|
62
73
|
readonly value?: string;
|
|
63
74
|
readonly valueTruncated?: boolean;
|
|
@@ -86,6 +97,16 @@ export interface AgentElementState {
|
|
|
86
97
|
export interface AgentElementRawState {
|
|
87
98
|
/** Raw text content. The executor normalizes and bounds it. */
|
|
88
99
|
readonly text: string;
|
|
100
|
+
/**
|
|
101
|
+
* True when this element's `text` IS the field's contents rather than page-authored chrome —
|
|
102
|
+
* i.e. it is an editable region (`contenteditable`), which has no `value` of its own.
|
|
103
|
+
*
|
|
104
|
+
* A mechanical fact about the element, which is why a driver reports it: only the driver can
|
|
105
|
+
* tell. What follows from it is policy and stays in `projectElementState`, which gates such text
|
|
106
|
+
* with the same read guard it applies to `value`. Without this, a `<div contenteditable
|
|
107
|
+
* name="password">` had no `value` to withhold and handed the secret back as `text` instead.
|
|
108
|
+
*/
|
|
109
|
+
readonly textIsValue?: boolean | undefined;
|
|
89
110
|
/** Raw field contents, reported unconditionally; the executor applies the read guard. */
|
|
90
111
|
readonly value?: string | undefined;
|
|
91
112
|
readonly checked?: boolean | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-handles.d.ts","sourceRoot":"","sources":["../src/element-handles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD,qGAAqG;AACrG,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,UAAU,GACV,OAAO,GACP,MAAM,GACN,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,MAAM,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EAE1D,CAAC;AAYF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,iBAAiB;IAChC
|
|
1
|
+
{"version":3,"file":"element-handles.d.ts","sourceRoot":"","sources":["../src/element-handles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,uBAAuB,uBAAuB,CAAC;AAC5D,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,qBAAqB,qBAAqB,CAAC;AACxD,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD,qGAAqG;AACrG,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,UAAU,GACV,OAAO,GACP,MAAM,GACN,MAAM,GACN,QAAQ,GACR,QAAQ,GACR,MAAM,CAAC;AAEX,eAAO,MAAM,mBAAmB,EAAE,SAAS,gBAAgB,EAE1D,CAAC;AAYF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ5D;AAED,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;;;;OAMG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,iGAAiG;IACjG,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,gEAAgE;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,yFAAyF;IACzF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,8FAA8F;IAC9F,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;IAC7C,qFAAqF;IACrF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CAClD"}
|
package/dist/gen-ui/encoder.d.ts
CHANGED
|
@@ -15,9 +15,9 @@
|
|
|
15
15
|
* stream into AG-UI *wire* events. Same protocol, two unrelated halves of it.
|
|
16
16
|
*/
|
|
17
17
|
import type { RunProtocolEvent } from '@jini-ai/protocol';
|
|
18
|
-
import type {
|
|
19
|
-
export interface
|
|
20
|
-
/** The run this event belongs to — stamped onto every produced `
|
|
18
|
+
import type { GenUiEvent } from './events.js';
|
|
19
|
+
export interface GenUiEncodeContext {
|
|
20
|
+
/** The run this event belongs to — stamped onto every produced `GenUiEvent`. */
|
|
21
21
|
readonly runId: string;
|
|
22
22
|
/** Passed through onto the produced event's `seq`, when the caller tracks one (e.g. an SSE `Last-Event-ID`-shaped cursor). Omitted entirely (not set to `undefined`) when absent, matching the original adapter's own base-field construction. */
|
|
23
23
|
readonly seq?: number;
|
|
@@ -32,19 +32,19 @@ export interface AguiEncodeContext {
|
|
|
32
32
|
* an instance across multiple runs, since the correlation map has no per-run partitioning of its
|
|
33
33
|
* own (`ctx.runId` is only used to stamp the produced event, not to scope the map).
|
|
34
34
|
*/
|
|
35
|
-
export interface
|
|
35
|
+
export interface GenUiEncoder {
|
|
36
36
|
/**
|
|
37
|
-
* Encodes one `RunProtocolEvent` into an `
|
|
37
|
+
* Encodes one `RunProtocolEvent` into an `GenUiEvent`, or `null` if this event has no AG-UI
|
|
38
38
|
* equivalent (an unrecognized/not-yet-generalized event kind — silently dropped by the relay,
|
|
39
39
|
* matching the original adapter's own default behavior).
|
|
40
40
|
*/
|
|
41
|
-
encode(event: RunProtocolEvent, ctx:
|
|
41
|
+
encode(event: RunProtocolEvent, ctx: GenUiEncodeContext): GenUiEvent | null;
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
|
-
* Creates a fresh `
|
|
44
|
+
* Creates a fresh `GenUiEncoder` with its own, empty tool-call correlation map.
|
|
45
45
|
* @complexity `encode` is O(1) per call (one `Map` get/set/delete); memory is O(k) in the number
|
|
46
46
|
* of currently in-flight (not yet resolved) tool calls for the run this instance encodes.
|
|
47
47
|
* @overallScore 100/100
|
|
48
48
|
*/
|
|
49
|
-
export declare function
|
|
49
|
+
export declare function createGenUiEncoder(): GenUiEncoder;
|
|
50
50
|
//# sourceMappingURL=encoder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/gen-ui/encoder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"encoder.d.ts","sourceRoot":"","sources":["../../src/gen-ui/encoder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAmB,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,kBAAkB;IACjC,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,kPAAkP;IAClP,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,8FAA8F;IAC9F,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B;AAOD;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAAE,GAAG,EAAE,kBAAkB,GAAG,UAAU,GAAG,IAAI,CAAC;CAC7E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAqGjD"}
|