@petukhovart/agent-view 0.15.0 → 0.17.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/.claude-plugin/plugin.json +1 -1
- package/README.md +34 -11
- package/dist/cdp/png.d.ts +15 -0
- package/dist/cdp/png.d.ts.map +1 -0
- package/dist/cdp/png.js +147 -0
- package/dist/cdp/png.js.map +1 -0
- package/dist/cdp/transport.d.ts +2 -0
- package/dist/cdp/transport.d.ts.map +1 -1
- package/dist/cdp/transport.js +233 -50
- package/dist/cdp/transport.js.map +1 -1
- package/dist/cdp/types.d.ts +72 -6
- package/dist/cdp/types.d.ts.map +1 -1
- package/dist/cdp/types.js.map +1 -1
- package/dist/cli/client.d.ts.map +1 -1
- package/dist/cli/client.js +1 -3
- package/dist/cli/client.js.map +1 -1
- package/dist/cli/commands/act.d.ts +3 -0
- package/dist/cli/commands/act.d.ts.map +1 -0
- package/dist/cli/commands/act.js +19 -0
- package/dist/cli/commands/act.js.map +1 -0
- package/dist/cli/commands/click.d.ts +2 -0
- package/dist/cli/commands/click.d.ts.map +1 -1
- package/dist/cli/commands/click.js +9 -4
- package/dist/cli/commands/click.js.map +1 -1
- package/dist/cli/commands/dom.d.ts.map +1 -1
- package/dist/cli/commands/dom.js +1 -0
- package/dist/cli/commands/dom.js.map +1 -1
- package/dist/cli/commands/drag.d.ts +4 -0
- package/dist/cli/commands/drag.d.ts.map +1 -1
- package/dist/cli/commands/drag.js +18 -0
- package/dist/cli/commands/drag.js.map +1 -1
- package/dist/cli/commands/fill.d.ts +2 -0
- package/dist/cli/commands/fill.d.ts.map +1 -1
- package/dist/cli/commands/fill.js +11 -4
- package/dist/cli/commands/fill.js.map +1 -1
- package/dist/cli/commands/screenshot.d.ts +2 -0
- package/dist/cli/commands/screenshot.d.ts.map +1 -1
- package/dist/cli/commands/screenshot.js +10 -1
- package/dist/cli/commands/screenshot.js.map +1 -1
- package/dist/cli/commands/wait.d.ts +3 -1
- package/dist/cli/commands/wait.d.ts.map +1 -1
- package/dist/cli/commands/wait.js +6 -2
- package/dist/cli/commands/wait.js.map +1 -1
- package/dist/cli/commands/watch.js +1 -1
- package/dist/cli/commands/watch.js.map +1 -1
- package/dist/cli/index.js +51 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/config/manager.d.ts.map +1 -1
- package/dist/config/manager.js +4 -0
- package/dist/config/manager.js.map +1 -1
- package/dist/config/types.d.ts +5 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/inspectors/controls/index.d.ts +39 -0
- package/dist/inspectors/controls/index.d.ts.map +1 -0
- package/dist/inspectors/controls/index.js +140 -0
- package/dist/inspectors/controls/index.js.map +1 -0
- package/dist/inspectors/dom/index.d.ts +2 -0
- package/dist/inspectors/dom/index.d.ts.map +1 -1
- package/dist/inspectors/dom/index.js +21 -14
- package/dist/inspectors/dom/index.js.map +1 -1
- package/dist/server/act-replay.d.ts +23 -0
- package/dist/server/act-replay.d.ts.map +1 -0
- package/dist/server/act-replay.js +143 -0
- package/dist/server/act-replay.js.map +1 -0
- package/dist/server/act-script.d.ts +46 -0
- package/dist/server/act-script.d.ts.map +1 -0
- package/dist/server/act-script.js +46 -0
- package/dist/server/act-script.js.map +1 -0
- package/dist/server/act-session.d.ts +23 -0
- package/dist/server/act-session.d.ts.map +1 -0
- package/dist/server/act-session.js +304 -0
- package/dist/server/act-session.js.map +1 -0
- package/dist/server/locator.d.ts +19 -0
- package/dist/server/locator.d.ts.map +1 -0
- package/dist/server/locator.js +33 -0
- package/dist/server/locator.js.map +1 -0
- package/dist/server/port.d.ts +7 -0
- package/dist/server/port.d.ts.map +1 -0
- package/dist/server/port.js +19 -0
- package/dist/server/port.js.map +1 -0
- package/dist/server/server.d.ts +1 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +89 -25
- package/dist/server/server.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/skills/verify/SKILL.md +12 -20
- package/skills/verify/references/commands.md +127 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/inspectors/dom/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/inspectors/dom/index.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,GAAG,cAAc,CAAA;AAElC,SAAS,YAAY,CAAC,IAAY;IAChC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,IAAY;IACpD,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,YAAY,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAA;IAElE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAElC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC5C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAC9B,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAC9B,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;;YACxB,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACjC,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;IAC7C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAC9B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;;YACxB,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACjC,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;QAC/B,IAAI,KAAK,IAAI,CAAC;YAAE,SAAQ;QACxB,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,OAAO,GAAG,KAAK,GAAG,SAAS,CAAA;QACjC,IAAI,OAAO,IAAI,CAAC;YAAE,SAAQ;QAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAA;QACvC,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;AAC/D,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAA;AACpD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;AACxE,MAAM,cAAc,GAAG,GAAG,CAAA;AAS1B,SAAS,QAAQ,CAAC,IAAY,EAAE,GAAiB;IAC/C,OAAO,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;AAClG,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,GAAiB;IAC5E,OAAO,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,SAAS,CAAA;AACtF,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,UAAmB,EAAE,GAAiB;IACnG,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAC1E,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAClC,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,MAAM,GAAG,EAAE,CAAA;AAChF,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,OAA4B,EAAE,UAAU,GAAG,CAAC;IACzF,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAA;IAChD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK;YAAE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAA;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;QAClE,IAAI,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;QACvF,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,GAAG,CAAC,CAAC,CAAA;QACtE,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;IAC3B,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,OAA4B,EAAE,UAAU,GAAG,EAAE;IACpF,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,SAAS,OAAO,CAAC,CAAS,EAAE,KAAa;QACvC,IAAI,KAAK,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,QAAQ;YAAE,OAAM;QAC7C,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAClC,IAAI,CAAC,KAAK;gBAAE,SAAQ;YACpB,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACnD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;YAClE,IAAI,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC5F,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAChB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAA;AACtC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,OAA4B,EAAE,WAAmB;IAC5F,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAA;IAChC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;QACzC,IAAI,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,SAAQ;QAC9C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAA;QACxD,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,OAAO,IAAI,CAAA;QACjG,IAAI,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;YAAE,OAAO,IAAI,CAAA;IACrE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,GAAiB;IACnF,IAAI,CAAC,GAAG,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IACjC,MAAM,EAAE,GAAG,GAAG,CAAC,WAAW,CAAA;IAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACnD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACnD,MAAM,kBAAkB,GAAG,CAAC,WAAW,IAAI,CAAC,WAAW;QACrD,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvD,CAAC,CAAC,KAAK,CAAA;IACT,OAAO,WAAW,IAAI,WAAW,IAAI,kBAAkB,IAAI,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AACzG,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAc,EACd,MAAc,EACd,GAAiB,EACjB,OAAkF;IAElF,IAAI,MAAM,GAAG,cAAc;QAAE,OAAM;IACnC,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ;QAAE,OAAM;IAE/D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACpC,IAAI,CAAC,IAAI;QAAE,OAAM;IAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;IACtC,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/E,MAAM,IAAI,GAAG,OAAO,IAAI,YAAY,CAAA;IAEpC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAM;IAEvC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAE7C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACzD,CAAC;aAAM,CAAC;YACN,OAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,GAAiB;IACxD,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;IACvB,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAA;IAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAClC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;QACzC,IAAI,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAA;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;QACzC,MAAM,QAAQ,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC1E,MAAM,YAAY,GAAG,SAAS,IAAI,QAAQ,CAAA;QAC1C,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAe,EACf,UAA8B,EAAE;IAEhC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,GAAG,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IACtE,MAAM,IAAI,GAAe,EAAE,CAAA;IAC3B,IAAI,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAA;IACnC,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAA;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAA;IACnC,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;IAE9D,MAAM,GAAG,GAAiB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;IAE7G,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,gBAAgB,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;YACtE,MAAM,GAAG,GAAG,OAAO,EAAE,CAAA;YACrB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAA;YAC7D,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACnC,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,CAAA;QAC1G,CAAC,CAAC,CAAA;IACJ,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE;YACrC,QAAQ,EAAE,CAAC,gBAAgB,EAAE,EAAE;gBAC7B,MAAM,GAAG,GAAG,OAAO,EAAE,CAAA;gBACrB,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;oBACnC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC,CAAA;gBACtC,CAAC;gBACD,OAAO,GAAG,CAAA;YACZ,CAAC;YACD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;SACrC,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ;QACpE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,aAAa,CAAC;QACpF,CAAC,CAAC,KAAK,CAAA;IAET,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,wBAAwB;QACzD,IAAI;QACJ,OAAO;KACR,CAAA;AACH,CAAC;AAOD,SAAS,WAAW,CAClB,MAAc,EACd,MAAc,EACd,KAAe,EACf,WAAmB,EACnB,GAAiB,EACjB,IAAiB;IAEjB,IAAI,MAAM,GAAG,cAAc;QAAE,OAAM;IACnC,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,GAAG,GAAG,CAAC,QAAQ;QAAE,OAAM;IAE/D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACpC,IAAI,CAAC,IAAI;QAAE,OAAM;IAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAA;IACtC,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/E,MAAM,IAAI,GAAG,OAAO,IAAI,YAAY,CAAA;IAEpC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAM;IAEvC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAE7C,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;YAC7D,CAAC;QACH,CAAC;QACD,OAAM;IACR,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC;QAAE,OAAM;IAEpD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAChD,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,KAAK,CAAC,CAAA;IAE9C,IAAI,aAAa,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;QACnE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QACjF,OAAM;IACR,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,YAAY,CAAA;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACxC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IACrE,IAAI,CAAC,QAAQ,CAAC,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,CAAA;IAEvG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAe,EACf,UAAwD,EAAE;IAE1D,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAA;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAA;IACnC,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;IAEpC,MAAM,GAAG,GAAiB,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,CAAA;IAC1G,IAAI,KAAK,GAAG,CAAC,CAAA;IAEb,gBAAgB,CAAC,UAAU,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;IAEvD,OAAO,EAAE,KAAK,EAAE,CAAA;AAClB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PageSession } from '../cdp/types.js';
|
|
2
|
+
import type { ServerResponse } from '../types.js';
|
|
3
|
+
/** What an act run needs from the server. */
|
|
4
|
+
export type ActDeps = {
|
|
5
|
+
/** Replaced by `reconnect` when the window reloads under a step. */
|
|
6
|
+
conn: PageSession;
|
|
7
|
+
invalidateAxCache: () => void;
|
|
8
|
+
/** Fresh session after the window reloaded under us. */
|
|
9
|
+
reconnect: () => Promise<PageSession>;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* A saved `act` run, executed with no model and no settle: each step waits only until
|
|
13
|
+
* its own target is on screen, enabled and uncovered, then acts. First line of the
|
|
14
|
+
* result: `DONE` (until met), `FAIL` (the app did not answer: until never came, or a
|
|
15
|
+
* control stayed disabled or covered — a bug) or `STALE` (a step's control is gone —
|
|
16
|
+
* the script no longer fits the app).
|
|
17
|
+
*/
|
|
18
|
+
export declare function replay({ name, secret, testIdAttribute }: {
|
|
19
|
+
name: string;
|
|
20
|
+
secret?: string;
|
|
21
|
+
testIdAttribute?: string;
|
|
22
|
+
}, deps: ActDeps): Promise<ServerResponse>;
|
|
23
|
+
//# sourceMappingURL=act-replay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"act-replay.d.ts","sourceRoot":"","sources":["../../src/server/act-replay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAElD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAYjD,6CAA6C;AAC7C,MAAM,MAAM,OAAO,GAAG;IACpB,oEAAoE;IACpE,IAAI,EAAE,WAAW,CAAA;IACjB,iBAAiB,EAAE,MAAM,IAAI,CAAA;IAC7B,wDAAwD;IACxD,SAAS,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAA;CACtC,CAAA;AAED;;;;;;GAMG;AACH,wBAAsB,MAAM,CAC1B,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,EAC9F,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,cAAc,CAAC,CAiHzB"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { isDeadSocket } from '../cdp/transport.js';
|
|
2
|
+
import { extractControls } from '../inspectors/controls/index.js';
|
|
3
|
+
import { findByLocator, locatorFromArgs, testIdAttributes, testIdLocator } from './locator.js';
|
|
4
|
+
import { edgePoint, readScript, viewportBox } from './act-script.js';
|
|
5
|
+
const POLL_MS = 50;
|
|
6
|
+
const STEP_TIMEOUT_MS = 10_000;
|
|
7
|
+
const UNTIL_TIMEOUT_MS = 15_000;
|
|
8
|
+
const EXIT_DONE = 0;
|
|
9
|
+
const EXIT_FAIL = 1;
|
|
10
|
+
const EXIT_STALE = 3;
|
|
11
|
+
/**
|
|
12
|
+
* A saved `act` run, executed with no model and no settle: each step waits only until
|
|
13
|
+
* its own target is on screen, enabled and uncovered, then acts. First line of the
|
|
14
|
+
* result: `DONE` (until met), `FAIL` (the app did not answer: until never came, or a
|
|
15
|
+
* control stayed disabled or covered — a bug) or `STALE` (a step's control is gone —
|
|
16
|
+
* the script no longer fits the app).
|
|
17
|
+
*/
|
|
18
|
+
export async function replay({ name, secret, testIdAttribute }, deps) {
|
|
19
|
+
const script = await readScript(name);
|
|
20
|
+
if (!script)
|
|
21
|
+
return { ok: false, error: `No saved script "${name}" — record one with act start … --save ${name}` };
|
|
22
|
+
if (script.steps.some(s => 'isPassword' in s && s.isPassword) && !secret) {
|
|
23
|
+
return { ok: false, error: `"${name}" types a password — set AGENT_VIEW_SECRET` };
|
|
24
|
+
}
|
|
25
|
+
const until = locatorFromArgs({ ...script.until, testIdAttribute });
|
|
26
|
+
if (!until)
|
|
27
|
+
return { ok: false, error: `"${name}" has no done condition — re-record it with act start --until-testid …` };
|
|
28
|
+
const attributes = testIdAttributes(testIdAttribute);
|
|
29
|
+
const t0 = Date.now();
|
|
30
|
+
const elapsed = () => `${((Date.now() - t0) / 1000).toFixed(1)}s`;
|
|
31
|
+
const verdict = (exitCode, line) => ({ ok: true, data: `${line} · ${elapsed()}`, exitCode });
|
|
32
|
+
/** Polls until `probe` yields a value or time runs out; rides over the window reloading. */
|
|
33
|
+
const poll = async (probe, timeoutMs) => {
|
|
34
|
+
const end = Date.now() + timeoutMs;
|
|
35
|
+
for (;;) {
|
|
36
|
+
try {
|
|
37
|
+
const value = await probe(deps.conn);
|
|
38
|
+
if (value !== undefined)
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
if (!isDeadSocket(err))
|
|
43
|
+
throw err;
|
|
44
|
+
// Between documents the window is not there yet; the next poll tries again.
|
|
45
|
+
deps.conn = await deps.reconnect().catch(() => deps.conn);
|
|
46
|
+
}
|
|
47
|
+
if (Date.now() > end)
|
|
48
|
+
return undefined;
|
|
49
|
+
await new Promise(r => setTimeout(r, POLL_MS));
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
/** The control, or why it is not usable yet: absent, or present but disabled / covered. */
|
|
53
|
+
const find = async (target, { isEnabledRequired }) => {
|
|
54
|
+
let seen;
|
|
55
|
+
const control = await poll(async (c) => {
|
|
56
|
+
deps.invalidateAxCache();
|
|
57
|
+
const [ax, layout] = await Promise.all([c.getAccessibilityTree(), c.getLayoutSnapshot()]);
|
|
58
|
+
const hit = extractControls(ax, layout, attributes).find(ctl => target.testid ? ctl.testid === target.testid : ctl.role === target.role && ctl.name === target.name);
|
|
59
|
+
seen = undefined;
|
|
60
|
+
if (!hit)
|
|
61
|
+
return undefined;
|
|
62
|
+
if (isEnabledRequired && hit.states.includes('disabled')) {
|
|
63
|
+
seen = 'disabled';
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
let covering;
|
|
67
|
+
try {
|
|
68
|
+
covering = await c.hitTest(hit.backendDOMNodeId, attributes);
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
if (isDeadSocket(err))
|
|
72
|
+
throw err;
|
|
73
|
+
return undefined; // detached between the snapshot and the hit test: look again
|
|
74
|
+
}
|
|
75
|
+
if (covering)
|
|
76
|
+
seen = `covered by ${covering}`;
|
|
77
|
+
return covering ? undefined : hit;
|
|
78
|
+
}, STEP_TIMEOUT_MS);
|
|
79
|
+
return { control, seen };
|
|
80
|
+
};
|
|
81
|
+
const findTestId = (testid) => poll(async (c) => {
|
|
82
|
+
const found = await findByLocator(c, testIdLocator(testid, testIdAttribute));
|
|
83
|
+
return 'error' in found ? undefined : found;
|
|
84
|
+
}, STEP_TIMEOUT_MS);
|
|
85
|
+
const describe = (t) => (t.name ? `${t.role} "${t.name}"` : t.role) + (t.testid ? ` testid=${t.testid}` : '');
|
|
86
|
+
for (const [i, step] of script.steps.entries()) {
|
|
87
|
+
const at = `step ${i + 1}/${script.steps.length}`;
|
|
88
|
+
if (step.op === 'scroll') {
|
|
89
|
+
await poll(async (c) => { await c.scrollViewport(step.direction); return true; }, STEP_TIMEOUT_MS);
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
const { control, seen } = await find(step.target, { isEnabledRequired: step.op !== 'drag' });
|
|
93
|
+
if (!control) {
|
|
94
|
+
// Present but unusable is the app misbehaving; absent is the script out of date.
|
|
95
|
+
return seen
|
|
96
|
+
? verdict(EXIT_FAIL, `FAIL: ${at} ${step.op} ${describe(step.target)} — still ${seen} after ${STEP_TIMEOUT_MS / 1000}s`)
|
|
97
|
+
: verdict(EXIT_STALE, `STALE: ${at} ${step.op} ${describe(step.target)} — not on screen within ${STEP_TIMEOUT_MS / 1000}s`);
|
|
98
|
+
}
|
|
99
|
+
try {
|
|
100
|
+
if (step.op !== 'drag') {
|
|
101
|
+
if (step.op === 'click') {
|
|
102
|
+
await deps.conn.clickByNodeId(control.backendDOMNodeId);
|
|
103
|
+
}
|
|
104
|
+
else if (step.op === 'type') {
|
|
105
|
+
await deps.conn.fillByNodeId(control.backendDOMNodeId, step.isPassword ? secret : step.value ?? '');
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
const outcome = await deps.conn.selectOption(control.backendDOMNodeId, step.value ?? '');
|
|
109
|
+
const reason = outcome === 'no-option' ? `no option "${step.value}"` : 'not a native select';
|
|
110
|
+
if (outcome !== 'ok')
|
|
111
|
+
return verdict(EXIT_STALE, `STALE: ${at} select ${describe(step.target)} — ${reason}`);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
const to = step.to;
|
|
116
|
+
const dest = !to ? undefined : 'role' in to ? (await find(to, { isEnabledRequired: false })).control : await findTestId(to.testid);
|
|
117
|
+
if (to && !dest) {
|
|
118
|
+
const label = 'role' in to ? describe(to) : `testid=${to.testid}`;
|
|
119
|
+
return verdict(EXIT_STALE, `STALE: ${at} drag target ${label} not found`);
|
|
120
|
+
}
|
|
121
|
+
const from = await deps.conn.getBoxCenter(control.backendDOMNodeId);
|
|
122
|
+
const box = dest ? await deps.conn.getBoxRect(dest.backendDOMNodeId, { scrollIntoView: false }) : await viewportBox(deps.conn);
|
|
123
|
+
await deps.conn.dragBetweenPositions(from, edgePoint(box, step.edge), { mode: 'pointer' });
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
catch (err) {
|
|
127
|
+
// The window reloaded under the action (login, logout): it went out; the next poll reconnects.
|
|
128
|
+
// Any other failure means the control vanished between finding and acting (a panel
|
|
129
|
+
// that toggled shut): the app is not in the state the script was recorded in.
|
|
130
|
+
if (!isDeadSocket(err)) {
|
|
131
|
+
const reason = err instanceof Error ? err.message : String(err);
|
|
132
|
+
return verdict(EXIT_STALE, `STALE: ${at} ${step.op} ${describe(step.target)} — ${reason}`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// Split the total: our steps vs the app answering them (auth, reload) — only the first is ours to speed up.
|
|
137
|
+
const stepsTime = elapsed();
|
|
138
|
+
const isMet = await poll(async (c) => ('error' in await findByLocator(c, until) ? undefined : true), UNTIL_TIMEOUT_MS);
|
|
139
|
+
return isMet
|
|
140
|
+
? verdict(EXIT_DONE, `DONE: replay ${name} · ${script.steps.length} steps in ${stepsTime}, then ${until.label}`)
|
|
141
|
+
: verdict(EXIT_FAIL, `FAIL: replay ${name} — steps ran, ${until.label} not visible after ${UNTIL_TIMEOUT_MS / 1000}s`);
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=act-replay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"act-replay.js","sourceRoot":"","sources":["../../src/server/act-replay.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,OAAO,EAAE,eAAe,EAAgB,MAAM,iCAAiC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAA;AAErF,MAAM,OAAO,GAAG,EAAE,CAAA;AAClB,MAAM,eAAe,GAAG,MAAM,CAAA;AAC9B,MAAM,gBAAgB,GAAG,MAAM,CAAA;AAC/B,MAAM,SAAS,GAAG,CAAC,CAAA;AACnB,MAAM,SAAS,GAAG,CAAC,CAAA;AACnB,MAAM,UAAU,GAAG,CAAC,CAAA;AAWpB;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAA+D,EAC9F,IAAa;IAEb,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,IAAI,0CAA0C,IAAI,EAAE,EAAE,CAAA;IAClH,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,4CAA4C,EAAE,CAAA;IACnF,CAAC;IACD,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,CAAC,CAAA;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,wEAAwE,EAAE,CAAA;IACzH,MAAM,UAAU,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAA;IAEpD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACrB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAA;IACjE,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,IAAY,EAAkB,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,MAAM,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC5H,4FAA4F;IAC5F,MAAM,IAAI,GAAG,KAAK,EAAK,KAAiD,EAAE,SAAiB,EAA0B,EAAE;QACrH,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;QAClC,SAAS,CAAC;YACR,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACpC,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,KAAK,CAAA;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;oBAAE,MAAM,GAAG,CAAA;gBACjC,4EAA4E;gBAC5E,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC3D,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG;gBAAE,OAAO,SAAS,CAAA;YACtC,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;QAChD,CAAC;IACH,CAAC,CAAA;IACD,2FAA2F;IAC3F,MAAM,IAAI,GAAG,KAAK,EAAE,MAAkB,EAAE,EAAE,iBAAiB,EAAkC,EAAE,EAAE;QAC/F,IAAI,IAAwB,CAAA;QAC5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,EAAgC,EAAE;YACnE,IAAI,CAAC,iBAAiB,EAAE,CAAA;YACxB,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAA;YACzF,MAAM,GAAG,GAAG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAC7D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAA;YACtG,IAAI,GAAG,SAAS,CAAA;YAChB,IAAI,CAAC,GAAG;gBAAE,OAAO,SAAS,CAAA;YAC1B,IAAI,iBAAiB,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzD,IAAI,GAAG,UAAU,CAAA;gBACjB,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,IAAI,QAAuB,CAAA;YAC3B,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;YAC9D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,YAAY,CAAC,GAAG,CAAC;oBAAE,MAAM,GAAG,CAAA;gBAChC,OAAO,SAAS,CAAA,CAAC,6DAA6D;YAChF,CAAC;YACD,IAAI,QAAQ;gBAAE,IAAI,GAAG,cAAc,QAAQ,EAAE,CAAA;YAC7C,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAA;QACnC,CAAC,EAAE,eAAe,CAAC,CAAA;QACnB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC,CAAA;IACD,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QACtD,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;QAC5E,OAAO,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAA;IAC7C,CAAC,EAAE,eAAe,CAAC,CAAA;IACnB,MAAM,QAAQ,GAAG,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAEzH,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/C,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;QACjD,IAAI,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE,GAAG,MAAM,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,IAAI,CAAA,CAAC,CAAC,EAAE,eAAe,CAAC,CAAA;YAC/F,SAAQ;QACV,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC,CAAA;QAC5F,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,iFAAiF;YACjF,OAAO,IAAI;gBACT,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,UAAU,eAAe,GAAG,IAAI,GAAG,CAAC;gBACxH,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,2BAA2B,eAAe,GAAG,IAAI,GAAG,CAAC,CAAA;QAC/H,CAAC;QACD,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE,CAAC;oBACxB,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;gBACzD,CAAC;qBAAM,IAAI,IAAI,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;gBACtG,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;oBACxF,MAAM,MAAM,GAAG,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,qBAAqB,CAAA;oBAC5F,IAAI,OAAO,KAAK,IAAI;wBAAE,OAAO,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,MAAM,EAAE,CAAC,CAAA;gBAC9G,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAA;gBAClB,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;gBAClI,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;oBAChB,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,CAAA;oBACjE,OAAO,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,KAAK,YAAY,CAAC,CAAA;gBAC3E,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;gBACnE,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC9H,MAAM,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;YAC5F,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,+FAA+F;YAC/F,mFAAmF;YACnF,8EAA8E;YAC9E,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC/D,OAAO,OAAO,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,MAAM,EAAE,CAAC,CAAA;YAC5F,CAAC;QACH,CAAC;IACH,CAAC;IAED,4GAA4G;IAC5G,MAAM,SAAS,GAAG,OAAO,EAAE,CAAA;IAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE,CAAC,CAAC,OAAO,IAAI,MAAM,aAAa,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC,CAAA;IACpH,OAAO,KAAK;QACV,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,gBAAgB,IAAI,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,aAAa,SAAS,UAAU,KAAK,CAAC,KAAK,EAAE,CAAC;QAChH,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,gBAAgB,IAAI,iBAAiB,KAAK,CAAC,KAAK,sBAAsB,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAA;AAC1H,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { PageSession, Point, Rect } from '../cdp/types.js';
|
|
2
|
+
/** How a replay finds a control again: its test id, else role + name. */
|
|
3
|
+
export type StepTarget = {
|
|
4
|
+
testid?: string;
|
|
5
|
+
role: string;
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
/** A drop target: a row, or any element by its test id. */
|
|
9
|
+
export type DropTarget = StepTarget | {
|
|
10
|
+
testid: string;
|
|
11
|
+
};
|
|
12
|
+
export type RecordedStep = {
|
|
13
|
+
op: 'click' | 'type' | 'select';
|
|
14
|
+
target: StepTarget;
|
|
15
|
+
value?: string;
|
|
16
|
+
isPassword: boolean;
|
|
17
|
+
} | {
|
|
18
|
+
op: 'scroll';
|
|
19
|
+
direction: 'up' | 'down';
|
|
20
|
+
}
|
|
21
|
+
/** `to`: a row, any element by test id, or absent = the viewport. */
|
|
22
|
+
| {
|
|
23
|
+
op: 'drag';
|
|
24
|
+
target: StepTarget;
|
|
25
|
+
to?: DropTarget;
|
|
26
|
+
edge: Edge;
|
|
27
|
+
};
|
|
28
|
+
export type UntilArgs = {
|
|
29
|
+
testid?: string;
|
|
30
|
+
selector?: string;
|
|
31
|
+
};
|
|
32
|
+
export type ActScript = {
|
|
33
|
+
until: UntilArgs;
|
|
34
|
+
steps: RecordedStep[];
|
|
35
|
+
};
|
|
36
|
+
export declare const isScriptName: (name: string | undefined) => name is string;
|
|
37
|
+
/** Steps are stored by what identifies a control across runs, never by row number. Passwords are not stored. */
|
|
38
|
+
export declare function writeScript(name: string, { until, steps }: ActScript): Promise<string>;
|
|
39
|
+
export declare function readScript(name: string): Promise<ActScript | undefined>;
|
|
40
|
+
export declare const EDGES: readonly ["left", "right", "top", "bottom", "center"];
|
|
41
|
+
export type Edge = typeof EDGES[number];
|
|
42
|
+
export declare const isEdge: (value: string) => value is Edge;
|
|
43
|
+
/** Drop point inside `box`, on its midline, inset from `edge` — a centre drop replaces instead of splitting. */
|
|
44
|
+
export declare function edgePoint(box: Rect, edge: Edge): Point;
|
|
45
|
+
export declare function viewportBox(conn: PageSession): Promise<Rect>;
|
|
46
|
+
//# sourceMappingURL=act-script.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"act-script.d.ts","sourceRoot":"","sources":["../../src/server/act-script.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAG/D,yEAAyE;AACzE,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAExE,2DAA2D;AAC3D,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAExD,MAAM,MAAM,YAAY,GACpB;IAAE,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,GAC5F;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,IAAI,GAAG,MAAM,CAAA;CAAE;AAC5C,qEAAqE;GACnE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAC;IAAC,EAAE,CAAC,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,CAAA;AAEnE,MAAM,MAAM,SAAS,GAAG;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9D,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,YAAY,EAAE,CAAA;CAAE,CAAA;AAInE,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,GAAG,SAAS,KAAG,IAAI,IAAI,MAA0C,CAAA;AAG1G,gHAAgH;AAChH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAK5F;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAM7E;AAED,eAAO,MAAM,KAAK,uDAAwD,CAAA;AAC1E,MAAM,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,MAAM,CAAC,CAAA;AAIvC,eAAO,MAAM,MAAM,GAAI,OAAO,MAAM,KAAG,KAAK,IAAI,IAAoD,CAAA;AAEpG,gHAAgH;AAChH,wBAAgB,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,KAAK,CAUtD;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import { join } from 'node:path';
|
|
3
|
+
import { AGENT_VIEW_DIR } from './port.js';
|
|
4
|
+
const SCRIPT_DIR = join(AGENT_VIEW_DIR, 'scratch');
|
|
5
|
+
export const isScriptName = (name) => !!name && /^[\w.-]+$/.test(name);
|
|
6
|
+
const scriptPath = (name) => join(SCRIPT_DIR, `${name}.json`);
|
|
7
|
+
/** Steps are stored by what identifies a control across runs, never by row number. Passwords are not stored. */
|
|
8
|
+
export async function writeScript(name, { until, steps }) {
|
|
9
|
+
await mkdir(SCRIPT_DIR, { recursive: true });
|
|
10
|
+
const stored = steps.map(s => ('isPassword' in s && s.isPassword ? { ...s, value: undefined } : s));
|
|
11
|
+
await writeFile(scriptPath(name), JSON.stringify({ until, steps: stored }, null, 1));
|
|
12
|
+
return scriptPath(name);
|
|
13
|
+
}
|
|
14
|
+
export async function readScript(name) {
|
|
15
|
+
try {
|
|
16
|
+
return JSON.parse(await readFile(scriptPath(name), 'utf8'));
|
|
17
|
+
}
|
|
18
|
+
catch {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export const EDGES = ['left', 'right', 'top', 'bottom', 'center'];
|
|
23
|
+
/** Deepest a drop point sits inside an edge; split zones along a widget edge are ~60 px strips. */
|
|
24
|
+
const EDGE_INSET_PX = 20;
|
|
25
|
+
export const isEdge = (value) => EDGES.includes(value);
|
|
26
|
+
/** Drop point inside `box`, on its midline, inset from `edge` — a centre drop replaces instead of splitting. */
|
|
27
|
+
export function edgePoint(box, edge) {
|
|
28
|
+
const cx = box.x + box.width / 2;
|
|
29
|
+
const cy = box.y + box.height / 2;
|
|
30
|
+
const insetX = Math.min(EDGE_INSET_PX, box.width / 4);
|
|
31
|
+
const insetY = Math.min(EDGE_INSET_PX, box.height / 4);
|
|
32
|
+
if (edge === 'left')
|
|
33
|
+
return { x: box.x + insetX, y: cy };
|
|
34
|
+
if (edge === 'right')
|
|
35
|
+
return { x: box.x + box.width - insetX, y: cy };
|
|
36
|
+
if (edge === 'top')
|
|
37
|
+
return { x: cx, y: box.y + insetY };
|
|
38
|
+
if (edge === 'bottom')
|
|
39
|
+
return { x: cx, y: box.y + box.height - insetY };
|
|
40
|
+
return { x: cx, y: cy };
|
|
41
|
+
}
|
|
42
|
+
export async function viewportBox(conn) {
|
|
43
|
+
const { viewport } = await conn.getLayoutSnapshot();
|
|
44
|
+
return { x: 0, y: 0, ...viewport };
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=act-script.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"act-script.js","sourceRoot":"","sources":["../../src/server/act-script.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ServerResponse } from '../types.js';
|
|
2
|
+
import { type Control } from '../inspectors/controls/index.js';
|
|
3
|
+
import { type Locator } from './locator.js';
|
|
4
|
+
import { type RecordedStep, type UntilArgs } from './act-script.js';
|
|
5
|
+
import { type ActDeps } from './act-replay.js';
|
|
6
|
+
/** Step-protocol state for one CDP port. Rows are those of the LAST printed table. */
|
|
7
|
+
export type ActSession = {
|
|
8
|
+
until: Locator;
|
|
9
|
+
untilArgs: UntilArgs;
|
|
10
|
+
maxSteps: number;
|
|
11
|
+
testIdAttribute?: string;
|
|
12
|
+
rows: Control[];
|
|
13
|
+
steps: RecordedStep[];
|
|
14
|
+
startedAt: number;
|
|
15
|
+
/** Script name to write on DONE (`act start --save`). */
|
|
16
|
+
saveAs?: string;
|
|
17
|
+
/** DONE was printed: the recording is complete and takes no more steps. */
|
|
18
|
+
isDone: boolean;
|
|
19
|
+
};
|
|
20
|
+
export declare function runAct(holder: {
|
|
21
|
+
act: ActSession | null;
|
|
22
|
+
}, args: Record<string, unknown>, deps: ActDeps): Promise<ServerResponse>;
|
|
23
|
+
//# sourceMappingURL=act-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"act-session.d.ts","sourceRoot":"","sources":["../../src/server/act-session.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAQL,KAAK,OAAO,EACb,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAmE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AAC5G,OAAO,EAQL,KAAK,YAAY,EAEjB,KAAK,SAAS,EACf,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAU,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAetD,sFAAsF;AACtF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,SAAS,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,KAAK,EAAE,YAAY,EAAE,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,2EAA2E;IAC3E,MAAM,EAAE,OAAO,CAAA;CAChB,CAAA;AAUD,wBAAsB,MAAM,CAC1B,MAAM,EAAE;IAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,EAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,cAAc,CAAC,CA+BzB"}
|