@ticktockbent/charlotte 0.6.2 → 0.6.3
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 +10 -0
- package/dist/browser/browser-manager.d.ts +6 -1
- package/dist/browser/browser-manager.d.ts.map +1 -1
- package/dist/browser/browser-manager.js +69 -4
- package/dist/browser/browser-manager.js.map +1 -1
- package/dist/browser/cdp-session.d.ts +15 -0
- package/dist/browser/cdp-session.d.ts.map +1 -1
- package/dist/browser/cdp-session.js +62 -4
- package/dist/browser/cdp-session.js.map +1 -1
- package/dist/browser/page-manager.d.ts +9 -2
- package/dist/browser/page-manager.d.ts.map +1 -1
- package/dist/browser/page-manager.js +52 -1
- package/dist/browser/page-manager.js.map +1 -1
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +16 -3
- package/dist/cli.js.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/renderer/interactive-extractor.d.ts.map +1 -1
- package/dist/renderer/interactive-extractor.js.map +1 -1
- package/dist/renderer/structural-tree-extractor.d.ts.map +1 -1
- package/dist/renderer/structural-tree-extractor.js +5 -22
- package/dist/renderer/structural-tree-extractor.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +9 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/dialog.d.ts.map +1 -1
- package/dist/tools/dialog.js +1 -1
- package/dist/tools/dialog.js.map +1 -1
- package/dist/tools/interaction-helpers.d.ts +24 -9
- package/dist/tools/interaction-helpers.d.ts.map +1 -1
- package/dist/tools/interaction-helpers.js +79 -82
- package/dist/tools/interaction-helpers.js.map +1 -1
- package/dist/tools/interaction.d.ts.map +1 -1
- package/dist/tools/interaction.js +66 -46
- package/dist/tools/interaction.js.map +1 -1
- package/dist/tools/meta-tool.d.ts.map +1 -1
- package/dist/tools/meta-tool.js +12 -2
- package/dist/tools/meta-tool.js.map +1 -1
- package/dist/tools/monitoring.d.ts.map +1 -1
- package/dist/tools/monitoring.js +1 -1
- package/dist/tools/monitoring.js.map +1 -1
- package/dist/tools/navigation.d.ts.map +1 -1
- package/dist/tools/navigation.js +72 -32
- package/dist/tools/navigation.js.map +1 -1
- package/dist/tools/observation.d.ts.map +1 -1
- package/dist/tools/observation.js +83 -74
- package/dist/tools/observation.js.map +1 -1
- package/dist/tools/session.d.ts.map +1 -1
- package/dist/tools/session.js +161 -116
- package/dist/tools/session.js.map +1 -1
- package/dist/tools/tool-groups.d.ts +3 -3
- package/dist/tools/tool-groups.d.ts.map +1 -1
- package/dist/tools/tool-groups.js +51 -19
- package/dist/tools/tool-groups.js.map +1 -1
- package/dist/tools/tool-helpers.d.ts.map +1 -1
- package/dist/tools/tool-helpers.js +1 -3
- package/dist/tools/tool-helpers.js.map +1 -1
- package/dist/tools/wait-for.js.map +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-extractor.js","sourceRoot":"","sources":["../../src/renderer/interactive-extractor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interactive-extractor.js","sourceRoot":"","sources":["../../src/renderer/interactive-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structural-tree-extractor.d.ts","sourceRoot":"","sources":["../../src/renderer/structural-tree-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"structural-tree-extractor.d.ts","sourceRoot":"","sources":["../../src/renderer/structural-tree-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAyFjE,MAAM,WAAW,qBAAqB;IACpC,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAmLD,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,YAAY,EAAE,EACzB,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,MAAM,CASR"}
|
|
@@ -18,20 +18,8 @@ const INTERACTIVE_TAG = {
|
|
|
18
18
|
tab: "tab",
|
|
19
19
|
treeitem: "treeitem",
|
|
20
20
|
};
|
|
21
|
-
const CONTENT_MARKER_ROLES = new Set([
|
|
22
|
-
|
|
23
|
-
"blockquote",
|
|
24
|
-
"image",
|
|
25
|
-
"img",
|
|
26
|
-
"figure",
|
|
27
|
-
]);
|
|
28
|
-
const LEAF_ROLES = new Set([
|
|
29
|
-
"StaticText",
|
|
30
|
-
"text",
|
|
31
|
-
"InlineTextBox",
|
|
32
|
-
"LineBreak",
|
|
33
|
-
"separator",
|
|
34
|
-
]);
|
|
21
|
+
const CONTENT_MARKER_ROLES = new Set(["paragraph", "blockquote", "image", "img", "figure"]);
|
|
22
|
+
const LEAF_ROLES = new Set(["StaticText", "text", "InlineTextBox", "LineBreak", "separator"]);
|
|
35
23
|
const LANDMARK_TAGS = new Set([
|
|
36
24
|
"banner",
|
|
37
25
|
"navigation",
|
|
@@ -105,7 +93,7 @@ function buildDisplayTree(nodes, options = {}) {
|
|
|
105
93
|
}
|
|
106
94
|
if (isInteractiveRole(node.role)) {
|
|
107
95
|
const tag = INTERACTIVE_TAG[node.role] ?? node.role;
|
|
108
|
-
const label = options.labelInteractive ?
|
|
96
|
+
const label = options.labelInteractive ? node.name || undefined : undefined;
|
|
109
97
|
result.push({
|
|
110
98
|
tag,
|
|
111
99
|
label,
|
|
@@ -166,10 +154,7 @@ function collapseConsecutive(items) {
|
|
|
166
154
|
let i = 0;
|
|
167
155
|
while (i < items.length) {
|
|
168
156
|
const current = items[i];
|
|
169
|
-
if (!current.collapsible ||
|
|
170
|
-
current.children.length > 0 ||
|
|
171
|
-
current.label ||
|
|
172
|
-
current.metadata) {
|
|
157
|
+
if (!current.collapsible || current.children.length > 0 || current.label || current.metadata) {
|
|
173
158
|
collapsed.push(current);
|
|
174
159
|
i++;
|
|
175
160
|
continue;
|
|
@@ -214,9 +199,7 @@ function renderLines(items, isLastStack = []) {
|
|
|
214
199
|
prefix += isLast ? "└─ " : "├─ ";
|
|
215
200
|
let display;
|
|
216
201
|
if (LANDMARK_TAGS.has(item.tag)) {
|
|
217
|
-
display = item.label
|
|
218
|
-
? `[${item.tag} "${item.label}"]`
|
|
219
|
-
: `[${item.tag}]`;
|
|
202
|
+
display = item.label ? `[${item.tag} "${item.label}"]` : `[${item.tag}]`;
|
|
220
203
|
}
|
|
221
204
|
else {
|
|
222
205
|
display = item.tag;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structural-tree-extractor.js","sourceRoot":"","sources":["../../src/renderer/structural-tree-extractor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAYhG,sCAAsC;AAEtC,MAAM,eAAe,GAA2B;IAC9C,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,gBAAgB,EAAE,UAAU;IAC5B,aAAa,EAAE,UAAU;IACzB,GAAG,EAAE,KAAK;IACV,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"structural-tree-extractor.js","sourceRoot":"","sources":["../../src/renderer/structural-tree-extractor.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AASzD,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAMnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,WAAW,UAAU;IACzB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC;IACzB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,aAAa,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE,aAAkB,GAAG,kBAAkB,CAgG9F"}
|
package/dist/server.js
CHANGED
|
@@ -72,11 +72,19 @@ export function createServer(deps, options = {}) {
|
|
|
72
72
|
Object.assign(registry, registerMonitoringTools(server, toolDeps));
|
|
73
73
|
Object.assign(registry, registerDevModeTools(server, toolDeps));
|
|
74
74
|
// ─── Apply profile: disable tools not in the enabled set ───
|
|
75
|
+
// Set .enabled directly to batch state changes before a single
|
|
76
|
+
// sendToolListChanged(). Do not call tool.disable() here — each
|
|
77
|
+
// call fires an independent notification via the SDK's update().
|
|
78
|
+
let disabledCount = 0;
|
|
75
79
|
for (const [toolName, tool] of Object.entries(registry)) {
|
|
76
80
|
if (!enabledTools.has(toolName)) {
|
|
77
|
-
tool.
|
|
81
|
+
tool.enabled = false;
|
|
82
|
+
disabledCount++;
|
|
78
83
|
}
|
|
79
84
|
}
|
|
85
|
+
if (disabledCount > 0) {
|
|
86
|
+
server.sendToolListChanged();
|
|
87
|
+
}
|
|
80
88
|
// ─── Register meta-tool (always enabled) ───
|
|
81
89
|
registerMetaTool(server, registry);
|
|
82
90
|
return { server, registry };
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/tools/dialog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"dialog.d.ts","sourceRoot":"","sources":["../../src/tools/dialog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,gBAAgB,GACrB,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAmFhC"}
|
package/dist/tools/dialog.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { CharlotteError, CharlotteErrorCode } from "../types/errors.js";
|
|
3
3
|
import { logger } from "../utils/logger.js";
|
|
4
|
-
import { ensureReady, renderAfterAction, stripEmptyFields, handleToolError } from "./tool-helpers.js";
|
|
4
|
+
import { ensureReady, renderAfterAction, stripEmptyFields, handleToolError, } from "./tool-helpers.js";
|
|
5
5
|
export function registerDialogTools(server, deps) {
|
|
6
6
|
const tools = {};
|
|
7
7
|
// ─── charlotte_dialog ───
|
package/dist/tools/dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/tools/dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,
|
|
1
|
+
{"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/tools/dialog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,UAAU,mBAAmB,CACjC,MAAiB,EACjB,IAAsB;IAEtB,MAAM,KAAK,GAAmC,EAAE,CAAC;IAEjD,2BAA2B;IAC3B,KAAK,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,YAAY,CAC7C,kBAAkB,EAClB;QACE,WAAW,EACT,oKAAoK;QACtK,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;YACrF,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,sFAAsF,CACvF;SACJ;KACF,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE;QAChC,IAAI,CAAC;YACH,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;YAExB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;YAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;YAElE,IAAI,CAAC,aAAa,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzC,MAAM,IAAI,cAAc,CACtB,kBAAkB,CAAC,aAAa,EAChC,8BAA8B,EAC9B,+FAA+F,CAChG,CAAC;YACJ,CAAC;YAED,gEAAgE;YAChE,MAAM,aAAa,GAAG;gBACpB,IAAI,EAAE,iBAAiB,CAAC,IAAI;gBAC5B,OAAO,EAAE,iBAAiB,CAAC,OAAO;gBAClC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW;aAC1C,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE;gBAC7B,IAAI,EAAE,iBAAiB,CAAC,IAAI;gBAC5B,MAAM;gBACN,WAAW;aACZ,CAAC,CAAC;YAEH,+BAA+B;YAC/B,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,CAAC,OAAO,EAAE,CAAC;YAChC,CAAC;YAED,iCAAiC;YACjC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC;YAEtC,iDAAiD;YACjD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAExD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAErD,8CAA8C;YAC9C,MAAM,eAAe,GAAG;gBACtB,cAAc,EAAE,aAAa;gBAC7B,IAAI,EAAE,gBAAgB,CAAC,cAAc,CAAC;aACvC,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;qBACtC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;IACH,CAAC,CACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1,10 +1,19 @@
|
|
|
1
|
-
import type { Page, KeyInput } from "puppeteer";
|
|
1
|
+
import type { Page, KeyInput, CDPSession } from "puppeteer";
|
|
2
|
+
/**
|
|
3
|
+
* Scroll an element into view, get its box model, and return the center coordinates.
|
|
4
|
+
* Shared helper that deduplicates the scroll + getBoxModel + compute-center pattern.
|
|
5
|
+
*/
|
|
6
|
+
export declare function scrollAndGetCenter(session: CDPSession, backendNodeId: number): Promise<{
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
}>;
|
|
2
10
|
/** Maps short modifier names to Puppeteer KeyInput values. */
|
|
3
11
|
export declare const MODIFIER_KEY_MAP: Record<string, KeyInput>;
|
|
4
12
|
/**
|
|
5
13
|
* Click an element by backend node ID using CDP to get coordinates, then click at those coords.
|
|
14
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
6
15
|
*/
|
|
7
|
-
export declare function clickElementByBackendNodeId(page: Page, backendNodeId: number, clickType?: "left" | "right" | "double", modifiers?: Array<"ctrl" | "shift" | "alt" | "meta"
|
|
16
|
+
export declare function clickElementByBackendNodeId(page: Page, backendNodeId: number, clickType?: "left" | "right" | "double", modifiers?: Array<"ctrl" | "shift" | "alt" | "meta">, session?: CDPSession): Promise<void>;
|
|
8
17
|
/**
|
|
9
18
|
* Wait for any navigation triggered by an action, or fall back to a brief settle pause.
|
|
10
19
|
*
|
|
@@ -23,33 +32,39 @@ export declare function waitForPossibleNavigation(page: Page, action: () => Prom
|
|
|
23
32
|
}): Promise<void>;
|
|
24
33
|
/**
|
|
25
34
|
* Focus an element by backend node ID using CDP.
|
|
35
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
26
36
|
*/
|
|
27
|
-
export declare function focusElementByBackendNodeId(page: Page, backendNodeId: number): Promise<void>;
|
|
37
|
+
export declare function focusElementByBackendNodeId(page: Page, backendNodeId: number, session?: CDPSession): Promise<void>;
|
|
28
38
|
/**
|
|
29
39
|
* Hover over an element by backend node ID.
|
|
40
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
30
41
|
*/
|
|
31
|
-
export declare function hoverElementByBackendNodeId(page: Page, backendNodeId: number): Promise<void>;
|
|
42
|
+
export declare function hoverElementByBackendNodeId(page: Page, backendNodeId: number, session?: CDPSession): Promise<void>;
|
|
32
43
|
/**
|
|
33
44
|
* Drag one element to another using mouse primitives.
|
|
34
45
|
* Sequence: move to source → mousedown → move to target → mouseup
|
|
35
46
|
* Includes intermediate move steps and delays to ensure drag events fire reliably.
|
|
47
|
+
* Uses a single CDP session for both source and target coordinate lookups.
|
|
48
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
36
49
|
*/
|
|
37
|
-
export declare function dragElementToElement(page: Page, sourceBackendNodeId: number, targetBackendNodeId: number): Promise<void>;
|
|
50
|
+
export declare function dragElementToElement(page: Page, sourceBackendNodeId: number, targetBackendNodeId: number, session?: CDPSession): Promise<void>;
|
|
38
51
|
/**
|
|
39
52
|
* Type text into an input element. Uses CDP to focus, optionally clears, then types via keyboard.
|
|
53
|
+
* Accepts an optional CDPSession — if not provided, creates one internally for the focus step.
|
|
40
54
|
*/
|
|
41
|
-
export declare function typeIntoElement(page: Page, backendNodeId: number, text: string, clearFirst: boolean, pressEnter: boolean, characterDelay?: number): Promise<void>;
|
|
55
|
+
export declare function typeIntoElement(page: Page, backendNodeId: number, text: string, clearFirst: boolean, pressEnter: boolean, characterDelay?: number, session?: CDPSession): Promise<void>;
|
|
42
56
|
/**
|
|
43
57
|
* Select a value in a <select> element using CDP to set the value and dispatch change events.
|
|
58
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
44
59
|
*/
|
|
45
|
-
export declare function selectOptionByBackendNodeId(page: Page, backendNodeId: number, value: string): Promise<void>;
|
|
60
|
+
export declare function selectOptionByBackendNodeId(page: Page, backendNodeId: number, value: string, session?: CDPSession): Promise<void>;
|
|
46
61
|
/**
|
|
47
62
|
* Submit a form by backend node ID — calls form.submit() via CDP.
|
|
48
63
|
*/
|
|
49
|
-
export declare function submitFormByBackendNodeId(page: Page, backendNodeId: number): Promise<void>;
|
|
64
|
+
export declare function submitFormByBackendNodeId(page: Page, backendNodeId: number, session?: CDPSession): Promise<void>;
|
|
50
65
|
/**
|
|
51
66
|
* Set files on a file input element using CDP DOM.setFileInputFiles.
|
|
52
67
|
* Validates that the target element is actually an <input type="file">.
|
|
53
68
|
*/
|
|
54
|
-
export declare function setFileInputFiles(page: Page, backendNodeId: number, filePaths: string[]): Promise<void>;
|
|
69
|
+
export declare function setFileInputFiles(page: Page, backendNodeId: number, filePaths: string[], session?: CDPSession): Promise<void>;
|
|
55
70
|
//# sourceMappingURL=interaction-helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction-helpers.d.ts","sourceRoot":"","sources":["../../src/tools/interaction-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"interaction-helpers.d.ts","sourceRoot":"","sources":["../../src/tools/interaction-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI5D;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,UAAU,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAkBnC;AAED,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAKrD,CAAC;AAEF;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,SAAS,GAAE,MAAM,GAAG,OAAO,GAAG,QAAiB,EAC/C,SAAS,GAAE,KAAK,CAAC,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAM,EACxD,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAC3B,EAAE,iBAAuB,EAAE,aAAqB,EAAE,QAAa,EAAE;;;;CAAK,GACrE,OAAO,CAAC,IAAI,CAAC,CAoEf;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAQf;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,MAAM,EAC3B,mBAAmB,EAAE,MAAM,EAC3B,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CA4Bf;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,OAAO,EACnB,UAAU,EAAE,OAAO,EACnB,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAwBf;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAwBf"}
|
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
import { CharlotteError, CharlotteErrorCode } from "../types/errors.js";
|
|
2
2
|
import { logger } from "../utils/logger.js";
|
|
3
|
+
/**
|
|
4
|
+
* Scroll an element into view, get its box model, and return the center coordinates.
|
|
5
|
+
* Shared helper that deduplicates the scroll + getBoxModel + compute-center pattern.
|
|
6
|
+
*/
|
|
7
|
+
export async function scrollAndGetCenter(session, backendNodeId) {
|
|
8
|
+
await session.send("DOM.scrollIntoViewIfNeeded", { backendNodeId });
|
|
9
|
+
const { model } = await session.send("DOM.getBoxModel", { backendNodeId });
|
|
10
|
+
if (!model) {
|
|
11
|
+
throw new CharlotteError(CharlotteErrorCode.ELEMENT_NOT_FOUND, "Element has no visible box model — it may be hidden or zero-sized.", "Call charlotte_observe to check the element's state.");
|
|
12
|
+
}
|
|
13
|
+
const contentQuad = model.content;
|
|
14
|
+
return {
|
|
15
|
+
x: (contentQuad[0] + contentQuad[2] + contentQuad[4] + contentQuad[6]) / 4,
|
|
16
|
+
y: (contentQuad[1] + contentQuad[3] + contentQuad[5] + contentQuad[7]) / 4,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
3
19
|
/** Maps short modifier names to Puppeteer KeyInput values. */
|
|
4
20
|
export const MODIFIER_KEY_MAP = {
|
|
5
21
|
ctrl: "Control",
|
|
@@ -9,24 +25,13 @@ export const MODIFIER_KEY_MAP = {
|
|
|
9
25
|
};
|
|
10
26
|
/**
|
|
11
27
|
* Click an element by backend node ID using CDP to get coordinates, then click at those coords.
|
|
28
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
12
29
|
*/
|
|
13
|
-
export async function clickElementByBackendNodeId(page, backendNodeId, clickType = "left", modifiers = []) {
|
|
14
|
-
|
|
15
|
-
const cdpSession = await page.createCDPSession();
|
|
30
|
+
export async function clickElementByBackendNodeId(page, backendNodeId, clickType = "left", modifiers = [], session) {
|
|
31
|
+
const ownSession = !session;
|
|
32
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
16
33
|
try {
|
|
17
|
-
|
|
18
|
-
await cdpSession.send("DOM.scrollIntoViewIfNeeded", { backendNodeId });
|
|
19
|
-
// Get box model for coordinates
|
|
20
|
-
const { model } = await cdpSession.send("DOM.getBoxModel", {
|
|
21
|
-
backendNodeId,
|
|
22
|
-
});
|
|
23
|
-
if (!model) {
|
|
24
|
-
throw new CharlotteError(CharlotteErrorCode.ELEMENT_NOT_FOUND, "Element has no visible box model — it may be hidden or zero-sized.", "Call charlotte_observe to check the element's state.");
|
|
25
|
-
}
|
|
26
|
-
// content quad: [x1,y1, x2,y2, x3,y3, x4,y4]
|
|
27
|
-
const contentQuad = model.content;
|
|
28
|
-
const centerX = (contentQuad[0] + contentQuad[2] + contentQuad[4] + contentQuad[6]) / 4;
|
|
29
|
-
const centerY = (contentQuad[1] + contentQuad[3] + contentQuad[5] + contentQuad[7]) / 4;
|
|
34
|
+
const { x: centerX, y: centerY } = await scrollAndGetCenter(cdpSession, backendNodeId);
|
|
30
35
|
// Hold down modifier keys before the click
|
|
31
36
|
for (const modifier of modifiers) {
|
|
32
37
|
const modifierKey = MODIFIER_KEY_MAP[modifier];
|
|
@@ -52,7 +57,8 @@ export async function clickElementByBackendNodeId(page, backendNodeId, clickType
|
|
|
52
57
|
}
|
|
53
58
|
}
|
|
54
59
|
finally {
|
|
55
|
-
|
|
60
|
+
if (ownSession)
|
|
61
|
+
await cdpSession.detach();
|
|
56
62
|
}
|
|
57
63
|
}
|
|
58
64
|
/**
|
|
@@ -132,88 +138,72 @@ export async function waitForPossibleNavigation(page, action, { detectionWindowM
|
|
|
132
138
|
}
|
|
133
139
|
/**
|
|
134
140
|
* Focus an element by backend node ID using CDP.
|
|
141
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
135
142
|
*/
|
|
136
|
-
export async function focusElementByBackendNodeId(page, backendNodeId) {
|
|
137
|
-
const
|
|
143
|
+
export async function focusElementByBackendNodeId(page, backendNodeId, session) {
|
|
144
|
+
const ownSession = !session;
|
|
145
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
138
146
|
try {
|
|
139
147
|
await cdpSession.send("DOM.focus", { backendNodeId });
|
|
140
148
|
}
|
|
141
149
|
finally {
|
|
142
|
-
|
|
150
|
+
if (ownSession)
|
|
151
|
+
await cdpSession.detach();
|
|
143
152
|
}
|
|
144
153
|
}
|
|
145
154
|
/**
|
|
146
155
|
* Hover over an element by backend node ID.
|
|
156
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
147
157
|
*/
|
|
148
|
-
export async function hoverElementByBackendNodeId(page, backendNodeId) {
|
|
149
|
-
const
|
|
158
|
+
export async function hoverElementByBackendNodeId(page, backendNodeId, session) {
|
|
159
|
+
const ownSession = !session;
|
|
160
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
150
161
|
try {
|
|
151
|
-
await cdpSession
|
|
152
|
-
|
|
153
|
-
backendNodeId,
|
|
154
|
-
});
|
|
155
|
-
if (!model) {
|
|
156
|
-
throw new CharlotteError(CharlotteErrorCode.ELEMENT_NOT_FOUND, "Element has no visible box model for hover.");
|
|
157
|
-
}
|
|
158
|
-
const contentQuad = model.content;
|
|
159
|
-
const centerX = (contentQuad[0] + contentQuad[2] + contentQuad[4] + contentQuad[6]) / 4;
|
|
160
|
-
const centerY = (contentQuad[1] + contentQuad[3] + contentQuad[5] + contentQuad[7]) / 4;
|
|
161
|
-
await page.mouse.move(centerX, centerY);
|
|
162
|
+
const { x, y } = await scrollAndGetCenter(cdpSession, backendNodeId);
|
|
163
|
+
await page.mouse.move(x, y);
|
|
162
164
|
}
|
|
163
165
|
finally {
|
|
164
|
-
|
|
166
|
+
if (ownSession)
|
|
167
|
+
await cdpSession.detach();
|
|
165
168
|
}
|
|
166
169
|
}
|
|
167
170
|
/**
|
|
168
|
-
*
|
|
169
|
-
*
|
|
171
|
+
* Drag one element to another using mouse primitives.
|
|
172
|
+
* Sequence: move to source → mousedown → move to target → mouseup
|
|
173
|
+
* Includes intermediate move steps and delays to ensure drag events fire reliably.
|
|
174
|
+
* Uses a single CDP session for both source and target coordinate lookups.
|
|
175
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
170
176
|
*/
|
|
171
|
-
async function
|
|
172
|
-
const
|
|
177
|
+
export async function dragElementToElement(page, sourceBackendNodeId, targetBackendNodeId, session) {
|
|
178
|
+
const ownSession = !session;
|
|
179
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
173
180
|
try {
|
|
174
|
-
await cdpSession
|
|
175
|
-
const
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
181
|
+
const sourceCenter = await scrollAndGetCenter(cdpSession, sourceBackendNodeId);
|
|
182
|
+
const targetCenter = await scrollAndGetCenter(cdpSession, targetBackendNodeId);
|
|
183
|
+
// Move to source and press down
|
|
184
|
+
await page.mouse.move(sourceCenter.x, sourceCenter.y);
|
|
185
|
+
await page.mouse.down();
|
|
186
|
+
// Intermediate move to trigger dragstart (some browsers need movement to begin a drag)
|
|
187
|
+
await page.mouse.move(sourceCenter.x + (targetCenter.x - sourceCenter.x) * 0.25, sourceCenter.y + (targetCenter.y - sourceCenter.y) * 0.25, { steps: 5 });
|
|
188
|
+
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
189
|
+
// Move to target
|
|
190
|
+
await page.mouse.move(targetCenter.x, targetCenter.y, { steps: 10 });
|
|
191
|
+
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
192
|
+
// Release
|
|
193
|
+
await page.mouse.up();
|
|
186
194
|
}
|
|
187
195
|
finally {
|
|
188
|
-
|
|
196
|
+
if (ownSession)
|
|
197
|
+
await cdpSession.detach();
|
|
189
198
|
}
|
|
190
199
|
}
|
|
191
|
-
/**
|
|
192
|
-
* Drag one element to another using mouse primitives.
|
|
193
|
-
* Sequence: move to source → mousedown → move to target → mouseup
|
|
194
|
-
* Includes intermediate move steps and delays to ensure drag events fire reliably.
|
|
195
|
-
*/
|
|
196
|
-
export async function dragElementToElement(page, sourceBackendNodeId, targetBackendNodeId) {
|
|
197
|
-
const sourceCenter = await getElementCenter(page, sourceBackendNodeId);
|
|
198
|
-
const targetCenter = await getElementCenter(page, targetBackendNodeId);
|
|
199
|
-
// Move to source and press down
|
|
200
|
-
await page.mouse.move(sourceCenter.x, sourceCenter.y);
|
|
201
|
-
await page.mouse.down();
|
|
202
|
-
// Intermediate move to trigger dragstart (some browsers need movement to begin a drag)
|
|
203
|
-
await page.mouse.move(sourceCenter.x + (targetCenter.x - sourceCenter.x) * 0.25, sourceCenter.y + (targetCenter.y - sourceCenter.y) * 0.25, { steps: 5 });
|
|
204
|
-
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
205
|
-
// Move to target
|
|
206
|
-
await page.mouse.move(targetCenter.x, targetCenter.y, { steps: 10 });
|
|
207
|
-
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
208
|
-
// Release
|
|
209
|
-
await page.mouse.up();
|
|
210
|
-
}
|
|
211
200
|
/**
|
|
212
201
|
* Type text into an input element. Uses CDP to focus, optionally clears, then types via keyboard.
|
|
202
|
+
* Accepts an optional CDPSession — if not provided, creates one internally for the focus step.
|
|
213
203
|
*/
|
|
214
|
-
export async function typeIntoElement(page, backendNodeId, text, clearFirst, pressEnter, characterDelay) {
|
|
204
|
+
export async function typeIntoElement(page, backendNodeId, text, clearFirst, pressEnter, characterDelay, session) {
|
|
215
205
|
// Focus the element
|
|
216
|
-
await focusElementByBackendNodeId(page, backendNodeId);
|
|
206
|
+
await focusElementByBackendNodeId(page, backendNodeId, session);
|
|
217
207
|
if (clearFirst) {
|
|
218
208
|
// Select all text then delete — works cross-platform
|
|
219
209
|
await page.keyboard.down("Control");
|
|
@@ -230,9 +220,11 @@ export async function typeIntoElement(page, backendNodeId, text, clearFirst, pre
|
|
|
230
220
|
}
|
|
231
221
|
/**
|
|
232
222
|
* Select a value in a <select> element using CDP to set the value and dispatch change events.
|
|
223
|
+
* Accepts an optional CDPSession — if not provided, creates and detaches one internally.
|
|
233
224
|
*/
|
|
234
|
-
export async function selectOptionByBackendNodeId(page, backendNodeId, value) {
|
|
235
|
-
const
|
|
225
|
+
export async function selectOptionByBackendNodeId(page, backendNodeId, value, session) {
|
|
226
|
+
const ownSession = !session;
|
|
227
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
236
228
|
try {
|
|
237
229
|
// Resolve the node to get a remote object reference
|
|
238
230
|
const { object } = await cdpSession.send("DOM.resolveNode", {
|
|
@@ -261,14 +253,16 @@ export async function selectOptionByBackendNodeId(page, backendNodeId, value) {
|
|
|
261
253
|
});
|
|
262
254
|
}
|
|
263
255
|
finally {
|
|
264
|
-
|
|
256
|
+
if (ownSession)
|
|
257
|
+
await cdpSession.detach();
|
|
265
258
|
}
|
|
266
259
|
}
|
|
267
260
|
/**
|
|
268
261
|
* Submit a form by backend node ID — calls form.submit() via CDP.
|
|
269
262
|
*/
|
|
270
|
-
export async function submitFormByBackendNodeId(page, backendNodeId) {
|
|
271
|
-
const
|
|
263
|
+
export async function submitFormByBackendNodeId(page, backendNodeId, session) {
|
|
264
|
+
const ownSession = !session;
|
|
265
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
272
266
|
try {
|
|
273
267
|
const { object } = await cdpSession.send("DOM.resolveNode", {
|
|
274
268
|
backendNodeId,
|
|
@@ -284,15 +278,17 @@ export async function submitFormByBackendNodeId(page, backendNodeId) {
|
|
|
284
278
|
});
|
|
285
279
|
}
|
|
286
280
|
finally {
|
|
287
|
-
|
|
281
|
+
if (ownSession)
|
|
282
|
+
await cdpSession.detach();
|
|
288
283
|
}
|
|
289
284
|
}
|
|
290
285
|
/**
|
|
291
286
|
* Set files on a file input element using CDP DOM.setFileInputFiles.
|
|
292
287
|
* Validates that the target element is actually an <input type="file">.
|
|
293
288
|
*/
|
|
294
|
-
export async function setFileInputFiles(page, backendNodeId, filePaths) {
|
|
295
|
-
const
|
|
289
|
+
export async function setFileInputFiles(page, backendNodeId, filePaths, session) {
|
|
290
|
+
const ownSession = !session;
|
|
291
|
+
const cdpSession = session ?? (await page.createCDPSession());
|
|
296
292
|
try {
|
|
297
293
|
const { node } = await cdpSession.send("DOM.describeNode", { backendNodeId });
|
|
298
294
|
const isFileInput = node.nodeName === "INPUT" &&
|
|
@@ -306,7 +302,8 @@ export async function setFileInputFiles(page, backendNodeId, filePaths) {
|
|
|
306
302
|
});
|
|
307
303
|
}
|
|
308
304
|
finally {
|
|
309
|
-
|
|
305
|
+
if (ownSession)
|
|
306
|
+
await cdpSession.detach();
|
|
310
307
|
}
|
|
311
308
|
}
|
|
312
309
|
//# sourceMappingURL=interaction-helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction-helpers.js","sourceRoot":"","sources":["../../src/tools/interaction-helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"interaction-helpers.js","sourceRoot":"","sources":["../../src/tools/interaction-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/tools/interaction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"interaction.d.ts","sourceRoot":"","sources":["../../src/tools/interaction.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AA0B1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,gBAAgB,GACrB,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAsxBhC"}
|