agent-web-interface 4.2.0 → 4.4.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/dist/src/browser/connection-utils.d.ts +48 -0
- package/dist/src/browser/connection-utils.d.ts.map +1 -0
- package/dist/src/browser/connection-utils.js +129 -0
- package/dist/src/browser/connection-utils.js.map +1 -0
- package/dist/src/browser/index.d.ts +3 -1
- package/dist/src/browser/index.d.ts.map +1 -1
- package/dist/src/browser/index.js +2 -1
- package/dist/src/browser/index.js.map +1 -1
- package/dist/src/browser/session-manager.d.ts +1 -89
- package/dist/src/browser/session-manager.d.ts.map +1 -1
- package/dist/src/browser/session-manager.js +1 -116
- package/dist/src/browser/session-manager.js.map +1 -1
- package/dist/src/browser/session-manager.types.d.ts +90 -0
- package/dist/src/browser/session-manager.types.d.ts.map +1 -0
- package/dist/src/browser/session-manager.types.js +7 -0
- package/dist/src/browser/session-manager.types.js.map +1 -0
- package/dist/src/form/constraint-extraction.d.ts +31 -0
- package/dist/src/form/constraint-extraction.d.ts.map +1 -0
- package/dist/src/form/constraint-extraction.js +110 -0
- package/dist/src/form/constraint-extraction.js.map +1 -0
- package/dist/src/form/field-extractor.d.ts.map +1 -1
- package/dist/src/form/field-extractor.js +3 -444
- package/dist/src/form/field-extractor.js.map +1 -1
- package/dist/src/form/field-state-extractor.d.ts +22 -0
- package/dist/src/form/field-state-extractor.d.ts.map +1 -0
- package/dist/src/form/field-state-extractor.js +55 -0
- package/dist/src/form/field-state-extractor.js.map +1 -0
- package/dist/src/form/form-actions.d.ts +45 -0
- package/dist/src/form/form-actions.d.ts.map +1 -0
- package/dist/src/form/form-actions.js +108 -0
- package/dist/src/form/form-actions.js.map +1 -0
- package/dist/src/form/form-detector.d.ts +0 -36
- package/dist/src/form/form-detector.d.ts.map +1 -1
- package/dist/src/form/form-detector.js +11 -376
- package/dist/src/form/form-detector.js.map +1 -1
- package/dist/src/form/input-clustering.d.ts +15 -0
- package/dist/src/form/input-clustering.d.ts.map +1 -0
- package/dist/src/form/input-clustering.js +61 -0
- package/dist/src/form/input-clustering.js.map +1 -0
- package/dist/src/form/intent-inference.d.ts +28 -0
- package/dist/src/form/intent-inference.d.ts.map +1 -0
- package/dist/src/form/intent-inference.js +137 -0
- package/dist/src/form/intent-inference.js.map +1 -0
- package/dist/src/form/purpose-inference.d.ts +50 -0
- package/dist/src/form/purpose-inference.d.ts.map +1 -0
- package/dist/src/form/purpose-inference.js +313 -0
- package/dist/src/form/purpose-inference.js.map +1 -0
- package/dist/src/form/submit-detection.d.ts +36 -0
- package/dist/src/form/submit-detection.d.ts.map +1 -0
- package/dist/src/form/submit-detection.js +101 -0
- package/dist/src/form/submit-detection.js.map +1 -0
- package/dist/src/form/types.d.ts +2 -2
- package/dist/src/index.js +65 -48
- package/dist/src/index.js.map +1 -1
- package/dist/src/observation/observation-accumulator.d.ts +1 -1
- package/dist/src/observation/observation-accumulator.js +1 -1
- package/dist/src/observation/observer-script.d.ts +1 -1
- package/dist/src/observation/observer-script.d.ts.map +1 -1
- package/dist/src/observation/observer-script.js +129 -7
- package/dist/src/observation/observer-script.js.map +1 -1
- package/dist/src/query/disambiguation.d.ts +18 -0
- package/dist/src/query/disambiguation.d.ts.map +1 -0
- package/dist/src/query/disambiguation.js +123 -0
- package/dist/src/query/disambiguation.js.map +1 -0
- package/dist/src/query/fuzzy-match.d.ts +17 -0
- package/dist/src/query/fuzzy-match.d.ts.map +1 -0
- package/dist/src/query/fuzzy-match.js +34 -0
- package/dist/src/query/fuzzy-match.js.map +1 -0
- package/dist/src/query/index.d.ts +3 -0
- package/dist/src/query/index.d.ts.map +1 -1
- package/dist/src/query/index.js +6 -0
- package/dist/src/query/index.js.map +1 -1
- package/dist/src/query/query-engine.d.ts +0 -35
- package/dist/src/query/query-engine.d.ts.map +1 -1
- package/dist/src/query/query-engine.js +9 -309
- package/dist/src/query/query-engine.js.map +1 -1
- package/dist/src/query/scoring.d.ts +52 -0
- package/dist/src/query/scoring.d.ts.map +1 -0
- package/dist/src/query/scoring.js +162 -0
- package/dist/src/query/scoring.js.map +1 -0
- package/dist/src/server/mcp-server.d.ts.map +1 -1
- package/dist/src/server/mcp-server.js +29 -1
- package/dist/src/server/mcp-server.js.map +1 -1
- package/dist/src/snapshot/element-resolver.d.ts +50 -18
- package/dist/src/snapshot/element-resolver.d.ts.map +1 -1
- package/dist/src/snapshot/element-resolver.js +180 -101
- package/dist/src/snapshot/element-resolver.js.map +1 -1
- package/dist/src/snapshot/extractors/ax-extractor.d.ts +1 -1
- package/dist/src/snapshot/extractors/ax-extractor.d.ts.map +1 -1
- package/dist/src/snapshot/extractors/ax-extractor.js +4 -1
- package/dist/src/snapshot/extractors/ax-extractor.js.map +1 -1
- package/dist/src/snapshot/extractors/index.d.ts +1 -1
- package/dist/src/snapshot/extractors/index.d.ts.map +1 -1
- package/dist/src/snapshot/extractors/index.js +1 -1
- package/dist/src/snapshot/extractors/index.js.map +1 -1
- package/dist/src/snapshot/extractors/region-resolver.d.ts.map +1 -1
- package/dist/src/snapshot/extractors/region-resolver.js +8 -0
- package/dist/src/snapshot/extractors/region-resolver.js.map +1 -1
- package/dist/src/snapshot/extractors/types.d.ts +8 -0
- package/dist/src/snapshot/extractors/types.d.ts.map +1 -1
- package/dist/src/snapshot/extractors/types.js +16 -0
- package/dist/src/snapshot/extractors/types.js.map +1 -1
- package/dist/src/snapshot/frame-context.d.ts +68 -0
- package/dist/src/snapshot/frame-context.d.ts.map +1 -0
- package/dist/src/snapshot/frame-context.js +131 -0
- package/dist/src/snapshot/frame-context.js.map +1 -0
- package/dist/src/snapshot/heading-index.d.ts +28 -0
- package/dist/src/snapshot/heading-index.d.ts.map +1 -0
- package/dist/src/snapshot/heading-index.js +108 -0
- package/dist/src/snapshot/heading-index.js.map +1 -0
- package/dist/src/snapshot/index.d.ts +5 -3
- package/dist/src/snapshot/index.d.ts.map +1 -1
- package/dist/src/snapshot/index.js +3 -2
- package/dist/src/snapshot/index.js.map +1 -1
- package/dist/src/snapshot/kind-mapping.d.ts +30 -0
- package/dist/src/snapshot/kind-mapping.d.ts.map +1 -0
- package/dist/src/snapshot/kind-mapping.js +114 -0
- package/dist/src/snapshot/kind-mapping.js.map +1 -0
- package/dist/src/snapshot/node-filter.d.ts +31 -0
- package/dist/src/snapshot/node-filter.d.ts.map +1 -0
- package/dist/src/snapshot/node-filter.js +137 -0
- package/dist/src/snapshot/node-filter.js.map +1 -0
- package/dist/src/snapshot/node-synthesizer.d.ts +62 -0
- package/dist/src/snapshot/node-synthesizer.d.ts.map +1 -0
- package/dist/src/snapshot/node-synthesizer.js +185 -0
- package/dist/src/snapshot/node-synthesizer.js.map +1 -0
- package/dist/src/snapshot/snapshot-compiler.d.ts +2 -36
- package/dist/src/snapshot/snapshot-compiler.d.ts.map +1 -1
- package/dist/src/snapshot/snapshot-compiler.js +28 -520
- package/dist/src/snapshot/snapshot-compiler.js.map +1 -1
- package/dist/src/snapshot/snapshot.types.d.ts +7 -2
- package/dist/src/snapshot/snapshot.types.d.ts.map +1 -1
- package/dist/src/snapshot/snapshot.types.js +9 -0
- package/dist/src/snapshot/snapshot.types.js.map +1 -1
- package/dist/src/state/actionables-filter.d.ts +5 -0
- package/dist/src/state/actionables-filter.d.ts.map +1 -1
- package/dist/src/state/actionables-filter.js +22 -3
- package/dist/src/state/actionables-filter.js.map +1 -1
- package/dist/src/state/diff-engine.js +3 -3
- package/dist/src/state/diff-engine.js.map +1 -1
- package/dist/src/state/element-registry.d.ts.map +1 -1
- package/dist/src/state/element-registry.js +6 -4
- package/dist/src/state/element-registry.js.map +1 -1
- package/dist/src/state/hash-utils.d.ts +24 -0
- package/dist/src/state/hash-utils.d.ts.map +1 -0
- package/dist/src/state/hash-utils.js +41 -0
- package/dist/src/state/hash-utils.js.map +1 -0
- package/dist/src/state/layer-detector.d.ts.map +1 -1
- package/dist/src/state/layer-detector.js +15 -286
- package/dist/src/state/layer-detector.js.map +1 -1
- package/dist/src/state/layer-detectors/drawer-detector.d.ts +32 -0
- package/dist/src/state/layer-detectors/drawer-detector.d.ts.map +1 -0
- package/dist/src/state/layer-detectors/drawer-detector.js +96 -0
- package/dist/src/state/layer-detectors/drawer-detector.js.map +1 -0
- package/dist/src/state/layer-detectors/index.d.ts +10 -0
- package/dist/src/state/layer-detectors/index.d.ts.map +1 -0
- package/dist/src/state/layer-detectors/index.js +10 -0
- package/dist/src/state/layer-detectors/index.js.map +1 -0
- package/dist/src/state/layer-detectors/modal-detector.d.ts +30 -0
- package/dist/src/state/layer-detectors/modal-detector.d.ts.map +1 -0
- package/dist/src/state/layer-detectors/modal-detector.js +127 -0
- package/dist/src/state/layer-detectors/modal-detector.js.map +1 -0
- package/dist/src/state/layer-detectors/popover-detector.d.ts +20 -0
- package/dist/src/state/layer-detectors/popover-detector.d.ts.map +1 -0
- package/dist/src/state/layer-detectors/popover-detector.js +76 -0
- package/dist/src/state/layer-detectors/popover-detector.js.map +1 -0
- package/dist/src/state/layer-detectors/toast-detector.d.ts +24 -0
- package/dist/src/state/layer-detectors/toast-detector.d.ts.map +1 -0
- package/dist/src/state/layer-detectors/toast-detector.js +48 -0
- package/dist/src/state/layer-detectors/toast-detector.js.map +1 -0
- package/dist/src/state/region-mapping.d.ts +13 -0
- package/dist/src/state/region-mapping.d.ts.map +1 -0
- package/dist/src/state/region-mapping.js +25 -0
- package/dist/src/state/region-mapping.js.map +1 -0
- package/dist/src/state/state-manager.d.ts.map +1 -1
- package/dist/src/state/state-manager.js +8 -192
- package/dist/src/state/state-manager.js.map +1 -1
- package/dist/src/state/state-renderer.d.ts.map +1 -1
- package/dist/src/state/state-renderer.js +16 -2
- package/dist/src/state/state-renderer.js.map +1 -1
- package/dist/src/state/types.d.ts +8 -4
- package/dist/src/state/types.d.ts.map +1 -1
- package/dist/src/state/url-sanitization.d.ts +22 -0
- package/dist/src/state/url-sanitization.d.ts.map +1 -0
- package/dist/src/state/url-sanitization.js +60 -0
- package/dist/src/state/url-sanitization.js.map +1 -0
- package/dist/src/state/value-masking.d.ts +36 -0
- package/dist/src/state/value-masking.d.ts.map +1 -0
- package/dist/src/state/value-masking.js +86 -0
- package/dist/src/state/value-masking.js.map +1 -0
- package/dist/src/tools/action-context.d.ts +60 -0
- package/dist/src/tools/action-context.d.ts.map +1 -0
- package/dist/src/tools/action-context.js +78 -0
- package/dist/src/tools/action-context.js.map +1 -0
- package/dist/src/tools/action-stabilization.d.ts +48 -0
- package/dist/src/tools/action-stabilization.d.ts.map +1 -0
- package/dist/src/tools/action-stabilization.js +87 -0
- package/dist/src/tools/action-stabilization.js.map +1 -0
- package/dist/src/tools/browser-tools.d.ts +8 -146
- package/dist/src/tools/browser-tools.d.ts.map +1 -1
- package/dist/src/tools/browser-tools.js +13 -689
- package/dist/src/tools/browser-tools.js.map +1 -1
- package/dist/src/tools/canvas-tools.d.ts +32 -0
- package/dist/src/tools/canvas-tools.d.ts.map +1 -0
- package/dist/src/tools/canvas-tools.js +370 -0
- package/dist/src/tools/canvas-tools.js.map +1 -0
- package/dist/src/tools/effect-tracker.d.ts +25 -0
- package/dist/src/tools/effect-tracker.d.ts.map +1 -0
- package/dist/src/tools/effect-tracker.js +69 -0
- package/dist/src/tools/effect-tracker.js.map +1 -0
- package/dist/src/tools/execute-action.d.ts +1 -31
- package/dist/src/tools/execute-action.d.ts.map +1 -1
- package/dist/src/tools/execute-action.js +7 -276
- package/dist/src/tools/execute-action.js.map +1 -1
- package/dist/src/tools/form-tools.d.ts +4 -6
- package/dist/src/tools/form-tools.d.ts.map +1 -1
- package/dist/src/tools/form-tools.js +10 -42
- package/dist/src/tools/form-tools.js.map +1 -1
- package/dist/src/tools/index.d.ts +6 -4
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +21 -10
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/interaction-tools.d.ts +46 -0
- package/dist/src/tools/interaction-tools.d.ts.map +1 -0
- package/dist/src/tools/interaction-tools.js +138 -0
- package/dist/src/tools/interaction-tools.js.map +1 -0
- package/dist/src/tools/navigation-detection.d.ts +31 -0
- package/dist/src/tools/navigation-detection.d.ts.map +1 -0
- package/dist/src/tools/navigation-detection.js +46 -0
- package/dist/src/tools/navigation-detection.js.map +1 -0
- package/dist/src/tools/navigation-tools.d.ts +57 -0
- package/dist/src/tools/navigation-tools.d.ts.map +1 -0
- package/dist/src/tools/navigation-tools.js +178 -0
- package/dist/src/tools/navigation-tools.js.map +1 -0
- package/dist/src/tools/observation-tools.d.ts +53 -0
- package/dist/src/tools/observation-tools.d.ts.map +1 -0
- package/dist/src/tools/observation-tools.js +247 -0
- package/dist/src/tools/observation-tools.js.map +1 -0
- package/dist/src/tools/response-builder.js +2 -2
- package/dist/src/tools/response-builder.js.map +1 -1
- package/dist/src/tools/stale-element-retry.d.ts +37 -0
- package/dist/src/tools/stale-element-retry.d.ts.map +1 -0
- package/dist/src/tools/stale-element-retry.js +68 -0
- package/dist/src/tools/stale-element-retry.js.map +1 -0
- package/dist/src/tools/state-manager-registry.d.ts +26 -0
- package/dist/src/tools/state-manager-registry.d.ts.map +1 -0
- package/dist/src/tools/state-manager-registry.js +39 -0
- package/dist/src/tools/state-manager-registry.js.map +1 -0
- package/dist/src/tools/tool-context.d.ts +53 -0
- package/dist/src/tools/tool-context.d.ts.map +1 -0
- package/dist/src/tools/tool-context.js +119 -0
- package/dist/src/tools/tool-context.js.map +1 -0
- package/dist/src/tools/tool-result.types.d.ts +16 -1
- package/dist/src/tools/tool-result.types.d.ts.map +1 -1
- package/dist/src/tools/tool-result.types.js +11 -0
- package/dist/src/tools/tool-result.types.js.map +1 -1
- package/dist/src/tools/tool-schemas.d.ts +358 -146
- package/dist/src/tools/tool-schemas.d.ts.map +1 -1
- package/dist/src/tools/tool-schemas.js +142 -19
- package/dist/src/tools/tool-schemas.js.map +1 -1
- package/dist/src/tools/viewport-tools.d.ts +36 -0
- package/dist/src/tools/viewport-tools.d.ts.map +1 -0
- package/dist/src/tools/viewport-tools.js +105 -0
- package/dist/src/tools/viewport-tools.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-engine.js","sourceRoot":"","sources":["../../../src/query/query-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query-engine.js","sourceRoot":"","sources":["../../../src/query/query-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scoring
|
|
3
|
+
*
|
|
4
|
+
* Relevance scoring for query matches.
|
|
5
|
+
* Calculates how well a node matches the query request.
|
|
6
|
+
*/
|
|
7
|
+
import type { ReadableNode } from '../snapshot/snapshot.types.js';
|
|
8
|
+
import type { FindElementsRequest, MatchReason, LabelFilter, TextMatchMode } from './types/query.types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Scoring weights for relevance calculation.
|
|
11
|
+
* Values represent the maximum contribution each signal can add to the score.
|
|
12
|
+
*/
|
|
13
|
+
export declare const SCORING_WEIGHTS: {
|
|
14
|
+
readonly labelMatch: {
|
|
15
|
+
readonly exact: 0.4;
|
|
16
|
+
readonly contains: 0.3;
|
|
17
|
+
readonly fuzzy: 0.25;
|
|
18
|
+
};
|
|
19
|
+
readonly kindMatch: 0.15;
|
|
20
|
+
readonly regionMatch: 0.12;
|
|
21
|
+
readonly stateMatch: 0.03;
|
|
22
|
+
readonly groupMatch: 0.08;
|
|
23
|
+
readonly headingMatch: 0.08;
|
|
24
|
+
readonly visibility: 0.02;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Normalize a label filter to its constituent parts.
|
|
28
|
+
* Shared helper used by both scoring and the query engine.
|
|
29
|
+
*/
|
|
30
|
+
export declare function normalizeLabelFilter(filter: string | LabelFilter): {
|
|
31
|
+
text: string;
|
|
32
|
+
mode: TextMatchMode;
|
|
33
|
+
caseSensitive: boolean;
|
|
34
|
+
fuzzyOptions?: import('./types/query.types.js').FuzzyMatchOptions;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Calculate relevance score and match reasons for a node.
|
|
38
|
+
*
|
|
39
|
+
* @param node - The node to score
|
|
40
|
+
* @param request - The original query request
|
|
41
|
+
* @param labelMatchScore - Pre-computed label match score (for fuzzy matching)
|
|
42
|
+
* @returns Relevance score (0-1) and list of reasons
|
|
43
|
+
*/
|
|
44
|
+
export declare function scoreMatch(node: ReadableNode, request: FindElementsRequest, labelMatchScore?: number): {
|
|
45
|
+
relevance: number;
|
|
46
|
+
reasons: MatchReason[];
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Calculate the maximum possible score given the request filters.
|
|
50
|
+
*/
|
|
51
|
+
export declare function calculateMaxPossibleScore(request: FindElementsRequest): number;
|
|
52
|
+
//# sourceMappingURL=scoring.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../../../src/query/scoring.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,KAAK,EACV,mBAAmB,EACnB,WAAW,EACX,WAAW,EAEX,aAAa,EACd,MAAM,wBAAwB,CAAC;AAEhC;;;GAGG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;CAYlB,CAAC;AAEX;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,wBAAwB,EAAE,iBAAiB,CAAC;CACnE,CAUA;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,YAAY,EAClB,OAAO,EAAE,mBAAmB,EAC5B,eAAe,CAAC,EAAE,MAAM,GACvB;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CA+F/C;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAmB9E"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scoring
|
|
3
|
+
*
|
|
4
|
+
* Relevance scoring for query matches.
|
|
5
|
+
* Calculates how well a node matches the query request.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Scoring weights for relevance calculation.
|
|
9
|
+
* Values represent the maximum contribution each signal can add to the score.
|
|
10
|
+
*/
|
|
11
|
+
export const SCORING_WEIGHTS = {
|
|
12
|
+
labelMatch: {
|
|
13
|
+
exact: 0.4,
|
|
14
|
+
contains: 0.3,
|
|
15
|
+
fuzzy: 0.25, // Base, multiplied by fuzzy match quality
|
|
16
|
+
},
|
|
17
|
+
kindMatch: 0.15,
|
|
18
|
+
regionMatch: 0.12,
|
|
19
|
+
stateMatch: 0.03, // Per matching state property (max ~0.27 for 9 props)
|
|
20
|
+
groupMatch: 0.08,
|
|
21
|
+
headingMatch: 0.08,
|
|
22
|
+
visibility: 0.02,
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Normalize a label filter to its constituent parts.
|
|
26
|
+
* Shared helper used by both scoring and the query engine.
|
|
27
|
+
*/
|
|
28
|
+
export function normalizeLabelFilter(filter) {
|
|
29
|
+
if (typeof filter === 'string') {
|
|
30
|
+
return { text: filter, mode: 'contains', caseSensitive: false };
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
text: filter.text,
|
|
34
|
+
mode: filter.mode ?? 'contains',
|
|
35
|
+
caseSensitive: filter.caseSensitive ?? false,
|
|
36
|
+
fuzzyOptions: filter.fuzzyOptions,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Calculate relevance score and match reasons for a node.
|
|
41
|
+
*
|
|
42
|
+
* @param node - The node to score
|
|
43
|
+
* @param request - The original query request
|
|
44
|
+
* @param labelMatchScore - Pre-computed label match score (for fuzzy matching)
|
|
45
|
+
* @returns Relevance score (0-1) and list of reasons
|
|
46
|
+
*/
|
|
47
|
+
export function scoreMatch(node, request, labelMatchScore) {
|
|
48
|
+
let relevance = 0;
|
|
49
|
+
const reasons = [];
|
|
50
|
+
// Label scoring
|
|
51
|
+
if (request.label !== undefined) {
|
|
52
|
+
const { mode } = normalizeLabelFilter(request.label);
|
|
53
|
+
let labelContribution;
|
|
54
|
+
if (mode === 'fuzzy' && labelMatchScore !== undefined) {
|
|
55
|
+
// Fuzzy: base weight * match quality
|
|
56
|
+
labelContribution = SCORING_WEIGHTS.labelMatch.fuzzy * labelMatchScore;
|
|
57
|
+
}
|
|
58
|
+
else if (mode === 'exact') {
|
|
59
|
+
labelContribution = SCORING_WEIGHTS.labelMatch.exact;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
labelContribution = SCORING_WEIGHTS.labelMatch.contains;
|
|
63
|
+
}
|
|
64
|
+
relevance += labelContribution;
|
|
65
|
+
reasons.push({
|
|
66
|
+
type: 'label',
|
|
67
|
+
description: `Label "${truncateLabel(node.label)}" matches query`,
|
|
68
|
+
score_contribution: labelContribution,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
// Kind scoring
|
|
72
|
+
if (request.kind !== undefined) {
|
|
73
|
+
relevance += SCORING_WEIGHTS.kindMatch;
|
|
74
|
+
reasons.push({
|
|
75
|
+
type: 'kind',
|
|
76
|
+
description: `Kind "${node.kind}" matches filter`,
|
|
77
|
+
score_contribution: SCORING_WEIGHTS.kindMatch,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
// Region scoring
|
|
81
|
+
if (request.region !== undefined) {
|
|
82
|
+
relevance += SCORING_WEIGHTS.regionMatch;
|
|
83
|
+
reasons.push({
|
|
84
|
+
type: 'region',
|
|
85
|
+
description: `Region "${node.where.region}" matches filter`,
|
|
86
|
+
score_contribution: SCORING_WEIGHTS.regionMatch,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
// State scoring (per matched property)
|
|
90
|
+
if (request.state !== undefined && node.state) {
|
|
91
|
+
const matchedStates = Object.keys(request.state).filter((k) => request.state[k] !== undefined &&
|
|
92
|
+
request.state[k] === node.state[k]);
|
|
93
|
+
const stateContribution = matchedStates.length * SCORING_WEIGHTS.stateMatch;
|
|
94
|
+
if (stateContribution > 0) {
|
|
95
|
+
relevance += stateContribution;
|
|
96
|
+
reasons.push({
|
|
97
|
+
type: 'state',
|
|
98
|
+
description: `States match: ${matchedStates.join(', ')}`,
|
|
99
|
+
score_contribution: stateContribution,
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
// Group scoring
|
|
104
|
+
if (request.group_id !== undefined) {
|
|
105
|
+
relevance += SCORING_WEIGHTS.groupMatch;
|
|
106
|
+
reasons.push({
|
|
107
|
+
type: 'group',
|
|
108
|
+
description: `Group "${node.where.group_id}" matches`,
|
|
109
|
+
score_contribution: SCORING_WEIGHTS.groupMatch,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
// Heading context scoring
|
|
113
|
+
if (request.heading_context !== undefined) {
|
|
114
|
+
relevance += SCORING_WEIGHTS.headingMatch;
|
|
115
|
+
reasons.push({
|
|
116
|
+
type: 'heading',
|
|
117
|
+
description: `Heading context "${node.where.heading_context}" matches`,
|
|
118
|
+
score_contribution: SCORING_WEIGHTS.headingMatch,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
// Visibility bonus (always applied if node is visible)
|
|
122
|
+
if (node.state?.visible) {
|
|
123
|
+
relevance += SCORING_WEIGHTS.visibility;
|
|
124
|
+
}
|
|
125
|
+
// Normalize to 0-1 range based on what was actually queried
|
|
126
|
+
// This gives higher scores when fewer filters are used but all match
|
|
127
|
+
const maxPossible = calculateMaxPossibleScore(request);
|
|
128
|
+
const normalizedRelevance = maxPossible > 0 ? Math.min(1, relevance / maxPossible) : 0;
|
|
129
|
+
return { relevance: normalizedRelevance, reasons };
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Calculate the maximum possible score given the request filters.
|
|
133
|
+
*/
|
|
134
|
+
export function calculateMaxPossibleScore(request) {
|
|
135
|
+
let max = SCORING_WEIGHTS.visibility; // Always possible
|
|
136
|
+
if (request.label !== undefined) {
|
|
137
|
+
const { mode } = normalizeLabelFilter(request.label);
|
|
138
|
+
max += SCORING_WEIGHTS.labelMatch[mode];
|
|
139
|
+
}
|
|
140
|
+
if (request.kind !== undefined)
|
|
141
|
+
max += SCORING_WEIGHTS.kindMatch;
|
|
142
|
+
if (request.region !== undefined)
|
|
143
|
+
max += SCORING_WEIGHTS.regionMatch;
|
|
144
|
+
if (request.state !== undefined) {
|
|
145
|
+
const stateCount = Object.keys(request.state).filter((k) => request.state[k] !== undefined).length;
|
|
146
|
+
max += stateCount * SCORING_WEIGHTS.stateMatch;
|
|
147
|
+
}
|
|
148
|
+
if (request.group_id !== undefined)
|
|
149
|
+
max += SCORING_WEIGHTS.groupMatch;
|
|
150
|
+
if (request.heading_context !== undefined)
|
|
151
|
+
max += SCORING_WEIGHTS.headingMatch;
|
|
152
|
+
return max;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Truncate a label for display in reasons.
|
|
156
|
+
*/
|
|
157
|
+
function truncateLabel(label, maxLength = 30) {
|
|
158
|
+
if (label.length <= maxLength)
|
|
159
|
+
return label;
|
|
160
|
+
return label.slice(0, maxLength - 1) + '…';
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=scoring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../../src/query/scoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,qBAAqB,EAC3B,MAAM,uCAAuC,CAAC;AAI/C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,OAAO,oBAAoB,EAAE,UAAU,GAAG,SAAS,CAAC;CACjE;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAC5C,aAAa,EAAE,EAAE,CAAC;CACnB;AAED,qBAAa,uBAAwB,SAAQ,YAAa,YAAW,qBAAqB;IAI5E,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,SAAS,CAAuB;gBAEX,MAAM,EAAE,YAAY;IAmCjD;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,CAAC,EAAE,WAAW,CAAC;KAC5B,EACD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAC5C,IAAI;
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAGtC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,EAEL,KAAK,QAAQ,EACb,KAAK,qBAAqB,EAC3B,MAAM,uCAAuC,CAAC;AAI/C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,OAAO,oBAAoB,EAAE,UAAU,GAAG,SAAS,CAAC;CACjE;AAED,MAAM,WAAW,6BAA6B;IAC5C,eAAe,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAC5C,aAAa,EAAE,EAAE,CAAC;CACnB;AAED,qBAAa,uBAAwB,SAAQ,YAAa,YAAW,qBAAqB;IAI5E,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,SAAS,CAAuB;gBAEX,MAAM,EAAE,YAAY;IAmCjD;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;QACzB,YAAY,CAAC,EAAE,WAAW,CAAC;KAC5B,EACD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,GAC5C,IAAI;IA6GP;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE;QAC/B,KAAK,EAAE,QAAQ,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC/B,GAAG,OAAO,CAAC,IAAI,CAAC;IAWjB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAU/B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG5B"}
|
|
@@ -9,7 +9,7 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
|
9
9
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
10
10
|
import { getLogger, } from '../shared/services/logging.service.js';
|
|
11
11
|
import { SetLevelRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
12
|
-
import { isImageResult, isFileResult } from '../tools/tool-result.types.js';
|
|
12
|
+
import { isCompositeResult, isImageResult, isFileResult } from '../tools/tool-result.types.js';
|
|
13
13
|
export class BrowserAutomationServer extends EventEmitter {
|
|
14
14
|
config;
|
|
15
15
|
server;
|
|
@@ -67,6 +67,34 @@ export class BrowserAutomationServer extends EventEmitter {
|
|
|
67
67
|
const result = await handler(input);
|
|
68
68
|
const executionTime = Date.now() - startTime;
|
|
69
69
|
logger.debug(`Tool ${name} completed in ${executionTime}ms`);
|
|
70
|
+
// Composite result - return as multi-content (text + image)
|
|
71
|
+
if (isCompositeResult(result)) {
|
|
72
|
+
if (isImageResult(result.image)) {
|
|
73
|
+
return {
|
|
74
|
+
content: [
|
|
75
|
+
{ type: 'text', text: result.text },
|
|
76
|
+
{
|
|
77
|
+
type: 'image',
|
|
78
|
+
data: result.image.data,
|
|
79
|
+
mimeType: result.image.mimeType,
|
|
80
|
+
},
|
|
81
|
+
],
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
// FileResult fallback - return text + file path
|
|
86
|
+
const sizeMB = (result.image.sizeBytes / 1024 / 1024).toFixed(2);
|
|
87
|
+
return {
|
|
88
|
+
content: [
|
|
89
|
+
{ type: 'text', text: result.text },
|
|
90
|
+
{
|
|
91
|
+
type: 'text',
|
|
92
|
+
text: `Screenshot saved to: ${result.image.path} (${sizeMB} MB, ${result.image.mimeType})`,
|
|
93
|
+
},
|
|
94
|
+
],
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
70
98
|
// Image result - return as MCP ImageContent (inline base64)
|
|
71
99
|
if (isImageResult(result)) {
|
|
72
100
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EACL,SAAS,GAGV,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EACL,SAAS,GAGV,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAqB/F,MAAM,OAAO,uBAAwB,SAAQ,YAAY;IAI1B;IAHrB,MAAM,CAAY;IAClB,SAAS,CAAuB;IAExC,YAA6B,MAAoB;QAC/C,KAAK,EAAE,CAAC;QADmB,WAAM,GAAN,MAAM,CAAc;QAG/C,6BAA6B;QAC7B,6EAA6E;QAC7E,mFAAmF;QACnF,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CACzB;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,EACD;YACE,YAAY,EAAE;gBACZ,OAAO,EAAE,EAAE;aACZ;SACF,CACF,CAAC;QAEF,yBAAyB;QACzB,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAE5C,mCAAmC;QACnC,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAE/B,iEAAiE;QACjE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,8BAA8B;QAC9B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,wCAAwC;QACxC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACK,gBAAgB;QACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,mCAAmC,EAAE,GAAG,EAAE,CAAC,CAAC;YACnE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SACnD,CAAC,CAAC,CAAC;IACN,CAAC;IAED;;OAEG;IACH,YAAY,CACV,IAAY,EACZ,UAKC,EACD,OAA6C;QAE7C,IAAI,CAAC,MAAM,CAAC,YAAY,CACtB,IAAI,EACJ;YACE,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,YAAY,EAAE,UAAU,CAAC,YAAY;SACtC,EACD,KAAK,EAAE,KAAK,EAAE,EAAE;YACd,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,IAAI,CAAC;gBACH,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;gBACpC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC7C,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,iBAAiB,aAAa,IAAI,CAAC,CAAC;gBAE7D,4DAA4D;gBAC5D,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC9B,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAChC,OAAO;4BACL,OAAO,EAAE;gCACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;gCAC5C;oCACE,IAAI,EAAE,OAAgB;oCACtB,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;oCACvB,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;iCAChC;6BACF;yBACF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,gDAAgD;wBAChD,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACjE,OAAO;4BACL,OAAO,EAAE;gCACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;gCAC5C;oCACE,IAAI,EAAE,MAAe;oCACrB,IAAI,EAAE,wBAAwB,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,QAAQ,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG;iCAC3F;6BACF;yBACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,4DAA4D;gBAC5D,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,OAAgB;gCACtB,IAAI,EAAE,MAAM,CAAC,IAAI;gCACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;6BAC1B;yBACF;qBACF,CAAC;gBACJ,CAAC;gBAED,iEAAiE;gBACjE,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzB,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC3D,OAAO;wBACL,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAe;gCACrB,IAAI,EAAE,wBAAwB,MAAM,CAAC,IAAI,KAAK,MAAM,QAAQ,MAAM,CAAC,QAAQ,GAAG;6BAC/E;yBACF;qBACF,CAAC;gBACJ,CAAC;gBAED,4EAA4E;gBAC5E,IAAI,UAAU,CAAC,YAAY,EAAE,CAAC;oBAC5B,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;wBAClE,iBAAiB,EAAE,MAAiC;qBACrD,CAAC;gBACJ,CAAC;gBAED,6DAA6D;gBAC7D,8BAA8B;gBAC9B,MAAM,WAAW,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACjF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;iBACxD,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC7C,MAAM,CAAC,KAAK,CACV,QAAQ,IAAI,iBAAiB,aAAa,IAAI,EAC9C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;6BAC9D,CAAC;yBACH;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAIxB;QACC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;YACpC,MAAM,EAAE,uBAAuB;YAC/B,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,uBAAuB;QAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE;YACtE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YACjC,MAAM,CAAC,WAAW,CAAC,KAAiB,CAAC,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;YAC1C,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,sBAAsB;QAC5B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,GAAG,GAAG,EAAE;YACtC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3B,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF"}
|
|
@@ -5,24 +5,6 @@
|
|
|
5
5
|
* Provides CDP-based clicking using backendNodeId for guaranteed uniqueness.
|
|
6
6
|
*/
|
|
7
7
|
import type { CdpClient } from '../cdp/cdp-client.interface.js';
|
|
8
|
-
/**
|
|
9
|
-
* Click an element using CDP's backendNodeId directly.
|
|
10
|
-
*
|
|
11
|
-
* This bypasses Playwright's locator system to avoid strict mode violations
|
|
12
|
-
* when multiple elements match the same selector. The backendNodeId is
|
|
13
|
-
* guaranteed unique per DOM element within a CDP session.
|
|
14
|
-
*
|
|
15
|
-
* @param cdp - CDP client instance
|
|
16
|
-
* @param backendNodeId - CDP backend node ID (stable within session)
|
|
17
|
-
* @throws Error if element not found, not visible, or click fails
|
|
18
|
-
*
|
|
19
|
-
* @example
|
|
20
|
-
* ```typescript
|
|
21
|
-
* // Click using the unique backendNodeId from snapshot
|
|
22
|
-
* await clickByBackendNodeId(cdp, node.backend_node_id);
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export declare function clickByBackendNodeId(cdp: CdpClient, backendNodeId: number): Promise<void>;
|
|
26
8
|
/**
|
|
27
9
|
* CDP Input modifier bitmask values.
|
|
28
10
|
* These are ORed together for combined modifiers.
|
|
@@ -31,6 +13,30 @@ export declare const MODIFIER_ALT = 1;
|
|
|
31
13
|
export declare const MODIFIER_CTRL = 2;
|
|
32
14
|
export declare const MODIFIER_META = 4;
|
|
33
15
|
export declare const MODIFIER_SHIFT = 8;
|
|
16
|
+
/**
|
|
17
|
+
* Get the top-left viewport coordinates of an element.
|
|
18
|
+
* Scrolls element into view first.
|
|
19
|
+
*/
|
|
20
|
+
export declare function getElementTopLeft(cdp: CdpClient, backendNodeId: number): Promise<{
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
}>;
|
|
24
|
+
/**
|
|
25
|
+
* Click an element at its center using CDP's backendNodeId.
|
|
26
|
+
*
|
|
27
|
+
* Bypasses Playwright's locator system to avoid strict mode violations
|
|
28
|
+
* when multiple elements match the same selector.
|
|
29
|
+
*/
|
|
30
|
+
export declare function clickByBackendNodeId(cdp: CdpClient, backendNodeId: number, modifiers?: string[]): Promise<void>;
|
|
31
|
+
/**
|
|
32
|
+
* Click at absolute viewport coordinates using CDP.
|
|
33
|
+
*/
|
|
34
|
+
export declare function clickAtCoordinates(cdp: CdpClient, x: number, y: number, modifiers?: string[]): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Click at an offset relative to an element's top-left corner.
|
|
37
|
+
* Scrolls element into view, computes absolute coordinates, then clicks.
|
|
38
|
+
*/
|
|
39
|
+
export declare function clickAtElementOffset(cdp: CdpClient, backendNodeId: number, offsetX: number, offsetY: number, modifiers?: string[]): Promise<void>;
|
|
34
40
|
/**
|
|
35
41
|
* Clear text in the currently focused element using Ctrl+A then Delete.
|
|
36
42
|
*
|
|
@@ -99,4 +105,30 @@ export declare function scrollIntoView(cdp: CdpClient, backendNodeId: number): P
|
|
|
99
105
|
* @param amount - Pixels to scroll (default: 500)
|
|
100
106
|
*/
|
|
101
107
|
export declare function scrollPage(cdp: CdpClient, direction: 'up' | 'down', amount?: number): Promise<void>;
|
|
108
|
+
/**
|
|
109
|
+
* Drag from one point to another using CDP mouse events.
|
|
110
|
+
*
|
|
111
|
+
* Dispatches mousePressed at source, interpolates mouseMoved events
|
|
112
|
+
* from source to target, then mouseReleased at target.
|
|
113
|
+
*
|
|
114
|
+
* @param cdp - CDP client instance
|
|
115
|
+
* @param sourceX - Start X coordinate
|
|
116
|
+
* @param sourceY - Start Y coordinate
|
|
117
|
+
* @param targetX - End X coordinate
|
|
118
|
+
* @param targetY - End Y coordinate
|
|
119
|
+
* @param steps - Number of intermediate mouseMoved events (default: 10)
|
|
120
|
+
* @param modifiers - Optional modifier keys (e.g., ['Shift', 'Control'])
|
|
121
|
+
*/
|
|
122
|
+
export declare function dragBetweenCoordinates(cdp: CdpClient, sourceX: number, sourceY: number, targetX: number, targetY: number, steps?: number, modifiers?: string[]): Promise<void>;
|
|
123
|
+
/**
|
|
124
|
+
* Dispatch a mouse wheel event at the given coordinates using CDP.
|
|
125
|
+
*
|
|
126
|
+
* @param cdp - CDP client instance
|
|
127
|
+
* @param x - X coordinate where the wheel event occurs
|
|
128
|
+
* @param y - Y coordinate where the wheel event occurs
|
|
129
|
+
* @param deltaX - Horizontal scroll delta (positive = right)
|
|
130
|
+
* @param deltaY - Vertical scroll delta (positive = down)
|
|
131
|
+
* @param modifiers - Optional modifier keys (e.g., ['Control'] for zoom)
|
|
132
|
+
*/
|
|
133
|
+
export declare function dispatchWheelEvent(cdp: CdpClient, x: number, y: number, deltaX: number, deltaY: number, modifiers?: string[]): Promise<void>;
|
|
102
134
|
//# sourceMappingURL=element-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-resolver.d.ts","sourceRoot":"","sources":["../../../src/snapshot/element-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"element-resolver.d.ts","sourceRoot":"","sources":["../../../src/snapshot/element-resolver.ts"],"names":[],"mappings":"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"}
|