diff --git a/.github/assets/e2e-graph-mac-universal.png b/.github/assets/e2e-graph-mac-universal.png index 798af219..0642fbf1 100644 Binary files a/.github/assets/e2e-graph-mac-universal.png and b/.github/assets/e2e-graph-mac-universal.png differ diff --git a/.github/assets/e2e-graph.png b/.github/assets/e2e-graph.png index 79c7b794..68f0ea2e 100644 Binary files a/.github/assets/e2e-graph.png and b/.github/assets/e2e-graph.png differ diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4c202877..6230ae61 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,10 +13,11 @@ env: jobs: build: + name: Build & Test runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-latest, windows-latest, macOS-latest] + os: [ubuntu-latest, macOS-latest] node-version: [20.x] fail-fast: false @@ -37,7 +38,7 @@ jobs: ${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.node-version }}- - uses: pnpm/action-setup@v3 with: - version: 9.5.0 + version: 9.7.0 run_install: false - name: Set pnpm store path run: | @@ -45,25 +46,119 @@ jobs: - name: Install Dependencies run: | pnpm install - if [ "$RUNNER_OS" == "Windows" ]; then - pnpm run ci:init-windows - pnpm install --no-frozen-lockfile + shell: bash + - name: Run Tests + run: | + if [ "$RUNNER_OS" == "Linux" ]; then + # Run tasks in serial on Ubuntu to avoid Xvfb issues + pnpm run ci-linux + else + pnpm run ci fi shell: bash + - name: 🐛 Show logs + if: failure() + run: | + pnpm run ci:e2e:logs + - name: 🐛 Debug Build + uses: stateful/vscode-server-action@v1.1.0 + if: failure() + with: + timeout: '180000' + build-macos-universal: + name: MacOS Universal Build & Test + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [macOS-latest] + node-version: [20.x] + fail-fast: false + steps: + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + - name: Cache pnpm modules + uses: actions/cache@v4 + env: + cache-name: cache-pnpm-modules + with: + path: ~/.pnpm-store + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.node-version }}-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.node-version }}- + - uses: pnpm/action-setup@v3 + with: + version: 9.7.0 + run_install: false + - name: Set pnpm store path + run: | + pnpm config set store-dir ~/.pnpm-store --global + - name: Install Dependencies + run: | + pnpm install + shell: bash - name: Run Tests run: | - pnpm run ci + pnpm run build + pnpm run ci-mac:e2e:mac-universal shell: bash - - name: Run OS-specific Tests + - name: 🐛 Show logs + if: failure() run: | - if [ "$RUNNER_OS" == "macOS" ]; then - pnpm run ci:e2e:clean - pnpm install --no-frozen-lockfile - pnpm run ci:e2e:mac-universal - fi + pnpm run ci:e2e:logs + - name: 🐛 Debug Build + uses: stateful/vscode-server-action@v1.1.0 + if: failure() + with: + timeout: '180000' + build-windows: + name: Windows Build & Test + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-latest] + test: ['units', 'e2e:no-binary', 'e2e:builder-cjs', 'e2e:builder-esm', 'e2e:forge-cjs', 'e2e:forge-esm'] + node-version: [20.x] + fail-fast: false + steps: + - uses: actions/checkout@v4 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + - name: Cache pnpm modules + uses: actions/cache@v4 + env: + cache-name: cache-pnpm-modules + with: + path: ~/.pnpm-store + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.node-version }}-${{ hashFiles('**/pnpm-lock.yaml') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.node-version }}- + - uses: pnpm/action-setup@v3 + with: + version: 9.7.1 + run_install: false + - name: Set pnpm store path + run: | + pnpm config set store-dir ~/.pnpm-store --global + - name: Install Dependencies + run: | + pnpm install shell: bash + - name: Run Tests + run: | + pnpm run build + pnpm run ci-windows:${{ matrix.test }} + shell: bash + - name: 🐛 Show logs + if: failure() + run: | + pnpm run ci:e2e:logs - name: 🐛 Debug Build - uses: stateful/vscode-server-action@v1 + uses: stateful/vscode-server-action@v1.1.0 if: failure() with: timeout: '180000' diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index e4ed63d0..d09e9064 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -44,7 +44,7 @@ jobs: node-version: 20.x - uses: pnpm/action-setup@v3 with: - version: 9.5.0 + version: 9.7.1 run_install: false - name: Package Manager Setup run: | diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2a6acbac..b4af6ac3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -40,7 +40,7 @@ jobs: node-version: 20.x - uses: pnpm/action-setup@v3 with: - version: 9.5.0 + version: 9.7.1 run_install: false - name: Package Manager Setup run: | diff --git a/README.md b/README.md index 38a1c217..2fe5d462 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,27 @@ export const config = { { 'browserName': 'electron', 'wdio:electronServiceOptions': { - appBinaryPath: './path/to/bundled/electron/app.exe', + appBinaryPath: './path/to/built/electron/app.exe', + appArgs: ['foo', 'bar=baz'], + }, + }, + ], + // ... +}; +``` + +Alternatively, you can point the service at an unpackaged app by providing the path to the `main.js` script. Electron will need to be installed in your `node_modules`. It is recommended to bundle unpackaged apps using a bundler such as Rollup, Parcel, Webpack, etc. + +_`wdio.conf.ts`_ + +```ts +export const config = { + // ... + capabilities: [ + { + 'browserName': 'electron', + 'wdio:electronServiceOptions': { + appEntryPoint: './path/to/bundled/electron/main.bundle.js', appArgs: ['foo', 'bar=baz'], }, }, diff --git a/apps/builder-cjs/package.json b/apps/builder-cjs/package.json index 4fda41d6..72decc4a 100644 --- a/apps/builder-cjs/package.json +++ b/apps/builder-cjs/package.json @@ -19,20 +19,20 @@ "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-node-resolve": "^15.2.1", "@types/node": "^20.14.14", - "@wdio/cli": "9.0.0-alpha.426", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/local-runner": "9.0.0-alpha.367", - "@wdio/mocha-framework": "9.0.0-alpha.426", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", "cross-env": "^7.0.3", - "electron": "^31.3.1", + "electron": "^31.4.0", "electron-builder": "^25.0.1", "global-jsdom": "^24.0.0", "jsdom": "^24.1.1", - "rollup": "^4.20.0", + "rollup": "^4.21.0", "ts-loader": "^9.4.4", - "tsx": "^4.16.5", + "tsx": "^4.17.0", "typescript": "^5.5.4", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "peerDependencies": { "typescript": "5.2.2" diff --git a/apps/builder-cjs/tsconfig.json b/apps/builder-cjs/tsconfig.json old mode 100755 new mode 100644 diff --git a/apps/builder-esm/package.json b/apps/builder-esm/package.json index e82baa86..8040497a 100644 --- a/apps/builder-esm/package.json +++ b/apps/builder-esm/package.json @@ -22,20 +22,20 @@ "@rollup/plugin-json": "^6.1.0", "@rollup/plugin-node-resolve": "^15.2.1", "@types/node": "^20.14.14", - "@wdio/cli": "9.0.0-alpha.426", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/local-runner": "9.0.0-alpha.367", - "@wdio/mocha-framework": "9.0.0-alpha.426", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", "cross-env": "^7.0.3", - "electron": "^31.3.1", + "electron": "^31.4.0", "electron-builder": "^25.0.1", "global-jsdom": "^24.0.0", "jsdom": "^24.1.1", - "rollup": "^4.20.0", + "rollup": "^4.21.0", "ts-loader": "^9.4.4", - "tsx": "^4.16.5", + "tsx": "^4.17.0", "typescript": "^5.5.4", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "peerDependencies": { "typescript": "5.2.2" diff --git a/apps/builder-esm/tsconfig.json b/apps/builder-esm/tsconfig.json old mode 100755 new mode 100644 diff --git a/apps/forge-cjs/package.json b/apps/forge-cjs/package.json index b1a18730..24ef3fde 100644 --- a/apps/forge-cjs/package.json +++ b/apps/forge-cjs/package.json @@ -10,7 +10,7 @@ "build:package:mac-universal": "cp ./src/index.html ./dist && electron-forge package --platform=darwin --arch=universal", "build:mac-universal": "pnpm build:bundle && pnpm build:package:mac-universal", "ci": "pnpm i && pnpm build && pnpm test", - "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./package-lock.json ./wdio-logs ./out", + "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./wdio-logs", "clean:dist": "pnpm dlx shx rm -rf ./dist ./out && pnpm dlx shx mkdir -p ./dist" }, "dependencies": { @@ -21,19 +21,19 @@ "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-node-resolve": "^15.2.1", "@types/node": "^20.14.14", - "@wdio/cli": "9.0.0-alpha.426", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/local-runner": "9.0.0-alpha.367", - "@wdio/mocha-framework": "9.0.0-alpha.426", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", "cross-env": "^7.0.3", - "electron": "^31.3.1", + "electron": "^31.4.0", "global-jsdom": "^24.0.0", "jsdom": "^24.1.1", - "rollup": "^4.20.0", + "rollup": "^4.21.0", "ts-loader": "^9.4.4", - "tsx": "^4.16.5", + "tsx": "^4.17.0", "typescript": "^5.5.4", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "peerDependencies": { "typescript": "5.2.2" diff --git a/apps/forge-esm/package.json b/apps/forge-esm/package.json index a4a99ae6..92723960 100644 --- a/apps/forge-esm/package.json +++ b/apps/forge-esm/package.json @@ -11,7 +11,7 @@ "build:package": "cp ./src/index.html ./dist && electron-forge package", "build:package:mac-universal": "cp ./src/index.html ./dist && electron-forge package --platform=darwin --arch=universal", "build:mac-universal": "pnpm build:bundle && pnpm build:package:mac-universal", - "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./package-lock.json ./wdio-logs ./out", + "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./wdio-logs", "clean:dist": "pnpm dlx shx rm -rf ./dist ./out && pnpm dlx shx mkdir -p ./dist" }, "dependencies": { @@ -22,19 +22,19 @@ "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-node-resolve": "^15.2.1", "@types/node": "^20.14.14", - "@wdio/cli": "9.0.0-alpha.426", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/local-runner": "9.0.0-alpha.367", - "@wdio/mocha-framework": "9.0.0-alpha.426", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", "cross-env": "^7.0.3", - "electron": "^31.3.1", + "electron": "^31.4.0", "global-jsdom": "^24.0.0", "jsdom": "^24.1.1", - "rollup": "^4.20.0", + "rollup": "^4.21.0", "ts-loader": "^9.4.4", - "tsx": "^4.16.5", + "tsx": "^4.17.0", "typescript": "^5.5.4", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "peerDependencies": { "typescript": "5.2.2" diff --git a/apps/forge-esm/src/assets/icon/webdriverio.icns b/apps/forge-esm/src/assets/icon/webdriverio.icns new file mode 100644 index 00000000..57be1369 Binary files /dev/null and b/apps/forge-esm/src/assets/icon/webdriverio.icns differ diff --git a/apps/forge-esm/src/assets/icon/webdriverio.ico b/apps/forge-esm/src/assets/icon/webdriverio.ico new file mode 100644 index 00000000..e681a1fd Binary files /dev/null and b/apps/forge-esm/src/assets/icon/webdriverio.ico differ diff --git a/apps/forge-esm/src/assets/icon/webdriverio.png b/apps/forge-esm/src/assets/icon/webdriverio.png new file mode 100644 index 00000000..7f55f8b3 Binary files /dev/null and b/apps/forge-esm/src/assets/icon/webdriverio.png differ diff --git a/apps/forge-esm/src/assets/icon/webdriverio.svg b/apps/forge-esm/src/assets/icon/webdriverio.svg new file mode 100644 index 00000000..6c81db8c --- /dev/null +++ b/apps/forge-esm/src/assets/icon/webdriverio.svg @@ -0,0 +1,30 @@ + + + Robot-Edit + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/forge-esm/tsconfig.json b/apps/forge-esm/tsconfig.json old mode 100755 new mode 100644 diff --git a/apps/no-binary-cjs/README.md b/apps/no-binary-cjs/README.md new file mode 100644 index 00000000..142336d0 --- /dev/null +++ b/apps/no-binary-cjs/README.md @@ -0,0 +1,5 @@ +# no-binary-cjs + +A CJS project for a minimal Electron app, designed to provide E2E testing for `wdio-electron-service`. + +The app is not built but has been bundled. diff --git a/apps/no-binary-cjs/package.json b/apps/no-binary-cjs/package.json new file mode 100644 index 00000000..ede05ad5 --- /dev/null +++ b/apps/no-binary-cjs/package.json @@ -0,0 +1,35 @@ +{ + "name": "example-no-binary-cjs", + "version": "1.0.0", + "main": "dist/main.bundle.js", + "private": true, + "scripts": { + "build": "tsc && rollup -c rollup.config.mjs && cp ./src/index.html ./dist", + "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./wdio-logs", + "clean:dist": "pnpm dlx shx rm -rf ./dist && pnpm dlx shx mkdir -p ./dist" + }, + "dependencies": { + "wdio-electron-service": "workspace:*" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^26.0.1", + "@rollup/plugin-node-resolve": "^15.2.1", + "@types/node": "^20.14.12", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", + "cross-env": "^7.0.3", + "electron": "^31.4.0", + "global-jsdom": "^24.0.0", + "jsdom": "^24.1.1", + "rollup": "^4.21.0", + "ts-loader": "^9.4.4", + "tsx": "^4.17.0", + "typescript": "^5.5.4", + "webdriverio": "^9.0.4" + }, + "peerDependencies": { + "typescript": "5.2.2" + } +} diff --git a/apps/no-binary-cjs/rollup.config.mjs b/apps/no-binary-cjs/rollup.config.mjs new file mode 100644 index 00000000..aebd221b --- /dev/null +++ b/apps/no-binary-cjs/rollup.config.mjs @@ -0,0 +1,25 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; + +export default [ + { + input: 'dist/preload.js', + output: { + file: 'dist/preload.bundle.js', + inlineDynamicImports: true, + format: 'cjs', + }, + plugins: [nodeResolve(), commonjs()], + external: ['electron'], + }, + { + input: 'dist/main.js', + output: { + file: 'dist/main.bundle.js', + inlineDynamicImports: true, + format: 'cjs', + }, + plugins: [nodeResolve(), commonjs()], + external: ['electron'], + }, +]; diff --git a/apps/no-binary-cjs/src/index.html b/apps/no-binary-cjs/src/index.html new file mode 100644 index 00000000..de1250e5 --- /dev/null +++ b/apps/no-binary-cjs/src/index.html @@ -0,0 +1,56 @@ + + + + + Test + + + + + + Hello +
word1 word2
+
word3 word4
+
word5 word6
+ + + + +
+
+ Bigger clicked: 0 Smaller clicked: 0 +
+ + + + diff --git a/apps/no-binary-cjs/src/main.ts b/apps/no-binary-cjs/src/main.ts new file mode 100644 index 00000000..d8ae5a7e --- /dev/null +++ b/apps/no-binary-cjs/src/main.ts @@ -0,0 +1,48 @@ +import { app, BrowserWindow, ipcMain } from 'electron'; +import { isTest } from './util'; + +if (isTest) { + require('wdio-electron-service/main'); +} + +const appPath = app.getAppPath(); +let mainWindow: BrowserWindow; + +app.on('ready', () => { + console.log('main log'); + console.warn('main warn'); + console.error('main error'); + + mainWindow = new BrowserWindow({ + x: 25, + y: 35, + width: 200, + height: 300, + webPreferences: { + preload: `${appPath}/preload.bundle.js`, + sandbox: !isTest, + nodeIntegration: false, + contextIsolation: true, + }, + }); + + mainWindow.on('closed', () => { + mainWindow.destroy(); + }); + mainWindow.loadFile(`${appPath}/index.html`); + + mainWindow.on('ready-to-show', () => { + mainWindow.title = 'this is the title of the main window'; + // mainWindow.webContents.openDevTools(); + }); + + ipcMain.handle('increase-window-size', () => { + const bounds = mainWindow.getBounds(); + mainWindow.setBounds({ ...bounds, height: bounds.height + 10, width: bounds.width + 10 }); + }); + + ipcMain.handle('decrease-window-size', () => { + const bounds = mainWindow.getBounds(); + mainWindow.setBounds({ ...bounds, height: bounds.height - 10, width: bounds.width - 10 }); + }); +}); diff --git a/apps/no-binary-cjs/src/preload.ts b/apps/no-binary-cjs/src/preload.ts new file mode 100644 index 00000000..cef0cb62 --- /dev/null +++ b/apps/no-binary-cjs/src/preload.ts @@ -0,0 +1,15 @@ +import { contextBridge, ipcRenderer } from 'electron'; +import { isTest } from './util'; + +if (isTest) { + require('wdio-electron-service/preload'); +} + +const validChannels = ['increase-window-size', 'decrease-window-size']; + +const invoke = (channel: string, ...data: unknown[]) => + validChannels.includes(channel) ? ipcRenderer.invoke(channel, data) : Promise.reject(); + +contextBridge.exposeInMainWorld('api', { + invoke, +}); diff --git a/apps/no-binary-cjs/src/util.ts b/apps/no-binary-cjs/src/util.ts new file mode 100644 index 00000000..3bffbcef --- /dev/null +++ b/apps/no-binary-cjs/src/util.ts @@ -0,0 +1 @@ +export const isTest = process.env.TEST === 'true'; diff --git a/apps/no-binary-cjs/tsconfig.eslint.json b/apps/no-binary-cjs/tsconfig.eslint.json new file mode 100644 index 00000000..ab2f79eb --- /dev/null +++ b/apps/no-binary-cjs/tsconfig.eslint.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "include": ["*.conf.ts", "src/*.ts", "e2e*/*.spec.ts"] +} diff --git a/apps/no-binary-cjs/tsconfig.json b/apps/no-binary-cjs/tsconfig.json new file mode 100644 index 00000000..b0b79714 --- /dev/null +++ b/apps/no-binary-cjs/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../tsconfig.base.cjs.json", + "compilerOptions": { + "target": "ES2022", + "baseUrl": ".", + "types": [], + "typeRoots": ["./node_modules", "./node_modules/@types", "../../node_modules/@types", "../../@types"], + "outDir": "dist" + }, + "include": ["src/*.ts"], + "exclude": ["node_modules"] +} diff --git a/apps/no-binary-esm/README.md b/apps/no-binary-esm/README.md new file mode 100644 index 00000000..dc8d8fdf --- /dev/null +++ b/apps/no-binary-esm/README.md @@ -0,0 +1,5 @@ +# no-binary-esm + +An ESM project for a minimal Electron app, designed to provide E2E testing for `wdio-electron-service`. + +The app has not been built but has been bundled. diff --git a/apps/no-binary-esm/package.json b/apps/no-binary-esm/package.json new file mode 100644 index 00000000..4de53cc3 --- /dev/null +++ b/apps/no-binary-esm/package.json @@ -0,0 +1,37 @@ +{ + "name": "example-no-binary-esm", + "version": "1.0.0", + "main": "dist/main.bundle.js", + "module": "dist/main.bundle.js", + "private": true, + "type": "module", + "scripts": { + "build": "tsc && rollup -c rollup.config.js && cp ./src/index.html ./dist", + "clean": "pnpm clean:dist && pnpm dlx shx rm -rf ./node_modules ./wdio-logs", + "clean:dist": "pnpm dlx shx rm -rf ./dist && pnpm dlx shx mkdir -p ./dist" + }, + "dependencies": { + "wdio-electron-service": "workspace:*" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^26.0.1", + "@rollup/plugin-node-resolve": "^15.2.1", + "@types/node": "^20.14.12", + "@wdio/cli": "^9.0.4", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", + "cross-env": "^7.0.3", + "electron": "^31.4.0", + "global-jsdom": "^24.0.0", + "jsdom": "^24.1.1", + "rollup": "^4.21.0", + "ts-loader": "^9.4.4", + "tsx": "^4.17.0", + "typescript": "^5.5.4", + "webdriverio": "^9.0.4" + }, + "peerDependencies": { + "typescript": "5.2.2" + } +} diff --git a/apps/no-binary-esm/rollup.config.js b/apps/no-binary-esm/rollup.config.js new file mode 100644 index 00000000..bede12fc --- /dev/null +++ b/apps/no-binary-esm/rollup.config.js @@ -0,0 +1,25 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import commonjs from '@rollup/plugin-commonjs'; + +export default [ + { + input: 'dist/preload.js', + output: { + file: 'dist/preload.bundle.cjs', + inlineDynamicImports: true, + format: 'cjs', + }, + plugins: [nodeResolve(), commonjs()], + external: ['electron'], + }, + { + input: 'dist/main.js', + output: { + file: 'dist/main.bundle.js', + inlineDynamicImports: true, + format: 'esm', + }, + plugins: [nodeResolve()], + external: ['electron'], + }, +]; diff --git a/apps/no-binary-esm/src/index.html b/apps/no-binary-esm/src/index.html new file mode 100644 index 00000000..de1250e5 --- /dev/null +++ b/apps/no-binary-esm/src/index.html @@ -0,0 +1,56 @@ + + + + + Test + + + + + + Hello +
word1 word2
+
word3 word4
+
word5 word6
+ + + + +
+
+ Bigger clicked: 0 Smaller clicked: 0 +
+ + + + diff --git a/apps/no-binary-esm/src/main.ts b/apps/no-binary-esm/src/main.ts new file mode 100644 index 00000000..1d08f31a --- /dev/null +++ b/apps/no-binary-esm/src/main.ts @@ -0,0 +1,48 @@ +import { app, BrowserWindow, ipcMain } from 'electron'; +import { isTest } from './util.js'; + +if (isTest) { + import('wdio-electron-service/main'); +} + +const appPath = app.getAppPath(); +let mainWindow: BrowserWindow; + +app.on('ready', () => { + console.log('main log'); + console.warn('main warn'); + console.error('main error'); + + mainWindow = new BrowserWindow({ + x: 25, + y: 35, + width: 200, + height: 300, + webPreferences: { + preload: `${appPath}/preload.bundle.cjs`, + sandbox: !isTest, + nodeIntegration: false, + contextIsolation: true, + }, + }); + + mainWindow.on('closed', () => { + mainWindow.destroy(); + }); + mainWindow.loadFile(`${appPath}/index.html`); + + mainWindow.on('ready-to-show', () => { + mainWindow.title = 'this is the title of the main window'; + // mainWindow.webContents.openDevTools(); + }); + + ipcMain.handle('increase-window-size', () => { + const bounds = mainWindow.getBounds(); + mainWindow.setBounds({ ...bounds, height: bounds.height + 10, width: bounds.width + 10 }); + }); + + ipcMain.handle('decrease-window-size', () => { + const bounds = mainWindow.getBounds(); + mainWindow.setBounds({ ...bounds, height: bounds.height - 10, width: bounds.width - 10 }); + }); +}); diff --git a/apps/no-binary-esm/src/preload.ts b/apps/no-binary-esm/src/preload.ts new file mode 100644 index 00000000..f26f1b3b --- /dev/null +++ b/apps/no-binary-esm/src/preload.ts @@ -0,0 +1,15 @@ +import { contextBridge, ipcRenderer } from 'electron'; +import { isTest } from './util.js'; + +if (isTest) { + import('wdio-electron-service/preload'); +} + +const validChannels = ['increase-window-size', 'decrease-window-size']; + +const invoke = (channel: string, ...data: unknown[]) => + validChannels.includes(channel) ? ipcRenderer.invoke(channel, data) : Promise.reject(); + +contextBridge.exposeInMainWorld('api', { + invoke, +}); diff --git a/apps/no-binary-esm/src/util.ts b/apps/no-binary-esm/src/util.ts new file mode 100644 index 00000000..3bffbcef --- /dev/null +++ b/apps/no-binary-esm/src/util.ts @@ -0,0 +1 @@ +export const isTest = process.env.TEST === 'true'; diff --git a/apps/no-binary-esm/tsconfig.eslint.json b/apps/no-binary-esm/tsconfig.eslint.json new file mode 100644 index 00000000..ab2f79eb --- /dev/null +++ b/apps/no-binary-esm/tsconfig.eslint.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "include": ["*.conf.ts", "src/*.ts", "e2e*/*.spec.ts"] +} diff --git a/apps/no-binary-esm/tsconfig.json b/apps/no-binary-esm/tsconfig.json new file mode 100644 index 00000000..2fd95501 --- /dev/null +++ b/apps/no-binary-esm/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "target": "ESNext", + "types": ["node"], + "typeRoots": ["./node_modules", "./node_modules/@types", "../../node_modules/@types", "../../@types"], + "outDir": "dist" + }, + "exclude": ["node_modules"], + "include": ["src/*.ts"] +} diff --git a/docs/configuration/service-configuration.md b/docs/configuration/service-configuration.md index 825ee0aa..e4ef3807 100644 --- a/docs/configuration/service-configuration.md +++ b/docs/configuration/service-configuration.md @@ -41,17 +41,23 @@ export const config = { The service supports the following configuration options: +### `appArgs`: + +An array of string arguments to be passed through to the app on execution of the test run. Electron [command line switches](https://www.electronjs.org/docs/latest/api/command-line-switches) and some [Chromium switches](https://peter.sh/experiments/chromium-command-line-switches) can be used here. + +Type: `string[]` + ### `appBinaryPath`: The path to the Electron binary of the app for testing. In most cases the service will determine the path to your app automatically, but if this fails for some reason, e.g. your app is in a different repository from your tests, then it is recommended to set this value manually. Type: `string` -### `appArgs`: +### `appEntryPoint`: -An array of string arguments to be passed through to the app on execution of the test run. Electron [command line switches](https://www.electronjs.org/docs/latest/api/command-line-switches) and some [Chromium switches](https://peter.sh/experiments/chromium-command-line-switches) can be used here. +The path to the unpackaged entry point of the app for testing, e.g. your `main.js`. You will need Electron installed to use this feature. The `appEntryPoint` value overrides `appBinaryPath` if both are set. -Type: `string[]` +Type: `string` ### `clearMocks`: diff --git a/packages/e2e/api.spec.ts b/e2e/api.spec.ts similarity index 100% rename from packages/e2e/api.spec.ts rename to e2e/api.spec.ts diff --git a/packages/e2e/application.spec.ts b/e2e/application.spec.ts similarity index 100% rename from packages/e2e/application.spec.ts rename to e2e/application.spec.ts diff --git a/packages/e2e/dom.spec.ts b/e2e/dom.spec.ts similarity index 100% rename from packages/e2e/dom.spec.ts rename to e2e/dom.spec.ts diff --git a/packages/e2e/interaction.spec.ts b/e2e/interaction.spec.ts similarity index 100% rename from packages/e2e/interaction.spec.ts rename to e2e/interaction.spec.ts diff --git a/packages/e2e/multiremote/api.spec.ts b/e2e/multiremote/api.spec.ts similarity index 100% rename from packages/e2e/multiremote/api.spec.ts rename to e2e/multiremote/api.spec.ts diff --git a/packages/e2e/package.json b/e2e/package.json similarity index 65% rename from packages/e2e/package.json rename to e2e/package.json index c3cf5b1c..ae86b145 100644 --- a/packages/e2e/package.json +++ b/e2e/package.json @@ -6,6 +6,7 @@ "scripts": { "ci": "pnpm i && pnpm test", "clean": "pnpm dlx shx rm -rf ./node_modules pnpm-lock.yaml ./wdio-logs* ./out", + "logs": "pnpm dlx shx cat ./wdio-logs*/*.log", "test:e2e:forge-cjs": "cross-env EXAMPLE_DIR=forge-cjs pnpm run exec", "test:e2e:forge-esm": "cross-env EXAMPLE_DIR=forge-esm pnpm run exec", "test:e2e:builder-cjs": "cross-env EXAMPLE_DIR=builder-cjs pnpm run exec", @@ -14,7 +15,13 @@ "test:e2e-mac-universal:forge-esm": "cross-env EXAMPLE_DIR=forge-esm pnpm run exec", "test:e2e-mac-universal:builder-cjs": "cross-env EXAMPLE_DIR=builder-cjs pnpm run exec", "test:e2e-mac-universal:builder-esm": "cross-env EXAMPLE_DIR=builder-esm pnpm run exec", + "test:e2e:no-binary-cjs": "cross-env DEBUG=wdio-electron-service EXAMPLE_DIR=no-binary-cjs pnpm run exec-no-binary", + "test:e2e:no-binary-esm": "cross-env DEBUG=wdio-electron-service EXAMPLE_DIR=no-binary-esm pnpm run exec-no-binary", "exec": "pnpm run exec:main && pnpm run exec:multiremote && pnpm run exec:standalone", + "exec-no-binary": "pnpm run exec-no-binary:main && pnpm run exec-no-binary:multiremote && pnpm run exec-no-binary:standalone", + "exec-no-binary:main": "xvfb-maybe wdio run ./wdio.no-binary.conf.ts", + "exec-no-binary:multiremote": "xvfb-maybe wdio run ./wdio.no-binary.multiremote.conf.ts", + "exec-no-binary:standalone": "xvfb-maybe tsx ./standalone/api.no-binary.spec.ts", "exec:main": "xvfb-maybe wdio run ./wdio.conf.ts", "exec:multiremote": "xvfb-maybe wdio run ./wdio.multiremote.conf.ts", "exec:standalone": "xvfb-maybe tsx ./standalone/api.spec.ts", @@ -22,23 +29,23 @@ }, "dependencies": { "@testing-library/webdriverio": "^3.2.1", - "@wdio/cli": "9.0.0-alpha.426", + "@wdio/cli": "^9.0.4", "@wdio/electron-utils": "workspace:*", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/local-runner": "9.0.0-alpha.367", - "@wdio/mocha-framework": "9.0.0-alpha.426", - "electron": "^31.3.1", - "tsx": "^4.16.5", + "@wdio/globals": "^9.0.4", + "@wdio/local-runner": "^9.0.4", + "@wdio/mocha-framework": "^9.0.4", + "electron": "^31.4.0", + "tsx": "^4.17.0", "wdio-electron-service": "workspace:*", - "webdriverio": "9.0.0-alpha.369", + "webdriverio": "^9.0.4", "xvfb-maybe": "^0.2.1" }, "devDependencies": { "@electron-forge/cli": "^7.2.0", "@types/mocha": "^10.0.6", "@types/node": "^20.14.14", - "@vitest/spy": "^2.0.4", - "@wdio/types": "9.0.0-alpha.426", + "@vitest/spy": "^2.0.5", + "@wdio/types": "^9.0.4", "global-jsdom": "^24.0.0", "jsdom": "^24.1.1", "read-package-up": "^11.0.0", diff --git a/e2e/standalone/api.no-binary.spec.ts b/e2e/standalone/api.no-binary.spec.ts new file mode 100644 index 00000000..c502649b --- /dev/null +++ b/e2e/standalone/api.no-binary.spec.ts @@ -0,0 +1,39 @@ +import path from 'node:path'; +import url from 'node:url'; +import fs from 'node:fs'; +import process from 'node:process'; + +import { startElectron } from 'wdio-electron-service'; +import type { NormalizedPackageJson } from 'read-package-up'; + +import { getElectronVersion } from '@wdio/electron-utils'; + +process.env.TEST = 'true'; + +const exampleDir = process.env.EXAMPLE_DIR || 'forge-esm'; +const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); +const packageJsonPath = path.join(__dirname, '..', '..', 'apps', exampleDir, 'package.json'); +const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, { encoding: 'utf-8' })) as NormalizedPackageJson; +const pkg = { packageJson, path: packageJsonPath }; +const appEntryPoint = path.join(__dirname, '..', '..', 'apps', exampleDir, 'dist', 'main.bundle.js'); +const electronVersion = getElectronVersion(pkg); + +const browser = await startElectron({ + appEntryPoint, + appArgs: ['foo', 'bar=baz'], +}); + +const appName = await browser.electron.execute((electron) => electron.app.getName()); +if (appName !== 'Electron') { + throw new Error(`appName test failed: ${appName} !== Electron`); +} + +const appVersion = await browser.electron.execute((electron) => electron.app.getVersion()); +if (appVersion !== electronVersion) { + throw new Error(`appVersion test failed: ${appVersion} !== ${electronVersion}`); +} + +// Clean up - quit the app +await browser.deleteSession(); + +process.exit(); diff --git a/packages/e2e/standalone/api.spec.ts b/e2e/standalone/api.spec.ts similarity index 93% rename from packages/e2e/standalone/api.spec.ts rename to e2e/standalone/api.spec.ts index 84946cfb..6c9b1997 100644 --- a/packages/e2e/standalone/api.spec.ts +++ b/e2e/standalone/api.spec.ts @@ -12,7 +12,7 @@ process.env.TEST = 'true'; const exampleDir = process.env.EXAMPLE_DIR || 'forge-esm'; const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); -const packageJsonPath = path.join(__dirname, '..', '..', '..', 'apps', exampleDir, 'package.json'); +const packageJsonPath = path.join(__dirname, '..', '..', 'apps', exampleDir, 'package.json'); const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, { encoding: 'utf-8' })) as NormalizedPackageJson; const pkg = { packageJson, path: packageJsonPath }; const electronVersion = getElectronVersion(pkg); diff --git a/packages/e2e/tsconfig.json b/e2e/tsconfig.json similarity index 87% rename from packages/e2e/tsconfig.json rename to e2e/tsconfig.json index ceed20f7..85fecd2d 100755 --- a/packages/e2e/tsconfig.json +++ b/e2e/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.base.json", + "extends": "../tsconfig.base.json", "compilerOptions": { "noEmit": true, "module": "NodeNext", diff --git a/packages/e2e/wdio.conf.ts b/e2e/wdio.conf.ts similarity index 93% rename from packages/e2e/wdio.conf.ts rename to e2e/wdio.conf.ts index 77a7ded6..861f7574 100644 --- a/packages/e2e/wdio.conf.ts +++ b/e2e/wdio.conf.ts @@ -9,7 +9,7 @@ import { getAppBuildInfo, getBinaryPath, getElectronVersion } from '@wdio/electr const exampleDir = process.env.EXAMPLE_DIR || 'forge-esm'; const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); -const packageJsonPath = path.join(__dirname, '..', '..', 'apps', exampleDir, 'package.json'); +const packageJsonPath = path.join(__dirname, '..', 'apps', exampleDir, 'package.json'); const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, { encoding: 'utf-8' })) as NormalizedPackageJson; const pkg = { packageJson, path: packageJsonPath }; const electronVersion = getElectronVersion(pkg); diff --git a/packages/e2e/wdio.multiremote.conf.ts b/e2e/wdio.multiremote.conf.ts similarity index 100% rename from packages/e2e/wdio.multiremote.conf.ts rename to e2e/wdio.multiremote.conf.ts diff --git a/e2e/wdio.no-binary.conf.ts b/e2e/wdio.no-binary.conf.ts new file mode 100644 index 00000000..a2200aef --- /dev/null +++ b/e2e/wdio.no-binary.conf.ts @@ -0,0 +1,47 @@ +import url from 'node:url'; +import path from 'node:path'; +import fs from 'node:fs'; + +import type { NormalizedPackageJson } from 'read-package-up'; +import type { Options } from '@wdio/types'; + +import { getElectronVersion } from '@wdio/electron-utils'; + +const exampleDir = process.env.EXAMPLE_DIR || 'forge-esm'; +const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); +const packageJsonPath = path.join(__dirname, '..', 'apps', exampleDir, 'package.json'); +const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, { encoding: 'utf-8' })) as NormalizedPackageJson; +const appEntryPoint = path.join(__dirname, '..', 'apps', exampleDir, 'dist', 'main.bundle.js'); + +globalThis.packageJson = { + name: 'Electron', + version: getElectronVersion({ packageJson, path: packageJsonPath }) as string, +}; +process.env.TEST = 'true'; + +export const config: Options.Testrunner = { + services: ['electron'], + capabilities: [ + { + 'browserName': 'electron', + 'wdio:electronServiceOptions': { + appEntryPoint, + appArgs: ['foo', 'bar=baz'], + restoreMocks: true, + }, + } as WebdriverIO.Capabilities, + ], + waitforTimeout: 5000, + connectionRetryCount: 10, + connectionRetryTimeout: 30000, + logLevel: 'debug', + runner: 'local', + outputDir: `wdio-logs-${exampleDir}`, + specs: [`./*.spec.ts`], + tsConfigPath: path.join(__dirname, 'tsconfig.json'), + framework: 'mocha', + mochaOpts: { + ui: 'bdd', + timeout: 30000, + }, +}; diff --git a/e2e/wdio.no-binary.multiremote.conf.ts b/e2e/wdio.no-binary.multiremote.conf.ts new file mode 100644 index 00000000..14b15ad5 --- /dev/null +++ b/e2e/wdio.no-binary.multiremote.conf.ts @@ -0,0 +1,32 @@ +import type { Options } from '@wdio/types'; + +import { config as baseConfig } from './wdio.no-binary.conf.js'; + +const exampleDir = process.env.EXAMPLE_DIR || 'forge-esm'; +const baseServiceOptions = baseConfig.capabilities[0]['wdio:electronServiceOptions']; + +export const config: Options.Testrunner = { + ...baseConfig, + outputDir: `wdio-logs-multiremote-${exampleDir}`, + specs: ['./multiremote/*.spec.ts'], + capabilities: { + browserA: { + capabilities: { + 'browserName': 'electron', + 'wdio:electronServiceOptions': { + ...baseServiceOptions, + appArgs: ['browser=A'], + }, + } as WebdriverIO.Capabilities, + }, + browserB: { + capabilities: { + 'browserName': 'electron', + 'wdio:electronServiceOptions': { + ...baseServiceOptions, + appArgs: ['browser=B'], + }, + } as WebdriverIO.Capabilities, + }, + }, +}; diff --git a/e2e/wdio.no-binary.standalone.ts b/e2e/wdio.no-binary.standalone.ts new file mode 100644 index 00000000..6d102f33 --- /dev/null +++ b/e2e/wdio.no-binary.standalone.ts @@ -0,0 +1,9 @@ +import type { Options } from '@wdio/types'; + +import { config as baseConfig } from './wdio.no-binary.conf.js'; + +export const config: Options.Testrunner = { + ...baseConfig, + outputDir: 'wdio-standalone-logs', + specs: ['./standalone/*.spec.ts'], +}; diff --git a/packages/e2e/wdio.standalone.conf.ts b/e2e/wdio.standalone.conf.ts similarity index 83% rename from packages/e2e/wdio.standalone.conf.ts rename to e2e/wdio.standalone.conf.ts index e7366bd6..4daabbac 100644 --- a/packages/e2e/wdio.standalone.conf.ts +++ b/e2e/wdio.standalone.conf.ts @@ -2,8 +2,6 @@ import type { Options } from '@wdio/types'; import { config as baseConfig } from './wdio.conf.js'; -console.log('standalone config', baseConfig); - export const config: Options.Testrunner = { ...baseConfig, outputDir: 'wdio-standalone-logs', diff --git a/eslint.config.js b/eslint.config.js index 9896bbff..a386c76a 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -3,7 +3,7 @@ import ts from '@typescript-eslint/eslint-plugin'; import tsParser from '@typescript-eslint/parser'; import prettier from 'eslint-config-prettier'; import vitest from 'eslint-plugin-vitest'; -import wdio from 'eslint-plugin-wdio'; +import * as wdio from 'eslint-plugin-wdio'; import globals from 'globals'; export default [ @@ -126,7 +126,7 @@ export default [ wdio, }, rules: { - ...wdio.configs.recommended.rules, + ...wdio.configs['flat/recommended'].rules, '@typescript-eslint/no-var-requires': 'off', }, }, diff --git a/package.json b/package.json index 62c60b7c..73ca7556 100644 --- a/package.json +++ b/package.json @@ -7,20 +7,29 @@ }, "scripts": { "build": "turbo run build --filter=@wdio* --filter=wdio-electron-service --only", - "ci": "turbo run lint format:check test:unit test:e2e:builder-cjs test:e2e:builder-esm test:e2e:forge-cjs test:e2e:forge-esm", + "ci": "turbo run lint format:check test:unit test:e2e:builder-cjs test:e2e:builder-esm test:e2e:forge-cjs test:e2e:forge-esm test:e2e:no-binary-cjs test:e2e:no-binary-esm", + "ci-linux": "turbo run lint format:check test:unit test:e2e:builder-cjs test:e2e:builder-esm test:e2e:forge-cjs test:e2e:forge-esm test:e2e:no-binary-cjs test:e2e:no-binary-esm --concurrency=1", + "ci-mac:e2e:mac-universal": "turbo run build:mac-universal test:e2e-mac-universal:builder-cjs test:e2e-mac-universal:builder-esm test:e2e-mac-universal:forge-cjs test:e2e-mac-universal:forge-esm --only", + "ci-windows:e2e:builder-cjs": "turbo run build --filter=example-builder-cjs --only && turbo run test:e2e:builder-cjs --only", + "ci-windows:e2e:builder-esm": "turbo run build --filter=example-builder-esm --only && turbo run test:e2e:builder-esm --only", + "ci-windows:e2e:forge-cjs": "pnpm run init-forge:package && pnpm run init-forge:app-cjs && turbo run build --filter=example-forge-cjs --only && turbo run test:e2e:forge-cjs --only", + "ci-windows:e2e:forge-esm": "pnpm run init-forge:package && pnpm run init-forge:app-esm && turbo run build --filter=example-forge-esm --only && turbo run test:e2e:forge-esm --only", + "ci-windows:e2e:no-binary": "turbo run build --filter=example-no-binary* --only && turbo run test:e2e:no-binary-cjs test:e2e:no-binary-esm --only", + "ci-windows:units": "turbo run lint format:check test:unit", "ci:e2e:clean": "turbo run clean --filter=example*", - "ci:e2e:mac-universal": "turbo run test:e2e-mac-universal:builder-cjs test:e2e-mac-universal:builder-esm test:e2e-mac-universal:forge-cjs test:e2e-mac-universal:forge-esm", - "ci:init-windows": "tsx ./scripts/init-windows-ci.ts", + "ci:e2e:logs": "turbo run logs --filter=@repo/e2e", "clean": "turbo run clean && rm -rf node_modules || shx rm -rf node_modules", "clean:yarn-artifacts": "tsx ./scripts/clean-yarn-artifacts.ts", "dev": "turbo watch wdio-electron-service#build", "format": "prettier --write \"**/*.{j,t}s\" \"**/*.{yml,md,json}\"", "format:check": "prettier --check \"**/*.{j,t}s\" \"**/*.{yml,md,json}\"", "graph": "pnpm graph:e2e && pnpm graph:e2e:mac-universal", - "graph:e2e": "tsx ./scripts/create-task-graph.ts ./.github/assets/e2e-graph.png test:e2e:forge-cjs test:e2e:forge-esm test:e2e:builder-cjs test:e2e:builder-esm", + "graph:e2e": "tsx ./scripts/create-task-graph.ts ./.github/assets/e2e-graph.png test:e2e:forge-cjs test:e2e:forge-esm test:e2e:builder-cjs test:e2e:builder-esm test:e2e:no-binary-cjs test:e2e:no-binary-esm", "graph:e2e:mac-universal": "tsx ./scripts/create-task-graph.ts ./.github/assets/e2e-graph-mac-universal.png test:e2e-mac-universal:builder-cjs test:e2e-mac-universal:builder-esm test:e2e-mac-universal:forge-cjs test:e2e-mac-universal:forge-esm", "init-forge:package": "tsx ./scripts/create-yarn-package.ts", "init-forge:package:mac-universal": "tsx ./scripts/create-yarn-package.ts", + "init-forge:app-cjs": "tsx ./scripts/init-forge-apps.ts cjs", + "init-forge:app-esm": "tsx ./scripts/init-forge-apps.ts esm", "init-forge:apps": "tsx ./scripts/init-forge-apps.ts", "init-forge:apps:mac-universal": "tsx ./scripts/init-forge-apps.ts", "lint": "cross-env ESLINT_USE_FLAT_CONFIG=true eslint \"**/*.{j,mj,cj,t}s\"", @@ -28,14 +37,15 @@ "package": "turbo run pack --filter=@wdio* --filter=wdio-electron-service --only", "prepare": "husky", "release": "turbo run release --filter=@wdio* --filter=wdio-electron-service --only --concurrency=1", - "test": "turbo run test test:e2e", + "test": "turbo run test:unit test:e2e", "test:dev": "turbo run test:dev", + "test:unit": "turbo run test:unit", "test:e2e-local": "pnpm dlx cross-env pnpm clean && pnpm i && pnpm run ci && pnpm run clean:yarn-artifacts || pnpm run clean:yarn-artifacts", "test:e2e-mac-universal-local": "pnpm dlx cross-env pnpm clean && pnpm i && turbo run build && test:e2e:mac-universal && pnpm run clean:yarn-artifacts || pnpm run clean:yarn-artifacts", "update:all": "pnpm up -iLr" }, "devDependencies": { - "@eslint/js": "^9.8.0", + "@eslint/js": "^9.9.0", "@types/eslint-config-prettier": "^6.11.2", "@types/node": "^20.14.14", "@types/shelljs": "^0.8.15", @@ -45,22 +55,27 @@ "eslint": "^8.57.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-vitest": "^0.5.3", - "eslint-plugin-wdio": "^8.20.0", + "eslint-plugin-wdio": "^9.0.4", "globals": "^15.9.0", "husky": "^9.1.4", "jsdom": "^24.1.1", - "lint-staged": "^15.2.8", + "lint-staged": "^15.2.9", "prettier": "^3.3.3", "read-package-up": "^11.0.0", "shelljs": "^0.8.5", "shx": "^0.3.4", - "tsx": "^4.16.5", - "turbo": "^2.0.12" + "tsx": "^4.17.0", + "turbo": "^2.0.14" + }, + "pnpm": { + "overrides": { + "expect-webdriverio": "5.0.1" + } }, "lint-staged": { "**/*.{yml,json,md,ts,js}": [ "prettier --write" ] }, - "packageManager": "pnpm@9.5.0+sha256.dbdf5961c32909fb030595a9daa1dae720162e658609a8f92f2fa99835510ca5" + "packageManager": "pnpm@9.7.1+sha512.faf344af2d6ca65c4c5c8c2224ea77a81a5e8859cbc4e06b1511ddce2f0151512431dd19e6aff31f2c6a8f5f2aced9bd2273e1fed7dd4de1868984059d2c4247" } diff --git a/packages/@wdio_electron-types/package.json b/packages/@wdio_electron-types/package.json index daec78d3..c071f3d3 100644 --- a/packages/@wdio_electron-types/package.json +++ b/packages/@wdio_electron-types/package.json @@ -18,15 +18,15 @@ "devDependencies": { "@electron-forge/shared-types": "^7.4.0", "@electron/packager": "^18.3.2", - "@vitest/spy": "^2.0.4", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/types": "9.0.0-alpha.426", + "@vitest/spy": "^2.0.5", + "@wdio/globals": "^9.0.4", + "@wdio/types": "^9.0.4", "builder-util": "25.0.0-alpha.10", - "electron": "^31.3.1", + "electron": "^31.4.0", "read-package-up": "^11.0.0", "release-it": "^17.6.0", "typescript": "^5.5.4", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "files": [ "dist/*" diff --git a/packages/@wdio_electron-types/src/index.ts b/packages/@wdio_electron-types/src/index.ts index 6238c28c..6c3c6d41 100644 --- a/packages/@wdio_electron-types/src/index.ts +++ b/packages/@wdio_electron-types/src/index.ts @@ -139,10 +139,6 @@ export interface ElectronServiceAPI { * The options for the Electron Service. */ export interface ElectronServiceOptions { - /** - * The path to the electron binary of the app for testing. - */ - appBinaryPath?: string; /** * An array of string arguments to be passed through to the app on execution of the test run. * Electron [command line switches](https://www.electronjs.org/docs/latest/api/command-line-switches) @@ -150,6 +146,14 @@ export interface ElectronServiceOptions { * used here. */ appArgs?: string[]; + /** + * The path to the electron binary of the app for testing. + */ + appBinaryPath?: string; + /** + * The path to the electron entry point of the app for testing. + */ + appEntryPoint?: string; /** * Calls .mockClear() on all mocked APIs before each test. This will clear mock history, but not reset its implementation. */ diff --git a/packages/@wdio_electron-utils/package.json b/packages/@wdio_electron-utils/package.json index e7972e44..79d53baf 100644 --- a/packages/@wdio_electron-utils/package.json +++ b/packages/@wdio_electron-utils/package.json @@ -41,8 +41,8 @@ }, "dependencies": { "@electron/packager": "^18.3.2", - "@wdio/logger": "9.0.0-alpha.426", - "debug": "^4.3.4", + "@wdio/logger": "^9.0.4", + "debug": "^4.3.6", "find-versions": "^6.0.0", "read-package-up": "^11.0.0" }, diff --git a/packages/wdio-electron-service/bin/chromedriver.bat b/packages/wdio-electron-service/bin/chromedriver.bat deleted file mode 100755 index 12373391..00000000 --- a/packages/wdio-electron-service/bin/chromedriver.bat +++ /dev/null @@ -1,4 +0,0 @@ -@echo off -"%WDIO_ELECTRON_NODE_PATH%" "%WDIO_ELECTRON_CHROMEDRIVER_PATH%" %* -if ERRORLEVEL 1 exit /b 1 -exit /b 0 \ No newline at end of file diff --git a/packages/wdio-electron-service/package.json b/packages/wdio-electron-service/package.json index d750d98a..943ccb8c 100644 --- a/packages/wdio-electron-service/package.json +++ b/packages/wdio-electron-service/package.json @@ -43,7 +43,10 @@ "clean": "pnpm clean:dist && pnpm dlx shx rm -rf *.tgz ./node_modules pnpm-lock.yaml ./src/cjs/preload.ts ./src/cjs/main.ts", "clean:dist": "pnpm dlx shx rm -rf ./dist", "build": "pnpm build:esm && pnpm build:cjs", - "build:esm": "tsc --outDir dist", + "build:esm": "pnpm build:esm:compile && pnpm build:esm:bundle && pnpm build:esm:replace", + "build:esm:compile": "tsc --outDir dist", + "build:esm:bundle": "tsx ./scripts/inject-dependency.ts ./dist/mock.js ./dist/mock.bundle.js @vitest/spy spy", + "build:esm:replace": "shx rm ./dist/mock.js && shx mv ./dist/mock.bundle.js ./dist/mock.js", "build:cjs": "pnpm build:cjs:copy && pnpm build:cjs:compile", "build:cjs:copy": "cp -f ./src/preload.ts ./src/cjs/preload.ts && cp -f ./src/main.ts ./src/cjs/main.ts && cp -f ./src/constants.ts ./src/cjs/constants.ts", "build:cjs:compile": "tsc --project tsconfig.cjs.json --outDir dist/cjs", @@ -75,37 +78,38 @@ } }, "dependencies": { - "@vitest/spy": "^2.0.4", + "@vitest/spy": "^2.0.5", "@wdio/electron-types": "workspace:*", "@wdio/electron-utils": "workspace:*", - "@wdio/logger": "9.0.0-alpha.426", + "@wdio/logger": "^9.0.4", "compare-versions": "^6.1.1", - "debug": "^4.3.4", - "electron-to-chromium": "^1.5.3", + "debug": "^4.3.6", + "electron-to-chromium": "^1.5.11", "fast-copy": "^3.0.1", "read-package-up": "^11.0.0", "tinyspy": "^3.0.0" }, "devDependencies": { "@electron-forge/shared-types": "^7.4.0", + "@rollup/plugin-node-resolve": "^15.2.1", "@testing-library/webdriverio": "^3.2.1", "@types/debug": "^4.1.10", "@types/node": "^20.14.14", "@vitest/coverage-v8": "^2.0.5", - "@wdio/globals": "9.0.0-alpha.426", - "@wdio/types": "9.0.0-alpha.426", + "@wdio/globals": "^9.0.4", + "@wdio/types": "^9.0.4", "builder-util": "25.0.0-alpha.10", - "electron": "^31.3.1", + "electron": "^31.4.0", "jsdom": "^24.1.1", - "nock": "^13.3.6", + "nock": "^14.0.0-beta.9", "release-it": "^17.6.0", + "rollup": "^4.21.0", "shx": "^0.3.4", "typescript": "^5.5.4", "vitest": "^2.0.5", - "webdriverio": "9.0.0-alpha.369" + "webdriverio": "^9.0.4" }, "files": [ - "bin/*", "dist/*" ] } diff --git a/packages/wdio-electron-service/scripts/inject-dependency.ts b/packages/wdio-electron-service/scripts/inject-dependency.ts new file mode 100644 index 00000000..fd85ca39 --- /dev/null +++ b/packages/wdio-electron-service/scripts/inject-dependency.ts @@ -0,0 +1,66 @@ +import fs from 'node:fs'; +import url from 'node:url'; + +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import * as rollup from 'rollup'; + +const templatePath = process.argv[2]; +const outputPath = process.argv[3]; +const packageName = process.argv[4]; +const importName = process.argv[5]; + +async function bundlePackage(packageName: string): Promise { + // Resolve the entry point of the npm package + const entryPoint = url.fileURLToPath(import.meta.resolve(packageName)); + + // Create a Rollup bundle + const bundle = await rollup.rollup({ + input: entryPoint, + plugins: [nodeResolve()], + }); + + // Generate the bundled code + const { output } = await bundle.generate({ + format: 'esm', + name: packageName, + }); + + // Extract the bundled code as a string + const bundledCode = output[0].code; + + // Return the bundled code + return bundledCode; +} + +async function injectDependency( + templatePath: string, + outputPath: string, + packageName: string, + importName: string, +): Promise { + try { + // Read the template file + const templateContent = await fs.promises.readFile(templatePath, 'utf-8'); + + // Bundle the contents of the npm package + const bundledContents = await bundlePackage(packageName); + + // Prepare the bundled contents for injection + const injectedContents = bundledContents.replace('export', `const ${importName} =`); + + // Replace instances of the dynamic import in the template with the bundled contents + const renderedContent = templateContent.replace( + `const ${importName} = await import('${packageName}');`, + injectedContents, + ); + + // Write the rendered content to a new file + await fs.promises.writeFile(outputPath, renderedContent, 'utf-8'); + + console.log(`Successfully bundled and injected ${packageName} into ${outputPath}`); + } catch (error) { + console.error('Dependency injection failed:', error); + } +} + +await injectDependency(templatePath, outputPath, packageName, importName); diff --git a/packages/wdio-electron-service/src/launcher.ts b/packages/wdio-electron-service/src/launcher.ts index c4d8f6f3..ca77f33f 100644 --- a/packages/wdio-electron-service/src/launcher.ts +++ b/packages/wdio-electron-service/src/launcher.ts @@ -1,4 +1,5 @@ import util from 'node:util'; +import path from 'node:path'; import { readPackageUp, type NormalizedReadResult } from 'read-package-up'; import { SevereServiceError } from 'webdriverio'; @@ -50,8 +51,21 @@ export default class ElectronLaunchService implements Services.ServiceInstance { const chromiumVersion = await getChromiumVersion(electronVersion); log.info(`Found Electron v${electronVersion} with Chromedriver v${chromiumVersion}`); - let { appArgs, appBinaryPath } = Object.assign({}, this.#globalOptions, cap[CUSTOM_CAPABILITY_NAME]); - if (!appBinaryPath) { + let { + appBinaryPath, + appEntryPoint, + appArgs = [], + } = Object.assign({}, this.#globalOptions, cap[CUSTOM_CAPABILITY_NAME]); + + if (appEntryPoint) { + if (appBinaryPath) { + log.warn('Both appEntryPoint and appBinaryPath are set, appBinaryPath will be ignored'); + } + const electronBinary = process.platform === 'win32' ? 'electron.CMD' : 'electron'; + appBinaryPath = path.join(this.#projectRoot, 'node_modules', '.bin', electronBinary); + appArgs = [`--app=${appEntryPoint}`, ...appArgs]; + log.debug('App entry point: ', appEntryPoint, appBinaryPath, appArgs); + } else if (!appBinaryPath) { log.info('No app binary specified, attempting to detect one...'); try { const appBuildInfo = await getAppBuildInfo(pkg); @@ -76,6 +90,9 @@ export default class ElectronLaunchService implements Services.ServiceInstance { cap.browserName = 'chrome'; cap['goog:chromeOptions'] = getChromeOptions({ appBinaryPath, appArgs }, cap); + // disable WebDriver Bidi session + cap['wdio:enforceWebDriverClassic'] = true; + const chromedriverOptions = getChromedriverOptions(cap); if (!chromiumVersion && Object.keys(chromedriverOptions).length > 0) { cap['wdio:chromedriverOptions'] = chromedriverOptions; diff --git a/packages/wdio-electron-service/src/versions.ts b/packages/wdio-electron-service/src/versions.ts index 47a1c1b7..24f2dd36 100644 --- a/packages/wdio-electron-service/src/versions.ts +++ b/packages/wdio-electron-service/src/versions.ts @@ -26,6 +26,7 @@ export const getChromiumVersion = async (electronVersion?: string) => { } catch (e) { // fall back to the locally installed electron-to-chromium version map log.debug('Map update failed: ', e); + log.debug('Falling back to locally installed map...'); return fullVersions[electronVersion as keyof typeof fullVersions]; } }; diff --git a/packages/wdio-electron-service/test/launcher.spec.ts b/packages/wdio-electron-service/test/launcher.spec.ts index 156e5ccd..dd80435b 100644 --- a/packages/wdio-electron-service/test/launcher.spec.ts +++ b/packages/wdio-electron-service/test/launcher.spec.ts @@ -188,6 +188,7 @@ describe('onPrepare', () => { 'wdio:electronServiceOptions': { appBinaryPath: 'workspace/my-other-test-app/dist/my-other-test-app', }, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -208,6 +209,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -235,6 +237,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -262,6 +265,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -289,6 +293,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -316,6 +321,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -355,6 +361,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -385,6 +392,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -420,6 +428,38 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, + }); + }); + + it('should set the expected capabilities when setting appEntryPoint', async () => { + delete options.appBinaryPath; + options.appEntryPoint = 'path/to/main.bundle.js'; + instance = new LaunchService( + options, + [] as never, + { + services: [['electron', options]], + rootDir: getFixtureDir('no-build-tool'), + } as Options.Testrunner, + ); + const capabilities: WebdriverIO.Capabilities[] = [ + { + browserName: 'electron', + browserVersion: '26.2.2', + }, + ]; + await instance?.onPrepare({} as never, capabilities); + expect(capabilities[0]).toEqual({ + 'browserName': 'chrome', + 'browserVersion': '116.0.5845.190', + 'goog:chromeOptions': { + args: ['--app=path/to/main.bundle.js'], + binary: path.join(getFixtureDir('no-build-tool'), 'node_modules', '.bin', 'electron'), + windowTypes: ['app', 'webview'], + }, + 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -452,6 +492,7 @@ describe('onPrepare', () => { binary: '/path/to/chromedriver', }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }); }); @@ -477,6 +518,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }, }); }); @@ -526,6 +568,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }, }, chrome: { @@ -545,6 +588,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }, }, }, @@ -552,7 +596,7 @@ describe('onPrepare', () => { }); it('should set the expected capabilities when parallel multiremote', async () => { - const capabilities: Capabilities.MultiRemoteCapabilities[] = [ + const capabilities: Capabilities.RequestedMultiremoteCapabilities[] = [ { firefox: { capabilities: { @@ -601,6 +645,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }, }, }, @@ -622,6 +667,7 @@ describe('onPrepare', () => { windowTypes: ['app', 'webview'], }, 'wdio:electronServiceOptions': {}, + 'wdio:enforceWebDriverClassic': true, }, }, }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 530ff4fd..ebc9dce8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,13 +4,16 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false +overrides: + expect-webdriverio: 5.0.1 + importers: .: devDependencies: '@eslint/js': - specifier: ^9.8.0 - version: 9.8.0 + specifier: ^9.9.0 + version: 9.9.0 '@types/eslint-config-prettier': specifier: ^6.11.2 version: 6.11.3 @@ -37,10 +40,10 @@ importers: version: 9.1.0(eslint@8.57.0) eslint-plugin-vitest: specifier: ^0.5.3 - version: 0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)) + version: 0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6)) eslint-plugin-wdio: - specifier: ^8.20.0 - version: 8.37.0 + specifier: ^9.0.4 + version: 9.0.4 globals: specifier: ^15.9.0 version: 15.9.0 @@ -51,8 +54,8 @@ importers: specifier: ^24.1.1 version: 24.1.1 lint-staged: - specifier: ^15.2.8 - version: 15.2.8 + specifier: ^15.2.9 + version: 15.2.9 prettier: specifier: ^3.3.3 version: 3.3.3 @@ -66,11 +69,11 @@ importers: specifier: ^0.3.4 version: 0.3.4 tsx: - specifier: ^4.16.5 - version: 4.16.5 + specifier: ^4.17.0 + version: 4.17.0 turbo: - specifier: ^2.0.12 - version: 2.0.12 + specifier: ^2.0.14 + version: 2.0.14 apps/builder-cjs: dependencies: @@ -80,34 +83,34 @@ importers: devDependencies: '@rollup/plugin-commonjs': specifier: ^26.0.1 - version: 26.0.1(rollup@4.20.0) + version: 26.0.1(rollup@4.21.0) '@rollup/plugin-node-resolve': specifier: ^15.2.1 - version: 15.2.3(rollup@4.20.0) + version: 15.2.3(rollup@4.21.0) '@types/node': specifier: ^20.14.14 version: 20.14.14 '@wdio/cli': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/local-runner': - specifier: 9.0.0-alpha.367 - version: 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) + specifier: ^9.0.4 + version: 9.0.4 '@wdio/mocha-framework': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 cross-env: specifier: ^7.0.3 version: 7.0.3 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 electron-builder: specifier: ^25.0.1 - version: 25.0.1(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)) + version: 25.0.2(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)) global-jsdom: specifier: ^24.0.0 version: 24.0.0(jsdom@24.1.1) @@ -115,20 +118,20 @@ importers: specifier: ^24.1.1 version: 24.1.1 rollup: - specifier: ^4.20.0 - version: 4.20.0 + specifier: ^4.21.0 + version: 4.21.0 ts-loader: specifier: ^9.4.4 version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) tsx: - specifier: ^4.16.5 - version: 4.16.5 + specifier: ^4.17.0 + version: 4.17.0 typescript: specifier: ^5.5.4 version: 5.5.4 webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 apps/builder-esm: dependencies: @@ -138,37 +141,37 @@ importers: devDependencies: '@rollup/plugin-commonjs': specifier: ^26.0.1 - version: 26.0.1(rollup@4.20.0) + version: 26.0.1(rollup@4.21.0) '@rollup/plugin-json': specifier: ^6.1.0 - version: 6.1.0(rollup@4.20.0) + version: 6.1.0(rollup@4.21.0) '@rollup/plugin-node-resolve': specifier: ^15.2.1 - version: 15.2.3(rollup@4.20.0) + version: 15.2.3(rollup@4.21.0) '@types/node': specifier: ^20.14.14 version: 20.14.14 '@wdio/cli': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/local-runner': - specifier: 9.0.0-alpha.367 - version: 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) + specifier: ^9.0.4 + version: 9.0.4 '@wdio/mocha-framework': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 cross-env: specifier: ^7.0.3 version: 7.0.3 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 electron-builder: specifier: ^25.0.1 - version: 25.0.1(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)) + version: 25.0.2(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)) global-jsdom: specifier: ^24.0.0 version: 24.0.0(jsdom@24.1.1) @@ -176,20 +179,20 @@ importers: specifier: ^24.1.1 version: 24.1.1 rollup: - specifier: ^4.20.0 - version: 4.20.0 + specifier: ^4.21.0 + version: 4.21.0 ts-loader: specifier: ^9.4.4 version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) tsx: - specifier: ^4.16.5 - version: 4.16.5 + specifier: ^4.17.0 + version: 4.17.0 typescript: specifier: ^5.5.4 version: 5.5.4 webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 apps/forge-cjs: dependencies: @@ -202,31 +205,31 @@ importers: version: 7.4.0(encoding@0.1.13) '@rollup/plugin-commonjs': specifier: ^26.0.1 - version: 26.0.1(rollup@4.20.0) + version: 26.0.1(rollup@4.21.0) '@rollup/plugin-node-resolve': specifier: ^15.2.1 - version: 15.2.3(rollup@4.20.0) + version: 15.2.3(rollup@4.21.0) '@types/node': specifier: ^20.14.14 version: 20.14.14 '@wdio/cli': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/local-runner': - specifier: 9.0.0-alpha.367 - version: 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) + specifier: ^9.0.4 + version: 9.0.4 '@wdio/mocha-framework': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 cross-env: specifier: ^7.0.3 version: 7.0.3 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 global-jsdom: specifier: ^24.0.0 version: 24.0.0(jsdom@24.1.1) @@ -234,20 +237,20 @@ importers: specifier: ^24.1.1 version: 24.1.1 rollup: - specifier: ^4.20.0 - version: 4.20.0 + specifier: ^4.21.0 + version: 4.21.0 ts-loader: specifier: ^9.4.4 version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) tsx: - specifier: ^4.16.5 - version: 4.16.5 + specifier: ^4.17.0 + version: 4.17.0 typescript: specifier: ^5.5.4 version: 5.5.4 webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 apps/forge-esm: dependencies: @@ -260,31 +263,141 @@ importers: version: 7.4.0(encoding@0.1.13) '@rollup/plugin-commonjs': specifier: ^26.0.1 - version: 26.0.1(rollup@4.20.0) + version: 26.0.1(rollup@4.21.0) '@rollup/plugin-node-resolve': specifier: ^15.2.1 - version: 15.2.3(rollup@4.20.0) + version: 15.2.3(rollup@4.21.0) '@types/node': specifier: ^20.14.14 version: 20.14.14 '@wdio/cli': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/globals': + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) + '@wdio/local-runner': + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/mocha-framework': + specifier: ^9.0.4 + version: 9.0.4 + cross-env: + specifier: ^7.0.3 + version: 7.0.3 + electron: + specifier: ^31.4.0 + version: 31.4.0 + global-jsdom: + specifier: ^24.0.0 + version: 24.0.0(jsdom@24.1.1) + jsdom: + specifier: ^24.1.1 + version: 24.1.1 + rollup: + specifier: ^4.21.0 + version: 4.21.0 + ts-loader: + specifier: ^9.4.4 + version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) + tsx: + specifier: ^4.17.0 + version: 4.17.0 + typescript: + specifier: ^5.5.4 + version: 5.5.4 + webdriverio: + specifier: ^9.0.4 + version: 9.0.4 + + apps/no-binary-cjs: + dependencies: + wdio-electron-service: + specifier: workspace:* + version: link:../../packages/wdio-electron-service + devDependencies: + '@rollup/plugin-commonjs': + specifier: ^26.0.1 + version: 26.0.1(rollup@4.21.0) + '@rollup/plugin-node-resolve': + specifier: ^15.2.1 + version: 15.2.3(rollup@4.21.0) + '@types/node': + specifier: ^20.14.12 + version: 20.14.12 + '@wdio/cli': + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/globals': + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) + '@wdio/local-runner': + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/mocha-framework': + specifier: ^9.0.4 + version: 9.0.4 + cross-env: + specifier: ^7.0.3 + version: 7.0.3 + electron: + specifier: ^31.4.0 + version: 31.4.0 + global-jsdom: + specifier: ^24.0.0 + version: 24.0.0(jsdom@24.1.1) + jsdom: + specifier: ^24.1.1 + version: 24.1.1 + rollup: + specifier: ^4.21.0 + version: 4.21.0 + ts-loader: + specifier: ^9.4.4 + version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) + tsx: + specifier: ^4.17.0 + version: 4.17.0 + typescript: + specifier: ^5.5.4 + version: 5.5.4 + webdriverio: + specifier: ^9.0.4 + version: 9.0.4 + + apps/no-binary-esm: + dependencies: + wdio-electron-service: + specifier: workspace:* + version: link:../../packages/wdio-electron-service + devDependencies: + '@rollup/plugin-commonjs': + specifier: ^26.0.1 + version: 26.0.1(rollup@4.21.0) + '@rollup/plugin-node-resolve': + specifier: ^15.2.1 + version: 15.2.3(rollup@4.21.0) + '@types/node': + specifier: ^20.14.12 + version: 20.14.12 + '@wdio/cli': + specifier: ^9.0.4 + version: 9.0.4 '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/local-runner': - specifier: 9.0.0-alpha.367 - version: 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) + specifier: ^9.0.4 + version: 9.0.4 '@wdio/mocha-framework': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 cross-env: specifier: ^7.0.3 version: 7.0.3 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 global-jsdom: specifier: ^24.0.0 version: 24.0.0(jsdom@24.1.1) @@ -292,20 +405,87 @@ importers: specifier: ^24.1.1 version: 24.1.1 rollup: - specifier: ^4.20.0 - version: 4.20.0 + specifier: ^4.21.0 + version: 4.21.0 ts-loader: specifier: ^9.4.4 version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) tsx: - specifier: ^4.16.5 - version: 4.16.5 + specifier: ^4.17.0 + version: 4.17.0 typescript: specifier: ^5.5.4 version: 5.5.4 webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 + + e2e: + dependencies: + '@testing-library/webdriverio': + specifier: ^3.2.1 + version: 3.2.1(webdriverio@9.0.4) + '@wdio/cli': + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/electron-utils': + specifier: workspace:* + version: link:../packages/@wdio_electron-utils + '@wdio/globals': + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) + '@wdio/local-runner': + specifier: ^9.0.4 + version: 9.0.4 + '@wdio/mocha-framework': + specifier: ^9.0.4 + version: 9.0.4 + electron: + specifier: ^31.4.0 + version: 31.4.0 + tsx: + specifier: ^4.17.0 + version: 4.17.0 + wdio-electron-service: + specifier: workspace:* + version: link:../packages/wdio-electron-service + webdriverio: + specifier: ^9.0.4 + version: 9.0.4 + xvfb-maybe: + specifier: ^0.2.1 + version: 0.2.1 + devDependencies: + '@electron-forge/cli': + specifier: ^7.2.0 + version: 7.4.0(encoding@0.1.13) + '@types/mocha': + specifier: ^10.0.6 + version: 10.0.7 + '@types/node': + specifier: ^20.14.14 + version: 20.14.14 + '@vitest/spy': + specifier: ^2.0.5 + version: 2.0.5 + '@wdio/types': + specifier: ^9.0.4 + version: 9.0.4 + global-jsdom: + specifier: ^24.0.0 + version: 24.0.0(jsdom@24.1.1) + jsdom: + specifier: ^24.1.1 + version: 24.1.1 + read-package-up: + specifier: ^11.0.0 + version: 11.0.0 + ts-loader: + specifier: ^9.4.4 + version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) + typescript: + specifier: ^5.5.4 + version: 5.5.4 packages/@wdio_electron-types: devDependencies: @@ -316,20 +496,20 @@ importers: specifier: ^18.3.2 version: 18.3.3 '@vitest/spy': - specifier: ^2.0.4 - version: 2.0.4 + specifier: ^2.0.5 + version: 2.0.5 '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/types': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 builder-util: specifier: 25.0.0-alpha.10 version: 25.0.0-alpha.10 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 read-package-up: specifier: ^11.0.0 version: 11.0.0 @@ -340,8 +520,8 @@ importers: specifier: ^5.5.4 version: 5.5.4 webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 packages/@wdio_electron-utils: dependencies: @@ -349,11 +529,11 @@ importers: specifier: ^18.3.2 version: 18.3.3 '@wdio/logger': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 debug: - specifier: ^4.3.4 - version: 4.3.5 + specifier: ^4.3.6 + version: 4.3.6(supports-color@8.1.1) find-versions: specifier: ^6.0.0 version: 6.0.0 @@ -369,7 +549,7 @@ importers: version: 20.14.14 '@vitest/coverage-v8': specifier: ^2.0.5 - version: 2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3)) + version: 2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6)) '@wdio/electron-types': specifier: workspace:* version: link:../@wdio_electron-types @@ -387,80 +567,13 @@ importers: version: 5.5.4 vitest: specifier: ^2.0.5 - version: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3) - - packages/e2e: - dependencies: - '@testing-library/webdriverio': - specifier: ^3.2.1 - version: 3.2.1(webdriverio@9.0.0-alpha.369) - '@wdio/cli': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 - '@wdio/electron-utils': - specifier: workspace:* - version: link:../@wdio_electron-utils - '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) - '@wdio/local-runner': - specifier: 9.0.0-alpha.367 - version: 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) - '@wdio/mocha-framework': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 - electron: - specifier: ^31.3.1 - version: 31.3.1 - tsx: - specifier: ^4.16.5 - version: 4.16.5 - wdio-electron-service: - specifier: workspace:* - version: link:../wdio-electron-service - webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 - xvfb-maybe: - specifier: ^0.2.1 - version: 0.2.1 - devDependencies: - '@electron-forge/cli': - specifier: ^7.2.0 - version: 7.4.0(encoding@0.1.13) - '@types/mocha': - specifier: ^10.0.6 - version: 10.0.7 - '@types/node': - specifier: ^20.14.14 - version: 20.14.14 - '@vitest/spy': - specifier: ^2.0.4 - version: 2.0.4 - '@wdio/types': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 - global-jsdom: - specifier: ^24.0.0 - version: 24.0.0(jsdom@24.1.1) - jsdom: - specifier: ^24.1.1 - version: 24.1.1 - read-package-up: - specifier: ^11.0.0 - version: 11.0.0 - ts-loader: - specifier: ^9.4.4 - version: 9.5.1(typescript@5.5.4)(webpack@5.93.0) - typescript: - specifier: ^5.5.4 - version: 5.5.4 + version: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6) packages/wdio-electron-service: dependencies: '@vitest/spy': - specifier: ^2.0.4 - version: 2.0.4 + specifier: ^2.0.5 + version: 2.0.5 '@wdio/electron-types': specifier: workspace:* version: link:../@wdio_electron-types @@ -468,17 +581,17 @@ importers: specifier: workspace:* version: link:../@wdio_electron-utils '@wdio/logger': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 compare-versions: specifier: ^6.1.1 version: 6.1.1 debug: - specifier: ^4.3.4 - version: 4.3.5 + specifier: ^4.3.6 + version: 4.3.6(supports-color@8.1.1) electron-to-chromium: - specifier: ^1.5.3 - version: 1.5.3 + specifier: ^1.5.11 + version: 1.5.11 fast-copy: specifier: ^3.0.1 version: 3.0.2 @@ -492,9 +605,12 @@ importers: '@electron-forge/shared-types': specifier: ^7.4.0 version: 7.4.0 + '@rollup/plugin-node-resolve': + specifier: ^15.2.1 + version: 15.2.3(rollup@4.21.0) '@testing-library/webdriverio': specifier: ^3.2.1 - version: 3.2.1(webdriverio@9.0.0-alpha.369) + version: 3.2.1(webdriverio@9.0.4) '@types/debug': specifier: ^4.1.10 version: 4.1.12 @@ -503,28 +619,31 @@ importers: version: 20.14.14 '@vitest/coverage-v8': specifier: ^2.0.5 - version: 2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3)) + version: 2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6)) '@wdio/globals': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) + specifier: ^9.0.4 + version: 9.0.4(@wdio/logger@9.0.4) '@wdio/types': - specifier: 9.0.0-alpha.426 - version: 9.0.0-alpha.426 + specifier: ^9.0.4 + version: 9.0.4 builder-util: specifier: 25.0.0-alpha.10 version: 25.0.0-alpha.10 electron: - specifier: ^31.3.1 - version: 31.3.1 + specifier: ^31.4.0 + version: 31.4.0 jsdom: specifier: ^24.1.1 version: 24.1.1 nock: - specifier: ^13.3.6 - version: 13.5.4 + specifier: ^14.0.0-beta.9 + version: 14.0.0-beta.9 release-it: specifier: ^17.6.0 version: 17.6.0(typescript@5.5.4) + rollup: + specifier: ^4.21.0 + version: 4.21.0 shx: specifier: ^0.3.4 version: 0.3.4 @@ -533,10 +652,10 @@ importers: version: 5.5.4 vitest: specifier: ^2.0.5 - version: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3) + version: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6) webdriverio: - specifier: 9.0.0-alpha.369 - version: 9.0.0-alpha.369 + specifier: ^9.0.4 + version: 9.0.4 packages: @@ -563,17 +682,17 @@ packages: resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.24.8': - resolution: {integrity: sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==} + '@babel/parser@7.25.3': + resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/runtime@7.24.7': - resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} + '@babel/runtime@7.24.8': + resolution: {integrity: sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==} engines: {node: '>=6.9.0'} - '@babel/types@7.24.9': - resolution: {integrity: sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==} + '@babel/types@7.25.2': + resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@0.2.3': @@ -645,8 +764,8 @@ packages: resolution: {integrity: sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==} engines: {node: '>=12'} - '@electron/get@3.0.0': - resolution: {integrity: sha512-hLv4BYFiyrNRI+U0Mm2X7RxCCdJLkDUn8GCEp9QJzbLpZRko+UaLlCjOMkj6TEtirNLPyBA7y1SeGfnpOB21aQ==} + '@electron/get@3.1.0': + resolution: {integrity: sha512-F+nKc0xW+kVbBRhFzaMgPy3KwmuNTYX1fx6+FxxoSnNgwYX6LD7AKBTWkU0MQ6IBoe7dz069CNkR673sPAgkCQ==} engines: {node: '>=14'} '@electron/notarize@2.3.2': @@ -672,8 +791,8 @@ packages: resolution: {integrity: sha512-fKpv9kg4SPmt+hY7SVBnIYULE9QJl8L3sCfcBsnqbJwwBwAeTLokJ9TRt9y7bK0JAzIW2y78TVVjvnQEms/yyA==} engines: {node: '>=16.4'} - '@electron/windows-sign@1.1.2': - resolution: {integrity: sha512-eXEiZjDtxW3QORCWfRUarANPRTlH9B6At4jqBZJ0NzokSGutXQUVLPA6WmGpIhDW6w2yCMdHW1EJd1HrXtU5sg==} + '@electron/windows-sign@1.1.3': + resolution: {integrity: sha512-OqVSdAe+/88fIjvTDWiy+5Ho1nXsiBhE5RTsIQ6M/zcxcDAEP2TlQCkOyusItnmzXRN+XTFaK9gKhiZ6KGyXQw==} engines: {node: '>=14.14'} hasBin: true @@ -683,148 +802,288 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.23.0': + resolution: {integrity: sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.23.0': + resolution: {integrity: sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.23.0': + resolution: {integrity: sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.23.0': + resolution: {integrity: sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.23.0': + resolution: {integrity: sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.23.0': + resolution: {integrity: sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.23.0': + resolution: {integrity: sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.23.0': + resolution: {integrity: sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.23.0': + resolution: {integrity: sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.23.0': + resolution: {integrity: sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.23.0': + resolution: {integrity: sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.23.0': + resolution: {integrity: sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.23.0': + resolution: {integrity: sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.23.0': + resolution: {integrity: sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.23.0': + resolution: {integrity: sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.23.0': + resolution: {integrity: sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.23.0': + resolution: {integrity: sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.23.0': + resolution: {integrity: sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.23.0': + resolution: {integrity: sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.23.0': + resolution: {integrity: sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.23.0': + resolution: {integrity: sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.23.0': + resolution: {integrity: sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.23.0': + resolution: {integrity: sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.23.0': + resolution: {integrity: sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.10.1': - resolution: {integrity: sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint-community/regexpp@4.11.0': resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} @@ -837,8 +1096,8 @@ packages: resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@eslint/js@9.8.0': - resolution: {integrity: sha512-MfluB7EUfxXtv3i/++oh89uzAr4PDI4nn201hsp+qaXqsjAWzinlZEHEfPgAX4doIlKvPG/i0A9dpKxOLII8yA==} + '@eslint/js@9.9.0': + resolution: {integrity: sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@gar/promisify@1.1.3': @@ -860,8 +1119,60 @@ packages: '@iarna/toml@2.2.5': resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} - '@inquirer/figures@1.0.3': - resolution: {integrity: sha512-ErXXzENMH5pJt5/ssXV0DfWUZqly8nGzf0UcBV9xTnP+KyffE2mqyxIMBrZ8ijQck2nU0TQm40EQB53YreyWHw==} + '@inquirer/checkbox@2.4.7': + resolution: {integrity: sha512-5YwCySyV1UEgqzz34gNsC38eKxRBtlRDpJLlKcRtTjlYA/yDKuc1rfw+hjw+2WJxbAZtaDPsRl5Zk7J14SBoBw==} + engines: {node: '>=18'} + + '@inquirer/confirm@3.1.22': + resolution: {integrity: sha512-gsAKIOWBm2Q87CDfs9fEo7wJT3fwWIJfnDGMn9Qy74gBnNFOACDNfhUzovubbJjWnKLGBln7/NcSmZwj5DuEXg==} + engines: {node: '>=18'} + + '@inquirer/core@9.0.10': + resolution: {integrity: sha512-TdESOKSVwf6+YWDz8GhS6nKscwzkIyakEzCLJ5Vh6O3Co2ClhCJ0A4MG909MUWfaWdpJm7DE45ii51/2Kat9tA==} + engines: {node: '>=18'} + + '@inquirer/editor@2.1.22': + resolution: {integrity: sha512-K1QwTu7GCK+nKOVRBp5HY9jt3DXOfPGPr6WRDrPImkcJRelG9UTx2cAtK1liXmibRrzJlTWOwqgWT3k2XnS62w==} + engines: {node: '>=18'} + + '@inquirer/expand@2.1.22': + resolution: {integrity: sha512-wTZOBkzH+ItPuZ3ZPa9lynBsdMp6kQ9zbjVPYEtSBG7UulGjg2kQiAnUjgyG4SlntpTce5bOmXAPvE4sguXjpA==} + engines: {node: '>=18'} + + '@inquirer/figures@1.0.5': + resolution: {integrity: sha512-79hP/VWdZ2UVc9bFGJnoQ/lQMpL74mGgzSYX1xUqCVk7/v73vJCMw1VuyWN1jGkZ9B3z7THAbySqGbCNefcjfA==} + engines: {node: '>=18'} + + '@inquirer/input@2.2.9': + resolution: {integrity: sha512-7Z6N+uzkWM7+xsE+3rJdhdG/+mQgejOVqspoW+w0AbSZnL6nq5tGMEVASaYVWbkoSzecABWwmludO2evU3d31g==} + engines: {node: '>=18'} + + '@inquirer/number@1.0.10': + resolution: {integrity: sha512-kWTxRF8zHjQOn2TJs+XttLioBih6bdc5CcosXIzZsrTY383PXI35DuhIllZKu7CdXFi2rz2BWPN9l0dPsvrQOA==} + engines: {node: '>=18'} + + '@inquirer/password@2.1.22': + resolution: {integrity: sha512-5Fxt1L9vh3rAKqjYwqsjU4DZsEvY/2Gll+QkqR4yEpy6wvzLxdSgFhUcxfDAOtO4BEoTreWoznC0phagwLU5Kw==} + engines: {node: '>=18'} + + '@inquirer/prompts@5.3.8': + resolution: {integrity: sha512-b2BudQY/Si4Y2a0PdZZL6BeJtl8llgeZa7U2j47aaJSCeAl1e4UI7y8a9bSkO3o/ZbZrgT5muy/34JbsjfIWxA==} + engines: {node: '>=18'} + + '@inquirer/rawlist@2.2.4': + resolution: {integrity: sha512-pb6w9pWrm7EfnYDgQObOurh2d2YH07+eDo3xQBsNAM2GRhliz6wFXGi1thKQ4bN6B0xDd6C3tBsjdr3obsCl3Q==} + engines: {node: '>=18'} + + '@inquirer/search@1.0.7': + resolution: {integrity: sha512-p1wpV+3gd1eST/o5N3yQpYEdFNCzSP0Klrl+5bfD3cTTz8BGG6nf4Z07aBW0xjlKIj1Rp0y3x/X4cZYi6TfcLw==} + engines: {node: '>=18'} + + '@inquirer/select@2.4.7': + resolution: {integrity: sha512-JH7XqPEkBpNWp3gPCqWqY8ECbyMoFcCZANlL6pV9hf59qK6dGmkOlx1ydyhY+KZ0c5X74+W6Mtp+nm2QX0/MAQ==} + engines: {node: '>=18'} + + '@inquirer/type@1.5.2': + resolution: {integrity: sha512-w9qFkumYDCNyDZmNQjf/n6qQuvQ4dMC3BJesY4oF+yr0CxR5vxujflAVeIcS6U336uzi9GM0kAfZlLrZ9UTkpA==} engines: {node: '>=18'} '@isaacs/cliui@8.0.2': @@ -913,6 +1224,10 @@ packages: resolution: {integrity: sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==} engines: {node: '>= 10.0.0'} + '@mswjs/interceptors@0.33.2': + resolution: {integrity: sha512-uDB/51Sraq4lxT73Z1LXL75lE7rO4313zJEcvMFusMouqy/RrAXkToMhurbfl9CUHYMn77icAqCzhQYDBD34PQ==} + engines: {node: '>=18'} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -986,6 +1301,15 @@ packages: '@octokit/types@13.5.0': resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==} + '@open-draft/deferred-promise@2.2.0': + resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} + + '@open-draft/logger@0.3.0': + resolution: {integrity: sha512-X2g45fzhxH238HKO4xbSr7+wBS8Fvw6ixhTDuvLd5mqh6bJJCFAPwU9mPDxbcrRtfxv4u5IHCEH77BmxvXmmxQ==} + + '@open-draft/until@2.1.0': + resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} + '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -1002,26 +1326,11 @@ packages: resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} engines: {node: '>=12'} - '@promptbook/utils@0.57.0': - resolution: {integrity: sha512-+6JCuNlUYWgCjwOaPnTaw7o8HyMwaLN23UinZcSMPxeKfdsEeM8xpbHn8g6AOf3nUG50Yk5O6GGK7z/9AxsX4g==} - - '@puppeteer/browsers@1.4.6': - resolution: {integrity: sha512-x4BEjr2SjOPowNeiguzjozQbsc6h437ovD/wu+JpaenxVLm3jkgzHY2xOslMTp50HoTvQreMjiexiGQw1sqZlQ==} - engines: {node: '>=16.3.0'} - hasBin: true - peerDependencies: - typescript: '>= 4.7.4' - peerDependenciesMeta: - typescript: - optional: true - - '@puppeteer/browsers@1.9.1': - resolution: {integrity: sha512-PuvK6xZzGhKPvlx3fpfdM2kYY3P/hB1URtK8wA7XUJ6prn6pp22zvJHu48th0SGcHL9SutbPHrFuQgfXTFobWA==} - engines: {node: '>=16.3.0'} - hasBin: true + '@promptbook/utils@0.63.4': + resolution: {integrity: sha512-ME3I9Twxu/d7hpnGTkNYMUyIY8IAwY5Mg86i4xpD1WSZKfYMTNQomvkyk2Fi33vZDu8NDwb6Quyd0zJ0T3xo9w==} - '@puppeteer/browsers@2.2.3': - resolution: {integrity: sha512-bJ0UBsk0ESOs6RFcLXOt99a3yTDcOKlzfjad+rhFwdaG1Lu/Wzq58GHYCDTlZ9z6mldf4g+NTb+TXEfe0PpnsQ==} + '@puppeteer/browsers@2.3.1': + resolution: {integrity: sha512-uK7o3hHkK+naEobMSJ+2ySYyXtQkBxIH8Gn4MK9ciePjNV+Pf+PgY/W7iPzn2MTjl3stcYB5AlcTmPYw7AXDwA==} engines: {node: '>=18'} hasBin: true @@ -1061,83 +1370,83 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.20.0': - resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==} + '@rollup/rollup-android-arm-eabi@4.21.0': + resolution: {integrity: sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.20.0': - resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==} + '@rollup/rollup-android-arm64@4.21.0': + resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.20.0': - resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==} + '@rollup/rollup-darwin-arm64@4.21.0': + resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.20.0': - resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==} + '@rollup/rollup-darwin-x64@4.21.0': + resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} cpu: [x64] os: [darwin] - '@rollup/rollup-linux-arm-gnueabihf@4.20.0': - resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==} + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': + resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.20.0': - resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==} + '@rollup/rollup-linux-arm-musleabihf@4.21.0': + resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.20.0': - resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==} + '@rollup/rollup-linux-arm64-gnu@4.21.0': + resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.20.0': - resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==} + '@rollup/rollup-linux-arm64-musl@4.21.0': + resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': - resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': + resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.20.0': - resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==} + '@rollup/rollup-linux-riscv64-gnu@4.21.0': + resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.20.0': - resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==} + '@rollup/rollup-linux-s390x-gnu@4.21.0': + resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.20.0': - resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==} + '@rollup/rollup-linux-x64-gnu@4.21.0': + resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.20.0': - resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==} + '@rollup/rollup-linux-x64-musl@4.21.0': + resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.20.0': - resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==} + '@rollup/rollup-win32-arm64-msvc@4.21.0': + resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.20.0': - resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==} + '@rollup/rollup-win32-ia32-msvc@4.21.0': + resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.20.0': - resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==} + '@rollup/rollup-win32-x64-msvc@4.21.0': + resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} cpu: [x64] os: [win32] @@ -1241,9 +1550,21 @@ packages: '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + '@types/mute-stream@0.0.4': + resolution: {integrity: sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==} + + '@types/node@20.14.12': + resolution: {integrity: sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ==} + '@types/node@20.14.14': resolution: {integrity: sha512-d64f00982fS9YoOgJkAMolK7MN8Iq3TDdVjchbYHdEmjth/DHowx82GnoA+tVUAN+7vxfYUgAzi+JXbKNd2SDQ==} + '@types/node@20.16.1': + resolution: {integrity: sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==} + + '@types/node@22.4.1': + resolution: {integrity: sha512-1tbpb9325+gPnKK0dMm+/LMriX0vKxf6RnB0SZUqfyVkQ4fMgUSySqhxE/y8Jvs4NyF1yHzTfG9KlnkIODxPKg==} + '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -1271,14 +1592,17 @@ packages: '@types/which@2.0.2': resolution: {integrity: sha512-113D3mDkZDjo+EeUEHCFy0qniNc1ZpecGiAU7WSo7YDoSzolZIQKpYFHrPpjkB2nuyahcKfrmLXeQlh7gqJYdw==} - '@types/ws@8.5.10': - resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==} + '@types/wrap-ansi@3.0.0': + resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} + + '@types/ws@8.5.12': + resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} - '@types/yargs@17.0.32': - resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} + '@types/yargs@17.0.33': + resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} @@ -1304,8 +1628,8 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@7.13.1': - resolution: {integrity: sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==} + '@typescript-eslint/scope-manager@7.17.0': + resolution: {integrity: sha512-0P2jTTqyxWp9HiKLu/Vemr2Rg1Xb5B7uHItdVZ6iAenXmPo4SZ86yOPCJwMqpCyaMiEHTNqizHfsbmCFT1x9SA==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/scope-manager@7.18.0': @@ -1322,16 +1646,16 @@ packages: typescript: optional: true - '@typescript-eslint/types@7.13.1': - resolution: {integrity: sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==} + '@typescript-eslint/types@7.17.0': + resolution: {integrity: sha512-a29Ir0EbyKTKHnZWbNsrc/gqfIBqYPwj3F2M+jWE/9bqfEHg0AMtXzkbUkOG6QgEScxh2+Pz9OXe11jHDnHR7A==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/types@7.18.0': resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/typescript-estree@7.13.1': - resolution: {integrity: sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==} + '@typescript-eslint/typescript-estree@7.17.0': + resolution: {integrity: sha512-72I3TGq93t2GoSBWI093wmKo0n6/b7O4j9o8U+f65TVD0FS6bI2180X5eGEr8MA8PhKMvYe9myZJquUT2JkCZw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: typescript: '*' @@ -1348,8 +1672,8 @@ packages: typescript: optional: true - '@typescript-eslint/utils@7.13.1': - resolution: {integrity: sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==} + '@typescript-eslint/utils@7.17.0': + resolution: {integrity: sha512-r+JFlm5NdB+JXc7aWWZ3fKSm1gn0pkswEwIYsrGPdsT2GjsRATAKXiNtp3vgAAO1xZhX8alIOEQnNMl3kbTgJw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -1360,8 +1684,8 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/visitor-keys@7.13.1': - resolution: {integrity: sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==} + '@typescript-eslint/visitor-keys@7.17.0': + resolution: {integrity: sha512-RVGC9UhPOCsfCdI9pU++K4nD7to+jTcMIbXTSOcrLqUEW6gF2pU1UUbYJKc9cvcRSK1UDeMJ7pdMxf4bhMpV/A==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/visitor-keys@7.18.0': @@ -1386,139 +1710,63 @@ packages: resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} '@vitest/snapshot@1.6.0': - resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} - - '@vitest/snapshot@2.0.5': - resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} - - '@vitest/spy@2.0.4': - resolution: {integrity: sha512-uTXU56TNoYrTohb+6CseP8IqNwlNdtPwEO0AWl+5j7NelS6x0xZZtP0bDWaLvOfUbaYwhhWp1guzXUxkC7mW7Q==} - - '@vitest/spy@2.0.5': - resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} - - '@vitest/utils@2.0.5': - resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} - - '@wdio/cli@9.0.0-alpha.426': - resolution: {integrity: sha512-KMoCgAIPYmkEU8wI2cfrgWyL1A8AkVw0DDRvMnGevgifMEVJPGhKIjrE/Ol3V8fZNgJ69oQ+nkCUq5y57xz5bw==} - engines: {node: '>=18'} - hasBin: true - - '@wdio/config@8.39.0': - resolution: {integrity: sha512-yNuGPMPibY91s936gnJCHWlStvIyDrwLwGfLC/NCdTin4F7HL4Gp5iJnHWkJFty1/DfFi8jjoIUBNLM8HEez+A==} - engines: {node: ^16.13 || >=18} - - '@wdio/config@9.0.0-alpha.367': - resolution: {integrity: sha512-jSLf5hQ+yw5y5W62LQq6qK1ZCUXW1YXwR1iOA+wboyIZqgms1sHDxPGDiODDY3a7fR9/5xWSZrETtd7z+QMncw==} - engines: {node: '>=18'} - - '@wdio/config@9.0.0-alpha.369': - resolution: {integrity: sha512-YsdVoFSrOr02x9ZCUNv1h3bowfi1TB17idbFtP5AADbhxzm3P7ynFunfyABRhBzk7QI3mJ86EvoktJvfsiZE1w==} - engines: {node: '>=18'} - - '@wdio/config@9.0.0-alpha.426': - resolution: {integrity: sha512-3IuujBvc6f9SrNrMcLayxtxyCBK8uEJGsj9qDhiavWIeP/R4Y7Mm4Wi0GXDba3V2SFUgA1TbUbZ+3HOaII6vBQ==} - engines: {node: '>=18'} - - '@wdio/globals@8.39.1': - resolution: {integrity: sha512-kNb1TlxI8Le/tsOiw7CMQcG0+ZGyxk9ZDO/PQLxkJvjo/q2QmiBcgaNMPuf+j1ABETcQK4bI7QtiT5uZ+f2AGA==} - engines: {node: ^16.13 || >=18} - - '@wdio/globals@9.0.0-alpha.367': - resolution: {integrity: sha512-KlaEBOYu5mW3cZe4jDDCRQLrbfk+t7Bz/2tjS90goeJgr/DFNWnCNpYdYMAbq1nrcMgnYp1iTizzMUupoY9Fww==} - engines: {node: '>=18'} - - '@wdio/globals@9.0.0-alpha.426': - resolution: {integrity: sha512-Gb3tZRP6vPU8WY6hxAOKQOpj3IkCrmNSRC+jDS6goqTd5A8xE4NGjerY6uBJLo7QcCiOI6JechlfUGpcNZIE9A==} - engines: {node: '>=18'} - - '@wdio/local-runner@9.0.0-alpha.367': - resolution: {integrity: sha512-M/eEUUUG4UOoecAwMy25RgsODaGQWH+mQpeXyTbkfFCkap/t+gaT+dIcPLX22vdeiN+1ZDbNs51PdA3ivWmUWQ==} - engines: {node: '>=18'} - - '@wdio/logger@8.38.0': - resolution: {integrity: sha512-kcHL86RmNbcQP+Gq/vQUGlArfU6IIcbbnNp32rRIraitomZow+iEoc519rdQmSVusDozMS5DZthkgDdxK+vz6Q==} - engines: {node: ^16.13 || >=18} - - '@wdio/logger@9.0.0-alpha.367': - resolution: {integrity: sha512-XkQ0qz5BNgkLHS4b1bLr8FHtZ+uiCt/KvnclZm4blCx2NmoXkKPDufEVV5jSTcwfGjdUb6ukBBBTnuwBp3jHRw==} - engines: {node: '>=18'} - - '@wdio/logger@9.0.0-alpha.369': - resolution: {integrity: sha512-6+CfJY6B2Rl/g/8hXEaCq7mj3FroC2acW/BhFcZG3N4e4q60Dbz0NO/toyD97lfiA+AqjaCY5gYzpI66M4meVA==} - engines: {node: '>=18'} - - '@wdio/logger@9.0.0-alpha.426': - resolution: {integrity: sha512-gliABH2GwqEFzyYr/S1bfV/1ZGj+GhT8RGgAWgWsY05oVafjPeXv3wwswbMogZqErTI/etONsgFKTch3oNyFrQ==} - engines: {node: '>=18'} - - '@wdio/mocha-framework@9.0.0-alpha.426': - resolution: {integrity: sha512-Gt5HjrB0lRII2VMpKGS+vFDKzB+OhM9pBK7PD50VXyJuC452MjjgJMCE78bYUZAEyEC7p6uQpSERF4WQwF5Fkw==} - engines: {node: '>=18'} - - '@wdio/protocols@8.38.0': - resolution: {integrity: sha512-7BPi7aXwUtnXZPeWJRmnCNFjyDvGrXlBmN9D4Pi58nILkyjVRQKEY9/qv/pcdyB0cvmIvw++Kl/1Lg+RxG++UA==} - - '@wdio/protocols@9.0.0-alpha.367': - resolution: {integrity: sha512-3nT2UhX2ZTRryug2N8hjy80c/qj+zhfvORFqoHsGezL30jEvd51mBVo4LdM5tAsQkCrxsd/wthi8k0Kps1AWGg==} + resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} - '@wdio/protocols@9.0.0-alpha.369': - resolution: {integrity: sha512-V53FAfGHgK3GR2KzQAxHm7DQgx2oZ4VXrAY3SGNoBMwWn3K//925PepeE3p791FyjlszEs1wkuOCfBN25DcLgA==} + '@vitest/snapshot@2.0.5': + resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} - '@wdio/protocols@9.0.0-alpha.426': - resolution: {integrity: sha512-1s7jVYW0CluTYLitY+0fWFXNkUi9D0s7RsnTEHOwE4JKf+3OkUwtryr+F3gOKW4sW8RFRS5rnP62ivyOuXVJmA==} + '@vitest/spy@2.0.5': + resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} - '@wdio/repl@8.24.12': - resolution: {integrity: sha512-321F3sWafnlw93uRTSjEBVuvWCxTkWNDs7ektQS15drrroL3TMeFOynu4rDrIz0jXD9Vas0HCD2Tq/P0uxFLdw==} - engines: {node: ^16.13 || >=18} + '@vitest/utils@2.0.5': + resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} - '@wdio/repl@9.0.0-alpha.367': - resolution: {integrity: sha512-jBa6vOwRe4YPUAEoJCsPEm+Gg70uRf0T+BLi4vCQe4li/ueYyGH2WMssvruAbKl1j+2ZTtCZjF0xFVTjWIRjwA==} + '@wdio/cli@9.0.4': + resolution: {integrity: sha512-Vr2lio4/MLQvLImEqgaGZM5N1dqUhlykZWpfTdV5XDTnQmpbuo8uqgamW2nqdB3uThal2FB5bgWLKrBKrIwh6A==} engines: {node: '>=18'} + hasBin: true - '@wdio/repl@9.0.0-alpha.369': - resolution: {integrity: sha512-UxhDi8IvxyU9a8+AwuH5d3f0O12zBKmB0t86sdk/vdryD8UE2PeOEHZbih/ujQ+bQ+Ot4XAskryXS/NPRCD0Cw==} + '@wdio/config@9.0.4': + resolution: {integrity: sha512-uykgVBy8X/SgrExgS9NMxC5TnxkktrlHdzhDt0stgeONPj21oSkBfUu9bxyxEvVfzfL43wppatpCBmdsUuHbvA==} engines: {node: '>=18'} - '@wdio/repl@9.0.0-alpha.426': - resolution: {integrity: sha512-9KT3kU9ifk/Vk7qoEStVFEyZ5eEeaH6pLXoaEpBpAYCcowYTpcjL4qw19z052vHkbkjOAkytxFen6sHudQTxxg==} + '@wdio/globals@9.0.4': + resolution: {integrity: sha512-3gKSaDXc7eSyNsQWlHbm/tbPhwW/3Sv7GZuCuH0YWI/8A0GD3zVvY9MOABClTHm06wGl0NojLwKhQpmcOzj6qw==} engines: {node: '>=18'} - '@wdio/runner@9.0.0-alpha.367': - resolution: {integrity: sha512-+g80GwW17IVaWBLaGphA8WnqHSrSmggh3D8EKBp8B0MZHmie3LqfQYgH4/WjnMNI7gowZOoYCXH9iCrwfDmnLA==} + '@wdio/local-runner@9.0.4': + resolution: {integrity: sha512-7YMOldCkbOzD3BjZRbuNMi6QX+ksivTbw0njlPsH9EG6Jm//Nmj0h7+vEIQh6wUOPKquMRk1uPq3ibvbBfgshA==} engines: {node: '>=18'} - '@wdio/types@8.39.0': - resolution: {integrity: sha512-86lcYROTapOJuFd9ouomFDfzDnv3Kn+jE0RmqfvN9frZAeLVJ5IKjX9M6HjplsyTZhjGO1uCaehmzx+HJus33Q==} + '@wdio/logger@8.38.0': + resolution: {integrity: sha512-kcHL86RmNbcQP+Gq/vQUGlArfU6IIcbbnNp32rRIraitomZow+iEoc519rdQmSVusDozMS5DZthkgDdxK+vz6Q==} engines: {node: ^16.13 || >=18} - '@wdio/types@9.0.0-alpha.367': - resolution: {integrity: sha512-1jIcJFujVdcCouHFPqkIZRxWuc6uPqTJtyCxRIipsr5qSEmQcGG2AWsOINsKTA8LmvjhJwf0MZ79lqAz2QDQOg==} + '@wdio/logger@9.0.4': + resolution: {integrity: sha512-b6gcu0PTVb3fgK4kyAH/k5UUWN5FOUdAfhA4PAY/IZvxZTMFYMqnrZb0WRWWWqL6nu9pcrOVtCOdPBvj0cb+Nw==} engines: {node: '>=18'} - '@wdio/types@9.0.0-alpha.369': - resolution: {integrity: sha512-08RBGMVEfaTqiwATPnLZoxdvNo6U8bhue6myvrZjEHPMdml0ajddmAi65g26GjmIymXFVKWIPW61XJEC4XJuPw==} + '@wdio/mocha-framework@9.0.4': + resolution: {integrity: sha512-fXTCuxJ7xeFqRxQZhpYAhYuZ6sNnOoRj8Ip0shaO2SDx8tTabarxTDkEAFipnKZX5uraVDH/nxBcrKCRoTLk3w==} engines: {node: '>=18'} - '@wdio/types@9.0.0-alpha.426': - resolution: {integrity: sha512-Zb9tJT5GjZp2DJNtvqvClmXcCxrBf/GicLdBzXyLGqQLfQZAfBnEkMLiOCLIRHIqWhSyHoHtXSks4fwwZODCtg==} - engines: {node: '>=18'} + '@wdio/protocols@9.0.4': + resolution: {integrity: sha512-T9v8Jkp94NxLLil5J7uJ/+YHk5/7fhOggzGcN+LvuCHS6jbJFZ/11c4SUEuXw27Yqk01fFXPBbF6TwcTTOuW/Q==} - '@wdio/utils@8.39.0': - resolution: {integrity: sha512-jY+n6jlGeK+9Tx8T659PKLwMQTGpLW5H78CSEWgZLbjbVSr2LfGR8Lx0CRktNXxAtqEVZPj16Pi74OtAhvhE6Q==} - engines: {node: ^16.13 || >=18} + '@wdio/repl@9.0.4': + resolution: {integrity: sha512-5Bc5ARjWA7t6MZNnVJ9WvO1iDsy6iOsrSDWiP7APWAdaF/SJCP3SFE2c+PdQJpJWhr2Kk0fRGuyDM+GdsmZhwg==} + engines: {node: '>=18'} - '@wdio/utils@9.0.0-alpha.367': - resolution: {integrity: sha512-Z4F7kQPnjRVfOrjuhalA5vMoW+OnfN3Vvun74oSNT2rbJge/0aRAYUTZvHE38zcs7NLu4aTceO6TtQ1EzhKx7Q==} + '@wdio/runner@9.0.4': + resolution: {integrity: sha512-YQUTtUxHZ6cCUl8WmtSAJOvjtv0WOV/NSUi8Tcv+MQ5NgL/hwGvA30qIcncQ698Y6B7IBnGynKdUYQwbRgrpsQ==} engines: {node: '>=18'} - '@wdio/utils@9.0.0-alpha.369': - resolution: {integrity: sha512-1FwvNzSrTbEHt+fw0naWP6ixp2Zgkr939UxwfWibDAHPccHh8PngaGMf2+ZXxyvpGYVTXEqKQIUq7Hm8S/5/Ug==} + '@wdio/types@9.0.4': + resolution: {integrity: sha512-MN7O4Uk3zPWvkN8d6SNdIjd7qHUlTxS7j0QfRPu6TdlYbHu6BJJ8Rr84y7GcUzCnTAJ1nOIpvUyR8MY3hOaVKg==} engines: {node: '>=18'} - '@wdio/utils@9.0.0-alpha.426': - resolution: {integrity: sha512-af39YN+68cFmTAvki9Pqr1rHwKNXDrSLwKu4QpL0sRZ1ir8ueN+wnX/FQeQN2P/bx8Yxq2r754mLYZk4aNOAeA==} + '@wdio/utils@9.0.4': + resolution: {integrity: sha512-P0s3lwYxoJKOZ0X199nDCsqoiz07nB1uw3HxFEiDm0RC713C6FQnU6ZI8zJCY1jhZGN4TJ3v17vrp/OKkCU+Ag==} engines: {node: '>=18'} '@webassemblyjs/ast@1.12.1': @@ -1576,10 +1824,6 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - '@zip.js/zip.js@2.7.45': - resolution: {integrity: sha512-Mm2EXF33DJQ/3GWWEWeP1UCqzpQ5+fiMvT3QWspsXY05DyqqxWu7a9awSzU4/spHMHVFrTjani1PR0vprgZpow==} - engines: {bun: '>=0.7.0', deno: '>=1.0.0', node: '>=16.5.0'} - '@zip.js/zip.js@2.7.48': resolution: {integrity: sha512-J7cliimZ2snAbr0IhLx2U8BwfA1pKucahKzTpFtYq4hEgKxwvFJcIjCIVNPwQpfVab7iVP+AKmoH1gidBlyhiQ==} engines: {bun: '>=0.7.0', deno: '>=1.0.0', node: '>=16.5.0'} @@ -1601,11 +1845,6 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.12.0: - resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==} - engines: {node: '>=0.4.0'} - hasBin: true - acorn@8.12.1: resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} engines: {node: '>=0.4.0'} @@ -1638,8 +1877,8 @@ packages: ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} - ansi-colors@4.1.1: - resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} + ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} ansi-escapes@4.3.2: @@ -1688,12 +1927,12 @@ packages: app-builder-bin@5.0.0-alpha.6: resolution: {integrity: sha512-KVrQQpaYHTlzuj1TE8k+qwwu/o/R8bsFyglUl/3guc2MUbSYvVqeAlxucotAxfp4SnNNBdNE6GGMbhqAKagakQ==} - app-builder-lib@25.0.1: - resolution: {integrity: sha512-zpSaCgGnv1D+dv9IC/ry/x4JAuqHsW/VFDp7lg+IzvTOIgLJkfqyavyP5gEOtUFI5rOO3bwB2TENV5i6lLIpIQ==} + app-builder-lib@25.0.2: + resolution: {integrity: sha512-880a8Wu/dLp25O+AtFBS3IFh1MrPBNfyj6Jbc63RPJB0ys/UMMGE6ios8Eu+0Q7a0+4YouOXr/nVRtg6TpOzkw==} engines: {node: '>=14.0.0'} peerDependencies: - dmg-builder: 25.0.1 - electron-builder-squirrel-windows: 25.0.1 + dmg-builder: 25.0.2 + electron-builder-squirrel-windows: 25.0.2 aproba@2.0.0: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} @@ -1880,8 +2119,8 @@ packages: builder-util@25.0.0-alpha.10: resolution: {integrity: sha512-SrlawYIKu6UZOPWCGlbzVqbgv81jkeUPlrZbbdGb8ERIHuGR9HjnnQs7FV1QR2TKMjRsg/47I8UDtudj16qldg==} - builder-util@25.0.1: - resolution: {integrity: sha512-bxT7+1rnxEGIZGrzBdMAL0brasBmQV4bon3sZC0XC4V2Za4FZ7CXAO9tuetuVpFXYFau+6BL63UbN9HFGMmV5g==} + builder-util@25.0.2: + resolution: {integrity: sha512-bUbbyymkpwS3eOjEFPW8BeP+1EmFlmt2MpLzvI6g2xR905SAUZqSQv+m7UCaGAKrXwYqOyuUPYQo8z0XAg1KKw==} builtin-modules@3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} @@ -1931,8 +2170,8 @@ packages: resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} engines: {node: '>=14.16'} - caniuse-lite@1.0.30001649: - resolution: {integrity: sha512-fJegqZZ0ZX8HOWr6rcafGr72+xcgJKI9oWfDW5DrD7ExUtgZC7a7R7ZYmZqplh7XDocFdGeIFn7roAxhOeYrPQ==} + caniuse-lite@1.0.30001651: + resolution: {integrity: sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==} chai@5.1.1: resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} @@ -1960,13 +2199,9 @@ packages: cheerio-select@2.1.0: resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} - cheerio@1.0.0-rc.12: - resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==} - engines: {node: '>= 6'} - - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} + cheerio@1.0.0: + resolution: {integrity: sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==} + engines: {node: '>=18.17'} chokidar@3.6.0: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} @@ -1980,11 +2215,6 @@ packages: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} - chromium-bidi@0.4.16: - resolution: {integrity: sha512-7ZbXdWERxRxSwo3txsBjjmc/NLxqb1Bk30mRb0BMS4YIaiV6zvKZqL/UAH+DdqcDYayDWk2n/y8klkBDODrPvA==} - peerDependencies: - devtools-protocol: '*' - chromium-pickle-js@0.2.0: resolution: {integrity: sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==} @@ -2170,9 +2400,6 @@ packages: engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} hasBin: true - cross-fetch@4.0.0: - resolution: {integrity: sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==} - cross-spawn@6.0.5: resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} engines: {node: '>=4.8'} @@ -2222,15 +2449,6 @@ packages: supports-color: optional: true - debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.3.5: resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} engines: {node: '>=6.0'} @@ -2279,12 +2497,8 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - deepmerge-ts@5.1.0: - resolution: {integrity: sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==} - engines: {node: '>=16.0.0'} - - deepmerge-ts@7.0.3: - resolution: {integrity: sha512-dxFbFO2RSIhPNBPL/j8Nvdt6/vrkW9+uGf1NLah/QxBGAVbK9fj2fGTO+HwdHpPAyFAsyT9iEn/1SI9SUvespw==} + deepmerge-ts@7.1.0: + resolution: {integrity: sha512-q6bNsfNBtgr8ZOQqmZbl94MmYWm+QcDNIkqCxVWiw1vKvf+y/N2dZQKdnDXn4c5Ygt/y63tDof6OCN+2YwWVEg==} engines: {node: '>=16.0.0'} deepmerge@4.3.1: @@ -2343,18 +2557,12 @@ packages: detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} - devtools-protocol@0.0.1147663: - resolution: {integrity: sha512-hyWmRrexdhbZ1tcJUGpO95ivbRhWXz++F4Ko+n21AY5PNln2ovoJw+8ZMNDTtip+CNFQfrtLVh/w4009dXO/eQ==} - - devtools-protocol@0.0.1302984: - resolution: {integrity: sha512-Rgh2Sk5fUSCtEx4QGH9iwTyECdFPySG2nlz5J8guGh2Wlha6uzSOCq/DCEC8faHlLaMPZJMuZ4ovgcX4LvOkKA==} - diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - diff@5.0.0: - resolution: {integrity: sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==} + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} dir-compare@4.2.0: @@ -2364,8 +2572,8 @@ packages: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} - dmg-builder@25.0.1: - resolution: {integrity: sha512-9mGcvQeQBsXOAuqJf5Z0xTsa0LQZmqaLbc5n6TucviN16OjyRsieNv2ogvEvJPScL8jyPSM062FHAhxsVys0Hg==} + dmg-builder@25.0.2: + resolution: {integrity: sha512-f1sHneDomdAsNxULUeMVNPeLjhSo31XUjhPLOZGyDO+bGBUvZHgOY5uqm0uqcMX1SQa5jjfiUJ6Jov37IE0n1Q==} dmg-license@1.0.11: resolution: {integrity: sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==} @@ -2412,10 +2620,6 @@ packages: resolution: {integrity: sha512-sB7vSrDnFa4ezWQk9nZ/n0FdpdUuC6R1EOrlU3DL+bovcNFK28rqu2emmAUjujYEJTWIgQGqgVVWUZXMnc8iWg==} engines: {node: '>=14.0.0'} - edgedriver@5.6.0: - resolution: {integrity: sha512-IeJXEczG+DNYBIa9gFgVYTqrawlxmc9SUqUsWU2E98jOsO/amA7wzabKOS8Bwgr/3xWoyXCJ6yGFrbFKrilyyQ==} - hasBin: true - edgedriver@5.6.1: resolution: {integrity: sha512-3Ve9cd5ziLByUdigw6zovVeWJjVs8QHVmqOB0sJ0WNeVPcwf4p18GnxMmVvlFmYRloUwf5suNuorea4QzwBIOA==} hasBin: true @@ -2425,25 +2629,22 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-builder-squirrel-windows@25.0.1: - resolution: {integrity: sha512-MsfO7wHky5aYf72i9wFd1hZINyQHvnB4o2CHcXnEzsM21WHZJpXol62NBJhp+1pk6fuARA0jF1DtAcBco+y9YA==} + electron-builder-squirrel-windows@25.0.2: + resolution: {integrity: sha512-58eN10+2PvOTNNeGMM6FBZlu9PRIoMoSWbI+5DgRxK+/EOKdJ1MXhE7EAuhd8hnGlBV0Bl7c/id+5aq3iGe+8w==} - electron-builder@25.0.1: - resolution: {integrity: sha512-1ft2JHDQeXRicAC8Icqf0ErzeY5cDXesmkKZsI9EWzOlvm+Dm6z8oRpPt39IFl7LbPlJ2yRrLE7DahktiRTFrg==} + electron-builder@25.0.2: + resolution: {integrity: sha512-OIUyj2wOOfXYGWCQMFORbsJNX290gjNdCYqvOpXsEiaTVAuEqtNktJT9YOR94iOKH/ktPDmRPTVX8K+0I8udmA==} engines: {node: '>=14.0.0'} hasBin: true - electron-publish@25.0.1: - resolution: {integrity: sha512-9ADYaKARy9rfCgiaFt/q2YJxZdx26WAZbnq06LBaZEg48YnlyPBo2ZwcIVbt6+RszTOgKvaZY/KqT6GkDRiikw==} + electron-publish@25.0.2: + resolution: {integrity: sha512-avBLGU4Tyj7oVhZ8cxrUa+w7CMzeOd3ylu3fKmtlFvHwyypi/Eu2/TPniNwMsqEd0I/ii9KBBimCgBdjbfjP2A==} - electron-to-chromium@1.5.3: - resolution: {integrity: sha512-QNdYSS5i8D9axWp/6XIezRObRHqaav/ur9z1VzCDUCH1XIFOr9WQk5xmgunhsTpjjgDy3oLxO/WMOVZlpUQrlA==} + electron-to-chromium@1.5.11: + resolution: {integrity: sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew==} - electron-to-chromium@1.5.5: - resolution: {integrity: sha512-QR7/A7ZkMS8tZuoftC/jfqNkZLQO779SSW3YuZHP4eXpj3EffGLFcB/Xu9AAZQzLccTiCV+EmUo3ha4mQ9wnlA==} - - electron@31.3.1: - resolution: {integrity: sha512-9fiuWlRhBfygtcT+auRd/WdBK/f8LZZcrpx0RjpXhH2DPTP/PfnkC4JB1PW55qCbGbh4wAgkYbf4ExIag8oGCA==} + electron@31.4.0: + resolution: {integrity: sha512-YTwKoAA+nrJMlI1TTHnIXLYWoQLKnhbkz0qxZcI7Hadcy0UaFMFs9xzwvH2MnrRpVJy7RKo49kVGuvSdRl8zMA==} engines: {node: '>= 12.20.55'} hasBin: true @@ -2456,16 +2657,15 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + encoding-sniffer@0.2.0: + resolution: {integrity: sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==} + encoding@0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - enhanced-resolve@5.17.0: - resolution: {integrity: sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==} - engines: {node: '>=10.13.0'} - enhanced-resolve@5.17.1: resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} engines: {node: '>=10.13.0'} @@ -2510,6 +2710,11 @@ packages: engines: {node: '>=12'} hasBin: true + esbuild@0.23.0: + resolution: {integrity: sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.2: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} @@ -2554,9 +2759,9 @@ packages: vitest: optional: true - eslint-plugin-wdio@8.37.0: - resolution: {integrity: sha512-X217zXxSqj1IPWu3bxN7D/xEUmNk7Jg5lBf2JwYH3mCogaqL2tnHZnwt0EQ5D9oEejfEl2+4zqHSzhXq1X7F2A==} - engines: {node: ^16.13 || >=18} + eslint-plugin-wdio@9.0.4: + resolution: {integrity: sha512-Wnvrn39o2/3jNW1vRr15/qIDt25xvQgyQsEchTZZYbGSdD6DkWkNMidsGyo/+BFhwid3gSuWVFvXgcWB35L4Tw==} + engines: {node: '>=18'} eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} @@ -2584,8 +2789,8 @@ packages: engines: {node: '>=4'} hasBin: true - esquery@1.5.0: - resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} esrecurse@4.3.0: @@ -2633,24 +2838,16 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - execa@9.3.0: - resolution: {integrity: sha512-l6JFbqnHEadBoVAVpN5dl2yCyfX28WoBAGaoQcNmLLSedOxTxcn2Qa83s8I/PA5i56vWru2OHOtrwF7Om2vqlg==} + execa@9.3.1: + resolution: {integrity: sha512-gdhefCCNy/8tpH/2+ajP9IQc14vXchNdd0weyzSJEFURhRMGncQ+zKFxwjAufIewPEJm9BPOaJnvg2UtlH2gPQ==} engines: {node: ^18.19.0 || >=20.5.0} expand-tilde@2.0.2: resolution: {integrity: sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==} engines: {node: '>=0.10.0'} - expect-webdriverio@4.15.1: - resolution: {integrity: sha512-xtBSidt7Whs1fsUC+utxVzfmkmaStXWW17b+BcMCiCltx0Yku6l7BTv1Y14DEKX8L6rttaDQobYyRtBKbi4ssg==} - engines: {node: '>=16 || >=18 || >=20'} - - expect-webdriverio@5.0.0-alpha.0: - resolution: {integrity: sha512-eKKjyHx3WXeIw+GRu5qaIFxNlwrMx2BcKQ0II1S/IY647jLLXAAWOTmn6Od2DBbwz8D3/UzGYjJpMGj0aSNG1A==} - engines: {node: '>=16 || >=18 || >=20'} - - expect-webdriverio@5.0.0-alpha.2: - resolution: {integrity: sha512-1T92DjZoY8oDpojGnSyf2WOEaS6uBrYTuzRJWqVE+wJAZATbeWgv8isl/3GM6MbQpDuN44F+fKLbgTZ18Bc4HA==} + expect-webdriverio@5.0.1: + resolution: {integrity: sha512-tYJaXtu5qQr/oEXzDKoVzyA/g2wyeE1YsuVJQC8/bKnp1lX3I4NQ2Yb9u1rJ9vdpFha6pki8PzHlTk5PVZBQWQ==} engines: {node: '>=18 || >=20 || >=22'} peerDependencies: '@wdio/globals': ^9.0.0-alpha.350 @@ -2848,8 +3045,8 @@ packages: resolution: {integrity: sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==} engines: {node: '>= 4.0.0'} - geckodriver@4.4.1: - resolution: {integrity: sha512-nnAdIrwLkMcDu4BitWXF23pEMeZZ0Cj7HaWWFdSpeedBP9z6ft150JYiGO2mwzw6UiR823Znk1JeIf07RyzloA==} + geckodriver@4.4.3: + resolution: {integrity: sha512-79rvaq8pvKVUtuM9XBjQApb04kOVkl3TFRX+zTt1wlmL+wqpt85ocWCdqiENU/3zIzg2Me21eClUcnE7F1kL2w==} engines: {node: ^16.13 || >=18 || >=20} hasBin: true @@ -2899,8 +3096,8 @@ packages: resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} engines: {node: '>=18'} - get-tsconfig@4.7.5: - resolution: {integrity: sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==} + get-tsconfig@4.7.6: + resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==} get-uri@6.0.3: resolution: {integrity: sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==} @@ -2923,11 +3120,6 @@ packages: glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - glob@10.4.2: - resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} - engines: {node: '>=16 || 14 >=14.18'} - hasBin: true - glob@10.4.5: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true @@ -2998,10 +3190,6 @@ packages: resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} engines: {node: '>=10.19.0'} - got@12.6.1: - resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} - engines: {node: '>=14.16'} - got@13.0.0: resolution: {integrity: sha512-XfBk1CxOOScDcMr9O1yKkNaQyy865NbYs+F7dr4H0LZMVgCj2Le59k6PqbNHoL5ToeaEQUYh6c6yMfVcc6SJxA==} engines: {node: '>=16'} @@ -3080,8 +3268,8 @@ packages: htmlfy@0.2.1: resolution: {integrity: sha512-HoomFHQ3av1uhq+7FxJTq4Ns0clAD+tGbQNrSd0WFY3UAjjUk6G3LaWEqdgmIXYkY4pexZiyZ3ykZJhQlM0J5A==} - htmlparser2@8.0.2: - resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} + htmlparser2@9.1.0: + resolution: {integrity: sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==} http-cache-semantics@4.1.1: resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} @@ -3118,8 +3306,8 @@ packages: resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} engines: {node: '>=16.17.0'} - human-signals@7.0.0: - resolution: {integrity: sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==} + human-signals@8.0.0: + resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==} engines: {node: '>=18.18.0'} humanize-ms@1.2.1: @@ -3193,12 +3381,12 @@ packages: resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - inquirer@9.3.2: - resolution: {integrity: sha512-+ynEbhWKhyomnaX0n2aLIMSkgSlGB5RrWbNXnEqj6mdaIydu6y40MdBjL38SAB0JcdmOaIaMua1azdjLEr3sdw==} + inquirer@10.1.8: + resolution: {integrity: sha512-syxGpOzLyqVeZi1KDBjRTnCn5PiGWySGHP0BbqXbqsEK0ckkZk3egAepEWslUjZXj0rhkUapVXM/IpADWe4D6w==} engines: {node: '>=18'} - inquirer@9.3.6: - resolution: {integrity: sha512-riK/iQB2ctwkpWYgjjWIRv3MBLt2gzb2Sj0JNQNbyTXgyXsLWcDPJ5WS5ZDTCx7BRFnJsARtYh+58fjP5M2Y0Q==} + inquirer@9.3.2: + resolution: {integrity: sha512-+ynEbhWKhyomnaX0n2aLIMSkgSlGB5RrWbNXnEqj6mdaIydu6y40MdBjL38SAB0JcdmOaIaMua1azdjLEr3sdw==} engines: {node: '>=18'} internal-slot@1.0.7: @@ -3251,8 +3439,8 @@ packages: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true - is-core-module@2.14.0: - resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} + is-core-module@2.15.0: + resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} engines: {node: '>= 0.4'} is-date-object@1.0.5: @@ -3316,6 +3504,9 @@ packages: is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} + is-node-process@1.2.0: + resolution: {integrity: sha512-Vg4o6/fqPxIjtxgUH5QLJhwZ7gW5diGCVlXpuUfELC62CuxM1iHcRe51f2W1FDy04Ai4KJkagKjx3XaqyfRKXw==} + is-npm@6.0.0: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3465,16 +3656,11 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} - jackspeak@3.4.0: - resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} - engines: {node: '>=14'} - - jackspeak@3.4.2: - resolution: {integrity: sha512-qH3nOSj8q/8+Eg8LUPOq3C+6HWkpUioIjDsq1+D4zY91oZvpPttw8GwtF1nReRYKXl+1AORyFqtm2f5Q1SB6/Q==} - engines: {node: 14 >=14.21 || 16 >=16.20 || >=18} + jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jake@10.9.1: - resolution: {integrity: sha512-61btcOHNnLnsOdtLgA5efqQWjnSi/vow5HbI7HMdKKWqvrKR1bLK3BPlJn9gcSaP2ewuamUSMB5XEy76KUIS2w==} + jake@10.9.2: + resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} engines: {node: '>=10'} hasBin: true @@ -3561,10 +3747,6 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - ky@0.33.3: - resolution: {integrity: sha512-CasD9OCEQSFIam2U8efFK81Yeg8vNMTBUqtMOHlrcWQHqUX3HeCl9Dr31u4toV7emlH8Mymk5+9p0lL6mKb/Xw==} - engines: {node: '>=14.16'} - ky@1.4.0: resolution: {integrity: sha512-tPhhoGUiEiU/WXR4rt8klIoLdnTtyu+9jVKHd/wauEjYud32jyn63mzKWQweaQrHWxBQtYoVtdcEnYX1LosnFQ==} engines: {node: '>=18'} @@ -3598,8 +3780,8 @@ packages: resolution: {integrity: sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - lint-staged@15.2.8: - resolution: {integrity: sha512-PUWFf2zQzsd9EFU+kM1d7UP+AZDbKFKuj+9JNVTBkhUFhbg4MAt6WfyMMwBfM4lYqd4D2Jwac5iuTu9rVj4zCQ==} + lint-staged@15.2.9: + resolution: {integrity: sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==} engines: {node: '>=18.12.0'} hasBin: true @@ -3619,8 +3801,8 @@ packages: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - locate-app@2.4.19: - resolution: {integrity: sha512-qDJcdu7p5pFX8mS5tNrk3HStsq6dSotiuMi+3EAnU/chwJjHxv2QJ+kF2dGFsQ4kTNPyeLCm6WaROFlKWguluQ==} + locate-app@2.4.27: + resolution: {integrity: sha512-QCNcJic0ZEZwMNrOXEi1FkxAjnZ0FSf1vjsgJAdOtnRkmYQJWQoZRiO/xff2rT7PuG2f8BJpY4D5dZJIkP55hA==} locate-path@2.0.0: resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} @@ -3735,10 +3917,6 @@ packages: resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - lru-cache@10.2.2: - resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} - engines: {node: 14 || >=16.14} - lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -3761,6 +3939,9 @@ packages: magic-string@0.30.10: resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} + magic-string@0.30.11: + resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + magicast@0.3.4: resolution: {integrity: sha512-TyDF/Pn36bBji9rWKHlZe+PZb6Mx5V8IHCSxk7X4aljM4e/vyDvZZYwHewdVaqiA0nb3ghfHU/6AUpDxWoER2Q==} @@ -3842,10 +4023,6 @@ packages: minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - minimatch@5.0.1: - resolution: {integrity: sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==} - engines: {node: '>=10'} - minimatch@5.1.6: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} @@ -3893,19 +4070,13 @@ packages: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} - mitt@3.0.0: - resolution: {integrity: sha512-7dX2/10ITVyqh4aOSVI9gdape+t9l2/8QxHrFmUXu4EEUpdlxl6RudZUPZoc+zuY2hk1j7XxVroIVIan/pD/SQ==} - - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - mkdirp@1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} engines: {node: '>=10'} hasBin: true - mocha@10.4.0: - resolution: {integrity: sha512-eqhGB8JKapEYcC4ytX/xrzKforgEc3j1pGlAXVy3eRwrtAy5/nIfT1SvgGzfN0XZZxeLq0aQWkOUAmqIJiv+bA==} + mocha@10.7.3: + resolution: {integrity: sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==} engines: {node: '>= 14.0.0'} hasBin: true @@ -3948,9 +4119,9 @@ packages: nice-try@1.0.5: resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - nock@13.5.4: - resolution: {integrity: sha512-yAyTfdeNJGGBFxWdzSKCBYxs5FxLbCg5X5Q4ets974hcQzG1+qCxvIyOo4j2Ry6MUlhWVMX4OoYDefAIIwupjw==} - engines: {node: '>= 10.13'} + nock@14.0.0-beta.9: + resolution: {integrity: sha512-ndEFjtOLDluzu/1srE2raRWlEyQHq4CWZ/eN6fc7AcbaXiXmprIkfvq3MvkFYR3rQW7Pylb+IHLkx7RITMUwTg==} + engines: {node: '>= 18'} node-abi@3.65.0: resolution: {integrity: sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==} @@ -3995,10 +4166,6 @@ packages: normalize-package-data@2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - normalize-package-data@6.0.1: - resolution: {integrity: sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==} - engines: {node: ^16.14.0 || >=18.0.0} - normalize-package-data@6.0.2: resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==} engines: {node: ^16.14.0 || >=18.0.0} @@ -4093,6 +4260,9 @@ packages: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} + outvariant@1.4.3: + resolution: {integrity: sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==} + p-cancelable@2.1.1: resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} engines: {node: '>=8'} @@ -4216,6 +4386,9 @@ packages: parse5-htmlparser2-tree-adapter@7.0.0: resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} + parse5-parser-stream@7.1.2: + resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==} + parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} @@ -4312,8 +4485,8 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} - postcss@8.4.39: - resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} + postcss@8.4.41: + resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} engines: {node: ^10 || ^12 || >=14} postject@1.0.0-alpha.6: @@ -4338,8 +4511,8 @@ packages: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - pretty-ms@9.0.0: - resolution: {integrity: sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==} + pretty-ms@9.1.0: + resolution: {integrity: sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==} engines: {node: '>=18'} process-nextick-args@2.0.1: @@ -4375,14 +4548,6 @@ packages: protocols@2.0.1: resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==} - proxy-agent@6.3.0: - resolution: {integrity: sha512-0LdR757eTj/JfuU7TL2YCuAZnxWXu3tkJbg4Oq3geW/qFNT/32T0sp2HnZ9O0lMR4q3vwAt0+xCA8SR0WAD0og==} - engines: {node: '>= 14'} - - proxy-agent@6.3.1: - resolution: {integrity: sha512-Rb5RVBy1iyqOtNl15Cw/llpeLH8bsb37gM1FUfKQ+Wck6xHlbAhWGUFiTRHtkjqGTA5pSHz6+0hrPW/oECihPQ==} - engines: {node: '>= 14'} - proxy-agent@6.4.0: resolution: {integrity: sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==} engines: {node: '>= 14'} @@ -4404,15 +4569,6 @@ packages: resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==} engines: {node: '>=12.20'} - puppeteer-core@20.9.0: - resolution: {integrity: sha512-H9fYZQzMTRrkboEfPmf7m3CLDN6JvbxXA3qTtS+dFt27tR+CsFHzPsT6pzp6lYL6bJbAPaR0HaPO6uSi+F94Pg==} - engines: {node: '>=16.3.0'} - peerDependencies: - typescript: '>= 4.7.4' - peerDependenciesMeta: - typescript: - optional: true - query-selector-shadow-dom@1.0.1: resolution: {integrity: sha512-lT5yCqEBgfoMYpf3F2xQRK7zEr1rhIIZuceDK6+xRkJQ4NMbHTwXqk4NkwDwQMNqXgG9r9fyHnzwNVs6zV5KRw==} @@ -4454,8 +4610,8 @@ packages: resolution: {integrity: sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==} engines: {node: '>=18'} - read-pkg-up@10.0.0: - resolution: {integrity: sha512-jgmKiS//w2Zs+YbX039CorlkOp8FIVbSAN8r8GJHDsGlmNPXo+VeHkqAwCiQVTTx5/LwLZTcEw59z3DvcLbr0g==} + read-pkg-up@10.1.0: + resolution: {integrity: sha512-aNtBq4jR8NawpKJQldrQcSW9y/d+KWH4v24HWkHljOZ7H0av+YTGANBzRh9A5pw7v/bLVsLVPpOhJ7gHNVy8lA==} engines: {node: '>=16'} read-pkg-up@2.0.0: @@ -4610,8 +4766,8 @@ packages: resolution: {integrity: sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==} engines: {node: '>=8.0'} - rollup@4.20.0: - resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==} + rollup@4.21.0: + resolution: {integrity: sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -4680,11 +4836,6 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.6.0: - resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} - engines: {node: '>=10'} - hasBin: true - semver@7.6.2: resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} engines: {node: '>=10'} @@ -4703,9 +4854,6 @@ packages: resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} engines: {node: '>=10'} - serialize-javascript@6.0.0: - resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} - serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} @@ -4821,8 +4969,8 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} - spacetrim@0.11.27: - resolution: {integrity: sha512-dwH0FuVEdapG4Qb2kNlZXM5kCyOgqsC0LkZbF+ESICLMTWH3RQsisSlnNy9raB38qxvUlUvpFrbEirB0RFKv5A==} + spacetrim@0.11.39: + resolution: {integrity: sha512-S/baW29azJ7py5ausQRE2S6uEDQnlxgMHOEEq4V770ooBDD1/9kZnxRcco/tjZYuDuqYXblCk/r3N13ZmvHZ2g==} spdx-correct@3.2.0: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} @@ -4876,6 +5024,9 @@ packages: streamx@2.18.0: resolution: {integrity: sha512-LLUC1TWdjVdn1weXGcSxyTR3T4+acB6tVGXT95y0nGbca4t4o/ng1wKAGTljm9VicuCVLvRlqFYXYy5GwgM7sQ==} + strict-event-emitter@0.5.1: + resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==} + string-argv@0.3.2: resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} engines: {node: '>=0.6.19'} @@ -4975,12 +5126,6 @@ packages: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - tar-fs@3.0.4: - resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} - - tar-fs@3.0.5: - resolution: {integrity: sha512-JOgGAmZyMgbqpLwct7ZV8VzkEB6pxXFBVErLtb+XCOqzc6w1xiWKI9GVd6bwk68EX7eJ4DWmfXVmq8K2ziZTGg==} - tar-fs@3.0.6: resolution: {integrity: sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==} @@ -5014,8 +5159,8 @@ packages: uglify-js: optional: true - terser@5.31.3: - resolution: {integrity: sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==} + terser@5.31.6: + resolution: {integrity: sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==} engines: {node: '>=10'} hasBin: true @@ -5023,8 +5168,8 @@ packages: resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} engines: {node: '>=18'} - text-decoder@1.1.0: - resolution: {integrity: sha512-TmLJNj6UgX8xcUZo4UDStGQtDiTzF7BzWlzn9g7UWrjkpHr5uJTK1ld16wZ3LXb2vb6jH8qU89dW5whuMdXYdw==} + text-decoder@1.1.1: + resolution: {integrity: sha512-8zll7REEv4GDD3x4/0pW+ppIxSNs7H1J10IKFZsuOMscumCdM2a+toDGLPA3T+1+fLBql4zbt5z83GEQGGV5VA==} text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} @@ -5036,8 +5181,8 @@ packages: resolution: {integrity: sha512-75voc/9G4rDIJleOo4jPvN4/YC4GRZrY8yy1uU4lwrB3XEQbWve8zXoO5No4eFrGcTAMYyoY67p8jRQdtA1HbA==} engines: {node: '>=12'} - tinybench@2.8.0: - resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} tinypool@1.0.0: resolution: {integrity: sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==} @@ -5104,43 +5249,43 @@ packages: tslib@2.6.3: resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - tsx@4.16.5: - resolution: {integrity: sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==} + tsx@4.17.0: + resolution: {integrity: sha512-eN4mnDA5UMKDt4YZixo9tBioibaMBpoxBkD+rIPAjVmYERSG0/dWEY1CEFuV89CgASlKL499q8AhmkMnnjtOJg==} engines: {node: '>=18.0.0'} hasBin: true - turbo-darwin-64@2.0.12: - resolution: {integrity: sha512-NAgfgbXxX/JScWQmmQnGbPuFZq7LIswHfcMk5JwyBXQM/xmklNOxxac7MnGGIOf19Z2f6S3qHy17VIj0SeGfnA==} + turbo-darwin-64@2.0.14: + resolution: {integrity: sha512-kwfDmjNwlNfvtrvT29+ZBg5n1Wvxl891bFHchMJyzMoR0HOE9N1NSNdSZb9wG3e7sYNIu4uDkNk+VBEqJW0HzQ==} cpu: [x64] os: [darwin] - turbo-darwin-arm64@2.0.12: - resolution: {integrity: sha512-cP02uer5KSJ+fXL+OfRRk5hnVjV0c60hxDgNcJxrZpfhun7HHoKDDR7w2xhQntiA45aC6ZZEXRqMKpj6GAmKbg==} + turbo-darwin-arm64@2.0.14: + resolution: {integrity: sha512-m3LXYEshCx3wc4ZClM6gb01KYpFmtjQ9IBF3A7ofjb6ahux3xlYZJZ3uFCLAGHuvGLuJ3htfiPbwlDPTdknqqw==} cpu: [arm64] os: [darwin] - turbo-linux-64@2.0.12: - resolution: {integrity: sha512-+mQgGfg1eq5qF+wenK/FKJaNMNAo5DQLC4htQy+8osW+fx6U+8+6UlPQPaycAWDEqwOI7NwuqkeHfkEQLQUTyQ==} + turbo-linux-64@2.0.14: + resolution: {integrity: sha512-7vBzCPdoTtR92SNn2JMgj1FlMmyonGmpMaQdgAB1OVYtuQ6NVGoh7/lODfaILqXjpvmFSVbpBIDrKOT6EvcprQ==} cpu: [x64] os: [linux] - turbo-linux-arm64@2.0.12: - resolution: {integrity: sha512-KFyEZDXfPU1DK4zimxdCcqAcK7IIttX4mfsgB7NsSEOmH0dhHOih/YFYiyEDC1lTRx0C2RlzQ0Kjjdz48AN5Eg==} + turbo-linux-arm64@2.0.14: + resolution: {integrity: sha512-jwH+c0bfjpBf26K/tdEFatmnYyXwGROjbr6bZmNcL8R+IkGAc/cglL+OToqJnQZTgZvH7uDGbeSyUo7IsHyjuA==} cpu: [arm64] os: [linux] - turbo-windows-64@2.0.12: - resolution: {integrity: sha512-kJj4KCkZTkDTDCqsSw1m1dbO4WeoQq1mYUm/thXOH0OkeqYbSMt0EyoTcJOgKUDsrMnzZD2gPfYrlYHtV69lVA==} + turbo-windows-64@2.0.14: + resolution: {integrity: sha512-w9/XwkHSzvLjmioo6cl3S1yRfI6swxsV1j1eJwtl66JM4/pn0H2rBa855R0n7hZnmI6H5ywLt/nLt6Ae8RTDmw==} cpu: [x64] os: [win32] - turbo-windows-arm64@2.0.12: - resolution: {integrity: sha512-TY3ROxguDilN2olCwcZMaePdW01Xhma0pZU7bNhsQEqca9RGAmsZBuzfGnTMcWPmv4tpnb/PlX1hrt1Hod/44Q==} + turbo-windows-arm64@2.0.14: + resolution: {integrity: sha512-XaQlyYk+Rf4xS5XWCo8XCMIpssgGGy8blzLfolN6YBp4baElIWMlkLZHDbGyiFmCbNf9I9gJI64XGRG+LVyyjA==} cpu: [arm64] os: [win32] - turbo@2.0.12: - resolution: {integrity: sha512-8s2KwqjwQj7z8Z53SUZSKVkQOZ2/Sl4D2F440oaBY/k2lGju60dW6srEpnn8/RIDeICZmQn3pQHF79Jfnc5Skw==} + turbo@2.0.14: + resolution: {integrity: sha512-00JjdCMD/cpsjP0Izkjcm8Oaor5yUCfDwODtaLb+WyblyadkaDEisGhy3Dbd5az9n+5iLSPiUgf+WjPbns6MRg==} hasBin: true type-check@0.4.0: @@ -5175,12 +5320,12 @@ packages: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - type-fest@4.20.1: - resolution: {integrity: sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==} + type-fest@4.23.0: + resolution: {integrity: sha512-ZiBujro2ohr5+Z/hZWHESLz3g08BBdrdLMieYFULJO+tWc437sn8kQsWLJoZErY8alNhxre9K4p3GURAG11n+w==} engines: {node: '>=16'} - type-fest@4.21.0: - resolution: {integrity: sha512-ADn2w7hVPcK6w1I0uWnM//y1rLXZhzB9mr0a3OirzclKF1Wp6VzevUmzz/NRAWunOT6E8HrnpGY7xOfc6K57fA==} + type-fest@4.25.0: + resolution: {integrity: sha512-bRkIGlXsnGBRBQRAY56UXBm//9qH4bmJfFvq83gSz41N282df+fjy8ofcEgc1sM8geNt5cl6mC2g9Fht1cs8Aw==} engines: {node: '>=16'} typedarray-to-buffer@3.1.5: @@ -5197,6 +5342,13 @@ packages: undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + undici@6.19.8: + resolution: {integrity: sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==} + engines: {node: '>=18.17'} + unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} @@ -5277,8 +5429,8 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite@5.3.4: - resolution: {integrity: sha512-Cw+7zL3ZG9/NZBB8C+8QbQZmR54GwqIz+WMI4b3JgdYJvX+ny9AjJXqkGQlDXSXRP9rP0B4tbciRMOVEKulVOA==} + vite@5.3.5: + resolution: {integrity: sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -5339,8 +5491,8 @@ packages: engines: {node: '>=10'} hasBin: true - watchpack@2.4.1: - resolution: {integrity: sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==} + watchpack@2.4.2: + resolution: {integrity: sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==} engines: {node: '>=10.13.0'} wcwidth@1.0.1: @@ -5350,51 +5502,12 @@ packages: resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} engines: {node: '>= 8'} - webdriver@8.39.0: - resolution: {integrity: sha512-Kc3+SfiH4ufyrIht683VT2vnJocx0pfH8rYdyPvEh1b2OYewtFTHK36k9rBDHZiBmk6jcSXs4M2xeFgOuon9Lg==} - engines: {node: ^16.13 || >=18} - - webdriver@9.0.0-alpha.367: - resolution: {integrity: sha512-q16Wo1TMjw28/RJxDp98GF+SOXgEi43y3KltMbBHBSFt4mMHER522HZ5gLiCDhaK1vI4UfLLDajnIDU9z2ytRQ==} - engines: {node: '>=18'} - - webdriver@9.0.0-alpha.369: - resolution: {integrity: sha512-WEIDiFc1rUZpqUdOIAiyXtTW4zpf1jR9D0lbgqaMctWSiUSbt6pSZUxvQZZtZUsaeKl8UBNkcr7z0TSa0VIrsg==} + webdriver@9.0.4: + resolution: {integrity: sha512-hLLirUCgfi/bU3X32hn2OX65QN8ckaGJFmRL7Trlor0Qigh4a4RQ46yf7Ffq8JN0dPaZnPjK8LFNbv/rpNfevg==} engines: {node: '>=18'} - webdriver@9.0.0-alpha.426: - resolution: {integrity: sha512-GO5Vz/pKAc0bXtnXb+AEAuTLjDjY5RX0voXzzxcqBvu9w32rd5dibdWhjCBrOpy+WrsB/K4WXPl/iPlOyT6C9A==} - engines: {node: '>=18'} - - webdriverio@8.39.1: - resolution: {integrity: sha512-dPwLgLNtP+l4vnybz+YFxxH8nBKOP7j6VVzKtfDyTLDQg9rz3U8OA4xMMQCBucnrVXy3KcKxGqlnMa+c4IfWCQ==} - engines: {node: ^16.13 || >=18} - peerDependencies: - devtools: ^8.14.0 - peerDependenciesMeta: - devtools: - optional: true - - webdriverio@9.0.0-alpha.367: - resolution: {integrity: sha512-x/f0xOoOfTi7U4fkqwN/xUmlZmSSbRhP67WQXdiQrTdFK5OgLsRNJZ3IEdUOZalvY9ihKpzu3R8BKlXNL5I0aw==} - engines: {node: '>=18'} - peerDependencies: - puppeteer-core: ^22.3.0 - peerDependenciesMeta: - puppeteer-core: - optional: true - - webdriverio@9.0.0-alpha.369: - resolution: {integrity: sha512-5nGtK2+guU0XdKYt5F3Km2VGPG8eGWm3eDwLvs5ucz5O3aYE9faX1gpmuNGFztFMkRmlYyNKNmQ/1mLKUo/sPQ==} - engines: {node: '>=18'} - peerDependencies: - puppeteer-core: ^22.3.0 - peerDependenciesMeta: - puppeteer-core: - optional: true - - webdriverio@9.0.0-alpha.426: - resolution: {integrity: sha512-fX1Kzw1Vgg+NCqKL7K6SDdUG6C8JZn+0Hx9TDTouYfN8Q0JE89G6D0u9FIny4rKMp5U0JzQG1LejnOctmaJH9w==} + webdriverio@9.0.4: + resolution: {integrity: sha512-ZV6rmHSR0kDWON2SF4WVpJFPbkTnKOuz7bajgBNgcJ0aku95zvuZpiOYMQgIKMfeeVQYut5sVCfXWyNUVMbX6w==} engines: {node: '>=18'} peerDependencies: puppeteer-core: ^22.3.0 @@ -5486,8 +5599,8 @@ packages: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} - workerpool@6.2.1: - resolution: {integrity: sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==} + workerpool@6.5.1: + resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} wrap-ansi@6.2.0: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} @@ -5511,18 +5624,6 @@ packages: write-file-atomic@3.0.3: resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} - ws@8.13.0: - resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - ws@8.18.0: resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} @@ -5566,8 +5667,8 @@ packages: engines: {node: '>= 14'} hasBin: true - yargs-parser@20.2.4: - resolution: {integrity: sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==} + yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} engines: {node: '>=10'} yargs-parser@21.1.1: @@ -5582,10 +5683,6 @@ packages: resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} engines: {node: '>=10'} - yargs@17.7.1: - resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} - engines: {node: '>=12'} - yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} @@ -5647,15 +5744,15 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.0.1 - '@babel/parser@7.24.8': + '@babel/parser@7.25.3': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 - '@babel/runtime@7.24.7': + '@babel/runtime@7.24.8': dependencies: regenerator-runtime: 0.14.1 - '@babel/types@7.24.9': + '@babel/types@7.25.2': dependencies: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 @@ -5672,13 +5769,13 @@ snapshots: dependencies: '@electron-forge/core': 7.4.0(encoding@0.1.13) '@electron-forge/shared-types': 7.4.0 - '@electron/get': 3.0.0 + '@electron/get': 3.1.0 chalk: 4.1.2 commander: 4.1.1 debug: 4.3.5 fs-extra: 10.1.0 listr2: 7.0.2 - semver: 7.6.2 + semver: 7.6.3 transitivePeerDependencies: - bluebird - encoding @@ -5690,7 +5787,7 @@ snapshots: '@electron/rebuild': 3.6.0 '@malept/cross-spawn-promise': 2.0.0 chalk: 4.1.2 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) find-up: 5.0.0 fs-extra: 10.1.0 log-symbols: 4.1.0 @@ -5713,12 +5810,12 @@ snapshots: '@electron-forge/template-webpack': 7.4.0 '@electron-forge/template-webpack-typescript': 7.4.0 '@electron-forge/tracer': 7.4.0 - '@electron/get': 3.0.0 + '@electron/get': 3.1.0 '@electron/packager': 18.3.3 '@electron/rebuild': 3.6.0 '@malept/cross-spawn-promise': 2.0.0 chalk: 4.1.2 - debug: 4.3.6 + debug: 4.3.5 fast-glob: 3.3.2 filenamify: 4.3.0 find-up: 5.0.0 @@ -5779,7 +5876,7 @@ snapshots: dependencies: '@electron-forge/shared-types': 7.4.0 '@malept/cross-spawn-promise': 2.0.0 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) fs-extra: 10.1.0 username: 5.1.0 transitivePeerDependencies: @@ -5834,7 +5931,7 @@ snapshots: '@electron/get@2.0.3': dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) env-paths: 2.2.1 fs-extra: 8.1.0 got: 11.8.6 @@ -5846,9 +5943,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@electron/get@3.0.0': + '@electron/get@3.1.0': dependencies: - debug: 4.3.6 + debug: 4.3.5 env-paths: 2.2.1 fs-extra: 8.1.0 got: 11.8.6 @@ -5862,7 +5959,7 @@ snapshots: '@electron/notarize@2.3.2': dependencies: - debug: 4.3.6 + debug: 4.3.5 fs-extra: 9.1.0 promise-retry: 2.0.1 transitivePeerDependencies: @@ -5871,7 +5968,7 @@ snapshots: '@electron/osx-sign@1.3.1': dependencies: compare-version: 0.1.2 - debug: 4.3.6 + debug: 4.3.5 fs-extra: 10.1.0 isbinaryfile: 4.0.10 minimist: 1.2.8 @@ -5882,11 +5979,11 @@ snapshots: '@electron/packager@18.3.3': dependencies: '@electron/asar': 3.2.10 - '@electron/get': 3.0.0 + '@electron/get': 3.1.0 '@electron/notarize': 2.3.2 '@electron/osx-sign': 1.3.1 '@electron/universal': 2.0.1 - '@electron/windows-sign': 1.1.2 + '@electron/windows-sign': 1.1.3 debug: 4.3.5 extract-zip: 2.0.1 filenamify: 4.3.0 @@ -5907,7 +6004,7 @@ snapshots: dependencies: '@malept/cross-spawn-promise': 2.0.0 chalk: 4.1.2 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) detect-libc: 2.0.3 fs-extra: 10.1.0 got: 11.8.6 @@ -5927,7 +6024,7 @@ snapshots: dependencies: '@electron/asar': 3.2.10 '@malept/cross-spawn-promise': 2.0.0 - debug: 4.3.6 + debug: 4.3.5 dir-compare: 4.2.0 fs-extra: 11.2.0 minimatch: 9.0.5 @@ -5935,10 +6032,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@electron/windows-sign@1.1.2': + '@electron/windows-sign@1.1.3': dependencies: cross-dirname: 0.1.0 - debug: 4.3.6 + debug: 4.3.5 fs-extra: 11.2.0 minimist: 1.2.8 postject: 1.0.0-alpha.6 @@ -5948,85 +6045,155 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true + '@esbuild/aix-ppc64@0.23.0': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true + '@esbuild/android-arm64@0.23.0': + optional: true + '@esbuild/android-arm@0.21.5': optional: true + '@esbuild/android-arm@0.23.0': + optional: true + '@esbuild/android-x64@0.21.5': optional: true + '@esbuild/android-x64@0.23.0': + optional: true + '@esbuild/darwin-arm64@0.21.5': optional: true + '@esbuild/darwin-arm64@0.23.0': + optional: true + '@esbuild/darwin-x64@0.21.5': optional: true + '@esbuild/darwin-x64@0.23.0': + optional: true + '@esbuild/freebsd-arm64@0.21.5': optional: true + '@esbuild/freebsd-arm64@0.23.0': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.23.0': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm64@0.23.0': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-arm@0.23.0': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-ia32@0.23.0': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-loong64@0.23.0': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-mips64el@0.23.0': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-ppc64@0.23.0': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.23.0': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-s390x@0.23.0': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/linux-x64@0.23.0': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.23.0': + optional: true + + '@esbuild/openbsd-arm64@0.23.0': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.23.0': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.23.0': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-arm64@0.23.0': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-ia32@0.23.0': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true + '@esbuild/win32-x64@0.23.0': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': dependencies: eslint: 8.57.0 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.10.1': {} - '@eslint-community/regexpp@4.11.0': {} '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.1 @@ -6039,14 +6206,14 @@ snapshots: '@eslint/js@8.57.0': {} - '@eslint/js@9.8.0': {} + '@eslint/js@9.9.0': {} '@gar/promisify@1.1.3': {} '@humanwhocodes/config-array@0.11.14': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -6057,7 +6224,102 @@ snapshots: '@iarna/toml@2.2.5': {} - '@inquirer/figures@1.0.3': {} + '@inquirer/checkbox@2.4.7': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/figures': 1.0.5 + '@inquirer/type': 1.5.2 + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.2 + + '@inquirer/confirm@3.1.22': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + + '@inquirer/core@9.0.10': + dependencies: + '@inquirer/figures': 1.0.5 + '@inquirer/type': 1.5.2 + '@types/mute-stream': 0.0.4 + '@types/node': 22.4.1 + '@types/wrap-ansi': 3.0.0 + ansi-escapes: 4.3.2 + cli-spinners: 2.9.2 + cli-width: 4.1.0 + mute-stream: 1.0.0 + signal-exit: 4.1.0 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.2 + + '@inquirer/editor@2.1.22': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + external-editor: 3.1.0 + + '@inquirer/expand@2.1.22': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + yoctocolors-cjs: 2.1.2 + + '@inquirer/figures@1.0.5': {} + + '@inquirer/input@2.2.9': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + + '@inquirer/number@1.0.10': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + + '@inquirer/password@2.1.22': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + ansi-escapes: 4.3.2 + + '@inquirer/prompts@5.3.8': + dependencies: + '@inquirer/checkbox': 2.4.7 + '@inquirer/confirm': 3.1.22 + '@inquirer/editor': 2.1.22 + '@inquirer/expand': 2.1.22 + '@inquirer/input': 2.2.9 + '@inquirer/number': 1.0.10 + '@inquirer/password': 2.1.22 + '@inquirer/rawlist': 2.2.4 + '@inquirer/search': 1.0.7 + '@inquirer/select': 2.4.7 + + '@inquirer/rawlist@2.2.4': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/type': 1.5.2 + yoctocolors-cjs: 2.1.2 + + '@inquirer/search@1.0.7': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/figures': 1.0.5 + '@inquirer/type': 1.5.2 + yoctocolors-cjs: 2.1.2 + + '@inquirer/select@2.4.7': + dependencies: + '@inquirer/core': 9.0.10 + '@inquirer/figures': 1.0.5 + '@inquirer/type': 1.5.2 + ansi-escapes: 4.3.2 + yoctocolors-cjs: 2.1.2 + + '@inquirer/type@1.5.2': + dependencies: + mute-stream: 1.0.0 '@isaacs/cliui@8.0.2': dependencies: @@ -6083,8 +6345,8 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 20.14.14 - '@types/yargs': 17.0.32 + '@types/node': 20.16.1 + '@types/yargs': 17.0.33 chalk: 4.1.2 '@jridgewell/gen-mapping@0.3.5': @@ -6115,13 +6377,22 @@ snapshots: '@malept/flatpak-bundler@0.4.0': dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) fs-extra: 9.1.0 lodash: 4.17.21 tmp-promise: 3.0.3 transitivePeerDependencies: - supports-color + '@mswjs/interceptors@0.33.2': + dependencies: + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/logger': 0.3.0 + '@open-draft/until': 2.1.0 + is-node-process: 1.2.0 + outvariant: 1.4.3 + strict-event-emitter: 0.5.1 + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -6207,6 +6478,15 @@ snapshots: dependencies: '@octokit/openapi-types': 22.2.0 + '@open-draft/deferred-promise@2.2.0': {} + + '@open-draft/logger@0.3.0': + dependencies: + is-node-process: 1.2.0 + outvariant: 1.4.3 + + '@open-draft/until@2.1.0': {} + '@pkgjs/parseargs@0.11.0': optional: true @@ -6214,141 +6494,113 @@ snapshots: '@pnpm/network.ca-file@1.0.2': dependencies: - graceful-fs: 4.2.10 - - '@pnpm/npm-conf@2.2.2': - dependencies: - '@pnpm/config.env-replace': 1.1.0 - '@pnpm/network.ca-file': 1.0.2 - config-chain: 1.1.13 - - '@promptbook/utils@0.57.0': - dependencies: - spacetrim: 0.11.27 - - '@puppeteer/browsers@1.4.6(typescript@5.5.4)': - dependencies: - debug: 4.3.4(supports-color@8.1.1) - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.3.0 - tar-fs: 3.0.4 - unbzip2-stream: 1.4.3 - yargs: 17.7.1 - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - optional: true + graceful-fs: 4.2.10 - '@puppeteer/browsers@1.9.1': + '@pnpm/npm-conf@2.2.2': dependencies: - debug: 4.3.4(supports-color@8.1.1) - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.3.1 - tar-fs: 3.0.4 - unbzip2-stream: 1.4.3 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color - optional: true + '@pnpm/config.env-replace': 1.1.0 + '@pnpm/network.ca-file': 1.0.2 + config-chain: 1.1.13 - '@puppeteer/browsers@2.2.3': + '@promptbook/utils@0.63.4': dependencies: - debug: 4.3.4(supports-color@8.1.1) + spacetrim: 0.11.39 + + '@puppeteer/browsers@2.3.1': + dependencies: + debug: 4.3.6(supports-color@8.1.1) extract-zip: 2.0.1 progress: 2.0.3 proxy-agent: 6.4.0 - semver: 7.6.0 - tar-fs: 3.0.5 + semver: 7.6.3 + tar-fs: 3.0.6 unbzip2-stream: 1.4.3 yargs: 17.7.2 transitivePeerDependencies: - supports-color - '@rollup/plugin-commonjs@26.0.1(rollup@4.20.0)': + '@rollup/plugin-commonjs@26.0.1(rollup@4.21.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.20.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) commondir: 1.0.1 estree-walker: 2.0.2 - glob: 10.4.2 + glob: 10.4.5 is-reference: 1.2.1 magic-string: 0.30.10 optionalDependencies: - rollup: 4.20.0 + rollup: 4.21.0 - '@rollup/plugin-json@6.1.0(rollup@4.20.0)': + '@rollup/plugin-json@6.1.0(rollup@4.21.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.20.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) optionalDependencies: - rollup: 4.20.0 + rollup: 4.21.0 - '@rollup/plugin-node-resolve@15.2.3(rollup@4.20.0)': + '@rollup/plugin-node-resolve@15.2.3(rollup@4.21.0)': dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.20.0) + '@rollup/pluginutils': 5.1.0(rollup@4.21.0) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.8 optionalDependencies: - rollup: 4.20.0 + rollup: 4.21.0 - '@rollup/pluginutils@5.1.0(rollup@4.20.0)': + '@rollup/pluginutils@5.1.0(rollup@4.21.0)': dependencies: '@types/estree': 1.0.5 estree-walker: 2.0.2 picomatch: 2.3.1 optionalDependencies: - rollup: 4.20.0 + rollup: 4.21.0 - '@rollup/rollup-android-arm-eabi@4.20.0': + '@rollup/rollup-android-arm-eabi@4.21.0': optional: true - '@rollup/rollup-android-arm64@4.20.0': + '@rollup/rollup-android-arm64@4.21.0': optional: true - '@rollup/rollup-darwin-arm64@4.20.0': + '@rollup/rollup-darwin-arm64@4.21.0': optional: true - '@rollup/rollup-darwin-x64@4.20.0': + '@rollup/rollup-darwin-x64@4.21.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.20.0': + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.20.0': + '@rollup/rollup-linux-arm-musleabihf@4.21.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.20.0': + '@rollup/rollup-linux-arm64-gnu@4.21.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.20.0': + '@rollup/rollup-linux-arm64-musl@4.21.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.20.0': + '@rollup/rollup-linux-riscv64-gnu@4.21.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.20.0': + '@rollup/rollup-linux-s390x-gnu@4.21.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.20.0': + '@rollup/rollup-linux-x64-gnu@4.21.0': optional: true - '@rollup/rollup-linux-x64-musl@4.20.0': + '@rollup/rollup-linux-x64-musl@4.21.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.20.0': + '@rollup/rollup-win32-arm64-msvc@4.21.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.20.0': + '@rollup/rollup-win32-ia32-msvc@4.21.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.20.0': + '@rollup/rollup-win32-x64-msvc@4.21.0': optional: true '@sec-ant/readable-stream@0.4.1': {} @@ -6374,7 +6626,7 @@ snapshots: '@testing-library/dom@8.20.1': dependencies: '@babel/code-frame': 7.24.7 - '@babel/runtime': 7.24.7 + '@babel/runtime': 7.24.8 '@types/aria-query': 5.0.4 aria-query: 5.1.3 chalk: 4.1.2 @@ -6382,12 +6634,12 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/webdriverio@3.2.1(webdriverio@9.0.0-alpha.369)': + '@testing-library/webdriverio@3.2.1(webdriverio@9.0.4)': dependencies: - '@babel/runtime': 7.24.7 + '@babel/runtime': 7.24.8 '@testing-library/dom': 8.20.1 simmerjs: 0.5.6 - webdriverio: 9.0.0-alpha.369 + webdriverio: 9.0.4 '@tootallnate/once@2.0.0': {} @@ -6399,7 +6651,7 @@ snapshots: dependencies: '@types/http-cache-semantics': 4.0.4 '@types/keyv': 3.1.4 - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/responselike': 1.0.3 '@types/debug@4.1.12': @@ -6422,12 +6674,12 @@ snapshots: '@types/fs-extra@9.0.13': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/http-cache-semantics@4.0.4': {} @@ -6445,7 +6697,7 @@ snapshots: '@types/keyv@3.1.4': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/minimatch@5.1.2': {} @@ -6453,15 +6705,31 @@ snapshots: '@types/ms@0.7.34': {} + '@types/mute-stream@0.0.4': + dependencies: + '@types/node': 20.16.1 + + '@types/node@20.14.12': + dependencies: + undici-types: 5.26.5 + '@types/node@20.14.14': dependencies: undici-types: 5.26.5 + '@types/node@20.16.1': + dependencies: + undici-types: 6.19.8 + + '@types/node@22.4.1': + dependencies: + undici-types: 6.19.8 + '@types/normalize-package-data@2.4.4': {} '@types/plist@3.0.5': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 xmlbuilder: 15.1.1 optional: true @@ -6469,7 +6737,7 @@ snapshots: '@types/responselike@1.0.3': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/shelljs@0.8.15': dependencies: @@ -6485,19 +6753,21 @@ snapshots: '@types/which@2.0.2': {} - '@types/ws@8.5.10': + '@types/wrap-ansi@3.0.0': {} + + '@types/ws@8.5.12': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/yargs-parser@21.0.3': {} - '@types/yargs@17.0.32': + '@types/yargs@17.0.33': dependencies: '@types/yargs-parser': 21.0.3 '@types/yauzl@2.10.3': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 optional: true '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': @@ -6524,17 +6794,17 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.5 + debug: 4.3.6(supports-color@8.1.1) eslint: 8.57.0 optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.13.1': + '@typescript-eslint/scope-manager@7.17.0': dependencies: - '@typescript-eslint/types': 7.13.1 - '@typescript-eslint/visitor-keys': 7.13.1 + '@typescript-eslint/types': 7.17.0 + '@typescript-eslint/visitor-keys': 7.17.0 '@typescript-eslint/scope-manager@7.18.0': dependencies: @@ -6545,7 +6815,7 @@ snapshots: dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) '@typescript-eslint/utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) eslint: 8.57.0 ts-api-utils: 1.3.0(typescript@5.5.4) optionalDependencies: @@ -6553,15 +6823,15 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@7.13.1': {} + '@typescript-eslint/types@7.17.0': {} '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/typescript-estree@7.13.1(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@7.17.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 7.13.1 - '@typescript-eslint/visitor-keys': 7.13.1 - debug: 4.3.6 + '@typescript-eslint/types': 7.17.0 + '@typescript-eslint/visitor-keys': 7.17.0 + debug: 4.3.6(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.5 @@ -6576,7 +6846,7 @@ snapshots: dependencies: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.5 @@ -6587,12 +6857,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.13.1(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/utils@7.17.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@typescript-eslint/scope-manager': 7.13.1 - '@typescript-eslint/types': 7.13.1 - '@typescript-eslint/typescript-estree': 7.13.1(typescript@5.5.4) + '@typescript-eslint/scope-manager': 7.17.0 + '@typescript-eslint/types': 7.17.0 + '@typescript-eslint/typescript-estree': 7.17.0(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color @@ -6609,9 +6879,9 @@ snapshots: - supports-color - typescript - '@typescript-eslint/visitor-keys@7.13.1': + '@typescript-eslint/visitor-keys@7.17.0': dependencies: - '@typescript-eslint/types': 7.13.1 + '@typescript-eslint/types': 7.17.0 eslint-visitor-keys: 3.4.3 '@typescript-eslint/visitor-keys@7.18.0': @@ -6621,21 +6891,21 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitest/coverage-v8@2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3))': + '@vitest/coverage-v8@2.0.5(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 5.0.6 istanbul-reports: 3.1.7 - magic-string: 0.30.10 + magic-string: 0.30.11 magicast: 0.3.4 std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3) + vitest: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6) transitivePeerDependencies: - supports-color @@ -6657,20 +6927,16 @@ snapshots: '@vitest/snapshot@1.6.0': dependencies: - magic-string: 0.30.10 + magic-string: 0.30.11 pathe: 1.1.2 pretty-format: 29.7.0 '@vitest/snapshot@2.0.5': dependencies: '@vitest/pretty-format': 2.0.5 - magic-string: 0.30.10 + magic-string: 0.30.11 pathe: 1.1.2 - '@vitest/spy@2.0.4': - dependencies: - tinyspy: 3.0.0 - '@vitest/spy@2.0.5': dependencies: tinyspy: 3.0.0 @@ -6682,32 +6948,32 @@ snapshots: loupe: 3.1.1 tinyrainbow: 1.2.0 - '@wdio/cli@9.0.0-alpha.426': + '@wdio/cli@9.0.4': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@vitest/snapshot': 1.6.0 - '@wdio/config': 9.0.0-alpha.426 - '@wdio/globals': 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/protocols': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 - '@wdio/utils': 9.0.0-alpha.426 + '@wdio/config': 9.0.4 + '@wdio/globals': 9.0.4(@wdio/logger@9.0.4) + '@wdio/logger': 9.0.4 + '@wdio/protocols': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 async-exit-hook: 2.0.1 chalk: 5.3.0 chokidar: 3.6.0 cli-spinners: 3.1.0 dotenv: 16.4.5 ejs: 3.1.10 - execa: 9.3.0 + execa: 9.3.1 import-meta-resolve: 4.1.0 - inquirer: 9.3.6 + inquirer: 10.1.8 lodash.flattendeep: 4.4.0 lodash.pickby: 4.6.0 lodash.union: 4.6.0 - read-pkg-up: 10.0.0 + read-pkg-up: 10.1.0 recursive-readdir: 2.2.3 - tsx: 4.16.5 - webdriverio: 9.0.0-alpha.426 + tsx: 4.17.0 + webdriverio: 9.0.4 yargs: 17.7.2 transitivePeerDependencies: - bufferutil @@ -6715,85 +6981,22 @@ snapshots: - supports-color - utf-8-validate - '@wdio/config@8.39.0': - dependencies: - '@wdio/logger': 8.38.0 - '@wdio/types': 8.39.0 - '@wdio/utils': 8.39.0 - decamelize: 6.0.0 - deepmerge-ts: 5.1.0 - glob: 10.4.5 - import-meta-resolve: 4.1.0 - transitivePeerDependencies: - - supports-color - optional: true - - '@wdio/config@9.0.0-alpha.367': - dependencies: - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/types': 9.0.0-alpha.367 - '@wdio/utils': 9.0.0-alpha.367 - decamelize: 6.0.0 - deepmerge-ts: 7.0.3 - glob: 10.4.5 - import-meta-resolve: 4.1.0 - transitivePeerDependencies: - - supports-color - - '@wdio/config@9.0.0-alpha.369': - dependencies: - '@wdio/logger': 9.0.0-alpha.369 - '@wdio/types': 9.0.0-alpha.369 - '@wdio/utils': 9.0.0-alpha.369 - decamelize: 6.0.0 - deepmerge-ts: 7.0.3 - glob: 10.4.5 - import-meta-resolve: 4.1.0 - transitivePeerDependencies: - - supports-color - - '@wdio/config@9.0.0-alpha.426': + '@wdio/config@9.0.4': dependencies: - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 - '@wdio/utils': 9.0.0-alpha.426 + '@wdio/logger': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 decamelize: 6.0.0 - deepmerge-ts: 7.0.3 + deepmerge-ts: 7.1.0 glob: 10.4.5 import-meta-resolve: 4.1.0 transitivePeerDependencies: - supports-color - '@wdio/globals@8.39.1(encoding@0.1.13)(typescript@5.5.4)': - optionalDependencies: - expect-webdriverio: 4.15.1(encoding@0.1.13)(typescript@5.5.4) - webdriverio: 8.39.1(encoding@0.1.13)(typescript@5.5.4) - transitivePeerDependencies: - - bufferutil - - devtools - - encoding - - supports-color - - typescript - - utf-8-validate - optional: true - - '@wdio/globals@9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4)': - optionalDependencies: - expect-webdriverio: 5.0.0-alpha.0(encoding@0.1.13)(typescript@5.5.4) - webdriverio: 9.0.0-alpha.367 - transitivePeerDependencies: - - bufferutil - - devtools - - encoding - - puppeteer-core - - supports-color - - typescript - - utf-8-validate - - '@wdio/globals@9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426)': + '@wdio/globals@9.0.4(@wdio/logger@9.0.4)': optionalDependencies: - expect-webdriverio: 5.0.0-alpha.2(@wdio/globals@9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426))(@wdio/logger@9.0.0-alpha.426)(webdriverio@9.0.0-alpha.426) - webdriverio: 9.0.0-alpha.426 + expect-webdriverio: 5.0.1(@wdio/globals@9.0.4(@wdio/logger@9.0.4))(@wdio/logger@9.0.4)(webdriverio@9.0.4) + webdriverio: 9.0.4 transitivePeerDependencies: - '@wdio/logger' - bufferutil @@ -6801,23 +7004,20 @@ snapshots: - supports-color - utf-8-validate - '@wdio/local-runner@9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4)': + '@wdio/local-runner@9.0.4': dependencies: - '@types/node': 20.14.14 - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/repl': 9.0.0-alpha.367 - '@wdio/runner': 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) - '@wdio/types': 9.0.0-alpha.367 + '@types/node': 20.16.1 + '@wdio/logger': 9.0.4 + '@wdio/repl': 9.0.4 + '@wdio/runner': 9.0.4 + '@wdio/types': 9.0.4 async-exit-hook: 2.0.1 split2: 4.2.0 stream-buffers: 3.0.3 transitivePeerDependencies: - bufferutil - - devtools - - encoding - puppeteer-core - supports-color - - typescript - utf-8-validate '@wdio/logger@8.38.0': @@ -6827,170 +7027,65 @@ snapshots: loglevel-plugin-prefix: 0.8.4 strip-ansi: 7.1.0 - '@wdio/logger@9.0.0-alpha.367': - dependencies: - chalk: 5.3.0 - loglevel: 1.9.1 - loglevel-plugin-prefix: 0.8.4 - strip-ansi: 7.1.0 - - '@wdio/logger@9.0.0-alpha.369': - dependencies: - chalk: 5.3.0 - loglevel: 1.9.1 - loglevel-plugin-prefix: 0.8.4 - strip-ansi: 7.1.0 - - '@wdio/logger@9.0.0-alpha.426': + '@wdio/logger@9.0.4': dependencies: chalk: 5.3.0 loglevel: 1.9.1 loglevel-plugin-prefix: 0.8.4 strip-ansi: 7.1.0 - '@wdio/mocha-framework@9.0.0-alpha.426': + '@wdio/mocha-framework@9.0.4': dependencies: '@types/mocha': 10.0.7 - '@types/node': 20.14.14 - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 - '@wdio/utils': 9.0.0-alpha.426 - mocha: 10.4.0 + '@types/node': 20.16.1 + '@wdio/logger': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 + mocha: 10.7.3 transitivePeerDependencies: - supports-color - '@wdio/protocols@8.38.0': - optional: true - - '@wdio/protocols@9.0.0-alpha.367': {} - - '@wdio/protocols@9.0.0-alpha.369': {} - - '@wdio/protocols@9.0.0-alpha.426': {} - - '@wdio/repl@8.24.12': - dependencies: - '@types/node': 20.14.14 - optional: true - - '@wdio/repl@9.0.0-alpha.367': - dependencies: - '@types/node': 20.14.14 - - '@wdio/repl@9.0.0-alpha.369': - dependencies: - '@types/node': 20.14.14 + '@wdio/protocols@9.0.4': {} - '@wdio/repl@9.0.0-alpha.426': + '@wdio/repl@9.0.4': dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 - '@wdio/runner@9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4)': + '@wdio/runner@9.0.4': dependencies: - '@types/node': 20.14.14 - '@wdio/config': 9.0.0-alpha.367 - '@wdio/globals': 9.0.0-alpha.367(encoding@0.1.13)(typescript@5.5.4) - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/types': 9.0.0-alpha.367 - '@wdio/utils': 9.0.0-alpha.367 - deepmerge-ts: 7.0.3 - expect-webdriverio: 5.0.0-alpha.0(encoding@0.1.13)(typescript@5.5.4) + '@types/node': 20.16.1 + '@wdio/config': 9.0.4 + '@wdio/globals': 9.0.4(@wdio/logger@9.0.4) + '@wdio/logger': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 + deepmerge-ts: 7.1.0 + expect-webdriverio: 5.0.1(@wdio/globals@9.0.4(@wdio/logger@9.0.4))(@wdio/logger@9.0.4)(webdriverio@9.0.4) gaze: 1.1.3 - webdriver: 9.0.0-alpha.367 - webdriverio: 9.0.0-alpha.367 + webdriver: 9.0.4 + webdriverio: 9.0.4 transitivePeerDependencies: - bufferutil - - devtools - - encoding - puppeteer-core - supports-color - - typescript - utf-8-validate - '@wdio/types@8.39.0': - dependencies: - '@types/node': 20.14.14 - optional: true - - '@wdio/types@9.0.0-alpha.367': - dependencies: - '@types/node': 20.14.14 - - '@wdio/types@9.0.0-alpha.369': - dependencies: - '@types/node': 20.14.14 - - '@wdio/types@9.0.0-alpha.426': + '@wdio/types@9.0.4': dependencies: - '@types/node': 20.14.14 - - '@wdio/utils@8.39.0': - dependencies: - '@puppeteer/browsers': 1.9.1 - '@wdio/logger': 8.38.0 - '@wdio/types': 8.39.0 - decamelize: 6.0.0 - deepmerge-ts: 5.1.0 - edgedriver: 5.6.1 - geckodriver: 4.4.1 - get-port: 7.1.0 - import-meta-resolve: 4.1.0 - locate-app: 2.4.19 - safaridriver: 0.1.2 - split2: 4.2.0 - wait-port: 1.1.0 - transitivePeerDependencies: - - supports-color - optional: true - - '@wdio/utils@9.0.0-alpha.367': - dependencies: - '@puppeteer/browsers': 2.2.3 - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/types': 9.0.0-alpha.367 - decamelize: 6.0.0 - deepmerge-ts: 7.0.3 - edgedriver: 5.6.1 - geckodriver: 4.4.1 - get-port: 7.1.0 - import-meta-resolve: 4.1.0 - locate-app: 2.4.19 - safaridriver: 0.1.2 - split2: 4.2.0 - wait-port: 1.1.0 - transitivePeerDependencies: - - supports-color - - '@wdio/utils@9.0.0-alpha.369': - dependencies: - '@puppeteer/browsers': 2.2.3 - '@wdio/logger': 9.0.0-alpha.369 - '@wdio/types': 9.0.0-alpha.369 - decamelize: 6.0.0 - deepmerge-ts: 7.0.3 - edgedriver: 5.6.0 - geckodriver: 4.4.1 - get-port: 7.1.0 - import-meta-resolve: 4.1.0 - locate-app: 2.4.19 - safaridriver: 0.1.2 - split2: 4.2.0 - wait-port: 1.1.0 - transitivePeerDependencies: - - supports-color + '@types/node': 20.16.1 - '@wdio/utils@9.0.0-alpha.426': + '@wdio/utils@9.0.4': dependencies: - '@puppeteer/browsers': 2.2.3 - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 + '@puppeteer/browsers': 2.3.1 + '@wdio/logger': 9.0.4 + '@wdio/types': 9.0.4 decamelize: 6.0.0 - deepmerge-ts: 7.0.3 + deepmerge-ts: 7.1.0 edgedriver: 5.6.1 - geckodriver: 4.4.1 + geckodriver: 4.4.3 get-port: 7.1.0 import-meta-resolve: 4.1.0 - locate-app: 2.4.19 + locate-app: 2.4.27 safaridriver: 0.1.2 split2: 4.2.0 wait-port: 1.1.0 @@ -7079,8 +7174,6 @@ snapshots: '@xtuc/long@4.2.2': {} - '@zip.js/zip.js@2.7.45': {} - '@zip.js/zip.js@2.7.48': {} abbrev@1.1.1: {} @@ -7093,23 +7186,21 @@ snapshots: dependencies: acorn: 8.12.1 - acorn-jsx@5.3.2(acorn@8.12.0): + acorn-jsx@5.3.2(acorn@8.12.1): dependencies: - acorn: 8.12.0 - - acorn@8.12.0: {} + acorn: 8.12.1 acorn@8.12.1: {} agent-base@6.0.2: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color agent-base@7.1.1: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -7137,7 +7228,7 @@ snapshots: dependencies: string-width: 4.2.3 - ansi-colors@4.1.1: {} + ansi-colors@4.1.3: {} ansi-escapes@4.3.2: dependencies: @@ -7176,7 +7267,7 @@ snapshots: app-builder-bin@5.0.0-alpha.6: {} - app-builder-lib@25.0.1(dmg-builder@25.0.1(electron-builder-squirrel-windows@25.0.1))(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)): + app-builder-lib@25.0.2(dmg-builder@25.0.2(electron-builder-squirrel-windows@25.0.2))(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)): dependencies: '@develar/schema-utils': 2.6.5 '@electron/notarize': 2.3.2 @@ -7187,14 +7278,14 @@ snapshots: '@types/fs-extra': 9.0.13 async-exit-hook: 2.0.1 bluebird-lst: 1.0.9 - builder-util: 25.0.1 + builder-util: 25.0.2 builder-util-runtime: 9.2.5 chromium-pickle-js: 0.2.0 - debug: 4.3.6 - dmg-builder: 25.0.1(electron-builder-squirrel-windows@25.0.1) + debug: 4.3.6(supports-color@8.1.1) + dmg-builder: 25.0.2(electron-builder-squirrel-windows@25.0.2) ejs: 3.1.10 - electron-builder-squirrel-windows: 25.0.1(dmg-builder@25.0.1) - electron-publish: 25.0.1 + electron-builder-squirrel-windows: 25.0.2(dmg-builder@25.0.2) + electron-publish: 25.0.2 form-data: 4.0.0 fs-extra: 10.1.0 hosted-git-info: 4.1.0 @@ -7403,8 +7494,8 @@ snapshots: browserslist@4.23.3: dependencies: - caniuse-lite: 1.0.30001649 - electron-to-chromium: 1.5.5 + caniuse-lite: 1.0.30001651 + electron-to-chromium: 1.5.11 node-releases: 2.0.18 update-browserslist-db: 1.1.0(browserslist@4.23.3) @@ -7426,14 +7517,14 @@ snapshots: builder-util-runtime@9.2.5: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) sax: 1.4.1 transitivePeerDependencies: - supports-color builder-util-runtime@9.2.5-alpha.3: dependencies: - debug: 4.3.6 + debug: 4.3.5 sax: 1.4.1 transitivePeerDependencies: - supports-color @@ -7459,7 +7550,7 @@ snapshots: transitivePeerDependencies: - supports-color - builder-util@25.0.1: + builder-util@25.0.2: dependencies: 7zip-bin: 5.2.0 '@types/debug': 4.1.12 @@ -7468,7 +7559,7 @@ snapshots: builder-util-runtime: 9.2.5 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) fs-extra: 10.1.0 http-proxy-agent: 5.0.0 https-proxy-agent: 5.0.1 @@ -7549,7 +7640,7 @@ snapshots: camelcase@7.0.1: {} - caniuse-lite@1.0.30001649: {} + caniuse-lite@1.0.30001651: {} chai@5.1.1: dependencies: @@ -7585,27 +7676,19 @@ snapshots: domhandler: 5.0.3 domutils: 3.1.0 - cheerio@1.0.0-rc.12: + cheerio@1.0.0: dependencies: cheerio-select: 2.1.0 dom-serializer: 2.0.0 domhandler: 5.0.3 domutils: 3.1.0 - htmlparser2: 8.0.2 + encoding-sniffer: 0.2.0 + htmlparser2: 9.1.0 parse5: 7.1.2 parse5-htmlparser2-tree-adapter: 7.0.0 - - chokidar@3.5.3: - dependencies: - anymatch: 3.1.3 - braces: 3.0.3 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 + parse5-parser-stream: 7.1.2 + undici: 6.19.8 + whatwg-mimetype: 4.0.0 chokidar@3.6.0: dependencies: @@ -7623,12 +7706,6 @@ snapshots: chrome-trace-event@1.0.4: {} - chromium-bidi@0.4.16(devtools-protocol@0.0.1147663): - dependencies: - devtools-protocol: 0.0.1147663 - mitt: 3.0.0 - optional: true - chromium-pickle-js@0.2.0: {} ci-info@3.9.0: {} @@ -7801,13 +7878,6 @@ snapshots: dependencies: cross-spawn: 7.0.3 - cross-fetch@4.0.0(encoding@0.1.13): - dependencies: - node-fetch: 2.7.0(encoding@0.1.13) - transitivePeerDependencies: - - encoding - optional: true - cross-spawn@6.0.5: dependencies: nice-try: 1.0.5 @@ -7857,19 +7927,15 @@ snapshots: dependencies: ms: 2.0.0 - debug@4.3.4(supports-color@8.1.1): - dependencies: - ms: 2.1.2 - optionalDependencies: - supports-color: 8.1.1 - debug@4.3.5: dependencies: ms: 2.1.2 - debug@4.3.6: + debug@4.3.6(supports-color@8.1.1): dependencies: ms: 2.1.2 + optionalDependencies: + supports-color: 8.1.1 decamelize@4.0.0: {} @@ -7908,10 +7974,7 @@ snapshots: deep-is@0.1.4: {} - deepmerge-ts@5.1.0: - optional: true - - deepmerge-ts@7.0.3: {} + deepmerge-ts@7.1.0: {} deepmerge@4.3.1: {} @@ -7961,15 +8024,9 @@ snapshots: detect-node@2.1.0: optional: true - devtools-protocol@0.0.1147663: - optional: true - - devtools-protocol@0.0.1302984: - optional: true - diff-sequences@29.6.3: {} - diff@5.0.0: {} + diff@5.2.0: {} dir-compare@4.2.0: dependencies: @@ -7980,10 +8037,10 @@ snapshots: dependencies: path-type: 4.0.0 - dmg-builder@25.0.1(electron-builder-squirrel-windows@25.0.1): + dmg-builder@25.0.2(electron-builder-squirrel-windows@25.0.2): dependencies: - app-builder-lib: 25.0.1(dmg-builder@25.0.1(electron-builder-squirrel-windows@25.0.1))(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)) - builder-util: 25.0.1 + app-builder-lib: 25.0.2(dmg-builder@25.0.2(electron-builder-squirrel-windows@25.0.2))(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)) + builder-util: 25.0.2 builder-util-runtime: 9.2.5 fs-extra: 10.1.0 iconv-lite: 0.6.3 @@ -8048,15 +8105,6 @@ snapshots: '@types/which': 2.0.2 which: 2.0.2 - edgedriver@5.6.0: - dependencies: - '@wdio/logger': 8.38.0 - '@zip.js/zip.js': 2.7.45 - decamelize: 6.0.0 - edge-paths: 3.0.5 - node-fetch: 3.3.2 - which: 4.0.0 - edgedriver@5.6.1: dependencies: '@wdio/logger': 8.38.0 @@ -8069,26 +8117,26 @@ snapshots: ejs@3.1.10: dependencies: - jake: 10.9.1 + jake: 10.9.2 - electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1): + electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2): dependencies: - app-builder-lib: 25.0.1(dmg-builder@25.0.1(electron-builder-squirrel-windows@25.0.1))(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)) + app-builder-lib: 25.0.2(dmg-builder@25.0.2(electron-builder-squirrel-windows@25.0.2))(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)) archiver: 5.3.2 - builder-util: 25.0.1 + builder-util: 25.0.2 fs-extra: 10.1.0 transitivePeerDependencies: - bluebird - dmg-builder - supports-color - electron-builder@25.0.1(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)): + electron-builder@25.0.2(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)): dependencies: - app-builder-lib: 25.0.1(dmg-builder@25.0.1(electron-builder-squirrel-windows@25.0.1))(electron-builder-squirrel-windows@25.0.1(dmg-builder@25.0.1)) - builder-util: 25.0.1 + app-builder-lib: 25.0.2(dmg-builder@25.0.2(electron-builder-squirrel-windows@25.0.2))(electron-builder-squirrel-windows@25.0.2(dmg-builder@25.0.2)) + builder-util: 25.0.2 builder-util-runtime: 9.2.5 chalk: 4.1.2 - dmg-builder: 25.0.1(electron-builder-squirrel-windows@25.0.1) + dmg-builder: 25.0.2(electron-builder-squirrel-windows@25.0.2) fs-extra: 10.1.0 is-ci: 3.0.1 lazy-val: 1.0.5 @@ -8100,10 +8148,10 @@ snapshots: - electron-builder-squirrel-windows - supports-color - electron-publish@25.0.1: + electron-publish@25.0.2: dependencies: '@types/fs-extra': 9.0.13 - builder-util: 25.0.1 + builder-util: 25.0.2 builder-util-runtime: 9.2.5 chalk: 4.1.2 fs-extra: 10.1.0 @@ -8112,11 +8160,9 @@ snapshots: transitivePeerDependencies: - supports-color - electron-to-chromium@1.5.3: {} - - electron-to-chromium@1.5.5: {} + electron-to-chromium@1.5.11: {} - electron@31.3.1: + electron@31.4.0: dependencies: '@electron/get': 2.0.3 '@types/node': 20.14.14 @@ -8130,6 +8176,11 @@ snapshots: emoji-regex@9.2.2: {} + encoding-sniffer@0.2.0: + dependencies: + iconv-lite: 0.6.3 + whatwg-encoding: 3.1.1 + encoding@0.1.13: dependencies: iconv-lite: 0.6.3 @@ -8139,11 +8190,6 @@ snapshots: dependencies: once: 1.4.0 - enhanced-resolve@5.17.0: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - enhanced-resolve@5.17.1: dependencies: graceful-fs: 4.2.11 @@ -8210,6 +8256,33 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.23.0: + optionalDependencies: + '@esbuild/aix-ppc64': 0.23.0 + '@esbuild/android-arm': 0.23.0 + '@esbuild/android-arm64': 0.23.0 + '@esbuild/android-x64': 0.23.0 + '@esbuild/darwin-arm64': 0.23.0 + '@esbuild/darwin-x64': 0.23.0 + '@esbuild/freebsd-arm64': 0.23.0 + '@esbuild/freebsd-x64': 0.23.0 + '@esbuild/linux-arm': 0.23.0 + '@esbuild/linux-arm64': 0.23.0 + '@esbuild/linux-ia32': 0.23.0 + '@esbuild/linux-loong64': 0.23.0 + '@esbuild/linux-mips64el': 0.23.0 + '@esbuild/linux-ppc64': 0.23.0 + '@esbuild/linux-riscv64': 0.23.0 + '@esbuild/linux-s390x': 0.23.0 + '@esbuild/linux-x64': 0.23.0 + '@esbuild/netbsd-x64': 0.23.0 + '@esbuild/openbsd-arm64': 0.23.0 + '@esbuild/openbsd-x64': 0.23.0 + '@esbuild/sunos-x64': 0.23.0 + '@esbuild/win32-arm64': 0.23.0 + '@esbuild/win32-ia32': 0.23.0 + '@esbuild/win32-x64': 0.23.0 + escalade@3.1.2: {} escape-goat@4.0.0: {} @@ -8232,18 +8305,18 @@ snapshots: dependencies: eslint: 8.57.0 - eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)): + eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)(vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6)): dependencies: - '@typescript-eslint/utils': 7.13.1(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 7.17.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) - vitest: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3) + vitest: 2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-wdio@8.37.0: {} + eslint-plugin-wdio@9.0.4: {} eslint-scope@5.1.1: dependencies: @@ -8260,7 +8333,7 @@ snapshots: eslint@8.57.0: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.1 + '@eslint-community/regexpp': 4.11.0 '@eslint/eslintrc': 2.1.4 '@eslint/js': 8.57.0 '@humanwhocodes/config-array': 0.11.14 @@ -8270,13 +8343,13 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 - debug: 4.3.5 + debug: 4.3.6(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 eslint-visitor-keys: 3.4.3 espree: 9.6.1 - esquery: 1.5.0 + esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 @@ -8302,13 +8375,13 @@ snapshots: espree@9.6.1: dependencies: - acorn: 8.12.0 - acorn-jsx: 5.3.2(acorn@8.12.0) + acorn: 8.12.1 + acorn-jsx: 5.3.2(acorn@8.12.1) eslint-visitor-keys: 3.4.3 esprima@4.0.1: {} - esquery@1.5.0: + esquery@1.6.0: dependencies: estraverse: 5.3.0 @@ -8368,72 +8441,34 @@ snapshots: signal-exit: 4.1.0 strip-final-newline: 3.0.0 - execa@9.3.0: + execa@9.3.1: dependencies: '@sindresorhus/merge-streams': 4.0.0 cross-spawn: 7.0.3 figures: 6.1.0 get-stream: 9.0.1 - human-signals: 7.0.0 + human-signals: 8.0.0 is-plain-obj: 4.1.0 is-stream: 4.0.1 npm-run-path: 5.3.0 - pretty-ms: 9.0.0 + pretty-ms: 9.1.0 signal-exit: 4.1.0 strip-final-newline: 4.0.0 yoctocolors: 2.1.1 - expand-tilde@2.0.2: - dependencies: - homedir-polyfill: 1.0.3 - - expect-webdriverio@4.15.1(encoding@0.1.13)(typescript@5.5.4): - dependencies: - '@vitest/snapshot': 1.6.0 - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - optionalDependencies: - '@wdio/globals': 8.39.1(encoding@0.1.13)(typescript@5.5.4) - '@wdio/logger': 8.38.0 - webdriverio: 8.39.1(encoding@0.1.13)(typescript@5.5.4) - transitivePeerDependencies: - - bufferutil - - devtools - - encoding - - supports-color - - typescript - - utf-8-validate - optional: true - - expect-webdriverio@5.0.0-alpha.0(encoding@0.1.13)(typescript@5.5.4): - dependencies: - '@vitest/snapshot': 1.6.0 - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - optionalDependencies: - '@wdio/globals': 8.39.1(encoding@0.1.13)(typescript@5.5.4) - '@wdio/logger': 8.38.0 - webdriverio: 8.39.1(encoding@0.1.13)(typescript@5.5.4) - transitivePeerDependencies: - - bufferutil - - devtools - - encoding - - supports-color - - typescript - - utf-8-validate - - expect-webdriverio@5.0.0-alpha.2(@wdio/globals@9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426))(@wdio/logger@9.0.0-alpha.426)(webdriverio@9.0.0-alpha.426): + expand-tilde@2.0.2: dependencies: - '@vitest/snapshot': 1.6.0 - '@wdio/globals': 9.0.0-alpha.426(@wdio/logger@9.0.0-alpha.426) - '@wdio/logger': 9.0.0-alpha.426 + homedir-polyfill: 1.0.3 + + expect-webdriverio@5.0.1(@wdio/globals@9.0.4(@wdio/logger@9.0.4))(@wdio/logger@9.0.4)(webdriverio@9.0.4): + dependencies: + '@vitest/snapshot': 2.0.5 + '@wdio/globals': 9.0.4(@wdio/logger@9.0.4) + '@wdio/logger': 9.0.4 expect: 29.7.0 jest-matcher-utils: 29.7.0 lodash.isequal: 4.5.0 - webdriverio: 9.0.0-alpha.426 - optional: true + webdriverio: 9.0.4 expect@29.7.0: dependencies: @@ -8453,7 +8488,7 @@ snapshots: extract-zip@2.0.1: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: @@ -8563,7 +8598,7 @@ snapshots: flora-colossus@2.0.0: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) fs-extra: 10.1.0 transitivePeerDependencies: - supports-color @@ -8633,7 +8668,7 @@ snapshots: galactus@1.0.0: dependencies: - debug: 4.3.6 + debug: 4.3.5 flora-colossus: 2.0.0 fs-extra: 10.1.0 transitivePeerDependencies: @@ -8654,9 +8689,9 @@ snapshots: dependencies: globule: 1.3.4 - geckodriver@4.4.1: + geckodriver@4.4.3: dependencies: - '@wdio/logger': 8.38.0 + '@wdio/logger': 9.0.4 '@zip.js/zip.js': 2.7.48 decamelize: 6.0.0 http-proxy-agent: 7.0.2 @@ -8713,7 +8748,7 @@ snapshots: '@sec-ant/readable-stream': 0.4.1 is-stream: 4.0.1 - get-tsconfig@4.7.5: + get-tsconfig@4.7.6: dependencies: resolve-pkg-maps: 1.0.0 @@ -8721,7 +8756,7 @@ snapshots: dependencies: basic-ftp: 5.0.5 data-uri-to-buffer: 6.0.2 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) fs-extra: 11.2.0 transitivePeerDependencies: - supports-color @@ -8745,19 +8780,10 @@ snapshots: glob-to-regexp@0.4.1: {} - glob@10.4.2: - dependencies: - foreground-child: 3.2.1 - jackspeak: 3.4.0 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.0 - path-scurry: 1.11.1 - glob@10.4.5: dependencies: foreground-child: 3.2.1 - jackspeak: 3.4.2 + jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 package-json-from-dist: 1.0.0 @@ -8875,21 +8901,6 @@ snapshots: p-cancelable: 2.1.1 responselike: 2.0.1 - got@12.6.1: - dependencies: - '@sindresorhus/is': 5.6.0 - '@szmarczak/http-timer': 5.0.1 - cacheable-lookup: 7.0.0 - cacheable-request: 10.2.14 - decompress-response: 6.0.0 - form-data-encoder: 2.1.4 - get-stream: 6.0.1 - http2-wrapper: 2.2.1 - lowercase-keys: 3.0.0 - p-cancelable: 3.0.0 - responselike: 3.0.0 - optional: true - got@13.0.0: dependencies: '@sindresorhus/is': 5.6.0 @@ -8960,7 +8971,7 @@ snapshots: htmlfy@0.2.1: {} - htmlparser2@8.0.2: + htmlparser2@9.1.0: dependencies: domelementtype: 2.3.0 domhandler: 5.0.3 @@ -8973,14 +8984,14 @@ snapshots: dependencies: '@tootallnate/once': 2.0.0 agent-base: 6.0.2 - debug: 4.3.6 + debug: 4.3.5 transitivePeerDependencies: - supports-color http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -8997,14 +9008,14 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.3.6 + debug: 4.3.5 transitivePeerDependencies: - supports-color https-proxy-agent@7.0.5: dependencies: agent-base: 7.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -9012,7 +9023,7 @@ snapshots: human-signals@5.0.0: {} - human-signals@7.0.0: {} + human-signals@8.0.0: {} humanize-ms@1.2.1: dependencies: @@ -9068,24 +9079,19 @@ snapshots: ini@4.1.1: {} - inquirer@9.3.2: + inquirer@10.1.8: dependencies: - '@inquirer/figures': 1.0.3 + '@inquirer/prompts': 5.3.8 + '@inquirer/type': 1.5.2 + '@types/mute-stream': 0.0.4 ansi-escapes: 4.3.2 - cli-width: 4.1.0 - external-editor: 3.1.0 mute-stream: 1.0.0 - ora: 5.4.1 run-async: 3.0.0 rxjs: 7.8.1 - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 6.2.0 - yoctocolors-cjs: 2.1.2 - inquirer@9.3.6: + inquirer@9.3.2: dependencies: - '@inquirer/figures': 1.0.3 + '@inquirer/figures': 1.0.5 ansi-escapes: 4.3.2 cli-width: 4.1.0 external-editor: 3.1.0 @@ -9148,7 +9154,7 @@ snapshots: dependencies: ci-info: 3.9.0 - is-core-module@2.14.0: + is-core-module@2.15.0: dependencies: hasown: 2.0.2 @@ -9193,6 +9199,8 @@ snapshots: is-module@1.0.0: {} + is-node-process@1.2.0: {} + is-npm@6.0.0: {} is-number-object@1.0.7: @@ -9300,7 +9308,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -9310,19 +9318,13 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - jackspeak@3.4.0: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - - jackspeak@3.4.2: + jackspeak@3.4.3: dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jake@10.9.1: + jake@10.9.2: dependencies: async: 3.2.5 chalk: 4.1.2 @@ -9360,7 +9362,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 20.14.14 + '@types/node': 20.16.1 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -9368,7 +9370,7 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -9445,9 +9447,6 @@ snapshots: dependencies: json-buffer: 3.0.1 - ky@0.33.3: - optional: true - ky@1.4.0: {} latest-version@9.0.0: @@ -9475,11 +9474,11 @@ snapshots: lines-and-columns@2.0.4: {} - lint-staged@15.2.8: + lint-staged@15.2.9: dependencies: chalk: 5.3.0 commander: 12.1.0 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) execa: 8.0.1 lilconfig: 3.1.2 listr2: 8.2.4 @@ -9517,9 +9516,9 @@ snapshots: loader-runner@4.3.0: {} - locate-app@2.4.19: + locate-app@2.4.27: dependencies: - '@promptbook/utils': 0.57.0 + '@promptbook/utils': 0.63.4 type-fest: 2.13.0 userhome: 1.0.0 @@ -9620,8 +9619,6 @@ snapshots: lowercase-keys@3.0.0: {} - lru-cache@10.2.2: {} - lru-cache@10.4.3: {} lru-cache@6.0.0: @@ -9638,10 +9635,14 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + magic-string@0.30.11: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + magicast@0.3.4: dependencies: - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 source-map-js: 1.2.0 make-dir@4.0.0: @@ -9726,10 +9727,6 @@ snapshots: dependencies: brace-expansion: 1.1.11 - minimatch@5.0.1: - dependencies: - brace-expansion: 2.0.1 - minimatch@5.1.6: dependencies: brace-expansion: 2.0.1 @@ -9777,35 +9774,29 @@ snapshots: minipass: 3.3.6 yallist: 4.0.0 - mitt@3.0.0: - optional: true - - mkdirp-classic@0.5.3: - optional: true - mkdirp@1.0.4: {} - mocha@10.4.0: + mocha@10.7.3: dependencies: - ansi-colors: 4.1.1 + ansi-colors: 4.1.3 browser-stdout: 1.3.1 - chokidar: 3.5.3 - debug: 4.3.4(supports-color@8.1.1) - diff: 5.0.0 + chokidar: 3.6.0 + debug: 4.3.6(supports-color@8.1.1) + diff: 5.2.0 escape-string-regexp: 4.0.0 find-up: 5.0.0 glob: 8.1.0 he: 1.2.0 js-yaml: 4.1.0 log-symbols: 4.1.0 - minimatch: 5.0.1 + minimatch: 5.1.6 ms: 2.1.3 - serialize-javascript: 6.0.0 + serialize-javascript: 6.0.2 strip-json-comments: 3.1.1 supports-color: 8.1.1 - workerpool: 6.2.1 + workerpool: 6.5.1 yargs: 16.2.0 - yargs-parser: 20.2.4 + yargs-parser: 20.2.9 yargs-unparser: 2.0.0 ms@2.0.0: {} @@ -9832,13 +9823,11 @@ snapshots: nice-try@1.0.5: {} - nock@13.5.4: + nock@14.0.0-beta.9: dependencies: - debug: 4.3.5 + '@mswjs/interceptors': 0.33.2 json-stringify-safe: 5.0.1 propagate: 2.0.1 - transitivePeerDependencies: - - supports-color node-abi@3.65.0: dependencies: @@ -9895,13 +9884,6 @@ snapshots: semver: 5.7.2 validate-npm-package-license: 3.0.4 - normalize-package-data@6.0.1: - dependencies: - hosted-git-info: 7.0.2 - is-core-module: 2.14.0 - semver: 7.6.3 - validate-npm-package-license: 3.0.4 - normalize-package-data@6.0.2: dependencies: hosted-git-info: 7.0.2 @@ -10018,6 +10000,8 @@ snapshots: os-tmpdir@1.0.2: {} + outvariant@1.4.3: {} + p-cancelable@2.1.1: {} p-cancelable@3.0.0: {} @@ -10072,7 +10056,7 @@ snapshots: dependencies: '@tootallnate/quickjs-emscripten': 0.23.0 agent-base: 7.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) get-uri: 6.0.3 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.5 @@ -10128,7 +10112,7 @@ snapshots: dependencies: '@babel/code-frame': 7.24.7 index-to-position: 0.1.2 - type-fest: 4.21.0 + type-fest: 4.23.0 parse-ms@4.0.0: {} @@ -10147,6 +10131,10 @@ snapshots: domhandler: 5.0.3 parse5: 7.1.2 + parse5-parser-stream@7.1.2: + dependencies: + parse5: 7.1.2 + parse5@7.1.2: dependencies: entities: 4.5.0 @@ -10169,7 +10157,7 @@ snapshots: path-scurry@1.11.1: dependencies: - lru-cache: 10.2.2 + lru-cache: 10.4.3 minipass: 7.1.2 path-type@2.0.0: @@ -10210,7 +10198,7 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss@8.4.39: + postcss@8.4.41: dependencies: nanoid: 3.3.7 picocolors: 1.0.1 @@ -10236,7 +10224,7 @@ snapshots: ansi-styles: 5.2.0 react-is: 18.3.1 - pretty-ms@9.0.0: + pretty-ms@9.1.0: dependencies: parse-ms: 4.0.0 @@ -10259,38 +10247,10 @@ snapshots: protocols@2.0.1: {} - proxy-agent@6.3.0: - dependencies: - agent-base: 7.1.1 - debug: 4.3.6 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 - lru-cache: 7.18.3 - pac-proxy-agent: 7.0.2 - proxy-from-env: 1.1.0 - socks-proxy-agent: 8.0.4 - transitivePeerDependencies: - - supports-color - optional: true - - proxy-agent@6.3.1: - dependencies: - agent-base: 7.1.1 - debug: 4.3.6 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 - lru-cache: 7.18.3 - pac-proxy-agent: 7.0.2 - proxy-from-env: 1.1.0 - socks-proxy-agent: 8.0.4 - transitivePeerDependencies: - - supports-color - optional: true - proxy-agent@6.4.0: dependencies: agent-base: 7.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.5 lru-cache: 7.18.3 @@ -10315,23 +10275,6 @@ snapshots: dependencies: escape-goat: 4.0.0 - puppeteer-core@20.9.0(encoding@0.1.13)(typescript@5.5.4): - dependencies: - '@puppeteer/browsers': 1.4.6(typescript@5.5.4) - chromium-bidi: 0.4.16(devtools-protocol@0.0.1147663) - cross-fetch: 4.0.0(encoding@0.1.13) - debug: 4.3.4(supports-color@8.1.1) - devtools-protocol: 0.0.1147663 - ws: 8.13.0 - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - optional: true - query-selector-shadow-dom@1.0.1: {} querystringify@2.2.0: {} @@ -10359,7 +10302,7 @@ snapshots: read-binary-file-arch@1.0.6: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -10376,13 +10319,13 @@ snapshots: dependencies: find-up-simple: 1.0.0 read-pkg: 9.0.1 - type-fest: 4.20.1 + type-fest: 4.23.0 - read-pkg-up@10.0.0: + read-pkg-up@10.1.0: dependencies: find-up: 6.3.0 read-pkg: 8.1.0 - type-fest: 3.13.1 + type-fest: 4.25.0 read-pkg-up@2.0.0: dependencies: @@ -10400,14 +10343,14 @@ snapshots: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.2 parse-json: 7.1.1 - type-fest: 4.21.0 + type-fest: 4.25.0 read-pkg@9.0.1: dependencies: '@types/normalize-package-data': 2.4.4 - normalize-package-data: 6.0.1 + normalize-package-data: 6.0.2 parse-json: 8.1.0 - type-fest: 4.20.1 + type-fest: 4.23.0 unicorn-magic: 0.1.0 readable-stream@2.3.8: @@ -10532,7 +10475,7 @@ snapshots: resolve@1.22.8: dependencies: - is-core-module: 2.14.0 + is-core-module: 2.15.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -10587,26 +10530,26 @@ snapshots: sprintf-js: 1.1.3 optional: true - rollup@4.20.0: + rollup@4.21.0: dependencies: '@types/estree': 1.0.5 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.20.0 - '@rollup/rollup-android-arm64': 4.20.0 - '@rollup/rollup-darwin-arm64': 4.20.0 - '@rollup/rollup-darwin-x64': 4.20.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.20.0 - '@rollup/rollup-linux-arm-musleabihf': 4.20.0 - '@rollup/rollup-linux-arm64-gnu': 4.20.0 - '@rollup/rollup-linux-arm64-musl': 4.20.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.20.0 - '@rollup/rollup-linux-riscv64-gnu': 4.20.0 - '@rollup/rollup-linux-s390x-gnu': 4.20.0 - '@rollup/rollup-linux-x64-gnu': 4.20.0 - '@rollup/rollup-linux-x64-musl': 4.20.0 - '@rollup/rollup-win32-arm64-msvc': 4.20.0 - '@rollup/rollup-win32-ia32-msvc': 4.20.0 - '@rollup/rollup-win32-x64-msvc': 4.20.0 + '@rollup/rollup-android-arm-eabi': 4.21.0 + '@rollup/rollup-android-arm64': 4.21.0 + '@rollup/rollup-darwin-arm64': 4.21.0 + '@rollup/rollup-darwin-x64': 4.21.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.0 + '@rollup/rollup-linux-arm-musleabihf': 4.21.0 + '@rollup/rollup-linux-arm64-gnu': 4.21.0 + '@rollup/rollup-linux-arm64-musl': 4.21.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.0 + '@rollup/rollup-linux-riscv64-gnu': 4.21.0 + '@rollup/rollup-linux-s390x-gnu': 4.21.0 + '@rollup/rollup-linux-x64-gnu': 4.21.0 + '@rollup/rollup-linux-x64-musl': 4.21.0 + '@rollup/rollup-win32-arm64-msvc': 4.21.0 + '@rollup/rollup-win32-ia32-msvc': 4.21.0 + '@rollup/rollup-win32-x64-msvc': 4.21.0 fsevents: 2.3.3 rrweb-cssom@0.6.0: {} @@ -10662,10 +10605,6 @@ snapshots: semver@6.3.1: {} - semver@7.6.0: - dependencies: - lru-cache: 6.0.0 - semver@7.6.2: {} semver@7.6.3: {} @@ -10679,10 +10618,6 @@ snapshots: type-fest: 0.13.1 optional: true - serialize-javascript@6.0.0: - dependencies: - randombytes: 2.1.0 - serialize-javascript@6.0.2: dependencies: randombytes: 2.1.0 @@ -10781,7 +10716,7 @@ snapshots: socks-proxy-agent@7.0.0: dependencies: agent-base: 6.0.2 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -10789,7 +10724,7 @@ snapshots: socks-proxy-agent@8.0.4: dependencies: agent-base: 7.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -10810,7 +10745,7 @@ snapshots: source-map@0.7.4: {} - spacetrim@0.11.27: {} + spacetrim@0.11.39: {} spdx-correct@3.2.0: dependencies: @@ -10856,10 +10791,12 @@ snapshots: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.1.0 + text-decoder: 1.1.1 optionalDependencies: bare-events: 2.4.2 + strict-event-emitter@0.5.1: {} + string-argv@0.3.2: {} string-width@4.2.3: @@ -10920,7 +10857,7 @@ snapshots: sumchecker@3.0.1: dependencies: - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -10947,21 +10884,6 @@ snapshots: tapable@2.2.1: {} - tar-fs@3.0.4: - dependencies: - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 3.1.7 - optional: true - - tar-fs@3.0.5: - dependencies: - pump: 3.0.0 - tar-stream: 3.1.7 - optionalDependencies: - bare-fs: 2.3.1 - bare-path: 2.1.3 - tar-fs@3.0.6: dependencies: pump: 3.0.0 @@ -11004,10 +10926,10 @@ snapshots: jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 - terser: 5.31.3 + terser: 5.31.6 webpack: 5.93.0 - terser@5.31.3: + terser@5.31.6: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.12.1 @@ -11020,7 +10942,7 @@ snapshots: glob: 10.4.5 minimatch: 9.0.5 - text-decoder@1.1.0: + text-decoder@1.1.1: dependencies: b4a: 1.6.6 @@ -11032,7 +10954,7 @@ snapshots: dependencies: convert-hrtime: 5.0.0 - tinybench@2.8.0: {} + tinybench@2.9.0: {} tinypool@1.0.0: {} @@ -11084,48 +11006,48 @@ snapshots: ts-loader@9.5.1(typescript@5.5.4)(webpack@5.93.0): dependencies: chalk: 4.1.2 - enhanced-resolve: 5.17.0 + enhanced-resolve: 5.17.1 micromatch: 4.0.7 - semver: 7.6.2 + semver: 7.6.3 source-map: 0.7.4 typescript: 5.5.4 webpack: 5.93.0 tslib@2.6.3: {} - tsx@4.16.5: + tsx@4.17.0: dependencies: - esbuild: 0.21.5 - get-tsconfig: 4.7.5 + esbuild: 0.23.0 + get-tsconfig: 4.7.6 optionalDependencies: fsevents: 2.3.3 - turbo-darwin-64@2.0.12: + turbo-darwin-64@2.0.14: optional: true - turbo-darwin-arm64@2.0.12: + turbo-darwin-arm64@2.0.14: optional: true - turbo-linux-64@2.0.12: + turbo-linux-64@2.0.14: optional: true - turbo-linux-arm64@2.0.12: + turbo-linux-arm64@2.0.14: optional: true - turbo-windows-64@2.0.12: + turbo-windows-64@2.0.14: optional: true - turbo-windows-arm64@2.0.12: + turbo-windows-arm64@2.0.14: optional: true - turbo@2.0.12: + turbo@2.0.14: optionalDependencies: - turbo-darwin-64: 2.0.12 - turbo-darwin-arm64: 2.0.12 - turbo-linux-64: 2.0.12 - turbo-linux-arm64: 2.0.12 - turbo-windows-64: 2.0.12 - turbo-windows-arm64: 2.0.12 + turbo-darwin-64: 2.0.14 + turbo-darwin-arm64: 2.0.14 + turbo-linux-64: 2.0.14 + turbo-linux-arm64: 2.0.14 + turbo-windows-64: 2.0.14 + turbo-windows-arm64: 2.0.14 type-check@0.4.0: dependencies: @@ -11146,9 +11068,9 @@ snapshots: type-fest@3.13.1: {} - type-fest@4.20.1: {} + type-fest@4.23.0: {} - type-fest@4.21.0: {} + type-fest@4.25.0: {} typedarray-to-buffer@3.1.5: dependencies: @@ -11163,6 +11085,10 @@ snapshots: undici-types@5.26.5: {} + undici-types@6.19.8: {} + + undici@6.19.8: {} + unicorn-magic@0.1.0: {} unique-filename@2.0.1: @@ -11202,7 +11128,7 @@ snapshots: is-npm: 6.0.0 latest-version: 9.0.0 pupa: 3.1.0 - semver: 7.6.3 + semver: 7.6.2 semver-diff: 4.0.0 xdg-basedir: 5.1.0 @@ -11242,13 +11168,13 @@ snapshots: extsprintf: 1.4.1 optional: true - vite-node@2.0.5(@types/node@20.14.14)(terser@5.31.3): + vite-node@2.0.5(@types/node@20.14.14)(terser@5.31.6): dependencies: cac: 6.7.14 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) pathe: 1.1.2 tinyrainbow: 1.2.0 - vite: 5.3.4(@types/node@20.14.14)(terser@5.31.3) + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.6) transitivePeerDependencies: - '@types/node' - less @@ -11259,17 +11185,17 @@ snapshots: - supports-color - terser - vite@5.3.4(@types/node@20.14.14)(terser@5.31.3): + vite@5.3.5(@types/node@20.14.14)(terser@5.31.6): dependencies: esbuild: 0.21.5 - postcss: 8.4.39 - rollup: 4.20.0 + postcss: 8.4.41 + rollup: 4.21.0 optionalDependencies: '@types/node': 20.14.14 fsevents: 2.3.3 - terser: 5.31.3 + terser: 5.31.6 - vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.3): + vitest@2.0.5(@types/node@20.14.14)(jsdom@24.1.1)(terser@5.31.6): dependencies: '@ampproject/remapping': 2.3.0 '@vitest/expect': 2.0.5 @@ -11279,16 +11205,16 @@ snapshots: '@vitest/spy': 2.0.5 '@vitest/utils': 2.0.5 chai: 5.1.1 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) execa: 8.0.1 - magic-string: 0.30.10 + magic-string: 0.30.11 pathe: 1.1.2 std-env: 3.7.0 - tinybench: 2.8.0 + tinybench: 2.9.0 tinypool: 1.0.0 tinyrainbow: 1.2.0 - vite: 5.3.4(@types/node@20.14.14)(terser@5.31.3) - vite-node: 2.0.5(@types/node@20.14.14)(terser@5.31.3) + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.6) + vite-node: 2.0.5(@types/node@20.14.14)(terser@5.31.6) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.14.14 @@ -11310,11 +11236,11 @@ snapshots: dependencies: chalk: 4.1.2 commander: 9.5.0 - debug: 4.3.6 + debug: 4.3.6(supports-color@8.1.1) transitivePeerDependencies: - supports-color - watchpack@2.4.1: + watchpack@2.4.2: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.11 @@ -11325,187 +11251,35 @@ snapshots: web-streams-polyfill@3.3.3: {} - webdriver@8.39.0: - dependencies: - '@types/node': 20.14.14 - '@types/ws': 8.5.10 - '@wdio/config': 8.39.0 - '@wdio/logger': 8.38.0 - '@wdio/protocols': 8.38.0 - '@wdio/types': 8.39.0 - '@wdio/utils': 8.39.0 - deepmerge-ts: 5.1.0 - got: 12.6.1 - ky: 0.33.3 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - optional: true - - webdriver@9.0.0-alpha.367: - dependencies: - '@types/node': 20.14.14 - '@types/ws': 8.5.10 - '@wdio/config': 9.0.0-alpha.367 - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/protocols': 9.0.0-alpha.367 - '@wdio/types': 9.0.0-alpha.367 - '@wdio/utils': 9.0.0-alpha.367 - deepmerge-ts: 7.0.3 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - webdriver@9.0.0-alpha.369: + webdriver@9.0.4: dependencies: - '@types/node': 20.14.14 - '@types/ws': 8.5.10 - '@wdio/config': 9.0.0-alpha.369 - '@wdio/logger': 9.0.0-alpha.369 - '@wdio/protocols': 9.0.0-alpha.369 - '@wdio/types': 9.0.0-alpha.369 - '@wdio/utils': 9.0.0-alpha.369 - deepmerge-ts: 7.0.3 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - webdriver@9.0.0-alpha.426: - dependencies: - '@types/node': 20.14.14 - '@types/ws': 8.5.10 - '@wdio/config': 9.0.0-alpha.426 - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/protocols': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 - '@wdio/utils': 9.0.0-alpha.426 - deepmerge-ts: 7.0.3 + '@types/node': 20.16.1 + '@types/ws': 8.5.12 + '@wdio/config': 9.0.4 + '@wdio/logger': 9.0.4 + '@wdio/protocols': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 + deepmerge-ts: 7.1.0 ws: 8.18.0 transitivePeerDependencies: - bufferutil - supports-color - utf-8-validate - webdriverio@8.39.1(encoding@0.1.13)(typescript@5.5.4): - dependencies: - '@types/node': 20.14.14 - '@wdio/config': 8.39.0 - '@wdio/logger': 8.38.0 - '@wdio/protocols': 8.38.0 - '@wdio/repl': 8.24.12 - '@wdio/types': 8.39.0 - '@wdio/utils': 8.39.0 - archiver: 7.0.1 - aria-query: 5.3.0 - css-shorthand-properties: 1.1.1 - css-value: 0.0.1 - devtools-protocol: 0.0.1302984 - grapheme-splitter: 1.0.4 - import-meta-resolve: 4.1.0 - is-plain-obj: 4.1.0 - jszip: 3.10.1 - lodash.clonedeep: 4.5.0 - lodash.zip: 4.2.0 - minimatch: 9.0.5 - puppeteer-core: 20.9.0(encoding@0.1.13)(typescript@5.5.4) - query-selector-shadow-dom: 1.0.1 - resq: 1.11.0 - rgb2hex: 0.2.5 - serialize-error: 11.0.3 - webdriver: 8.39.0 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - typescript - - utf-8-validate - optional: true - - webdriverio@9.0.0-alpha.367: - dependencies: - '@types/node': 20.14.14 - '@wdio/config': 9.0.0-alpha.367 - '@wdio/logger': 9.0.0-alpha.367 - '@wdio/protocols': 9.0.0-alpha.367 - '@wdio/repl': 9.0.0-alpha.367 - '@wdio/types': 9.0.0-alpha.367 - '@wdio/utils': 9.0.0-alpha.367 - archiver: 7.0.1 - aria-query: 5.3.0 - cheerio: 1.0.0-rc.12 - css-shorthand-properties: 1.1.1 - css-value: 0.0.1 - grapheme-splitter: 1.0.4 - htmlfy: 0.2.1 - import-meta-resolve: 4.1.0 - is-plain-obj: 4.1.0 - jszip: 3.10.1 - lodash.clonedeep: 4.5.0 - lodash.zip: 4.2.0 - minimatch: 9.0.5 - query-selector-shadow-dom: 1.0.1 - resq: 1.11.0 - rgb2hex: 0.2.5 - serialize-error: 11.0.3 - urlpattern-polyfill: 10.0.0 - webdriver: 9.0.0-alpha.367 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - webdriverio@9.0.0-alpha.369: - dependencies: - '@types/node': 20.14.14 - '@wdio/config': 9.0.0-alpha.369 - '@wdio/logger': 9.0.0-alpha.369 - '@wdio/protocols': 9.0.0-alpha.369 - '@wdio/repl': 9.0.0-alpha.369 - '@wdio/types': 9.0.0-alpha.369 - '@wdio/utils': 9.0.0-alpha.369 - archiver: 7.0.1 - aria-query: 5.3.0 - cheerio: 1.0.0-rc.12 - css-shorthand-properties: 1.1.1 - css-value: 0.0.1 - grapheme-splitter: 1.0.4 - htmlfy: 0.2.1 - import-meta-resolve: 4.1.0 - is-plain-obj: 4.1.0 - jszip: 3.10.1 - lodash.clonedeep: 4.5.0 - lodash.zip: 4.2.0 - minimatch: 9.0.5 - query-selector-shadow-dom: 1.0.1 - resq: 1.11.0 - rgb2hex: 0.2.5 - serialize-error: 11.0.3 - urlpattern-polyfill: 10.0.0 - webdriver: 9.0.0-alpha.369 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - webdriverio@9.0.0-alpha.426: + webdriverio@9.0.4: dependencies: - '@types/node': 20.14.14 + '@types/node': 20.16.1 '@types/sinonjs__fake-timers': 8.1.5 - '@wdio/config': 9.0.0-alpha.426 - '@wdio/logger': 9.0.0-alpha.426 - '@wdio/protocols': 9.0.0-alpha.426 - '@wdio/repl': 9.0.0-alpha.426 - '@wdio/types': 9.0.0-alpha.426 - '@wdio/utils': 9.0.0-alpha.426 + '@wdio/config': 9.0.4 + '@wdio/logger': 9.0.4 + '@wdio/protocols': 9.0.4 + '@wdio/repl': 9.0.4 + '@wdio/types': 9.0.4 + '@wdio/utils': 9.0.4 archiver: 7.0.1 aria-query: 5.3.0 - cheerio: 1.0.0-rc.12 + cheerio: 1.0.0 css-shorthand-properties: 1.1.1 css-value: 0.0.1 grapheme-splitter: 1.0.4 @@ -11521,7 +11295,7 @@ snapshots: rgb2hex: 0.2.5 serialize-error: 11.0.3 urlpattern-polyfill: 10.0.0 - webdriver: 9.0.0-alpha.426 + webdriver: 9.0.4 transitivePeerDependencies: - bufferutil - supports-color @@ -11557,7 +11331,7 @@ snapshots: schema-utils: 3.3.0 tapable: 2.2.1 terser-webpack-plugin: 5.3.10(webpack@5.93.0) - watchpack: 2.4.1 + watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: - '@swc/core' @@ -11636,7 +11410,7 @@ snapshots: word-wrap@1.2.5: {} - workerpool@6.2.1: {} + workerpool@6.5.1: {} wrap-ansi@6.2.0: dependencies: @@ -11671,9 +11445,6 @@ snapshots: signal-exit: 3.0.7 typedarray-to-buffer: 3.1.5 - ws@8.13.0: - optional: true - ws@8.18.0: {} xdg-basedir@5.1.0: {} @@ -11697,7 +11468,7 @@ snapshots: yaml@2.5.0: {} - yargs-parser@20.2.4: {} + yargs-parser@20.2.9: {} yargs-parser@21.1.1: {} @@ -11716,18 +11487,7 @@ snapshots: require-directory: 2.1.1 string-width: 4.2.3 y18n: 5.0.8 - yargs-parser: 20.2.4 - - yargs@17.7.1: - dependencies: - cliui: 8.0.1 - escalade: 3.1.2 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 21.1.1 - optional: true + yargs-parser: 20.2.9 yargs@17.7.2: dependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 7c346086..ffd7dbe1 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,9 +1,11 @@ packages: - - 'packages/e2e' - - 'packages/@wdio_electron-types' - - 'packages/@wdio_electron-utils' - - 'packages/wdio-electron-service' - 'apps/builder-cjs' - 'apps/builder-esm' - 'apps/forge-cjs' - 'apps/forge-esm' + - 'apps/no-binary-cjs' + - 'apps/no-binary-esm' + - 'e2e' + - 'packages/@wdio_electron-types' + - 'packages/@wdio_electron-utils' + - 'packages/wdio-electron-service' diff --git a/scripts/init-forge-apps.ts b/scripts/init-forge-apps.ts index 777716d2..27309771 100644 --- a/scripts/init-forge-apps.ts +++ b/scripts/init-forge-apps.ts @@ -21,7 +21,10 @@ shell.cd(path.join(__dirname, '..')); const packageManager = shell.exec('pnpm pkg get packageManager').stdout.trim(); shell.exec('pnpm pkg delete packageManager'); -for (const app of ['forge-esm', 'forge-cjs']) { +// ascertain target apps +const apps = process.argv[2] ? [`forge-${process.argv[2]}`] : ['forge-esm', 'forge-cjs']; + +for (const app of apps) { // navigate to directory of target app shell.cd(path.join(__dirname, '..', 'apps', app)); diff --git a/scripts/init-windows-ci.ts b/scripts/init-windows-ci.ts deleted file mode 100644 index 59296a36..00000000 --- a/scripts/init-windows-ci.ts +++ /dev/null @@ -1,25 +0,0 @@ -// Running E2Es on Windows CI requires Electron 29.x to ensure the tests pass. -// This script updates the repo so that Electron 29.x is installed where required. -import url from 'node:url'; -import path from 'node:path'; - -import shell from 'shelljs'; - -const electronVersion = '^29.4.5'; - -// read dirname -const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); - -for (const app of ['forge-esm', 'forge-cjs', 'builder-esm', 'builder-cjs']) { - // navigate to directory of target app - shell.cd(path.join(__dirname, '..', 'apps', app)); - - // set the version of Electron - shell.exec(`pnpm pkg set devDependencies.electron=${electronVersion}`); -} - -// navigate to e2e directory -shell.cd(path.join(__dirname, '..', 'packages', 'e2e')); - -// set the version of Electron -shell.exec(`pnpm pkg set dependencies.electron=${electronVersion}`); diff --git a/turbo.json b/turbo.json index 0c16b3a4..faf64330 100644 --- a/turbo.json +++ b/turbo.json @@ -20,6 +20,44 @@ "//#lint": { "inputs": ["**/*.{j,mj,cj,t}s"] }, + "@repo/e2e#test:e2e:builder-cjs": { + "dependsOn": ["example-builder-cjs#build", "wdio-electron-service#build", "@repo/e2e#test:e2e:builder-esm"] + }, + "@repo/e2e#test:e2e:builder-esm": { + "dependsOn": ["example-builder-esm#build", "wdio-electron-service#build"] + }, + "@repo/e2e#test:e2e:forge-cjs": { + "dependsOn": ["example-forge-cjs#build", "wdio-electron-service#build", "@repo/e2e#test:e2e:forge-esm"] + }, + "@repo/e2e#test:e2e:forge-esm": { + "dependsOn": ["example-forge-esm#build", "wdio-electron-service#build"] + }, + "@repo/e2e#test:e2e:no-binary-cjs": { + "dependsOn": ["example-no-binary-cjs#build", "wdio-electron-service#build", "@repo/e2e#test:e2e:no-binary-esm"] + }, + "@repo/e2e#test:e2e:no-binary-esm": { + "dependsOn": ["example-no-binary-esm#build", "example-no-binary-cjs#build", "wdio-electron-service#build"] + }, + "@repo/e2e#test:e2e-mac-universal:forge-cjs": { + "dependsOn": [ + "example-forge-cjs#build:mac-universal", + "wdio-electron-service#build", + "@repo/e2e#test:e2e-mac-universal:forge-esm" + ] + }, + "@repo/e2e#test:e2e-mac-universal:forge-esm": { + "dependsOn": ["example-forge-esm#build:mac-universal", "wdio-electron-service#build"] + }, + "@repo/e2e#test:e2e-mac-universal:builder-cjs": { + "dependsOn": [ + "example-builder-cjs#build:mac-universal", + "wdio-electron-service#build", + "@repo/e2e#test:e2e-mac-universal:builder-esm" + ] + }, + "@repo/e2e#test:e2e-mac-universal:builder-esm": { + "dependsOn": ["example-builder-esm#build:mac-universal", "wdio-electron-service#build"] + }, "@wdio/electron-types#build": { "dependsOn": ["//#lint", "//#format:check", "test:unit"], "outputs": ["dist/**"] @@ -50,6 +88,14 @@ "clean:dist": { "cache": false }, + "example-builder-cjs#build": { + "dependsOn": ["^build", "example-builder-esm#build"], + "outputs": ["dist/**"] + }, + "example-builder-esm#build": { + "dependsOn": ["^build", "@repo/e2e#test:e2e:no-binary-cjs"], + "outputs": ["dist/**"] + }, "example-forge-cjs#build": { "dependsOn": ["//#init-forge:apps", "^build", "example-forge-esm#build"], "outputs": ["out/**"] @@ -58,12 +104,12 @@ "dependsOn": ["//#init-forge:apps", "^build"], "outputs": ["out/**"] }, - "example-builder-cjs#build": { - "dependsOn": ["^build", "example-builder-esm#build"], + "example-no-binary-cjs#build": { + "dependsOn": ["^build"], "outputs": ["dist/**"] }, - "example-builder-esm#build": { - "dependsOn": ["^build"], + "example-no-binary-esm#build": { + "dependsOn": ["^build", "example-no-binary-cjs#build"], "outputs": ["dist/**"] }, "example-builder-cjs#build:mac-universal": { @@ -82,44 +128,13 @@ "dependsOn": ["//#init-forge:apps:mac-universal", "^build", "example-builder-cjs#build:mac-universal"], "outputs": ["out/**"] }, + "logs": {}, "test": {}, "test:dev": { "dependsOn": ["^build"], "persistent": true, "cache": false }, - "@repo/e2e#test:e2e:forge-cjs": { - "dependsOn": ["example-forge-cjs#build", "wdio-electron-service#build", "@repo/e2e#test:e2e:forge-esm"] - }, - "@repo/e2e#test:e2e:forge-esm": { - "dependsOn": ["example-forge-esm#build", "wdio-electron-service#build"] - }, - "@repo/e2e#test:e2e:builder-cjs": { - "dependsOn": ["example-builder-cjs#build", "wdio-electron-service#build", "@repo/e2e#test:e2e:builder-esm"] - }, - "@repo/e2e#test:e2e:builder-esm": { - "dependsOn": ["example-builder-esm#build", "wdio-electron-service#build"] - }, - "@repo/e2e#test:e2e-mac-universal:forge-cjs": { - "dependsOn": [ - "example-forge-cjs#build:mac-universal", - "wdio-electron-service#build", - "@repo/e2e#test:e2e-mac-universal:forge-esm" - ] - }, - "@repo/e2e#test:e2e-mac-universal:forge-esm": { - "dependsOn": ["example-forge-esm#build:mac-universal", "wdio-electron-service#build"] - }, - "@repo/e2e#test:e2e-mac-universal:builder-cjs": { - "dependsOn": [ - "example-builder-cjs#build:mac-universal", - "wdio-electron-service#build", - "@repo/e2e#test:e2e-mac-universal:builder-esm" - ] - }, - "@repo/e2e#test:e2e-mac-universal:builder-esm": { - "dependsOn": ["example-builder-esm#build:mac-universal", "wdio-electron-service#build"] - }, "test:unit": { "dependsOn": ["^build"] },