@unotest/web 0.22.0 → 0.23.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/CHANGELOG.md CHANGED
@@ -1,5 +1,59 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.23.0] - 2026-08-26
4
+
5
+ ### Minor Changes
6
+
7
+ - LLM-judge assertion for free-form text: `assertJudge(locator, rubric)`.
8
+
9
+ - New package `@unotest/judge` — the judge service (`npx @unotest/judge`):
10
+ judges text against a natural-language rubric and returns a structured
11
+ `{verdict, reasoning, model, attempts}`. Providers: `vertex` (Google
12
+ Vertex AI via ADC, no API keys; temperature pinned to 0) and `fake`
13
+ (deterministic, CI-safe). Non-determinism policy lives in the service:
14
+ `JUDGE_RETRIES` re-asks on `fail`, first `pass` wins.
15
+ - `@unotest/web`: new DSL assertion `assertJudge(locator, rubric)` — the
16
+ element's rendered text + the rubric go to the judge; a `fail` verdict
17
+ fails the step with the judge's reasoning. Wired via env so the config
18
+ sits in the `--env` overlay: `UNOTEST_JUDGE_MODE=off|local|remote`,
19
+ `UNOTEST_JUDGE_URL`, `UNOTEST_JUDGE_TOKEN`, `UNOTEST_JUDGE_TIMEOUT_MS`.
20
+ Every verdict (pass and fail) is recorded into the run's `steps.jsonl`.
21
+ Also documented: `shell()` runs with cwd = the project root
22
+ (`sandbox.shellCwd` to override) and returns `{stdout, stderr, code}`.
23
+ - `@unotest/protocol`: judge wire types (`JudgeRequest`, `JudgeVerdict`,
24
+ `JUDGE_ROUTES`) and the new `judge:verdict` run-artifact event.
25
+
26
+ ### Patch Changes
27
+
28
+ - Judge provider matrix: four new `JUDGE_PROVIDER` backends.
29
+
30
+ - `claude` — spawns the local Claude Code CLI (`claude -p`, no shell
31
+ interpretation): auth comes from the Claude Code session, so a
32
+ subscription works with no API key. `JUDGE_MODEL` is passed as
33
+ `--model` (aliases like `sonnet` work); `JUDGE_CLAUDE_BIN` overrides
34
+ the binary; default `JUDGE_TIMEOUT_MS` is 120000 for this provider.
35
+ - `gemini` — the Gemini API with `GEMINI_API_KEY` (same wire format as
36
+ `vertex`, temperature pinned to 0; default model `gemini-2.5-flash`).
37
+ - `openai` — OpenAI chat completions with `OPENAI_API_KEY`
38
+ (`response_format: json_object`; default model `gpt-5-mini`).
39
+ - `anthropic` — the Anthropic API (`/v1/messages`) with
40
+ `ANTHROPIC_API_KEY` (default model `claude-haiku-4-5`).
41
+
42
+ `openai` and `anthropic` deliberately send no sampling params — current
43
+ reasoning models reject `temperature`; determinism relies on the strict
44
+ JSON verdict prompt plus the `JUDGE_RETRIES` policy. Still zero provider
45
+ SDKs: everything is raw HTTP or a local process.
46
+
47
+ `@unotest/web`: docs only — provider matrix in the `assertJudge`
48
+ reference and the `.env.example` judge block.
49
+
50
+ - Updated dependencies
51
+ - @unotest/protocol@0.23.0
52
+ - @unotest/viewer@0.23.0
53
+ - @unotest/core@0.23.0
54
+ - @unotest/dsl@0.23.0
55
+ - @unotest/grounder-client@0.23.0
56
+
3
57
  ## [0.22.0] - 2026-08-26
4
58
 
5
59
  ### Patch Changes
package/README.md CHANGED
@@ -105,7 +105,7 @@ the way you already expect:
105
105
  - **Navigation** — `goto`, `reload`, `waitForUrl`
106
106
  - **Locators** — `getByRole`, `getByTestId`, `getByLabel`, `getByText`, `getByPlaceholder`, `locator`
107
107
  - **Actions** — `click`, `fill`, `press`, `hover`, `check`, `uncheck`, `selectOption`
108
- - **Assertions** — `assertText`, `assertUrl`, `assertVisible`, `assertChecked`, `expect`
108
+ - **Assertions** — `assertText`, `assertUrl`, `assertVisible`, `assertCount`, `assertValue`, `assertJudge` (LLM-judge for free-form text, backed by [`@unotest/judge`](https://www.npmjs.com/package/@unotest/judge))
109
109
  - **Setup** — `dbQuery`, `dbExec`, `apiCall`, `shell`, `evaluate`
110
110
 
111
111
  Full reference, shipped with the package:
@@ -1 +1 @@
1
- function _0x595f(_0x1405f0,_0x11f14f){_0x1405f0=_0x1405f0-0x130;var _0x59aec6=_0x59ae();var _0x595f91=_0x59aec6[_0x1405f0];if(_0x595f['ZJoqmM']===undefined){var _0x5bbfd6=function(_0x47bccf){var _0x5ef4db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3a9e0e='',_0x1eaca2='';for(var _0x33c229=0x0,_0x1c68a9,_0x59ea3e,_0x35b185=0x0;_0x59ea3e=_0x47bccf['charAt'](_0x35b185++);~_0x59ea3e&&(_0x1c68a9=_0x33c229%0x4?_0x1c68a9*0x40+_0x59ea3e:_0x59ea3e,_0x33c229++%0x4)?_0x3a9e0e+=String['fromCharCode'](0xff&_0x1c68a9>>(-0x2*_0x33c229&0x6)):0x0){_0x59ea3e=_0x5ef4db['indexOf'](_0x59ea3e);}for(var _0x4b70ec=0x0,_0x518d9d=_0x3a9e0e['length'];_0x4b70ec<_0x518d9d;_0x4b70ec++){_0x1eaca2+='%'+('00'+_0x3a9e0e['charCodeAt'](_0x4b70ec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1eaca2);};_0x595f['rfdYol']=_0x5bbfd6,_0x595f['zFalaV']={},_0x595f['ZJoqmM']=!![];}var _0x1c5d3c=_0x59aec6[0x0],_0x3210cd=_0x1405f0+_0x1c5d3c,_0x424301=_0x595f['zFalaV'][_0x3210cd];return!_0x424301?(_0x595f91=_0x595f['rfdYol'](_0x595f91),_0x595f['zFalaV'][_0x3210cd]=_0x595f91):_0x595f91=_0x424301,_0x595f91;}var _0x1ddc6d=_0x595f;function _0x59ae(){var _0x4c2057=['CMvJB3jK','nJa4mJG4ofrhvgDSsG','D2fYBG','BgLUDdP4Cgf0Aa','yM9VBgvHBG','zgLZBwLZCW','Aw50','yxjYyxK','DMfSAwrHDg9YoNnLBwfUDgLJlwXVC3m','Cg9ZAxrPDMu','BMv0D29YAW','mtGZtwffufbR','zw51Bq','DMfSAwrHDg9YoM1LDgeTC2HHCgu','B2jQzwn0','ywnJzxb0','DMfSAwrHDg9YoMXPC3qTyxjN','DMfSAwrHDg9YoNn0CMLUzY1JB25Jyxq','BNvTyMvY','DMfSAwrHDg9YoMLMlxnOyxbL','BwLU','mZCYotj4s0v2Dvy','DhjHBNnPzw50','BgLUDdPWyxvZzs1LEhbSAwnPDa','BgLUDdPTDxn0ywnOzs1PBI1KC2W','DMfSAwrHDg9YoNvUA25VD24TzNvUy3rPB24','mJy0mteWmhfpu3PfuW','Dw5VDgvZDc9LmMu','B3b0Aw9UywW','BwfUDwfS','BgL0zxjHBa','zMLYzwzVEa','nJK0mtq4nerWs211ra','ndaYm1nhwhr3zq','BgLUDdPYzwDLEc1PBNzHBgLK','BNvSBa','Dw5PB24','nZmXmMHftxPqCG','DMfSAwrHDg9YoNn0zxaTy292zxjHz2u','zxjYB3i','B2zM','DMfSAwrHDg9YoNzHCI1ZAgfWzq','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlxn0yxrLBwvUDa','y2HYB21PDw0','BgLUDdPSAw50lw9Rlw1PC3nPBMCTCMvHC29U','BgLUDdPMBg93lxjLDhvYBNmTDMfSDwu','mtiYmtbquxvRqw8','DxjS','mJvSExv4zKq','mte1mty2mwj0t2L3rW','C3rYAw5N','BgLUDdPLDMfSDwf0zs1KAxnJB3vYywDLza','Bwf4','BgLUDdPKzwvWlwnZCW','lNvUB3rLC3qVzMfPBhvYzxm','zgvMyxvSDa','BgLUDdPKAxnHBwjPzY1IEs1PBMrLEa','DMfSAwrHDg9YoMfYAxr5','DMfSAwrHDg9YoMz1BMn0Aw9UlxnOyxbL','C3rKAw8','BgLUDdPVyMz1C2nHDgvKlwnSyxnZ','DMfSAwrHDg9YoNDYyxbWzwqTzM9YBwf0','D2vIA2L0'];_0x59ae=function(){return _0x4c2057;};return _0x59ae();}(function(_0x3a4d7b,_0x2a312c){var _0x920b12={_0x265aaa:0x148,_0x55332d:0x157},_0x4b2d59=_0x595f,_0x2f3b7c=_0x3a4d7b();while(!![]){try{var _0x400dda=-parseInt(_0x4b2d59(0x16d))/0x1*(parseInt(_0x4b2d59(0x152))/0x2)+parseInt(_0x4b2d59(_0x920b12._0x265aaa))/0x3*(parseInt(_0x4b2d59(0x162))/0x4)+-parseInt(_0x4b2d59(_0x920b12._0x55332d))/0x5+parseInt(_0x4b2d59(0x15d))/0x6+parseInt(_0x4b2d59(0x16e))/0x7+parseInt(_0x4b2d59(0x13e))/0x8+parseInt(_0x4b2d59(0x15e))/0x9*(-parseInt(_0x4b2d59(0x16b))/0xa);if(_0x400dda===_0x2a312c)break;else _0x2f3b7c['push'](_0x2f3b7c['shift']());}catch(_0x1efe71){_0x2f3b7c['push'](_0x2f3b7c['shift']());}}}(_0x59ae,0x9f75d));import{z}from'zod';var BrowserSchema=z[_0x1ddc6d(0x149)]([_0x1ddc6d(0x168),_0x1ddc6d(0x15c),_0x1ddc6d(0x13c)]),BrowserChannelSchema=z[_0x1ddc6d(0x161)]([z[_0x1ddc6d(0x15b)]('chrome'),z[_0x1ddc6d(0x15b)]('msedge'),z[_0x1ddc6d(0x15b)]('chrome-beta'),z[_0x1ddc6d(0x160)]()])[_0x1ddc6d(0x159)](),ViewportSchema=z[_0x1ddc6d(0x14b)]({'width':z['number']()[_0x1ddc6d(0x143)]()['positive'](),'height':z[_0x1ddc6d(0x14f)]()['int']()['positive']()}),RetryReasonSchema=z['enum'](['transient',_0x1ddc6d(0x147),'crash']),RetryConfigSchema=z[_0x1ddc6d(0x14b)]({'count':z[_0x1ddc6d(0x14f)]()[_0x1ddc6d(0x143)]()['min'](0x0)[_0x1ddc6d(0x132)](0xa),'on':z[_0x1ddc6d(0x144)](RetryReasonSchema)}),FailureBundleConfigSchema=z['object']({'tier1':z[_0x1ddc6d(0x15b)](!![])['default'](!![]),'tier2':z['boolean'](),'tier3':z[_0x1ddc6d(0x14b)]({'network':z[_0x1ddc6d(0x141)](),'video':z[_0x1ddc6d(0x141)]()}),'retention':z['object']({'runs':z[_0x1ddc6d(0x14f)]()[_0x1ddc6d(0x143)]()['positive'](),'days':z['number']()[_0x1ddc6d(0x143)]()[_0x1ddc6d(0x146)]()}),'storageDir':z[_0x1ddc6d(0x130)]()[_0x1ddc6d(0x151)](0x1)}),DialogPolicySchema=z[_0x1ddc6d(0x149)]([_0x1ddc6d(0x14c),_0x1ddc6d(0x142),_0x1ddc6d(0x15a)]),LinterRuleIdSchema=z[_0x1ddc6d(0x149)]([_0x1ddc6d(0x133),_0x1ddc6d(0x140),_0x1ddc6d(0x13a),_0x1ddc6d(0x154),_0x1ddc6d(0x136),_0x1ddc6d(0x131),'lint:scenario-in-root',_0x1ddc6d(0x155),'lint:goto-concat',_0x1ddc6d(0x15f),'lint:echo-assert','lint:api-call-file-body',_0x1ddc6d(0x169),_0x1ddc6d(0x16a),_0x1ddc6d(0x156),_0x1ddc6d(0x137),'validator:arg-kind',_0x1ddc6d(0x163),'validator:step-shape',_0x1ddc6d(0x14a),_0x1ddc6d(0x138),'validator:for-shape',_0x1ddc6d(0x150),_0x1ddc6d(0x166),_0x1ddc6d(0x167),'validator:unsupported-expression',_0x1ddc6d(0x14e),_0x1ddc6d(0x145),_0x1ddc6d(0x14d),_0x1ddc6d(0x13b)]),LinterSeveritySchema=z[_0x1ddc6d(0x149)]([_0x1ddc6d(0x165),_0x1ddc6d(0x13f),_0x1ddc6d(0x164)]),LinterConfigSchema=z['object']({'enabled':z[_0x1ddc6d(0x141)](),'rules':z[_0x1ddc6d(0x13d)](LinterRuleIdSchema,LinterSeveritySchema)}),McpConfigSchema=z['object']({'transport':z[_0x1ddc6d(0x15b)](_0x1ddc6d(0x139))}),SandboxConfigSchema=z[_0x1ddc6d(0x14b)]({'shellCwd':z['string']()['optional'](),'shellTimeoutMs':z['number']()[_0x1ddc6d(0x143)]()[_0x1ddc6d(0x146)]()['optional'](),'exportSecrets':z['array'](z[_0x1ddc6d(0x130)]())['optional'](),'database':z[_0x1ddc6d(0x130)]()['optional'](),'apiBaseUrl':z[_0x1ddc6d(0x130)]()['url']()[_0x1ddc6d(0x159)](),'uploadDir':z[_0x1ddc6d(0x130)]()[_0x1ddc6d(0x159)]()}),WebServerConfigSchema=z[_0x1ddc6d(0x14b)]({'command':z[_0x1ddc6d(0x130)]()[_0x1ddc6d(0x151)](0x1),'url':z['string']()[_0x1ddc6d(0x16c)](),'reuseExistingServer':z[_0x1ddc6d(0x141)]()[_0x1ddc6d(0x135)](!![]),'timeoutMs':z[_0x1ddc6d(0x14f)]()[_0x1ddc6d(0x143)]()[_0x1ddc6d(0x146)]()['default'](0xea60)}),UnotestConfigSchema=z[_0x1ddc6d(0x14b)]({'baseUrl':z[_0x1ddc6d(0x130)]()['url']()[_0x1ddc6d(0x159)](),'webServer':WebServerConfigSchema[_0x1ddc6d(0x159)](),'browsers':z['array'](BrowserSchema)[_0x1ddc6d(0x151)](0x1),'channel':BrowserChannelSchema,'viewport':ViewportSchema,'retry':RetryConfigSchema,'failureBundle':FailureBundleConfigSchema,'dialogPolicy':DialogPolicySchema,'storageState':z[_0x1ddc6d(0x130)]()['optional'](),'testDir':z[_0x1ddc6d(0x130)]()[_0x1ddc6d(0x151)](0x1),'helpersDir':z[_0x1ddc6d(0x130)]()['min'](0x1),'defaultTimeoutMs':z[_0x1ddc6d(0x14f)]()[_0x1ddc6d(0x143)]()[_0x1ddc6d(0x146)](),'defaultNavigationTimeoutMs':z[_0x1ddc6d(0x14f)]()['int']()['positive'](),'linter':LinterConfigSchema,'mcp':McpConfigSchema,'sandbox':SandboxConfigSchema}),DEFAULT_CONFIG={'browsers':[_0x1ddc6d(0x168)],'viewport':{'width':0x500,'height':0x2d0},'retry':{'count':0x0,'on':[_0x1ddc6d(0x153)]},'failureBundle':{'tier1':!![],'tier2':!![],'tier3':{'network':![],'video':![]},'retention':{'runs':0x14,'days':0x7},'storageDir':_0x1ddc6d(0x134)},'dialogPolicy':_0x1ddc6d(0x14c),'testDir':_0x1ddc6d(0x158),'helpersDir':'unotest/e2e/_helpers','defaultTimeoutMs':0xbb8,'defaultNavigationTimeoutMs':0x7530,'linter':{'enabled':!![],'rules':{'lint:deep-css':_0x1ddc6d(0x13f),'lint:xpath':_0x1ddc6d(0x13f),'lint:obfuscated-class':_0x1ddc6d(0x13f),'lint:pause-explicit':_0x1ddc6d(0x13f),'lint:disambig-by-index':_0x1ddc6d(0x165),'lint:evaluate-discouraged':_0x1ddc6d(0x13f),'lint:scenario-in-root':_0x1ddc6d(0x164),'lint:mustache-in-dsl':_0x1ddc6d(0x164),'lint:goto-concat':_0x1ddc6d(0x13f),'lint:regex-invalid':_0x1ddc6d(0x164),'lint:echo-assert':'warn','lint:lint-ok-missing-reason':'warn','lint:flow-returns-value':_0x1ddc6d(0x13f),'validator:unknown-function':_0x1ddc6d(0x164)}},'mcp':{'transport':'stdio'},'sandbox':{}};export{BrowserChannelSchema,BrowserSchema,DEFAULT_CONFIG,DialogPolicySchema,FailureBundleConfigSchema,LinterConfigSchema,LinterRuleIdSchema,LinterSeveritySchema,McpConfigSchema,RetryConfigSchema,RetryReasonSchema,SandboxConfigSchema,UnotestConfigSchema,ViewportSchema,WebServerConfigSchema};
1
+ var _0x3673c0=_0x4f94;(function(_0x108810,_0x3506b1){var _0x4d02c6={_0xb476f8:0x84,_0x547eb5:0x79,_0xaec624:0xa7,_0x1904d8:0x98,_0x3d1342:0x9a,_0x1a714f:0x7b,_0x43fb23:0xa3},_0x344411=_0x4f94,_0xbfd4bc=_0x108810();while(!![]){try{var _0x5286e4=-parseInt(_0x344411(_0x4d02c6._0xb476f8))/0x1*(-parseInt(_0x344411(_0x4d02c6._0x547eb5))/0x2)+-parseInt(_0x344411(_0x4d02c6._0xaec624))/0x3+parseInt(_0x344411(_0x4d02c6._0x1904d8))/0x4*(-parseInt(_0x344411(_0x4d02c6._0x3d1342))/0x5)+-parseInt(_0x344411(0x8f))/0x6*(-parseInt(_0x344411(0xa5))/0x7)+parseInt(_0x344411(0x93))/0x8+parseInt(_0x344411(_0x4d02c6._0x1a714f))/0x9+-parseInt(_0x344411(_0x4d02c6._0x43fb23))/0xa;if(_0x5286e4===_0x3506b1)break;else _0xbfd4bc['push'](_0xbfd4bc['shift']());}catch(_0x45ec70){_0xbfd4bc['push'](_0xbfd4bc['shift']());}}}(_0x897c,0xa8a61));function _0x4f94(_0x485474,_0x441643){_0x485474=_0x485474-0x72;var _0x897c4a=_0x897c();var _0x4f9480=_0x897c4a[_0x485474];if(_0x4f94['Oattsn']===undefined){var _0x2e3b94=function(_0x3dc307){var _0x1f276e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x3e9ae9='',_0x4409e7='';for(var _0x26e833=0x0,_0x5651e9,_0x56296d,_0x58bc46=0x0;_0x56296d=_0x3dc307['charAt'](_0x58bc46++);~_0x56296d&&(_0x5651e9=_0x26e833%0x4?_0x5651e9*0x40+_0x56296d:_0x56296d,_0x26e833++%0x4)?_0x3e9ae9+=String['fromCharCode'](0xff&_0x5651e9>>(-0x2*_0x26e833&0x6)):0x0){_0x56296d=_0x1f276e['indexOf'](_0x56296d);}for(var _0x46e738=0x0,_0x37cbb4=_0x3e9ae9['length'];_0x46e738<_0x37cbb4;_0x46e738++){_0x4409e7+='%'+('00'+_0x3e9ae9['charCodeAt'](_0x46e738)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4409e7);};_0x4f94['DSPlCk']=_0x2e3b94,_0x4f94['uRCphd']={},_0x4f94['Oattsn']=!![];}var _0x38613d=_0x897c4a[0x0],_0x199f5c=_0x485474+_0x38613d,_0x1fab64=_0x4f94['uRCphd'][_0x199f5c];return!_0x1fab64?(_0x4f9480=_0x4f94['DSPlCk'](_0x4f9480),_0x4f94['uRCphd'][_0x199f5c]=_0x4f9480):_0x4f9480=_0x1fab64,_0x4f9480;}import{z}from'zod';var BrowserSchema=z[_0x3673c0(0xab)]([_0x3673c0(0xa9),_0x3673c0(0xa1),'webkit']),BrowserChannelSchema=z[_0x3673c0(0x87)]([z[_0x3673c0(0x8b)]('chrome'),z[_0x3673c0(0x8b)](_0x3673c0(0x86)),z[_0x3673c0(0x8b)]('chrome-beta'),z[_0x3673c0(0x82)]()])[_0x3673c0(0x94)](),ViewportSchema=z[_0x3673c0(0xa8)]({'width':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()['positive'](),'height':z['number']()['int']()['positive']()}),RetryReasonSchema=z[_0x3673c0(0xab)](['transient','network','crash']),RetryConfigSchema=z['object']({'count':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()[_0x3673c0(0x88)](0x0)[_0x3673c0(0xaf)](0xa),'on':z[_0x3673c0(0xac)](RetryReasonSchema)}),FailureBundleConfigSchema=z[_0x3673c0(0xa8)]({'tier1':z[_0x3673c0(0x8b)](!![])[_0x3673c0(0x83)](!![]),'tier2':z[_0x3673c0(0x77)](),'tier3':z[_0x3673c0(0xa8)]({'network':z['boolean'](),'video':z['boolean']()}),'retention':z[_0x3673c0(0xa8)]({'runs':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()[_0x3673c0(0x7f)](),'days':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()['positive']()}),'storageDir':z[_0x3673c0(0x78)]()[_0x3673c0(0x88)](0x1)}),DialogPolicySchema=z['enum']([_0x3673c0(0x80),'dismiss',_0x3673c0(0xa6)]),LinterRuleIdSchema=z['enum']([_0x3673c0(0x90),_0x3673c0(0x8d),_0x3673c0(0x96),'lint:pause-explicit',_0x3673c0(0x99),_0x3673c0(0x91),_0x3673c0(0x81),_0x3673c0(0x72),'lint:goto-concat',_0x3673c0(0x89),_0x3673c0(0x9f),'lint:api-call-file-body','lint:lint-ok-missing-reason',_0x3673c0(0x75),_0x3673c0(0x74),_0x3673c0(0xa2),_0x3673c0(0x9d),_0x3673c0(0x7e),'validator:step-shape',_0x3673c0(0xa0),_0x3673c0(0x9c),'validator:for-shape',_0x3673c0(0xa4),'validator:var-shape',_0x3673c0(0x8c),_0x3673c0(0x95),_0x3673c0(0x8a),_0x3673c0(0xaa),'validator:list-arg',_0x3673c0(0x76)]),LinterSeveritySchema=z[_0x3673c0(0xab)](['off',_0x3673c0(0x7a),'error']),LinterConfigSchema=z[_0x3673c0(0xa8)]({'enabled':z[_0x3673c0(0x77)](),'rules':z[_0x3673c0(0x92)](LinterRuleIdSchema,LinterSeveritySchema)}),McpConfigSchema=z[_0x3673c0(0xa8)]({'transport':z[_0x3673c0(0x8b)](_0x3673c0(0x9e))}),SandboxConfigSchema=z[_0x3673c0(0xa8)]({'shellCwd':z[_0x3673c0(0x78)]()['optional'](),'shellTimeoutMs':z['number']()['int']()[_0x3673c0(0x7f)]()[_0x3673c0(0x94)](),'exportSecrets':z['array'](z['string']())[_0x3673c0(0x94)](),'database':z[_0x3673c0(0x78)]()[_0x3673c0(0x94)](),'apiBaseUrl':z[_0x3673c0(0x78)]()[_0x3673c0(0x97)]()['optional'](),'uploadDir':z[_0x3673c0(0x78)]()[_0x3673c0(0x94)]()}),WebServerConfigSchema=z['object']({'command':z[_0x3673c0(0x78)]()['min'](0x1),'url':z[_0x3673c0(0x78)]()[_0x3673c0(0x97)](),'reuseExistingServer':z['boolean']()[_0x3673c0(0x83)](!![]),'timeoutMs':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()[_0x3673c0(0x7f)]()[_0x3673c0(0x83)](0xea60)}),UnotestConfigSchema=z[_0x3673c0(0xa8)]({'baseUrl':z[_0x3673c0(0x78)]()[_0x3673c0(0x97)]()[_0x3673c0(0x94)](),'webServer':WebServerConfigSchema[_0x3673c0(0x94)](),'browsers':z[_0x3673c0(0xac)](BrowserSchema)[_0x3673c0(0x88)](0x1),'channel':BrowserChannelSchema,'viewport':ViewportSchema,'retry':RetryConfigSchema,'failureBundle':FailureBundleConfigSchema,'dialogPolicy':DialogPolicySchema,'storageState':z[_0x3673c0(0x78)]()[_0x3673c0(0x94)](),'testDir':z[_0x3673c0(0x78)]()[_0x3673c0(0x88)](0x1),'helpersDir':z[_0x3673c0(0x78)]()[_0x3673c0(0x88)](0x1),'defaultTimeoutMs':z[_0x3673c0(0xae)]()[_0x3673c0(0x85)]()[_0x3673c0(0x7f)](),'defaultNavigationTimeoutMs':z['number']()[_0x3673c0(0x85)]()[_0x3673c0(0x7f)](),'linter':LinterConfigSchema,'mcp':McpConfigSchema,'sandbox':SandboxConfigSchema}),DEFAULT_CONFIG={'browsers':[_0x3673c0(0xa9)],'viewport':{'width':0x500,'height':0x2d0},'retry':{'count':0x0,'on':[_0x3673c0(0xad)]},'failureBundle':{'tier1':!![],'tier2':!![],'tier3':{'network':![],'video':![]},'retention':{'runs':0x14,'days':0x7},'storageDir':_0x3673c0(0x9b)},'dialogPolicy':_0x3673c0(0x80),'testDir':_0x3673c0(0x8e),'helpersDir':_0x3673c0(0x7c),'defaultTimeoutMs':0xbb8,'defaultNavigationTimeoutMs':0x7530,'linter':{'enabled':!![],'rules':{'lint:deep-css':_0x3673c0(0x7a),'lint:xpath':_0x3673c0(0x7a),'lint:obfuscated-class':'warn','lint:pause-explicit':'warn','lint:disambig-by-index':_0x3673c0(0x7d),'lint:evaluate-discouraged':_0x3673c0(0x7a),'lint:scenario-in-root':'error','lint:mustache-in-dsl':'error','lint:goto-concat':'warn','lint:regex-invalid':_0x3673c0(0x73),'lint:echo-assert':_0x3673c0(0x7a),'lint:lint-ok-missing-reason':_0x3673c0(0x7a),'lint:flow-returns-value':'warn','validator:unknown-function':'error'}},'mcp':{'transport':_0x3673c0(0x9e)},'sandbox':{}};function _0x897c(){var _0x813d53=['BwfUDwfS','nZyZmZy4qwLmD2LM','B2jQzwn0','y2HYB21PDw0','DMfSAwrHDg9YoNnLBwfUDgLJlwXVC3m','zw51Bq','yxjYyxK','DhjHBNnPzw50','BNvTyMvY','Bwf4','BgLUDdPTDxn0ywnOzs1PBI1KC2W','zxjYB3i','DMfSAwrHDg9YoNvUA25VD24TzNvUy3rPB24','BgLUDdPMBg93lxjLDhvYBNmTDMfSDwu','DMfSAwrHDg9YoNDYyxbWzwqTzM9YBwf0','yM9VBgvHBG','C3rYAw5N','mM5ZrKn5BG','D2fYBG','nJa1ndeZohL3sKTcza','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','B2zM','DMfSAwrHDg9YoNn0zxaTy292zxjHz2u','Cg9ZAxrPDMu','ywnJzxb0','BgLUDdPZy2vUyxjPBY1PBI1YB290','BNvSBa','zgvMyxvSDa','ntG5nJC4r2TwyvbK','Aw50','BxnLzgDL','Dw5PB24','BwLU','BgLUDdPYzwDLEc1PBNzHBgLK','DMfSAwrHDg9YoNn0CMLUzY1JB25Jyxq','BgL0zxjHBa','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlxn0yxrLBwvUDa','BgLUDdP4Cgf0Aa','Dw5VDgvZDc9LmMu','mJrcDMP4u2y','BgLUDdPKzwvWlwnZCW','BgLUDdPLDMfSDwf0zs1KAxnJB3vYywDLza','CMvJB3jK','otuXnte5mNfYqwDAua','B3b0Aw9UywW','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlwv4ChjLC3nPB24','BgLUDdPVyMz1C2nHDgvKlwnSyxnZ','DxjS','mJeYz0Dnz3rx','BgLUDdPKAxnHBwjPzY1IEs1PBMrLEa','mte1nJe1uM5ZB3Hl','lNvUB3rLC3qVzMfPBhvYzxm','DMfSAwrHDg9YoMz1BMn0Aw9UlxnOyxbL','DMfSAwrHDg9YoMfYzY1RAw5K','C3rKAw8','BgLUDdPLy2HVlwfZC2vYDa','DMfSAwrHDg9YoM1LDgeTC2HHCgu','zMLYzwzVEa','DMfSAwrHDg9YoMfYAxr5','mtm5ntGYmZbtrNDYrNC','DMfSAwrHDg9YoMLMlxnOyxbL','mtK1mdK0mKT5y1DHzW'];_0x897c=function(){return _0x813d53;};return _0x897c();}export{BrowserChannelSchema,BrowserSchema,DEFAULT_CONFIG,DialogPolicySchema,FailureBundleConfigSchema,LinterConfigSchema,LinterRuleIdSchema,LinterSeveritySchema,McpConfigSchema,RetryConfigSchema,RetryReasonSchema,SandboxConfigSchema,UnotestConfigSchema,ViewportSchema,WebServerConfigSchema};
@@ -1 +1 @@
1
- const _0x35457f=_0x1ef7;(function(_0x23184b,_0x2d0104){const _0x373856={_0x2bbfe8:0xe8,_0x288e65:0xd1,_0x260183:0xaf,_0x110e9a:0xae,_0x480d57:0xbc},_0x2886ee=_0x1ef7,_0x42fd36=_0x23184b();while(!![]){try{const _0xf24525=-parseInt(_0x2886ee(_0x373856._0x2bbfe8))/0x1*(parseInt(_0x2886ee(0xe4))/0x2)+parseInt(_0x2886ee(0x108))/0x3*(parseInt(_0x2886ee(_0x373856._0x288e65))/0x4)+-parseInt(_0x2886ee(_0x373856._0x260183))/0x5*(-parseInt(_0x2886ee(0xd9))/0x6)+parseInt(_0x2886ee(0xda))/0x7+parseInt(_0x2886ee(0xf9))/0x8*(-parseInt(_0x2886ee(0xdc))/0x9)+parseInt(_0x2886ee(_0x373856._0x110e9a))/0xa+-parseInt(_0x2886ee(_0x373856._0x480d57))/0xb;if(_0xf24525===_0x2d0104)break;else _0x42fd36['push'](_0x42fd36['shift']());}catch(_0x4ada7d){_0x42fd36['push'](_0x42fd36['shift']());}}}(_0x45fb,0x64827));var __defProp=Object['defineProperty'],__name=(_0x167943,_0x12d57c)=>__defProp(_0x167943,'name',{'value':_0x12d57c,'configurable':!![]});function subscribe(_0x508764,_0x4e7111){const _0x35c3a2={_0x55a11e:0xeb},_0x5d5d3d=_0x1ef7;return _0x508764[_0x5d5d3d(_0x35c3a2._0x55a11e)](_0x4e7111),()=>{_0x508764['delete'](_0x4e7111);};}function _0x45fb(){const _0x50fa85=['AxneAxnHyMXLzej5rgvMyxvSDa','Aw5ZCgvJDevSzw1LBNq','Dw5JAgvJAW','pgrPDJ48l2rPDJ4','lNbHz2uW','lNbHz2u','zNjHBwvtDgfJAW','C2v0q29VA2LL','C2v0tg9JywXtDg9YywDL','D3nfBMrWB2LUDa','z29cywnR','ywn0AxzLswr4','BMv0D29YA0vUDhjPzxm','yxr0ywnOrxHPC3rPBMCGBM90ihn1ChbVCNrLzcbIEsbgywTLv2vIrhjPDMvY','B3v0zxjive1m','zxHPDezYyw1L','pgrPDIbKyxrHlxvUB3rLC3qTCMvMpsi','y2fSBhm','zwXLBwvUDeHPBNrcEvjLzG','zxzHBhvHDgu','DxjS','y3jLyxrLuMvJB3jKzxi','y2HLy2TLzfn0yxrLqNLezwzHDwX0','BMv3ugfNzuXPC3rLBMvYCW','yMvOyxzPB3i','D2fPDezVCG','C3bSAwnL','zNjVBq','zMLSDgvY','ndi4nZGZmhbKweLUBG','nJu4odvJq0T3r1C','B25ozxDqywDL','D2fPDezVCLvYBa','y29UDgv4Dhm','zg91yMXLq2XPy2S','y291BNq','DxbSB2fKrMLSzq','CgfNzsbPBMrLEcbVDxqGB2yGCMfUz2u','C2vSzwn0t3b0Aw9U','y29UBMvJDfnOyxjLza','y29UC29SzuvUDhjPzxm','Bgf1BMnOzwq','yxr0ywnOrxHPC3rPBMC','mtCZotC4otDeD0rbqwe','CMvJB3jKzxi','D2fPDezVCLrLEhq','ywn0AxzLugfNzq','Aw5PDgLHBfvYBa','AxnwAxnPyMXL','z290BW','CgfNzuXPC3q','Bg9JywXtDg9YywDL','zhjHz0fUzerYB3a','ChvZAa','y2XPCgjVyxjKugfZDgu','yxr0CMLIDxrLC0j5rgvMyxvSDa','zMfRzsb0AxrSzq','z29gB3j3yxjK','Bwf5yMvuAhjVDW','B25bzNrLCKnSAwnR','D2fPDezVCKXVywrtDgf0zq','CMvM','BgvUz3rO','BMv3q29UDgv4Da','mJG0nti5mKLHuuLgrG','z2v0qxr0CMLIDxrL','C2nVCgu','DgL0Bgu','zhjPDMvY','CMvJB3jK','zMLSBa','Bg9JywXtDg9YywDLu3rHDgu','mZy2CKvAA1j6','mJGYoteXm2Xjshz2uq','Bwv0Ag9K','odm4nZaXvK9LDgTZ','z2v0q29VA2LL','y2HLy2TLzfn0yxrL','C2v0qwn0AxzLugfNzq','Aw5WDxrwywX1zuj5rgvMyxvSDa','C3vIC2nYAwjL','rMfRzvbHz2u','zNjHBwvezxb0Aa','mty4mZCWCMLdy1PS','y3r4','y29VA2LLCW','y3vYCMvUDfvYBa','mKnhAfnRCG','y2HLy2S','zw1PDezHA2vqB3b1Ca','ywrK','D2fPDezVCK5HDMLNyxrPB24','ChjLC3m','y2XPy2S','Dgv4DenVBNrLBNq','A2LUza','y29VA2LLu3rHDgu','C3rLChm','zxjYB3jpBK5LEhrby3rPB24','Cg9WDxbpBKnSAwnR','Aw5WDxrwywX1zq','CMvSB2fK','Ag92zxi','C2nYzwvUC2HVDa','mtzfD2nvAxa','z2v0tg9JywXtDg9YywDL','C2nYB2XSsw50B1zPzxC','B3v0zxjiDg1SqNLszwy','Cg9W','y2XVC2u','tg9JyxrVCKvYCM9Y','iJ48l2rPDJ4','BMv3q29UDgv4DcbJywXSzwqGyMvMB3jLigXHDw5JAcGP','y2XVC2vgywTLugfNzq','C2f2zvn0B3jHz2vtDgf0zq','zxzHBhvHDgvpBKXVy2f0B3i','zxHPDezYyw1LignHBgXLzcb3AxrOig5VigzYyw1Lig9UihrOzsbZDgfJAW','AxnwAxnPyMXLqNLezwzHDwX0','Bgf1BMnO','m0XLyvrjrW'];_0x45fb=function(){return _0x50fa85;};return _0x45fb();}__name(subscribe,_0x35457f(0xe1));import{UnotestError}from'@unotest/core';var DriverError=class extends UnotestError{static{__name(this,'DriverError');}},LocatorError=class extends UnotestError{static{__name(this,_0x35457f(0xff));}};function createRecorder(){const _0x12c95c={_0x5b7e41:0xc6},_0x7590ef=_0x35457f,_0x528c7a=[];let _0x2b94e7=0x0;return{'push':__name(_0x499186=>_0x528c7a['push']({..._0x499186,'seq':_0x2b94e7++}),_0x7590ef(_0x12c95c._0x5b7e41)),'calls':__name(()=>_0x528c7a,'calls')};}function _0x1ef7(_0x9e1619,_0x452e3a){_0x9e1619=_0x9e1619-0xa1;const _0x45fb39=_0x45fb();let _0x1ef74b=_0x45fb39[_0x9e1619];if(_0x1ef7['QGeDcl']===undefined){var _0x45a7ee=function(_0x158ce8){const _0x43c3ce='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x167943='',_0x12d57c='';for(let _0x508764=0x0,_0x4e7111,_0x528c7a,_0x2b94e7=0x0;_0x528c7a=_0x158ce8['charAt'](_0x2b94e7++);~_0x528c7a&&(_0x4e7111=_0x508764%0x4?_0x4e7111*0x40+_0x528c7a:_0x528c7a,_0x508764++%0x4)?_0x167943+=String['fromCharCode'](0xff&_0x4e7111>>(-0x2*_0x508764&0x6)):0x0){_0x528c7a=_0x43c3ce['indexOf'](_0x528c7a);}for(let _0x499186=0x0,_0x56b2d0=_0x167943['length'];_0x499186<_0x56b2d0;_0x499186++){_0x12d57c+='%'+('00'+_0x167943['charCodeAt'](_0x499186)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12d57c);};_0x1ef7['fuZTdg']=_0x45a7ee,_0x1ef7['TnibdO']={},_0x1ef7['QGeDcl']=!![];}const _0x22954d=_0x45fb39[0x0],_0x3db68d=_0x9e1619+_0x22954d,_0x14ac4c=_0x1ef7['TnibdO'][_0x3db68d];return!_0x14ac4c?(_0x1ef74b=_0x1ef7['fuZTdg'](_0x1ef74b),_0x1ef7['TnibdO'][_0x3db68d]=_0x1ef74b):_0x1ef74b=_0x14ac4c,_0x1ef74b;}__name(createRecorder,_0x35457f(0xa6));var FakePage=class{constructor(_0x56b2d0,_0x1fbb6d,_0x5e5b9a,_0x57bc5d){const _0x3d015e={_0x10a6b2:0xbd},_0x25740c=_0x35457f;this[_0x25740c(_0x3d015e._0x10a6b2)]=_0x56b2d0,this[_0x25740c(0xa9)]=_0x1fbb6d,this[_0x25740c(0xd3)]=_0x5e5b9a,this['currentUrl']=_0x57bc5d;}[_0x35457f(0xbd)];[_0x35457f(0xa9)];['scope'];static{__name(this,_0x35457f(0xe2));}[_0x35457f(0xe7)];['onAfterClick'];['record'](_0x30ca8f,_0x2cb6f7){const _0xfe4f95={_0x1ebc9f:0xc6,_0x264051:0xd3},_0x34aa36=_0x35457f;this['recorder'][_0x34aa36(_0xfe4f95._0x1ebc9f)]({'scope':this[_0x34aa36(_0xfe4f95._0x264051)],'method':_0x30ca8f,'args':_0x2cb6f7});}[_0x35457f(0xcb)](){const _0x31e47b={_0x2182d9:0xa9,_0x343a63:0xf3,_0x1b5f12:0xa9,_0x3c3082:0xa9},_0x14dff7=_0x35457f;if(this[_0x14dff7(_0x31e47b._0x2182d9)][_0x14dff7(_0x31e47b._0x343a63)]){const _0x2f8931=this[_0x14dff7(_0x31e47b._0x1b5f12)][_0x14dff7(_0x31e47b._0x343a63)];this[_0x14dff7(_0x31e47b._0x3c3082)][_0x14dff7(0xf3)]=void 0x0;throw _0x2f8931;}}[_0x35457f(0xa5)](){const _0x14a01f={_0x20887b:0xe7},_0xd0877=_0x35457f;return this[_0xd0877(_0x14a01f._0x20887b)];}async[_0x35457f(0xd4)](){const _0x24fa28={_0x247106:0xd6},_0x3e812e=_0x35457f;return this[_0x3e812e(_0x24fa28._0x247106)]('title',[]),_0x3e812e(0xc9);}async[_0x35457f(0xee)](_0x10aa2a,_0x39ed17){const _0x5167ae={_0x5714c5:0xd6,_0x552564:0xee},_0x570a8c=_0x35457f;this[_0x570a8c(_0x5167ae._0x5714c5)](_0x570a8c(_0x5167ae._0x552564),[_0x10aa2a,_0x39ed17]),this['maybeThrow'](),this[_0x570a8c(0xcc)]?.();}async[_0x35457f(0xb3)](_0xf90bfd,_0x499bbf){this['record']('doubleClick',[_0xf90bfd,_0x499bbf]),this['maybeThrow']();}async[_0x35457f(0xd7)](_0x17bb7d,_0x214126,_0x1d0381){const _0x459c0a={_0x19141d:0xd6,_0x281f04:0xd7},_0x826943=_0x35457f;this[_0x826943(_0x459c0a._0x19141d)](_0x826943(_0x459c0a._0x281f04),[_0x17bb7d,_0x214126,_0x1d0381]),this[_0x826943(0xcb)]();}async[_0x35457f(0xed)](_0x2c1107,_0x604f39,_0x1e04e7){const _0x5c8af2={_0x44a49e:0xd6,_0x259887:0xed},_0x2b3716=_0x35457f;this[_0x2b3716(_0x5c8af2._0x44a49e)](_0x2b3716(_0x5c8af2._0x259887),[_0x2c1107,_0x604f39,_0x1e04e7]),this['maybeThrow']();}async[_0x35457f(0xe9)](_0x26a176,_0x13c482){const _0x522cb2={_0x427920:0xcb},_0x4238ef=_0x35457f;this[_0x4238ef(0xd6)]('check',[_0x26a176,_0x13c482]),this[_0x4238ef(_0x522cb2._0x427920)]();}async[_0x35457f(0x10b)](_0x89cad1,_0x25c4ce){const _0x29d536={_0x25c10f:0xd6},_0xe878bd=_0x35457f;this[_0xe878bd(_0x29d536._0x25c10f)]('uncheck',[_0x89cad1,_0x25c4ce]),this['maybeThrow']();}async[_0x35457f(0xb7)](_0x3dadf0,_0x24ceff,_0x26c4ab){const _0x548b75={_0x3c8e9b:0xd6},_0x28d6e6=_0x35457f;this[_0x28d6e6(_0x548b75._0x3c8e9b)](_0x28d6e6(0xb7),[_0x3dadf0,_0x24ceff,_0x26c4ab]),this['maybeThrow']();}async[_0x35457f(0xf7)](_0x3afe96,_0xa6fc52){const _0x1eaf0c=_0x35457f;this[_0x1eaf0c(0xd6)](_0x1eaf0c(0xf7),[_0x3afe96,_0xa6fc52]),this['maybeThrow']();}async[_0x35457f(0xfb)](_0xbb3c55){const _0x56c4ee={_0xfaf2fb:0xd6},_0x598b9c=_0x35457f;this[_0x598b9c(_0x56c4ee._0xfaf2fb)](_0x598b9c(0xfb),[_0xbb3c55]),this[_0x598b9c(0xcb)]();}async[_0x35457f(0xc5)](_0x27c67d,_0x350c7a,_0xbe0c68){const _0x236555={_0x32e349:0xd6,_0x375e64:0xcb},_0x4a6dab=_0x35457f;this[_0x4a6dab(_0x236555._0x32e349)]('dragAndDrop',[_0x27c67d,_0x350c7a,_0xbe0c68]),this[_0x4a6dab(_0x236555._0x375e64)]();}async[_0x35457f(0xb5)](_0x58f12f,_0x27be9d){const _0x42a292={_0x2f7075:0xb5,_0x4707fe:0xcb},_0xe513ef=_0x35457f;this[_0xe513ef(0xd6)](_0xe513ef(_0x42a292._0x2f7075),[_0x58f12f,_0x27be9d]),this[_0xe513ef(_0x42a292._0x4707fe)]();}async[_0x35457f(0xc7)](_0xd0bfa1,_0x305478){const _0x1e4bfc={_0x5d71d4:0xd6},_0x55093f=_0x35457f;this[_0x55093f(_0x1e4bfc._0x5d71d4)](_0x55093f(0xc7),[_0xd0bfa1,_0x305478]),this[_0x55093f(0xcb)]();}async[_0x35457f(0xb4)](_0x7b1ed3){const _0x308d9f={_0x45580d:0xd6,_0x4d94f9:0xa9},_0x41ebd5=_0x35457f;return this[_0x41ebd5(_0x308d9f._0x45580d)]('count',[_0x7b1ed3]),this[_0x41ebd5(_0x308d9f._0x4d94f9)]['countByDefault']??0x1;}async['textContent'](_0x582e4f){const _0x1cdbef={_0x21b141:0xef},_0x33631a=_0x35457f;return this['record'](_0x33631a(_0x1cdbef._0x21b141),[_0x582e4f]),this['behavior']['textContentByDefault']??'';}async[_0x35457f(0xf5)](_0x1f1cbc){const _0x60ae35={_0x570fdb:0xd6,_0x140f91:0xa9,_0x1a6d0d:0xe0},_0x22be87=_0x35457f;return this[_0x22be87(_0x60ae35._0x570fdb)]('inputValue',[_0x1f1cbc]),this[_0x22be87(_0x60ae35._0x140f91)][_0x22be87(_0x60ae35._0x1a6d0d)]??'';}async[_0x35457f(0xde)](_0x5e24e4){const _0x10e6a9={_0x30191b:0xa7},_0x286374=_0x35457f;return this['record']('checkedState',[_0x5e24e4]),this[_0x286374(0xa9)][_0x286374(_0x10e6a9._0x30191b)]??null;}async[_0x35457f(0xc1)](_0xc880dd){const _0x213d4d={_0x14e8de:0xd6,_0x4ca968:0xc1,_0x1058d9:0xa9,_0xfa9037:0x106},_0x2a01ba=_0x35457f;return this[_0x2a01ba(_0x213d4d._0x14e8de)](_0x2a01ba(_0x213d4d._0x4ca968),[_0xc880dd]),this[_0x2a01ba(_0x213d4d._0x1058d9)][_0x2a01ba(_0x213d4d._0xfa9037)]??!![];}async['isDisabled'](_0x574c80){const _0x530cb1={_0x1ed51c:0xd6},_0x593e89=_0x35457f;return this[_0x593e89(_0x530cb1._0x1ed51c)]('isDisabled',[_0x574c80]),this[_0x593e89(0xa9)][_0x593e89(0x109)]??![];}async['getAttribute'](_0x24a072,_0x19d815){const _0x20c74a={_0x51e3f7:0xd6,_0xee9d47:0xd2,_0x44891a:0xa9},_0x2fa332=_0x35457f;return this[_0x2fa332(_0x20c74a._0x51e3f7)](_0x2fa332(_0x20c74a._0xee9d47),[_0x24a072,_0x19d815]),this[_0x2fa332(_0x20c74a._0x44891a)][_0x2fa332(0xc8)]?.[_0x19d815]??null;}async['waitFor'](_0x4f563e,_0x2293c8){const _0x260365={_0x58b377:0xaa},_0x36457e=_0x35457f;this[_0x36457e(0xd6)](_0x36457e(_0x260365._0x58b377),[_0x4f563e,_0x2293c8]);}async[_0x35457f(0xb1)](_0x3bdf4e,_0x5412fc){const _0x4cb7db={_0xddfb9a:0xb1},_0x186f3a=_0x35457f;this[_0x186f3a(0xd6)](_0x186f3a(_0x4cb7db._0xddfb9a),[_0x3bdf4e,_0x5412fc]);}async[_0x35457f(0xbe)](_0x1c9ea1,_0x1110ea){const _0x19ea37={_0x49a5df:0xd6},_0x27baaf=_0x35457f;this[_0x27baaf(_0x19ea37._0x49a5df)]('waitForText',[_0x1c9ea1,_0x1110ea]);}async[_0x35457f(0xec)](_0x5277b7){const _0x1351a0={_0x5877a4:0xec},_0x4bc318=_0x35457f;this['record'](_0x4bc318(_0x1351a0._0x5877a4),[_0x5277b7]);}async[_0x35457f(0xcd)](_0x19b980,_0xac0995){const _0x145b16={_0x30da52:0xd6},_0x4aeba2=_0x35457f;this[_0x4aeba2(_0x145b16._0x30da52)](_0x4aeba2(0xcd),[_0x19b980,_0xac0995]);}async[_0x35457f(0xc2)](_0x23fefc,_0x302c04){const _0x40e834={_0x5786ea:0xd6,_0x180cde:0xe7},_0x18bdbd=_0x35457f;this[_0x18bdbd(_0x40e834._0x5786ea)]('goto',[_0x23fefc,_0x302c04]),this[_0x18bdbd(_0x40e834._0x180cde)]=_0x23fefc;}async[_0x35457f(0xf6)](_0x2c758a){const _0x17d6e2=_0x35457f;this[_0x17d6e2(0xd6)]('reload',[_0x2c758a]);}async[_0x35457f(0x113)](_0x357b3d){const _0x59a41f={_0x5d3d8a:0xd6},_0x29d6a1=_0x35457f;this[_0x29d6a1(_0x59a41f._0x5d3d8a)]('goBack',[_0x357b3d]);}async['goForward'](_0x53410d){const _0x37bec9={_0x3d25e9:0xca},_0x56896d=_0x35457f;this[_0x56896d(0xd6)](_0x56896d(_0x37bec9._0x3d25e9),[_0x53410d]);}async[_0x35457f(0xa4)](_0x203567){const _0x2c8690={_0x5c3271:0xd6,_0xe377:0xa4},_0x572e35=_0x35457f;return this[_0x572e35(_0x2c8690._0x5c3271)](_0x572e35(_0x2c8690._0xe377),[_0x203567]),void 0x0;}async[_0x35457f(0x104)](_0x4be6d1,_0x57aac1){const _0x3226cb={_0x549265:0xd6},_0x50b13a=_0x35457f;return this[_0x50b13a(_0x3226cb._0x549265)](_0x50b13a(0x104),[_0x4be6d1,_0x57aac1]),void 0x0;}async[_0x35457f(0x10a)](_0x48f1b9){const _0x551552={_0x37ca34:0xd6,_0x173c18:0x10a,_0x48a900:0xcf,_0x1ebef6:0xf0,_0x307442:0xce,_0x566d1c:0xa9,_0x5d840a:0xa3},_0x768646=_0x35457f;this[_0x768646(_0x551552._0x37ca34)](_0x768646(_0x551552._0x173c18),[_0x48f1b9]);if(_0x48f1b9['steps'][_0x768646(_0x551552._0x48a900)]!==0x1||_0x48f1b9['steps'][0x0][_0x768646(_0x551552._0x1ebef6)]!==_0x768646(_0x551552._0x307442))return null;const _0x31b15e=_0x48f1b9[_0x768646(0xf2)][0x0]['ref'],_0x1bb107=this[_0x768646(_0x551552._0x566d1c)][_0x768646(_0x551552._0x5d840a)]?.[_0x31b15e];return _0x1bb107??null;}async[_0x35457f(0xf8)](_0x32022b){const _0x50ad0d={_0x1e4dd4:0xac},_0x26a9a9=_0x35457f;return this[_0x26a9a9(0xd6)](_0x26a9a9(0xf8),[_0x32022b]),Buffer[_0x26a9a9(_0x50ad0d._0x1e4dd4)]('fake-png');}async[_0x35457f(0x117)](_0x394f37){const _0x451d23={_0x133f5:0xf2,_0x2f52e9:0xf0,_0x2801e5:0xce,_0x5164c3:0xfc,_0x461cc1:0x100},_0x1613de=_0x35457f;this[_0x1613de(0xd6)](_0x1613de(0x117),[_0x394f37]);if(_0x394f37[_0x1613de(_0x451d23._0x133f5)]['length']===0x1&&_0x394f37[_0x1613de(0xf2)][0x0][_0x1613de(_0x451d23._0x2f52e9)]===_0x1613de(_0x451d23._0x2801e5)){const _0x3234e2=_0x394f37['steps'][0x0]['ref'];return this['behavior'][_0x1613de(_0x451d23._0x5164c3)]?.[_0x3234e2]??_0x1613de(0xa1)+_0x3234e2+_0x1613de(_0x451d23._0x461cc1);}return _0x1613de(0x10c);}},FakeContext=class{constructor(_0x30c621,_0x5c1adf,_0x3f61ee){const _0x3c5b25={_0x2cec9a:0xbd,_0x5954cc:0xc0,_0x1943b1:0xd8},_0x8972c5=_0x35457f;this[_0x8972c5(_0x3c5b25._0x2cec9a)]=_0x30c621,this['behavior']=_0x5c1adf,this['scope']=_0x3f61ee;const _0x14749f=new FakePage(_0x30c621,_0x5c1adf,_0x3f61ee+_0x8972c5(0x10d),_0x5c1adf[_0x8972c5(_0x3c5b25._0x5954cc)]??'about:blank');_0x5c1adf[_0x8972c5(0xf4)]&&(_0x14749f[_0x8972c5(0xcc)]=()=>{const _0xbf6516=_0x8972c5;this['emitFakePopup'](_0x5c1adf[_0xbf6516(0xf4)]);}),this[_0x8972c5(0xc3)]=[_0x14749f],this[_0x8972c5(_0x3c5b25._0x1943b1)]={..._0x5c1adf[_0x8972c5(0xc4)]??{}},this[_0x8972c5(0xf1)]={..._0x5c1adf[_0x8972c5(0xe6)]??{}};}[_0x35457f(0xbd)];[_0x35457f(0xa9)];['scope'];static{__name(this,'FakeContext');}[_0x35457f(0xc3)];[_0x35457f(0x114)]=0x0;[_0x35457f(0x10f)]=[];[_0x35457f(0xd8)];[_0x35457f(0xf1)];[_0x35457f(0xa8)]=new Set();['record'](_0x470e0e,_0x592c4a){const _0x643acc={_0x111260:0xc6,_0x4908c6:0xd3},_0x3255cf=_0x35457f;this[_0x3255cf(0xbd)][_0x3255cf(_0x643acc._0x111260)]({'scope':this[_0x3255cf(_0x643acc._0x4908c6)],'method':_0x470e0e,'args':_0x592c4a});}['pages'](){return this['pageList'];}[_0x35457f(0xbf)](){const _0x2db682={_0x454a85:0x114},_0x192c58=_0x35457f,_0x220ae8=this[_0x192c58(0xc3)][this[_0x192c58(_0x2db682._0x454a85)]];if(!_0x220ae8)throw new DriverError('no\x20active\x20page\x20in\x20context',{'activeIdx':this['activeIdx']});return _0x220ae8;}[_0x35457f(0xb9)](){const _0x87a30b={_0x41a64f:0xb9},_0x14f00e=_0x35457f;return this[_0x14f00e(0xa9)][_0x14f00e(_0x87a30b._0x41a64f)]??[];}[_0x35457f(0x115)](){const _0x240e09=_0x35457f;return this['behavior'][_0x240e09(0x115)]??[];}async[_0x35457f(0xdf)](_0xe4f38f){const _0x5a8452={_0x13a2a0:0xd6,_0x62a955:0xdf,_0x2e8c6a:0x114,_0x3e4cf8:0x10f,_0x4d0b3c:0xcf},_0x5a194e=_0x35457f;this[_0x5a194e(_0x5a8452._0x13a2a0)](_0x5a194e(_0x5a8452._0x62a955),[_0xe4f38f]);if(_0xe4f38f<0x0||_0xe4f38f>=this[_0x5a194e(0xc3)][_0x5a194e(0xcf)])throw new DriverError(_0x5a194e(0xb6),{'index':_0xe4f38f,'available':this[_0x5a194e(0xc3)][_0x5a194e(0xcf)]});this[_0x5a194e(_0x5a8452._0x2e8c6a)]=_0xe4f38f,this[_0x5a194e(_0x5a8452._0x3e4cf8)][_0x5a194e(_0x5a8452._0x4d0b3c)]=0x0;}[_0x35457f(0xb0)](_0x4b3d81){const _0x24c036={_0x555ccc:0xa8},_0x26ed8d=_0x35457f;return subscribe(this[_0x26ed8d(_0x24c036._0x555ccc)],_0x4b3d81);}[_0x35457f(0xea)](_0x24bf7a){const _0x33d4a3={_0x4dc0b4:0x10e,_0x50f1e1:0xc3,_0x23ce15:0xcf,_0x50ef5d:0xa8},_0x43339c=_0x35457f,_0x241622=this[_0x43339c(0xd3)]+_0x43339c(_0x33d4a3._0x4dc0b4)+this[_0x43339c(_0x33d4a3._0x50f1e1)][_0x43339c(0xcf)],_0x42d655=new FakePage(this[_0x43339c(0xbd)],this['behavior'],_0x241622,_0x24bf7a);this[_0x43339c(_0x33d4a3._0x50f1e1)]['push'](_0x42d655);const _0x20bf5b=this['pageList'][_0x43339c(_0x33d4a3._0x23ce15)]-0x1;for(const _0x297844 of this[_0x43339c(_0x33d4a3._0x50ef5d)]){try{_0x297844({'index':_0x20bf5b,'url':_0x24bf7a});}catch{}}return _0x20bf5b;}[_0x35457f(0x102)](_0x20d14a){const _0x2f9076={_0x1453e9:0xcf},_0x349fbe=_0x35457f;if(_0x20d14a<0x0||_0x20d14a>=this['pageList']['length'])throw new DriverError(_0x349fbe(0xb6),{'index':_0x20d14a,'available':this[_0x349fbe(0xc3)][_0x349fbe(_0x2f9076._0x1453e9)]});this['pageList'][_0x349fbe(0xab)](_0x20d14a,0x1);}async['enterFrame'](_0xd144b3){const _0x156936={_0x298091:0xd6},_0x2b213d=_0x35457f;this[_0x2b213d(_0x156936._0x298091)]('enterFrame',[_0xd144b3]);if(!_0xd144b3[_0x2b213d(0xf2)][_0x2b213d(0xcf)])throw new LocatorError('enterFrame\x20called\x20with\x20empty\x20locator',{'locator':_0xd144b3});this['frameStack']['push'](_0xd144b3);}async[_0x35457f(0x118)](){const _0xa789e5={_0x585d16:0x118,_0x349c2a:0x10f},_0x28dcb1=_0x35457f;this['record'](_0x28dcb1(_0xa789e5._0x585d16),[]);if(this[_0x28dcb1(0x10f)][_0x28dcb1(0xcf)]===0x0)throw new DriverError(_0x28dcb1(0x105),{});this[_0x28dcb1(_0xa789e5._0x349c2a)][_0x28dcb1(0xfd)]();}async[_0x35457f(0x111)](_0x4b499f,_0xb7544){const _0x5a220f={_0x120d09:0xd8},_0x1b41b7=_0x35457f;this[_0x1b41b7(0xd6)](_0x1b41b7(0x111),[_0x4b499f,_0xb7544]),this[_0x1b41b7(_0x5a220f._0x120d09)][_0x4b499f]=_0xb7544;}async['getLocalStorage'](_0x4d0bd8){const _0x5dffd9={_0x56f247:0xfa,_0x2a8bc0:0xd8},_0x1a7d08=_0x35457f;return this[_0x1a7d08(0xd6)](_0x1a7d08(_0x5dffd9._0x56f247),[_0x4d0bd8]),this[_0x1a7d08(_0x5dffd9._0x2a8bc0)][_0x4d0bd8]??null;}async[_0x35457f(0x110)](_0x571561,_0x565a6e,_0x7cef8){const _0x25bc4a={_0x536a64:0xf1},_0x1efd6b=_0x35457f;this[_0x1efd6b(0xd6)](_0x1efd6b(0x110),[_0x571561,_0x565a6e,_0x7cef8]),this[_0x1efd6b(_0x25bc4a._0x536a64)][_0x571561]=_0x565a6e;}async[_0x35457f(0xdd)](_0x5b5595){const _0x51edf3={_0x4f0b32:0xd6},_0x570008=_0x35457f;return this[_0x570008(_0x51edf3._0x4f0b32)](_0x570008(0xdd),[_0x5b5595]),this[_0x570008(0xf1)][_0x5b5595]??null;}async[_0x35457f(0x103)](_0x2c4e9b){const _0x14b96f=_0x35457f;this['record'](_0x14b96f(0x103),[_0x2c4e9b]);}async[_0x35457f(0xa4)](_0x3cdcd0){const _0x3aa4fa=_0x35457f;return this['record'](_0x3aa4fa(0xa4),[_0x3cdcd0]),void 0x0;}async[_0x35457f(0xfe)](){const _0x4b96e7={_0x3bff27:0xd6,_0x5afaf8:0xfe},_0x4274d3=_0x35457f;this[_0x4274d3(_0x4b96e7._0x3bff27)](_0x4274d3(_0x4b96e7._0x5afaf8),[]);}[_0x35457f(0xe3)](){const _0x2fbefe=_0x35457f;return this[_0x2fbefe(0x10f)]['length'];}},FakeWebDriver=class{constructor(_0xbe61b2={}){this['behavior']=_0xbe61b2,this['recorder']=createRecorder();}[_0x35457f(0xa9)];static{__name(this,'FakeWebDriver');}['launched']=![];[_0x35457f(0xbd)];[_0x35457f(0xb2)]=[];async[_0x35457f(0x107)](_0x59b795){const _0x230219={_0x1229d7:0x107},_0x29e960=_0x35457f;this[_0x29e960(0xbd)][_0x29e960(0xc6)]({'scope':'driver','method':_0x29e960(_0x230219._0x1229d7),'args':[_0x59b795]}),this[_0x29e960(0xba)]=!![];}async['newContext'](_0xedfb76){const _0x520b71={_0x539ec9:0x101,_0x1b8c04:0xb2,_0x35eff8:0xc6},_0x276e8d=_0x35457f;this['recorder'][_0x276e8d(0xc6)]({'scope':'driver','method':_0x276e8d(0xd0),'args':[_0xedfb76]});if(!this['launched'])throw new DriverError(_0x276e8d(_0x520b71._0x539ec9),{});const _0x275552=new FakeContext(this[_0x276e8d(0xbd)],this[_0x276e8d(0xa9)],_0x276e8d(0xe5)+this['contexts'][_0x276e8d(0xcf)]);return this[_0x276e8d(_0x520b71._0x1b8c04)][_0x276e8d(_0x520b71._0x35eff8)](_0x275552),_0x275552;}async[_0x35457f(0xfe)](){const _0x214547={_0x455cce:0xbd,_0x3623af:0xd5,_0x13df0a:0xba},_0xd8ac02=_0x35457f;this[_0xd8ac02(_0x214547._0x455cce)][_0xd8ac02(0xc6)]({'scope':_0xd8ac02(_0x214547._0x3623af),'method':_0xd8ac02(0xfe),'args':[]}),this[_0xd8ac02(_0x214547._0x13df0a)]=![];}[_0x35457f(0x112)](){return void 0x0;}async[_0x35457f(0xb8)](){throw new DriverError('connectShared\x20not\x20supported\x20by\x20FakeWebDriver',{});}[_0x35457f(0xbb)](){const _0x59a110={_0x3d3c49:0x116},_0x378e9a=_0x35457f;throw new DriverError(_0x378e9a(_0x59a110._0x3d3c49),{});}[_0x35457f(0xa2)](){const _0x3be858={_0x9458db:0xa2},_0x1776cd=_0x35457f;return this[_0x1776cd(0xbd)][_0x1776cd(_0x3be858._0x9458db)]();}['callsFor'](_0x5c14b7){const _0x5b83d2=_0x35457f;return this['recorder'][_0x5b83d2(0xa2)]()[_0x5b83d2(0xad)](_0x1ef49a=>_0x1ef49a[_0x5b83d2(0xdb)]===_0x5c14b7);}};export{FakeWebDriver};
1
+ const _0x2c3ac0=_0x561f;(function(_0x337cf5,_0xdc7271){const _0x143fde={_0x360ea6:0x191,_0x392592:0x14c,_0x46b261:0x1a3,_0x31b62f:0x1a4,_0x5ca20f:0x188},_0x4c36f7=_0x561f,_0x95e2b9=_0x337cf5();while(!![]){try{const _0x29a8e7=-parseInt(_0x4c36f7(_0x143fde._0x360ea6))/0x1*(-parseInt(_0x4c36f7(0x17d))/0x2)+-parseInt(_0x4c36f7(_0x143fde._0x392592))/0x3+parseInt(_0x4c36f7(0x170))/0x4*(parseInt(_0x4c36f7(_0x143fde._0x46b261))/0x5)+parseInt(_0x4c36f7(0x19c))/0x6+parseInt(_0x4c36f7(0x135))/0x7*(parseInt(_0x4c36f7(_0x143fde._0x31b62f))/0x8)+parseInt(_0x4c36f7(_0x143fde._0x5ca20f))/0x9*(parseInt(_0x4c36f7(0x169))/0xa)+-parseInt(_0x4c36f7(0x13d))/0xb;if(_0x29a8e7===_0xdc7271)break;else _0x95e2b9['push'](_0x95e2b9['shift']());}catch(_0x5a6926){_0x95e2b9['push'](_0x95e2b9['shift']());}}}(_0x16c1,0xa88a5));var __defProp=Object[_0x2c3ac0(0x18e)],__name=(_0x988574,_0x3cc0b3)=>__defProp(_0x988574,_0x2c3ac0(0x14a),{'value':_0x3cc0b3,'configurable':!![]});function subscribe(_0x31f671,_0x38178e){const _0x5eefba={_0x3d5e29:0x143},_0x34f4fd=_0x2c3ac0;return _0x31f671[_0x34f4fd(_0x5eefba._0x3d5e29)](_0x38178e),()=>{const _0x371216=_0x34f4fd;_0x31f671[_0x371216(0x16c)](_0x38178e);};}__name(subscribe,_0x2c3ac0(0x1a0));function _0x561f(_0x37fada,_0x46b0b6){_0x37fada=_0x37fada-0x12b;const _0x16c15c=_0x16c1();let _0x561fb6=_0x16c15c[_0x37fada];if(_0x561f['IeSitP']===undefined){var _0x24bea4=function(_0xb8518b){const _0x4252a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x988574='',_0x3cc0b3='';for(let _0x31f671=0x0,_0x38178e,_0x351ecc,_0x14e6cf=0x0;_0x351ecc=_0xb8518b['charAt'](_0x14e6cf++);~_0x351ecc&&(_0x38178e=_0x31f671%0x4?_0x38178e*0x40+_0x351ecc:_0x351ecc,_0x31f671++%0x4)?_0x988574+=String['fromCharCode'](0xff&_0x38178e>>(-0x2*_0x31f671&0x6)):0x0){_0x351ecc=_0x4252a1['indexOf'](_0x351ecc);}for(let _0x121a1b=0x0,_0x530251=_0x988574['length'];_0x121a1b<_0x530251;_0x121a1b++){_0x3cc0b3+='%'+('00'+_0x988574['charCodeAt'](_0x121a1b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3cc0b3);};_0x561f['DwlsTr']=_0x24bea4,_0x561f['eJvLZu']={},_0x561f['IeSitP']=!![];}const _0x10cb7b=_0x16c15c[0x0],_0x29bf09=_0x37fada+_0x10cb7b,_0x16b210=_0x561f['eJvLZu'][_0x29bf09];return!_0x16b210?(_0x561fb6=_0x561f['DwlsTr'](_0x561fb6),_0x561f['eJvLZu'][_0x29bf09]=_0x561fb6):_0x561fb6=_0x16b210,_0x561fb6;}import{UnotestError}from'@unotest/core';function _0x16c1(){const _0x5c5317=['D2fPDezVCLrLEhq','Aw5WDxrwywX1zq','ChvZAa','Dgv4DenVBNrLBNrcEurLzMf1Bhq','ntGXB0TSA1vQ','D2fPDezVCLvYBa','z29cywnR','BMv3q29UDgv4DcbJywXSzwqGyMvMB3jLigXHDw5JAcGP','CgfNzsbPBMrLEcbVDxqGB2yGCMfUz2u','zg91yMXLq2XPy2S','iJ48l2rPDJ4','tg9JyxrVCKvYCM9Y','mZmYotm0otfuvMvKr0W','yxr0CMLIDxrLC0j5rgvMyxvSDa','zMfRzs1WBMC','zhjPDMvY','y2XPy2S','CgfNzxm','ywrK','zxHPDezYyw1L','zxHPDezYyw1LignHBgXLzcb3AxrOig5VigzYyw1Lig9UihrOzsbZDgfJAW','rMfRzunVBNrLEhq','Bwf5yMvuAhjVDW','C2vSzwn0t3b0Aw9U','ywn0AxzLswr4','BMfTzq','y2HLy2S','nZmYmteXt0Dyu29W','zw50zxjgCMfTzq','BgvUz3rO','B25bzNrLCKnSAwnR','AxneAxnHyMXLza','y2HLy2TLzfn0yxrL','D2fPDezVCG','z29gB3j3yxjK','y291BNrcEurLzMf1Bhq','zNjHBwvtDgfJAW','y3vYCMvUDfvYBa','AxnwAxnPyMXLqNLezwzHDwX0','z2v0qxr0CMLIDxrL','y29VA2LLCW','y2fSBhm','Cg9WDxbpBKnSAwnR','Bwv0Ag9K','z2v0q29VA2LL','C2v0q29VA2LL','Aw5WDxrwywX1zuj5rgvMyxvSDa','zxjYB3jpBK5LEhrby3rPB24','DgL0Bgu','zMfRzsb0AxrSzq','y29UDgv4Dhm','CMvSB2fK','z2v0tg9JywXtDg9YywDL','y29UC29SzuvUDhjPzxm','C3rLChm','Dgv4DenVBNrLBNq','mZaWBeTLzM5o','y2XVC2vgywTLugfNzq','B3v0zxjive1m','zgvSzxrL','ChjLC3m','y3r4','yxr0ywnOrxHPC3rPBMC','mtC4odqYoer6u3rVsG','C2nYB2XSsw50B1zPzxC','y29UBMvJDfnOyxjLzcbUB3qGC3vWCg9YDgvKigj5iezHA2vxzwjeCML2zxi','C2nVCgu','zw1PDezHA2vqB3b1Ca','ywn0AxzLugfNzq','Ag92zxi','CMvJB3jK','zwXLBwvUDeHPBNrcEvjLzG','Bgf1BMnO','A2LUza','zMLSBa','zxzHBhvHDgu','mta1ody2wen6qwXg','Dw5JAgvJAW','z290BW','zNjHBwvezxb0Aa','AxneAxnHyMXLzej5rgvMyxvSDa','y3jLyxrLuMvJB3jKzxi','C2v0qwn0AxzLugfNzq','y2HLy2TLzfn0yxrLqNLezwzHDwX0','CMvM','yMvOyxzPB3i','pgrPDIbKyxrHlxvUB3rLC3qTCMvMpsi','mtK3mZyXA1jMqxPw','Cg9W','zxzHBhvHDgvpBKXVy2f0B3i','CgfNzuXPC3q','y291BNq','rhjPDMvYrxjYB3i','zgvMAw5LuhjVCgvYDhK','rMfRzvbHz2u','DxbSB2fKrMLSzq','mNPdreHtuW','y29UBMvJDfnOyxjLza','Bg9JywXtDg9YywDLu3rHDgu','zMLSDgvY','y29VA2LLu3rHDgu','BM8Gywn0AxzLihbHz2uGAw4Gy29UDgv4Da','BMv3q29UDgv4Da','D2fPDezVCKXVywrtDgf0zq','BMv3ugfNzuXPC3rLBMvYCW','D2fPDezVCK5HDMLNyxrPB24','y2XVC2u','mZGXntKXmhvNquPpAW','lNbHz2uW','Bg9JywXtDg9YywDL','zhjHz0fUzerYB3a','C3vIC2nYAwjL','B3v0zxjiDg1SqNLszwy','AxnwAxnPyMXL','mtvkEuf3txy','mte3ntKYy29Wv0nA','C2v0tg9JywXtDg9YywDL','BMv0D29YA0vUDhjPzxm','y2XPCgjVyxjKugfZDgu','CMvJB3jKzxi','C2f2zvn0B3jHz2vtDgf0zq','Bgf1BMnOzwq','Aw5ZCgvJDevSzw1LBNq'];_0x16c1=function(){return _0x5c5317;};return _0x16c1();}var DriverError=class extends UnotestError{static{__name(this,_0x2c3ac0(0x18d));}},LocatorError=class extends UnotestError{static{__name(this,_0x2c3ac0(0x13c));}};function createRecorder(){const _0x2ace38=_0x2c3ac0,_0x351ecc=[];let _0x14e6cf=0x0;return{'push':__name(_0x121a1b=>_0x351ecc['push']({..._0x121a1b,'seq':_0x14e6cf++}),_0x2ace38(0x133)),'calls':__name(()=>_0x351ecc,_0x2ace38(0x15a))};}__name(createRecorder,_0x2c3ac0(0x182));var FakePage=class{constructor(_0x530251,_0x12389a,_0x3b6497,_0x161823){const _0x32464f={_0x26eab2:0x173,_0x306c3c:0x156},_0x4717ec=_0x2c3ac0;this[_0x4717ec(0x12d)]=_0x530251,this['behavior']=_0x12389a,this[_0x4717ec(_0x32464f._0x26eab2)]=_0x3b6497,this[_0x4717ec(_0x32464f._0x306c3c)]=_0x161823;}[_0x2c3ac0(0x12d)];[_0x2c3ac0(0x186)];[_0x2c3ac0(0x173)];static{__name(this,_0x2c3ac0(0x18f));}[_0x2c3ac0(0x156)];[_0x2c3ac0(0x14f)];['record'](_0x2fdc04,_0x1b95e2){const _0x4e1795={_0x2bda43:0x12d},_0x2b0e01=_0x2c3ac0;this[_0x2b0e01(_0x4e1795._0x2bda43)]['push']({'scope':this[_0x2b0e01(0x173)],'method':_0x2fdc04,'args':_0x1b95e2});}[_0x2c3ac0(0x147)](){const _0x2ca6f5={_0x314eb8:0x186},_0x2aa6c8=_0x2c3ac0;if(this[_0x2aa6c8(0x186)]['errorOnNextAction']){const _0x5e5ccb=this[_0x2aa6c8(_0x2ca6f5._0x314eb8)][_0x2aa6c8(0x160)];this['behavior']['errorOnNextAction']=void 0x0;throw _0x5e5ccb;}}['url'](){const _0xe9d892=_0x2c3ac0;return this[_0xe9d892(0x156)];}async[_0x2c3ac0(0x161)](){const _0xe7af={_0x43413e:0x177,_0x12d95f:0x161,_0x482c36:0x162},_0x411f59=_0x2c3ac0;return this[_0x411f59(_0xe7af._0x43413e)](_0x411f59(_0xe7af._0x12d95f),[]),_0x411f59(_0xe7af._0x482c36);}async[_0x2c3ac0(0x141)](_0x57d80f,_0x1bbdce){const _0x5e8096={_0x181384:0x177,_0x5bd7b6:0x141,_0xeb5631:0x147,_0x4a4e1e:0x14f},_0x314554=_0x2c3ac0;this[_0x314554(_0x5e8096._0x181384)](_0x314554(_0x5e8096._0x5bd7b6),[_0x57d80f,_0x1bbdce]),this[_0x314554(_0x5e8096._0xeb5631)](),this[_0x314554(_0x5e8096._0x4a4e1e)]?.();}async[_0x2c3ac0(0x13a)](_0x33f53d,_0x20c1c8){const _0xeed0a4={_0x3c48de:0x177,_0x54de19:0x147},_0x57d2ea=_0x2c3ac0;this[_0x57d2ea(_0xeed0a4._0x3c48de)]('doubleClick',[_0x33f53d,_0x20c1c8]),this[_0x57d2ea(_0xeed0a4._0x54de19)]();}async[_0x2c3ac0(0x17b)](_0x52e994,_0x555c41,_0x40d4c0){const _0x107e7a={_0x35221a:0x17b},_0x15f7a8=_0x2c3ac0;this[_0x15f7a8(0x177)](_0x15f7a8(_0x107e7a._0x35221a),[_0x52e994,_0x555c41,_0x40d4c0]),this[_0x15f7a8(0x147)]();}async[_0x2c3ac0(0x16d)](_0x3384e4,_0x53c19d,_0x30a693){const _0x19cd51=_0x2c3ac0;this['record'](_0x19cd51(0x16d),[_0x3384e4,_0x53c19d,_0x30a693]),this['maybeThrow']();}async[_0x2c3ac0(0x14b)](_0x4017c8,_0xd965d1){const _0x587d26={_0x3ed379:0x177,_0x43360e:0x14b},_0x24c860=_0x2c3ac0;this[_0x24c860(_0x587d26._0x3ed379)](_0x24c860(_0x587d26._0x43360e),[_0x4017c8,_0xd965d1]),this[_0x24c860(0x147)]();}async[_0x2c3ac0(0x17e)](_0x2c6cd8,_0x432236){const _0x130304={_0x54dbf5:0x177,_0x282ca5:0x17e,_0x5aca82:0x147},_0x37a7f3=_0x2c3ac0;this[_0x37a7f3(_0x130304._0x54dbf5)](_0x37a7f3(_0x130304._0x282ca5),[_0x2c6cd8,_0x432236]),this[_0x37a7f3(_0x130304._0x5aca82)]();}async[_0x2c3ac0(0x148)](_0x3a7f20,_0x5a34b6,_0x2bc730){const _0x23e245=_0x2c3ac0;this[_0x23e245(0x177)]('selectOption',[_0x3a7f20,_0x5a34b6,_0x2bc730]),this[_0x23e245(0x147)]();}async[_0x2c3ac0(0x176)](_0x5c6520,_0x231fca){const _0x13b245={_0x190600:0x177,_0x26d696:0x176},_0x288d6a=_0x2c3ac0;this[_0x288d6a(_0x13b245._0x190600)](_0x288d6a(_0x13b245._0x26d696),[_0x5c6520,_0x231fca]),this[_0x288d6a(0x147)]();}async[_0x2c3ac0(0x171)](_0x373278){const _0x365bb3={_0x1493e6:0x171,_0xdebf84:0x147},_0x38a654=_0x2c3ac0;this['record'](_0x38a654(_0x365bb3._0x1493e6),[_0x373278]),this[_0x38a654(_0x365bb3._0xdebf84)]();}async[_0x2c3ac0(0x19f)](_0x182170,_0xf69e69,_0xbee484){const _0x2a0d61={_0x4b6383:0x147},_0x24b71f=_0x2c3ac0;this[_0x24b71f(0x177)](_0x24b71f(0x19f),[_0x182170,_0xf69e69,_0xbee484]),this[_0x24b71f(_0x2a0d61._0x4b6383)]();}async[_0x2c3ac0(0x190)](_0x5f2f87,_0x339a2e){const _0x4d3e76={_0x222f33:0x177,_0x58308e:0x190},_0x3d8b4c=_0x2c3ac0;this[_0x3d8b4c(_0x4d3e76._0x222f33)](_0x3d8b4c(_0x4d3e76._0x58308e),[_0x5f2f87,_0x339a2e]),this[_0x3d8b4c(0x147)]();}async[_0x2c3ac0(0x12c)](_0x137774,_0x5945bb){const _0x4a3d5c=_0x2c3ac0;this['record'](_0x4a3d5c(0x12c),[_0x137774,_0x5945bb]),this['maybeThrow']();}async[_0x2c3ac0(0x18c)](_0x5f0a2f){const _0x50769b={_0x37c2e7:0x154},_0xca654c=_0x2c3ac0;return this[_0xca654c(0x177)](_0xca654c(0x18c),[_0x5f0a2f]),this[_0xca654c(0x186)][_0xca654c(_0x50769b._0x37c2e7)]??0x1;}async[_0x2c3ac0(0x168)](_0x503a19){const _0x58b61c={_0x53716a:0x186,_0xc66d8a:0x134},_0x22c4a6=_0x2c3ac0;return this[_0x22c4a6(0x177)](_0x22c4a6(0x168),[_0x503a19]),this[_0x22c4a6(_0x58b61c._0x53716a)][_0x22c4a6(_0x58b61c._0xc66d8a)]??'';}async['inputValue'](_0x4af890){const _0x23161b={_0x1e6678:0x177,_0x4e25e8:0x132,_0x2c08dd:0x15f},_0x4b4764=_0x2c3ac0;return this[_0x4b4764(_0x23161b._0x1e6678)](_0x4b4764(_0x23161b._0x4e25e8),[_0x4af890]),this[_0x4b4764(0x186)][_0x4b4764(_0x23161b._0x2c08dd)]??'';}async[_0x2c3ac0(0x151)](_0x23e18d){const _0x5cde1e={_0x3c1481:0x151,_0x8c5086:0x184},_0x27034e=_0x2c3ac0;return this[_0x27034e(0x177)](_0x27034e(_0x5cde1e._0x3c1481),[_0x23e18d]),this['behavior'][_0x27034e(_0x5cde1e._0x8c5086)]??null;}async[_0x2c3ac0(0x1a2)](_0x3a7d14){const _0x3fa527={_0x51a401:0x1a2,_0x4879ce:0x157},_0x2c7845=_0x2c3ac0;return this[_0x2c7845(0x177)](_0x2c7845(_0x3fa527._0x51a401),[_0x3a7d14]),this[_0x2c7845(0x186)][_0x2c7845(_0x3fa527._0x4879ce)]??!![];}async[_0x2c3ac0(0x150)](_0x459b13){const _0x101f65={_0x149f70:0x150,_0x18ff31:0x186,_0x544b82:0x181},_0x62dbba=_0x2c3ac0;return this[_0x62dbba(0x177)](_0x62dbba(_0x101f65._0x149f70),[_0x459b13]),this[_0x62dbba(_0x101f65._0x18ff31)][_0x62dbba(_0x101f65._0x544b82)]??![];}async[_0x2c3ac0(0x158)](_0xd68c2d,_0x1e546c){const _0x2ba34b=_0x2c3ac0;return this[_0x2ba34b(0x177)](_0x2ba34b(0x158),[_0xd68c2d,_0x1e546c]),this['behavior'][_0x2ba34b(0x13e)]?.[_0x1e546c]??null;}async['waitFor'](_0x28dcdf,_0x8a7223){const _0x3dbf2f={_0x20c88c:0x177},_0x5f222d=_0x2c3ac0;this[_0x5f222d(_0x3dbf2f._0x20c88c)](_0x5f222d(0x152),[_0x28dcdf,_0x8a7223]);}async[_0x2c3ac0(0x136)](_0x507768,_0x3ff1eb){const _0x490f3a={_0x11c89a:0x177},_0x83d0a5=_0x2c3ac0;this[_0x83d0a5(_0x490f3a._0x11c89a)](_0x83d0a5(0x136),[_0x507768,_0x3ff1eb]);}async[_0x2c3ac0(0x131)](_0x414d7e,_0xd21442){const _0x4fb38a={_0x571b2b:0x131},_0x6f2c13=_0x2c3ac0;this['record'](_0x6f2c13(_0x4fb38a._0x571b2b),[_0x414d7e,_0xd21442]);}async[_0x2c3ac0(0x19a)](_0x31c17d){const _0x3ef88a=_0x2c3ac0;this['record'](_0x3ef88a(0x19a),[_0x31c17d]);}async[_0x2c3ac0(0x198)](_0xd3152f,_0x2a4a5a){const _0x5a0208=_0x2c3ac0;this[_0x5a0208(0x177)](_0x5a0208(0x198),[_0xd3152f,_0x2a4a5a]);}async[_0x2c3ac0(0x17f)](_0x3b29e6,_0x399b1f){const _0x320317=_0x2c3ac0;this['record']('goto',[_0x3b29e6,_0x399b1f]),this[_0x320317(0x156)]=_0x3b29e6;}async[_0x2c3ac0(0x164)](_0x3145bb){const _0x350377={_0x477c9b:0x177},_0x531f19=_0x2c3ac0;this[_0x531f19(_0x350377._0x477c9b)](_0x531f19(0x164),[_0x3145bb]);}async[_0x2c3ac0(0x137)](_0x419f29){const _0xb812bc={_0x3ca4e7:0x137},_0x2b17fe=_0x2c3ac0;this['record'](_0x2b17fe(_0xb812bc._0x3ca4e7),[_0x419f29]);}async[_0x2c3ac0(0x153)](_0x5c6711){const _0x6198b5={_0xf94d06:0x177},_0x4271af=_0x2c3ac0;this[_0x4271af(_0x6198b5._0xf94d06)]('goForward',[_0x5c6711]);}async['evaluate'](_0x4120ee){const _0x5b9fed={_0x5f0200:0x17c},_0x23bf28=_0x2c3ac0;return this['record'](_0x23bf28(_0x5b9fed._0x5f0200),[_0x4120ee]),void 0x0;}async[_0x2c3ac0(0x18a)](_0x5d134b,_0x184635){const _0x34bbc4={_0x15f9d8:0x177},_0x2fdeb7=_0x2c3ac0;return this[_0x2fdeb7(_0x34bbc4._0x15f9d8)]('evaluateOnLocator',[_0x5d134b,_0x184635]),void 0x0;}async[_0x2c3ac0(0x130)](_0x30ffb9){const _0x21599b={_0x7da985:0x177,_0x6f99b0:0x14e,_0x18ae25:0x167,_0x4dd657:0x186},_0x3bcec1=_0x2c3ac0;this[_0x3bcec1(_0x21599b._0x7da985)](_0x3bcec1(0x130),[_0x30ffb9]);if(_0x30ffb9[_0x3bcec1(0x167)][_0x3bcec1(_0x21599b._0x6f99b0)]!==0x1||_0x30ffb9[_0x3bcec1(_0x21599b._0x18ae25)][0x0][_0x3bcec1(0x17a)]!=='ref')return null;const _0x219c1d=_0x30ffb9[_0x3bcec1(0x167)][0x0]['ref'],_0x2cdfaa=this[_0x3bcec1(_0x21599b._0x4dd657)][_0x3bcec1(0x178)]?.[_0x219c1d];return _0x2cdfaa??null;}async['screenshot'](_0x38de91){const _0x3134d9={_0x10f218:0x177,_0x3cd079:0x13f},_0x18ddab=_0x2c3ac0;return this[_0x18ddab(_0x3134d9._0x10f218)]('screenshot',[_0x38de91]),Buffer['from'](_0x18ddab(_0x3134d9._0x3cd079));}async[_0x2c3ac0(0x16b)](_0x48b088){const _0xd06b00={_0x348880:0x177,_0x5267a5:0x16b,_0x4130bc:0x17a,_0x35bd09:0x185,_0x29a474:0x167,_0x1d4fa6:0x1a1,_0x27d0b7:0x187,_0x3cc81c:0x13b},_0x392071=_0x2c3ac0;this[_0x392071(_0xd06b00._0x348880)](_0x392071(_0xd06b00._0x5267a5),[_0x48b088]);if(_0x48b088[_0x392071(0x167)][_0x392071(0x14e)]===0x1&&_0x48b088['steps'][0x0][_0x392071(_0xd06b00._0x4130bc)]===_0x392071(_0xd06b00._0x35bd09)){const _0x2746bf=_0x48b088[_0x392071(_0xd06b00._0x29a474)][0x0][_0x392071(0x185)];return this[_0x392071(0x186)][_0x392071(_0xd06b00._0x1d4fa6)]?.[_0x2746bf]??_0x392071(_0xd06b00._0x27d0b7)+_0x2746bf+_0x392071(_0xd06b00._0x3cc81c);}return'<div></div>';}},FakeContext=class{constructor(_0xa31004,_0x1307c7,_0x25a38c){const _0x3ffd4f={_0xcdab0e:0x186,_0x187968:0x193},_0x30f26a=_0x2c3ac0;this[_0x30f26a(0x12d)]=_0xa31004,this[_0x30f26a(_0x3ffd4f._0xcdab0e)]=_0x1307c7,this['scope']=_0x25a38c;const _0x45b672=new FakePage(_0xa31004,_0x1307c7,_0x25a38c+_0x30f26a(0x19d),_0x1307c7['initialUrl']??'about:blank');_0x1307c7[_0x30f26a(0x15b)]&&(_0x45b672['onAfterClick']=()=>{const _0x11debd=_0x30f26a;this[_0x11debd(0x174)](_0x1307c7['popupOnClick']);}),this[_0x30f26a(0x18b)]=[_0x45b672],this[_0x30f26a(_0x3ffd4f._0x187968)]={..._0x1307c7[_0x30f26a(0x19e)]??{}},this['cookieState']={..._0x1307c7[_0x30f26a(0x159)]??{}};}[_0x2c3ac0(0x12d)];[_0x2c3ac0(0x186)];['scope'];static{__name(this,_0x2c3ac0(0x146));}[_0x2c3ac0(0x18b)];[_0x2c3ac0(0x149)]=0x0;[_0x2c3ac0(0x155)]=[];['localStorageState'];[_0x2c3ac0(0x195)];[_0x2c3ac0(0x199)]=new Set();['record'](_0x107138,_0x455db9){const _0x5bf2dd={_0x55d442:0x133},_0x15c5db=_0x2c3ac0;this[_0x15c5db(0x12d)][_0x15c5db(_0x5bf2dd._0x55d442)]({'scope':this[_0x15c5db(0x173)],'method':_0x107138,'args':_0x455db9});}[_0x2c3ac0(0x142)](){return this['pageList'];}[_0x2c3ac0(0x175)](){const _0x206510={_0x6a4e0f:0x149,_0x2a9522:0x196},_0x4be433=_0x2c3ac0,_0x487d50=this[_0x4be433(0x18b)][this[_0x4be433(_0x206510._0x6a4e0f)]];if(!_0x487d50)throw new DriverError(_0x4be433(_0x206510._0x2a9522),{'activeIdx':this[_0x4be433(0x149)]});return _0x487d50;}[_0x2c3ac0(0x166)](){const _0x2eac0d=_0x2c3ac0;return this['behavior'][_0x2eac0d(0x166)]??[];}['networkEntries'](){const _0x213320={_0xff720b:0x12b},_0x5ecc8a=_0x2c3ac0;return this[_0x5ecc8a(0x186)][_0x5ecc8a(_0x213320._0xff720b)]??[];}async[_0x2c3ac0(0x183)](_0x475318){const _0x2ac99c={_0x4c8153:0x14e,_0xc1eb69:0x155},_0x4e6303=_0x2c3ac0;this[_0x4e6303(0x177)](_0x4e6303(0x183),[_0x475318]);if(_0x475318<0x0||_0x475318>=this['pageList'][_0x4e6303(_0x2ac99c._0x4c8153)])throw new DriverError(_0x4e6303(0x139),{'index':_0x475318,'available':this['pageList'][_0x4e6303(0x14e)]});this[_0x4e6303(0x149)]=_0x475318,this[_0x4e6303(_0x2ac99c._0xc1eb69)][_0x4e6303(0x14e)]=0x0;}['onNewPage'](_0x535d04){return subscribe(this['newPageListeners'],_0x535d04);}[_0x2c3ac0(0x174)](_0x55d547){const _0x5af29b={_0x34d859:0x18b},_0x47f752=_0x2c3ac0,_0x2b3157=this[_0x47f752(0x173)]+'.page'+this['pageList']['length'],_0x3cee08=new FakePage(this['recorder'],this[_0x47f752(0x186)],_0x2b3157,_0x55d547);this[_0x47f752(_0x5af29b._0x34d859)][_0x47f752(0x133)](_0x3cee08);const _0x221bc6=this[_0x47f752(0x18b)][_0x47f752(0x14e)]-0x1;for(const _0x2ce706 of this[_0x47f752(0x199)]){try{_0x2ce706({'index':_0x221bc6,'url':_0x55d547});}catch{}}return _0x221bc6;}[_0x2c3ac0(0x16a)](_0x4bcbcc){const _0xe906ae={_0x460c6e:0x18b,_0x2e3cac:0x14e},_0xa7ec38=_0x2c3ac0;if(_0x4bcbcc<0x0||_0x4bcbcc>=this[_0xa7ec38(0x18b)]['length'])throw new DriverError(_0xa7ec38(0x139),{'index':_0x4bcbcc,'available':this[_0xa7ec38(_0xe906ae._0x460c6e)][_0xa7ec38(_0xe906ae._0x2e3cac)]});this[_0xa7ec38(_0xe906ae._0x460c6e)]['splice'](_0x4bcbcc,0x1);}async[_0x2c3ac0(0x14d)](_0x10849e){const _0x2ee887={_0x2db1dc:0x177,_0x5c4fef:0x167},_0xe02c8d=_0x2c3ac0;this[_0xe02c8d(_0x2ee887._0x2db1dc)]('enterFrame',[_0x10849e]);if(!_0x10849e[_0xe02c8d(_0x2ee887._0x5c4fef)]['length'])throw new LocatorError('enterFrame\x20called\x20with\x20empty\x20locator',{'locator':_0x10849e});this[_0xe02c8d(0x155)]['push'](_0x10849e);}async[_0x2c3ac0(0x144)](){const _0x2d7701={_0x3ee7fa:0x189},_0x4c2a88=_0x2c3ac0;this[_0x4c2a88(0x177)]('exitFrame',[]);if(this['frameStack'][_0x4c2a88(0x14e)]===0x0)throw new DriverError(_0x4c2a88(0x145),{});this[_0x4c2a88(0x155)][_0x4c2a88(_0x2d7701._0x3ee7fa)]();}async[_0x2c3ac0(0x1a5)](_0x42d9fc,_0x4393dc){const _0x30bff9={_0x290d34:0x1a5},_0x1d60d5=_0x2c3ac0;this[_0x1d60d5(0x177)](_0x1d60d5(_0x30bff9._0x290d34),[_0x42d9fc,_0x4393dc]),this[_0x1d60d5(0x193)][_0x42d9fc]=_0x4393dc;}async[_0x2c3ac0(0x165)](_0x438208){const _0x1574fb={_0x5c9301:0x193},_0x4ef3f7=_0x2c3ac0;return this[_0x4ef3f7(0x177)](_0x4ef3f7(0x165),[_0x438208]),this[_0x4ef3f7(_0x1574fb._0x5c9301)][_0x438208]??null;}async[_0x2c3ac0(0x15e)](_0xd26b26,_0x86739e,_0x218bff){const _0x1d8ca9={_0x2cdd6a:0x15e},_0x31b759=_0x2c3ac0;this['record'](_0x31b759(_0x1d8ca9._0x2cdd6a),[_0xd26b26,_0x86739e,_0x218bff]),this['cookieState'][_0xd26b26]=_0x86739e;}async[_0x2c3ac0(0x15d)](_0x32eb75){const _0x390a74={_0x1c00c9:0x15d},_0x560870=_0x2c3ac0;return this[_0x560870(0x177)](_0x560870(_0x390a74._0x1c00c9),[_0x32eb75]),this[_0x560870(0x195)][_0x32eb75]??null;}async[_0x2c3ac0(0x12e)](_0x5e3b4a){const _0x27d0dd={_0x136165:0x177},_0x46b53c=_0x2c3ac0;this[_0x46b53c(_0x27d0dd._0x136165)](_0x46b53c(0x12e),[_0x5e3b4a]);}async['evaluate'](_0x13e7cc){return this['record']('evaluate',[_0x13e7cc]),void 0x0;}async[_0x2c3ac0(0x19b)](){const _0x22460d=_0x2c3ac0;this[_0x22460d(0x177)](_0x22460d(0x19b),[]);}[_0x2c3ac0(0x180)](){const _0x16825d={_0x2f8986:0x14e},_0x6953d9=_0x2c3ac0;return this[_0x6953d9(0x155)][_0x6953d9(_0x16825d._0x2f8986)];}},FakeWebDriver=class{constructor(_0x2168e9={}){const _0x3c0eea=_0x2c3ac0;this[_0x3c0eea(0x186)]=_0x2168e9,this['recorder']=createRecorder();}[_0x2c3ac0(0x186)];static{__name(this,'FakeWebDriver');}[_0x2c3ac0(0x12f)]=![];[_0x2c3ac0(0x12d)];['contexts']=[];async[_0x2c3ac0(0x179)](_0x216341){const _0x42ea54=_0x2c3ac0;this[_0x42ea54(0x12d)][_0x42ea54(0x133)]({'scope':_0x42ea54(0x140),'method':_0x42ea54(0x179),'args':[_0x216341]}),this[_0x42ea54(0x12f)]=!![];}async['newContext'](_0x27a249){const _0x29f0cb={_0x539b30:0x12f,_0x525655:0x138,_0x26e849:0x16e,_0x426ef1:0x14e,_0x1fe2cd:0x163},_0x599061=_0x2c3ac0;this['recorder'][_0x599061(0x133)]({'scope':'driver','method':_0x599061(0x197),'args':[_0x27a249]});if(!this[_0x599061(_0x29f0cb._0x539b30)])throw new DriverError(_0x599061(_0x29f0cb._0x525655),{});const _0x2e1080=new FakeContext(this[_0x599061(0x12d)],this['behavior'],_0x599061(_0x29f0cb._0x26e849)+this[_0x599061(0x163)][_0x599061(_0x29f0cb._0x426ef1)]);return this[_0x599061(_0x29f0cb._0x1fe2cd)][_0x599061(0x133)](_0x2e1080),_0x2e1080;}async[_0x2c3ac0(0x19b)](){const _0x2a687a={_0x8cd408:0x12d,_0x3493b8:0x140,_0x1d86bc:0x12f},_0x1f1883=_0x2c3ac0;this[_0x1f1883(_0x2a687a._0x8cd408)][_0x1f1883(0x133)]({'scope':_0x1f1883(_0x2a687a._0x3493b8),'method':_0x1f1883(0x19b),'args':[]}),this[_0x1f1883(_0x2a687a._0x1d86bc)]=![];}['wsEndpoint'](){return void 0x0;}async[_0x2c3ac0(0x192)](){const _0x1cdca7=_0x2c3ac0;throw new DriverError(_0x1cdca7(0x172),{});}[_0x2c3ac0(0x16f)](){throw new DriverError('attachExisting\x20not\x20supported\x20by\x20FakeWebDriver',{});}[_0x2c3ac0(0x15a)](){const _0x1251a0={_0x2ae96d:0x12d},_0x38227c=_0x2c3ac0;return this[_0x38227c(_0x1251a0._0x2ae96d)][_0x38227c(0x15a)]();}['callsFor'](_0x58d81c){const _0x195237={_0x3a1b3b:0x12d,_0x40fd07:0x15a},_0x5244d2=_0x2c3ac0;return this[_0x5244d2(_0x195237._0x3a1b3b)][_0x5244d2(_0x195237._0x40fd07)]()[_0x5244d2(0x194)](_0x1d457a=>_0x1d457a[_0x5244d2(0x15c)]===_0x58d81c);}};export{FakeWebDriver};
@@ -1,6 +1,6 @@
1
1
  import { i as LocatorValue, W as WebDriver, D as DriverContext, d as DriverPage } from '../interfaces-B-FxA_qn.js';
2
2
  export { j as LocatorStep, k as appendStep, l as describeLocator, m as isLocatorValue, r as rootedAt } from '../interfaces-B-FxA_qn.js';
3
- import { Matcher, RegexLiteral } from '@unotest/protocol';
3
+ import { Matcher, RegexLiteral, JudgeRequest, JudgeVerdict } from '@unotest/protocol';
4
4
  import { ExecutionWalker, ExecutionEvent, RunResult, RunOptions } from '@unotest/dsl/executor';
5
5
  export { ExecutionError, ExecutionEvent, RunOptions, RunResult } from '@unotest/dsl/executor';
6
6
  import { SandboxConfig } from '../config/schema.js';
@@ -88,6 +88,24 @@ interface Logger {
88
88
  child(prefix: string): Logger;
89
89
  }
90
90
 
91
+ interface Judge {
92
+ /** Produce a structured verdict. A clean `fail` is a RESULT (returned);
93
+ * infrastructure faults throw JudgeUnavailableError / ConfigError. */
94
+ judge(request: JudgeRequest): Promise<JudgeVerdict>;
95
+ }
96
+
97
+ interface JudgeVerdictRecord extends JudgeVerdict {
98
+ rubric: string;
99
+ /** The judged text (the resolved element's rendered text). */
100
+ text: string;
101
+ }
102
+ interface JudgeVerdictSink {
103
+ /** Persist one verdict — pass AND fail, so the report explains green
104
+ * runs too. Must not throw on sink faults (reporting must never fail
105
+ * the assertion). */
106
+ record(record: JudgeVerdictRecord): Promise<void>;
107
+ }
108
+
91
109
  type FrameFormat = "png" | "webp";
92
110
 
93
111
  interface ScreenshotSink {
@@ -126,6 +144,14 @@ interface TestRuntimeDeps {
126
144
  * to the run dir; absent in ad-hoc / explore runtimes (the DSL
127
145
  * function then logs and skips). */
128
146
  readonly screenshots?: ScreenshotSink;
147
+ /** LLM-judge behind `assertJudge`. Wired from the composition root
148
+ * (UNOTEST_JUDGE_MODE); absent in bare test runtimes — the DSL
149
+ * function then fails with the NullJudge-style setup message. */
150
+ readonly judge?: Judge;
151
+ /** Sink for `assertJudge` verdicts (pass AND fail) — the CLI runner
152
+ * wires it to the run's steps.jsonl; absent in ad-hoc / explore
153
+ * runtimes (the verdict then lives only in the assertion error). */
154
+ readonly judgeVerdicts?: JudgeVerdictSink;
129
155
  }
130
156
  declare class TestRuntime {
131
157
  readonly runId: string;
@@ -135,6 +161,8 @@ declare class TestRuntime {
135
161
  readonly sandbox: SandboxConfig;
136
162
  readonly baseUrl?: string;
137
163
  readonly screenshots?: ScreenshotSink;
164
+ readonly judge?: Judge;
165
+ readonly judgeVerdicts?: JudgeVerdictSink;
138
166
  private readonly variables;
139
167
  private readonly nowFn;
140
168
  private readonly scope;