@vforsh/argus-watcher 0.5.4 → 0.5.5
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/.tsbuildinfo +1 -1
- package/dist/cdp/navigation.d.ts +82 -0
- package/dist/cdp/navigation.d.ts.map +1 -0
- package/dist/cdp/navigation.js +186 -0
- package/dist/cdp/navigation.js.map +1 -0
- package/dist/cdp/protocol.d.ts +24 -0
- package/dist/cdp/protocol.d.ts.map +1 -1
- package/dist/cdp/watcher.d.ts.map +1 -1
- package/dist/cdp/watcher.js +55 -1
- package/dist/cdp/watcher.js.map +1 -1
- package/dist/http/endpoints.d.ts +1 -1
- package/dist/http/endpoints.d.ts.map +1 -1
- package/dist/http/endpoints.js +2 -0
- package/dist/http/endpoints.js.map +1 -1
- package/dist/http/routes/index.d.ts.map +1 -1
- package/dist/http/routes/index.js +4 -0
- package/dist/http/routes/index.js.map +1 -1
- package/dist/http/routes/postDomClick.d.ts.map +1 -1
- package/dist/http/routes/postDomClick.js +15 -9
- package/dist/http/routes/postDomClick.js.map +1 -1
- package/dist/http/routes/postDomKeydown.d.ts.map +1 -1
- package/dist/http/routes/postDomKeydown.js +4 -2
- package/dist/http/routes/postDomKeydown.js.map +1 -1
- package/dist/http/routes/postNavigate.d.ts +12 -0
- package/dist/http/routes/postNavigate.d.ts.map +1 -0
- package/dist/http/routes/postNavigate.js +51 -0
- package/dist/http/routes/postNavigate.js.map +1 -0
- package/dist/http/routes/postNavigateHistory.d.ts +9 -0
- package/dist/http/routes/postNavigateHistory.d.ts.map +1 -0
- package/dist/http/routes/postNavigateHistory.js +35 -0
- package/dist/http/routes/postNavigateHistory.js.map +1 -0
- package/dist/sources/extension-session-events.d.ts.map +1 -1
- package/dist/sources/extension-session-events.js +21 -0
- package/dist/sources/extension-session-events.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,KAAK,IAAI,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AACnF,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtG,OAAO,EAAE,KAAK,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AACnE,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,KAAK,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,KAAK,IAAI,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AACrD,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAErD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAsC;IAC/D,SAAS;IACT,YAAY;IACZ,WAAW;IACX,OAAO;IACP,OAAO;IACP,MAAM;IACN,cAAc;IACd,aAAa;IACb,iBAAiB;IACjB,UAAU;IACV,gBAAgB;IAChB,yBAAyB;IACzB,SAAS;IACT,YAAY;IACZ,GAAG,aAAa;IAChB,cAAc;IACd,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;IACZ,iBAAiB;IACjB,QAAQ;IACR,cAAc;IACd,aAAa;IACb,GAAG,YAAY;IACf,cAAc;IACd,YAAY;IACZ,GAAG,YAAY;IACf,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,cAAc;IACd,UAAU;IACV,aAAa;IACb,aAAa;IACb,cAAc;IACd,YAAY;IACZ,WAAW;IACX,aAAa;IACb,eAAe;IACf,YAAY;IACZ,aAAa;IACb,WAAW;IACX,YAAY;IACZ,SAAS;IACT,UAAU;IACV,cAAc;IACd,GAAG,aAAa;IAChB,UAAU;IACV,YAAY;IACZ,gBAAgB;IAChB,uBAAuB;IACvB,UAAU;IACV,UAAU;IACV,UAAU;CACV,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http/routes/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postDomClick.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postDomClick.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"postDomClick.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postDomClick.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,KAAK,mDA8DhB,CAAA"}
|
|
@@ -3,6 +3,7 @@ import { respondMissingElementRef, respondMultipleMatches, respondTargetResoluti
|
|
|
3
3
|
import { defineJsonRoute } from './defineRoute.js';
|
|
4
4
|
import { clickDomNodes, clickAtPoint, resolveNodePoint } from '../../cdp/mouse.js';
|
|
5
5
|
import { resolveElementTargets } from '../../cdp/dom/selector.js';
|
|
6
|
+
import { withNavigationWait } from '../../cdp/navigation.js';
|
|
6
7
|
export const route = defineJsonRoute({
|
|
7
8
|
method: 'POST',
|
|
8
9
|
path: '/dom/click',
|
|
@@ -14,9 +15,14 @@ export const route = defineJsonRoute({
|
|
|
14
15
|
const waitMs = payload.wait ?? 0;
|
|
15
16
|
const hasElementTarget = payload.selector != null || payload.ref != null;
|
|
16
17
|
const hasCoords = payload.x != null || payload.y != null;
|
|
18
|
+
// The navigation wait is armed around the click itself, never around selector resolution:
|
|
19
|
+
// waiting on the page-scoped session is meaningless until something has actually been clicked.
|
|
20
|
+
const clickWithNav = async (act, matches, clicked) => {
|
|
21
|
+
const { navigation } = await withNavigationWait(ctx.pageCdpSession, payload, () => ctx.buffer.beginLogEpoch(), act);
|
|
22
|
+
return { ok: true, matches, clicked, navigation };
|
|
23
|
+
};
|
|
17
24
|
if (!hasElementTarget) {
|
|
18
|
-
await clickAtPoint(ctx.cdpSession, payload.x, payload.y, button);
|
|
19
|
-
return { ok: true, matches: 0, clicked: 1 };
|
|
25
|
+
return await clickWithNav(() => clickAtPoint(ctx.cdpSession, payload.x, payload.y, button), 0, 1);
|
|
20
26
|
}
|
|
21
27
|
const resolved = await resolveElementTargets(ctx.cdpSession, ctx.elementRefs, {
|
|
22
28
|
selector: payload.selector,
|
|
@@ -38,14 +44,14 @@ export const route = defineJsonRoute({
|
|
|
38
44
|
return { ok: true, matches: 0, clicked: 0 };
|
|
39
45
|
}
|
|
40
46
|
if (hasCoords) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
return await clickWithNav(async () => {
|
|
48
|
+
for (const handle of handles) {
|
|
49
|
+
const point = await resolveNodePoint(ctx.cdpSession, handle, { x: payload.x, y: payload.y });
|
|
50
|
+
await clickAtPoint(ctx.cdpSession, point.x, point.y, button);
|
|
51
|
+
}
|
|
52
|
+
}, allHandles.length, handles.length);
|
|
46
53
|
}
|
|
47
|
-
await clickDomNodes(ctx.cdpSession, handles, button);
|
|
48
|
-
return { ok: true, matches: allHandles.length, clicked: handles.length };
|
|
54
|
+
return await clickWithNav(() => clickDomNodes(ctx.cdpSession, handles, button), allHandles.length, handles.length);
|
|
49
55
|
},
|
|
50
56
|
handleError: respondTargetResolutionError,
|
|
51
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postDomClick.js","sourceRoot":"","sources":["../../../src/http/routes/postDomClick.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAA;AACtH,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"postDomClick.js","sourceRoot":"","sources":["../../../src/http/routes/postDomClick.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postDomKeydown.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postDomKeydown.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"postDomKeydown.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postDomKeydown.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,KAAK,mDAkChB,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { domKeydownRequestSchema } from '@vforsh/argus-core';
|
|
2
2
|
import { dispatchKeydown, parseModifiers } from '../../cdp/keyboard.js';
|
|
3
3
|
import { ensurePageInputFocus } from '../../cdp/pageFocus.js';
|
|
4
|
+
import { withNavigationWait } from '../../cdp/navigation.js';
|
|
4
5
|
import { defineJsonRoute } from './defineRoute.js';
|
|
5
6
|
export const route = defineJsonRoute({
|
|
6
7
|
method: 'POST',
|
|
@@ -11,12 +12,12 @@ export const route = defineJsonRoute({
|
|
|
11
12
|
// Chrome drops keyboard input aimed at an unfocused page and still acks the CDP command,
|
|
12
13
|
// so prove the page can receive it before reporting a dispatch.
|
|
13
14
|
const activation = await ensurePageInputFocus(ctx.pageCdpSession, ctx.visibilityController);
|
|
14
|
-
const result = await dispatchKeydown(ctx.cdpSession, {
|
|
15
|
+
const { result, navigation } = await withNavigationWait(ctx.pageCdpSession, payload, () => ctx.buffer.beginLogEpoch(), () => dispatchKeydown(ctx.cdpSession, {
|
|
15
16
|
key: payload.key,
|
|
16
17
|
code: payload.code,
|
|
17
18
|
selector: payload.selector,
|
|
18
19
|
modifiers: parseModifiers(payload.modifiers),
|
|
19
|
-
});
|
|
20
|
+
}));
|
|
20
21
|
return {
|
|
21
22
|
ok: true,
|
|
22
23
|
key: result.key,
|
|
@@ -25,6 +26,7 @@ export const route = defineJsonRoute({
|
|
|
25
26
|
focused: result.focused,
|
|
26
27
|
activated: activation.activated,
|
|
27
28
|
event: result.event,
|
|
29
|
+
navigation,
|
|
28
30
|
};
|
|
29
31
|
},
|
|
30
32
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postDomKeydown.js","sourceRoot":"","sources":["../../../src/http/routes/postDomKeydown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAAwC;IAC3E,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,cAAc;IACpB,UAAU,EAAE,uBAAuB;IACnC,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QACxC,yFAAyF;QACzF,gEAAgE;QAChE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAE3F,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE;
|
|
1
|
+
{"version":3,"file":"postDomKeydown.js","sourceRoot":"","sources":["../../../src/http/routes/postDomKeydown.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAAwC;IAC3E,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,cAAc;IACpB,UAAU,EAAE,uBAAuB;IACnC,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QACxC,yFAAyF;QACzF,gEAAgE;QAChE,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAA;QAE3F,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CACtD,GAAG,CAAC,cAAc,EAClB,OAAO,EACP,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,EAChC,GAAG,EAAE,CACJ,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE;YAC/B,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;SAC5C,CAAC,CACH,CAAA;QAED,OAAO;YACN,EAAE,EAAE,IAAI;YACR,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,UAAU;SACV,CAAA;IACF,CAAC;CACD,CAAC,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Navigate the attached page.
|
|
3
|
+
*
|
|
4
|
+
* URL resolution happens here rather than in the CLI because the watcher owns the authoritative
|
|
5
|
+
* current URL: `/settings`, `?tab=2`, and a bare `--param` rewrite all need it, and asking for it
|
|
6
|
+
* first would cost a round trip and open a race with whatever else is navigating the page.
|
|
7
|
+
*
|
|
8
|
+
* The log epoch is opened *before* the command is dispatched, so everything the new document
|
|
9
|
+
* logs — including a console line in its first inline script — lands after it.
|
|
10
|
+
*/
|
|
11
|
+
export declare const route: import("./defineRoute.js").WatcherRouteDefinition;
|
|
12
|
+
//# sourceMappingURL=postNavigate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postNavigate.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postNavigate.ts"],"names":[],"mappings":"AAYA;;;;;;;;;GASG;AACH,eAAO,MAAM,KAAK,mDAuChB,CAAA"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { DEFAULT_NAVIGATION_TIMEOUT_MS, DEFAULT_NAVIGATION_WAIT, applyQueryParams, navigateRequestSchema, resolveNavigationUrl, } from '@vforsh/argus-core';
|
|
2
|
+
import { defineJsonRoute } from './defineRoute.js';
|
|
3
|
+
import { navigatePage } from '../../cdp/navigation.js';
|
|
4
|
+
import { respondInvalidBody } from '../httpUtils.js';
|
|
5
|
+
/**
|
|
6
|
+
* Navigate the attached page.
|
|
7
|
+
*
|
|
8
|
+
* URL resolution happens here rather than in the CLI because the watcher owns the authoritative
|
|
9
|
+
* current URL: `/settings`, `?tab=2`, and a bare `--param` rewrite all need it, and asking for it
|
|
10
|
+
* first would cost a round trip and open a race with whatever else is navigating the page.
|
|
11
|
+
*
|
|
12
|
+
* The log epoch is opened *before* the command is dispatched, so everything the new document
|
|
13
|
+
* logs — including a console line in its first inline script — lands after it.
|
|
14
|
+
*/
|
|
15
|
+
export const route = defineJsonRoute({
|
|
16
|
+
method: 'POST',
|
|
17
|
+
path: '/navigate',
|
|
18
|
+
bodySchema: navigateRequestSchema,
|
|
19
|
+
endpoint: 'navigate',
|
|
20
|
+
handle: async ({ ctx, res, body: payload }) => {
|
|
21
|
+
const currentUrl = ctx.getCdpStatus().target?.url ?? null;
|
|
22
|
+
const resolved = payload.url != null ? resolveNavigationUrl(payload.url, currentUrl) : { url: currentUrl ?? '' };
|
|
23
|
+
if ('error' in resolved) {
|
|
24
|
+
return respondInvalidBody(res, resolved.error);
|
|
25
|
+
}
|
|
26
|
+
if (resolved.url === '') {
|
|
27
|
+
return respondInvalidBody(res, 'Cannot rewrite query params: the page has no current URL.');
|
|
28
|
+
}
|
|
29
|
+
const rewritten = applyQueryParams(resolved.url, { param: payload.param, params: payload.params });
|
|
30
|
+
if ('error' in rewritten) {
|
|
31
|
+
return respondInvalidBody(res, rewritten.error);
|
|
32
|
+
}
|
|
33
|
+
const wait = payload.wait ?? DEFAULT_NAVIGATION_WAIT;
|
|
34
|
+
// Navigation is page-scoped, like /reload: a selected iframe stays selected across the load.
|
|
35
|
+
const epoch = ctx.buffer.beginLogEpoch();
|
|
36
|
+
const result = await navigatePage(ctx.pageCdpSession, {
|
|
37
|
+
url: rewritten.url,
|
|
38
|
+
wait,
|
|
39
|
+
timeoutMs: payload.timeoutMs ?? DEFAULT_NAVIGATION_TIMEOUT_MS,
|
|
40
|
+
});
|
|
41
|
+
return {
|
|
42
|
+
ok: true,
|
|
43
|
+
requestedUrl: rewritten.url,
|
|
44
|
+
url: result.url,
|
|
45
|
+
loaderId: result.loaderId,
|
|
46
|
+
epoch,
|
|
47
|
+
waited: wait,
|
|
48
|
+
};
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=postNavigate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postNavigate.js","sourceRoot":"","sources":["../../../src/http/routes/postNavigate.ts"],"names":[],"mappings":"AACA,OAAO,EACN,6BAA6B,EAC7B,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,oBAAoB,GACpB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEpD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAAoC;IACvE,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,WAAW;IACjB,UAAU,EAAE,qBAAqB;IACjC,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,IAAI,CAAA;QAEzD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,IAAI,EAAE,EAAE,CAAA;QAChH,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,QAAQ,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC;YACzB,OAAO,kBAAkB,CAAC,GAAG,EAAE,2DAA2D,CAAC,CAAA;QAC5F,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;QAClG,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;YAC1B,OAAO,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,uBAAuB,CAAA;QACpD,6FAA6F;QAC7F,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE;YACrD,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,IAAI;YACJ,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,6BAA6B;SAC7D,CAAC,CAAA;QAEF,OAAO;YACN,EAAE,EAAE,IAAI;YACR,YAAY,EAAE,SAAS,CAAC,GAAG;YAC3B,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK;YACL,MAAM,EAAE,IAAI;SACe,CAAA;IAC7B,CAAC;CACD,CAAC,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Move the attached page through its session history.
|
|
3
|
+
*
|
|
4
|
+
* Driven by CDP in both source modes — `Page.getNavigationHistory` plus
|
|
5
|
+
* `Page.navigateToHistoryEntry` — rather than `chrome.tabs.goBack`, so the two modes share one
|
|
6
|
+
* implementation and the wait sees the same `Page.loadEventFired` either way.
|
|
7
|
+
*/
|
|
8
|
+
export declare const route: import("./defineRoute.js").WatcherRouteDefinition;
|
|
9
|
+
//# sourceMappingURL=postNavigateHistory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postNavigateHistory.d.ts","sourceRoot":"","sources":["../../../src/http/routes/postNavigateHistory.ts"],"names":[],"mappings":"AAKA;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,mDAwBhB,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { DEFAULT_NAVIGATION_TIMEOUT_MS, DEFAULT_NAVIGATION_WAIT, navigateHistoryRequestSchema } from '@vforsh/argus-core';
|
|
2
|
+
import { defineJsonRoute } from './defineRoute.js';
|
|
3
|
+
import { navigateHistory } from '../../cdp/navigation.js';
|
|
4
|
+
/**
|
|
5
|
+
* Move the attached page through its session history.
|
|
6
|
+
*
|
|
7
|
+
* Driven by CDP in both source modes — `Page.getNavigationHistory` plus
|
|
8
|
+
* `Page.navigateToHistoryEntry` — rather than `chrome.tabs.goBack`, so the two modes share one
|
|
9
|
+
* implementation and the wait sees the same `Page.loadEventFired` either way.
|
|
10
|
+
*/
|
|
11
|
+
export const route = defineJsonRoute({
|
|
12
|
+
method: 'POST',
|
|
13
|
+
path: '/navigate/history',
|
|
14
|
+
bodySchema: navigateHistoryRequestSchema,
|
|
15
|
+
endpoint: 'navigate/history',
|
|
16
|
+
handle: async ({ ctx, body: payload }) => {
|
|
17
|
+
const wait = payload.wait ?? DEFAULT_NAVIGATION_WAIT;
|
|
18
|
+
const epoch = ctx.buffer.beginLogEpoch();
|
|
19
|
+
const result = await navigateHistory(ctx.pageCdpSession, {
|
|
20
|
+
direction: payload.direction,
|
|
21
|
+
steps: payload.steps ?? 1,
|
|
22
|
+
wait,
|
|
23
|
+
timeoutMs: payload.timeoutMs ?? DEFAULT_NAVIGATION_TIMEOUT_MS,
|
|
24
|
+
});
|
|
25
|
+
return {
|
|
26
|
+
ok: true,
|
|
27
|
+
url: result.url,
|
|
28
|
+
index: result.index,
|
|
29
|
+
length: result.length,
|
|
30
|
+
epoch,
|
|
31
|
+
waited: wait,
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=postNavigateHistory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"postNavigateHistory.js","sourceRoot":"","sources":["../../../src/http/routes/postNavigateHistory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAA;AACzH,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,eAAe,CAAkD;IACrF,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,mBAAmB;IACzB,UAAU,EAAE,4BAA4B;IACxC,QAAQ,EAAE,kBAAkB;IAC5B,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,uBAAuB,CAAA;QACpD,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE;YACxD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;YACzB,IAAI;YACJ,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,6BAA6B;SAC7D,CAAC,CAAA;QAEF,OAAO;YACN,EAAE,EAAE,IAAI;YACR,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK;YACL,MAAM,EAAE,IAAI;SACsB,CAAA;IACpC,CAAC;CACD,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-session-events.d.ts","sourceRoot":"","sources":["../../src/sources/extension-session-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAqC,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACxG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAE3E,KAAK,qCAAqC,GAAG;IAC5C,OAAO,EAAE,gBAAgB,CAAA;IACzB,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;IACpC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,mBAAmB,CAAA;IAC7D,wBAAwB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAA;IAChE,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpG,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAA;IACtD,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAA;CACtD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,qCAAqC,GAAI,0LAYnD,qCAAqC,KAAG,
|
|
1
|
+
{"version":3,"file":"extension-session-events.d.ts","sourceRoot":"","sources":["../../src/sources/extension-session-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAqC,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACxG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAE3E,KAAK,qCAAqC,GAAG;IAC5C,OAAO,EAAE,gBAAgB,CAAA;IACzB,MAAM,EAAE,eAAe,CAAA;IACvB,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;IACpC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,UAAU,EAAE,iBAAiB,CAAA;IAC7B,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,mBAAmB,CAAA;IAC7D,wBAAwB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAA;IAChE,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpG,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAA;IACtD,iBAAiB,EAAE,CAAC,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAA;CACtD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,qCAAqC,GAAI,0LAYnD,qCAAqC,KAAG,IAyI1C,CAAA"}
|
|
@@ -68,6 +68,27 @@ export const registerExtensionSessionEventHandlers = ({ session, events, ignoreM
|
|
|
68
68
|
emitTargetChanged(session);
|
|
69
69
|
}
|
|
70
70
|
});
|
|
71
|
+
session.handle.onEvent('Page.navigatedWithinDocument', (params, meta) => {
|
|
72
|
+
const record = params;
|
|
73
|
+
if (meta.sessionId || !record.frameId || !record.url) {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
const state = getOrCreateFrameState(session.tabId);
|
|
77
|
+
const frame = state.frames.get(record.frameId);
|
|
78
|
+
if (!frame) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
// Same-document (hash change, pushState): the URL moved but the document did not, so this
|
|
82
|
+
// updates the reported URL without firing onPageNavigation — no log rotation, no
|
|
83
|
+
// sourcemap reset, no indicator repaint for a navigation that replaced nothing.
|
|
84
|
+
frame.url = record.url;
|
|
85
|
+
if (record.frameId === state.topFrameId) {
|
|
86
|
+
session.url = record.url;
|
|
87
|
+
}
|
|
88
|
+
if (state.activeFrameId === record.frameId || (state.activeFrameId == null && record.frameId === state.topFrameId)) {
|
|
89
|
+
emitTargetChanged(session);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
71
92
|
session.handle.onEvent('Page.frameAttached', (params, meta) => {
|
|
72
93
|
const record = params;
|
|
73
94
|
if (!record.frameId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension-session-events.js","sourceRoot":"","sources":["../../src/sources/extension-session-events.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extension-session-events.js","sourceRoot":"","sources":["../../src/sources/extension-session-events.ts"],"names":[],"mappings":"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"}
|