@unotest/web 0.16.0 → 0.18.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.
@@ -65,6 +65,11 @@ outside this list — they won't tell you anything Phase 1+ doesn't.
65
65
  3. **`unotest/.env`** — Read it. Pulls `APP_BASE_URL`,
66
66
  `DATABASE_URL`, etc. that the scenario will reach for.
67
67
 
68
+ `unotest/jsconfig.json` and `.unotest/types/` are GENERATED editor
69
+ typings (regenerated on every lint/run from the DSL vocabulary and the
70
+ `.env`/`.secrets` keys) — never edit them and never mine them for the
71
+ DSL surface; the reference above is the source of truth.
72
+
68
73
  Then move to Phase 1. Three files in, exploration done.
69
74
 
70
75
  ### Phase 1 — start the exploration
@@ -431,7 +436,7 @@ Escape hatch:
431
436
  - `evaluate(\`js body\`, …args)` — raw backticks, no `${}`. Linter
432
437
  warns `lint:evaluate-discouraged`. Use only when nothing above fits.
433
438
 
434
- Time helpers: `nowMs()`, `today()`, `daysFromNow(n)`. Marker helper: `randomWord(len)` — random lowercase letters, digit-free.
439
+ Time helpers: `nowMs()`, `today()`, `daysFromNow(n)`. Marker helper: `randomWord(len)` — random lowercase letters, digit-free. Debug helper: `json(value)` — serialize any value for an assert message: `assertTrue(res.status == 202, json(res.body))`.
435
440
 
436
441
  ## Helpers convention
437
442
 
@@ -90,6 +90,11 @@ outside this list — they won't tell you anything Phase 1+ doesn't.
90
90
  3. **`unotest/.env`** — Read it. Pulls `APP_BASE_URL`,
91
91
  `DATABASE_URL`, etc. that the scenario will reach for.
92
92
 
93
+ `unotest/jsconfig.json` and `.unotest/types/` are GENERATED editor
94
+ typings (regenerated on every lint/run from the DSL vocabulary and the
95
+ `.env`/`.secrets` keys) — never edit them and never mine them for the
96
+ DSL surface; the reference above is the source of truth.
97
+
93
98
  Then move to Phase 1. Three files in, exploration done.
94
99
 
95
100
  ### Phase 1 — start the exploration
@@ -562,7 +567,7 @@ Escape hatch:
562
567
  - `evaluate(\`js body\`, …args)` — raw backticks, no `${}`. Linter
563
568
  warns `lint:evaluate-discouraged`. Use only when nothing above fits.
564
569
 
565
- Time helpers: `nowMs()`, `today()`, `daysFromNow(n)`. Marker helper: `randomWord(len)` — random lowercase letters, digit-free.
570
+ Time helpers: `nowMs()`, `today()`, `daysFromNow(n)`. Marker helper: `randomWord(len)` — random lowercase letters, digit-free. Debug helper: `json(value)` — serialize any value for an assert message: `assertTrue(res.status == 202, json(res.body))`.
566
571
 
567
572
  ## Helpers convention
568
573
 
package/CHANGELOG.md CHANGED
@@ -1,5 +1,89 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.18.0] - 2026-08-23
4
+
5
+ ### Minor Changes
6
+
7
+ - 44f5d6c: Editor typings for scenarios — `.js` files stop looking like broken
8
+ JavaScript in VS Code / WebStorm: autocomplete, hover docs, signature
9
+ help and locator-chain resolution, without turning on a second
10
+ type-checker (`checkJs` stays off; diagnostics remain the DSL
11
+ validator's job).
12
+
13
+ - New shipped file `types/unotest-dsl.d.ts` — ambient declarations for
14
+ every DSL function, generated from the same contracts the validator
15
+ uses (`buildDslVocab()`), so it can never drift from the installed
16
+ version.
17
+ - New CLI command `unotest-web types` — creates `unotest/jsconfig.json`
18
+ if missing and regenerates the `.unotest/types/env.d.ts` cache
19
+ (variable NAMES from `unotest/.env` / `.secrets`; values never leave
20
+ those files).
21
+ - `init` scaffolds the jsconfig + env cache; `scaffoldWorkspace()` now
22
+ includes the jsconfig too.
23
+ - Upgrade path is automatic: `lint` and `e2e` create a missing
24
+ `unotest/jsconfig.json` on the fly (one announcement line) and
25
+ silently refresh the env cache. Skipped under CI. No action needed
26
+ after upgrading — run any test or `unotest-web lint` once and the
27
+ editor comes alive. If you keep a custom `unotest/jsconfig.json`, it
28
+ is never overwritten (re-run `init --force` to reset it).
29
+ - `@unotest/protocol`: additive optional fields on the DSL vocab —
30
+ `DslVocabArg.enumValues` (literal members behind `kind: "enum"`) and
31
+ `DslVocabEntry.variadic`.
32
+
33
+ - a088bac: New package `@unotest/eslint-plugin` — unotest DSL scenarios as
34
+ first-class ESLint citizens. One rule (`@unotest/dsl`) delegates every
35
+ check to the validator inside the installed `@unotest/web` (parser,
36
+ vocabulary, linter rules, `linter.rules` severities from
37
+ unotest.config), so `npx eslint unotest/e2e` and `unotest-web lint`
38
+ report identical diagnostics; a new validator rule needs zero plugin
39
+ changes. `configs.recommended()` (async factory, flat config) wires
40
+ `unotest/e2e/**/*.js`, turns `no-undef` off (implicit globals are the
41
+ DSL's design; unknown names are the engine's job) and declares globals
42
+ for the vocabulary, your helpers and your `.env`/`.secrets` variable
43
+ names.
44
+
45
+ `@unotest/web`: the `@unotest/web/dsl` subpath now exports
46
+ `loadLintProjectContext()` (config severities + helper discovery +
47
+ variable names) and `linterRulesToSeverity()` — the same loader the CLI
48
+ `lint` command now uses, so the two frontends cannot drift.
49
+
50
+ ### Patch Changes
51
+
52
+ - 5ab7bd5: `screenshot()` appears in the DSL vocab (completion, hover, signature
53
+ help, generated editor typings). It always had a validator contract, but
54
+ its diagnostics contract group was missing from the vocab builder, so
55
+ every vocab consumer silently lacked it. A parity test now pins the vocab
56
+ to the contract registry, so a future contract group cannot be forgotten
57
+ again. `@unotest/protocol`: new `DslVocabCategory` value `"diagnostic"`.
58
+
59
+ ## [0.17.0] - 2026-08-20
60
+
61
+ ### Minor Changes
62
+
63
+ - 0306eb1: Upload/API-step DX, driven by 0.16.0 consumer feedback (a multipart
64
+ upload authored as `apiCall(m, p, {file: …})` failed only as a remote
65
+ 400, with nothing local pointing at `upload()`):
66
+
67
+ - New DSL function `json(value)` — serialize any value to a JSON string
68
+ for readable assert messages:
69
+ `assertTrue(res.status == 202, json(res.body))`. Objects concatenated
70
+ with `+` collapse into `[object Object]`; this is the readable form.
71
+ - New linter rule `lint:api-call-file-body` (warning) — an `apiCall`
72
+ body object with a `file` key is sent as plain JSON, no file
73
+ attached; the diagnostic shows the `upload(...)` shape to use.
74
+ Deliberate JSON fields named `file` are kept with
75
+ `// lint-ok: <reason>`.
76
+ - The CLI `e2e` command now runs the same pre-run lint as the MCP
77
+ `run_test` tool and prints diagnostics before the run (advisory —
78
+ the run still proceeds). Previously authoring mistakes the linter
79
+ knows about surfaced only through `unotest-web lint`.
80
+ - Reaching for a JS global in a scenario (`JSON.stringify`, `Date`)
81
+ now answers with the DSL alternative (`json(value)`, `nowMs()`)
82
+ instead of the misleading `add it to unotest/.env` error.
83
+ - The generated `unotest.config.mjs` template documents the `sandbox`
84
+ section (`apiBaseUrl`, `uploadDir`, `database`) — `uploadDir` was
85
+ referenced by the guides but absent from the template.
86
+
3
87
  ## [0.16.0] - 2026-08-19
4
88
 
5
89
  ### Minor Changes
@@ -78,15 +162,6 @@
78
162
  hook — or a name that is genuinely just misspelled — keeps the old message
79
163
  unchanged.
80
164
 
81
- - Updated dependencies [4fc5e5a]
82
- - Updated dependencies [bf92e6f]
83
- - Updated dependencies [1327a52]
84
- - @unotest/core@0.16.0
85
- - @unotest/dsl@0.16.0
86
- - @unotest/viewer@0.16.0
87
- - @unotest/grounder-client@0.16.0
88
- - @unotest/protocol@0.16.0
89
-
90
165
  ## [0.15.0] - 2026-08-17
91
166
 
92
167
  ### Minor Changes
@@ -120,14 +195,6 @@
120
195
  `external variable "CATALOG_SEED" not found`. The workaround was to delete
121
196
  `unotest/.env` by hand — on the runner, and for anyone who forked the examples.
122
197
 
123
- - Updated dependencies [d2161a9]
124
- - Updated dependencies [32692b4]
125
- - @unotest/viewer@0.15.0
126
- - @unotest/core@0.15.0
127
- - @unotest/dsl@0.15.0
128
- - @unotest/grounder-client@0.15.0
129
- - @unotest/protocol@0.15.0
130
-
131
198
  ## [0.14.0] - 2026-08-16
132
199
 
133
200
  ### Minor Changes
@@ -192,15 +259,6 @@
192
259
  one step that runs AFTER obfuscation — now exercises all four against a
193
260
  real page.
194
261
 
195
- - Updated dependencies [0255f2d]
196
- - Updated dependencies [da5badd]
197
- - Updated dependencies [da5badd]
198
- - @unotest/dsl@0.14.0
199
- - @unotest/viewer@0.14.0
200
- - @unotest/core@0.14.0
201
- - @unotest/grounder-client@0.14.0
202
- - @unotest/protocol@0.14.0
203
-
204
262
  ## [0.13.1] - 2026-08-15
205
263
 
206
264
  ### Patch Changes
@@ -247,14 +305,6 @@
247
305
  build its locator from the top document, so inside a frame it waited on
248
306
  text the frame content could never satisfy. Found by the dogfood suite
249
307
  (nested-iframes scenario).
250
- - Updated dependencies [39ca34f]
251
- - Updated dependencies [a4f0a62]
252
- - Updated dependencies [8d70df6]
253
- - @unotest/dsl@0.13.0
254
- - @unotest/core@0.13.0
255
- - @unotest/viewer@0.13.0
256
- - @unotest/grounder-client@0.13.0
257
- - @unotest/protocol@0.13.0
258
308
 
259
309
  All notable changes to `@unotest/web` are documented in this file.
260
310
 
@@ -325,18 +375,6 @@ unotest/.env.dev (no such file)`). Tool descriptions for `run_test` /
325
375
  instead of silently cascading into "Unknown function" at every call
326
376
  site. The viewer logs the same condition (patch).
327
377
 
328
- ### Patch Changes
329
-
330
- - Updated dependencies [40300d3]
331
- - Updated dependencies [479aa25]
332
- - Updated dependencies [5dd59af]
333
- - Updated dependencies [7069d24]
334
- - @unotest/dsl@0.12.0
335
- - @unotest/viewer@0.12.0
336
- - @unotest/core@0.12.0
337
- - @unotest/grounder-client@0.12.0
338
- - @unotest/protocol@0.12.0
339
-
340
378
  ## [0.11.0] - 2026-08-13
341
379
 
342
380
  ### Minor Changes
@@ -445,20 +483,6 @@ unotest/.env.dev (no such file)`). Tool descriptions for `run_test` /
445
483
  "the network went quiet" instead of on visible app state is the flaky
446
484
  pattern the linter rejects.
447
485
 
448
- - Updated dependencies [eb568a6]
449
- - Updated dependencies [a195713]
450
- - Updated dependencies [ce25926]
451
- - Updated dependencies [5a8e92b]
452
- - Updated dependencies [d0ae620]
453
- - Updated dependencies [2a68997]
454
- - Updated dependencies [c01b72f]
455
- - Updated dependencies [dea90e9]
456
- - @unotest/core@0.11.0
457
- - @unotest/protocol@0.11.0
458
- - @unotest/viewer@0.11.0
459
- - @unotest/dsl@0.11.0
460
- - @unotest/grounder-client@0.11.0
461
-
462
486
  ## [0.10.0] - 2026-08-06
463
487
 
464
488
  ### Minor Changes
@@ -598,21 +622,6 @@ unotest/.env.dev (no such file)`). Tool descriptions for `run_test` /
598
622
  recipe: a single `{kind:"intent"}` step, the `ref` from `find_element`,
599
623
  or the ready-made `locator` object from `ground_element` — hand-assembled
600
624
  `getByRole`/`css` locators are rejected in recording mode.
601
- - Updated dependencies [7324966]
602
- - Updated dependencies [7ed750c]
603
- - Updated dependencies [b5b9710]
604
- - Updated dependencies [574841f]
605
- - Updated dependencies [65eb77c]
606
- - Updated dependencies [f106cf8]
607
- - Updated dependencies [856f087]
608
- - Updated dependencies [78f850f]
609
- - Updated dependencies [1bd55ba]
610
- - Updated dependencies [337a31c]
611
- - @unotest/grounder-client@0.10.0
612
- - @unotest/dsl@0.10.0
613
- - @unotest/protocol@0.10.0
614
- - @unotest/core@0.10.0
615
- - @unotest/viewer@0.10.0
616
625
 
617
626
  ## [0.9.2] - 2026-06-16
618
627
 
package/README.md CHANGED
@@ -22,6 +22,13 @@ during the prompt), and wires the MCP config so Claude Code / Cursor / Codex
22
22
  pick the server up automatically. Re-run anytime to update — it never
23
23
  overwrites your edits.
24
24
 
25
+ It also wires editor typings (`unotest/jsconfig.json` + generated `.d.ts`
26
+ files), so scenarios get autocomplete, hover docs and signature help in
27
+ VS Code / WebStorm instead of red squiggles. On an existing project this
28
+ self-installs on the first `lint` / `e2e` run after upgrading; refresh by
29
+ hand with `npx @unotest/web types`. Details: the "Editor setup" section of
30
+ `node_modules/@unotest/web/guides/dsl-reference.md`.
31
+
25
32
  ## 2. Open the viewer
26
33
 
27
34
  ```sh
@@ -115,6 +122,7 @@ alongside it in `guides/`).
115
122
  | [`@unotest/viewer`](https://www.npmjs.com/package/@unotest/viewer) | local results browser |
116
123
  | [`@unotest/protocol`](https://www.npmjs.com/package/@unotest/protocol) | shared types |
117
124
  | [`@unotest/dsl`](https://www.npmjs.com/package/@unotest/dsl) | scenario parser + validator engine |
125
+ | [`@unotest/eslint-plugin`](https://www.npmjs.com/package/@unotest/eslint-plugin) | the same scenario diagnostics through ESLint |
118
126
 
119
127
  ## License
120
128
 
@@ -90,19 +90,19 @@ declare const FailureBundleConfigSchema: z.ZodObject<{
90
90
  type FailureBundleConfig = z.infer<typeof FailureBundleConfigSchema>;
91
91
  declare const DialogPolicySchema: z.ZodEnum<["accept", "dismiss", "manual"]>;
92
92
  type DialogPolicy = z.infer<typeof DialogPolicySchema>;
93
- declare const LinterRuleIdSchema: z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>;
93
+ declare const LinterRuleIdSchema: z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:api-call-file-body", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>;
94
94
  type LinterRuleId = z.infer<typeof LinterRuleIdSchema>;
95
95
  declare const LinterSeveritySchema: z.ZodEnum<["off", "warn", "error"]>;
96
96
  type LinterSeverity = z.infer<typeof LinterSeveritySchema>;
97
97
  declare const LinterConfigSchema: z.ZodObject<{
98
98
  enabled: z.ZodBoolean;
99
- rules: z.ZodRecord<z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>, z.ZodEnum<["off", "warn", "error"]>>;
99
+ rules: z.ZodRecord<z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:api-call-file-body", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>, z.ZodEnum<["off", "warn", "error"]>>;
100
100
  }, "strip", z.ZodTypeAny, {
101
101
  enabled: boolean;
102
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
102
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
103
103
  }, {
104
104
  enabled: boolean;
105
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
105
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
106
106
  }>;
107
107
  type LinterConfig = z.infer<typeof LinterConfigSchema>;
108
108
  declare const McpConfigSchema: z.ZodObject<{
@@ -312,13 +312,13 @@ declare const UnotestConfigSchema: z.ZodObject<{
312
312
  defaultNavigationTimeoutMs: z.ZodNumber;
313
313
  linter: z.ZodObject<{
314
314
  enabled: z.ZodBoolean;
315
- rules: z.ZodRecord<z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>, z.ZodEnum<["off", "warn", "error"]>>;
315
+ rules: z.ZodRecord<z.ZodEnum<["lint:deep-css", "lint:xpath", "lint:obfuscated-class", "lint:pause-explicit", "lint:disambig-by-index", "lint:evaluate-discouraged", "lint:scenario-in-root", "lint:mustache-in-dsl", "lint:goto-concat", "lint:regex-invalid", "lint:echo-assert", "lint:api-call-file-body", "lint:lint-ok-missing-reason", "validator:unknown-function", "validator:arity", "validator:arg-kind", "validator:step-coverage", "validator:step-shape", "validator:meta-shape", "validator:function-shape", "validator:for-shape", "validator:if-shape", "validator:var-shape", "validator:unsupported-statement", "validator:unsupported-expression", "validator:string-concat", "validator:semantic-loss", "validator:list-arg", "validator:wrapped-format"]>, z.ZodEnum<["off", "warn", "error"]>>;
316
316
  }, "strip", z.ZodTypeAny, {
317
317
  enabled: boolean;
318
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
318
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
319
319
  }, {
320
320
  enabled: boolean;
321
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
321
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
322
322
  }>;
323
323
  mcp: z.ZodObject<{
324
324
  transport: z.ZodLiteral<"stdio">;
@@ -398,7 +398,7 @@ declare const UnotestConfigSchema: z.ZodObject<{
398
398
  defaultNavigationTimeoutMs: number;
399
399
  linter: {
400
400
  enabled: boolean;
401
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
401
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
402
402
  };
403
403
  mcp: {
404
404
  transport: "stdio";
@@ -450,7 +450,7 @@ declare const UnotestConfigSchema: z.ZodObject<{
450
450
  defaultNavigationTimeoutMs: number;
451
451
  linter: {
452
452
  enabled: boolean;
453
- rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
453
+ rules: Partial<Record<"lint:deep-css" | "lint:xpath" | "lint:obfuscated-class" | "lint:pause-explicit" | "lint:disambig-by-index" | "lint:evaluate-discouraged" | "lint:scenario-in-root" | "lint:mustache-in-dsl" | "lint:goto-concat" | "lint:regex-invalid" | "lint:echo-assert" | "lint:api-call-file-body" | "lint:lint-ok-missing-reason" | "validator:unknown-function" | "validator:arity" | "validator:arg-kind" | "validator:step-coverage" | "validator:step-shape" | "validator:meta-shape" | "validator:function-shape" | "validator:for-shape" | "validator:if-shape" | "validator:var-shape" | "validator:unsupported-statement" | "validator:unsupported-expression" | "validator:string-concat" | "validator:semantic-loss" | "validator:list-arg" | "validator:wrapped-format", "off" | "warn" | "error">>;
454
454
  };
455
455
  mcp: {
456
456
  transport: "stdio";
@@ -1 +1 @@
1
- function _0x25ca(_0x5353b9,_0x1f6c9d){_0x5353b9=_0x5353b9-0x147;var _0xbe4e5=_0xbe4e();var _0x25caf0=_0xbe4e5[_0x5353b9];if(_0x25ca['rElNEg']===undefined){var _0x5d4799=function(_0x55c045){var _0x2af509='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x5190c2='',_0x54752f='';for(var _0x50d5b0=0x0,_0x29cde1,_0x252481,_0x256172=0x0;_0x252481=_0x55c045['charAt'](_0x256172++);~_0x252481&&(_0x29cde1=_0x50d5b0%0x4?_0x29cde1*0x40+_0x252481:_0x252481,_0x50d5b0++%0x4)?_0x5190c2+=String['fromCharCode'](0xff&_0x29cde1>>(-0x2*_0x50d5b0&0x6)):0x0){_0x252481=_0x2af509['indexOf'](_0x252481);}for(var _0xd3ba27=0x0,_0x42b737=_0x5190c2['length'];_0xd3ba27<_0x42b737;_0xd3ba27++){_0x54752f+='%'+('00'+_0x5190c2['charCodeAt'](_0xd3ba27)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x54752f);};_0x25ca['eaulJZ']=_0x5d4799,_0x25ca['WCVYvx']={},_0x25ca['rElNEg']=!![];}var _0x135381=_0xbe4e5[0x0],_0x4a48df=_0x5353b9+_0x135381,_0x4b282e=_0x25ca['WCVYvx'][_0x4a48df];return!_0x4b282e?(_0x25caf0=_0x25ca['eaulJZ'](_0x25caf0),_0x25ca['WCVYvx'][_0x4a48df]=_0x25caf0):_0x25caf0=_0x4b282e,_0x25caf0;}var _0xe0488=_0x25ca;function _0xbe4e(){var _0x4633d7=['y2HYB21LlwjLDge','zxjYB3i','yM9VBgvHBG','zMLYzwzVEa','B2zM','Dw5PB24','DMfSAwrHDg9YoMzVCI1ZAgfWzq','DMfSAwrHDg9YoNDYyxbWzwqTzM9YBwf0','DMfSAwrHDg9YoMXPC3qTyxjN','DMfSAwrHDg9YoNzHCI1ZAgfWzq','DMfSAwrHDg9YoNn0zxaTC2HHCgu','nde0Ee9jtxvQ','D2fYBG','y2HYB21PDw0','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlwv4ChjLC3nPB24','mtm0mtq1nuzWtfzqAW','BgLUDdPTDxn0ywnOzs1PBI1KC2W','mtKYmZCZmfHoyxnODW','zgvMyxvSDa','BwLU','DMfSAwrHDg9YoMz1BMn0Aw9UlxnOyxbL','yxjYyxK','BgLUDdPKAxnHBwjPzY1IEs1PBMrLEa','DhjHBNnPzw50','mJqXodu1mg5orLHnEq','mJe4nJe2BNjpruLH','DMfSAwrHDg9YoNn0CMLUzY1JB25Jyxq','DMfSAwrHDg9YoMfYAxr5','BgLUDdPLDMfSDwf0zs1KAxnJB3vYywDLza','ywnJzxb0','Cg9ZAxrPDMu','BNvTyMvY','mZiYmde0s01Xt2zs','zw51Bq','y3jHC2G','mtCWuw51r3r6','Aw50','BgLUDdPWyxvZzs1LEhbSAwnPDa','BgLUDdPVyMz1C2nHDgvKlwnSyxnZ','BxnLzgDL','BgLUDdPSAw50lw9Rlw1PC3nPBMCTCMvHC29U','C3rYAw5N','BwfUDwfS','BgLUDdPYzwDLEc1PBNzHBgLK','y2HYB21L','zgLZBwLZCW','DMfSAwrHDg9YoNvUA25VD24TzNvUy3rPB24','BgLUDdPZy2vUyxjPBY1PBI1YB290','C3rKAw8','BgLUDdPNB3rVlwnVBMnHDa','DMfSAwrHDg9YoNnLBwfUDgLJlwXVC3m','DxjS','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlxn0yxrLBwvUDa','BgLUDdPLy2HVlwfZC2vYDa','B3b0Aw9UywW','mtiXmZfQA2j5C0K','Dw5VDgvZDc9LmMu','B2jQzwn0','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','mZu2odCZt1zRD2XK','DMfSAwrHDg9YoMfYzY1RAw5K','ohLbAfLABG','BgL0zxjHBa','DMfSAwrHDg9YoNn0zxaTy292zxjHz2u','mtmWmLrzqwXLCW'];_0xbe4e=function(){return _0x4633d7;};return _0xbe4e();}(function(_0x25e889,_0x1ec6d5){var _0x334f81={_0x38317e:0x156,_0x50e8af:0x15f,_0x4e0a12:0x160,_0x417123:0x152,_0x47ef3f:0x16a},_0x40edff=_0x25ca,_0x55629c=_0x25e889();while(!![]){try{var _0x379ee0=parseInt(_0x40edff(_0x334f81._0x38317e))/0x1+parseInt(_0x40edff(_0x334f81._0x50e8af))/0x2+parseInt(_0x40edff(0x167))/0x3*(-parseInt(_0x40edff(0x184))/0x4)+-parseInt(_0x40edff(0x158))/0x5+-parseInt(_0x40edff(0x187))/0x6*(parseInt(_0x40edff(0x17e))/0x7)+-parseInt(_0x40edff(_0x334f81._0x4e0a12))/0x8*(parseInt(_0x40edff(_0x334f81._0x417123))/0x9)+-parseInt(_0x40edff(_0x334f81._0x47ef3f))/0xa*(-parseInt(_0x40edff(0x182))/0xb);if(_0x379ee0===_0x1ec6d5)break;else _0x55629c['push'](_0x55629c['shift']());}catch(_0x58362c){_0x55629c['push'](_0x55629c['shift']());}}}(_0xbe4e,0xd4568));import{z}from'zod';var BrowserSchema=z[_0xe0488(0x168)]([_0xe0488(0x154),_0xe0488(0x14a),'webkit']),BrowserChannelSchema=z[_0xe0488(0x14c)]([z[_0xe0488(0x185)](_0xe0488(0x173)),z['literal'](_0xe0488(0x16e)),z[_0xe0488(0x185)](_0xe0488(0x147)),z['null']()])[_0xe0488(0x17d)](),ViewportSchema=z['object']({'width':z['number']()[_0xe0488(0x16b)]()[_0xe0488(0x165)](),'height':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()[_0xe0488(0x165)]()}),RetryReasonSchema=z[_0xe0488(0x168)]([_0xe0488(0x15e),'network',_0xe0488(0x169)]),RetryConfigSchema=z['object']({'count':z[_0xe0488(0x166)]()['int']()[_0xe0488(0x15a)](0x0)['max'](0xa),'on':z[_0xe0488(0x15c)](RetryReasonSchema)}),FailureBundleConfigSchema=z[_0xe0488(0x180)]({'tier1':z[_0xe0488(0x185)](!![])[_0xe0488(0x159)](!![]),'tier2':z[_0xe0488(0x149)](),'tier3':z[_0xe0488(0x180)]({'network':z[_0xe0488(0x149)](),'video':z[_0xe0488(0x149)]()}),'retention':z[_0xe0488(0x180)]({'runs':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()[_0xe0488(0x165)](),'days':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()['positive']()}),'storageDir':z['string']()['min'](0x1)}),DialogPolicySchema=z[_0xe0488(0x168)]([_0xe0488(0x164),_0xe0488(0x174),_0xe0488(0x171)]),LinterRuleIdSchema=z[_0xe0488(0x168)](['lint:deep-css','lint:xpath',_0xe0488(0x16d),_0xe0488(0x16c),_0xe0488(0x15d),_0xe0488(0x163),_0xe0488(0x176),_0xe0488(0x157),_0xe0488(0x178),_0xe0488(0x172),_0xe0488(0x17c),_0xe0488(0x16f),_0xe0488(0x175),_0xe0488(0x162),_0xe0488(0x183),_0xe0488(0x186),_0xe0488(0x151),'validator:meta-shape',_0xe0488(0x15b),_0xe0488(0x14d),'validator:if-shape',_0xe0488(0x150),_0xe0488(0x17b),_0xe0488(0x155),_0xe0488(0x161),_0xe0488(0x179),_0xe0488(0x14f),_0xe0488(0x14e)]),LinterSeveritySchema=z[_0xe0488(0x168)]([_0xe0488(0x14b),_0xe0488(0x153),'error']),LinterConfigSchema=z[_0xe0488(0x180)]({'enabled':z[_0xe0488(0x149)](),'rules':z['record'](LinterRuleIdSchema,LinterSeveritySchema)}),McpConfigSchema=z[_0xe0488(0x180)]({'transport':z[_0xe0488(0x185)](_0xe0488(0x177))}),SandboxConfigSchema=z[_0xe0488(0x180)]({'shellCwd':z[_0xe0488(0x170)]()[_0xe0488(0x17d)](),'shellTimeoutMs':z['number']()[_0xe0488(0x16b)]()[_0xe0488(0x165)]()['optional'](),'exportSecrets':z['array'](z[_0xe0488(0x170)]())[_0xe0488(0x17d)](),'database':z['string']()['optional'](),'apiBaseUrl':z['string']()[_0xe0488(0x17a)]()['optional'](),'uploadDir':z[_0xe0488(0x170)]()[_0xe0488(0x17d)]()}),WebServerConfigSchema=z[_0xe0488(0x180)]({'command':z['string']()[_0xe0488(0x15a)](0x1),'url':z[_0xe0488(0x170)]()['url'](),'reuseExistingServer':z['boolean']()['default'](!![]),'timeoutMs':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()[_0xe0488(0x165)]()['default'](0xea60)}),UnotestConfigSchema=z[_0xe0488(0x180)]({'baseUrl':z[_0xe0488(0x170)]()[_0xe0488(0x17a)]()[_0xe0488(0x17d)](),'webServer':WebServerConfigSchema[_0xe0488(0x17d)](),'browsers':z[_0xe0488(0x15c)](BrowserSchema)[_0xe0488(0x15a)](0x1),'channel':BrowserChannelSchema,'viewport':ViewportSchema,'retry':RetryConfigSchema,'failureBundle':FailureBundleConfigSchema,'dialogPolicy':DialogPolicySchema,'storageState':z['string']()[_0xe0488(0x17d)](),'testDir':z['string']()[_0xe0488(0x15a)](0x1),'helpersDir':z['string']()[_0xe0488(0x15a)](0x1),'defaultTimeoutMs':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()[_0xe0488(0x165)](),'defaultNavigationTimeoutMs':z[_0xe0488(0x166)]()[_0xe0488(0x16b)]()[_0xe0488(0x165)](),'linter':LinterConfigSchema,'mcp':McpConfigSchema,'sandbox':SandboxConfigSchema}),DEFAULT_CONFIG={'browsers':[_0xe0488(0x154)],'viewport':{'width':0x500,'height':0x2d0},'retry':{'count':0x0,'on':[_0xe0488(0x15e)]},'failureBundle':{'tier1':!![],'tier2':!![],'tier3':{'network':![],'video':![]},'retention':{'runs':0x14,'days':0x7},'storageDir':'.unotest/failures'},'dialogPolicy':_0xe0488(0x164),'testDir':_0xe0488(0x17f),'helpersDir':_0xe0488(0x181),'defaultTimeoutMs':0xbb8,'defaultNavigationTimeoutMs':0x7530,'linter':{'enabled':!![],'rules':{'lint:deep-css':_0xe0488(0x153),'lint:xpath':_0xe0488(0x153),'lint:obfuscated-class':_0xe0488(0x153),'lint:pause-explicit':_0xe0488(0x153),'lint:disambig-by-index':_0xe0488(0x14b),'lint:evaluate-discouraged':'warn','lint:scenario-in-root':'error','lint:mustache-in-dsl':_0xe0488(0x148),'lint:goto-concat':'warn','lint:regex-invalid':_0xe0488(0x148),'lint:echo-assert':_0xe0488(0x153),'lint:lint-ok-missing-reason':_0xe0488(0x153),'validator:unknown-function':'error'}},'mcp':{'transport':_0xe0488(0x177)},'sandbox':{}};export{BrowserChannelSchema,BrowserSchema,DEFAULT_CONFIG,DialogPolicySchema,FailureBundleConfigSchema,LinterConfigSchema,LinterRuleIdSchema,LinterSeveritySchema,McpConfigSchema,RetryConfigSchema,RetryReasonSchema,SandboxConfigSchema,UnotestConfigSchema,ViewportSchema,WebServerConfigSchema};
1
+ function _0x439a(_0x5d0797,_0xebc588){_0x5d0797=_0x5d0797-0x1ef;var _0x20af53=_0x20af();var _0x439a5c=_0x20af53[_0x5d0797];if(_0x439a['bPfXEB']===undefined){var _0x20b772=function(_0x4caff7){var _0xb5e016='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x58df6d='',_0x271f3c='';for(var _0x5605f4=0x0,_0xff243,_0x12b7a5,_0x12b7f2=0x0;_0x12b7a5=_0x4caff7['charAt'](_0x12b7f2++);~_0x12b7a5&&(_0xff243=_0x5605f4%0x4?_0xff243*0x40+_0x12b7a5:_0x12b7a5,_0x5605f4++%0x4)?_0x58df6d+=String['fromCharCode'](0xff&_0xff243>>(-0x2*_0x5605f4&0x6)):0x0){_0x12b7a5=_0xb5e016['indexOf'](_0x12b7a5);}for(var _0x4a2f79=0x0,_0x2b1f10=_0x58df6d['length'];_0x4a2f79<_0x2b1f10;_0x4a2f79++){_0x271f3c+='%'+('00'+_0x58df6d['charCodeAt'](_0x4a2f79)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x271f3c);};_0x439a['YNwgsS']=_0x20b772,_0x439a['rYluct']={},_0x439a['bPfXEB']=!![];}var _0x23a33f=_0x20af53[0x0],_0xdde0b2=_0x5d0797+_0x23a33f,_0x53eee6=_0x439a['rYluct'][_0xdde0b2];return!_0x53eee6?(_0x439a5c=_0x439a['YNwgsS'](_0x439a5c),_0x439a['rYluct'][_0xdde0b2]=_0x439a5c):_0x439a5c=_0x53eee6,_0x439a5c;}var _0x4ba6ed=_0x439a;function _0x20af(){var _0x50cda3=['zgvMyxvSDa','BgLUDdPKAxnHBwjPzY1IEs1PBMrLEa','Cg9ZAxrPDMu','B2zM','BgLUDdPKzwvWlwnZCW','Dw5VDgvZDc9LmMuVx2HLBhbLCNm','mJG1mtHnr2D2Bhe','ndu2mZa2ogXrq05Hsa','BgLUDdPLDMfSDwf0zs1KAxnJB3vYywDLza','BxnLzgDL','y2HYB21PDw0','BwLU','zw51Bq','BgLUDdPZy2vUyxjPBY1PBI1YB290','BwfUDwfS','Bwf4','C3rYAw5N','BgLUDdPNB3rVlwnVBMnHDa','lNvUB3rLC3qVzMfPBhvYzxm','mZm3mZeZqKvjthPQ','BgLUDdPSAw50lw9Rlw1PC3nPBMCTCMvHC29U','BgLUDdPHCgKTy2fSBc1MAwXLlwjVzhK','DxjS','DMfSAwrHDg9YoNn0zxaTC2HHCgu','B2jQzwn0','DMfSAwrHDg9YoM1LDgeTC2HHCgu','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlwv4ChjLC3nPB24','DMfSAwrHDg9YoMLMlxnOyxbL','zMLYzwzVEa','yM9VBgvHBG','y2HYB21L','DMfSAwrHDg9YoMXPC3qTyxjN','BMv0D29YAW','DMfSAwrHDg9YoNzHCI1ZAgfWzq','BgL0zxjHBa','DMfSAwrHDg9YoNn0CMLUzY1JB25Jyxq','y3jHC2G','DMfSAwrHDg9YoNDYyxbWzwqTzM9YBwf0','zgLZBwLZCW','BgLUDdPLy2HVlwfZC2vYDa','DMfSAwrHDg9YoNnLBwfUDgLJlwXVC3m','BNvTyMvY','DMfSAwrHDg9YoMfYzY1RAw5K','DhjHBNnPzw50','D2vIA2L0','DMfSAwrHDg9YoMz1BMn0Aw9UlxnOyxbL','BgLUDdPYzwDLEc1PBNzHBgLK','B3b0Aw9UywW','BgLUDdPWyxvZzs1LEhbSAwnPDa','mJi3ndu4mdHXqKL1thC','C3rKAw8','nZmWmZqXnwPdqvzvCq','BNvSBa','BgLUDdPTDxn0ywnOzs1PBI1KC2W','BgLUDdP4Cgf0Aa','CMvJB3jK','yxjYyxK','mZaXodK0mhvXsxHtBG','DMfSAwrHDg9YoNvUC3vWCg9YDgvKlxn0yxrLBwvUDa','Aw50','D2fYBG','zxjYB3i','ntuXntyXngfiChbvCW','DMfSAwrHDg9YoMzVCI1ZAgfWzq','mtiWmgLKz0rVsq','ywnJzxb0'];_0x20af=function(){return _0x50cda3;};return _0x20af();}(function(_0x51f801,_0xa7d92b){var _0x31bb77={_0x58b0b4:0x1f9,_0x148ffb:0x1fe,_0x277a77:0x200,_0x3b8be4:0x208,_0x1a67da:0x1f3},_0x3b0f32=_0x439a,_0x4f00d2=_0x51f801();while(!![]){try{var _0x571e89=-parseInt(_0x3b0f32(0x215))/0x1+parseInt(_0x3b0f32(_0x31bb77._0x58b0b4))/0x2+-parseInt(_0x3b0f32(_0x31bb77._0x148ffb))/0x3+-parseInt(_0x3b0f32(0x209))/0x4+parseInt(_0x3b0f32(_0x31bb77._0x277a77))/0x5*(-parseInt(_0x3b0f32(_0x31bb77._0x3b8be4))/0x6)+parseInt(_0x3b0f32(_0x31bb77._0x1a67da))/0x7+parseInt(_0x3b0f32(0x1f1))/0x8;if(_0x571e89===_0xa7d92b)break;else _0x4f00d2['push'](_0x4f00d2['shift']());}catch(_0x3292c9){_0x4f00d2['push'](_0x4f00d2['shift']());}}}(_0x20af,0xe52cf));import{z}from'zod';var BrowserSchema=z[_0x4ba6ed(0x20e)]([_0x4ba6ed(0x20c),_0x4ba6ed(0x21e),_0x4ba6ed(0x22e)]),BrowserChannelSchema=z['union']([z[_0x4ba6ed(0x224)](_0x4ba6ed(0x220)),z[_0x4ba6ed(0x224)](_0x4ba6ed(0x20b)),z['literal']('chrome-beta'),z[_0x4ba6ed(0x1f4)]()])[_0x4ba6ed(0x1ef)](),ViewportSchema=z[_0x4ba6ed(0x21a)]({'width':z['number']()[_0x4ba6ed(0x1fb)]()[_0x4ba6ed(0x204)](),'height':z['number']()[_0x4ba6ed(0x1fb)]()['positive']()}),RetryReasonSchema=z['enum']([_0x4ba6ed(0x22d),_0x4ba6ed(0x222),_0x4ba6ed(0x226)]),RetryConfigSchema=z['object']({'count':z['number']()[_0x4ba6ed(0x1fb)]()['min'](0x0)[_0x4ba6ed(0x211)](0xa),'on':z[_0x4ba6ed(0x1f8)](RetryReasonSchema)}),FailureBundleConfigSchema=z[_0x4ba6ed(0x21a)]({'tier1':z['literal'](!![])[_0x4ba6ed(0x202)](!![]),'tier2':z[_0x4ba6ed(0x21f)](),'tier3':z[_0x4ba6ed(0x21a)]({'network':z['boolean'](),'video':z['boolean']()}),'retention':z[_0x4ba6ed(0x21a)]({'runs':z[_0x4ba6ed(0x22b)]()[_0x4ba6ed(0x1fb)]()[_0x4ba6ed(0x204)](),'days':z[_0x4ba6ed(0x22b)]()[_0x4ba6ed(0x1fb)]()[_0x4ba6ed(0x204)]()}),'storageDir':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x20d)](0x1)}),DialogPolicySchema=z['enum']([_0x4ba6ed(0x201),_0x4ba6ed(0x228),_0x4ba6ed(0x210)]),LinterRuleIdSchema=z[_0x4ba6ed(0x20e)]([_0x4ba6ed(0x206),_0x4ba6ed(0x1f6),'lint:obfuscated-class',_0x4ba6ed(0x1f0),_0x4ba6ed(0x203),_0x4ba6ed(0x20a),_0x4ba6ed(0x20f),_0x4ba6ed(0x1f5),_0x4ba6ed(0x213),_0x4ba6ed(0x230),_0x4ba6ed(0x229),_0x4ba6ed(0x217),_0x4ba6ed(0x216),'validator:unknown-function','validator:arity',_0x4ba6ed(0x22c),'validator:step-coverage',_0x4ba6ed(0x219),_0x4ba6ed(0x21b),_0x4ba6ed(0x22f),_0x4ba6ed(0x1ff),_0x4ba6ed(0x21d),_0x4ba6ed(0x223),_0x4ba6ed(0x1fa),_0x4ba6ed(0x21c),_0x4ba6ed(0x225),_0x4ba6ed(0x22a),_0x4ba6ed(0x221),_0x4ba6ed(0x227)]),LinterSeveritySchema=z[_0x4ba6ed(0x20e)](['off',_0x4ba6ed(0x1fc),_0x4ba6ed(0x1fd)]),LinterConfigSchema=z[_0x4ba6ed(0x21a)]({'enabled':z[_0x4ba6ed(0x21f)](),'rules':z[_0x4ba6ed(0x1f7)](LinterRuleIdSchema,LinterSeveritySchema)}),McpConfigSchema=z[_0x4ba6ed(0x21a)]({'transport':z['literal'](_0x4ba6ed(0x1f2))}),SandboxConfigSchema=z['object']({'shellCwd':z[_0x4ba6ed(0x212)]()['optional'](),'shellTimeoutMs':z[_0x4ba6ed(0x22b)]()['int']()[_0x4ba6ed(0x204)]()['optional'](),'exportSecrets':z[_0x4ba6ed(0x1f8)](z[_0x4ba6ed(0x212)]())[_0x4ba6ed(0x1ef)](),'database':z[_0x4ba6ed(0x212)]()['optional'](),'apiBaseUrl':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x218)]()[_0x4ba6ed(0x1ef)](),'uploadDir':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x1ef)]()}),WebServerConfigSchema=z[_0x4ba6ed(0x21a)]({'command':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x20d)](0x1),'url':z[_0x4ba6ed(0x212)]()['url'](),'reuseExistingServer':z[_0x4ba6ed(0x21f)]()[_0x4ba6ed(0x202)](!![]),'timeoutMs':z[_0x4ba6ed(0x22b)]()[_0x4ba6ed(0x1fb)]()[_0x4ba6ed(0x204)]()['default'](0xea60)}),UnotestConfigSchema=z[_0x4ba6ed(0x21a)]({'baseUrl':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x218)]()['optional'](),'webServer':WebServerConfigSchema[_0x4ba6ed(0x1ef)](),'browsers':z[_0x4ba6ed(0x1f8)](BrowserSchema)[_0x4ba6ed(0x20d)](0x1),'channel':BrowserChannelSchema,'viewport':ViewportSchema,'retry':RetryConfigSchema,'failureBundle':FailureBundleConfigSchema,'dialogPolicy':DialogPolicySchema,'storageState':z[_0x4ba6ed(0x212)]()['optional'](),'testDir':z[_0x4ba6ed(0x212)]()[_0x4ba6ed(0x20d)](0x1),'helpersDir':z['string']()[_0x4ba6ed(0x20d)](0x1),'defaultTimeoutMs':z[_0x4ba6ed(0x22b)]()[_0x4ba6ed(0x1fb)]()['positive'](),'defaultNavigationTimeoutMs':z[_0x4ba6ed(0x22b)]()[_0x4ba6ed(0x1fb)]()[_0x4ba6ed(0x204)](),'linter':LinterConfigSchema,'mcp':McpConfigSchema,'sandbox':SandboxConfigSchema}),DEFAULT_CONFIG={'browsers':[_0x4ba6ed(0x20c)],'viewport':{'width':0x500,'height':0x2d0},'retry':{'count':0x0,'on':['transient']},'failureBundle':{'tier1':!![],'tier2':!![],'tier3':{'network':![],'video':![]},'retention':{'runs':0x14,'days':0x7},'storageDir':_0x4ba6ed(0x214)},'dialogPolicy':_0x4ba6ed(0x201),'testDir':'unotest/e2e','helpersDir':_0x4ba6ed(0x207),'defaultTimeoutMs':0xbb8,'defaultNavigationTimeoutMs':0x7530,'linter':{'enabled':!![],'rules':{'lint:deep-css':_0x4ba6ed(0x1fc),'lint:xpath':_0x4ba6ed(0x1fc),'lint:obfuscated-class':_0x4ba6ed(0x1fc),'lint:pause-explicit':_0x4ba6ed(0x1fc),'lint:disambig-by-index':_0x4ba6ed(0x205),'lint:evaluate-discouraged':_0x4ba6ed(0x1fc),'lint:scenario-in-root':_0x4ba6ed(0x1fd),'lint:mustache-in-dsl':'error','lint:goto-concat':_0x4ba6ed(0x1fc),'lint:regex-invalid':_0x4ba6ed(0x1fd),'lint:echo-assert':_0x4ba6ed(0x1fc),'lint:lint-ok-missing-reason':'warn','validator:unknown-function':'error'}},'mcp':{'transport':_0x4ba6ed(0x1f2)},'sandbox':{}};export{BrowserChannelSchema,BrowserSchema,DEFAULT_CONFIG,DialogPolicySchema,FailureBundleConfigSchema,LinterConfigSchema,LinterRuleIdSchema,LinterSeveritySchema,McpConfigSchema,RetryConfigSchema,RetryReasonSchema,SandboxConfigSchema,UnotestConfigSchema,ViewportSchema,WebServerConfigSchema};
@@ -1 +1 @@
1
- const _0x1b3f7d=_0x35ac;(function(_0x42dcc0,_0x2e2728){const _0x388268={_0x1393b7:0x16e,_0x50f0a3:0x109,_0x88d67b:0x112,_0x470802:0x171,_0x420133:0x178},_0x60cd53=_0x35ac,_0x290dc1=_0x42dcc0();while(!![]){try{const _0x126703=-parseInt(_0x60cd53(_0x388268._0x1393b7))/0x1+-parseInt(_0x60cd53(0x16c))/0x2+-parseInt(_0x60cd53(0x156))/0x3*(parseInt(_0x60cd53(_0x388268._0x50f0a3))/0x4)+-parseInt(_0x60cd53(0x16f))/0x5*(parseInt(_0x60cd53(_0x388268._0x88d67b))/0x6)+parseInt(_0x60cd53(0x13c))/0x7+parseInt(_0x60cd53(0x12b))/0x8*(-parseInt(_0x60cd53(_0x388268._0x470802))/0x9)+parseInt(_0x60cd53(_0x388268._0x420133))/0xa;if(_0x126703===_0x2e2728)break;else _0x290dc1['push'](_0x290dc1['shift']());}catch(_0x237bb5){_0x290dc1['push'](_0x290dc1['shift']());}}}(_0x5ee5,0x92203));var __defProp=Object['defineProperty'],__name=(_0x597dc4,_0x4bc29e)=>__defProp(_0x597dc4,'name',{'value':_0x4bc29e,'configurable':!![]});function subscribe(_0x3fca59,_0x588537){const _0x36c2eb={_0x1068ee:0x11c},_0x46489e={_0x5db3e7:0x129},_0x3807be=_0x35ac;return _0x3fca59[_0x3807be(_0x36c2eb._0x1068ee)](_0x588537),()=>{const _0x2c1631=_0x3807be;_0x3fca59[_0x2c1631(_0x46489e._0x5db3e7)](_0x588537);};}function _0x35ac(_0xcdf838,_0x3c15cb){_0xcdf838=_0xcdf838-0x103;const _0x5ee5ab=_0x5ee5();let _0x35ac7c=_0x5ee5ab[_0xcdf838];if(_0x35ac['yPBvPp']===undefined){var _0x519ed4=function(_0x4da1b0){const _0x1cc19f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x597dc4='',_0x4bc29e='';for(let _0x3fca59=0x0,_0x588537,_0x836f4c,_0x162ca9=0x0;_0x836f4c=_0x4da1b0['charAt'](_0x162ca9++);~_0x836f4c&&(_0x588537=_0x3fca59%0x4?_0x588537*0x40+_0x836f4c:_0x836f4c,_0x3fca59++%0x4)?_0x597dc4+=String['fromCharCode'](0xff&_0x588537>>(-0x2*_0x3fca59&0x6)):0x0){_0x836f4c=_0x1cc19f['indexOf'](_0x836f4c);}for(let _0x263980=0x0,_0x2c3ca7=_0x597dc4['length'];_0x263980<_0x2c3ca7;_0x263980++){_0x4bc29e+='%'+('00'+_0x597dc4['charCodeAt'](_0x263980)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4bc29e);};_0x35ac['JKvKYK']=_0x519ed4,_0x35ac['lCTjsz']={},_0x35ac['yPBvPp']=!![];}const _0x3c9d38=_0x5ee5ab[0x0],_0x4091fe=_0xcdf838+_0x3c9d38,_0x115407=_0x35ac['lCTjsz'][_0x4091fe];return!_0x115407?(_0x35ac7c=_0x35ac['JKvKYK'](_0x35ac7c),_0x35ac['lCTjsz'][_0x4091fe]=_0x35ac7c):_0x35ac7c=_0x115407,_0x35ac7c;}__name(subscribe,_0x1b3f7d(0x13e));import{UnotestError}from'@unotest/core';var DriverError=class extends UnotestError{static{__name(this,_0x1b3f7d(0x176));}},LocatorError=class extends UnotestError{static{__name(this,_0x1b3f7d(0x148));}};function createRecorder(){const _0x1d96f9={_0x52431c:0x150},_0x3de4d1=_0x1b3f7d,_0x836f4c=[];let _0x162ca9=0x0;return{'push':__name(_0x263980=>_0x836f4c[_0x3de4d1(0x120)]({..._0x263980,'seq':_0x162ca9++}),_0x3de4d1(0x120)),'calls':__name(()=>_0x836f4c,_0x3de4d1(_0x1d96f9._0x52431c))};}__name(createRecorder,_0x1b3f7d(0x15b));function _0x5ee5(){const _0x237b8b=['zNjVBq','CgfNzuXPC3q','rhjPDMvYrxjYB3i','Aw5ZCgvJDevSzw1LBNq','nda4otGYodbrvMTJvgy','Cg9W','C2nYzwvUC2HVDa','BMv3q29UDgv4Da','lNbHz2u','ChjLC3m','Bgf1BMnO','mJKXmZaYohPuq01ZyG','y2XPCgjVyxjKugfZDgu','BgvUz3rO','ywn0AxzLswr4','Bgf1BMnOzwq','zMLSDgvY','yxr0ywnOrxHPC3rPBMC','zhjPDMvY','y3r4','odmWnJiYzvvnt3vk','zxzHBhvHDgu','z2v0tg9JywXtDg9YywDL','B3v0zxjiDg1SqNLszwy','z2v0q29VA2LL','C2nYB2XSsw50B1zPzxC','B25bzNrLCKnSAwnR','C3rLChm','C2vSzwn0t3b0Aw9U','AxnwAxnPyMXL','ywrK','CMvM','AxnwAxnPyMXLqNLezwzHDwX0','ywjVDxq6yMXHBMS','ChvZAa','rMfRzvDLyKrYAxzLCG','Aw5WDxrwywX1zq','Cg9WDxbpBKnSAwnR','zw50zxjgCMfTzq','zMfRzs1WBMC','C2v0qwn0AxzLugfNzq','D2fPDezVCLvYBa','Aw5PDgLHBfvYBa','zgvSzxrL','zMLSBa','ndbgt0vWC1O','Bwv0Ag9K','D2fPDezVCG','zxHPDezYyw1LignHBgXLzcb3AxrOig5VigzYyw1Lig9UihrOzsbZDgfJAW','zxjYB3jpBK5LEhrby3rPB24','D2fPDezVCLrLEhq','BM8Gywn0AxzLihbHz2uGAw4Gy29UDgv4Da','yMvOyxzPB3i','D2fPDezVCKXVywrtDgf0zq','y29UBMvJDfnOyxjLza','y29UBMvJDfnOyxjLzcbUB3qGC3vWCg9YDgvKigj5iezHA2vxzwjeCML2zxi','ywn0AxzLugfNzq','y3vYCMvUDfvYBa','B3v0zxjive1m','C2v0tg9JywXtDg9YywDL','y29VA2LLCW','rMfRzunVBNrLEhq','mtmXotK5mhjOv2j4yG','y29VA2LLu3rHDgu','C3vIC2nYAwjL','zNjHBwvezxb0Aa','C2nVCgu','z29cywnR','zhjHz0fUzerYB3a','z2v0qxr0CMLIDxrL','Ag92zxi','z29gB3j3yxjK','A2LUza','Bg9JywXtDg9YywDLu3rHDgu','tg9JyxrVCKvYCM9Y','y291BNq','Bg9JywXtDg9YywDL','zNjHBwvtDgfJAW','lNbHz2uW','AxneAxnHyMXLzej5rgvMyxvSDa','zxHPDezYyw1L','y291BNrcEurLzMf1Bhq','y2fSBhm','y29UC29SzuvUDhjPzxm','zxzHBhvHDgvpBKXVy2f0B3i','rMfRzvbHz2u','AxneAxnHyMXLza','y2HLy2S','m3fsqMTvAW','y2XPy2S','Dgv4DenVBNrLBNq','Dgv4DenVBNrLBNrcEurLzMf1Bhq','pgrPDJ48l2rPDJ4','y3jLyxrLuMvJB3jKzxi','y29UDgv4Dhm','D3nfBMrWB2LUDa','BMv0D29YA0vUDhjPzxm','Dw5JAgvJAW','y2fSBhngB3i','CMvJB3jKzxi','z290BW','zw50zxjgCMfTzsbJywXSzwqGD2L0AcbLBxb0EsbSB2nHDg9Y','C2f2zvn0B3jHz2vtDgf0zq','CMvSB2fK','DxbSB2fKrMLSzq','CMvJB3jK','BMv3q29UDgv4DcbJywXSzwqGyMvMB3jLigXHDw5JAcGP','B25ozxDqywDL','yxr0CMLIDxrLC0j5rgvMyxvSDa','Bwf5yMvuAhjVDW','mJe2mZG0nNLyDLLPAG','y2HLy2TLzfn0yxrL','ntq0ndqXvfPuzwDy','mtvgvufOswi','zg91yMXLq2XPy2S','mtyZnZG4m05ctgLAuW','y2XVC2u','BMv3ugfNzuXPC3rLBMvYCW'];_0x5ee5=function(){return _0x237b8b;};return _0x5ee5();}var FakePage=class{constructor(_0x2c3ca7,_0x40c29a,_0x5b1542,_0x3e5b88){const _0x2e4edd={_0x872a31:0x132},_0x29baa0=_0x1b3f7d;this[_0x29baa0(0x161)]=_0x2c3ca7,this[_0x29baa0(_0x2e4edd._0x872a31)]=_0x40c29a,this['scope']=_0x5b1542,this['currentUrl']=_0x3e5b88;}[_0x1b3f7d(0x161)];[_0x1b3f7d(0x132)];[_0x1b3f7d(0x140)];static{__name(this,_0x1b3f7d(0x153));}[_0x1b3f7d(0x137)];[_0x1b3f7d(0x118)];['record'](_0x151ed9,_0x2c1173){const _0x345de6={_0xb19604:0x161,_0x2d6a10:0x120},_0x1e005b=_0x1b3f7d;this[_0x1e005b(_0x345de6._0xb19604)][_0x1e005b(_0x345de6._0x2d6a10)]({'scope':this['scope'],'method':_0x151ed9,'args':_0x2c1173});}['maybeThrow'](){const _0xa6c9af={_0x525906:0x12f},_0x316ab4=_0x1b3f7d;if(this[_0x316ab4(0x132)][_0x316ab4(0x12f)]){const _0x5d7232=this[_0x316ab4(0x132)]['errorOnNextAction'];this[_0x316ab4(0x132)][_0x316ab4(_0xa6c9af._0x525906)]=void 0x0;throw _0x5d7232;}}['url'](){return this['currentUrl'];}async['title'](){const _0x29d513=_0x1b3f7d;return this[_0x29d513(0x167)]('title',[]),'fake\x20title';}async[_0x1b3f7d(0x157)](_0x5d618b,_0x5ea92d){const _0x1abadf=_0x1b3f7d;this['record']('click',[_0x5d618b,_0x5ea92d]),this['maybeThrow'](),this[_0x1abadf(0x118)]?.();}async[_0x1b3f7d(0x170)](_0x2f3e42,_0x355a51){const _0x961737={_0xbb5de5:0x167},_0x248f0f=_0x1b3f7d;this[_0x248f0f(_0x961737._0xbb5de5)](_0x248f0f(0x170),[_0x2f3e42,_0x355a51]),this[_0x248f0f(0x16b)]();}async[_0x1b3f7d(0x12a)](_0x930dae,_0x4085b3,_0xe43879){const _0x1d6a5c={_0x360a9c:0x16b},_0x1cb199=_0x1b3f7d;this['record'](_0x1cb199(0x12a),[_0x930dae,_0x4085b3,_0xe43879]),this[_0x1cb199(_0x1d6a5c._0x360a9c)]();}async[_0x1b3f7d(0x107)](_0x4f50d3,_0x298725,_0x226915){const _0x5eefa6={_0x3d1311:0x167},_0x55cf27=_0x1b3f7d;this[_0x55cf27(_0x5eefa6._0x3d1311)]('press',[_0x4f50d3,_0x298725,_0x226915]),this[_0x55cf27(0x16b)]();}async[_0x1b3f7d(0x155)](_0x594f8a,_0x4f29cb){const _0x4d6a14={_0x1ca8ba:0x167,_0x4f5359:0x155,_0x1cf221:0x16b},_0xc9f150=_0x1b3f7d;this[_0xc9f150(_0x4d6a14._0x1ca8ba)](_0xc9f150(_0x4d6a14._0x4f5359),[_0x594f8a,_0x4f29cb]),this[_0xc9f150(_0x4d6a14._0x1cf221)]();}async[_0x1b3f7d(0x15f)](_0x17f52a,_0x29afdc){const _0x5cb69c={_0xf4619c:0x167,_0x255b53:0x16b},_0x4d9320=_0x1b3f7d;this[_0x4d9320(_0x5cb69c._0xf4619c)]('uncheck',[_0x17f52a,_0x29afdc]),this[_0x4d9320(_0x5cb69c._0x255b53)]();}async[_0x1b3f7d(0x11a)](_0x4d8d46,_0x3dff60,_0x4be9b7){const _0x13777c={_0x2ecbc9:0x167,_0x5ed2de:0x11a,_0x4618e3:0x16b},_0x369373=_0x1b3f7d;this[_0x369373(_0x13777c._0x2ecbc9)](_0x369373(_0x13777c._0x5ed2de),[_0x4d8d46,_0x3dff60,_0x4be9b7]),this[_0x369373(_0x13777c._0x4618e3)]();}async[_0x1b3f7d(0x144)](_0x45b810,_0x22d286){const _0x31fbf5={_0x3d9dbc:0x16b},_0x5a18c3=_0x1b3f7d;this[_0x5a18c3(0x167)]('hover',[_0x45b810,_0x22d286]),this[_0x5a18c3(_0x31fbf5._0x3d9dbc)]();}async[_0x1b3f7d(0x117)](_0x21d430){const _0x6256a5={_0x2eb577:0x167},_0x22663f=_0x1b3f7d;this[_0x22663f(_0x6256a5._0x2eb577)](_0x22663f(0x117),[_0x21d430]),this[_0x22663f(0x16b)]();}async[_0x1b3f7d(0x142)](_0x43a6d6,_0x920c84,_0xf2de1a){const _0x3ab3cf={_0xbb69fd:0x167,_0xe46c6b:0x142,_0x248031:0x16b},_0x26d1a7=_0x1b3f7d;this[_0x26d1a7(_0x3ab3cf._0xbb69fd)](_0x26d1a7(_0x3ab3cf._0xe46c6b),[_0x43a6d6,_0x920c84,_0xf2de1a]),this[_0x26d1a7(_0x3ab3cf._0x248031)]();}async[_0x1b3f7d(0x166)](_0x404aff,_0x57a0cb){const _0x149304={_0x3afac9:0x167},_0x1ccd17=_0x1b3f7d;this[_0x1ccd17(_0x149304._0x3afac9)](_0x1ccd17(0x166),[_0x404aff,_0x57a0cb]),this[_0x1ccd17(0x16b)]();}async['clipboardPaste'](_0x6ba27d,_0x37c45a){const _0x41dc7e={_0x54377a:0x10a},_0x139419=_0x1b3f7d;this[_0x139419(0x167)](_0x139419(_0x41dc7e._0x54377a),[_0x6ba27d,_0x37c45a]),this[_0x139419(0x16b)]();}async[_0x1b3f7d(0x149)](_0x197c5b){const _0x5523a6={_0x1dbc20:0x149},_0x2b53d6=_0x1b3f7d;return this['record'](_0x2b53d6(_0x5523a6._0x1dbc20),[_0x197c5b]),this[_0x2b53d6(0x132)][_0x2b53d6(0x14f)]??0x1;}async[_0x1b3f7d(0x158)](_0x5b974b){const _0x44ffbd={_0x472afb:0x132},_0x4da538=_0x1b3f7d;return this[_0x4da538(0x167)](_0x4da538(0x158),[_0x5b974b]),this[_0x4da538(_0x44ffbd._0x472afb)][_0x4da538(0x159)]??'';}async[_0x1b3f7d(0x122)](_0x5be067){const _0x137fae=_0x1b3f7d;return this['record'](_0x137fae(0x122),[_0x5be067]),this[_0x137fae(0x132)]['inputValueByDefault']??'';}async[_0x1b3f7d(0x16d)](_0x3f77a6){const _0x582c44={_0x2bc151:0x167,_0x162256:0x16d},_0x26e0f2=_0x1b3f7d;return this[_0x26e0f2(_0x582c44._0x2bc151)](_0x26e0f2(_0x582c44._0x162256),[_0x3f77a6]),this[_0x26e0f2(0x132)]['checkedStateByDefault']??null;}async[_0x1b3f7d(0x11b)](_0x5c569a){const _0x77731e={_0x2f274e:0x167,_0x1e5dd7:0x11b,_0x78d70f:0x11e},_0x16f2ed=_0x1b3f7d;return this[_0x16f2ed(_0x77731e._0x2f274e)](_0x16f2ed(_0x77731e._0x1e5dd7),[_0x5c569a]),this['behavior'][_0x16f2ed(_0x77731e._0x78d70f)]??!![];}async[_0x1b3f7d(0x154)](_0x2225b6){const _0x355b52={_0x160e82:0x167,_0x3186ff:0x14d},_0x9a0040=_0x1b3f7d;return this[_0x9a0040(_0x355b52._0x160e82)](_0x9a0040(0x154),[_0x2225b6]),this[_0x9a0040(0x132)][_0x9a0040(_0x355b52._0x3186ff)]??![];}async[_0x1b3f7d(0x143)](_0x1fe5f0,_0x5a1416){const _0x51eabe={_0x2a3748:0x132,_0x22f03a:0x16a},_0x50b115=_0x1b3f7d;return this[_0x50b115(0x167)](_0x50b115(0x143),[_0x1fe5f0,_0x5a1416]),this[_0x50b115(_0x51eabe._0x2a3748)][_0x50b115(_0x51eabe._0x22f03a)]?.[_0x5a1416]??null;}async[_0x1b3f7d(0x12d)](_0x952a51,_0x35a60d){const _0xccff37={_0x5efcee:0x167},_0xa48725=_0x1b3f7d;this[_0xa48725(_0xccff37._0x5efcee)](_0xa48725(0x12d),[_0x952a51,_0x35a60d]);}async[_0x1b3f7d(0x127)](_0x2f6278,_0x2536d9){const _0xf6e5f3={_0x112bc5:0x167},_0x11966c=_0x1b3f7d;this[_0x11966c(_0xf6e5f3._0x112bc5)](_0x11966c(0x127),[_0x2f6278,_0x2536d9]);}async[_0x1b3f7d(0x130)](_0x2bffa9,_0x4e51b3){const _0x2c6508={_0x1af70d:0x167,_0x4b89bd:0x130},_0x3fcba5=_0x1b3f7d;this[_0x3fcba5(_0x2c6508._0x1af70d)](_0x3fcba5(_0x2c6508._0x4b89bd),[_0x2bffa9,_0x4e51b3]);}async['waitForNavigation'](_0x159470){const _0x1c99be={_0x25885a:0x167},_0x43f31c=_0x1b3f7d;this[_0x43f31c(_0x1c99be._0x25885a)]('waitForNavigation',[_0x159470]);}async[_0x1b3f7d(0x133)](_0x825e22,_0x137e16){this['record']('waitForLoadState',[_0x825e22,_0x137e16]);}async[_0x1b3f7d(0x162)](_0x4ab11e,_0x1f3f7e){const _0x55a69b={_0xd63d48:0x167,_0x4dffb5:0x162},_0x50c817=_0x1b3f7d;this[_0x50c817(_0x55a69b._0xd63d48)](_0x50c817(_0x55a69b._0x4dffb5),[_0x4ab11e,_0x1f3f7e]),this[_0x50c817(0x137)]=_0x4ab11e;}async[_0x1b3f7d(0x165)](_0x15803d){const _0x4ced96={_0x56a516:0x165},_0x41e401=_0x1b3f7d;this[_0x41e401(0x167)](_0x41e401(_0x4ced96._0x56a516),[_0x15803d]);}async[_0x1b3f7d(0x141)](_0x14b00a){const _0x4d5f5f={_0x2b4ac1:0x167,_0x132d71:0x141},_0x5f8e9=_0x1b3f7d;this[_0x5f8e9(_0x4d5f5f._0x2b4ac1)](_0x5f8e9(_0x4d5f5f._0x132d71),[_0x14b00a]);}async[_0x1b3f7d(0x145)](_0x4ac0a7){const _0x3aff05=_0x1b3f7d;this[_0x3aff05(0x167)](_0x3aff05(0x145),[_0x4ac0a7]);}async['evaluate'](_0x1eb9ee){const _0x54b231={_0x5486ef:0x167},_0x36fbde=_0x1b3f7d;return this[_0x36fbde(_0x54b231._0x5486ef)](_0x36fbde(0x113),[_0x1eb9ee]),void 0x0;}async[_0x1b3f7d(0x152)](_0xf984c7,_0x851dd6){const _0x3ddd79={_0x576485:0x152},_0x455467=_0x1b3f7d;return this['record'](_0x455467(_0x3ddd79._0x576485),[_0xf984c7,_0x851dd6]),void 0x0;}async[_0x1b3f7d(0x177)](_0x3bedee){const _0x24a5e2={_0x4879aa:0x10b,_0x51dc4f:0x11d},_0x3aa927=_0x1b3f7d;this[_0x3aa927(0x167)](_0x3aa927(0x177),[_0x3bedee]);if(_0x3bedee[_0x3aa927(0x119)][_0x3aa927(_0x24a5e2._0x4879aa)]!==0x1||_0x3bedee['steps'][0x0]['kind']!==_0x3aa927(0x11d))return null;const _0x17bb6f=_0x3bedee[_0x3aa927(0x119)][0x0][_0x3aa927(_0x24a5e2._0x51dc4f)],_0xf0163a=this[_0x3aa927(0x132)]['elementHintByRef']?.[_0x17bb6f];return _0xf0163a??null;}async[_0x1b3f7d(0x104)](_0x13f1eb){const _0x3e4a4e={_0x3760e9:0x174},_0x812595=_0x1b3f7d;return this['record'](_0x812595(0x104),[_0x13f1eb]),Buffer[_0x812595(_0x3e4a4e._0x3760e9)](_0x812595(0x125));}async['outerHTML'](_0x2df4d7){const _0x516794={_0x21bc53:0x138,_0xeac98d:0x119,_0x35ef7e:0x119,_0x4093d8:0x11d,_0x33313a:0x115,_0x2006cf:0x15a},_0x4d7826=_0x1b3f7d;this[_0x4d7826(0x167)](_0x4d7826(_0x516794._0x21bc53),[_0x2df4d7]);if(_0x2df4d7[_0x4d7826(_0x516794._0xeac98d)][_0x4d7826(0x10b)]===0x1&&_0x2df4d7[_0x4d7826(_0x516794._0x35ef7e)][0x0][_0x4d7826(0x146)]===_0x4d7826(_0x516794._0x4093d8)){const _0x2734c9=_0x2df4d7['steps'][0x0][_0x4d7826(_0x516794._0x4093d8)];return this[_0x4d7826(0x132)][_0x4d7826(_0x516794._0x33313a)]?.[_0x2734c9]??'<div\x20data-unotest-ref=\x22'+_0x2734c9+'\x22></div>';}return _0x4d7826(_0x516794._0x2006cf);}},FakeContext=class{constructor(_0x1567ba,_0x5e0112,_0x5bfa53){const _0x25cdf0={_0x2dbfd1:0x161,_0xd9a839:0x128,_0x1bf21b:0x118,_0xfdab7c:0x14a},_0x20e768={_0x142b37:0x123},_0x5989d4=_0x1b3f7d;this[_0x5989d4(_0x25cdf0._0x2dbfd1)]=_0x1567ba,this[_0x5989d4(0x132)]=_0x5e0112,this[_0x5989d4(0x140)]=_0x5bfa53;const _0x2a658a=new FakePage(_0x1567ba,_0x5e0112,_0x5bfa53+_0x5989d4(0x14c),_0x5e0112[_0x5989d4(_0x25cdf0._0xd9a839)]??_0x5989d4(0x11f));_0x5e0112[_0x5989d4(0x123)]&&(_0x2a658a[_0x5989d4(_0x25cdf0._0x1bf21b)]=()=>{const _0x29e2b7=_0x5989d4;this['emitFakePopup'](_0x5e0112[_0x29e2b7(_0x20e768._0x142b37)]);}),this['pageList']=[_0x2a658a],this['localStorageState']={..._0x5e0112[_0x5989d4(_0x25cdf0._0xfdab7c)]??{}},this['cookieState']={..._0x5e0112[_0x5989d4(0x13a)]??{}};}[_0x1b3f7d(0x161)];['behavior'];[_0x1b3f7d(0x140)];static{__name(this,_0x1b3f7d(0x13b));}[_0x1b3f7d(0x175)];[_0x1b3f7d(0x10c)]=0x0;[_0x1b3f7d(0x14b)]=[];[_0x1b3f7d(0x147)];[_0x1b3f7d(0x13d)];[_0x1b3f7d(0x173)]=new Set();[_0x1b3f7d(0x167)](_0x4915c0,_0x5c775a){const _0x3ba894={_0x531235:0x161,_0x1367fb:0x120},_0x14ddf3=_0x1b3f7d;this[_0x14ddf3(_0x3ba894._0x531235)][_0x14ddf3(_0x3ba894._0x1367fb)]({'scope':this[_0x14ddf3(0x140)],'method':_0x4915c0,'args':_0x5c775a});}['pages'](){const _0x5d5364={_0x4b57e4:0x175},_0x19fc96=_0x1b3f7d;return this[_0x19fc96(_0x5d5364._0x4b57e4)];}[_0x1b3f7d(0x136)](){const _0x2e9b1c={_0x281377:0x175,_0xfd94ba:0x10c,_0x40e135:0x131},_0xfecd11=_0x1b3f7d,_0x1e1520=this[_0xfecd11(_0x2e9b1c._0x281377)][this[_0xfecd11(_0x2e9b1c._0xfd94ba)]];if(!_0x1e1520)throw new DriverError(_0xfecd11(_0x2e9b1c._0x40e135),{'activeIdx':this['activeIdx']});return _0x1e1520;}[_0x1b3f7d(0x151)](){const _0x4f4b13=_0x1b3f7d;return this[_0x4f4b13(0x132)][_0x4f4b13(0x151)]??[];}[_0x1b3f7d(0x15e)](){const _0x574f7f=_0x1b3f7d;return this[_0x574f7f(0x132)]['networkEntries']??[];}async[_0x1b3f7d(0x126)](_0x3a926d){const _0x2c739a={_0x12f1f3:0x175,_0x24eaf3:0x10b,_0x38b161:0x10c,_0x595cf3:0x14b},_0x421a3e=_0x1b3f7d;this[_0x421a3e(0x167)]('setActivePage',[_0x3a926d]);if(_0x3a926d<0x0||_0x3a926d>=this[_0x421a3e(0x175)][_0x421a3e(0x10b)])throw new DriverError('page\x20index\x20out\x20of\x20range',{'index':_0x3a926d,'available':this[_0x421a3e(_0x2c739a._0x12f1f3)][_0x421a3e(_0x2c739a._0x24eaf3)]});this[_0x421a3e(_0x2c739a._0x38b161)]=_0x3a926d,this[_0x421a3e(_0x2c739a._0x595cf3)]['length']=0x0;}[_0x1b3f7d(0x169)](_0x4b9a7f){const _0x47ca64={_0x179909:0x173},_0x532916=_0x1b3f7d;return subscribe(this[_0x532916(_0x47ca64._0x179909)],_0x4b9a7f);}['emitFakePopup'](_0x4935a4){const _0x3dfb9b={_0x4372a8:0x140,_0x29960f:0x106,_0x3b3926:0x10b,_0x50e9cf:0x161,_0x516597:0x132,_0x2d7ac2:0x173},_0x3fd955=_0x1b3f7d,_0x5d1f7a=this[_0x3fd955(_0x3dfb9b._0x4372a8)]+_0x3fd955(_0x3dfb9b._0x29960f)+this[_0x3fd955(0x175)][_0x3fd955(_0x3dfb9b._0x3b3926)],_0x4a8818=new FakePage(this[_0x3fd955(_0x3dfb9b._0x50e9cf)],this[_0x3fd955(_0x3dfb9b._0x516597)],_0x5d1f7a,_0x4935a4);this['pageList'][_0x3fd955(0x120)](_0x4a8818);const _0x3cd7e=this['pageList'][_0x3fd955(_0x3dfb9b._0x3b3926)]-0x1;for(const _0x4f787a of this[_0x3fd955(_0x3dfb9b._0x2d7ac2)]){try{_0x4f787a({'index':_0x3cd7e,'url':_0x4935a4});}catch{}}return _0x3cd7e;}['closeFakePage'](_0x5171cf){const _0x470923={_0x4b2d21:0x175},_0x2ce678=_0x1b3f7d;if(_0x5171cf<0x0||_0x5171cf>=this['pageList'][_0x2ce678(0x10b)])throw new DriverError('page\x20index\x20out\x20of\x20range',{'index':_0x5171cf,'available':this[_0x2ce678(_0x470923._0x4b2d21)][_0x2ce678(0x10b)]});this[_0x2ce678(0x175)]['splice'](_0x5171cf,0x1);}async[_0x1b3f7d(0x124)](_0x477810){const _0x4b34a7={_0x3f8751:0x167,_0x5071e3:0x124,_0x5b5542:0x119,_0x2de7e4:0x10b,_0x1ee02a:0x163,_0x5a2448:0x120},_0x3af548=_0x1b3f7d;this[_0x3af548(_0x4b34a7._0x3f8751)](_0x3af548(_0x4b34a7._0x5071e3),[_0x477810]);if(!_0x477810[_0x3af548(_0x4b34a7._0x5b5542)][_0x3af548(_0x4b34a7._0x2de7e4)])throw new LocatorError(_0x3af548(_0x4b34a7._0x1ee02a),{'locator':_0x477810});this[_0x3af548(0x14b)][_0x3af548(_0x4b34a7._0x5a2448)](_0x477810);}async[_0x1b3f7d(0x14e)](){const _0x48d625={_0x47c453:0x167,_0x3f570f:0x12e},_0x157a42=_0x1b3f7d;this[_0x157a42(_0x48d625._0x47c453)](_0x157a42(0x14e),[]);if(this['frameStack']['length']===0x0)throw new DriverError(_0x157a42(_0x48d625._0x3f570f),{});this['frameStack'][_0x157a42(0x103)]();}async[_0x1b3f7d(0x139)](_0x2a6907,_0x12a710){const _0xf1e229={_0x388bd6:0x167,_0x2993e:0x139,_0x36f305:0x147},_0x3d3ed6=_0x1b3f7d;this[_0x3d3ed6(_0xf1e229._0x388bd6)](_0x3d3ed6(_0xf1e229._0x2993e),[_0x2a6907,_0x12a710]),this[_0x3d3ed6(_0xf1e229._0x36f305)][_0x2a6907]=_0x12a710;}async['getLocalStorage'](_0x15afe0){const _0x51070e={_0x532734:0x114},_0x346251=_0x1b3f7d;return this[_0x346251(0x167)](_0x346251(_0x51070e._0x532734),[_0x15afe0]),this['localStorageState'][_0x15afe0]??null;}async['setCookie'](_0x5d7234,_0x821fad,_0x32c501){const _0x56978b={_0x1407f5:0x167},_0x5ba1e0=_0x1b3f7d;this[_0x5ba1e0(_0x56978b._0x1407f5)]('setCookie',[_0x5d7234,_0x821fad,_0x32c501]),this[_0x5ba1e0(0x13d)][_0x5d7234]=_0x821fad;}async[_0x1b3f7d(0x116)](_0x589144){const _0x3f8af1={_0x3a415a:0x116},_0x296032=_0x1b3f7d;return this[_0x296032(0x167)](_0x296032(_0x3f8af1._0x3a415a),[_0x589144]),this['cookieState'][_0x589144]??null;}async[_0x1b3f7d(0x164)](_0x38f93b){const _0x453f81=_0x1b3f7d;this[_0x453f81(0x167)](_0x453f81(0x164),[_0x38f93b]);}async[_0x1b3f7d(0x113)](_0x18a1af){const _0x52ea21={_0x4d5baf:0x113},_0x829abd=_0x1b3f7d;return this['record'](_0x829abd(_0x52ea21._0x4d5baf),[_0x18a1af]),void 0x0;}async[_0x1b3f7d(0x172)](){const _0x4379b9={_0x5cc4b6:0x167},_0x1bb5d3=_0x1b3f7d;this[_0x1bb5d3(_0x4379b9._0x5cc4b6)]('close',[]);}[_0x1b3f7d(0x13f)](){const _0x373e6a={_0x472a94:0x14b},_0x236441=_0x1b3f7d;return this[_0x236441(_0x373e6a._0x472a94)][_0x236441(0x10b)];}},FakeWebDriver=class{constructor(_0x1703db={}){this['behavior']=_0x1703db,this['recorder']=createRecorder();}[_0x1b3f7d(0x132)];static{__name(this,_0x1b3f7d(0x121));}[_0x1b3f7d(0x10d)]=![];['recorder'];['contexts']=[];async[_0x1b3f7d(0x108)](_0x1109d8){const _0x335dd7={_0x5b30d0:0x120,_0xcfc371:0x110,_0x185fae:0x10d},_0x3909fb=_0x1b3f7d;this['recorder'][_0x3909fb(_0x335dd7._0x5b30d0)]({'scope':_0x3909fb(_0x335dd7._0xcfc371),'method':_0x3909fb(0x108),'args':[_0x1109d8]}),this[_0x3909fb(_0x335dd7._0x185fae)]=!![];}async[_0x1b3f7d(0x105)](_0x53c2bc){const _0x1a42d5={_0x4142a5:0x110,_0xdecd05:0x105,_0x566af8:0x10d,_0x627ef6:0x161,_0x388b88:0x132,_0x52c417:0x111,_0x387844:0x15c,_0x174bd5:0x120},_0x26cdcf=_0x1b3f7d;this['recorder'][_0x26cdcf(0x120)]({'scope':_0x26cdcf(_0x1a42d5._0x4142a5),'method':_0x26cdcf(_0x1a42d5._0xdecd05),'args':[_0x53c2bc]});if(!this[_0x26cdcf(_0x1a42d5._0x566af8)])throw new DriverError(_0x26cdcf(0x168),{});const _0x1541f5=new FakeContext(this[_0x26cdcf(_0x1a42d5._0x627ef6)],this[_0x26cdcf(_0x1a42d5._0x388b88)],_0x26cdcf(_0x1a42d5._0x52c417)+this[_0x26cdcf(_0x1a42d5._0x387844)]['length']);return this[_0x26cdcf(0x15c)][_0x26cdcf(_0x1a42d5._0x174bd5)](_0x1541f5),_0x1541f5;}async[_0x1b3f7d(0x172)](){const _0x18d675={_0x110c56:0x161,_0x2bd052:0x120,_0x4d5835:0x110},_0x51705b=_0x1b3f7d;this[_0x51705b(_0x18d675._0x110c56)][_0x51705b(_0x18d675._0x2bd052)]({'scope':_0x51705b(_0x18d675._0x4d5835),'method':'close','args':[]}),this[_0x51705b(0x10d)]=![];}[_0x1b3f7d(0x15d)](){return void 0x0;}async[_0x1b3f7d(0x134)](){const _0x372a21=_0x1b3f7d;throw new DriverError(_0x372a21(0x135),{});}[_0x1b3f7d(0x10f)](){throw new DriverError('attachExisting\x20not\x20supported\x20by\x20FakeWebDriver',{});}[_0x1b3f7d(0x150)](){const _0x2e2d93={_0x52af54:0x150},_0x457ca1=_0x1b3f7d;return this[_0x457ca1(0x161)][_0x457ca1(_0x2e2d93._0x52af54)]();}[_0x1b3f7d(0x160)](_0x280cc2){const _0x332514={_0x3ffee3:0x150,_0x48c573:0x10e},_0x1fbbb9=_0x1b3f7d;return this[_0x1fbbb9(0x161)][_0x1fbbb9(_0x332514._0x3ffee3)]()[_0x1fbbb9(_0x332514._0x48c573)](_0x56a850=>_0x56a850[_0x1fbbb9(0x12c)]===_0x280cc2);}};export{FakeWebDriver};
1
+ const _0x5ef1c7=_0x1ac4;(function(_0x1f6861,_0xad6a1f){const _0x2ba2c2={_0x492d7c:0x118,_0x553607:0x126,_0x18137f:0x14c,_0x5a0f45:0xe9,_0x35fee2:0x143},_0x50a7d7=_0x1ac4,_0x2510a7=_0x1f6861();while(!![]){try{const _0x36e2e7=-parseInt(_0x50a7d7(_0x2ba2c2._0x492d7c))/0x1*(-parseInt(_0x50a7d7(0xff))/0x2)+-parseInt(_0x50a7d7(_0x2ba2c2._0x553607))/0x3+-parseInt(_0x50a7d7(_0x2ba2c2._0x18137f))/0x4*(-parseInt(_0x50a7d7(0x12b))/0x5)+-parseInt(_0x50a7d7(_0x2ba2c2._0x5a0f45))/0x6+parseInt(_0x50a7d7(_0x2ba2c2._0x35fee2))/0x7+parseInt(_0x50a7d7(0x108))/0x8+parseInt(_0x50a7d7(0x120))/0x9;if(_0x36e2e7===_0xad6a1f)break;else _0x2510a7['push'](_0x2510a7['shift']());}catch(_0x13ec8f){_0x2510a7['push'](_0x2510a7['shift']());}}}(_0x36db,0x9c9fc));var __defProp=Object['defineProperty'],__name=(_0x2d1598,_0x5836a5)=>__defProp(_0x2d1598,_0x5ef1c7(0xe4),{'value':_0x5836a5,'configurable':!![]});function subscribe(_0x4264db,_0x315307){const _0x4ce769={_0x216136:0x12e},_0x309d2f=_0x5ef1c7;return _0x4264db[_0x309d2f(0x117)](_0x315307),()=>{const _0x3cafe2=_0x309d2f;_0x4264db[_0x3cafe2(_0x4ce769._0x216136)](_0x315307);};}__name(subscribe,'subscribe');import{UnotestError}from'@unotest/core';var DriverError=class extends UnotestError{static{__name(this,'DriverError');}},LocatorError=class extends UnotestError{static{__name(this,'LocatorError');}};function _0x1ac4(_0x1d7119,_0x52c572){_0x1d7119=_0x1d7119-0xdd;const _0x36dbdf=_0x36db();let _0x1ac44c=_0x36dbdf[_0x1d7119];if(_0x1ac4['PyNIkS']===undefined){var _0x4168aa=function(_0x41d436){const _0x496872='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d1598='',_0x5836a5='';for(let _0x4264db=0x0,_0x315307,_0x1e7c1a,_0x4e2e01=0x0;_0x1e7c1a=_0x41d436['charAt'](_0x4e2e01++);~_0x1e7c1a&&(_0x315307=_0x4264db%0x4?_0x315307*0x40+_0x1e7c1a:_0x1e7c1a,_0x4264db++%0x4)?_0x2d1598+=String['fromCharCode'](0xff&_0x315307>>(-0x2*_0x4264db&0x6)):0x0){_0x1e7c1a=_0x496872['indexOf'](_0x1e7c1a);}for(let _0x29d321=0x0,_0x43bba1=_0x2d1598['length'];_0x29d321<_0x43bba1;_0x29d321++){_0x5836a5+='%'+('00'+_0x2d1598['charCodeAt'](_0x29d321)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5836a5);};_0x1ac4['hTBAeO']=_0x4168aa,_0x1ac4['MggviT']={},_0x1ac4['PyNIkS']=!![];}const _0x318aac=_0x36dbdf[0x0],_0x13316a=_0x1d7119+_0x318aac,_0x3b8c52=_0x1ac4['MggviT'][_0x13316a];return!_0x3b8c52?(_0x1ac44c=_0x1ac4['hTBAeO'](_0x1ac44c),_0x1ac4['MggviT'][_0x13316a]=_0x1ac44c):_0x1ac44c=_0x3b8c52,_0x1ac44c;}function createRecorder(){const _0x3eb109=_0x5ef1c7,_0x1e7c1a=[];let _0x4e2e01=0x0;return{'push':__name(_0x29d321=>_0x1e7c1a['push']({..._0x29d321,'seq':_0x4e2e01++}),_0x3eb109(0x14b)),'calls':__name(()=>_0x1e7c1a,'calls')};}__name(createRecorder,_0x5ef1c7(0x124));function _0x36db(){const _0x135e97=['pgrPDIbKyxrHlxvUB3rLC3qTCMvMpsi','CgfNzsbPBMrLEcbVDxqGB2yGCMfUz2u','ntiXnJuYoef2wLbdEG','rMfRzunVBNrLEhq','zxHPDezYyw1L','AxneAxnHyMXLzej5rgvMyxvSDa','Aw5PDgLHBfvYBa','yMvOyxzPB3i','ywn0AxzLugfNzq','Cg9W','D2fPDezVCG','BMv3q29UDgv4DcbJywXSzwqGyMvMB3jLigXHDw5JAcGP','Bwf5yMvuAhjVDW','BgvUz3rO','BMv0D29YA0vUDhjPzxm','lNbHz2uW','zg91yMXLq2XPy2S','ywrK','ndmXotq4sgzRy3Dg','y29UBMvJDfnOyxjLza','C2nVCgu','zxHPDezYyw1LignHBgXLzcb3AxrOig5VigzYyw1Lig9UihrOzsbZDgfJAW','y291BNq','DxbSB2fKrMLSzq','C2nYzwvUC2HVDa','Bgf1BMnO','mtaYmZC1mhHQzhDjrG','y2XVC2u','Cg9WDxbpBKnSAwnR','zNjHBwvtDgfJAW','y3jLyxrLuMvJB3jKzxi','Ag92zxi','mZGYode0nfvSr1jMDW','yxr0ywnOrxHPC3rPBMC','z2v0tg9JywXtDg9YywDL','zMfRzs1WBMC','BM8Gywn0AxzLihbHz2uGAw4Gy29UDgv4Da','nwfftu5dDW','zxzHBhvHDgvpBKXVy2f0B3i','DgL0Bgu','zgvSzxrL','Dgv4DenVBNrLBNq','Dw5JAgvJAW','zMfRzsb0AxrSzq','Aw5ZCgvJDevSzw1LBNq','yxr0CMLIDxrLC0j5rgvMyxvSDa','B25ozxDqywDL','iJ48l2rPDJ4','y29VA2LLCW','D2fPDezVCLrLEhq','y2HLy2S','y2XVC2vgywTLugfNzq','zhjHz0fUzerYB3a','y29VA2LLu3rHDgu','CMvJB3jKzxi','zMLSDgvY','BMv3q29UDgv4Da','zw1PDezHA2vqB3b1Ca','y29UC29SzuvUDhjPzxm','Aw5WDxrwywX1zuj5rgvMyxvSDa','Bgf1BMnOzwq','odq5odu5nvLsu05TEG','zNjVBq','ChjLC3m','zMLSBa','z29gB3j3yxjK','C2v0tg9JywXtDg9YywDL','y2HLy2TLzfn0yxrL','yxr0ywnOrxHPC3rPBMCGBM90ihn1ChbVCNrLzcbIEsbgywTLv2vIrhjPDMvY','ChvZAa','mJKWntiYohPjyuHhDG','C2v0q29VA2LL','C2v0qwn0AxzLugfNzq','C3bSAwnL','BMv3ugfNzuXPC3rLBMvYCW','zwXLBwvUDeHPBNrcEvjLzG','CMvM','z2v0qxr0CMLIDxrL','B3v0zxjive1m','CMvJB3jK','BMfTzq','B25bzNrLCKnSAwnR','AxneAxnHyMXLza','D2fPDezVCLvYBa','zxjYB3jpBK5LEhrby3rPB24','nZmYmZq1nNzTDxbfyq','D2fPDezVCKXVywrtDgf0zq','B3v0zxjiDg1SqNLszwy','Bg9JywXtDg9YywDL','zhjPDMvY','Aw5WDxrwywX1zq','C2nYB2XSsw50B1zPzxC','CMvSB2fK','zxzHBhvHDgu','y29UDgv4Dhm','y2fSBhngB3i','y291BNrcEurLzMf1Bhq','z29cywnR','y3vYCMvUDfvYBa','y29UBMvJDfnOyxjLzcbUB3qGC3vWCg9YDgvKigj5iezHA2vxzwjeCML2zxi','C3rLChm','y2XPCgjVyxjKugfZDgu','Bg9JywXtDg9YywDLu3rHDgu','AxnwAxnPyMXL','zw50zxjgCMfTzq','A2LUza','Dgv4DenVBNrLBNrcEurLzMf1Bhq','mMDnuxrYtq','D2fPDezVCK5HDMLNyxrPB24','C2f2zvn0B3jHz2vtDgf0zq','CgfNzuXPC3q','y2XPy2S','y2fSBhm','ywn0AxzLswr4'];_0x36db=function(){return _0x135e97;};return _0x36db();}var FakePage=class{constructor(_0x43bba1,_0x594be1,_0xe33cc6,_0x2c237a){const _0x33a24e={_0x526321:0x13c,_0x2d6c79:0xf6},_0x323948=_0x5ef1c7;this[_0x323948(_0x33a24e._0x526321)]=_0x43bba1,this[_0x323948(0x10d)]=_0x594be1,this[_0x323948(0x11a)]=_0xe33cc6,this[_0x323948(_0x33a24e._0x2d6c79)]=_0x2c237a;}[_0x5ef1c7(0x13c)];['behavior'];[_0x5ef1c7(0x11a)];static{__name(this,'FakePage');}[_0x5ef1c7(0xf6)];['onAfterClick'];[_0x5ef1c7(0xe3)](_0x46729c,_0x1a9069){const _0x55f825={_0x91d446:0x13c},_0x4477de=_0x5ef1c7;this[_0x4477de(_0x55f825._0x91d446)]['push']({'scope':this[_0x4477de(0x11a)],'method':_0x46729c,'args':_0x1a9069});}['maybeThrow'](){const _0x1c3b08={_0x25302c:0xe8,_0x251154:0xe8},_0x436676=_0x5ef1c7;if(this['behavior'][_0x436676(_0x1c3b08._0x25302c)]){const _0xee8aec=this['behavior'][_0x436676(_0x1c3b08._0x251154)];this[_0x436676(0x10d)]['errorOnNextAction']=void 0x0;throw _0xee8aec;}}['url'](){const _0x485a1f=_0x5ef1c7;return this[_0x485a1f(0xf6)];}async[_0x5ef1c7(0x12d)](){const _0x46f617={_0x15d862:0xe3,_0x55afb6:0x12d,_0x4af636:0x131},_0x34713f=_0x5ef1c7;return this[_0x34713f(_0x46f617._0x15d862)](_0x34713f(_0x46f617._0x55afb6),[]),_0x34713f(_0x46f617._0x4af636);}async[_0x5ef1c7(0x103)](_0x1f2c00,_0x37a49f){const _0x40b7a6={_0x3d1535:0xe5},_0x54129e=_0x5ef1c7;this['record']('click',[_0x1f2c00,_0x37a49f]),this['maybeThrow'](),this[_0x54129e(_0x40b7a6._0x3d1535)]?.();}async[_0x5ef1c7(0x116)](_0x26a52b,_0x226ff1){const _0x4f3892={_0xf2609:0xe3,_0x59cde5:0x116,_0x30c667:0x112},_0x4f9ee9=_0x5ef1c7;this[_0x4f9ee9(_0x4f3892._0xf2609)](_0x4f9ee9(_0x4f3892._0x59cde5),[_0x26a52b,_0x226ff1]),this[_0x4f9ee9(_0x4f3892._0x30c667)]();}async[_0x5ef1c7(0x146)](_0x3e8889,_0x52dc52,_0xcc1de4){const _0x5b4548=_0x5ef1c7;this[_0x5b4548(0xe3)](_0x5b4548(0x146),[_0x3e8889,_0x52dc52,_0xcc1de4]),this['maybeThrow']();}async[_0x5ef1c7(0x145)](_0x1befc7,_0x20a8e3,_0x4d0c9c){const _0x1ad9f9={_0x2c08dd:0xe3},_0x5049c6=_0x5ef1c7;this[_0x5049c6(_0x1ad9f9._0x2c08dd)]('press',[_0x1befc7,_0x20a8e3,_0x4d0c9c]),this[_0x5049c6(0x112)]();}async['check'](_0x310605,_0x519315){const _0x3147da={_0x4b4aa9:0xe3,_0x783ea:0x112},_0x2e3f39=_0x5ef1c7;this[_0x2e3f39(_0x3147da._0x4b4aa9)](_0x2e3f39(0x138),[_0x310605,_0x519315]),this[_0x2e3f39(_0x3147da._0x783ea)]();}async[_0x5ef1c7(0x130)](_0x3ccfc6,_0x101805){const _0x3f1a55={_0x1c87ac:0x130,_0xfb21c9:0x112},_0x245ac0=_0x5ef1c7;this['record'](_0x245ac0(_0x3f1a55._0x1c87ac),[_0x3ccfc6,_0x101805]),this[_0x245ac0(_0x3f1a55._0xfb21c9)]();}async['selectOption'](_0x3d7214,_0x16125b,_0x3f3f5f){const _0x5925cd={_0x17d73c:0xe3},_0x465797=_0x5ef1c7;this[_0x465797(_0x5925cd._0x17d73c)]('selectOption',[_0x3d7214,_0x16125b,_0x3f3f5f]),this[_0x465797(0x112)]();}async['hover'](_0x21e559,_0x345e31){const _0x160ab0={_0x522168:0x112},_0x216bec=_0x5ef1c7;this[_0x216bec(0xe3)](_0x216bec(0x125),[_0x21e559,_0x345e31]),this[_0x216bec(_0x160ab0._0x522168)]();}async[_0x5ef1c7(0xef)](_0x3bf220){const _0x51c3ff=_0x5ef1c7;this[_0x51c3ff(0xe3)](_0x51c3ff(0xef),[_0x3bf220]),this[_0x51c3ff(0x112)]();}async['dragAndDrop'](_0x11bb4b,_0x21469d,_0x41999d){const _0x2befbd=_0x5ef1c7;this[_0x2befbd(0xe3)](_0x2befbd(0x13a),[_0x11bb4b,_0x21469d,_0x41999d]),this['maybeThrow']();}async[_0x5ef1c7(0x11d)](_0x5c2a93,_0x2d42aa){const _0x247504={_0x11cc8e:0x11d},_0x13eec6=_0x5ef1c7;this[_0x13eec6(0xe3)](_0x13eec6(_0x247504._0x11cc8e),[_0x5c2a93,_0x2d42aa]),this[_0x13eec6(0x112)]();}async[_0x5ef1c7(0xf9)](_0x50714d,_0x5d8db9){const _0xc83465={_0x4f3db9:0xe3,_0x7a1009:0xf9,_0x5206b9:0x112},_0x3d9f4f=_0x5ef1c7;this[_0x3d9f4f(_0xc83465._0x4f3db9)](_0x3d9f4f(_0xc83465._0x7a1009),[_0x50714d,_0x5d8db9]),this[_0x3d9f4f(_0xc83465._0x5206b9)]();}async[_0x5ef1c7(0x11c)](_0x20aeae){const _0x1e037b={_0x3bf0cc:0x10d},_0x1cba4f=_0x5ef1c7;return this[_0x1cba4f(0xe3)]('count',[_0x20aeae]),this[_0x1cba4f(_0x1e037b._0x3bf0cc)][_0x1cba4f(0xf4)]??0x1;}async[_0x5ef1c7(0x12f)](_0x487b93){const _0x406a5f={_0xd0a36d:0xe3,_0x55395f:0x12f,_0x135f22:0x10d,_0x3a532b:0xfe},_0x311b0e=_0x5ef1c7;return this[_0x311b0e(_0x406a5f._0xd0a36d)](_0x311b0e(_0x406a5f._0x55395f),[_0x487b93]),this[_0x311b0e(_0x406a5f._0x135f22)][_0x311b0e(_0x406a5f._0x3a532b)]??'';}async['inputValue'](_0xb7c8e2){const _0x5a5e64={_0x485e06:0x141},_0x56ddcf=_0x5ef1c7;return this['record'](_0x56ddcf(0xee),[_0xb7c8e2]),this[_0x56ddcf(0x10d)][_0x56ddcf(_0x5a5e64._0x485e06)]??'';}async['checkedState'](_0x1cf53b){const _0x5bb36e={_0x44348d:0xe3,_0x2d2450:0x10d},_0x16eba3=_0x5ef1c7;return this[_0x16eba3(_0x5bb36e._0x44348d)](_0x16eba3(0x149),[_0x1cf53b]),this[_0x16eba3(_0x5bb36e._0x2d2450)]['checkedStateByDefault']??null;}async[_0x5ef1c7(0xfb)](_0x94843c){const _0x483388={_0x21f7db:0xfb},_0xbf9dbb=_0x5ef1c7;return this['record'](_0xbf9dbb(_0x483388._0x21f7db),[_0x94843c]),this[_0xbf9dbb(0x10d)]['isVisibleByDefault']??!![];}async[_0x5ef1c7(0xe6)](_0x186573){const _0x2ddea0={_0x27149f:0xe3,_0x2830a5:0xe6,_0x52fc5f:0x10d},_0x37bc01=_0x5ef1c7;return this[_0x37bc01(_0x2ddea0._0x27149f)](_0x37bc01(_0x2ddea0._0x2830a5),[_0x186573]),this[_0x37bc01(_0x2ddea0._0x52fc5f)][_0x37bc01(0x10b)]??![];}async[_0x5ef1c7(0xe1)](_0x42779d,_0x5781f9){const _0x197834={_0x3d60af:0xe1,_0x106a8a:0x10d},_0x23ab12=_0x5ef1c7;return this[_0x23ab12(0xe3)](_0x23ab12(_0x197834._0x3d60af),[_0x42779d,_0x5781f9]),this[_0x23ab12(_0x197834._0x106a8a)][_0x23ab12(0x133)]?.[_0x5781f9]??null;}async[_0x5ef1c7(0x110)](_0x32dd18,_0x1bba1e){const _0x2b9900={_0x2ce504:0xe3},_0x22752e=_0x5ef1c7;this[_0x22752e(_0x2b9900._0x2ce504)](_0x22752e(0x110),[_0x32dd18,_0x1bba1e]);}async[_0x5ef1c7(0xe7)](_0x41d282,_0x590dc9){const _0x496235={_0x3a3dd0:0xe3},_0x1e1825=_0x5ef1c7;this[_0x1e1825(_0x496235._0x3a3dd0)]('waitForUrl',[_0x41d282,_0x590dc9]);}async[_0x5ef1c7(0x137)](_0x4da993,_0x2678e2){const _0xb09860=_0x5ef1c7;this[_0xb09860(0xe3)](_0xb09860(0x137),[_0x4da993,_0x2678e2]);}async[_0x5ef1c7(0x100)](_0x49d674){const _0x5827f3={_0x962182:0xe3},_0x32e1d9=_0x5ef1c7;this[_0x32e1d9(_0x5827f3._0x962182)]('waitForNavigation',[_0x49d674]);}async[_0x5ef1c7(0xea)](_0x36598d,_0x298812){this['record']('waitForLoadState',[_0x36598d,_0x298812]);}async['goto'](_0x3cbe60,_0x576c11){const _0x48ade7={_0x18eded:0xe3,_0x418dd6:0xf6},_0xc3a05b=_0x5ef1c7;this[_0xc3a05b(_0x48ade7._0x18eded)]('goto',[_0x3cbe60,_0x576c11]),this[_0xc3a05b(_0x48ade7._0x418dd6)]=_0x3cbe60;}async[_0x5ef1c7(0xf0)](_0x2fff9c){this['record']('reload',[_0x2fff9c]);}async[_0x5ef1c7(0xf5)](_0x23855c){const _0x1a06c3={_0x5cb215:0xf5},_0x3289c1=_0x5ef1c7;this[_0x3289c1(0xe3)](_0x3289c1(_0x1a06c3._0x5cb215),[_0x23855c]);}async[_0x5ef1c7(0x147)](_0x430d84){const _0x5123d7={_0x575493:0xe3},_0x2f5b70=_0x5ef1c7;this[_0x2f5b70(_0x5123d7._0x575493)](_0x2f5b70(0x147),[_0x430d84]);}async[_0x5ef1c7(0xf1)](_0x406d15){const _0xc58b4={_0x4e2e72:0xe3},_0x242c7c=_0x5ef1c7;return this[_0x242c7c(_0xc58b4._0x4e2e72)](_0x242c7c(0xf1),[_0x406d15]),void 0x0;}async[_0x5ef1c7(0x12c)](_0x5c9064,_0x2368dd){const _0x2bf7f8={_0x2d7dac:0x12c},_0x14f01f=_0x5ef1c7;return this[_0x14f01f(0xe3)](_0x14f01f(_0x2bf7f8._0x2d7dac),[_0x5c9064,_0x2368dd]),void 0x0;}async[_0x5ef1c7(0x132)](_0x2a8087){const _0x330cde={_0x381869:0xf8,_0x41358a:0xe0},_0x1c6f58=_0x5ef1c7;this['record'](_0x1c6f58(0x132),[_0x2a8087]);if(_0x2a8087['steps']['length']!==0x1||_0x2a8087[_0x1c6f58(0xf8)][0x0][_0x1c6f58(0xfd)]!==_0x1c6f58(0xe0))return null;const _0x4dad57=_0x2a8087[_0x1c6f58(_0x330cde._0x381869)][0x0][_0x1c6f58(_0x330cde._0x41358a)],_0x57371a=this[_0x1c6f58(0x10d)][_0x1c6f58(0xdf)]?.[_0x4dad57];return _0x57371a??null;}async[_0x5ef1c7(0x11e)](_0x368b26){const _0x4e4ba3={_0x5793a8:0x129},_0x3e6665=_0x5ef1c7;return this[_0x3e6665(0xe3)]('screenshot',[_0x368b26]),Buffer[_0x3e6665(0x144)](_0x3e6665(_0x4e4ba3._0x5793a8));}async['outerHTML'](_0x75ead){const _0x282862={_0x3b1f60:0xe2,_0x313da7:0xe0,_0x490b4c:0x10d,_0x54e874:0x106},_0x3ecc13=_0x5ef1c7;this['record'](_0x3ecc13(_0x282862._0x3b1f60),[_0x75ead]);if(_0x75ead['steps']['length']===0x1&&_0x75ead[_0x3ecc13(0xf8)][0x0]['kind']===_0x3ecc13(_0x282862._0x313da7)){const _0x1a3f2f=_0x75ead['steps'][0x0]['ref'];return this[_0x3ecc13(_0x282862._0x490b4c)][_0x3ecc13(0xeb)]?.[_0x1a3f2f]??_0x3ecc13(_0x282862._0x54e874)+_0x1a3f2f+_0x3ecc13(0x135);}return'<div></div>';}},FakeContext=class{constructor(_0x519843,_0x5f5ded,_0x32f37a){const _0x585be4={_0x1a8cdc:0x13c,_0xb35ed8:0x11a,_0x44b365:0x10c,_0x5d95d8:0xe5,_0x220a57:0x102,_0x2c0078:0xec,_0x20ebb6:0x136},_0x5bb59f=_0x5ef1c7;this[_0x5bb59f(_0x585be4._0x1a8cdc)]=_0x519843,this['behavior']=_0x5f5ded,this[_0x5bb59f(_0x585be4._0xb35ed8)]=_0x32f37a;const _0x4efe5a=new FakePage(_0x519843,_0x5f5ded,_0x32f37a+_0x5bb59f(0x115),_0x5f5ded[_0x5bb59f(_0x585be4._0x44b365)]??'about:blank');_0x5f5ded[_0x5bb59f(0x122)]&&(_0x4efe5a[_0x5bb59f(_0x585be4._0x5d95d8)]=()=>{const _0x11ebd2=_0x5bb59f;this[_0x11ebd2(0x13f)](_0x5f5ded['popupOnClick']);}),this[_0x5bb59f(_0x585be4._0x220a57)]=[_0x4efe5a],this['localStorageState']={..._0x5f5ded[_0x5bb59f(_0x585be4._0x2c0078)]??{}},this[_0x5bb59f(0x13b)]={..._0x5f5ded[_0x5bb59f(_0x585be4._0x20ebb6)]??{}};}[_0x5ef1c7(0x13c)];[_0x5ef1c7(0x10d)];[_0x5ef1c7(0x11a)];static{__name(this,_0x5ef1c7(0x109));}[_0x5ef1c7(0x102)];['activeIdx']=0x0;[_0x5ef1c7(0x123)]=[];[_0x5ef1c7(0xfa)];['cookieState'];['newPageListeners']=new Set();[_0x5ef1c7(0xe3)](_0x3a9149,_0x4d2dcd){const _0x3f2886={_0x1b4e86:0x13c},_0x45b326=_0x5ef1c7;this[_0x45b326(_0x3f2886._0x1b4e86)][_0x45b326(0x14b)]({'scope':this[_0x45b326(0x11a)],'method':_0x3a9149,'args':_0x4d2dcd});}['pages'](){return this['pageList'];}[_0x5ef1c7(0x10e)](){const _0x1638a5={_0x2b07ac:0x105,_0x4518de:0x12a},_0xb67fdc=_0x5ef1c7,_0x35d194=this['pageList'][this[_0xb67fdc(_0x1638a5._0x2b07ac)]];if(!_0x35d194)throw new DriverError(_0xb67fdc(_0x1638a5._0x4518de),{'activeIdx':this['activeIdx']});return _0x35d194;}[_0x5ef1c7(0x140)](){const _0x2feb37=_0x5ef1c7;return this[_0x2feb37(0x10d)][_0x2feb37(0x140)]??[];}['networkEntries'](){const _0x44675e={_0x36dfdb:0x10d},_0x5ef5cc=_0x5ef1c7;return this[_0x5ef5cc(_0x44675e._0x36dfdb)][_0x5ef5cc(0x114)]??[];}async[_0x5ef1c7(0x14e)](_0x1d32c7){const _0x2036fb={_0x2c5a7e:0xe3,_0x47fff7:0x107,_0xd059ed:0x105},_0xe72eea=_0x5ef1c7;this[_0xe72eea(_0x2036fb._0x2c5a7e)]('setActivePage',[_0x1d32c7]);if(_0x1d32c7<0x0||_0x1d32c7>=this['pageList'][_0xe72eea(0x113)])throw new DriverError(_0xe72eea(_0x2036fb._0x47fff7),{'index':_0x1d32c7,'available':this[_0xe72eea(0x102)][_0xe72eea(0x113)]});this[_0xe72eea(_0x2036fb._0xd059ed)]=_0x1d32c7,this[_0xe72eea(0x123)][_0xe72eea(0x113)]=0x0;}[_0x5ef1c7(0x134)](_0xce436c){return subscribe(this['newPageListeners'],_0xce436c);}['emitFakePopup'](_0x477c08){const _0x2c5e51={_0x4998a4:0x113},_0x38dd8a=_0x5ef1c7,_0x4892be=this[_0x38dd8a(0x11a)]+'.page'+this[_0x38dd8a(0x102)][_0x38dd8a(_0x2c5e51._0x4998a4)],_0x491edb=new FakePage(this[_0x38dd8a(0x13c)],this[_0x38dd8a(0x10d)],_0x4892be,_0x477c08);this['pageList']['push'](_0x491edb);const _0x3dfd6f=this['pageList']['length']-0x1;for(const _0x3cb892 of this[_0x38dd8a(0xde)]){try{_0x3cb892({'index':_0x3dfd6f,'url':_0x477c08});}catch{}}return _0x3dfd6f;}[_0x5ef1c7(0x139)](_0x9900f9){const _0x163128={_0xec899f:0x102,_0x41e713:0xdd},_0x4351c8=_0x5ef1c7;if(_0x9900f9<0x0||_0x9900f9>=this[_0x4351c8(_0x163128._0xec899f)]['length'])throw new DriverError(_0x4351c8(0x107),{'index':_0x9900f9,'available':this[_0x4351c8(_0x163128._0xec899f)]['length']});this['pageList'][_0x4351c8(_0x163128._0x41e713)](_0x9900f9,0x1);}async[_0x5ef1c7(0xfc)](_0x4aedf6){const _0x37e56d={_0x142166:0xf8,_0x57fcdd:0x123},_0x3cfdad=_0x5ef1c7;this[_0x3cfdad(0xe3)](_0x3cfdad(0xfc),[_0x4aedf6]);if(!_0x4aedf6[_0x3cfdad(_0x37e56d._0x142166)]['length'])throw new LocatorError('enterFrame\x20called\x20with\x20empty\x20locator',{'locator':_0x4aedf6});this[_0x3cfdad(_0x37e56d._0x57fcdd)][_0x3cfdad(0x14b)](_0x4aedf6);}async[_0x5ef1c7(0x10a)](){const _0x5cd0ff={_0x5ad418:0xe3},_0x5da9db=_0x5ef1c7;this[_0x5da9db(_0x5cd0ff._0x5ad418)](_0x5da9db(0x10a),[]);if(this['frameStack'][_0x5da9db(0x113)]===0x0)throw new DriverError(_0x5da9db(0x11b),{});this['frameStack'][_0x5da9db(0x10f)]();}async[_0x5ef1c7(0x148)](_0x33eab4,_0x123c79){const _0x4198db={_0x609fe:0xfa},_0x2474cb=_0x5ef1c7;this[_0x2474cb(0xe3)]('setLocalStorage',[_0x33eab4,_0x123c79]),this[_0x2474cb(_0x4198db._0x609fe)][_0x33eab4]=_0x123c79;}async[_0x5ef1c7(0x128)](_0x5703a2){const _0xe1827b=_0x5ef1c7;return this['record'](_0xe1827b(0x128),[_0x5703a2]),this[_0xe1827b(0xfa)][_0x5703a2]??null;}async['setCookie'](_0x5b0a8b,_0x44fbe1,_0x54bf6a){const _0xb818a7=_0x5ef1c7;this['record'](_0xb818a7(0x14d),[_0x5b0a8b,_0x44fbe1,_0x54bf6a]),this[_0xb818a7(0x13b)][_0x5b0a8b]=_0x44fbe1;}async['getCookie'](_0x581a5f){const _0x4a72a7={_0x1b33cf:0xe3,_0x42828:0x13b},_0x457c71=_0x5ef1c7;return this[_0x457c71(_0x4a72a7._0x1b33cf)]('getCookie',[_0x581a5f]),this[_0x457c71(_0x4a72a7._0x42828)][_0x581a5f]??null;}async[_0x5ef1c7(0x101)](_0x4401cd){const _0x40ea34={_0x2b0bd2:0x101},_0x2cdc26=_0x5ef1c7;this['record'](_0x2cdc26(_0x40ea34._0x2b0bd2),[_0x4401cd]);}async[_0x5ef1c7(0xf1)](_0x204ce2){const _0x330b93=_0x5ef1c7;return this[_0x330b93(0xe3)]('evaluate',[_0x204ce2]),void 0x0;}async[_0x5ef1c7(0x121)](){const _0x416fcc={_0x38b05d:0xe3},_0xca9078=_0x5ef1c7;this[_0xca9078(_0x416fcc._0x38b05d)]('close',[]);}['frameDepth'](){const _0x61906a={_0x508c8c:0x123,_0x31c039:0x113},_0x240b08=_0x5ef1c7;return this[_0x240b08(_0x61906a._0x508c8c)][_0x240b08(_0x61906a._0x31c039)];}},FakeWebDriver=class{constructor(_0x2dcc75={}){const _0x470e60={_0x55f651:0x13c},_0x1f8aa3=_0x5ef1c7;this[_0x1f8aa3(0x10d)]=_0x2dcc75,this[_0x1f8aa3(_0x470e60._0x55f651)]=createRecorder();}[_0x5ef1c7(0x10d)];static{__name(this,'FakeWebDriver');}[_0x5ef1c7(0x142)]=![];['recorder'];['contexts']=[];async[_0x5ef1c7(0x11f)](_0x8010d9){const _0x76d9ad={_0x2aa92c:0x13c,_0x5e17ae:0xed,_0x3bfa32:0x11f,_0x8a3919:0x142},_0x59493a=_0x5ef1c7;this[_0x59493a(_0x76d9ad._0x2aa92c)]['push']({'scope':_0x59493a(_0x76d9ad._0x5e17ae),'method':_0x59493a(_0x76d9ad._0x3bfa32),'args':[_0x8010d9]}),this[_0x59493a(_0x76d9ad._0x8a3919)]=!![];}async['newContext'](_0x2f35dc){const _0x4d9074={_0x2aec05:0x14b,_0x2c7fee:0xed,_0xef406e:0x142,_0x491486:0x10d,_0x587707:0xf2,_0x12b2a5:0x14b},_0x4ab4f9=_0x5ef1c7;this[_0x4ab4f9(0x13c)][_0x4ab4f9(_0x4d9074._0x2aec05)]({'scope':_0x4ab4f9(_0x4d9074._0x2c7fee),'method':_0x4ab4f9(0x13e),'args':[_0x2f35dc]});if(!this[_0x4ab4f9(_0x4d9074._0xef406e)])throw new DriverError(_0x4ab4f9(0x111),{});const _0x47821c=new FakeContext(this['recorder'],this[_0x4ab4f9(_0x4d9074._0x491486)],'ctx'+this['contexts']['length']);return this[_0x4ab4f9(_0x4d9074._0x587707)][_0x4ab4f9(_0x4d9074._0x12b2a5)](_0x47821c),_0x47821c;}async['close'](){const _0x19d031={_0x209b2a:0x13c},_0x29b058=_0x5ef1c7;this[_0x29b058(_0x19d031._0x209b2a)][_0x29b058(0x14b)]({'scope':_0x29b058(0xed),'method':'close','args':[]}),this[_0x29b058(0x142)]=![];}['wsEndpoint'](){return void 0x0;}async[_0x5ef1c7(0x119)](){const _0x19c785={_0x15736e:0xf7},_0x3db724=_0x5ef1c7;throw new DriverError(_0x3db724(_0x19c785._0x15736e),{});}[_0x5ef1c7(0x127)](){const _0x53b4b7=_0x5ef1c7;throw new DriverError(_0x53b4b7(0x14a),{});}['calls'](){const _0x25ac56={_0x58efd0:0x13c},_0x2e1948=_0x5ef1c7;return this[_0x2e1948(_0x25ac56._0x58efd0)]['calls']();}[_0x5ef1c7(0xf3)](_0x5b3444){const _0x5cc665={_0x4ca5aa:0x13c,_0x2c4c4b:0x13d},_0x83bd23=_0x5ef1c7;return this[_0x83bd23(_0x5cc665._0x4ca5aa)][_0x83bd23(0x104)]()[_0x83bd23(_0x5cc665._0x2c4c4b)](_0x14dbff=>_0x14dbff['method']===_0x5b3444);}};export{FakeWebDriver};