@vforsh/argus 0.1.12 → 0.1.14
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/argus.js +8523 -2060
- package/dist/cdp/sendCdpCommand.d.ts +6 -2
- package/dist/cdp/sendCdpCommand.d.ts.map +1 -1
- package/dist/cdp/sendCdpCommand.js +18 -12
- package/dist/cdp/sendCdpCommand.js.map +1 -1
- package/dist/cli/defineCommand.d.ts +26 -0
- package/dist/cli/defineCommand.d.ts.map +1 -0
- package/dist/cli/defineCommand.js +55 -0
- package/dist/cli/defineCommand.js.map +1 -0
- package/dist/cli/defineWatcherCommand.d.ts +95 -0
- package/dist/cli/defineWatcherCommand.d.ts.map +1 -0
- package/dist/cli/defineWatcherCommand.js +72 -0
- package/dist/cli/defineWatcherCommand.js.map +1 -0
- package/dist/cli/plugins/registerPlugins.d.ts.map +1 -1
- package/dist/cli/plugins/registerPlugins.js +1 -1
- package/dist/cli/plugins/registerPlugins.js.map +1 -1
- package/dist/cli/register/domCommandBuilder.d.ts +1 -0
- package/dist/cli/register/domCommandBuilder.d.ts.map +1 -1
- package/dist/cli/register/domCommandBuilder.js +3 -0
- package/dist/cli/register/domCommandBuilder.js.map +1 -1
- package/dist/cli/register/index.d.ts.map +1 -1
- package/dist/cli/register/index.js +10 -2
- package/dist/cli/register/index.js.map +1 -1
- package/dist/cli/register/registerAuth.d.ts.map +1 -1
- package/dist/cli/register/registerAuth.js +103 -4
- package/dist/cli/register/registerAuth.js.map +1 -1
- package/dist/cli/register/registerChrome.d.ts.map +1 -1
- package/dist/cli/register/registerChrome.js +53 -14
- package/dist/cli/register/registerChrome.js.map +1 -1
- package/dist/cli/register/registerCode.d.ts.map +1 -1
- package/dist/cli/register/registerCode.js +19 -0
- package/dist/cli/register/registerCode.js.map +1 -1
- package/dist/cli/register/registerDialog.d.ts +3 -0
- package/dist/cli/register/registerDialog.d.ts.map +1 -0
- package/dist/cli/register/registerDialog.js +45 -0
- package/dist/cli/register/registerDialog.js.map +1 -0
- package/dist/cli/register/registerDom.d.ts.map +1 -1
- package/dist/cli/register/registerDom.js +7 -1
- package/dist/cli/register/registerDom.js.map +1 -1
- package/dist/cli/register/registerEval.d.ts.map +1 -1
- package/dist/cli/register/registerEval.js +8 -1
- package/dist/cli/register/registerEval.js.map +1 -1
- package/dist/cli/register/registerExtension.d.ts.map +1 -1
- package/dist/cli/register/registerExtension.js +12 -0
- package/dist/cli/register/registerExtension.js.map +1 -1
- package/dist/cli/register/registerFill.d.ts.map +1 -1
- package/dist/cli/register/registerFill.js +4 -3
- package/dist/cli/register/registerFill.js.map +1 -1
- package/dist/cli/register/registerHover.d.ts.map +1 -1
- package/dist/cli/register/registerHover.js +2 -1
- package/dist/cli/register/registerHover.js.map +1 -1
- package/dist/cli/register/registerLocate.d.ts +3 -0
- package/dist/cli/register/registerLocate.d.ts.map +1 -0
- package/dist/cli/register/registerLocate.js +48 -0
- package/dist/cli/register/registerLocate.js.map +1 -0
- package/dist/cli/register/registerNet.d.ts.map +1 -1
- package/dist/cli/register/registerNet.js +268 -13
- package/dist/cli/register/registerNet.js.map +1 -1
- package/dist/cli/register/registerPage.d.ts.map +1 -1
- package/dist/cli/register/registerPage.js +17 -0
- package/dist/cli/register/registerPage.js.map +1 -1
- package/dist/cli/register/registerQuickAccess.d.ts.map +1 -1
- package/dist/cli/register/registerQuickAccess.js +33 -3
- package/dist/cli/register/registerQuickAccess.js.map +1 -1
- package/dist/cli/register/registerSnapshot.d.ts.map +1 -1
- package/dist/cli/register/registerSnapshot.js +2 -1
- package/dist/cli/register/registerSnapshot.js.map +1 -1
- package/dist/cli/register/registerStorage.d.ts.map +1 -1
- package/dist/cli/register/registerStorage.js +26 -21
- package/dist/cli/register/registerStorage.js.map +1 -1
- package/dist/cli/register/registerWatcher.d.ts.map +1 -1
- package/dist/cli/register/registerWatcher.js +19 -0
- package/dist/cli/register/registerWatcher.js.map +1 -1
- package/dist/cli/validation.d.ts +1 -0
- package/dist/cli/validation.d.ts.map +1 -1
- package/dist/cli/validation.js +1 -0
- package/dist/cli/validation.js.map +1 -1
- package/dist/commands/auth.d.ts +39 -18
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +104 -122
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/authCookieSupport.d.ts +54 -0
- package/dist/commands/authCookieSupport.d.ts.map +1 -0
- package/dist/commands/authCookieSupport.js +206 -0
- package/dist/commands/authCookieSupport.js.map +1 -0
- package/dist/commands/authCookies.d.ts +60 -0
- package/dist/commands/authCookies.d.ts.map +1 -0
- package/dist/commands/authCookies.js +149 -0
- package/dist/commands/authCookies.js.map +1 -0
- package/dist/commands/chrome/authState.d.ts +23 -0
- package/dist/commands/chrome/authState.d.ts.map +1 -0
- package/dist/commands/chrome/authState.js +97 -0
- package/dist/commands/chrome/authState.js.map +1 -0
- package/dist/commands/chromeStart.d.ts +1 -0
- package/dist/commands/chromeStart.d.ts.map +1 -1
- package/dist/commands/chromeStart.js +28 -3
- package/dist/commands/chromeStart.js.map +1 -1
- package/dist/commands/code.d.ts.map +1 -1
- package/dist/commands/code.js +9 -1
- package/dist/commands/code.js.map +1 -1
- package/dist/commands/codeEdit.d.ts +9 -0
- package/dist/commands/codeEdit.d.ts.map +1 -0
- package/dist/commands/codeEdit.js +155 -0
- package/dist/commands/codeEdit.js.map +1 -0
- package/dist/commands/dialog.d.ts +13 -0
- package/dist/commands/dialog.d.ts.map +1 -0
- package/dist/commands/dialog.js +53 -0
- package/dist/commands/dialog.js.map +1 -0
- package/dist/commands/dom/shared.d.ts +5 -1
- package/dist/commands/dom/shared.d.ts.map +1 -1
- package/dist/commands/dom/shared.js +27 -0
- package/dist/commands/dom/shared.js.map +1 -1
- package/dist/commands/domClick.d.ts +5 -1
- package/dist/commands/domClick.d.ts.map +1 -1
- package/dist/commands/domClick.js +87 -69
- package/dist/commands/domClick.js.map +1 -1
- package/dist/commands/domFill.d.ts +3 -2
- package/dist/commands/domFill.d.ts.map +1 -1
- package/dist/commands/domFill.js +57 -64
- package/dist/commands/domFill.js.map +1 -1
- package/dist/commands/domFocus.d.ts +3 -2
- package/dist/commands/domFocus.d.ts.map +1 -1
- package/dist/commands/domFocus.js +28 -35
- package/dist/commands/domFocus.js.map +1 -1
- package/dist/commands/domHover.d.ts +3 -2
- package/dist/commands/domHover.d.ts.map +1 -1
- package/dist/commands/domHover.js +28 -35
- package/dist/commands/domHover.js.map +1 -1
- package/dist/commands/domInfo.d.ts +2 -1
- package/dist/commands/domInfo.d.ts.map +1 -1
- package/dist/commands/domInfo.js +6 -5
- package/dist/commands/domInfo.js.map +1 -1
- package/dist/commands/domRemove.d.ts +1 -1
- package/dist/commands/domRemove.d.ts.map +1 -1
- package/dist/commands/domRemove.js +25 -34
- package/dist/commands/domRemove.js.map +1 -1
- package/dist/commands/domScroll.d.ts +1 -1
- package/dist/commands/domScroll.d.ts.map +1 -1
- package/dist/commands/domScroll.js +1 -1
- package/dist/commands/domScroll.js.map +1 -1
- package/dist/commands/domSetFile.d.ts +1 -1
- package/dist/commands/domSetFile.d.ts.map +1 -1
- package/dist/commands/domSetFile.js +24 -33
- package/dist/commands/domSetFile.js.map +1 -1
- package/dist/commands/domTree.js +2 -2
- package/dist/commands/domTree.js.map +1 -1
- package/dist/commands/eval.d.ts +2 -0
- package/dist/commands/eval.d.ts.map +1 -1
- package/dist/commands/eval.js +15 -9
- package/dist/commands/eval.js.map +1 -1
- package/dist/commands/evalShared.d.ts +11 -0
- package/dist/commands/evalShared.d.ts.map +1 -1
- package/dist/commands/evalShared.js +21 -0
- package/dist/commands/evalShared.js.map +1 -1
- package/dist/commands/evalUntil.d.ts +2 -0
- package/dist/commands/evalUntil.d.ts.map +1 -1
- package/dist/commands/evalUntil.js +14 -8
- package/dist/commands/evalUntil.js.map +1 -1
- package/dist/commands/extension/resolveExtensionWatcher.d.ts +20 -0
- package/dist/commands/extension/resolveExtensionWatcher.d.ts.map +1 -0
- package/dist/commands/extension/resolveExtensionWatcher.js +73 -0
- package/dist/commands/extension/resolveExtensionWatcher.js.map +1 -0
- package/dist/commands/extension/tabs.d.ts +8 -0
- package/dist/commands/extension/tabs.d.ts.map +1 -0
- package/dist/commands/extension/tabs.js +85 -0
- package/dist/commands/extension/tabs.js.map +1 -0
- package/dist/commands/locate.d.ts +17 -0
- package/dist/commands/locate.d.ts.map +1 -0
- package/dist/commands/locate.js +117 -0
- package/dist/commands/locate.js.map +1 -0
- package/dist/commands/net.d.ts +2 -5
- package/dist/commands/net.d.ts.map +1 -1
- package/dist/commands/net.js +5 -7
- package/dist/commands/net.js.map +1 -1
- package/dist/commands/netBody.d.ts +6 -0
- package/dist/commands/netBody.d.ts.map +1 -0
- package/dist/commands/netBody.js +32 -0
- package/dist/commands/netBody.js.map +1 -0
- package/dist/commands/netCapture.d.ts +41 -0
- package/dist/commands/netCapture.d.ts.map +1 -0
- package/dist/commands/netCapture.js +203 -0
- package/dist/commands/netCapture.js.map +1 -0
- package/dist/commands/netClear.d.ts +5 -0
- package/dist/commands/netClear.d.ts.map +1 -0
- package/dist/commands/netClear.js +20 -0
- package/dist/commands/netClear.js.map +1 -0
- package/dist/commands/netExport.d.ts +8 -0
- package/dist/commands/netExport.d.ts.map +1 -0
- package/dist/commands/netExport.js +124 -0
- package/dist/commands/netExport.js.map +1 -0
- package/dist/commands/netInspect.d.ts +12 -0
- package/dist/commands/netInspect.d.ts.map +1 -0
- package/dist/commands/netInspect.js +205 -0
- package/dist/commands/netInspect.js.map +1 -0
- package/dist/commands/netRequestClient.d.ts +17 -0
- package/dist/commands/netRequestClient.d.ts.map +1 -0
- package/dist/commands/netRequestClient.js +54 -0
- package/dist/commands/netRequestClient.js.map +1 -0
- package/dist/commands/netRequestTarget.d.ts +14 -0
- package/dist/commands/netRequestTarget.d.ts.map +1 -0
- package/dist/commands/netRequestTarget.js +36 -0
- package/dist/commands/netRequestTarget.js.map +1 -0
- package/dist/commands/netShared.d.ts +40 -0
- package/dist/commands/netShared.d.ts.map +1 -0
- package/dist/commands/netShared.js +108 -0
- package/dist/commands/netShared.js.map +1 -0
- package/dist/commands/netShow.d.ts +5 -0
- package/dist/commands/netShow.d.ts.map +1 -0
- package/dist/commands/netShow.js +28 -0
- package/dist/commands/netShow.js.map +1 -0
- package/dist/commands/netSse.d.ts +6 -0
- package/dist/commands/netSse.d.ts.map +1 -0
- package/dist/commands/netSse.js +26 -0
- package/dist/commands/netSse.js.map +1 -0
- package/dist/commands/netSummary.d.ts +6 -0
- package/dist/commands/netSummary.d.ts.map +1 -0
- package/dist/commands/netSummary.js +99 -0
- package/dist/commands/netSummary.js.map +1 -0
- package/dist/commands/netTail.d.ts +2 -5
- package/dist/commands/netTail.d.ts.map +1 -1
- package/dist/commands/netTail.js +7 -15
- package/dist/commands/netTail.js.map +1 -1
- package/dist/commands/netWatch.d.ts +6 -0
- package/dist/commands/netWatch.d.ts.map +1 -0
- package/dist/commands/netWatch.js +55 -0
- package/dist/commands/netWatch.js.map +1 -0
- package/dist/commands/netWebSocket.d.ts +10 -0
- package/dist/commands/netWebSocket.d.ts.map +1 -0
- package/dist/commands/netWebSocket.js +58 -0
- package/dist/commands/netWebSocket.js.map +1 -0
- package/dist/commands/pageVisibility.d.ts +9 -0
- package/dist/commands/pageVisibility.d.ts.map +1 -0
- package/dist/commands/pageVisibility.js +24 -0
- package/dist/commands/pageVisibility.js.map +1 -0
- package/dist/commands/reload.d.ts +1 -1
- package/dist/commands/reload.d.ts.map +1 -1
- package/dist/commands/reload.js +8 -17
- package/dist/commands/reload.js.map +1 -1
- package/dist/commands/resolveTestId.d.ts +2 -1
- package/dist/commands/resolveTestId.d.ts.map +1 -1
- package/dist/commands/resolveTestId.js +3 -3
- package/dist/commands/resolveTestId.js.map +1 -1
- package/dist/commands/screenshot.d.ts +1 -0
- package/dist/commands/screenshot.d.ts.map +1 -1
- package/dist/commands/screenshot.js +37 -2
- package/dist/commands/screenshot.js.map +1 -1
- package/dist/commands/snapshot.d.ts +1 -1
- package/dist/commands/snapshot.d.ts.map +1 -1
- package/dist/commands/snapshot.js +26 -49
- package/dist/commands/snapshot.js.map +1 -1
- package/dist/commands/start.d.ts +1 -0
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +62 -7
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/storage.d.ts +17 -0
- package/dist/commands/storage.d.ts.map +1 -0
- package/dist/commands/storage.js +35 -0
- package/dist/commands/storage.js.map +1 -0
- package/dist/commands/throttle.d.ts +6 -3
- package/dist/commands/throttle.d.ts.map +1 -1
- package/dist/commands/throttle.js +46 -118
- package/dist/commands/throttle.js.map +1 -1
- package/dist/commands/watcherNativeHost.d.ts.map +1 -1
- package/dist/commands/watcherNativeHost.js +13 -2
- package/dist/commands/watcherNativeHost.js.map +1 -1
- package/dist/commands/watcherStatus.d.ts.map +1 -1
- package/dist/commands/watcherStatus.js +2 -1
- package/dist/commands/watcherStatus.js.map +1 -1
- package/dist/eval/evalClient.d.ts +1 -0
- package/dist/eval/evalClient.d.ts.map +1 -1
- package/dist/eval/evalClient.js +2 -0
- package/dist/eval/evalClient.js.map +1 -1
- package/dist/net/har.d.ts +86 -0
- package/dist/net/har.d.ts.map +1 -0
- package/dist/net/har.js +125 -0
- package/dist/net/har.js.map +1 -0
- package/dist/net/summary.d.ts +33 -0
- package/dist/net/summary.d.ts.map +1 -0
- package/dist/net/summary.js +128 -0
- package/dist/net/summary.js.map +1 -0
- package/dist/output/accessibility.js +16 -12
- package/dist/output/accessibility.js.map +1 -1
- package/dist/output/code.d.ts +2 -1
- package/dist/output/code.d.ts.map +1 -1
- package/dist/output/code.js +10 -0
- package/dist/output/code.js.map +1 -1
- package/dist/output/dom.d.ts.map +1 -1
- package/dist/output/dom.js +2 -1
- package/dist/output/dom.js.map +1 -1
- package/dist/output/format.d.ts +1 -3
- package/dist/output/format.d.ts.map +1 -1
- package/dist/output/format.js +0 -8
- package/dist/output/format.js.map +1 -1
- package/dist/output/locate.d.ts +3 -0
- package/dist/output/locate.d.ts.map +1 -0
- package/dist/output/locate.js +25 -0
- package/dist/output/locate.js.map +1 -0
- package/dist/output/net.d.ts +16 -0
- package/dist/output/net.d.ts.map +1 -0
- package/dist/output/net.js +298 -0
- package/dist/output/net.js.map +1 -0
- package/dist/watchers/queryParams.d.ts +17 -0
- package/dist/watchers/queryParams.d.ts.map +1 -1
- package/dist/watchers/queryParams.js +61 -0
- package/dist/watchers/queryParams.js.map +1 -1
- package/package.json +3 -6
- package/dist/cli/register/registerClick.d.ts +0 -3
- package/dist/cli/register/registerClick.d.ts.map +0 -1
- package/dist/cli/register/registerClick.js +0 -23
- package/dist/cli/register/registerClick.js.map +0 -1
- package/dist/commands/storageLocal.d.ts +0 -18
- package/dist/commands/storageLocal.d.ts.map +0 -1
- package/dist/commands/storageLocal.js +0 -92
- package/dist/commands/storageLocal.js.map +0 -1
- package/dist/plugin.d.ts +0 -29
- package/dist/plugin.d.ts.map +0 -1
- package/dist/plugin.js +0 -2
- package/dist/plugin.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerFill.js","sourceRoot":"","sources":["../../../src/cli/register/registerFill.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/D,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC5C,OAAO;SACL,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,QAAQ,CAAC,SAAS,EAAE,qEAAqE,CAAC;SAC1F,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;SAChE,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;SACnE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;SACvD,MAAM,CAAC,eAAe,EAAE,4DAA4D,CAAC;SACrF,MAAM,CAAC,OAAO,EAAE,qDAAqD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;SAC1F,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"registerFill.js","sourceRoot":"","sources":["../../../src/cli/register/registerFill.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/D,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC5C,OAAO;SACL,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,QAAQ,CAAC,SAAS,EAAE,qEAAqE,CAAC;SAC1F,WAAW,CAAC,2DAA2D,CAAC;SACxE,MAAM,CAAC,kBAAkB,EAAE,oCAAoC,CAAC;SAChE,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,oBAAoB,EAAE,gDAAgD,CAAC;SAC9E,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;SACnE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;SACvD,MAAM,CAAC,eAAe,EAAE,4DAA4D,CAAC;SACrF,MAAM,CAAC,OAAO,EAAE,qDAAqD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;SAC1F,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,CAAC;SAC3E,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,qfAAqf,CACrf;SACA,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAA;YAC1D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;YACpB,OAAM;QACP,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAAE,OAAM;QACnC,MAAM,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACrC,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerHover.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerHover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAIxC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"registerHover.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerHover.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAIxC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmBpD"}
|
|
@@ -7,10 +7,11 @@ export function registerHover(program) {
|
|
|
7
7
|
.description('Hover over element(s) matching a CSS selector')
|
|
8
8
|
.option('--selector <css>', 'CSS selector to match element(s)')
|
|
9
9
|
.option('--testid <id>', 'Shorthand for --selector "[data-testid=\'<id>\']"')
|
|
10
|
+
.option('--ref <elementRef>', 'Stable element ref from snapshot/locate output')
|
|
10
11
|
.option('--all', 'Allow multiple matches (default: error if >1 match)')
|
|
11
12
|
.option('--text <string>', 'Filter by textContent (trimmed). Supports /regex/flags syntax')
|
|
12
13
|
.option('--json', 'Output JSON for automation')
|
|
13
|
-
.addHelpText('after', '\nExamples:\n $ argus hover app --selector "#btn"\n $ argus hover app --selector ".item" --all\n $ argus hover app --selector "#btn" --json\n')
|
|
14
|
+
.addHelpText('after', '\nExamples:\n $ argus hover app --selector "#btn"\n $ argus hover app --ref e5\n $ argus hover app --selector ".item" --all\n $ argus hover app --selector "#btn" --json\n')
|
|
14
15
|
.action(async (id, options) => {
|
|
15
16
|
if (!resolveTestId(options))
|
|
16
17
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerHover.js","sourceRoot":"","sources":["../../../src/cli/register/registerHover.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/D,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC7C,OAAO;SACL,OAAO,CAAC,OAAO,CAAC;SAChB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CAAC,kBAAkB,EAAE,kCAAkC,CAAC;SAC9D,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,OAAO,EAAE,qDAAqD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;SAC1F,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"registerHover.js","sourceRoot":"","sources":["../../../src/cli/register/registerHover.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAE/D,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC7C,OAAO;SACL,OAAO,CAAC,OAAO,CAAC;SAChB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CAAC,kBAAkB,EAAE,kCAAkC,CAAC;SAC9D,MAAM,CAAC,eAAe,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,oBAAoB,EAAE,gDAAgD,CAAC;SAC9E,MAAM,CAAC,OAAO,EAAE,qDAAqD,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,+DAA+D,CAAC;SAC1F,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,gLAAgL,CAChL;SACA,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAAE,OAAM;QACnC,MAAM,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerLocate.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerLocate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGxC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyDrD"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { runLocateLabel, runLocateRole, runLocateText } from '../../commands/locate.js';
|
|
2
|
+
export function registerLocate(program) {
|
|
3
|
+
const locate = program.command('locate').description('Find semantic elements and return stable refs for later actions');
|
|
4
|
+
locate
|
|
5
|
+
.command('role')
|
|
6
|
+
.argument('[id]', 'Watcher id to query')
|
|
7
|
+
.argument('<role>', 'Accessibility role to match (e.g. button, textbox, link)')
|
|
8
|
+
.description('Locate elements by accessibility role and optional accessible name')
|
|
9
|
+
.option('--name <text>', 'Match the element accessible name')
|
|
10
|
+
.option('--exact', 'Require an exact normalized name match')
|
|
11
|
+
.option('--all', 'Return all matches (default: error if >1 match)')
|
|
12
|
+
.option('--action <action>', 'Immediately run one action: click, fill, focus, hover')
|
|
13
|
+
.option('--value <text>', 'Fill value when used with --action fill')
|
|
14
|
+
.option('--json', 'Output JSON for automation')
|
|
15
|
+
.addHelpText('after', '\nExamples:\n $ argus locate role app button --name "Submit"\n $ argus locate role app textbox --name "Email" --action fill --value "me@example.com"\n $ argus locate role app link --all\n')
|
|
16
|
+
.action(async (id, role, options) => {
|
|
17
|
+
await runLocateRole(id, role, options);
|
|
18
|
+
});
|
|
19
|
+
locate
|
|
20
|
+
.command('text')
|
|
21
|
+
.argument('[id]', 'Watcher id to query')
|
|
22
|
+
.argument('<text>', 'Visible/accessible text to match')
|
|
23
|
+
.description('Locate elements by visible/accessible text')
|
|
24
|
+
.option('--exact', 'Require an exact normalized text match')
|
|
25
|
+
.option('--all', 'Return all matches (default: error if >1 match)')
|
|
26
|
+
.option('--action <action>', 'Immediately run one action: click, fill, focus, hover')
|
|
27
|
+
.option('--value <text>', 'Fill value when used with --action fill')
|
|
28
|
+
.option('--json', 'Output JSON for automation')
|
|
29
|
+
.addHelpText('after', '\nExamples:\n $ argus locate text app "Accept"\n $ argus locate text app "Continue" --action click\n $ argus locate text app "Home" --all\n')
|
|
30
|
+
.action(async (id, text, options) => {
|
|
31
|
+
await runLocateText(id, text, options);
|
|
32
|
+
});
|
|
33
|
+
locate
|
|
34
|
+
.command('label')
|
|
35
|
+
.argument('[id]', 'Watcher id to query')
|
|
36
|
+
.argument('<label>', 'Form label / accessible name to match')
|
|
37
|
+
.description('Locate form controls by their label or accessible name')
|
|
38
|
+
.option('--exact', 'Require an exact normalized label match')
|
|
39
|
+
.option('--all', 'Return all matches (default: error if >1 match)')
|
|
40
|
+
.option('--action <action>', 'Immediately run one action: click, fill, focus, hover')
|
|
41
|
+
.option('--value <text>', 'Fill value when used with --action fill')
|
|
42
|
+
.option('--json', 'Output JSON for automation')
|
|
43
|
+
.addHelpText('after', '\nExamples:\n $ argus locate label app "Email"\n $ argus locate label app "Email" --action fill --value "me@example.com"\n')
|
|
44
|
+
.action(async (id, label, options) => {
|
|
45
|
+
await runLocateLabel(id, label, options);
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=registerLocate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registerLocate.js","sourceRoot":"","sources":["../../../src/cli/register/registerLocate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAEvF,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,iEAAiE,CAAC,CAAA;IAEvH,MAAM;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,QAAQ,CAAC,QAAQ,EAAE,0DAA0D,CAAC;SAC9E,WAAW,CAAC,oEAAoE,CAAC;SACjF,MAAM,CAAC,eAAe,EAAE,mCAAmC,CAAC;SAC5D,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC;SAC3D,MAAM,CAAC,OAAO,EAAE,iDAAiD,CAAC;SAClE,MAAM,CAAC,mBAAmB,EAAE,uDAAuD,CAAC;SACpF,MAAM,CAAC,gBAAgB,EAAE,yCAAyC,CAAC;SACnE,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,gMAAgM,CAChM;SACA,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACnC,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEH,MAAM;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,QAAQ,CAAC,QAAQ,EAAE,kCAAkC,CAAC;SACtD,WAAW,CAAC,4CAA4C,CAAC;SACzD,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC;SAC3D,MAAM,CAAC,OAAO,EAAE,iDAAiD,CAAC;SAClE,MAAM,CAAC,mBAAmB,EAAE,uDAAuD,CAAC;SACpF,MAAM,CAAC,gBAAgB,EAAE,yCAAyC,CAAC;SACnE,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,gJAAgJ,CAChJ;SACA,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QACnC,MAAM,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEH,MAAM;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,QAAQ,CAAC,SAAS,EAAE,uCAAuC,CAAC;SAC5D,WAAW,CAAC,wDAAwD,CAAC;SACrE,MAAM,CAAC,SAAS,EAAE,yCAAyC,CAAC;SAC5D,MAAM,CAAC,OAAO,EAAE,iDAAiD,CAAC;SAClE,MAAM,CAAC,mBAAmB,EAAE,uDAAuD,CAAC;SACpF,MAAM,CAAC,gBAAgB,EAAE,yCAAyC,CAAC;SACnE,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,8HAA8H,CAC9H;SACA,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACpC,MAAM,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerNet.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"registerNet.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerNet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAgBxC,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgLlD"}
|
|
@@ -1,32 +1,287 @@
|
|
|
1
|
+
import { runNetClear } from '../../commands/netClear.js';
|
|
2
|
+
import { runNetExport } from '../../commands/netExport.js';
|
|
3
|
+
import { runNetInspect } from '../../commands/netInspect.js';
|
|
1
4
|
import { runNet } from '../../commands/net.js';
|
|
5
|
+
import { runNetBody } from '../../commands/netBody.js';
|
|
6
|
+
import { runNetShow } from '../../commands/netShow.js';
|
|
7
|
+
import { runNetSummary } from '../../commands/netSummary.js';
|
|
8
|
+
import { runNetSse } from '../../commands/netSse.js';
|
|
2
9
|
import { runNetTail } from '../../commands/netTail.js';
|
|
10
|
+
import { runNetWatch } from '../../commands/netWatch.js';
|
|
11
|
+
import { runNetWebSocket, runNetWebSocketShow } from '../../commands/netWebSocket.js';
|
|
12
|
+
import { collectValues } from '../validation.js';
|
|
13
|
+
const RELOAD_SELECTED_SCOPE_NOTE = '\n\nNote:\n --reload does not support --scope selected or --frame selected.\n';
|
|
3
14
|
export function registerNet(program) {
|
|
4
15
|
const net = program
|
|
5
16
|
.command('net')
|
|
6
17
|
.alias('network')
|
|
18
|
+
.enablePositionalOptions()
|
|
7
19
|
.argument('[id]', 'Watcher id to query')
|
|
8
20
|
.description('Fetch recent network request summaries from a watcher')
|
|
9
21
|
.option('--after <id>', 'Only return requests after this id')
|
|
10
|
-
.option('--limit <count>', 'Maximum number of requests')
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
.
|
|
14
|
-
.addHelpText('after', '\nExamples:\n $ argus net app --since 5m\n $ argus net app --grep api\n $ argus net app --json\n')
|
|
22
|
+
.option('--limit <count>', 'Maximum number of requests');
|
|
23
|
+
applyNetFilterOptions(net, { includeSince: true });
|
|
24
|
+
net.option('--json', 'Output JSON for automation')
|
|
25
|
+
.addHelpText('after', '\nExamples:\n $ argus net app --since 5m\n $ argus net app --grep api\n $ argus net app --ignore-host mc.yandex.ru\n $ argus net app --json\n')
|
|
15
26
|
.action(async (id, options) => {
|
|
16
|
-
await runNet(id, options);
|
|
27
|
+
await runNet(id, resolveCommandOptions(options));
|
|
17
28
|
});
|
|
18
|
-
net
|
|
29
|
+
const tail = net
|
|
30
|
+
.command('tail')
|
|
19
31
|
.argument('[id]', 'Watcher id to follow')
|
|
20
32
|
.description('Tail network request summaries via long-polling')
|
|
21
33
|
.option('--after <id>', 'Start after this request id')
|
|
22
34
|
.option('--limit <count>', 'Maximum number of requests per poll')
|
|
23
|
-
.option('--timeout <ms>', 'Long-poll timeout in milliseconds')
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
.
|
|
27
|
-
.
|
|
35
|
+
.option('--timeout <ms>', 'Long-poll timeout in milliseconds');
|
|
36
|
+
applyNetFilterOptions(tail, { includeSince: true });
|
|
37
|
+
tail.option('--json', 'Output newline-delimited JSON requests')
|
|
38
|
+
.addHelpText('after', '\nExamples:\n $ argus net tail app\n $ argus net tail app --grep api\n $ argus net tail app --ignore-host mc.yandex.ru\n $ argus net tail app --json\n')
|
|
39
|
+
.action(async (id, options) => {
|
|
40
|
+
await runNetTail(id, resolveCommandOptions(options));
|
|
41
|
+
});
|
|
42
|
+
net.command('clear')
|
|
43
|
+
.argument('[id]', 'Watcher id to clear')
|
|
44
|
+
.description('Clear buffered network requests for a watcher')
|
|
45
|
+
.option('--json', 'Output JSON for automation')
|
|
46
|
+
.addHelpText('after', '\nExamples:\n $ argus net clear app\n $ argus net clear app --json\n')
|
|
47
|
+
.action(async (id, options) => {
|
|
48
|
+
await runNetClear(id, resolveCommandOptions(options));
|
|
49
|
+
});
|
|
50
|
+
const watch = net
|
|
51
|
+
.command('watch')
|
|
52
|
+
.argument('[id]', 'Watcher id to watch')
|
|
53
|
+
.description('Optionally clear/reload, then wait until network activity settles')
|
|
54
|
+
.option('--reload', 'Reload the attached page before watching')
|
|
55
|
+
.option('--ignore-cache', 'Bypass browser cache when used with --reload')
|
|
56
|
+
.option('--max-timeout <duration>', 'Stop after this total watch duration even if the page stays chatty')
|
|
57
|
+
.option('--no-clear', 'Keep the existing buffer instead of starting fresh');
|
|
58
|
+
applyNetSettleOptions(watch, 'Quiet window before finishing');
|
|
59
|
+
applyNetFilterOptions(watch);
|
|
60
|
+
watch
|
|
61
|
+
.option('--json', 'Output JSON for automation')
|
|
62
|
+
.addHelpText('after', `\nExamples:\n $ argus net watch app --reload --settle 3s\n $ argus net watch app --reload --settle-after "window.appReady" --settle 2s\n $ argus net watch app --reload --ignore-host mc.yandex.ru\n $ argus net watch app --max-timeout 30s --json${RELOAD_SELECTED_SCOPE_NOTE}`)
|
|
63
|
+
.action(async (id, options) => {
|
|
64
|
+
await runNetWatch(id, resolveCommandOptions(options));
|
|
65
|
+
});
|
|
66
|
+
const exportCommand = net
|
|
67
|
+
.command('export')
|
|
68
|
+
.argument('[id]', 'Watcher id to export')
|
|
69
|
+
.description('Export buffered network requests in a portable format')
|
|
70
|
+
.option('--format <format>', 'Export format (currently: har)', 'har')
|
|
71
|
+
.option('--out <path>', 'Write the exported file to this path')
|
|
72
|
+
.option('--reload', 'Reload the attached page before exporting')
|
|
73
|
+
.option('--ignore-cache', 'Bypass browser cache when used with --reload')
|
|
74
|
+
.option('--max-timeout <duration>', 'Stop reload capture after this total duration even if the page stays chatty')
|
|
75
|
+
.option('--no-clear', 'Keep the existing buffer instead of starting fresh when used with --reload');
|
|
76
|
+
applyNetSettleOptions(exportCommand, 'Quiet window before finishing reload capture');
|
|
77
|
+
applyNetFilterOptions(exportCommand, { includeSince: true });
|
|
78
|
+
exportCommand
|
|
79
|
+
.option('--json', 'Output JSON metadata for automation')
|
|
80
|
+
.addHelpText('after', `\nExamples:\n $ argus net export app --out boot.har\n $ argus net export app --reload --settle 3s --out boot.har\n $ argus net export app --reload --settle-after "window.appReady" --settle 2s --out boot.har\n $ argus net export app --format har --first-party --out boot.har --json${RELOAD_SELECTED_SCOPE_NOTE}`)
|
|
81
|
+
.action(async (id, options) => {
|
|
82
|
+
await runNetExport(id, resolveCommandOptions(options));
|
|
83
|
+
});
|
|
84
|
+
net.command('show')
|
|
85
|
+
.argument('<request>', 'Argus request id or raw CDP requestId')
|
|
86
|
+
.argument('[id]', 'Watcher id to query')
|
|
87
|
+
.description('Show detailed information for one buffered request')
|
|
88
|
+
.option('--json', 'Output JSON for automation')
|
|
89
|
+
.addHelpText('after', '\nExamples:\n $ argus net show 42 app\n $ argus net show 90829.507 extension --json\n')
|
|
90
|
+
.action(async (request, id, options) => {
|
|
91
|
+
await runNetShow(id, request, resolveCommandOptions(options));
|
|
92
|
+
});
|
|
93
|
+
net.command('body')
|
|
94
|
+
.argument('<request>', 'Argus request id or raw CDP requestId')
|
|
95
|
+
.argument('[id]', 'Watcher id to query')
|
|
96
|
+
.description('Print one buffered request or response body')
|
|
97
|
+
.option('--request', 'Return the request body instead of the response body')
|
|
98
|
+
.option('--json', 'Output JSON metadata for automation')
|
|
99
|
+
.addHelpText('after', '\nExamples:\n $ argus net body 42 app\n $ argus net body 42 app --request\n $ argus net body 90829.507 extension --json\n')
|
|
100
|
+
.action(async (request, id, options) => {
|
|
101
|
+
await runNetBody(id, request, resolveCommandOptions(options));
|
|
102
|
+
});
|
|
103
|
+
const inspect = net
|
|
104
|
+
.command('inspect')
|
|
105
|
+
.argument('<pattern>', 'Substring match over redacted URLs; newest match wins')
|
|
106
|
+
.argument('[id]', 'Watcher id to inspect')
|
|
107
|
+
.description('Clear/reload, wait for network quiet, then inspect the newest matching request')
|
|
108
|
+
.option('--reload', 'Reload the attached page before inspecting (default)')
|
|
109
|
+
.option('--ignore-cache', 'Bypass browser cache during reload')
|
|
110
|
+
.option('--max-timeout <duration>', 'Stop after this total capture duration even if the page stays chatty')
|
|
111
|
+
.option('--no-clear', 'Keep the existing buffer instead of starting fresh')
|
|
112
|
+
.option('--request', 'Include the request body')
|
|
113
|
+
.option('--response', 'Include the response body');
|
|
114
|
+
applyNetSettleOptions(inspect, 'Quiet window before finishing capture');
|
|
115
|
+
applyNetFilterOptions(inspect, { includeSince: false, includeGrep: false });
|
|
116
|
+
inspect
|
|
117
|
+
.option('--json', 'Output JSON metadata for automation')
|
|
118
|
+
.addHelpText('after', '\nExamples:\n $ argus net inspect game/init extension --reload\n $ argus net inspect game/init extension --reload --request --response\n $ argus net inspect /api/post app --settle-after "window.appReady" --settle 400ms --json\n')
|
|
119
|
+
.action(async (pattern, id, options) => {
|
|
120
|
+
await runNetInspect(id, pattern, resolveCommandOptions(options));
|
|
121
|
+
});
|
|
122
|
+
const summary = net.command('summary').argument('[id]', 'Watcher id to summarize').description('Summarize buffered network requests');
|
|
123
|
+
applyNetFilterOptions(summary, { includeSince: true });
|
|
124
|
+
summary
|
|
125
|
+
.option('--json', 'Output JSON for automation')
|
|
126
|
+
.addHelpText('after', '\nExamples:\n $ argus net summary app\n $ argus net summary app --ignore-host mc.yandex.ru\n $ argus net summary app --json\n')
|
|
127
|
+
.action(async (id, options) => {
|
|
128
|
+
await runNetSummary(id, resolveCommandOptions(options));
|
|
129
|
+
});
|
|
130
|
+
const ws = net.command('ws').argument('[id]', 'Watcher id to query').description('List WebSocket connections captured by a watcher');
|
|
131
|
+
ws.option('--after <id>', 'Only return connections after this id').option('--limit <count>', 'Maximum number of connections');
|
|
132
|
+
applyNetFilterOptions(ws, { includeSince: true });
|
|
133
|
+
ws.option('--json', 'Output JSON for automation')
|
|
134
|
+
.addHelpText('after', '\nExamples:\n $ argus net ws app\n $ argus net ws app --grep socket\n $ argus net ws app --json\n $ argus net ws show 1 app\n')
|
|
135
|
+
.action(async (id, options) => {
|
|
136
|
+
await runNetWebSocket(id, resolveCommandOptions(options));
|
|
137
|
+
});
|
|
138
|
+
ws.command('show')
|
|
139
|
+
.argument('<connection>', 'Argus WebSocket connection id or raw CDP requestId')
|
|
140
|
+
.argument('[id]', 'Watcher id to query')
|
|
141
|
+
.description('Show detailed information for one WebSocket connection')
|
|
142
|
+
.option('--json', 'Output JSON for automation')
|
|
143
|
+
.addHelpText('after', '\nExamples:\n $ argus net ws show 1 app\n $ argus net ws show 90829.42 app --json\n')
|
|
144
|
+
.action(async (connection, id, options) => {
|
|
145
|
+
await runNetWebSocketShow(id, connection, resolveCommandOptions(options));
|
|
146
|
+
});
|
|
147
|
+
const sse = net.command('sse').argument('[id]', 'Watcher id to query').description('List SSE/EventSource streams captured by a watcher');
|
|
148
|
+
sse.option('--after <id>', 'Only return streams after this id').option('--limit <count>', 'Maximum number of streams');
|
|
149
|
+
applyNetFilterOptions(sse, { includeSince: true });
|
|
150
|
+
sse.option('--json', 'Output JSON for automation')
|
|
151
|
+
.addHelpText('after', '\nExamples:\n $ argus net sse app\n $ argus net sse app --mime text/event-stream\n $ argus net sse app --json\n')
|
|
28
152
|
.action(async (id, options) => {
|
|
29
|
-
await
|
|
153
|
+
await runNetSse(id, resolveCommandOptions(options));
|
|
30
154
|
});
|
|
31
155
|
}
|
|
156
|
+
const applyNetFilterOptions = (command, options = {}) => {
|
|
157
|
+
if (options.includeSince) {
|
|
158
|
+
command.option('--since <duration>', 'Filter by time window (e.g. 10m, 2h, 30s)');
|
|
159
|
+
}
|
|
160
|
+
if (options.includeGrep !== false) {
|
|
161
|
+
command.option('--grep <substring>', 'Substring match over redacted URLs');
|
|
162
|
+
}
|
|
163
|
+
command.option('--host <host>', 'Only include requests to host (repeatable)', collectValues, []);
|
|
164
|
+
command.option('--method <method>', 'Only include HTTP method (repeatable)', collectValues, []);
|
|
165
|
+
command.option('--status <status>', 'Only include HTTP status or class like 2xx (repeatable)', collectValues, []);
|
|
166
|
+
command.option('--resource-type <type>', 'Only include resource type (repeatable)', collectValues, []);
|
|
167
|
+
command.option('--mime <mime>', 'Only include MIME type prefix (repeatable)', collectValues, []);
|
|
168
|
+
command.option('--scope <scope>', 'Scope requests to selected target, page, or whole tab');
|
|
169
|
+
command.option('--frame <id>', 'Only include a frame id, or the special values selected/page');
|
|
170
|
+
command.option('--first-party', 'Only include first-party requests');
|
|
171
|
+
command.option('--third-party', 'Only include third-party requests');
|
|
172
|
+
command.option('--failed-only', 'Only include failed requests');
|
|
173
|
+
command.option('--slow-over <duration>', 'Only include requests slower than this threshold');
|
|
174
|
+
command.option('--large-over <size>', 'Only include requests larger than this threshold (for example 100kb, 2mb)');
|
|
175
|
+
command.option('--ignore-host <host>', 'Ignore requests to host (repeatable)', collectValues, []);
|
|
176
|
+
command.option('--ignore-pattern <substring>', 'Ignore requests whose URL contains substring (repeatable)', collectValues, []);
|
|
177
|
+
};
|
|
178
|
+
const applyNetSettleOptions = (command, description) => {
|
|
179
|
+
command.option('--settle <duration>', `${description} (e.g. 3s, 500ms)`);
|
|
180
|
+
command.option('--settle-after <expression>', 'Wait for this JS expression to become truthy before the quiet window can start');
|
|
181
|
+
command.option('--settle-after-interval <duration>', 'Polling interval for --settle-after (default: 250ms)');
|
|
182
|
+
};
|
|
183
|
+
const resolveCommandOptions = (value) => {
|
|
184
|
+
const fallback = parseNetArgv(process.argv.slice(2));
|
|
185
|
+
if (value && typeof value === 'object' && 'opts' in value && typeof value.opts === 'function') {
|
|
186
|
+
return {
|
|
187
|
+
...value.opts(),
|
|
188
|
+
...fallback,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
return {
|
|
192
|
+
...(value && typeof value === 'object' ? value : {}),
|
|
193
|
+
...fallback,
|
|
194
|
+
};
|
|
195
|
+
};
|
|
196
|
+
const parseNetArgv = (argv) => {
|
|
197
|
+
const parsed = {};
|
|
198
|
+
const readValue = (flag) => {
|
|
199
|
+
const index = argv.lastIndexOf(flag);
|
|
200
|
+
const value = index >= 0 ? argv[index + 1] : undefined;
|
|
201
|
+
return value && !value.startsWith('--') ? value : undefined;
|
|
202
|
+
};
|
|
203
|
+
const readValues = (flag) => {
|
|
204
|
+
const values = [];
|
|
205
|
+
for (let index = 0; index < argv.length; index++) {
|
|
206
|
+
if (argv[index] === flag) {
|
|
207
|
+
const value = argv[index + 1];
|
|
208
|
+
if (value && !value.startsWith('--')) {
|
|
209
|
+
values.push(value);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
return values;
|
|
214
|
+
};
|
|
215
|
+
if (argv.includes('--json')) {
|
|
216
|
+
parsed.json = true;
|
|
217
|
+
}
|
|
218
|
+
if (argv.includes('--reload')) {
|
|
219
|
+
parsed.reload = true;
|
|
220
|
+
}
|
|
221
|
+
if (argv.includes('--ignore-cache')) {
|
|
222
|
+
parsed.ignoreCache = true;
|
|
223
|
+
}
|
|
224
|
+
if (argv.includes('--no-clear')) {
|
|
225
|
+
parsed.clear = false;
|
|
226
|
+
}
|
|
227
|
+
if (argv.includes('--first-party')) {
|
|
228
|
+
parsed.firstParty = true;
|
|
229
|
+
}
|
|
230
|
+
if (argv.includes('--third-party')) {
|
|
231
|
+
parsed.thirdParty = true;
|
|
232
|
+
}
|
|
233
|
+
if (argv.includes('--failed-only')) {
|
|
234
|
+
parsed.failedOnly = true;
|
|
235
|
+
}
|
|
236
|
+
if (argv.includes('--request')) {
|
|
237
|
+
parsed.request = true;
|
|
238
|
+
}
|
|
239
|
+
if (argv.includes('--response')) {
|
|
240
|
+
parsed.response = true;
|
|
241
|
+
}
|
|
242
|
+
for (const flag of [
|
|
243
|
+
'--after',
|
|
244
|
+
'--limit',
|
|
245
|
+
'--timeout',
|
|
246
|
+
'--since',
|
|
247
|
+
'--grep',
|
|
248
|
+
'--settle',
|
|
249
|
+
'--settle-after',
|
|
250
|
+
'--settle-after-interval',
|
|
251
|
+
'--max-timeout',
|
|
252
|
+
'--scope',
|
|
253
|
+
'--frame',
|
|
254
|
+
'--slow-over',
|
|
255
|
+
'--large-over',
|
|
256
|
+
'--format',
|
|
257
|
+
'--out',
|
|
258
|
+
]) {
|
|
259
|
+
const value = readValue(flag);
|
|
260
|
+
if (value) {
|
|
261
|
+
parsed[toCamelCase(flag)] = value;
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
for (const [flag, key] of [
|
|
265
|
+
['--host', 'host'],
|
|
266
|
+
['--method', 'method'],
|
|
267
|
+
['--status', 'status'],
|
|
268
|
+
['--resource-type', 'resourceType'],
|
|
269
|
+
['--mime', 'mime'],
|
|
270
|
+
]) {
|
|
271
|
+
const values = readValues(flag);
|
|
272
|
+
if (values.length > 0) {
|
|
273
|
+
parsed[key] = values;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
const ignoreHost = readValues('--ignore-host');
|
|
277
|
+
if (ignoreHost.length > 0) {
|
|
278
|
+
parsed.ignoreHost = ignoreHost;
|
|
279
|
+
}
|
|
280
|
+
const ignorePattern = readValues('--ignore-pattern');
|
|
281
|
+
if (ignorePattern.length > 0) {
|
|
282
|
+
parsed.ignorePattern = ignorePattern;
|
|
283
|
+
}
|
|
284
|
+
return parsed;
|
|
285
|
+
};
|
|
286
|
+
const toCamelCase = (flag) => flag.replace(/^--/, '').replace(/-([a-z])/g, (_match, char) => char.toUpperCase());
|
|
32
287
|
//# sourceMappingURL=registerNet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerNet.js","sourceRoot":"","sources":["../../../src/cli/register/registerNet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAEtD,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC3C,MAAM,GAAG,GAAG,OAAO;SACjB,OAAO,CAAC,KAAK,CAAC;SACd,KAAK,CAAC,SAAS,CAAC;SAChB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;SACvC,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,cAAc,EAAE,oCAAoC,CAAC;SAC5D,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;SACvD,MAAM,CAAC,oBAAoB,EAAE,2CAA2C,CAAC;SACzE,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;SAClE,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CAAC,OAAO,EAAE,qGAAqG,CAAC;SAC3H,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC1B,CAAC,CAAC,CAAA;IAEH,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;SACjB,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;SACxC,WAAW,CAAC,iDAAiD,CAAC;SAC9D,MAAM,CAAC,cAAc,EAAE,6BAA6B,CAAC;SACrD,MAAM,CAAC,iBAAiB,EAAE,qCAAqC,CAAC;SAChE,MAAM,CAAC,gBAAgB,EAAE,mCAAmC,CAAC;SAC7D,MAAM,CAAC,oBAAoB,EAAE,2CAA2C,CAAC;SACzE,MAAM,CAAC,oBAAoB,EAAE,oCAAoC,CAAC;SAClE,MAAM,CAAC,QAAQ,EAAE,wCAAwC,CAAC;SAC1D,WAAW,CAAC,OAAO,EAAE,yGAAyG,CAAC;SAC/H,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;QAC7B,MAAM,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"registerNet.js","sourceRoot":"","sources":["../../../src/cli/register/registerNet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerPage.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"registerPage.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerPage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQxC,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgJnD"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { runChromeTargets, runChromeOpen, runChromeActivate, runChromeClose } from '../../commands/chrome.js';
|
|
2
2
|
import { runPageReload } from '../../commands/page.js';
|
|
3
3
|
import { runPageEmulationSet, runPageEmulationClear, runPageEmulationStatus } from '../../commands/pageEmulation.js';
|
|
4
|
+
import { runPageShow, runPageHide } from '../../commands/pageVisibility.js';
|
|
4
5
|
import { listPresetNames } from '../../emulation/devices.js';
|
|
5
6
|
import { collectParam } from '../validation.js';
|
|
6
7
|
export function registerPage(program) {
|
|
@@ -51,6 +52,22 @@ export function registerPage(program) {
|
|
|
51
52
|
.action(async (targetId, options) => {
|
|
52
53
|
await runChromeClose({ ...options, targetId });
|
|
53
54
|
});
|
|
55
|
+
page.command('show')
|
|
56
|
+
.description('Lock the attached page as shown+focused (unthrottles rAF/timers when window is covered)')
|
|
57
|
+
.argument('[id]', 'Watcher ID')
|
|
58
|
+
.option('--json', 'Output JSON for automation')
|
|
59
|
+
.addHelpText('after', '\nExamples:\n $ argus page show app\n $ argus page show app --json\n\nForces focus emulation on the attached page so boot/preview flows keep\nmaking progress even if the Chrome window is backgrounded or covered.\nLock persists until `argus page hide <id>`; survives watcher reattach.\n')
|
|
60
|
+
.action(async (id, options) => {
|
|
61
|
+
await runPageShow(id, options);
|
|
62
|
+
});
|
|
63
|
+
page.command('hide')
|
|
64
|
+
.description('Release the visibility lock (restore default Chrome throttling behavior)')
|
|
65
|
+
.argument('[id]', 'Watcher ID')
|
|
66
|
+
.option('--json', 'Output JSON for automation')
|
|
67
|
+
.addHelpText('after', '\nExamples:\n $ argus page hide app\n $ argus page hide app --json\n')
|
|
68
|
+
.action(async (id, options) => {
|
|
69
|
+
await runPageHide(id, options);
|
|
70
|
+
});
|
|
54
71
|
page.command('reload')
|
|
55
72
|
.description('Reload a Chrome target')
|
|
56
73
|
.argument('[targetId]', 'Target ID to reload (omit with --id to reload the attached page)')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerPage.js","sourceRoot":"","sources":["../../../src/cli/register/registerPage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registerPage.js","sourceRoot":"","sources":["../../../src/cli/register/registerPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerQuickAccess.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerQuickAccess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYxC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"registerQuickAccess.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerQuickAccess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAYxC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAyF1D"}
|
|
@@ -19,6 +19,7 @@ export function registerQuickAccess(program) {
|
|
|
19
19
|
.description('Launch Chrome and attach a watcher in one command')
|
|
20
20
|
.requiredOption('--id <watcherId>', 'Watcher id')
|
|
21
21
|
.option('--url <url>', 'URL to open in Chrome and match for the watcher')
|
|
22
|
+
.option('--auth-from <watcherId>', 'Clone auth state from another watcher into a fresh temp Chrome session before attaching')
|
|
22
23
|
.option('--profile <type>', 'Chrome profile mode: temp, default-full, default-medium, or default-lite (default: default-lite)')
|
|
23
24
|
.option('--dev-tools', 'Open DevTools for new tabs')
|
|
24
25
|
.option('--headless', 'Run Chrome in headless mode')
|
|
@@ -31,19 +32,22 @@ export function registerQuickAccess(program) {
|
|
|
31
32
|
.option('--artifacts <dir>', 'Artifacts base directory')
|
|
32
33
|
.option('--config <path>', 'Path to Argus config file')
|
|
33
34
|
.option('--json', 'Output JSON for automation')
|
|
34
|
-
.addHelpText('after', '\nExamples:\n $ argus start --id app --url localhost:3000\n $ argus start --id app --url localhost:3000 --dev-tools\n $ argus start --id app --url localhost:3000 --profile temp\n $ argus start --id app --type page --headless\n $ argus start --id app --url localhost:3000 --inject ./debug.js\n $ argus start --id app --url localhost:3000 --json\n')
|
|
35
|
+
.addHelpText('after', '\nExamples:\n $ argus start --id app --url localhost:3000\n $ argus start --id app --auth-from extension-2\n $ argus start --id app --auth-from extension-2 --url https://target.app/\n $ argus start --id app --url localhost:3000 --dev-tools\n $ argus start --id app --url localhost:3000 --profile temp\n $ argus start --id app --type page --headless\n $ argus start --id app --url localhost:3000 --inject ./debug.js\n $ argus start --id app --url localhost:3000 --json\n')
|
|
35
36
|
.action(async (options, command) => {
|
|
36
37
|
const { config: configPath, inject, ...rest } = options;
|
|
37
38
|
const cliOptions = {
|
|
38
39
|
...rest,
|
|
39
40
|
inject: inject ? { file: inject } : undefined,
|
|
40
41
|
};
|
|
42
|
+
if (!normalizeStartAuthOptions(command, cliOptions)) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
41
45
|
const resolvedPath = resolveArgusConfigPath({ cliPath: configPath, cwd: process.cwd() });
|
|
42
46
|
if (!resolvedPath) {
|
|
43
47
|
if (configPath) {
|
|
44
48
|
return;
|
|
45
49
|
}
|
|
46
|
-
await runStart(cliOptions);
|
|
50
|
+
await runStart(applyStartAuthOverrides(command, cliOptions));
|
|
47
51
|
return;
|
|
48
52
|
}
|
|
49
53
|
const configResult = loadArgusConfig(resolvedPath);
|
|
@@ -58,7 +62,7 @@ export function registerQuickAccess(program) {
|
|
|
58
62
|
if (!mergedWatcher) {
|
|
59
63
|
return;
|
|
60
64
|
}
|
|
61
|
-
await runStart(mergedWatcher);
|
|
65
|
+
await runStart(applyStartAuthOverrides(command, mergedWatcher));
|
|
62
66
|
});
|
|
63
67
|
program
|
|
64
68
|
.command('doctor')
|
|
@@ -79,4 +83,30 @@ export function registerQuickAccess(program) {
|
|
|
79
83
|
await runReload(id, options);
|
|
80
84
|
});
|
|
81
85
|
}
|
|
86
|
+
const normalizeStartAuthOptions = (command, options) => {
|
|
87
|
+
if (!options.authFrom) {
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
if (getOptionValueSource(command, 'profile') === 'cli') {
|
|
91
|
+
if (options.profile && options.profile !== 'temp') {
|
|
92
|
+
console.error('Cannot combine --auth-from with a copied Chrome profile. Use --profile temp or omit --profile.');
|
|
93
|
+
process.exitCode = 2;
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
return true;
|
|
97
|
+
}
|
|
98
|
+
options.profile = undefined;
|
|
99
|
+
return true;
|
|
100
|
+
};
|
|
101
|
+
const applyStartAuthOverrides = (command, options) => {
|
|
102
|
+
if (!options.authFrom) {
|
|
103
|
+
return options;
|
|
104
|
+
}
|
|
105
|
+
options.profile = 'temp';
|
|
106
|
+
if (getOptionValueSource(command, 'url') !== 'cli') {
|
|
107
|
+
options.url = undefined;
|
|
108
|
+
}
|
|
109
|
+
return options;
|
|
110
|
+
};
|
|
111
|
+
const getOptionValueSource = (command, key) => command.getOptionValueSource(key) ?? '';
|
|
82
112
|
//# sourceMappingURL=registerQuickAccess.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerQuickAccess.js","sourceRoot":"","sources":["../../../src/cli/register/registerQuickAccess.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EACN,eAAe,EACf,iCAAiC,EACjC,kCAAkC,EAClC,sBAAsB,GACtB,MAAM,6BAA6B,CAAA;AAEpC,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IACnD,OAAO;SACL,OAAO,CAAC,MAAM,CAAC;SACf,KAAK,CAAC,IAAI,CAAC;SACX,WAAW,CAAC,oCAAoC,CAAC;SACjD,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,MAAM,CAAC,sBAAsB,EAAE,gDAAgD,CAAC;SAChF,WAAW,CAAC,OAAO,EAAE,wGAAwG,CAAC;SAC9H,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACzB,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;IAEH,OAAO;SACL,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,mDAAmD,CAAC;SAChE,cAAc,CAAC,kBAAkB,EAAE,YAAY,CAAC;SAChD,MAAM,CAAC,aAAa,EAAE,iDAAiD,CAAC;SACxE,MAAM,CAAC,kBAAkB,EAAE,kGAAkG,CAAC;SAC9H,MAAM,CAAC,aAAa,EAAE,4BAA4B,CAAC;SACnD,MAAM,CAAC,YAAY,EAAE,6BAA6B,CAAC;SACnD,MAAM,CAAC,eAAe,EAAE,oDAAoD,CAAC;SAC7E,MAAM,CAAC,mBAAmB,EAAE,wDAAwD,CAAC;SACrF,MAAM,CAAC,qBAAqB,EAAE,sDAAsD,CAAC;SACrF,MAAM,CAAC,oBAAoB,EAAE,qCAAqC,CAAC;SACnE,MAAM,CAAC,qBAAqB,EAAE,uCAAuC,CAAC;SACtE,MAAM,CAAC,iBAAiB,EAAE,qDAAqD,CAAC;SAChF,MAAM,CAAC,mBAAmB,EAAE,0BAA0B,CAAC;SACvD,MAAM,CAAC,iBAAiB,EAAE,2BAA2B,CAAC;SACtD,MAAM,CAAC,QAAQ,EAAE,4BAA4B,CAAC;SAC9C,WAAW,CACX,OAAO,EACP,
|
|
1
|
+
{"version":3,"file":"registerQuickAccess.js","sourceRoot":"","sources":["../../../src/cli/register/registerQuickAccess.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerSnapshot.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"registerSnapshot.d.ts","sourceRoot":"","sources":["../../../src/cli/register/registerSnapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKxC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsCvD"}
|
|
@@ -8,9 +8,10 @@ export function registerSnapshot(program) {
|
|
|
8
8
|
.description('Capture a screenshot to disk on the watcher')
|
|
9
9
|
.option('--out <file>', 'Output file path (absolute or relative to artifacts directory)')
|
|
10
10
|
.option('--selector <selector>', 'Optional CSS selector for element-only capture')
|
|
11
|
+
.option('--clip <x,y,width,height>', 'Viewport-relative rectangle crop in CSS pixels')
|
|
11
12
|
.option('--testid <id>', 'Shorthand for --selector "[data-testid=\'<id>\']"')
|
|
12
13
|
.option('--json', 'Output JSON for automation')
|
|
13
|
-
.addHelpText('after', '\nExamples:\n $ argus screenshot app\n $ argus screenshot app --out /tmp/screenshot.png\n $ argus screenshot app --selector "body"\n')
|
|
14
|
+
.addHelpText('after', '\nExamples:\n $ argus screenshot app\n $ argus screenshot app --out /tmp/screenshot.png\n $ argus screenshot app --selector "body"\n $ argus screenshot app --clip 100,80,640,360\n')
|
|
14
15
|
.action(async (id, options) => {
|
|
15
16
|
if (!resolveTestId(options))
|
|
16
17
|
return;
|