chore(deps): update webdriverio monorepo to v10 (#3678)

* chore(deps): update webdriverio monorepo to v10

* fix e2e test

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
This commit is contained in:
renovate[bot]andLucas Nogueira authored and GitHub committed 2026-10-09 12:56:10 -03:00
1 parent 4f29d3a938
commit 974af951a5
6 files changed
+1562 -1952

No files matched your search

+38
View File
@@ -0,0 +1,38 @@
// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
/**
* Runs a callback-style async script in the page: `script` is a function body
* that receives `args` followed by a `done` callback as its `arguments`, and
* the value passed to `done` is returned.
*
* Stands in for `browser.executeAsync`, which WebdriverIO v10 removed: its
* replacement (`execute` with an `async` function) only takes functions, which
* the drivers' script transport would stringify anyway. Classic sessions use
* the WebDriver "Execute Async Script" command directly; BiDi has no such
* command, so the script is wrapped in a promise, which BiDi awaits.
*
* Takes the browser as a parameter (rather than importing `@wdio/globals`) so
* the wdio configs can use it from their hooks.
*/
export async function executeAsync(
browser: WebdriverIO.Browser,
script: string,
...args: unknown[]
): Promise<unknown> {
if (browser.isBidi) {
return browser.execute(
`var args = Array.prototype.slice.call(arguments);
return new Promise(function (done) {
(function () { ${script} }).apply(null, args.concat([done]));
});`,
...args
)
}
return browser.executeAsyncScript(
script,
// Any JSON-serializable values; the driver rejects anything else.
args as Parameters<WebdriverIO.Browser['executeAsyncScript']>[1]
)
}
+2 -1
View File
@@ -3,6 +3,7 @@
// SPDX-License-Identifier: MIT
import { browser } from '@wdio/globals'
import { executeAsync } from './execute.js'
import type * as TauriApi from '@tauri-apps/api'
import type * as Autostart from '@tauri-apps/plugin-autostart'
import type * as BarcodeScanner from '@tauri-apps/plugin-barcode-scanner'
@@ -173,7 +174,7 @@ export async function tauri<R, A extends unknown[]>(
}
});
`
const raw: unknown = await browser.executeAsync(script, ...args)
const raw: unknown = await executeAsync(browser, script, ...args)
const outcome = (
typeof raw === 'string' ? JSON.parse(raw) : raw
) as PageOutcome<Awaited<R>> | null