diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index cb4ad500f..000000000 --- a/.eslintignore +++ /dev/null @@ -1,9 +0,0 @@ -/packages/**/build -/packages/**/cjs -/packages/**/node_modules -/packages/node_modules -/packages/**/coverage -/tests/typings -*.d.ts -packages/wdio-protocols/src/protocols/webdriverBidi.ts -packages/webdriverio/third_party/fake-timers.js diff --git a/.eslintrc.cjs b/.eslintrc.cjs deleted file mode 100644 index 3925ecf98..000000000 --- a/.eslintrc.cjs +++ /dev/null @@ -1,76 +0,0 @@ -/** @type {import('eslint').Linter.Config} */ -const config = { - root: true, - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint', 'unicorn', 'import'], - extends: ['eslint:recommended'], - env: { - node: true, - es6: true, - }, - parserOptions: { - ecmaVersion: 2020, - sourceType: 'module', - }, - rules: { - quotes: ['error', 'single', { avoidEscape: true }], - camelcase: ['error', { properties: 'never' }], - semi: ['error', 'never'], - indent: [2, 4], - eqeqeq: ['error', 'always'], - - 'prefer-const': 'error', - 'no-multiple-empty-lines': [2, { max: 1, maxEOF: 1 }], - 'array-bracket-spacing': ['error', 'never'], - 'brace-style': ['error', '1tbs', { allowSingleLine: true }], - 'comma-spacing': ['error', { before: false, after: true }], - 'no-lonely-if': 'error', - 'dot-notation': 'error', - 'no-else-return': 'error', - 'no-tabs': 'error', - 'no-trailing-spaces': [ - 'error', - { - skipBlankLines: false, - ignoreComments: false, - }, - ], - 'no-var': 'error', - 'unicode-bom': ['error', 'never'], - curly: ['error', 'all'], - 'object-curly-spacing': ['error', 'always'], - 'keyword-spacing': ['error'], - 'require-atomic-updates': 0, - 'linebreak-style': ['error', 'unix'], - 'unicorn/prefer-node-protocol': ['error'], - 'import/extensions': ['error', 'ignorePackages'], - 'no-restricted-syntax': [ - 'error', - 'IfStatement > ExpressionStatement > AssignmentExpression', - ], - 'unicorn/prefer-ternary': 'error', - 'no-dupe-class-members': 'off' - }, - overrides: [ - { - files: ['*.ts'], - rules: { - // see https://stackoverflow.com/questions/55280555/typescript-eslint-eslint-plugin-error-route-is-defined-but-never-used-no-un - 'no-unused-vars': 'off', - '@typescript-eslint/no-unused-vars': 'error', - '@typescript-eslint/consistent-type-imports': 'error', - 'no-undef': 'off', - // allow overloads - 'no-redeclare': 'off', - }, - }, - { - files: ['*.test.ts'], - rules: { - 'dot-notation': 'off', - }, - }, - ], -} - -module.exports = config diff --git a/.gitignore b/.gitignore index 9e683f613..ce6568279 100644 --- a/.gitignore +++ b/.gitignore @@ -72,6 +72,7 @@ packages/**/cjs/ /*.ts !.eslintrc.js !vitest.config.ts +!eslint.config.mjs packages/**/package-lock.json .DS_Store e2e/screenshot.pdf diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 000000000..57c4f56f0 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,72 @@ +import wdioEslint, { globals } from '@wdio/eslint' + +export default wdioEslint.config([ + { + /** + * Eslint ignore patterns for the whole project + */ + ignores: [ + 'packages/**/build', + 'packages/**/cjs', + 'packages/**/node_modules', + 'packages/node_modules', + 'packages/**/coverage', + 'tests/typings', + '**/*.d.ts', + 'packages/wdio-protocols/src/protocols/webdriverBidi.ts', + 'packages/webdriverio/third_party/fake-timers.js', + 'packages/wdio-protocols/src/commands' + ], + }, + { + /** + * Eslint rules for /example directory and unit tests + */ + files: [ + 'examples/**/*.ts', + 'examples/**/*.js', + 'packages/**/*.test.ts', + 'packages/**/tests/**/*.ts' + ], + languageOptions: { + globals: { + ...globals.mocha, + ...globals.jasmine, + browser: true, + $: true + } + }, + rules: { + 'no-undef': 'off', + 'no-unused-vars': 'off', + '@typescript-eslint/no-unused-vars': 'off', + '@typescript-eslint/no-explicit-any': 'off', + 'wdio/no-pause': 'off', + 'wdio/no-debug': 'off', + } + }, + { + /** + * Eslint rules for /tests folder + */ + files: [ + 'tests/**/*.ts', + 'tests/**/*.js', + ], + languageOptions: { + globals: { + ...globals.mocha, + ...globals.jasmine, + browser: true, + $: true + } + }, + rules: { + 'dot-notation': 'off', + 'wdio/no-pause': 'off', + 'wdio/no-debug': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-require-imports': 'off', + } + } +]) diff --git a/examples/appium/appium-draws-its-logo.js b/examples/appium/appium-draws-its-logo.js index ccde1b397..3572254f7 100644 --- a/examples/appium/appium-draws-its-logo.js +++ b/examples/appium/appium-draws-its-logo.js @@ -44,6 +44,6 @@ const webviewApp = '/path/to/app' ]) await driver.deleteSession() })().catch( - // eslint-disable-next-line no-console + console.error ) diff --git a/examples/bidi/scripting.js b/examples/bidi/scripting.js index 6e93c0e36..382522af9 100644 --- a/examples/bidi/scripting.js +++ b/examples/bidi/scripting.js @@ -13,6 +13,6 @@ await browser.scriptAddPreloadScript({ await browser.url('https://webdriver.io') await browser.pause(2000) -// eslint-disable-next-line no-undef + console.log(await browser.execute(() => window.bar)) await browser.deleteSession() diff --git a/examples/cloudservices/browserstack.js b/examples/cloudservices/browserstack.js index fcc267fd4..0ab7db98a 100644 --- a/examples/cloudservices/browserstack.js +++ b/examples/cloudservices/browserstack.js @@ -26,7 +26,7 @@ await resultLabel.click() await browser.pause(1000) const title = await browser.getTitle() -// eslint-disable-next-line + console.log(title) // returns "should return "WebdriverIO - click"" await browser.deleteSession() diff --git a/examples/cloudservices/kobiton.js b/examples/cloudservices/kobiton.js index 128670fae..5514b1adc 100644 --- a/examples/cloudservices/kobiton.js +++ b/examples/cloudservices/kobiton.js @@ -31,7 +31,7 @@ await resultLabel.click() await browser.pause(1000) const title = await browser.getTitle() -// eslint-disable-next-line + console.log(title) // returns "should return "WebdriverIO - click"" await browser.deleteSession() diff --git a/examples/cloudservices/saucelabs.js b/examples/cloudservices/saucelabs.js index dfb581610..e5bebe29d 100644 --- a/examples/cloudservices/saucelabs.js +++ b/examples/cloudservices/saucelabs.js @@ -32,7 +32,7 @@ await resultLabel.click() await browser.pause(1000) const title = await browser.getTitle() -// eslint-disable-next-line + console.log(title) // returns "should return "WebdriverIO - click"" await browser.deleteSession() diff --git a/examples/cloudservices/testingbot.js b/examples/cloudservices/testingbot.js index 61da6d67d..9728dab1c 100644 --- a/examples/cloudservices/testingbot.js +++ b/examples/cloudservices/testingbot.js @@ -25,7 +25,7 @@ await resultLabel.click() await browser.pause(1000) const title = await browser.getTitle() -// eslint-disable-next-line + console.log(title) // returns "should return "WebdriverIO - click"" await browser.deleteSession() diff --git a/examples/wdio.conf.js b/examples/wdio.conf.js index 329e61723..e71473afe 100644 --- a/examples/wdio.conf.js +++ b/examples/wdio.conf.js @@ -1,4 +1,3 @@ -/* eslint-disable no-unused-vars */ exports.config = { // ===================== diff --git a/examples/wdio/custom-reporter/mocha.test.js b/examples/wdio/custom-reporter/mocha.test.js index 00ae4d3d9..927690f85 100644 --- a/examples/wdio/custom-reporter/mocha.test.js +++ b/examples/wdio/custom-reporter/mocha.test.js @@ -1,4 +1,3 @@ -/* eslint-disable no-console */ describe('my app', () => { before(() => console.log('inner before hook')) diff --git a/examples/wdio/custom-reporter/my.custom.reporter.js b/examples/wdio/custom-reporter/my.custom.reporter.js index 70f7c5f55..e8a405bb1 100644 --- a/examples/wdio/custom-reporter/my.custom.reporter.js +++ b/examples/wdio/custom-reporter/my.custom.reporter.js @@ -1,4 +1,4 @@ -/* eslint-disable no-console */ + import WDIOReporter from '@wdio/reporter' export default class CustomReporter extends WDIOReporter { diff --git a/examples/wdio/mocha/wdio.conf.ts b/examples/wdio/mocha/wdio.conf.ts index 256c5db9e..5359eabf2 100644 --- a/examples/wdio/mocha/wdio.conf.ts +++ b/examples/wdio/mocha/wdio.conf.ts @@ -36,11 +36,11 @@ export const config: WebdriverIO.Config = { * hooks */ onPrepare: function() { - // eslint-disable-next-line + console.log('let\'s go') }, onComplete: function() { - // eslint-disable-next-line + console.log('that\'s it') } } diff --git a/examples/wdio/multiremote/.eslintrc b/examples/wdio/multiremote/.eslintrc deleted file mode 100644 index aeddfc7ce..000000000 --- a/examples/wdio/multiremote/.eslintrc +++ /dev/null @@ -1,11 +0,0 @@ -{ - "env": { - "mocha": true - }, - "globals": { - "browser": true, - "browserA": true, - "browserB": true, - "$": true - } -} diff --git a/examples/wdio/multiremote/wdio.conf.js b/examples/wdio/multiremote/wdio.conf.js index d4fb72642..983115381 100644 --- a/examples/wdio/multiremote/wdio.conf.js +++ b/examples/wdio/multiremote/wdio.conf.js @@ -1,4 +1,4 @@ -const path = require('node:path') +import path from 'node:path' exports.config = { /** diff --git a/package.json b/package.json index 8dc84f9a6..d79f6fcac 100644 --- a/package.json +++ b/package.json @@ -75,24 +75,22 @@ "@sveltejs/vite-plugin-svelte": "^3.1.1", "@types/archiver": "^6.0.2", "@types/cheerio": "^0.22.35", - "@types/eslint": "^8.56.10", "@types/inquirer": "^9.0.7", "@types/lodash.clonedeep": "^4.5.9", "@types/lodash.zip": "^4.2.9", "@types/mime-types": "^2.1.4", "@types/mocha": "^10.0.7", "@types/node": "^20.12.7", + "@types/recursive-readdir": "^2.2.4", "@types/shelljs": "^0.8.15", "@types/split2": "^4.2.3", "@types/unzipper": "^0.10.9", "@types/uuid": "^10.0.0", - "@typescript-eslint/eslint-plugin": "^7.7.0", - "@typescript-eslint/parser": "^7.7.0", - "@typescript-eslint/utils": "^7.7.0", "@vitejs/plugin-react": "^4.3.1", "@vitejs/plugin-vue": "^5.1.2", "@vitest/coverage-v8": "^2.0.5", "@wdio/config": "workspace:*", + "@wdio/eslint": "^0.0.5", "@wdio/repl": "workspace:*", "camelcase": "^8.0.0", "cddl": "^0.8.5", @@ -105,12 +103,9 @@ "dox": "^1.0.0", "ejs": "^3.1.10", "ejs-lint": "^2.0.0", - "eslint": "^8.57.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-unicorn": "^55.0.0", - "eslint-plugin-wdio": "workspace:*", "eta": "^3.4.0", "glob": "^11.0.0", + "globals": "^15.12.0", "husky": "^9.1.4", "inquirer": "^11.0.1", "jsdom": "^25.0.0", diff --git a/packages/eslint-plugin-wdio/src/utils/helpers.ts b/packages/eslint-plugin-wdio/src/utils/helpers.ts index e3650cf8a..5c6ae892d 100644 --- a/packages/eslint-plugin-wdio/src/utils/helpers.ts +++ b/packages/eslint-plugin-wdio/src/utils/helpers.ts @@ -1,10 +1,18 @@ -export const isCommand = function(expression: any, command: 'pause' | 'debug'): boolean { +import type { Rule } from 'eslint' + +type CallExpression = Parameters>[0] + +export const isCommand = function(expression: CallExpression, command: 'pause' | 'debug'): boolean { const callee = expression?.callee return ( callee && - callee?.object?.name === 'browser' && - callee?.property?.name === command + 'object' in callee && + 'name' in callee.object && + callee.object?.name === 'browser' && + 'property' in callee && + 'name' in callee.property && + callee.property?.name === command ) } diff --git a/packages/wdio-allure-reporter/src/common/api.ts b/packages/wdio-allure-reporter/src/common/api.ts index 52429b9e7..a49e8e45e 100644 --- a/packages/wdio-allure-reporter/src/common/api.ts +++ b/packages/wdio-allure-reporter/src/common/api.ts @@ -8,7 +8,9 @@ import { events } from '../constants.js' * @param {object} msg - event payload * @private */ +// eslint-disable-next-line @typescript-eslint/no-explicit-any const tellReporter = (event: string, msg: any = {}) => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any process.emit(event as any, msg) } @@ -212,6 +214,7 @@ export function addStep ( content, name = 'attachment', type = 'text/plain' + // eslint-disable-next-line @typescript-eslint/no-explicit-any }: any = {}, status: Status = Status.PASSED ) { diff --git a/packages/wdio-allure-reporter/src/reporter.ts b/packages/wdio-allure-reporter/src/reporter.ts index 2fc2a281c..d8709ffda 100644 --- a/packages/wdio-allure-reporter/src/reporter.ts +++ b/packages/wdio-allure-reporter/src/reporter.ts @@ -62,7 +62,8 @@ export default class AllureReporter extends WDIOReporter { this.registerListeners() - const processObj:any = process + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const processObj: any = process if (options.addConsoleLogs) { processObj.stdout.write = (chunk: string, encoding: BufferEncoding, callback: ((err?: Error) => void)) => { @@ -75,7 +76,9 @@ export default class AllureReporter extends WDIOReporter { } const { reportedEnvironmentVars } = this._options - reportedEnvironmentVars && this._allure.writeEnvironmentInfo(reportedEnvironmentVars) + if (reportedEnvironmentVars) { + this._allure.writeEnvironmentInfo(reportedEnvironmentVars) + } } attachLogs() { @@ -111,7 +114,7 @@ export default class AllureReporter extends WDIOReporter { ) } - attachJSON(name: string, json: any) { + attachJSON(name: string, json: unknown) { const isStr = typeof json === 'string' const content = isStr ? json : JSON.stringify(json, null, 2) @@ -502,7 +505,7 @@ export default class AllureReporter extends WDIOReporter { this._startStep(stepName as string) - if (!isEmpty(payload)) { + if (typeof payload === 'object' && !isEmpty(payload as object)) { this.attachJSON('Request', payload) } } @@ -510,10 +513,14 @@ export default class AllureReporter extends WDIOReporter { onAfterCommand(command: AfterCommandArgs) { const { disableWebdriverStepsReporting, disableWebdriverScreenshotsReporting } = this._options - const commandResult = command?.result?.value || command?.result?.error?.name || {} + const commandResult = ( + (command?.result as { value?: unknown } | undefined)?.value || + (command?.result as { error?: Error } | undefined)?.error?.name || + {} + ) const isScreenshot = isScreenshotCommand(command) if (!disableWebdriverScreenshotsReporting && isScreenshot && commandResult) { - this.attachScreenshot('Screenshot', Buffer.from(commandResult, 'base64')) + this.attachScreenshot('Screenshot', Buffer.from(commandResult as string, 'base64')) } if (disableWebdriverStepsReporting || this._isMultiremote || !this._state.currentStep) { @@ -666,7 +673,11 @@ export default class AllureReporter extends WDIOReporter { */ if (useCucumberStepReporter && !disableMochaHooks) { // closing the cucumber hook (in this case, it's reported as a step) - hook.error ? this.onTestFail(hook) : this.onTestPass() + if (hook.error) { + this.onTestFail(hook) + } else { + this.onTestPass() + } // remove cucumber hook (reported as a step) from a suite if it has no steps or attachments. const currentItem = this._state.currentAllureStepableEntity?.wrappedItem @@ -885,7 +896,7 @@ export default class AllureReporter extends WDIOReporter { addStep({ step - }: any) { + }: { step: { title: string, attachment: { name: string, content: string, type: ContentType }, status: AllureStatus } }) { if (!this._state.currentAllureStepableEntity) { return } @@ -902,7 +913,7 @@ export default class AllureReporter extends WDIOReporter { addArgument({ name, value - }: any) { + }: { name: string, value: string }) { if (!this._state.currentTest) { return } diff --git a/packages/wdio-allure-reporter/src/utils.ts b/packages/wdio-allure-reporter/src/utils.ts index cec471d9d..36b7aea40 100644 --- a/packages/wdio-allure-reporter/src/utils.ts +++ b/packages/wdio-allure-reporter/src/utils.ts @@ -50,7 +50,7 @@ export const getTestStatus = ( * @param object {Object} * @private */ -export const isEmpty = (object: any) => +export const isEmpty = (object: object) => !object || Object.keys(object).length === 0 /** diff --git a/packages/wdio-allure-reporter/tests/cucumber.suite.test.ts b/packages/wdio-allure-reporter/tests/cucumber.suite.test.ts index a2bff03bb..75ff3ca90 100644 --- a/packages/wdio-allure-reporter/tests/cucumber.suite.test.ts +++ b/packages/wdio-allure-reporter/tests/cucumber.suite.test.ts @@ -9,7 +9,7 @@ import { temporaryDirectory } from 'tempy' * this is not a real package and only used to utilize helper * methods without having to ignore them for test coverage */ -// eslint-disable-next-line + import { clean, getResults, mapBy } from './helpers/wdio-allure-helper' import AllureReporter from '../src/reporter.js' diff --git a/packages/wdio-allure-reporter/tests/helpers/wdio-allure-helper.ts b/packages/wdio-allure-reporter/tests/helpers/wdio-allure-helper.ts index 46d38e6c9..cd84dd77f 100644 --- a/packages/wdio-allure-reporter/tests/helpers/wdio-allure-helper.ts +++ b/packages/wdio-allure-reporter/tests/helpers/wdio-allure-helper.ts @@ -1,3 +1,4 @@ + import fs from 'node:fs' import os from 'node:os' import path from 'node:path' diff --git a/packages/wdio-allure-reporter/tests/suite.test.ts b/packages/wdio-allure-reporter/tests/suite.test.ts index 0687eca0c..12fb90202 100644 --- a/packages/wdio-allure-reporter/tests/suite.test.ts +++ b/packages/wdio-allure-reporter/tests/suite.test.ts @@ -13,7 +13,7 @@ import { TYPE } from '../src/types.js' * this is not a real package and only used to utilize helper * methods without having to ignore them for test coverage */ -// eslint-disable-next-line + import { clean, getResults, mapBy } from './helpers/wdio-allure-helper.js' import { runnerEnd, runnerStart } from './__fixtures__/runner.js' diff --git a/packages/wdio-appium-service/src/launcher.ts b/packages/wdio-appium-service/src/launcher.ts index ccc5d5d6b..c871211c1 100644 --- a/packages/wdio-appium-service/src/launcher.ts +++ b/packages/wdio-appium-service/src/launcher.ts @@ -304,12 +304,12 @@ export default class AppiumLauncher implements Services.ServiceInstance { try { const entryPath = await resolve(command, import.meta.url) return url.fileURLToPath(entryPath) - } catch (err: any) { + } catch (err) { const errorMessage = ( 'Appium is not installed locally. Please install via e.g. `npm i --save-dev appium`.\n' + 'If you use globally installed appium please add: `appium: { command: \'appium\' }`\n' + 'to your wdio.conf.js!\n\n' + - err.stack + (err as Error).stack ) log.error(errorMessage) throw new SevereServiceError(errorMessage) diff --git a/packages/wdio-browser-runner/src/browser/driver.ts b/packages/wdio-browser-runner/src/browser/driver.ts index 02c69e63c..bd5802b32 100644 --- a/packages/wdio-browser-runner/src/browser/driver.ts +++ b/packages/wdio-browser-runner/src/browser/driver.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ /// import { commands } from 'virtual:wdio' import { webdriverMonad, sessionEnvironmentDetector } from '@wdio/utils' @@ -80,7 +81,7 @@ export default class ProxyDriver { ? params.capabilities.alwaysMatch?.webSocketUrl : params.capabilities!.webSocketUrl if (webSocketUrl) { - Object.assign(bidiPrototype, initiateBidi(webSocketUrl as any as string)) + Object.assign(bidiPrototype, initiateBidi(webSocketUrl as unknown as string)) } /** diff --git a/packages/wdio-browser-runner/src/browser/expect.ts b/packages/wdio-browser-runner/src/browser/expect.ts index 9e355924d..116ed4c19 100644 --- a/packages/wdio-browser-runner/src/browser/expect.ts +++ b/packages/wdio-browser-runner/src/browser/expect.ts @@ -7,7 +7,7 @@ import { getCID } from './utils.js' import { WDIO_EVENT_NAME } from '../constants.js' declare type RawMatcherFn = { - (this: Context, actual: any, ...expected: Array): ExpectationResult; + (this: Context, actual: unknown, ...expected: Array): ExpectationResult; }; interface MatcherPayload { @@ -31,6 +31,7 @@ const COMMAND_TIMEOUT = 30 * 1000 // 30s * @returns a matcher result computed in the Node.js environment */ function createMatcher (matcherName: string) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any return async function (this: MatcherContext, context: WebdriverIO.Browser | WebdriverIO.Element | ChainablePromiseElement | ChainablePromiseArray, ...args: any[]) { const cid = getCID() if (!import.meta.hot || !cid) { @@ -68,7 +69,7 @@ function createMatcher (matcherName: string) { /** * Check if context is ChainablePromiseElement */ - if (isContextObject && 'then' in context && typeof (context as any).selector === 'object') { + if (isContextObject && 'then' in context && typeof (context as { selector: string }).selector === 'object') { expectRequest.element = await context } @@ -76,7 +77,7 @@ function createMatcher (matcherName: string) { * Check if context is a `Element` and transform it into a WebdriverIO.Element */ if (context instanceof Element) { - expectRequest.element = await $(context as any as HTMLElement) + expectRequest.element = await $(context as unknown as HTMLElement) } else if (isContextObject && !('sessionId' in context)) { /** * check if context is an object or promise and resolve it diff --git a/packages/wdio-browser-runner/src/browser/frameworks/mocha.ts b/packages/wdio-browser-runner/src/browser/frameworks/mocha.ts index 6e3888985..109d1f2d6 100644 --- a/packages/wdio-browser-runner/src/browser/frameworks/mocha.ts +++ b/packages/wdio-browser-runner/src/browser/frameworks/mocha.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import safeStringify from 'safe-stringify' import { setupEnv, formatMessage } from '@wdio/mocha-framework/common' import { MESSAGE_TYPES, type Workers } from '@wdio/types' @@ -19,6 +20,7 @@ class HTMLReporter extends BaseReporter { * to the element within the Shadow DOM */ const getElementById = document.getElementById.bind(document) + // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain document.getElementById = () => document.querySelector('mocha-framework')?.shadowRoot?.querySelector('#mocha')! super(runner, options) document.getElementById = getElementById diff --git a/packages/wdio-browser-runner/src/browser/integrations/stencil.ts b/packages/wdio-browser-runner/src/browser/integrations/stencil.ts index 2d629b2a4..b1038c9ff 100644 --- a/packages/wdio-browser-runner/src/browser/integrations/stencil.ts +++ b/packages/wdio-browser-runner/src/browser/integrations/stencil.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import { h } from '@stencil/core' import { $ } from '@wdio/globals' import type { StencilEnvironment } from '../../../stencil/index.d.ts' diff --git a/packages/wdio-browser-runner/src/browser/setup.ts b/packages/wdio-browser-runner/src/browser/setup.ts index 13e341144..1b25d8a23 100644 --- a/packages/wdio-browser-runner/src/browser/setup.ts +++ b/packages/wdio-browser-runner/src/browser/setup.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ /// import { automationProtocolPath } from 'virtual:wdio' diff --git a/packages/wdio-browser-runner/src/browser/spy.ts b/packages/wdio-browser-runner/src/browser/spy.ts index fc6258b9d..3e59cd6a5 100644 --- a/packages/wdio-browser-runner/src/browser/spy.ts +++ b/packages/wdio-browser-runner/src/browser/spy.ts @@ -26,6 +26,7 @@ export async function mock (path: string, factory?: MockFactoryWithHelper) { /** * parameter is added by hoisting plugin if factory comes with a parameter */ + // eslint-disable-next-line prefer-rest-params const actualImport = arguments[2] const mockLocalFile = path.startsWith('/') || path.startsWith('./') || path.startsWith('../') @@ -37,7 +38,7 @@ export async function mock (path: string, factory?: MockFactoryWithHelper) { try { const resolvedMock = await factory(actualImport) window.__wdioMockCache__.set(mockPath, resolvedMock) - } catch (err: unknown) { + } catch (err) { const error = err as Error throw new Error(`${ERROR_MESSAGE}\n${error.message}: ${error.stack}`) } @@ -51,4 +52,4 @@ export function unmock(moduleName: string) { /** * utility helper for type conversions */ -export function mocked(item: T) { return item as any as MaybeMocked } +export function mocked(item: T) { return item as unknown as MaybeMocked } diff --git a/packages/wdio-browser-runner/src/browser/utils.ts b/packages/wdio-browser-runner/src/browser/utils.ts index b0f98decd..7fb3ff3fd 100644 --- a/packages/wdio-browser-runner/src/browser/utils.ts +++ b/packages/wdio-browser-runner/src/browser/utils.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ export function getCID() { const urlParamString = new URLSearchParams(window.location.search) const cid = ( @@ -50,7 +51,7 @@ export function sanitizeConsoleArgs(args: unknown[]) { if (arg && typeof arg.sessionId === 'string') { return `WebdriverIO.Browser<${arg.capabilities.browserName}>` } - } catch (err) { + } catch { // ignore } diff --git a/packages/wdio-browser-runner/src/communicator.ts b/packages/wdio-browser-runner/src/communicator.ts index 850e6b449..16783ee33 100644 --- a/packages/wdio-browser-runner/src/communicator.ts +++ b/packages/wdio-browser-runner/src/communicator.ts @@ -106,6 +106,6 @@ export class ServerWorkerCommunicator { const msg: WorkerMessage = { id, client } this.#pendingMessages.set(id, msg) const args: Workers.WorkerRequest['args'] = { id, message } - return worker.postMessage('workerRequest', args, true) + return worker.postMessage('workerRequest', args as unknown as Workers.WorkerMessageArgs, true) } } diff --git a/packages/wdio-browser-runner/src/index.ts b/packages/wdio-browser-runner/src/index.ts index 553a64403..68010a3a6 100644 --- a/packages/wdio-browser-runner/src/index.ts +++ b/packages/wdio-browser-runner/src/index.ts @@ -110,8 +110,8 @@ export default class BrowserRunner extends LocalRunner { allowOrigins: [`http://localhost:${port}`] } } - } catch (err: any) { - throw new Error(`Vite server failed to start: ${err.stack}`) + } catch (err) { + throw new Error(`Vite server failed to start: ${(err as Error).stack}`) } if (!runArgs.args.baseUrl && runArgs.command === 'run') { @@ -183,13 +183,14 @@ export default class BrowserRunner extends LocalRunner { ...this.#coverageOptions.perFile ? Object.entries(summary) .filter(([source]) => source !== 'total') + // eslint-disable-next-line @typescript-eslint/no-explicit-any .map(([source, summary]: any) => ( getCoverageByFactor(this.#coverageOptions, summary, source.replace(this.#config.rootDir, ''))) ) .flat() : getCoverageByFactor(this.#coverageOptions, summary.total) ) - } catch (err: unknown) { + } catch (err) { console.error(`Failed to generate code coverage report: ${(err as Error).message}`) return false } @@ -278,5 +279,4 @@ export function mocked(item: T, options: { partial: true; deep: true; }): MaybePartiallyMockedDeep -// eslint-disable-next-line @typescript-eslint/no-unused-vars -export function mocked (item: any, options: any) {} +export function mocked (_item: unknown, _options: unknown) {} diff --git a/packages/wdio-browser-runner/src/types.ts b/packages/wdio-browser-runner/src/types.ts index 682c12a66..cb8540941 100644 --- a/packages/wdio-browser-runner/src/types.ts +++ b/packages/wdio-browser-runner/src/types.ts @@ -126,7 +126,7 @@ export interface BrowserRunnerOptions { export interface RunArgs extends Workers.WorkerRunPayload { command: string - args: any + args: Record cid: string } @@ -138,4 +138,4 @@ export interface Environment { injectGlobals: boolean } -export type MockFactoryWithHelper = (importOriginal: () => Promise) => any; +export type MockFactoryWithHelper = (importOriginal: () => Promise) => unknown; diff --git a/packages/wdio-browser-runner/src/vite/constants.ts b/packages/wdio-browser-runner/src/vite/constants.ts index 02a88080d..f16165f42 100644 --- a/packages/wdio-browser-runner/src/vite/constants.ts +++ b/packages/wdio-browser-runner/src/vite/constants.ts @@ -11,7 +11,7 @@ const log = logger('@wdio/browser-runner:vite') export const DEFAULT_PROTOCOL = 'http' export const DEFAULT_HOSTNAME = 'localhost' export const DEFAULT_HOST = `${DEFAULT_PROTOCOL}://${DEFAULT_HOSTNAME}` -export const PRESET_DEPENDENCIES: Record = { +export const PRESET_DEPENDENCIES: Record = { react: ['@vitejs/plugin-react', 'default', { babel: { assumptions: { @@ -63,6 +63,7 @@ export const DEFAULT_VITE_CONFIG: Partial = { * cast to "any" here as Vite's esbuild dependency and WebdriverIOs one * may differ and cause type issues here. */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any codeFrameFix() as any ], }, diff --git a/packages/wdio-browser-runner/src/vite/frameworks/stencil.ts b/packages/wdio-browser-runner/src/vite/frameworks/stencil.ts index b296536f0..5ef5b112e 100644 --- a/packages/wdio-browser-runner/src/vite/frameworks/stencil.ts +++ b/packages/wdio-browser-runner/src/vite/frameworks/stencil.ts @@ -28,7 +28,7 @@ export async function optimizeForStencil(rootDir: string) { } if (stencilPlugins) { - const esbuildPlugin = stencilPlugins.find((plugin: any) => plugin.name === 'esbuild-plugin') + const esbuildPlugin = stencilPlugins.find((plugin: { name: string }) => plugin.name === 'esbuild-plugin') if (esbuildPlugin) { stencilOptimizations.optimizeDeps?.include?.push(...esbuildPlugin.options.include) } @@ -163,6 +163,7 @@ let _tsCompilerOptions: CompilerOptions | null = null * @param rootDir the location to search for the config file * @returns the configuration, or `null` if the file cannot be found */ +// eslint-disable-next-line @typescript-eslint/no-explicit-any function getCompilerOptions(ts: any, rootDir: string): CompilerOptions | null { if (_tsCompilerOptions) { return _tsCompilerOptions diff --git a/packages/wdio-browser-runner/src/vite/plugins/mockHoisting.ts b/packages/wdio-browser-runner/src/vite/plugins/mockHoisting.ts index 3c152375a..343b811bc 100644 --- a/packages/wdio-browser-runner/src/vite/plugins/mockHoisting.ts +++ b/packages/wdio-browser-runner/src/vite/plugins/mockHoisting.ts @@ -33,7 +33,7 @@ export function mockHoisting(mockHandler: MockHandler): Plugin[] { try { const orig = await fs.readFile(id.slice(MOCK_PREFIX.length + (os.platform() === 'win32' ? 1 : 0))) return orig.toString() - } catch (err: unknown) { + } catch (err) { log.error(`Failed to read file (${id}) for mocking: ${(err as Error).message}`) return '' } @@ -75,7 +75,7 @@ export function mockHoisting(mockHandler: MockHandler): Plugin[] { sourceRoot: path.dirname(id) }) log.trace(`Parsed file for mocking: ${id} in ${Date.now() - start}ms`) - } catch (err) { + } catch { return { code } } @@ -327,7 +327,7 @@ export function mockHoisting(mockHandler: MockHandler): Plugin[] { const newCode = print(ast, { sourceMapName: id }) log.trace(`Transformed file for mocking: ${id} in ${Date.now() - start}ms`) return newCode - } catch (err: any) { + } catch (err) { log.trace(`Failed to transformed file (${id}) for mocking: ${(err as Error).stack}`) return { code } } diff --git a/packages/wdio-browser-runner/src/vite/plugins/testrunner.ts b/packages/wdio-browser-runner/src/vite/plugins/testrunner.ts index 635810914..449d19cf7 100644 --- a/packages/wdio-browser-runner/src/vite/plugins/testrunner.ts +++ b/packages/wdio-browser-runner/src/vite/plugins/testrunner.ts @@ -19,6 +19,7 @@ import { getTemplate, getErrorTemplate, normalizeId } from '../utils.js' const log = logger('@wdio/browser-runner:plugin') const __dirname = url.fileURLToPath(new URL('.', import.meta.url)) +// eslint-disable-next-line @typescript-eslint/no-explicit-any const commands = deepmerge( WebDriverProtocol, MJsonWProtocol, AppiumProtocol, ChromiumProtocol, SauceLabsProtocol, SeleniumProtocol, GeckoProtocol @@ -157,9 +158,9 @@ export function testrunner(options: WebdriverIO.BrowserRunnerOptions): Plugin[] const template = await getTemplate(options, env, spec) log.debug(`Render template for ${req.originalUrl}`) res.end(await server.transformIndexHtml(`${req.originalUrl}`, template)) - } catch (err: any) { - const template = getErrorTemplate(req.originalUrl, err) - log.error(`Failed to render template: ${err.message}`) + } catch (err) { + const template = getErrorTemplate(req.originalUrl, err as Error) + log.error(`Failed to render template: ${(err as Error).message}`) res.end(await server.transformIndexHtml(`${req.originalUrl}`, template)) } diff --git a/packages/wdio-browser-runner/src/vite/utils.ts b/packages/wdio-browser-runner/src/vite/utils.ts index abc5bb9ce..c1d9690b2 100644 --- a/packages/wdio-browser-runner/src/vite/utils.ts +++ b/packages/wdio-browser-runner/src/vite/utils.ts @@ -34,7 +34,7 @@ export async function getTemplate(options: WebdriverIO.BrowserRunnerOptions, env const sourceMapSupportDir = await resolve('source-map-support', import.meta.url) sourceMapScript = /*html*/`` sourceMapSetupCommand = 'sourceMapSupport.install()' - } catch (err: unknown) { + } catch (err) { log.error(`Failed to setup source-map-support: ${(err as Error).message}`) } @@ -127,7 +127,7 @@ export async function userfriendlyImport(preset: FrameworkPreset, pkg?: string) try { return await import(pkg) - } catch (err: any) { + } catch { throw new Error( `Couldn't load preset "${preset}" given important dependency ("${pkg}") is not installed.\n` + `Please run:\n\n\tnpm install ${pkg}\n\tor\n\tyarn add --dev ${pkg}` diff --git a/packages/wdio-browserstack-service/src/Percy/Percy-Handler.ts b/packages/wdio-browserstack-service/src/Percy/Percy-Handler.ts index 75593372b..5e7651d08 100644 --- a/packages/wdio-browserstack-service/src/Percy/Percy-Handler.ts +++ b/packages/wdio-browserstack-service/src/Percy/Percy-Handler.ts @@ -13,12 +13,11 @@ import { PercyLogger } from './PercyLogger.js' import { PERCY_DOM_CHANGING_COMMANDS_ENDPOINTS, CAPTURE_MODES } from '../constants.js' class _PercyHandler { - private _testMetadata: { [key: string]: any } = {} private _sessionName?: string private _isPercyCleanupProcessingUnderway?: boolean = false - private _percyScreenshotCounter: any = 0 - private _percyDeferredScreenshots: any = [] - private _percyScreenshotInterval: any = null + private _percyScreenshotCounter = 0 + private _percyDeferredScreenshots: ({ sessionName: string, eventName: string | null })[] = [] + private _percyScreenshotInterval: NodeJS.Timeout | null = null private _percyCaptureMap?: PercyCaptureMap constructor ( @@ -59,7 +58,7 @@ class _PercyHandler { await (this._isAppAutomate ? PercySDK.screenshotApp(this._percyCaptureMap?.getName( sessionName ? sessionName : (this._sessionName as string), eventName)) : await PercySDK.screenshot(this._browser, this._percyCaptureMap?.getName( sessionName ? sessionName : (this._sessionName as string), eventName))) this._percyScreenshotCounter -= 1 } - } catch (err: any) { + } catch (err) { this._percyScreenshotCounter -= 1 this._percyCaptureMap?.decrement(sessionName ? sessionName : (this._sessionName as string), eventName as string) PercyLogger.error(`Error while trying to auto capture Percy screenshot ${err}`) @@ -97,7 +96,7 @@ class _PercyHandler { ) ) || /* execute script sync / async */ - (args.endpoint.includes('/session/:sessionId/execute') && args.body?.script) || + Boolean(args.endpoint.includes('/session/:sessionId/execute') && (args.body as { script: string }).script) || /* Touch action for Appium */ (args.endpoint.includes('/session/:sessionId/touch')) ) @@ -126,12 +125,14 @@ class _PercyHandler { } while (this._percyScreenshotInterval) this._percyScreenshotInterval = setInterval(async () => { if (!this._isPercyCleanupProcessingUnderway) { - clearInterval(this._percyScreenshotInterval) + if (this._percyScreenshotInterval) { + clearInterval(this._percyScreenshotInterval) + } await this.cleanupDeferredScreenshots() this._percyScreenshotInterval = null } }, 1000) - } catch (err: any) { + } catch (err) { PercyLogger.error(`Error while trying to cleanup deferred screenshots ${err}`) } } @@ -148,7 +149,8 @@ class _PercyHandler { } else if (endpoint.includes('screenshot') && ['screenshot', 'auto'].includes(this._percyAutoCaptureMode as string)) { eventName = 'screenshot' } else if (endpoint.includes('actions') && ['auto'].includes(this._percyAutoCaptureMode as string)) { - if (args.body && args.body.actions && Array.isArray(args.body.actions) && args.body.actions.length && args.body.actions[0].type === 'key') { + const actionsBody = (args.body as { actions: { type: string }[] }).actions + if (actionsBody && Array.isArray(actionsBody) && actionsBody.length && actionsBody[0].type === 'key') { eventName = 'keys' } } else if (endpoint.includes('/session/:sessionId/element') && endpoint.includes('value') && ['auto'].includes(this._percyAutoCaptureMode as string)) { @@ -157,7 +159,7 @@ class _PercyHandler { if (eventName) { this.deferCapture(this._sessionName as string, eventName) } - } catch (err: any) { + } catch (err) { PercyLogger.error(`Error while trying to calculate auto capture parameters ${err}`) } } diff --git a/packages/wdio-browserstack-service/src/Percy/Percy.ts b/packages/wdio-browserstack-service/src/Percy/Percy.ts index bc314e6f3..c0b1c14bb 100644 --- a/packages/wdio-browserstack-service/src/Percy/Percy.ts +++ b/packages/wdio-browserstack-service/src/Percy/Percy.ts @@ -1,6 +1,7 @@ import fs from 'node:fs' import path from 'node:path' import os from 'node:os' +import type { ChildProcessWithoutNullStreams } from 'node:child_process' import { spawn } from 'node:child_process' @@ -19,10 +20,10 @@ class Percy { #logfile: string = path.join(logDir, 'percy.log') #address: string = process.env.PERCY_SERVER_ADDRESS || 'http://127.0.0.1:5338' - #binaryPath: string | any = null + #binaryPath: string | null = null #options: BrowserstackConfig & Options.Testrunner #config: Options.Testrunner - #proc: any = null + #proc: ChildProcessWithoutNullStreams | null = null #isApp: boolean #projectName: string | undefined = undefined @@ -51,12 +52,12 @@ class Percy { async healthcheck() { try { - const resp = await nodeRequest('GET', 'percy/healthcheck', null, this.#address) + const resp = await nodeRequest('GET', 'percy/healthcheck', {}, this.#address) if (resp) { this.buildId = resp.build.id return true } - } catch (err) { + } catch { return false } } @@ -109,7 +110,7 @@ class Percy { const binaryPath = await this.#getBinaryPath() return new Promise( (resolve) => { const proc = spawn(binaryPath, ['exec:stop']) - proc.on('close', (code: any) => { + proc.on('close', (code: number) => { this.isProcessRunning = false resolve(code) }) @@ -140,7 +141,7 @@ class Percy { { username: getBrowserStackUser(this.#config), password: getBrowserStackKey(this.#config) - }, + } as RequestInit, 'https://api.browserstack.com' ) PercyLogger.debug('Percy fetch token success : ' + response.token) @@ -149,7 +150,7 @@ class Percy { } this.percyCaptureMode = response.percy_capture_mode this.percy = response.success - } catch (err: any) { + } catch (err) { PercyLogger.error(`Percy unable to fetch project token: ${err}`) return null } @@ -173,7 +174,7 @@ class Percy { JSON.stringify( percyOptions ), - (err: any) => { + (err: unknown) => { if (err) { PercyLogger.error(`Error creating percy config: ${err}`) resolve(null) diff --git a/packages/wdio-browserstack-service/src/Percy/PercyBinary.ts b/packages/wdio-browserstack-service/src/Percy/PercyBinary.ts index 022437423..b8f2e1ceb 100644 --- a/packages/wdio-browserstack-service/src/Percy/PercyBinary.ts +++ b/packages/wdio-browserstack-service/src/Percy/PercyBinary.ts @@ -10,7 +10,7 @@ import { PercyLogger } from './PercyLogger.js' class PercyBinary { #hostOS = process.platform - #httpPath: any = null + #httpPath: string | null = null #binaryName = 'percy' #orderedPaths = [ @@ -44,7 +44,7 @@ class PercyBinary { if (hasDir) { return true } - } catch (err) { + } catch { return false } } @@ -92,7 +92,7 @@ class PercyBinary { }) } - async download(destParentDir: any): Promise { + async download(destParentDir: string): Promise { if (!await this.#checkPath(destParentDir)){ await fsp.mkdir(destParentDir) } @@ -101,9 +101,10 @@ class PercyBinary { const binaryPath = path.join(destParentDir, binaryName) const downloadedFileStream = fs.createWriteStream(zipFilePath) - const response = await fetch(this.#httpPath) + const response = await fetch(this.#httpPath as unknown as URL) - await pipeline(response.body as any, downloadedFileStream) + // @ts-expect-error stream type + await pipeline(response.body as unknown as RequestInit, downloadedFileStream) return new Promise((resolve, reject) => { yauzl.open(zipFilePath, { lazyEntries: true }, function (err, zipfile) { @@ -142,7 +143,7 @@ class PercyBinary { }) zipfile.once('end', () => { - fs.chmod(binaryPath, '0755', function (zipErr: any) { + fs.chmod(binaryPath, '0755', function (zipErr: Error) { if (zipErr) { reject(zipErr) } diff --git a/packages/wdio-browserstack-service/src/Percy/PercyCaptureMap.ts b/packages/wdio-browserstack-service/src/Percy/PercyCaptureMap.ts index 9ec2e8e9b..8e6671d42 100644 --- a/packages/wdio-browserstack-service/src/Percy/PercyCaptureMap.ts +++ b/packages/wdio-browserstack-service/src/Percy/PercyCaptureMap.ts @@ -3,8 +3,12 @@ * unique screenshot names for percy */ +interface Map { + [key: string]: Record +} + class PercyCaptureMap { - #map: any = {} + #map: Map = {} increment(sessionName: string, eventName: string) { if (!this.#map[sessionName]) { diff --git a/packages/wdio-browserstack-service/src/Percy/PercyHelper.ts b/packages/wdio-browserstack-service/src/Percy/PercyHelper.ts index 133139867..581c15992 100644 --- a/packages/wdio-browserstack-service/src/Percy/PercyHelper.ts +++ b/packages/wdio-browserstack-service/src/Percy/PercyHelper.ts @@ -23,12 +23,12 @@ export const stopPercy = async (percy: Percy) => { return percy.stop() } -export const getBestPlatformForPercySnapshot = (capabilities?: Capabilities.TestrunnerCapabilities) : any => { +export const getBestPlatformForPercySnapshot = (capabilities?: Capabilities.TestrunnerCapabilities) => { try { - const percyBrowserPreference: any = { 'chrome': 0, 'firefox': 1, 'edge': 2, 'safari': 3 } + const percyBrowserPreference = { 'chrome': 0, 'firefox': 1, 'edge': 2, 'safari': 3 } - let bestPlatformCaps: any = null - let bestBrowser: any = null + let bestPlatformCaps: WebdriverIO.Capabilities | undefined + let bestBrowser: string | undefined if (Array.isArray(capabilities)) { capabilities @@ -46,10 +46,11 @@ export const getBestPlatformForPercySnapshot = (capabilities?: Capabilities.Test if (capability['bstack:options']) { currBrowserName = capability['bstack:options'].browserName || currBrowserName } + // @ts-expect-error if (!bestBrowser || !bestPlatformCaps || (bestPlatformCaps.deviceName || bestPlatformCaps['bstack:options']?.deviceName)) { bestBrowser = currBrowserName bestPlatformCaps = capability - } else if (currBrowserName && percyBrowserPreference[currBrowserName.toLowerCase()] < percyBrowserPreference[bestBrowser.toLowerCase()]) { + } else if (currBrowserName && percyBrowserPreference[currBrowserName.toLowerCase() as keyof typeof percyBrowserPreference] < percyBrowserPreference[bestBrowser.toLowerCase() as keyof typeof percyBrowserPreference]) { bestBrowser = currBrowserName bestPlatformCaps = capability } @@ -61,17 +62,18 @@ export const getBestPlatformForPercySnapshot = (capabilities?: Capabilities.Test if ((caps.capabilities as WebdriverIO.Capabilities)['bstack:options']) { currBrowserName = (caps.capabilities as WebdriverIO.Capabilities)['bstack:options']?.browserName || currBrowserName } + // @ts-expect-error if (!bestBrowser || !bestPlatformCaps || (bestPlatformCaps.deviceName || bestPlatformCaps['bstack:options']?.deviceName)) { bestBrowser = currBrowserName bestPlatformCaps = (caps.capabilities as WebdriverIO.Capabilities) - } else if (currBrowserName && percyBrowserPreference[currBrowserName.toLowerCase()] < percyBrowserPreference[bestBrowser.toLowerCase()]) { + } else if (currBrowserName && percyBrowserPreference[currBrowserName.toLowerCase() as keyof typeof percyBrowserPreference] < percyBrowserPreference[bestBrowser.toLowerCase() as keyof typeof percyBrowserPreference]) { bestBrowser = currBrowserName bestPlatformCaps = (caps.capabilities as WebdriverIO.Capabilities) } }) return bestPlatformCaps } - } catch (err: any) { + } catch (err) { PercyLogger.error(`Error while trying to determine best platform for Percy snapshot ${err}`) return null } diff --git a/packages/wdio-browserstack-service/src/Percy/PercyLogger.ts b/packages/wdio-browserstack-service/src/Percy/PercyLogger.ts index 9846c1340..0435512c0 100644 --- a/packages/wdio-browserstack-service/src/Percy/PercyLogger.ts +++ b/packages/wdio-browserstack-service/src/Percy/PercyLogger.ts @@ -44,7 +44,7 @@ export class PercyLogger { log.error(message) } - public static debug(message: string, param?: any) { + public static debug(message: string, param?: unknown) { this.logToFile(message, 'debug') if (param) { log.debug(message, param) diff --git a/packages/wdio-browserstack-service/src/Percy/PercySDK.ts b/packages/wdio-browserstack-service/src/Percy/PercySDK.ts index a1df136d1..0708c1da0 100644 --- a/packages/wdio-browserstack-service/src/Percy/PercySDK.ts +++ b/packages/wdio-browserstack-service/src/Percy/PercySDK.ts @@ -3,7 +3,7 @@ import TestReporter from '../reporter.js' import { PercyLogger } from './PercyLogger.js' import { isUndefined } from '../util.js' -const tryRequire = async function (pkg: string, fallback: any) { +const tryRequire = async function (pkg: string, fallback: unknown) { try { return (await import(pkg)).default } catch { @@ -16,11 +16,11 @@ const percySnapshot = await tryRequire('@percy/selenium-webdriver', null) const percyAppScreenshot = await tryRequire('@percy/appium-app', {}) /* eslint-disable @typescript-eslint/no-unused-vars */ -let snapshotHandler = (...args: any[]) => { +let snapshotHandler = (...args: unknown[]) => { PercyLogger.error('Unsupported driver for percy') } if (percySnapshot) { - snapshotHandler = (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, snapshotName: string, options?: { [key: string]: any }) => { + snapshotHandler = (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, snapshotName: string, options?: { [key: string]: unknown }) => { if (process.env.PERCY_SNAPSHOT === 'true') { let { name, uuid } = InsightsHandler.currentTest if (isUndefined(name)) { @@ -42,7 +42,7 @@ export const snapshot = snapshotHandler This is a helper method which appends some internal fields to the options object being sent to Percy methods */ -const screenshotHelper = (type: string, driverOrName: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, nameOrOptions?: string | { [key: string]: any }, options?: { [key: string]: any }) => { +const screenshotHelper = (type: string, driverOrName: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, nameOrOptions?: string | { [key: string]: unknown }, options?: { [key: string]: unknown }) => { let { name, uuid } = InsightsHandler.currentTest if (isUndefined(name)) { ({ name, uuid } = TestReporter.currentTest) @@ -71,22 +71,22 @@ const screenshotHelper = (type: string, driverOrName: WebdriverIO.Browser | Webd } /* eslint-disable @typescript-eslint/no-unused-vars */ -let screenshotHandler = async (...args: any[]) => { +let screenshotHandler = async (...args: unknown[]) => { PercyLogger.error('Unsupported driver for percy') } if (percySnapshot && percySnapshot.percyScreenshot) { - screenshotHandler = (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, screenshotName?: string | { [key: string]: any }, options?: { [key: string]: any }) => { + screenshotHandler = (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, screenshotName?: string | { [key: string]: unknown }, options?: { [key: string]: unknown }) => { return screenshotHelper('web', browser, screenshotName, options) } } export const screenshot = screenshotHandler /* eslint-disable @typescript-eslint/no-unused-vars */ -let screenshotAppHandler = async (...args: any[]) => { +let screenshotAppHandler = async (...args: unknown[]) => { PercyLogger.error('Unsupported driver for percy') } if (percyAppScreenshot) { - screenshotAppHandler = (driverOrName: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, nameOrOptions?: string | { [key: string]: any }, options?: { [key: string]: any }) => { + screenshotAppHandler = (driverOrName: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser | string, nameOrOptions?: string | { [key: string]: unknown }, options?: { [key: string]: unknown }) => { return screenshotHelper('app', driverOrName, nameOrOptions, options) } } diff --git a/packages/wdio-browserstack-service/src/accessibility-handler.ts b/packages/wdio-browserstack-service/src/accessibility-handler.ts index bd096ed29..1d9bf299f 100644 --- a/packages/wdio-browserstack-service/src/accessibility-handler.ts +++ b/packages/wdio-browserstack-service/src/accessibility-handler.ts @@ -24,23 +24,23 @@ import accessibilityScripts from './scripts/accessibility-scripts.js' import { BStackLogger } from './bstackLogger.js' class _AccessibilityHandler { - private _platformA11yMeta: { [key: string]: any; } + private _platformA11yMeta: { [key: string]: unknown; } private _caps: Capabilities.ResolvedTestrunnerCapabilities private _suiteFile?: string private _accessibility?: boolean - private _accessibilityOptions?: { [key: string]: any; } - private _testMetadata: { [key: string]: any; } = {} - private static _a11yScanSessionMap: { [key: string]: any; } = {} + private _accessibilityOptions?: { [key: string]: unknown; } + private _testMetadata: { [key: string]: unknown; } = {} + private static _a11yScanSessionMap: { [key: string]: unknown; } = {} private _sessionId: string | null = null private listener = Listener.getInstance() constructor ( private _browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, - private _capabilities: Capabilities.ResolvedTestrunnerCapabilities, + _capabilities: Capabilities.ResolvedTestrunnerCapabilities, isAppAutomate?: boolean, private _framework?: string, - private _accessibilityAutomation?: boolean | string, - private _accessibilityOpts?: { [key: string]: any; } + _accessibilityAutomation?: boolean | string, + _accessibilityOpts?: { [key: string]: unknown; } ) { const caps = (this._browser as WebdriverIO.Browser).capabilities as WebdriverIO.Capabilities @@ -96,9 +96,9 @@ class _AccessibilityHandler { if (isBrowserstackSession(this._browser) && isAccessibilityAutomationSession(this._accessibility)) { const deviceName = this._getCapabilityValue(this._caps, 'deviceName', 'device') - const chromeOptions = this._getCapabilityValue(this._caps, 'goog:chromeOptions', '') + const chromeOptions = this._getCapabilityValue(this._caps, 'goog:chromeOptions', '') as Capabilities.ChromeOptions - this._accessibility = validateCapsWithA11y(deviceName, this._platformA11yMeta, chromeOptions) + this._accessibility = validateCapsWithA11y(deviceName as string, this._platformA11yMeta as unknown as Record, chromeOptions) } (this._browser as WebdriverIO.Browser).getAccessibilityResultsSummary = async () => { @@ -124,6 +124,7 @@ class _AccessibilityHandler { .filter((command) => command.name && command.class) .forEach((command) => { const browser = this._browser as WebdriverIO.Browser + // @ts-expect-error fix type browser.overwriteCommand(command.name, this.commandWrapper.bind(this, command), command.class === 'Element') }) } @@ -139,6 +140,7 @@ class _AccessibilityHandler { return } + // @ts-expect-error fix type const shouldScanTest = shouldScanTestForAccessibility(suiteTitle, test.title, this._accessibilityOptions) const testIdentifier = this.getIdentifier(test) const isPageOpened = await this.checkIfPageOpened(this._browser, testIdentifier, shouldScanTest) @@ -155,6 +157,7 @@ class _AccessibilityHandler { return } + // @ts-expect-error fix type this._testMetadata[testIdentifier].accessibilityScanStarted = shouldScanTest if (shouldScanTest) { @@ -176,7 +179,9 @@ class _AccessibilityHandler { try { const testIdentifier = this.getIdentifier(test) + // @ts-expect-error fix type const accessibilityScanStarted = this._testMetadata[testIdentifier]?.accessibilityScanStarted + // @ts-expect-error fix type const shouldScanTestForAccessibility = this._testMetadata[testIdentifier]?.scanTestForAccessibility if (!accessibilityScanStarted) { @@ -216,6 +221,7 @@ class _AccessibilityHandler { } try { + // @ts-expect-error fix type const shouldScanScenario = shouldScanTestForAccessibility(featureData?.name, pickleData.name, this._accessibilityOptions, world, true) const isPageOpened = await this.checkIfPageOpened(this._browser, uniqueId, shouldScanScenario) @@ -231,6 +237,7 @@ class _AccessibilityHandler { return } + // @ts-expect-error fix type this._testMetadata[uniqueId].accessibilityScanStarted = shouldScanScenario if (shouldScanScenario) { @@ -250,7 +257,9 @@ class _AccessibilityHandler { const pickleData = world.pickle try { const uniqueId = getUniqueIdentifierForCucumber(world) + // @ts-expect-error fix type const accessibilityScanStarted = this._testMetadata[uniqueId]?.accessibilityScanStarted + // @ts-expect-error fix type const shouldScanTestForAccessibility = this._testMetadata[uniqueId]?.scanTestForAccessibility if (!accessibilityScanStarted) { @@ -279,7 +288,7 @@ class _AccessibilityHandler { * private methods */ - private async commandWrapper (command: any, origFunction: Function, ...args: any[]) { + private async commandWrapper (command: { name: string, class: string }, origFunction: Function, ...args: string[]) { if ( this._sessionId && AccessibilityHandler._a11yScanSessionMap[this._sessionId] && ( @@ -293,7 +302,7 @@ class _AccessibilityHandler { return origFunction(...args) } - private async sendTestStopEvent(browser: WebdriverIO.Browser, dataForExtension: any) { + private async sendTestStopEvent(browser: WebdriverIO.Browser, dataForExtension: unknown) { BStackLogger.debug('Performing scan before saving results') await performA11yScan(browser, true, true) const results: unknown = await (browser as WebdriverIO.Browser).executeAsync(accessibilityScripts.saveTestResults as string, dataForExtension) @@ -307,7 +316,7 @@ class _AccessibilityHandler { return getUniqueIdentifier(test, this._framework) } - private shouldRunTestHooks(browser: any, isAccessibility?: boolean | string) { + private shouldRunTestHooks(browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, isAccessibility?: boolean | string) { if (!browser) { return false } @@ -325,14 +334,14 @@ class _AccessibilityHandler { const currentURL = await (browser as WebdriverIO.Browser).getUrl() const url = new URL(currentURL) pageOpen = url?.protocol === 'http:' || url?.protocol === 'https:' - } catch (e) { + } catch { pageOpen = false } return pageOpen } - private static shouldPatchExecuteScript(script: string | null): Boolean { + private static shouldPatchExecuteScript(script: string | null): boolean { if (!script || typeof script !== 'string') { return true } diff --git a/packages/wdio-browserstack-service/src/ai-handler.ts b/packages/wdio-browserstack-service/src/ai-handler.ts index d675c6c67..8f47e2496 100644 --- a/packages/wdio-browserstack-service/src/ai-handler.ts +++ b/packages/wdio-browserstack-service/src/ai-handler.ts @@ -57,7 +57,7 @@ class AiHandler { await browser.installAddOn(extFile.toString('base64'), true) } - async handleHealing(orginalFunc: (arg0: string, arg1: string) => any, using: string, value: string, browser: WebdriverIO.Browser, options: BrowserstackOptions){ + async handleHealing(orginalFunc: (arg0: string, arg1: string) => { error?: string }, using: string, value: string, browser: WebdriverIO.Browser, options: BrowserstackOptions){ const sessionId = browser.sessionId // a utility function to escape single and double quotes @@ -114,17 +114,18 @@ class AiHandler { config: Options.Testrunner, browserStackConfig: BrowserStackConfig, options: BrowserstackOptions, - caps: any, + caps: Capabilities.RequestedMultiremoteCapabilities, browser: string ) { if ( caps[browser].capabilities && !(isBrowserstackInfra(caps[browser])) && - SUPPORTED_BROWSERS_FOR_AI.includes(caps[browser]?.capabilities?.browserName?.toLowerCase()) + SUPPORTED_BROWSERS_FOR_AI.includes((caps[browser]?.capabilities as WebdriverIO.Capabilities)?.browserName?.toLowerCase() || 'unknown browser') ) { const innerConfig = getBrowserStackUserAndKey(config, options) if (innerConfig?.user && innerConfig.key) { + // @ts-expect-error fix type handleHealingInstrumentation(authResult, browserStackConfig, options.selfHeal) - caps[browser].capabilities = this.updateCaps(authResult, options, caps[browser].capabilities) + caps[browser].capabilities = this.updateCaps(authResult, options, caps[browser].capabilities as WebdriverIO.Capabilities) as WebdriverIO.Capabilities } } } @@ -134,7 +135,7 @@ class AiHandler { config: Options.Testrunner, browserStackConfig: BrowserStackConfig, options: BrowserstackOptions, - caps: any, + caps: Capabilities.RequestedMultiremoteCapabilities, ) { const browserNames = Object.keys(caps) for (let i = 0; i < browserNames.length; i++) { @@ -147,7 +148,7 @@ class AiHandler { config: Options.Testrunner, browserStackConfig: BrowserStackConfig, options: BrowserstackOptions, - caps: any, + caps: WebdriverIO.Capabilities, isMultiremote: boolean ) { try { @@ -155,13 +156,14 @@ class AiHandler { if (innerConfig?.user && innerConfig.key) { const authResult = await this.authenticateUser(innerConfig.user, innerConfig.key) process.env[BSTACK_TCG_AUTH_RESULT] = JSON.stringify(authResult) - if (!isMultiremote && SUPPORTED_BROWSERS_FOR_AI.includes(caps?.browserName?.toLowerCase())) { + if (!isMultiremote && SUPPORTED_BROWSERS_FOR_AI.includes(caps.browserName?.toLowerCase() || 'unknown browser')) { + // @ts-expect-error fix type handleHealingInstrumentation(authResult, browserStackConfig, options.selfHeal) this.updateCaps(authResult, options, caps) } else if (isMultiremote) { - this.handleMultiRemoteSetup(authResult, config, browserStackConfig, options, caps) + this.handleMultiRemoteSetup(authResult, config, browserStackConfig, options, caps as unknown as Capabilities.RequestedMultiremoteCapabilities) } } @@ -193,7 +195,9 @@ class AiHandler { await this.installFirefoxExtension(browser) } - browser.overwriteCommand('findElement' as any, async (orginalFunc: (arg0: string, arg1: string) => any, using: string, value: string) => { + // @ts-expect-error fix type + browser.overwriteCommand('findElement', async (orginalFunc: unknown, using: string, value: string) => { + // @ts-expect-error fix type return await this.handleHealing(orginalFunc, using, value, browser, options) }) } @@ -206,6 +210,7 @@ class AiHandler { const multiRemoteBrowsers = Object.keys(caps).filter(e => Object.keys(browser).includes(e)) if (multiRemoteBrowsers.length > 0) { for (let i = 0; i < multiRemoteBrowsers.length; i++) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any const remoteBrowser = (browser as any)[multiRemoteBrowsers[i]] await this.handleSelfHeal(options, remoteBrowser) } diff --git a/packages/wdio-browserstack-service/src/bstackLogger.ts b/packages/wdio-browserstack-service/src/bstackLogger.ts index e81fa62bd..2257a7529 100644 --- a/packages/wdio-browserstack-service/src/bstackLogger.ts +++ b/packages/wdio-browserstack-service/src/bstackLogger.ts @@ -42,7 +42,7 @@ export class BStackLogger { log.error(message) } - public static debug(message: string, param?: any) { + public static debug(message: string, param?: unknown) { this.logToFile(message, 'debug') if (param) { log.debug(message, param) diff --git a/packages/wdio-browserstack-service/src/cleanup.ts b/packages/wdio-browserstack-service/src/cleanup.ts index 4a5f84d1f..0b3c69d99 100644 --- a/packages/wdio-browserstack-service/src/cleanup.ts +++ b/packages/wdio-browserstack-service/src/cleanup.ts @@ -3,20 +3,21 @@ import { BStackLogger } from './bstackLogger.js' import fs from 'node:fs' import { fireFunnelRequest } from './instrumentation/funnelInstrumentation.js' import { BROWSERSTACK_TESTHUB_UUID, BROWSERSTACK_TESTHUB_JWT, BROWSERSTACK_OBSERVABILITY } from './constants.js' +import type { FunnelData } from './types.js' export default class BStackCleanup { static async startCleanup() { try { // Get funnel data object from saved file const funnelDataCleanup = process.argv.includes('--funnelData') - let funnelData = null + let funnelData: FunnelData | null = null if (funnelDataCleanup) { const index = process.argv.indexOf('--funnelData') const filePath = process.argv[index + 1] - funnelData = this.getFunnelDataFromFile(filePath) + funnelData = BStackCleanup.getFunnelDataFromFile(filePath) } - if (process.argv.includes('--observability')) { + if (process.argv.includes('--observability') && funnelData) { await this.executeObservabilityCleanup(funnelData) } @@ -28,7 +29,7 @@ export default class BStackCleanup { BStackLogger.error(error) } } - static async executeObservabilityCleanup(funnelData: any) { + static async executeObservabilityCleanup(funnelData: FunnelData) { if (!process.env[BROWSERSTACK_TESTHUB_JWT]) { return } @@ -47,7 +48,7 @@ export default class BStackCleanup { } } - static updateO11yStopData(funnelData: any, status: string, error: unknown = undefined) { + static updateO11yStopData(funnelData: FunnelData, status: string, error: unknown = undefined) { const toData = funnelData?.event_properties?.productUsage?.testObservability // Return if no O11y data in funnel data if (!toData) { @@ -65,7 +66,7 @@ export default class BStackCleanup { toData.events.buildEvents.finished = existingStopData } - static async sendFunnelData(funnelData: any) { + static async sendFunnelData(funnelData: FunnelData) { try { await fireFunnelRequest(funnelData) BStackLogger.debug('Funnel data sent successfully from cleanup') diff --git a/packages/wdio-browserstack-service/src/crash-reporter.ts b/packages/wdio-browserstack-service/src/crash-reporter.ts index c9dd3c52e..7365ce143 100644 --- a/packages/wdio-browserstack-service/src/crash-reporter.ts +++ b/packages/wdio-browserstack-service/src/crash-reporter.ts @@ -5,7 +5,7 @@ import type { BrowserstackConfig, CredentialsForCrashReportUpload, UserConfigfor import { DEFAULT_REQUEST_CONFIG, getObservabilityKey, getObservabilityUser } from './util.js' import { BStackLogger } from './bstackLogger.js' -type Dict = Record +type Dict = Record export default class CrashReporter { /* User test config for build run minus PII */ @@ -38,7 +38,7 @@ export default class CrashReporter { this.setCredentialsForCrashReportUpload(options, userConfig) } - static async uploadCrashReport(exception: any, stackTrace: string) { + static async uploadCrashReport(exception: string, stackTrace: string) { try { if (!this.credentialsForCrashReportUpload.username || !this.credentialsForCrashReportUpload.password) { this.credentialsForCrashReportUpload = process.env.CREDENTIALS_FOR_CRASH_REPORTING !== undefined ? JSON.parse(process.env.CREDENTIALS_FOR_CRASH_REPORTING) : this.credentialsForCrashReportUpload @@ -74,7 +74,7 @@ export default class CrashReporter { const url = `${DATA_ENDPOINT}/api/v1/analytics` const encodedAuth = Buffer.from(`${this.credentialsForCrashReportUpload.username}:${this.credentialsForCrashReportUpload.password}`, 'utf8').toString('base64') - const headers: any = { + const headers: Record = { ...DEFAULT_REQUEST_CONFIG.headers, Authorization: `Basic ${encodedAuth}`, } @@ -109,7 +109,7 @@ export default class CrashReporter { } } - static deletePIIKeysFromObject(obj: {[key: string]: any}) { + static deletePIIKeysFromObject(obj: {[key: string]: unknown}) { if (!obj) { return } @@ -133,15 +133,17 @@ export default class CrashReporter { if (Array.isArray(serviceArray) && serviceArray.length >= 2 && serviceArray[0] === 'browserstack') { for (let idx = 1; idx < serviceArray.length; idx++) { this.deletePIIKeysFromObject(serviceArray[idx]) - serviceArray[idx] && this.deletePIIKeysFromObject(serviceArray[idx].testObservabilityOptions) + if (serviceArray[idx]) { + this.deletePIIKeysFromObject(serviceArray[idx].testObservabilityOptions) + } } finalServices.push(serviceArray) break } } - } catch (err: any) { + } catch (err) { /* Wrong configuration like strings instead of json objects could break this method, needs no action */ - BStackLogger.error(`Error in parsing user config PII with error ${err ? (err.stack || err) : err}`) + BStackLogger.error(`Error in parsing user config PII with error ${err ? ((err as Error).stack || err) : err}`) return configWithoutPII } configWithoutPII.services = finalServices diff --git a/packages/wdio-browserstack-service/src/data-store.ts b/packages/wdio-browserstack-service/src/data-store.ts index e391cce8e..57fa303ba 100644 --- a/packages/wdio-browserstack-service/src/data-store.ts +++ b/packages/wdio-browserstack-service/src/data-store.ts @@ -27,7 +27,7 @@ export function getDataFromWorkers(){ return workersData } -export function saveWorkerData(data: Record) { +export function saveWorkerData(data: Record) { const filePath = path.join(workersDataDirPath, 'worker-data-' + process.pid + '.json') try { diff --git a/packages/wdio-browserstack-service/src/insights-handler.ts b/packages/wdio-browserstack-service/src/insights-handler.ts index 2a2c0d094..6bc102a07 100644 --- a/packages/wdio-browserstack-service/src/insights-handler.ts +++ b/packages/wdio-browserstack-service/src/insights-handler.ts @@ -30,7 +30,8 @@ import type { PlatformMeta, CurrentRunInfo, StdLog, - CBTData + CBTData, + IntegrationObject } from './types.js' import { BStackLogger } from './bstackLogger.js' import type { Capabilities } from '@wdio/types' @@ -76,8 +77,8 @@ class _InsightsHandler { _isAppAutomate(): boolean { const browserDesiredCapabilities = (this._browser?.capabilities ?? {}) - const desiredCapabilities = (this._userCaps ?? {}) - return !!browserDesiredCapabilities['appium:app'] || !!desiredCapabilities['appium:app'] || !!(( desiredCapabilities as any)['appium:options']?.app) + const desiredCapabilities = (this._userCaps ?? {}) as WebdriverIO.Capabilities + return !!browserDesiredCapabilities['appium:app'] || !!desiredCapabilities['appium:app'] || !!(desiredCapabilities['appium:options']?.app) } registerListeners() { @@ -238,7 +239,7 @@ class _InsightsHandler { } } - async beforeHook (test: Frameworks.Test|CucumberHook|undefined, context: any) { + async beforeHook (test: Frameworks.Test|CucumberHook|undefined, context: unknown) { if (!frameworkSupportsHook('before', this._framework)) { return } @@ -291,6 +292,7 @@ class _InsightsHandler { This won't be needed for `afterAll`, as even if `afterAll` fails all the tests that we need are already run by then, so we don't need to send the stats for them separately */ if (!result.passed && (hookType === 'BEFORE_EACH' || hookType === 'BEFORE_ALL' || hookType === 'AFTER_EACH')) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any const sendTestSkip = async (skippedTest: any) => { // We only need to send the tests that whose state is not determined yet. The state of tests which is determined will already be sent. @@ -308,11 +310,12 @@ class _InsightsHandler { /* Recursively send the tests as skipped for all suites below the hook. This is to handle nested describe blocks */ - const sendSuiteSkipped = async (suite: any) => { + const sendSuiteSkipped = async (suite: { tests: unknown[], suites: unknown[] }) => { for (const skippedTest of suite.tests) { await sendTestSkip(skippedTest) } for (const skippedSuite of suite.suites) { + // @ts-expect-error fix types here await sendSuiteSkipped(skippedSuite) } } @@ -532,7 +535,7 @@ class _InsightsHandler { // log screenshot const body = 'body' in args ? args.body : undefined - const result = 'result' in args ? args.result : undefined + const result = 'result' in args ? args.result as { value: string } : undefined if (Boolean(process.env[TESTOPS_SCREENSHOT_ENV]) && isScreenshotCommand(args) && result?.value) { await this.listener.onScreenshot([{ test_run_uuid: testMeta.uuid, @@ -566,6 +569,7 @@ class _InsightsHandler { * private methods */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any private attachHookData (context: any, hookId: string): void { if (context.currentTest && context.currentTest.parent) { const parentTest = `${context.currentTest.parent.title} - ${context.currentTest.title}` @@ -580,6 +584,7 @@ class _InsightsHandler { } } + // eslint-disable-next-line @typescript-eslint/no-explicit-any private setHooksFromSuite(parent: any, hookId: string): boolean { if (!parent) { return false @@ -697,6 +702,7 @@ class _InsightsHandler { } + // eslint-disable-next-line @typescript-eslint/no-explicit-any private getTestRunId(context: any): string|undefined { if (!context) { return @@ -713,6 +719,7 @@ class _InsightsHandler { return this.getTestRunIdFromSuite(context.test.parent) } + // eslint-disable-next-line @typescript-eslint/no-explicit-any private getTestRunIdFromSuite(parent: any): string|undefined { if (!parent) { return @@ -833,10 +840,10 @@ class _InsightsHandler { } async sendCBTInfo() { - const integrationsData: any = {} + const integrationsData: Record = {} if (this._browser && this._platformMeta) { - const provider = getCloudProvider(this._browser) + const provider = getCloudProvider(this._browser) as keyof IntegrationObject integrationsData[provider] = this.getIntegrationsObject() } diff --git a/packages/wdio-browserstack-service/src/instrumentation/funnelInstrumentation.ts b/packages/wdio-browserstack-service/src/instrumentation/funnelInstrumentation.ts index 3130ddd85..356712695 100644 --- a/packages/wdio-browserstack-service/src/instrumentation/funnelInstrumentation.ts +++ b/packages/wdio-browserstack-service/src/instrumentation/funnelInstrumentation.ts @@ -2,7 +2,7 @@ import os from 'node:os' import util, { format } from 'node:util' import path from 'node:path' import fs from 'node:fs' -import UsageStats from '../testOps/usageStats.js' +import UsageStats, { type UsageStat } from '../testOps/usageStats.js' import { BStackLogger } from '../bstackLogger.js' import type BrowserStackConfig from '../config.js' import { BSTACK_SERVICE_VERSION, FUNNEL_INSTRUMENTATION_URL } from '../constants.js' @@ -10,6 +10,7 @@ import { getDataFromWorkers } from '../data-store.js' import { getProductMap } from '../testHub/utils.js' import fetchWrap from '../fetchWrapper.js' import type { BrowserstackHealing } from '@browserstack/ai-sdk-node' +import type { FunnelData, EventProperties } from '../types.js' async function fireFunnelTestEvent(eventType: string, config: BrowserStackConfig) { if (!config.userName || !config.accessKey) { @@ -44,7 +45,7 @@ export function saveFunnelData(eventType: string, config: BrowserStackConfig): s return filePath } -function redactCredentialsFromFunnelData(data: any) { +function redactCredentialsFromFunnelData(data: FunnelData) { if (data) { if (data.userName) { data.userName = '[REDACTED]' @@ -57,7 +58,7 @@ function redactCredentialsFromFunnelData(data: any) { } // Called from two different process -export async function fireFunnelRequest(data: any): Promise { +export async function fireFunnelRequest(data: FunnelData): Promise { const { userName, accessKey } = data redactCredentialsFromFunnelData(data) @@ -99,8 +100,8 @@ function getProductList(config: BrowserStackConfig) { return products } -function buildEventData(eventType: string, config: BrowserStackConfig): any { - const eventProperties: any = { +function buildEventData(eventType: string, config: BrowserStackConfig) { + const eventProperties: EventProperties = { // Framework Details language_framework: getLanguageFramework(config.framework), referrer: getReferrer(config.framework), @@ -117,11 +118,12 @@ function buildEventData(eventType: string, config: BrowserStackConfig): any { // Product Details productMap: getProductMap(config), - product: getProductList(config), + product: getProductList(config) } if (eventType === 'SDKTestSuccessful') { const workerData = getDataFromWorkers() + // @ts-expect-error eventProperties.productUsage = getProductUsage(workerData) } @@ -131,11 +133,11 @@ function buildEventData(eventType: string, config: BrowserStackConfig): any { event_type: eventType, detectedFramework: 'WebdriverIO-' + config.framework, event_properties: eventProperties - } + } as unknown as FunnelData } -function getProductUsage(workersData: any[]) { +function getProductUsage(workersData: { usageStats: UsageStat }[]) { return { testObservability: UsageStats.getInstance().getFormattedData(workersData) } @@ -159,8 +161,8 @@ const sendEvent = { tcgProxyFailure: (config: BrowserStackConfig) => fireFunnelTestEvent('SDKTestTcgProxyFailure', config), } -function isProxyError(authResult: any): boolean { - return (authResult as BrowserstackHealing.InitErrorResponse).status === 502 +function isProxyError(authResult: { status?: number }): boolean { + return (authResult as BrowserstackHealing.InitErrorResponse)?.status === 502 } function handleProxyError(config: BrowserStackConfig, isSelfHealEnabled: boolean | undefined) { @@ -215,8 +217,17 @@ function handleInitializationFailure(status: number, config: BrowserStackConfig, } } +interface AuthResult { + message: string + isAuthenticated: boolean + status: number + userId: string + groupId: string + isHealingEnabled: boolean +} + export function handleHealingInstrumentation( - authResult: BrowserstackHealing.InitErrorResponse | BrowserstackHealing.InitSuccessResponse, + authResult: AuthResult, config: BrowserStackConfig, isSelfHealEnabled: boolean | undefined, ) { @@ -226,7 +237,7 @@ export function handleHealingInstrumentation( return } - const { message, isAuthenticated, status, userId, groupId, isHealingEnabled: isHealingEnabledForUser } = authResult as any + const { message, isAuthenticated, status, userId, groupId, isHealingEnabled: isHealingEnabledForUser } = authResult if (message === 'Upgrade required') { handleUpgradeRequired(isSelfHealEnabled) diff --git a/packages/wdio-browserstack-service/src/launcher.ts b/packages/wdio-browserstack-service/src/launcher.ts index 2d98556b7..78ac8946e 100644 --- a/packages/wdio-browserstack-service/src/launcher.ts +++ b/packages/wdio-browserstack-service/src/launcher.ts @@ -76,7 +76,9 @@ export default class BrowserstackLauncherService implements Services.ServiceInst PercyLogger.clearLogFile() setupExitHandlers() // added to maintain backward compatibility with webdriverIO v5 - this._config || (this._config = _options) + if (!this._config) { + this._config = _options + } this.browserStackConfig = BrowserStackConfig.getInstance(_options, _config) if (Array.isArray(capabilities)) { capabilities @@ -180,12 +182,12 @@ export default class BrowserstackLauncherService implements Services.ServiceInst } try { CrashReporter.setConfigDetails(this._config, capabilities, this._options) - } catch (error: any) { + } catch (error: unknown) { BStackLogger.error(`[Crash_Report_Upload] Config processing failed due to ${error}`) } } - async onWorkerStart (cid: any, caps: any) { + async onWorkerStart (cid: string, caps: WebdriverIO.Capabilities) { try { if (this._options.percy && this._percyBestPlatformCaps) { const isThisBestPercyPlatform = ObjectsAreEqual(caps, this._percyBestPlatformCaps) @@ -193,12 +195,12 @@ export default class BrowserstackLauncherService implements Services.ServiceInst process.env.BEST_PLATFORM_CID = cid } } - } catch (err: unknown) { + } catch (err) { PercyLogger.error(`Error while setting best platform for Percy snapshot at worker start ${err}`) } } - async onPrepare (config: Options.Testrunner, capabilities: Capabilities.TestrunnerCapabilities) { + async onPrepare (config: Options.Testrunner, capabilities: Capabilities.TestrunnerCapabilities | WebdriverIO.Capabilities) { // Send Funnel start request await sendStart(this.browserStackConfig) @@ -206,16 +208,16 @@ export default class BrowserstackLauncherService implements Services.ServiceInst if (!shouldAddServiceVersion(this._config, this._options.testObservability, capabilities as Capabilities.BrowserStackCapabilities)) { try { if ((capabilities as Capabilities.BrowserStackCapabilities).browserName) { - capabilities = await AiHandler.setup(this._config, this.browserStackConfig, this._options, capabilities, false) + capabilities = await AiHandler.setup(this._config, this.browserStackConfig, this._options, capabilities as WebdriverIO.Capabilities, false) } else if ( Array.isArray(capabilities)){ for (let i = 0; i < capabilities.length; i++) { if ((capabilities[i] as Capabilities.BrowserStackCapabilities).browserName) { - capabilities[i] = await AiHandler.setup(this._config, this.browserStackConfig, this._options, capabilities[i], false) + capabilities[i] = await AiHandler.setup(this._config, this.browserStackConfig, this._options, capabilities[i] as WebdriverIO.Capabilities, false) } } - } else if (isValidCapsForHealing(capabilities as any)) { + } else if (isValidCapsForHealing(capabilities)) { // setting up healing in case capabilities.xyz.capabilities.browserName where xyz can be anything: capabilities = await AiHandler.setup(this._config, this.browserStackConfig, this._options, capabilities, true) } @@ -238,8 +240,8 @@ export default class BrowserstackLauncherService implements Services.ServiceInst try { app = await this._validateApp(appConfig) - } catch (error: any){ - throw new SevereServiceError(error) + } catch (error: unknown){ + throw new SevereServiceError((error as Error).message) } if (VALID_APP_EXTENSION.includes(path.extname(app.app!))){ @@ -255,7 +257,7 @@ export default class BrowserstackLauncherService implements Services.ServiceInst } BStackLogger.info(`Using app: ${app.app}`) - this._updateCaps(capabilities, 'app', app.app) + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'app', app.app) } /** @@ -263,17 +265,17 @@ export default class BrowserstackLauncherService implements Services.ServiceInst */ if (this._options.buildIdentifier) { this._buildIdentifier = this._options.buildIdentifier - this._updateCaps(capabilities, 'buildIdentifier', this._buildIdentifier) + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'buildIdentifier', this._buildIdentifier) } /** * evaluate buildIdentifier in case unique execution identifiers are present * e.g., ${BUILD_NUMBER} and ${DATE_TIME} */ - this._handleBuildIdentifier(capabilities) + this._handleBuildIdentifier(capabilities as Capabilities.TestrunnerCapabilities) // remove accessibilityOptions from the capabilities if present - this._updateObjectTypeCaps(capabilities, 'accessibilityOptions') + this._updateObjectTypeCaps(capabilities as Capabilities.TestrunnerCapabilities, 'accessibilityOptions') const shouldSetupPercy = this._options.percy || (isUndefined(this._options.percy) && this._options.app) if (this._options.testObservability || this._accessibilityAutomation || shouldSetupPercy) { @@ -298,27 +300,27 @@ export default class BrowserstackLauncherService implements Services.ServiceInst } }, {}) - this._updateObjectTypeCaps(capabilities, 'accessibilityOptions', filteredOpts) + this._updateObjectTypeCaps(capabilities as Capabilities.TestrunnerCapabilities, 'accessibilityOptions', filteredOpts) } else if (isAccessibilityAutomationSession(this._accessibilityAutomation)) { - this._updateObjectTypeCaps(capabilities, 'accessibilityOptions', {}) + this._updateObjectTypeCaps(capabilities as Capabilities.TestrunnerCapabilities, 'accessibilityOptions', {}) } if (shouldSetupPercy) { try { - const bestPlatformPercyCaps = getBestPlatformForPercySnapshot(capabilities) - this._percyBestPlatformCaps = bestPlatformPercyCaps + const bestPlatformPercyCaps = getBestPlatformForPercySnapshot(capabilities as Capabilities.TestrunnerCapabilities) + this._percyBestPlatformCaps = bestPlatformPercyCaps as WebdriverIO.Capabilities process.env[BROWSERSTACK_PERCY] = 'false' await this.setupPercy(this._options, this._config, { projectName: this._projectName }) this._updateBrowserStackPercyConfig() - } catch (err: unknown) { + } catch (err) { PercyLogger.error(`Error while setting up Percy ${err}`) } } - this._updateCaps(capabilities, 'testhubBuildUuid') - this._updateCaps(capabilities, 'buildProductMap') + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'testhubBuildUuid') + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'buildProductMap') if (!this._options.browserstackLocal) { return BStackLogger.info('browserstackLocal is not enabled - skipping...') @@ -331,9 +333,9 @@ export default class BrowserstackLauncherService implements Services.ServiceInst this.browserstackLocal = new BrowserstackLocalLauncher.Local() - this._updateCaps(capabilities, 'local') + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'local') if (opts.localIdentifier) { - this._updateCaps(capabilities, 'localIdentifier', opts.localIdentifier) + this._updateCaps(capabilities as Capabilities.TestrunnerCapabilities, 'localIdentifier', opts.localIdentifier) } /** @@ -452,12 +454,14 @@ export default class BrowserstackLauncherService implements Services.ServiceInst let signal = 0 const handler = async () => { signal++ - signal === 1 && await this.stopPercy() + if (signal === 1) { + await this.stopPercy() + } } process.on('beforeExit', handler) process.on('SIGINT', handler) process.on('SIGTERM', handler) - } catch (err: unknown) { + } catch (err) { PercyLogger.debug(`Error in percy setup ${format(err)}`) process.env[BROWSERSTACK_PERCY] = 'false' } @@ -488,7 +492,7 @@ export default class BrowserstackLauncherService implements Services.ServiceInst form.append('custom_id', app.customId) } - const headers: any = { + const headers: Record = { Authorization: getBasicAuthHeader(this._config.user as string, this._config.key as string), } @@ -540,7 +544,7 @@ export default class BrowserstackLauncherService implements Services.ServiceInst BStackLogger.logToFile(`Response - ${format(response)}`, 'debug') } - _updateObjectTypeCaps(capabilities?: Capabilities.TestrunnerCapabilities, capType?: string, value?: { [key: string]: any }) { + _updateObjectTypeCaps(capabilities?: Capabilities.TestrunnerCapabilities, capType?: string, value?: { [key: string]: unknown }) { try { if (Array.isArray(capabilities)) { capabilities @@ -831,7 +835,7 @@ export default class BrowserstackLauncherService implements Services.ServiceInst const newIdentifier = 1 this._updateLocalBuildCache(filePath, this._buildName, 1) return newIdentifier.toString() - } catch (error: any) { + } catch { return null } } diff --git a/packages/wdio-browserstack-service/src/log4jsAppender.ts b/packages/wdio-browserstack-service/src/log4jsAppender.ts index cbd7c90af..9975a1f81 100644 --- a/packages/wdio-browserstack-service/src/log4jsAppender.ts +++ b/packages/wdio-browserstack-service/src/log4jsAppender.ts @@ -4,8 +4,8 @@ const BSTestOpsLogger = new logReportingAPI({}) //Disabling eslint here as there params can be used later // eslint-disable-next-line @typescript-eslint/no-unused-vars -function BSTestOpsLog4JSAppender(layout: Function, timezoneOffset: any): Function { - return (loggingEvent: any) => { +function BSTestOpsLog4JSAppender(layout: Function, timezoneOffset: unknown): Function { + return (loggingEvent: { level?: { levelStr: string }, data: string[] }) => { BSTestOpsLogger.log({ level: loggingEvent.level ? loggingEvent.level.levelStr : null, message: loggingEvent.data ? loggingEvent.data.join(' ') : null @@ -13,7 +13,8 @@ function BSTestOpsLog4JSAppender(layout: Function, timezoneOffset: any): Functio } } -export const configure = (config: any, layouts: any): Function => { +// eslint-disable-next-line @typescript-eslint/no-explicit-any +export const configure = (config: { timezoneOffset: string, layout: { type: string } }, layouts: any): Function => { let layout = layouts.colouredLayout if (config.layout) { layout = layouts.layout(config.layout.type, config.layout) diff --git a/packages/wdio-browserstack-service/src/logPatcher.ts b/packages/wdio-browserstack-service/src/logPatcher.ts index 730d0b0c5..6006568e5 100644 --- a/packages/wdio-browserstack-service/src/logPatcher.ts +++ b/packages/wdio-browserstack-service/src/logPatcher.ts @@ -5,11 +5,7 @@ const LOG_LEVELS = { } class logPatcher extends Transport { - constructor(opts: any) { - super(opts) - } - - logToTestOps = (level = LOG_LEVELS.INFO, message = ['']) => { + logToTestOps = (level = LOG_LEVELS.INFO, message = [''] as unknown[]) => { (process.emit as Function)(`bs:addLog:${process.pid}`, { timestamp: new Date().toISOString(), level: level.toUpperCase(), @@ -20,27 +16,27 @@ class logPatcher extends Transport { } /* Patching this would show user an extended trace on their cli */ - trace = (...message: any) => { + trace = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.TRACE, message) } - debug = (...message:any) => { + debug = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.DEBUG, message) } - info = (...message: any) => { + info = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.INFO, message) } - warn = (...message: any) => { + warn = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.WARN, message) } - error = (...message: any) => { + error = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.ERROR, message) } - log = (...message:any) => { + log = (...message: unknown[]) => { this.logToTestOps(LOG_LEVELS.INFO, message) } } diff --git a/packages/wdio-browserstack-service/src/logReportingAPI.ts b/packages/wdio-browserstack-service/src/logReportingAPI.ts index 1a8b793ea..bf8f372bd 100644 --- a/packages/wdio-browserstack-service/src/logReportingAPI.ts +++ b/packages/wdio-browserstack-service/src/logReportingAPI.ts @@ -10,7 +10,7 @@ const LOG_LEVELS = { } class logReportingAPI extends Transport { - log(info: any, callback: undefined|Function = undefined) { + log(info: { level: string | null, message: string | null }, callback: undefined|Function = undefined) { setImmediate(() => { this.emit('logged', info) }) @@ -28,9 +28,9 @@ class logReportingAPI extends Transport { } } - logToTestOps = (level = LOG_LEVELS.INFO, message = '', consoleLog = true) => { + logToTestOps = (level = LOG_LEVELS.INFO, message: string | null = '', consoleLog = true) => { if (consoleLog) { - (consoleHolder as any)[level.toLowerCase()](message) + consoleHolder[level.toLowerCase() as 'info' | 'log'](message) } (process.emit as Function)(`bs:addLog:${process.pid}`, { timestamp: new Date().toISOString(), @@ -42,23 +42,23 @@ class logReportingAPI extends Transport { } /* Patching this would show user an extended trace on their cli */ - trace = (message: any) => { + trace = (message: string | null) => { this.logToTestOps(LOG_LEVELS.TRACE, message) } - debug = (message: any) => { + debug = (message: string | null) => { this.logToTestOps(LOG_LEVELS.DEBUG, message) } - info = (message: any) => { + info = (message: string | null) => { this.logToTestOps(LOG_LEVELS.INFO, message) } - warn = (message: any) => { + warn = (message: string | null) => { this.logToTestOps(LOG_LEVELS.WARN, message) } - error = (message: any) => { + error = (message: string | null) => { this.logToTestOps(LOG_LEVELS.ERROR, message) } } diff --git a/packages/wdio-browserstack-service/src/performance-tester.ts b/packages/wdio-browserstack-service/src/performance-tester.ts index 69a6ce24e..d4537b635 100644 --- a/packages/wdio-browserstack-service/src/performance-tester.ts +++ b/packages/wdio-browserstack-service/src/performance-tester.ts @@ -6,7 +6,7 @@ import { BStackLogger } from './bstackLogger.js' export default class PerformanceTester { static _observer: PerformanceObserver - static _csvWriter: any + static _csvWriter: { writeRecords: (arg0: unknown) => Promise } private static _events: PerformanceEntry[] = [] static started = false @@ -98,6 +98,6 @@ export default class PerformanceTester { }) this._csvWriter.writeRecords(dat) .then(() => BStackLogger.info('Performance CSV report generated successfully')) - .catch((error: any) => console.error(error)) + .catch((error: unknown) => console.error(error)) } } diff --git a/packages/wdio-browserstack-service/src/reporter.ts b/packages/wdio-browserstack-service/src/reporter.ts index ecf5ba6dd..c2d151bf0 100644 --- a/packages/wdio-browserstack-service/src/reporter.ts +++ b/packages/wdio-browserstack-service/src/reporter.ts @@ -111,7 +111,7 @@ class _TestReporter extends WDIOReporter { // Sometimes in cases where a file has two suites. Then the file name be unknown for second suite, so getting the filename from first suite filename = this._suiteName || suiteStats.file } - } catch (e) { + } catch { BStackLogger.debug('Error in decoding file name of suite') } } diff --git a/packages/wdio-browserstack-service/src/request-handler.ts b/packages/wdio-browserstack-service/src/request-handler.ts index 518f1b2a2..fe44ebd88 100644 --- a/packages/wdio-browserstack-service/src/request-handler.ts +++ b/packages/wdio-browserstack-service/src/request-handler.ts @@ -67,7 +67,7 @@ export default class RequestQueueHandler { callCallback = async (data: UploadType[], kind: string) => { BStackLogger.debug('calling callback with kind ' + kind) - this.callback && await this.callback(data) + await this.callback?.(data) } resetEventBatchPolling () { diff --git a/packages/wdio-browserstack-service/src/scripts/accessibility-scripts.ts b/packages/wdio-browserstack-service/src/scripts/accessibility-scripts.ts index 081c62499..6820e468f 100644 --- a/packages/wdio-browserstack-service/src/scripts/accessibility-scripts.ts +++ b/packages/wdio-browserstack-service/src/scripts/accessibility-scripts.ts @@ -2,6 +2,18 @@ import path from 'node:path' import fs from 'node:fs' import os from 'node:os' +interface Scripts { + scan: string + getResults: string + getResultsSummary: string + saveResults: string +} + +interface Command { + name: string + class: string +} + class AccessibilityScripts { private static instance: AccessibilityScripts | null = null @@ -9,7 +21,7 @@ class AccessibilityScripts { public getResults: string | null = null public getResultsSummary: string | null = null public saveTestResults: string | null = null - public commandsToWrap: Array | null = null + public commandsToWrap: Array | null = null public browserstackFolderPath = path.join(os.homedir(), '.browserstack') public commandsPath = path.join(this.browserstackFolderPath, 'commands.json') @@ -33,12 +45,12 @@ class AccessibilityScripts { this.update(JSON.parse(data)) } } - } catch (error: any) { + } catch { /* Do nothing */ } } - public update(data: { commands: any[], scripts: Record }) { + public update(data: { commands: [], scripts: Scripts }) { if (data.scripts) { this.performScan = data.scripts.scan this.getResults = data.scripts.getResults diff --git a/packages/wdio-browserstack-service/src/service.ts b/packages/wdio-browserstack-service/src/service.ts index b11147596..80a3d89e2 100644 --- a/packages/wdio-browserstack-service/src/service.ts +++ b/packages/wdio-browserstack-service/src/service.ts @@ -53,7 +53,10 @@ export default class BrowserstackService implements Services.ServiceInstance { ) { this._options = { ...DEFAULT_OPTIONS, ...options } // added to maintain backward compatibility with webdriverIO v5 - this._config || (this._config = this._options) + if (!this._config) { + this._config = this._options + } + this._observability = this._options.testObservability this._accessibility = this._options.accessibility this._percy = isTrue(process.env.BROWSERSTACK_PERCY) @@ -205,7 +208,7 @@ export default class BrowserstackService implements Services.ServiceInstance { } catch (err) { BStackLogger.error(`Error in service class before function: ${err}`) if (shouldProcessEventForTesthub('')) { - CrashReporter.uploadCrashReport(`Error in service class before function: ${err}`, err && (err as any).stack) + CrashReporter.uploadCrashReport(`Error in service class before function: ${err}`, err ? (err as Error).stack as string : 'unknown error') } } @@ -241,7 +244,7 @@ export default class BrowserstackService implements Services.ServiceInstance { } } - async beforeHook (test: Frameworks.Test|CucumberHook, context: any) { + async beforeHook (test: Frameworks.Test|CucumberHook, context: unknown) { if (this._config.framework !== 'cucumber') { this._currentTest = test as Frameworks.Test // not update currentTest when this is called for cucumber step } @@ -385,8 +388,8 @@ export default class BrowserstackService implements Services.ServiceInstance { if (!this._browser.isMultiremote) { BStackLogger.info(`Update (reloaded) job with sessionId ${oldSessionId}, ${status}`) } else { - const browserName = (this._browser as any as WebdriverIO.MultiRemoteBrowser).instances.filter( - (browserName: string) => this._browser && (this._browser as any as WebdriverIO.MultiRemoteBrowser).getInstance(browserName).sessionId === newSessionId)[0] + const browserName = (this._browser as unknown as WebdriverIO.MultiRemoteBrowser).instances.filter( + (browserName: string) => this._browser && (this._browser as unknown as WebdriverIO.MultiRemoteBrowser).getInstance(browserName).sessionId === newSessionId)[0] BStackLogger.info(`Update (reloaded) multiremote job for browser "${browserName}" and sessionId ${oldSessionId}, ${status}`) } @@ -410,11 +413,15 @@ export default class BrowserstackService implements Services.ServiceInstance { _isAppAutomate(): boolean { const browserDesiredCapabilities = (this._browser?.capabilities ?? {}) - const desiredCapabilities = (this._caps ?? {}) - return !!browserDesiredCapabilities['appium:app'] || !!desiredCapabilities['appium:app'] || !!(( desiredCapabilities as any)['appium:options']?.app) + const desiredCapabilities = (this._caps ?? {}) as WebdriverIO.Capabilities + return ( + !!browserDesiredCapabilities['appium:app'] || + !!desiredCapabilities['appium:app'] || + !!desiredCapabilities['appium:options']?.app + ) } - _updateJob (requestBody: any) { + _updateJob (requestBody: unknown) { return this._multiRemoteAction((sessionId: string, browserName: string) => { BStackLogger.info(browserName ? `Update multiremote job for browser "${browserName}" and sessionId ${sessionId}` @@ -433,7 +440,7 @@ export default class BrowserstackService implements Services.ServiceInstance { return action(this._browser.sessionId) } - const multiremotebrowser = this._browser as any as WebdriverIO.MultiRemoteBrowser + const multiremotebrowser = this._browser as unknown as WebdriverIO.MultiRemoteBrowser return Promise.all(multiremotebrowser.instances .filter((browserName: string) => { const cap = getBrowserCapabilities(multiremotebrowser, this._caps, browserName) @@ -445,7 +452,7 @@ export default class BrowserstackService implements Services.ServiceInstance { ) } - _update(sessionId: string, requestBody: any) { + _update(sessionId: string, requestBody: unknown) { if (!isBrowserstackSession(this._browser)) { return Promise.resolve() } @@ -453,7 +460,7 @@ export default class BrowserstackService implements Services.ServiceInstance { BStackLogger.debug(`Updating Browserstack session at ${sessionUrl} with request body: `, requestBody) const encodedAuth = Buffer.from(`${this._config.user}:${this._config.key}`, 'utf8').toString('base64') - const headers: any = { + const headers: Record = { 'Content-Type': 'application/json; charset=utf-8', Authorization: `Basic ${encodedAuth}`, } @@ -483,7 +490,7 @@ export default class BrowserstackService implements Services.ServiceInstance { let browserUrl const encodedAuth = Buffer.from(`${this._config.user}:${this._config.key}`, 'utf8').toString('base64') - const headers: any = { + const headers: Record = { 'Content-Type': 'application/json; charset=utf-8', Authorization: `Basic ${encodedAuth}`, } @@ -546,7 +553,7 @@ export default class BrowserstackService implements Services.ServiceInstance { return this._executeCommand('annotate', { data, level: 'info' }) } - private async _executeCommand( + private async _executeCommand( action: string, args?: object, ) { @@ -558,7 +565,7 @@ export default class BrowserstackService implements Services.ServiceInstance { const script = `browserstack_executor: ${JSON.stringify(cmd)}` if (this._browser.isMultiremote) { - const multiRemoteBrowser = this._browser as any as WebdriverIO.MultiRemoteBrowser + const multiRemoteBrowser = this._browser as unknown as WebdriverIO.MultiRemoteBrowser return Promise.all(Object.keys(this._caps).map(async (browserName) => { const browser = multiRemoteBrowser.getInstance(browserName) return (await browser.execute(script)) diff --git a/packages/wdio-browserstack-service/src/testHub/utils.ts b/packages/wdio-browserstack-service/src/testHub/utils.ts index 1e5d30414..1ae9e88d0 100644 --- a/packages/wdio-browserstack-service/src/testHub/utils.ts +++ b/packages/wdio-browserstack-service/src/testHub/utils.ts @@ -4,13 +4,22 @@ import type BrowserStackConfig from '../config.js' import { BStackLogger } from '../bstackLogger.js' import { isTrue } from '../util.js' -export const getProductMap = (config: BrowserStackConfig): any => { +interface ErrorType { + key: string + message: string +} + +export interface Errors { + errors: ErrorType[] +} + +export const getProductMap = (config: BrowserStackConfig): { [key: string]: boolean } => { return { - 'observability': config.testObservability.enabled, - 'accessibility': config.accessibility, - 'percy': config.percy, - 'automate': config.automate, - 'app_automate': config.appAutomate + observability: config.testObservability.enabled, + accessibility: config.accessibility, + percy: config.percy, + automate: config.automate, + app_automate: config.appAutomate } } @@ -27,17 +36,17 @@ export const shouldProcessEventForTesthub = (eventType: string): boolean => { return Boolean(process.env[BROWSERSTACK_ACCESSIBILITY] || process.env[BROWSERSTACK_OBSERVABILITY] || process.env[BROWSERSTACK_PERCY])! } -export const handleErrorForObservability = (error: any): void => { +export const handleErrorForObservability = (error: Errors | null): void => { process.env[BROWSERSTACK_OBSERVABILITY] = 'false' logBuildError(error, 'observability') } -export const handleErrorForAccessibility = (error: any): void => { +export const handleErrorForAccessibility = (error: Errors | null): void => { process.env[BROWSERSTACK_ACCESSIBILITY] = 'false' logBuildError(error, 'accessibility') } -export const logBuildError = (error: any, product: string = ''): void => { +export const logBuildError = (error: Errors | null, product: string = ''): void => { if (!error || !error.errors) { BStackLogger.error(`${product.toUpperCase()} Build creation failed ${error!}`) return diff --git a/packages/wdio-browserstack-service/src/testOps/featureStats.ts b/packages/wdio-browserstack-service/src/testOps/featureStats.ts index bd82251ee..4244e89cd 100644 --- a/packages/wdio-browserstack-service/src/testOps/featureStats.ts +++ b/packages/wdio-browserstack-service/src/testOps/featureStats.ts @@ -12,6 +12,13 @@ interface JSONConversionSettings { nestedGroups?: boolean } +export interface Feature { + triggeredCount: number + sentCount: number + failedCount: number + groups: Feature[] +} + class FeatureStats { private triggeredCount: number = 0 private sentCount: number = 0 @@ -126,7 +133,7 @@ class FeatureStats { } } - public static fromJSON(json: any): FeatureStats { + public static fromJSON(json: Feature): FeatureStats { const stats = new FeatureStats() if (!json || isObjectEmpty(json)) { diff --git a/packages/wdio-browserstack-service/src/testOps/listener.ts b/packages/wdio-browserstack-service/src/testOps/listener.ts index 9c2f9f0bd..110a0209a 100644 --- a/packages/wdio-browserstack-service/src/testOps/listener.ts +++ b/packages/wdio-browserstack-service/src/testOps/listener.ts @@ -26,7 +26,7 @@ class Listener { private readonly logEvents: FeatureStats = this.usageStats.logStats private requestBatcher?: RequestQueueHandler private pendingUploads = 0 - private static _accessibilityOptions?: { [key: string]: any; } + private static _accessibilityOptions?: { [key: string]: unknown; } private static _testRunAccessibilityVar?: boolean = false // Making the constructor private to use singleton pattern @@ -40,7 +40,7 @@ class Listener { return Listener.instance } - public static setAccessibilityOptions(options: { [key: string]: any; } | undefined) { + public static setAccessibilityOptions(options: { [key: string]: unknown; } | undefined) { Listener._accessibilityOptions = options } @@ -225,7 +225,7 @@ class Listener { await batchAndPostEvents(DATA_BATCH_ENDPOINT, 'BATCH_DATA', data) BStackLogger.debug('callback: marking events success ' + data.length) this.eventsSuccess(data) - } catch (e) { + } catch { BStackLogger.debug('callback: marking events failed ' + data.length) this.eventsFailed(data) } finally { diff --git a/packages/wdio-browserstack-service/src/testOps/testOpsConfig.ts b/packages/wdio-browserstack-service/src/testOps/testOpsConfig.ts index 345b6472b..d134381b3 100644 --- a/packages/wdio-browserstack-service/src/testOps/testOpsConfig.ts +++ b/packages/wdio-browserstack-service/src/testOps/testOpsConfig.ts @@ -3,8 +3,9 @@ class TestOpsConfig { public buildStopped: boolean = false public buildHashedId?: string - static getInstance(...args: any[]) { + static getInstance(...args: unknown[]) { if (!this._instance) { + // @ts-expect-error passing args to constructor this._instance = new TestOpsConfig(...args) } return this._instance diff --git a/packages/wdio-browserstack-service/src/testOps/usageStats.ts b/packages/wdio-browserstack-service/src/testOps/usageStats.ts index 68c61ba7f..ff6174a6f 100644 --- a/packages/wdio-browserstack-service/src/testOps/usageStats.ts +++ b/packages/wdio-browserstack-service/src/testOps/usageStats.ts @@ -1,9 +1,23 @@ -import FeatureStats from './featureStats.js' +import FeatureStats, { type Feature } from './featureStats.js' import FeatureUsage from './featureUsage.js' import { BStackLogger } from '../bstackLogger.js' import TestOpsConfig from './testOpsConfig.js' import type { TOUsageStats } from '../types.js' +export interface UsageStat { + testEvents: { + started: Feature + finished: Feature + } + hookEvents: { + started: Feature + finished: Feature + } + logEvents: Feature + cbtSessionEvents: Feature + cbtSessionStats: Feature +} + class UsageStats { public static instance: UsageStats public testStartedStats: FeatureStats @@ -42,7 +56,7 @@ class UsageStats { this.logStats.add(usageStats.logStats) } - public getFormattedData(workersData: any[]) { + public getFormattedData(workersData: { usageStats: UsageStat }[]) { this.addDataFromWorkers(workersData) const testOpsConfig = TestOpsConfig.getInstance() const usage: TOUsageStats = { @@ -64,7 +78,7 @@ class UsageStats { return usage } - public addDataFromWorkers(workersData: any[]) { + public addDataFromWorkers(workersData: { usageStats: UsageStat }[]) { workersData.map(workerData => { try { const usageStatsForWorker = UsageStats.fromJSON(workerData.usageStats) @@ -111,7 +125,7 @@ class UsageStats { } } - public static fromJSON(data: any) { + public static fromJSON(data: UsageStat) { const usageStats = new UsageStats() usageStats.testStartedStats = FeatureStats.fromJSON(data.testEvents.started) usageStats.testFinishedStats = FeatureStats.fromJSON(data.testEvents.finished) diff --git a/packages/wdio-browserstack-service/src/types.ts b/packages/wdio-browserstack-service/src/types.ts index bbe4f60e3..a39c1a713 100644 --- a/packages/wdio-browserstack-service/src/types.ts +++ b/packages/wdio-browserstack-service/src/types.ts @@ -1,7 +1,7 @@ import type { Capabilities, Options, Frameworks } from '@wdio/types' import type { Options as BSOptions } from 'browserstack-local' -export type MultiRemoteAction = (sessionId: string, browserName?: string) => Promise; +export type MultiRemoteAction = (sessionId: string, browserName?: string) => Promise; export type AppConfig = { id?: string, @@ -67,7 +67,9 @@ export interface BrowserstackConfig { /** * Set the Percy related config options under this key. */ - percyOptions?: any; + percyOptions?: { + version?: string, + }; /** * Set this to true to enable BrowserStack Accessibility Automation which will * automically conduct accessibility testing on your pre-existing test builds @@ -79,7 +81,7 @@ export interface BrowserstackConfig { * Customise the Accessibility-related config options under this key. * For e.g. wcagVersion, bestPractice issues, needsReview issues etc. */ - accessibilityOptions?: { [key: string]: any; }; + accessibilityOptions?: { [key: string]: unknown; }; /** * Set this with app file path present locally on your device or * app hashed id returned after uploading app to BrowserStack or @@ -225,7 +227,7 @@ export interface UserConfig { buildTag?: string, bstackServiceVersion?: string, buildIdentifier?: string, - accessibilityOptions?: { [key: string]: any; } + accessibilityOptions?: { [key: string]: unknown; } } export interface UploadType { @@ -242,7 +244,7 @@ export interface LogData { hook_run_uuid?: string message?: string level?: string - http_response?: any + http_response?: unknown } export interface StdLog extends LogData { @@ -276,7 +278,7 @@ export interface LaunchResponse { status: string; commandsToWrap: { scriptsToRun: string[]; - commands: any[]; + commands: unknown[]; }; scripts: { name: string; @@ -284,7 +286,7 @@ export interface LaunchResponse { }[]; capabilities: { name: string, - value: any + value: unknown }[]; } }; @@ -292,7 +294,7 @@ export interface LaunchResponse { export interface UserConfigforReporting { framework?: string, - services?: any[], + services?: unknown[], capabilities?: WebdriverIO.Capabilities, env?: { 'BROWSERSTACK_BUILD': string | undefined, @@ -306,7 +308,7 @@ export interface CredentialsForCrashReportUpload { password?: string } -interface IntegrationObject { +export interface IntegrationObject { capabilities?: WebdriverIO.Capabilities, session_id?: string browser?: string @@ -351,5 +353,39 @@ export interface TOUsageStats { enabled: boolean manuallySet: boolean buildHashedId?: string - events?: any + events?: unknown +} + +export interface EventProperties { + language_framework: string + referrer: string + language: string + languageVersion: string + buildName: string + buildIdentifier: string + os: string + hostname: string + productMap: { [key: string]: boolean } + product: string[] + productUsage?: { + testObservability: { + events: { + buildEvents: { + finished: { + status: string + error?: string + stoppedFrom: string + } + } + } + } + } +} + +export interface FunnelData { + userName?: string + accessKey?: string + event_type?: string, + detectedFramework?: string, + event_properties: EventProperties } diff --git a/packages/wdio-browserstack-service/src/util.ts b/packages/wdio-browserstack-service/src/util.ts index 9969605ef..aa160cfc9 100644 --- a/packages/wdio-browserstack-service/src/util.ts +++ b/packages/wdio-browserstack-service/src/util.ts @@ -17,6 +17,7 @@ import logPatcher from './logPatcher.js' import PerformanceTester from './performance-tester.js' import { getProductMap, logBuildError, handleErrorForObservability, handleErrorForAccessibility } from './testHub/utils.js' import type BrowserStackConfig from './config.js' +import type { Errors } from './testHub/utils.js' import type { UserConfig, UploadType, BrowserstackConfig, BrowserstackOptions, LaunchResponse } from './types.js' import type { ITestCaseHookParameter } from './cucumber-types.js' @@ -96,7 +97,7 @@ export function getBrowserDescription(cap: WebdriverIO.Capabilities) { * These keys describe the browser the test was run on */ return BROWSER_DESCRIPTION - .map((k) => (cap as any)[k]) + .map((k) => (cap)[k as keyof typeof cap]) .filter(Boolean) .join(' ') } @@ -147,22 +148,23 @@ export function getParentSuiteName(fullTitle: string, testSuiteTitle: string): s return parentSuiteName.trim() } -function processError(error: any, fn: Function, args: any[]) { +function processError(error: Error, fn: Function, args: unknown[]) { BStackLogger.error(`Error in executing ${fn.name} with args ${args}: ${error}`) let argsString: string try { argsString = JSON.stringify(args) - } catch (e) { + } catch { argsString = util.inspect(args, { depth: 2 }) } - CrashReporter.uploadCrashReport(`Error in executing ${fn.name} with args ${argsString} : ${error}`, error && error.stack) + CrashReporter.uploadCrashReport(`Error in executing ${fn.name} with args ${argsString} : ${error}`, error && error.stack || 'unknown error') } export function o11yErrorHandler(fn: Function) { - return function (...args: any) { + return function (...args: unknown[]) { try { let functionToHandle = fn if (process.env[PERF_MEASUREMENT_ENV]) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any functionToHandle = PerformanceTester.getPerformance().timerify(functionToHandle as any) } const result = functionToHandle(...args) @@ -171,13 +173,13 @@ export function o11yErrorHandler(fn: Function) { } return result } catch (error) { - processError(error, fn, args) + processError(error as Error, fn, args) } } } export function errorHandler(fn: Function) { - return function (...args: any) { + return function (...args: unknown[]) { try { const functionToHandle = fn const result = functionToHandle(...args) @@ -191,7 +193,7 @@ export function errorHandler(fn: Function) { } } -export async function nodeRequest(requestType: string, apiEndpoint: string, options: any, apiUrl: string, timeout: number = 120000) { +export async function nodeRequest(requestType: string, apiEndpoint: string, options: RequestInit, apiUrl: string, timeout: number = 120000) { try { const controller = new AbortController() @@ -207,17 +209,22 @@ export async function nodeRequest(requestType: string, apiEndpoint: string, opti clearTimeout(timeoutId) return await response.json() - } catch (error : any) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + } catch (error: any) { BStackLogger.debug(`Error in firing request ${apiUrl}/${apiEndpoint}: ${format(error)}`) const isLogUpload = apiEndpoint === UPLOAD_LOGS_ENDPOINT if (error && error.response) { const errorMessageJson = error.response.body ? JSON.parse(error.response.body.toString()) : null const errorMessage = errorMessageJson ? errorMessageJson.message : null if (errorMessage) { - isLogUpload ? BStackLogger.debug(`${errorMessage} - ${error.stack}`) : BStackLogger.error(`${errorMessage} - ${error.stack}`) - } else { - isLogUpload ? BStackLogger.debug(`${error.stack}`) : BStackLogger.error(`${error.stack}`) + const message = `${errorMessage} - ${error.stack}` + if (isLogUpload) { + BStackLogger.debug(message) + } else { + BStackLogger.error(message) + } } + if (isLogUpload) { return } @@ -238,7 +245,7 @@ export async function nodeRequest(requestType: string, apiEndpoint: string, opti A class wrapper for error handling. The wrapper wraps all the methods of the class with a error handler function. If any exception occurs in any of the class method, that will get caught in the wrapper which logs and reports the error. */ -type ClassType = { new(...args: any[]): any; }; // A generic type for a class +type ClassType = { new(...args: unknown[]): unknown; }; // A generic type for a class export function o11yClassErrorHandler(errorClass: T): T { const prototype = errorClass.prototype @@ -252,7 +259,7 @@ export function o11yClassErrorHandler(errorClass: T): T { // In order to preserve this context, need to define like this Object.defineProperty(prototype, methodName, { writable: true, - value: function(...args: any) { + value: function(...args: unknown[]) { try { const result = (process.env[PERF_MEASUREMENT_ENV] ? PerformanceTester.getPerformance().timerify(method) : method).call(this, ...args) if (result instanceof Promise) { @@ -261,7 +268,7 @@ export function o11yClassErrorHandler(errorClass: T): T { return result } catch (err) { - processError(err, method, args) + processError(err as Error, method, args) } } }) @@ -277,7 +284,7 @@ export const processTestObservabilityResponse = (response: LaunchResponse) => { return } if (!response.observability.success) { - handleErrorForObservability(response.observability) + handleErrorForObservability(response.observability as Errors) return } process.env[BROWSERSTACK_OBSERVABILITY] = 'true' @@ -287,16 +294,16 @@ export const processTestObservabilityResponse = (response: LaunchResponse) => { } interface DataElement { - [key: string]: any + [key: string]: unknown } export const jsonifyAccessibilityArray = ( dataArray: DataElement[], keyName: keyof DataElement, valueName: keyof DataElement -): Record => { - const result: Record = {} - dataArray.forEach((element: DataElement) => { +): Record => { + const result: Record = {} + dataArray.forEach((element: Record) => { result[element[keyName]] = element[valueName] }) return result @@ -308,7 +315,7 @@ export const processAccessibilityResponse = (response: LaunchResponse) => { return } if (!response.accessibility.success) { - handleErrorForAccessibility(response.accessibility) + handleErrorForAccessibility(response.accessibility as Errors) return } @@ -319,14 +326,15 @@ export const processAccessibilityResponse = (response: LaunchResponse) => { 'commands': response.accessibility.options.commandsToWrap.commands } if (scannerVersion) { - process.env.BSTACK_A11Y_SCANNER_VERSION = scannerVersion + process.env.BSTACK_A11Y_SCANNER_VERSION = scannerVersion as string } BStackLogger.debug(`Accessibility scannerVersion ${scannerVersion}`) if (accessibilityToken) { - process.env.BSTACK_A11Y_JWT = accessibilityToken + process.env.BSTACK_A11Y_JWT = accessibilityToken as string process.env[BROWSERSTACK_ACCESSIBILITY] = 'true' } if (scriptsJson) { + // @ts-expect-error fix type AccessibilityScripts.update(scriptsJson) AccessibilityScripts.store() } @@ -415,17 +423,17 @@ export const launchTestSession = o11yErrorHandler(async function launchTestSessi } processLaunchBuildResponse(jsonResponse, options) launchBuildUsage.success() - } catch (error: any) { + } catch (error: unknown) { BStackLogger.debug(`TestHub build start failed: ${format(error)}`) - if (!error.success) { + if (!(error as Error & { success: boolean }).success) { launchBuildUsage.failed(error) - logBuildError(error) + logBuildError(error as Errors) return } } }) -export const validateCapsWithA11y = (deviceName?: any, platformMeta?: { [key: string]: any; }, chromeOptions?: any) => { +export const validateCapsWithA11y = (deviceName?: string, platformMeta?: { [key: string]: string; }, chromeOptions?: Capabilities.ChromeOptions) => { /* Check if the current driver platform is eligible for Accessibility scan */ try { if (deviceName) { @@ -454,14 +462,14 @@ export const validateCapsWithA11y = (deviceName?: any, platformMeta?: { [key: st return false } -export const shouldScanTestForAccessibility = (suiteTitle: string | undefined, testTitle: string, accessibilityOptions?: { [key: string]: any; }, world?: { [key: string]: any; }, isCucumber?: boolean ) => { +export const shouldScanTestForAccessibility = (suiteTitle: string | undefined, testTitle: string, accessibilityOptions?: { [key: string]: string; }, world?: { [key: string]: unknown; }, isCucumber?: boolean ) => { try { const includeTags = Array.isArray(accessibilityOptions?.includeTagsInTestingScope) ? accessibilityOptions?.includeTagsInTestingScope : [] const excludeTags = Array.isArray(accessibilityOptions?.excludeTagsInTestingScope) ? accessibilityOptions?.excludeTagsInTestingScope : [] if (isCucumber) { const tagsList: string[] = [] - world?.pickle?.tags.map((tag: { [key: string]: any; }) => tagsList.push(tag.name)) + ;(world?.pickle as { tags: { name: string }[] })?.tags.map((tag: { [key: string]: string; }) => tagsList.push(tag.name)) const excluded = excludeTags?.some((exclude) => tagsList.includes(exclude)) const included = includeTags?.length === 0 || includeTags?.some((include) => tagsList.includes(include)) @@ -489,7 +497,7 @@ export const isAccessibilityAutomationSession = (accessibilityFlag?: boolean | s return false } -export const performA11yScan = async (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string, commandName?: string) : Promise<{ [key: string]: any; } | undefined> => { +export const performA11yScan = async (browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string, commandName?: string) : Promise<{ [key: string]: unknown; } | undefined> => { if (!isBrowserStackSession) { BStackLogger.warn('Not a BrowserStack Automate session, cannot perform Accessibility scan.') return // since we are running only on Automate as of now @@ -503,14 +511,14 @@ export const performA11yScan = async (browser: WebdriverIO.Browser | WebdriverIO try { const results: unknown = await (browser as WebdriverIO.Browser).executeAsync(AccessibilityScripts.performScan as string, { 'method': commandName || '' }) BStackLogger.debug(util.format(results as string)) - return ( results as { [key: string]: any; } | undefined ) - } catch (err : any) { + return ( results as { [key: string]: unknown; } | undefined ) + } catch (err) { BStackLogger.error('Accessibility Scan could not be performed : ' + err) return } } -export const getA11yResults = async (browser: WebdriverIO.Browser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string) : Promise> => { +export const getA11yResults = async (browser: WebdriverIO.Browser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string) : Promise> => { if (!isBrowserStackSession) { BStackLogger.warn('Not a BrowserStack Automate session, cannot retrieve Accessibility results.') return [] // since we are running only on Automate as of now @@ -524,7 +532,7 @@ export const getA11yResults = async (browser: WebdriverIO.Browser, isBrowserStac try { BStackLogger.debug('Performing scan before getting results') await performA11yScan(browser, isBrowserStackSession, isAccessibility) - const results: Array<{ [key: string]: any; }> = await (browser as WebdriverIO.Browser).executeAsync(AccessibilityScripts.getResults as string) + const results: Array<{ [key: string]: unknown }> = await (browser as WebdriverIO.Browser).executeAsync(AccessibilityScripts.getResults as string) return results } catch { BStackLogger.error('No accessibility results were found.') @@ -532,7 +540,7 @@ export const getA11yResults = async (browser: WebdriverIO.Browser, isBrowserStac } } -export const getA11yResultsSummary = async (browser: WebdriverIO.Browser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string) : Promise<{ [key: string]: any; }> => { +export const getA11yResultsSummary = async (browser: WebdriverIO.Browser, isBrowserStackSession?: boolean, isAccessibility?: boolean | string) : Promise<{ [key: string]: unknown; }> => { if (!isBrowserStackSession) { return {} // since we are running only on Automate as of now } @@ -545,7 +553,7 @@ export const getA11yResultsSummary = async (browser: WebdriverIO.Browser, isBrow try { BStackLogger.debug('Performing scan before getting results summary') await performA11yScan(browser, isBrowserStackSession, isAccessibility) - const summaryResults: { [key: string]: any; } = await (browser as WebdriverIO.Browser).executeAsync(AccessibilityScripts.getResultsSummary as string) + const summaryResults: { [key: string]: unknown; } = await (browser as WebdriverIO.Browser).executeAsync(AccessibilityScripts.getResultsSummary as string) return summaryResults } catch { BStackLogger.error('No accessibility summary was found.') @@ -592,12 +600,12 @@ export const stopBuildUpstream = o11yErrorHandler(async function stopBuildUpstre status: 'success', message: '' } - } catch (error: any) { + } catch (error: unknown) { stopBuildUsage.failed(error) BStackLogger.debug(`[STOP_BUILD] Failed. Error: ${error}`) return { status: 'error', - message: error.message + message: (error as Error).message } } }) @@ -864,7 +872,7 @@ export function getUniqueIdentifier(test: Frameworks.Test, framework?: string): let parentTitle = test.parent // Sometimes parent will be an object instead of a string if (typeof parentTitle === 'object') { - parentTitle = (parentTitle as any).title + parentTitle = (parentTitle as { title: string }).title } return `${parentTitle} - ${test.title}` } @@ -999,7 +1007,7 @@ export function isBrowserstackInfra(config: BrowserstackConfig & Options.Testrun } } else { for (const key in caps) { - const capability = (caps as any)[key] + const capability = caps[key as keyof Capabilities.BrowserStackCapabilities] if (((capability as Options.Testrunner).hostname) && !isBrowserstack((capability as Options.Testrunner).hostname as string)) { return false } @@ -1125,9 +1133,9 @@ export function getObservabilityBuildTags(options: BrowserstackConfig & Options. export function getBrowserStackUser(config: Options.Testrunner) { if (process.env.BROWSERSTACK_USERNAME) { - return process.env.BROWSERSTACK_USERNAME + return process.env.BROWSERSTACK_USERNAME as string } - return config.user + return config.user as string } export function getBrowserStackKey(config: Options.Testrunner) { @@ -1137,7 +1145,7 @@ export function getBrowserStackKey(config: Options.Testrunner) { return config.key } -export function isUndefined(value: any) { +export function isUndefined(value: unknown) { let res = (value === undefined || value === null) if (typeof value === 'string') { res = res || value === '' @@ -1145,7 +1153,7 @@ export function isUndefined(value: any) { return res } -export function isTrue(value?: any) { +export function isTrue(value?: unknown) { return (value + '').toLowerCase() === 'true' } @@ -1165,16 +1173,18 @@ export const patchConsoleLogs = o11yErrorHandler(() => { const BSTestOpsPatcher = new logPatcher({}) Object.keys(consoleHolder).forEach((method: keyof typeof console) => { - const origMethod = (console[method] as any).bind(console) + // @ts-expect-error + const origMethod = console[method].bind(console) // Make sure we don't override Constructors // Arrow functions are not construable if (typeof console[method] === 'function' && method !== 'Console' ) { - (console as any)[method] = (...args: unknown[]) => { - origMethod(...args); - (BSTestOpsPatcher as any)[method](...args) + console[method] = (...args: unknown[]) => { + origMethod(...args) + // @ts-expect-error + BSTestOpsPatcher[method](...args) } } }) @@ -1208,8 +1218,8 @@ export async function uploadLogs(user: string | undefined, key: string | undefin formData.append('data', new FileStream(zip), 'logs.gz') formData.append('clientBuildUuid', clientBuildUuid) - const requestOptions = { - body: formData, + const requestOptions: RequestInit = { + body: formData as BodyInit, headers: { 'Authorization': getBasicAuthHeader(user, key) } @@ -1222,19 +1232,19 @@ export async function uploadLogs(user: string | undefined, key: string | undefin return response } -export const isObject = (object: any) => { +export const isObject = (object: unknown) => { return object !== null && typeof object === 'object' && !Array.isArray(object) } -export const ObjectsAreEqual = (object1: any, object2: any) => { +export const ObjectsAreEqual = (object1: object, object2: object) => { const objectKeys1 = Object.keys(object1) const objectKeys2 = Object.keys(object2) if (objectKeys1.length !== objectKeys2.length) { return false } for (const key of objectKeys1) { - const value1 = object1[key] - const value2 = object2[key] + const value1 = object1[key as keyof typeof object1] + const value2 = object2[key as keyof typeof object1] const isBothAreObjects = isObject(value1) && isObject(value2) if ((isBothAreObjects && !ObjectsAreEqual(value1, value2)) || (!isBothAreObjects && value1 !== value2)) { return false @@ -1334,7 +1344,7 @@ export const hasBrowserName = (cap: Capabilities.WebdriverIOConfig): boolean => return browserStackCapabilities.browserName !== undefined } -export const isValidCapsForHealing = (caps: { [key: string]: Options.Testrunner }): boolean => { +export const isValidCapsForHealing = (caps: WebdriverIO.Capabilities): boolean => { // Get all capability values const capValues = Object.values(caps) diff --git a/packages/wdio-browserstack-service/tests/Percy-Handler.test.ts b/packages/wdio-browserstack-service/tests/Percy-Handler.test.ts index c2451e3b9..a8765b4dd 100644 --- a/packages/wdio-browserstack-service/tests/Percy-Handler.test.ts +++ b/packages/wdio-browserstack-service/tests/Percy-Handler.test.ts @@ -61,7 +61,7 @@ beforeEach(() => { executeAsync: async () => { 'done' }, getUrl: () => { return 'https://www.google.com/'}, on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser caps = { browserName: 'chrome', 'bstack:options': { @@ -97,7 +97,7 @@ describe('teardown', () => { it('resolves promise if _percyScreenshotCounter is 0', async () => { percyHandler.teardown().then(() => { expect(percyHandler['_percyScreenshotCounter']).toEqual(0) - /* eslint-disable @typescript-eslint/no-unused-vars */ + }).catch((err: any) => { expect(percyHandler['_percyScreenshotCounter']).not.equal(0) }) diff --git a/packages/wdio-browserstack-service/tests/PercyHelper.test.ts b/packages/wdio-browserstack-service/tests/PercyHelper.test.ts index 20dc78e0c..efb5448c2 100644 --- a/packages/wdio-browserstack-service/tests/PercyHelper.test.ts +++ b/packages/wdio-browserstack-service/tests/PercyHelper.test.ts @@ -55,7 +55,7 @@ beforeEach(() => { executeAsync: async () => { 'done' }, getUrl: () => { return 'https://www.google.com/'}, on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser }) describe('startPercy', () => { diff --git a/packages/wdio-browserstack-service/tests/accessibility-handler.test.ts b/packages/wdio-browserstack-service/tests/accessibility-handler.test.ts index 40a3bff9c..c29c3ff22 100644 --- a/packages/wdio-browserstack-service/tests/accessibility-handler.test.ts +++ b/packages/wdio-browserstack-service/tests/accessibility-handler.test.ts @@ -57,7 +57,7 @@ beforeEach(() => { executeAsync: async () => { 'done' }, getUrl: () => { return 'https://www.google.com/'}, on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser caps = { browserName: 'chrome', 'bstack:options': { diff --git a/packages/wdio-browserstack-service/tests/cleanup.test.ts b/packages/wdio-browserstack-service/tests/cleanup.test.ts index e8a9d24bf..15ad4daac 100644 --- a/packages/wdio-browserstack-service/tests/cleanup.test.ts +++ b/packages/wdio-browserstack-service/tests/cleanup.test.ts @@ -30,9 +30,10 @@ describe('BStackCleanup', () => { describe('startCleanup', () => { it('executes observability cleanup if --observability is present in argv', async () => { vi.spyOn(utils, 'stopBuildUpstream') - process.argv.push('--observability') + process.argv.push('--observability', '--funnelData') process.env[BROWSERSTACK_TESTHUB_JWT] = 'some jwt' + vi.spyOn(BStackCleanup, 'getFunnelDataFromFile').mockReturnValue({ data: 123 }) await BStackCleanup.startCleanup() expect(utils.stopBuildUpstream).toHaveBeenCalledTimes(1) diff --git a/packages/wdio-browserstack-service/tests/insights-handler.test.ts b/packages/wdio-browserstack-service/tests/insights-handler.test.ts index b6b1593da..60ba0a15f 100644 --- a/packages/wdio-browserstack-service/tests/insights-handler.test.ts +++ b/packages/wdio-browserstack-service/tests/insights-handler.test.ts @@ -53,7 +53,7 @@ beforeEach(() => { browserB: {}, execute: vi.fn(), on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser insightsHandler = new InsightsHandler(browser, 'framework') }) diff --git a/packages/wdio-browserstack-service/tests/instrumentation/funnelInstrumentation.test.ts b/packages/wdio-browserstack-service/tests/instrumentation/funnelInstrumentation.test.ts index 01ad77948..8adf4b713 100644 --- a/packages/wdio-browserstack-service/tests/instrumentation/funnelInstrumentation.test.ts +++ b/packages/wdio-browserstack-service/tests/instrumentation/funnelInstrumentation.test.ts @@ -90,7 +90,6 @@ describe('funnelInstrumentation', () => { 'percy': false, } - // eslint-disable-next-line @typescript-eslint/no-unused-vars const finishExpectedEventData = { ...expectedEventData, event_type: 'SDKTestSuccessful', diff --git a/packages/wdio-browserstack-service/tests/launcher.test.ts b/packages/wdio-browserstack-service/tests/launcher.test.ts index b60ca8362..b65cc9ad0 100644 --- a/packages/wdio-browserstack-service/tests/launcher.test.ts +++ b/packages/wdio-browserstack-service/tests/launcher.test.ts @@ -33,9 +33,6 @@ vi.mock('node:fs', () => ({ })) vi.spyOn(utils, 'uploadLogs').mockImplementation((_user, _key, _uuid) => new Promise((resolve) => { - _user - _key - _uuid resolve('success') })) diff --git a/packages/wdio-browserstack-service/tests/service.test.ts b/packages/wdio-browserstack-service/tests/service.test.ts index c9a911a5c..cd238862e 100644 --- a/packages/wdio-browserstack-service/tests/service.test.ts +++ b/packages/wdio-browserstack-service/tests/service.test.ts @@ -340,7 +340,7 @@ describe('before', () => { it('should set auth to default values if not provided', async () => { let service = new BrowserstackService({} as any, [{}] as any, { capabilities: {} }) - await service.beforeSession({} as any as any) + await service.beforeSession({} as unknown as any) await service.before(service['_config'] as any, [], browser) expect(service['_failReasons']).toEqual([]) @@ -348,7 +348,7 @@ describe('before', () => { expect(service['_config'].key).toEqual('NotSetKey') service = new BrowserstackService({} as any, [{}] as any, { capabilities: {} }) - service.beforeSession({ user: 'blah' } as any as any) + service.beforeSession({ user: 'blah' } as unknown as any) await service.before(service['_config'] as any, [], browser) expect(service['_failReasons']).toEqual([]) @@ -356,7 +356,7 @@ describe('before', () => { expect(service['_config'].user).toEqual('blah') expect(service['_config'].key).toEqual('NotSetKey') service = new BrowserstackService({} as any, [{}] as any, { capabilities: {} }) - service.beforeSession({ key: 'blah' } as any as any) + service.beforeSession({ key: 'blah' } as unknown as any) await service.before(service['_config'] as any, [], browser) expect(service['_failReasons']).toEqual([]) diff --git a/packages/wdio-browserstack-service/tests/util.test.ts b/packages/wdio-browserstack-service/tests/util.test.ts index 121b6cc0b..f8381991d 100644 --- a/packages/wdio-browserstack-service/tests/util.test.ts +++ b/packages/wdio-browserstack-service/tests/util.test.ts @@ -101,7 +101,7 @@ describe('getBrowserCapabilities', () => { browser: 'browser' } } - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser expect(getBrowserCapabilities(browser, {}, 'browserA')) .toEqual(browser.browserA.capabilities as any) }) @@ -111,7 +111,7 @@ describe('getBrowserCapabilities', () => { isMultiremote: true, getInstance: vi.fn().mockImplementation((browserName: string) => browser[browserName]), browserA: {} - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser expect(getBrowserCapabilities(browser, {}, 'browserB')).toEqual({}) }) @@ -121,7 +121,7 @@ describe('getBrowserCapabilities', () => { browser: 'browser', os: 'OS X', } - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser expect(getBrowserCapabilities(browser, { os: 'Windows' })) .toEqual({ os:'Windows', browser: 'browser' } as any) }) @@ -136,7 +136,7 @@ describe('getBrowserCapabilities', () => { os: 'OS X', } } - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser expect(getBrowserCapabilities(browser, { browserA: { capabilities: { os: 'Windows' } } }, 'browserA')) .toEqual({ os:'Windows', browser: 'browser' } as any) @@ -147,7 +147,7 @@ describe('getBrowserCapabilities', () => { isMultiremote: true, getInstance: vi.fn().mockImplementation((browserName: string) => browser[browserName]), browserA: {} - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser expect(getBrowserCapabilities(browser, {}, 'browserB')) .toEqual({}) }) @@ -157,7 +157,7 @@ describe('getBrowserCapabilities', () => { isMultiremote: true, getInstance: vi.fn().mockImplementation((browserName: string) => browser[browserName]), browserA: {} - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser expect(getBrowserCapabilities(browser, { browserB: {} } as any, 'browserB')) .toEqual({}) }) @@ -327,6 +327,7 @@ describe('getCiInfo', () => { process.env.bamboo_buildNumber = '123' expect(getCiInfo()).toBeInstanceOf(Object) delete process.env.APviwPVEYOR + delete process.env.bamboo_buildNumber }) it('should return object if any CI being used - Wercker', () => { @@ -390,7 +391,7 @@ describe('getCiInfo', () => { }) it('should return null if no CI being used', () => { - expect(getCiInfo()).toBeNull + expect(getCiInfo()).toBeNull() }) }) @@ -1065,7 +1066,7 @@ describe('getA11yResults', () => { execute: vi.fn(), executeAsync: vi.fn(), on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser it('return false if BrowserStack Session', async () => { const result: any = await utils.getA11yResults((browser as WebdriverIO.Browser), false, false) @@ -1113,7 +1114,7 @@ describe('getA11yResultsSummary', () => { execute: vi.fn(), executeAsync: vi.fn(), on: vi.fn(), - } as any as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser it('return false if BrowserStack Session', async () => { const result: any = await utils.getA11yResultsSummary((browser as WebdriverIO.Browser), false, false) diff --git a/packages/wdio-cli/src/commands/index.ts b/packages/wdio-cli/src/commands/index.ts index 58b87e489..1f907c554 100644 --- a/packages/wdio-cli/src/commands/index.ts +++ b/packages/wdio-cli/src/commands/index.ts @@ -3,4 +3,5 @@ import * as install from './install.js' import * as repl from './repl.js' import * as run from './run.js' +// eslint-disable-next-line @typescript-eslint/no-explicit-any export const commands: any = [config, install, repl, run] diff --git a/packages/wdio-cli/src/commands/install.ts b/packages/wdio-cli/src/commands/install.ts index c14418abb..b7119335f 100644 --- a/packages/wdio-cli/src/commands/install.ts +++ b/packages/wdio-cli/src/commands/install.ts @@ -1,4 +1,4 @@ -/* eslint-disable no-console */ + import fs from 'node:fs/promises' import path from 'node:path' @@ -138,4 +138,4 @@ export async function handler(argv: InstallCommandArguments) { process.exit(0) } -/* eslint-enable no-console */ + diff --git a/packages/wdio-cli/src/index.cts b/packages/wdio-cli/src/index.cts index ff9ad569c..b3d558184 100644 --- a/packages/wdio-cli/src/index.cts +++ b/packages/wdio-cli/src/index.cts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ class Launcher { #esmLauncher: any diff --git a/packages/wdio-cli/src/interface.ts b/packages/wdio-cli/src/interface.ts index 534a488bc..9f3792580 100644 --- a/packages/wdio-cli/src/interface.ts +++ b/packages/wdio-cli/src/interface.ts @@ -22,7 +22,9 @@ interface CLIInterfaceEvent { name: string cid?: string fullTitle?: string + // eslint-disable-next-line @typescript-eslint/no-explicit-any content?: any + // eslint-disable-next-line @typescript-eslint/no-explicit-any params?: any error?: TestError } @@ -215,8 +217,7 @@ export default class WDIOCLInterface extends EventEmitter { /** * for testing purposes call console log in a static method */ - log (...args: any[]) { - // eslint-disable-next-line no-console + log (...args: unknown[]) { console.log(...args) return args } diff --git a/packages/wdio-cli/src/launcher.ts b/packages/wdio-cli/src/launcher.ts index c6bcdd5fb..ab0b70a0e 100644 --- a/packages/wdio-cli/src/launcher.ts +++ b/packages/wdio-cli/src/launcher.ts @@ -93,7 +93,7 @@ class Launcher { const capabilities = this.configParser.getCapabilities() this.isParallelMultiremote = Array.isArray(capabilities) && - capabilities.every(cap => Object.values(cap).length > 0 && Object.values(cap).every(c => typeof c === 'object' && (c as any).capabilities)) + capabilities.every(cap => Object.values(cap).length > 0 && Object.values(cap).every(c => typeof c === 'object' && (c as { capabilities: WebdriverIO.Capabilities }).capabilities)) this.isMultiremote = this.isParallelMultiremote || !Array.isArray(capabilities) validateConfig(TESTRUNNER_DEFAULTS, { ...config, capabilities }) @@ -119,7 +119,7 @@ class Launcher { : 1 this.interface = new CLInterface(config, totalWorkerCnt, this._isWatchMode) - config.runnerEnv!.FORCE_COLOR = Number(this.interface.hasAnsiSupport) + config.runnerEnv!.FORCE_COLOR = Number(this.interface.hasAnsiSupport).toString() const [runnerName, runnerOptions] = Array.isArray(config.runner) ? config.runner : [config.runner, {} as WebdriverIO.BrowserRunnerOptions] const Runner = (await initializePlugin(runnerName, 'runner') as Services.RunnerPlugin).default diff --git a/packages/wdio-cli/src/run.ts b/packages/wdio-cli/src/run.ts index 514f0ffe4..4b07e789a 100644 --- a/packages/wdio-cli/src/run.ts +++ b/packages/wdio-cli/src/run.ts @@ -65,16 +65,16 @@ export default async function run() { try { const cp = await handler(args) return cp - } catch (err: any) { + } catch (err) { const output = await new Promise((resolve) => ( yargs(hideBin(process.argv)).parse('--help', ( err: Error, - argv: Record, + argv: Record, output: string ) => resolve(output))) ) - console.error(`${output}\n\n${err.stack}`) + console.error(`${output}\n\n${(err as Error).stack}`) /** * only exit process if we are run by a user and not running unit tests diff --git a/packages/wdio-cli/src/types.ts b/packages/wdio-cli/src/types.ts index d1a7353a7..4b8b5f9d5 100644 --- a/packages/wdio-cli/src/types.ts +++ b/packages/wdio-cli/src/types.ts @@ -19,9 +19,9 @@ export interface Questionnair { expEnvHostname?: string expEnvPort?: string expEnvProtocol?: 'http' | 'https' - // eslint-disable-next-line + env_user?: string - // eslint-disable-next-line + env_key?: string region?: RegionOptions useSauceConnect?: boolean @@ -145,6 +145,7 @@ export type ValueKeyIteratee = | IterateeShorthand; type IterateeShorthand = | PropertyName + // eslint-disable-next-line @typescript-eslint/no-explicit-any | [PropertyName, any] | PartialShallow; type PropertyName = string | number | symbol; diff --git a/packages/wdio-cli/src/utils.ts b/packages/wdio-cli/src/utils.ts index 6e8ef43a4..79cde40dd 100644 --- a/packages/wdio-cli/src/utils.ts +++ b/packages/wdio-cli/src/utils.ts @@ -47,7 +47,7 @@ const __dirname = dirname(fileURLToPath(import.meta.url)) const NPM_COMMAND = /^win/.test(process.platform) ? 'npm.cmd' : 'npm' const VERSION_REGEXP = /(\d+)\.(\d+)\.(\d+)-(alpha|beta|)\.(\d+)\+(.+)/g const TEMPLATE_ROOT_DIR = path.join(__dirname, 'templates', 'exampleFiles') -export const renderFile = promisify(ejs.renderFile) as (path: string, data: Record) => Promise +export const renderFile = promisify(ejs.renderFile) as (path: string, data: Record) => Promise export class HookError extends SevereServiceError { public origin: string @@ -63,7 +63,7 @@ export class HookError extends SevereServiceError { export async function runServiceHook( launcher: Services.ServiceInstance[], hookName: keyof Services.HookFunctions, - ...args: any[] + ...args: unknown[] ) { const start = Date.now() return Promise.all(launcher.map(async (service: Services.ServiceInstance) => { @@ -71,10 +71,10 @@ export async function runServiceHook( if (typeof service[hookName] === 'function') { await (service[hookName] as Function)(...args) } - } catch (err: any) { - const message = `A service failed in the '${hookName}' hook\n${err.stack}\n\n` + } catch (err) { + const message = `A service failed in the '${hookName}' hook\n${(err as Error).stack}\n\n` - if (err instanceof SevereServiceError || err.name === 'SevereServiceError') { + if (err instanceof SevereServiceError || (err as Error).name === 'SevereServiceError') { return { status: 'rejected', reason: message, origin: hookName } } @@ -98,7 +98,7 @@ export async function runServiceHook( * @param {object} config * @param {object} capabilities */ -export async function runLauncherHook(hook: Function | Function[], ...args: any[]) { +export async function runLauncherHook(hook: Function | Function[], ...args: unknown[]) { if (typeof hook === 'function') { hook = [hook] } @@ -113,8 +113,8 @@ export async function runLauncherHook(hook: Function | Function[], ...args: any[ return Promise.all(hook.map((hook) => { try { return hook(...args) - } catch (err: any) { - return catchFn(err) + } catch (err) { + return catchFn(err as Error) } })).catch(catchFn) } @@ -142,8 +142,8 @@ export async function runOnCompleteHook( try { await hook(exitCode, config, capabilities, results) return 0 - } catch (err: any) { - log.error(`Error in onCompleteHook: ${err.stack}`) + } catch (err) { + log.error(`Error in onCompleteHook: ${(err as Error).stack}`) if (err instanceof SevereServiceError) { throw new HookError(err.message, 'onComplete') } @@ -225,7 +225,7 @@ export function addServiceDeps(names: SupportedPackage[], packages: string[], up if (result === 'APPIUM_MISSING') { packages.push('appium') } else if (update) { - // eslint-disable-next-line no-console + console.log( '\n=======', '\nUsing globally installed appium', result, @@ -315,7 +315,7 @@ export async function getCapabilities(arg: ReplCommandArguments) { try { await config.initialize() } catch (e) { - throw Error((e as any).code === 'MODULE_NOT_FOUND' ? `Config File not found: ${arg.option}` : + throw Error((e as { code: string }).code === 'MODULE_NOT_FOUND' ? `Config File not found: ${arg.option}` : `Could not parse ${arg.option}, failed with error: ${(e as Error).message}`) } if (typeof arg.capabilities === 'undefined') { @@ -371,7 +371,7 @@ export async function hasPackage(pkg: string) { try { await resolve(pkg, import.meta.url) return true - } catch (err: any) { + } catch { return false } } @@ -511,13 +511,13 @@ export async function getAnswers(yes: boolean): Promise { * pick first choice, select value if it exists */ ? typeof question.choices === 'function' - ? (question.choices(answers)[0] as any as { value: any }).value - ? (question.choices(answers)[0] as any as { value: any }).value + ? (question.choices(answers)[0] as unknown as { value: unknown }).value + ? (question.choices(answers)[0] as unknown as { value: unknown }).value : question.choices(answers)[0] - : (question.choices[0] as { value: any }).value + : (question.choices[0] as { value: unknown }).value ? question.type === 'checkbox' - ? [(question.choices[0] as { value: any }).value] - : (question.choices[0] as { value: any }).value + ? [(question.choices[0] as { value: unknown }).value] + : (question.choices[0] as { value: unknown }).value : question.choices[0] : {} }) @@ -665,7 +665,7 @@ export async function getProjectProps(cwd = process.cwd()): Promise { return this.run({ diff --git a/packages/wdio-cli/tests/launcher.test.ts b/packages/wdio-cli/tests/launcher.test.ts index b8a74e97a..8465ab7ad 100644 --- a/packages/wdio-cli/tests/launcher.test.ts +++ b/packages/wdio-cli/tests/launcher.test.ts @@ -631,6 +631,7 @@ describe('launcher', () => { expect(sleep).not.toHaveBeenCalled() expect(launcher['_runnerStarted']).toBe(1) + // eslint-disable-next-line @typescript-eslint/no-non-null-asserted-optional-chain expect(vi.mocked(launcher.runner?.run!).mock.calls[0][0]).toHaveProperty('cid', '0-5') expect(launcher['_getRunnerId'](0)).toBe('0-0') diff --git a/packages/wdio-cli/tests/utils.test.ts b/packages/wdio-cli/tests/utils.test.ts index deeb4e254..072ff7dc7 100644 --- a/packages/wdio-cli/tests/utils.test.ts +++ b/packages/wdio-cli/tests/utils.test.ts @@ -338,7 +338,7 @@ describe('addServiceDeps', () => { it('should not add appium if globally installed', () => { // @ts-ignore - // eslint-disable-next-line no-import-assign, @typescript-eslint/no-unused-vars + cp.execSyncRes = '1.13.0' const packages: any = [] addServiceDeps([{ package: '@wdio/appium-service', short: 'appium', purpose: 'e2e' }], packages) diff --git a/packages/wdio-config/src/node/ConfigParser.ts b/packages/wdio-config/src/node/ConfigParser.ts index 7128fcd8e..c45070aba 100644 --- a/packages/wdio-config/src/node/ConfigParser.ts +++ b/packages/wdio-config/src/node/ConfigParser.ts @@ -93,7 +93,9 @@ export default class ConfigParser { coverage: { enabled: this._initialConfig.coverage } }] } else if (Array.isArray(this._config.runner) && this._config.runner[0] === 'browser') { + // eslint-disable-next-line @typescript-eslint/no-explicit-any (this._config.runner[1] as any).coverage = { + // eslint-disable-next-line @typescript-eslint/no-explicit-any ...(this._config.runner[1] as any).coverage, enabled: this._initialConfig.coverage } @@ -160,8 +162,8 @@ export default class ConfigParser { * remove `watch` from config as far as it can be only passed as command line argument */ delete this._config.watch - } catch (e: any) { - log.error(`Failed loading configuration file: ${filePath}:`, e.message) + } catch (e: unknown) { + log.error(`Failed loading configuration file: ${filePath}:`, (e as Error).message) throw e } } @@ -214,7 +216,7 @@ export default class ConfigParser { /** * overwrite capabilities */ - this._capabilities = validObjectOrArray(this._config.capabilities) ? this._config.capabilities : this._capabilities + this._capabilities = validObjectOrArray(this._config.capabilities as object) ? this._config.capabilities : this._capabilities /** * save original specs if Cucumber's feature line number is provided diff --git a/packages/wdio-config/src/utils.ts b/packages/wdio-config/src/utils.ts index 30b6aa792..cff57bdb7 100644 --- a/packages/wdio-config/src/utils.ts +++ b/packages/wdio-config/src/utils.ts @@ -1,6 +1,6 @@ import type { Options } from '@wdio/types' -export const validObjectOrArray = (object: any): object is object | Array => (Array.isArray(object) && object.length > 0) || +export const validObjectOrArray = (object: object): object is object | Array => (Array.isArray(object) && object.length > 0) || (typeof object === 'object' && Object.keys(object).length > 0) /** @@ -61,8 +61,8 @@ export function validateConfig(defaults: Options.Definition, options: T, k if (typeof expectedOption.validate === 'function') { try { expectedOption.validate(optValue) - } catch (e: any) { - throw new Error(`Type check for option "${name.toString()}" failed: ${e.message}`) + } catch (e: unknown) { + throw new Error(`Type check for option "${name.toString()}" failed: ${(e as Error).message}`) } } @@ -74,7 +74,7 @@ export function validateConfig(defaults: Options.Definition, options: T, k } } - for (const [name, option] of Object.entries(options as any) as [keyof T, T[keyof T]][]) { + for (const [name, option] of Object.entries(options as object) as [keyof T, T[keyof T]][]) { /** * keep keys from source object if desired */ diff --git a/packages/wdio-config/tests/lib/MockPathService.ts b/packages/wdio-config/tests/lib/MockPathService.ts index a88e7812d..17a25eed3 100644 --- a/packages/wdio-config/tests/lib/MockPathService.ts +++ b/packages/wdio-config/tests/lib/MockPathService.ts @@ -36,10 +36,10 @@ export default class MockPathService implements PathService { */ getMocks() { return { - getcwdMock: this.getcwdMock as any as Function, - loadFileMock: this.loadFileMock as any as Function, - isFileMock: this.isFileMock as any as Function, - globMock: this.globMock as any as Function + getcwdMock: this.getcwdMock as unknown as Function, + loadFileMock: this.loadFileMock as unknown as Function, + isFileMock: this.isFileMock as unknown as Function, + globMock: this.globMock as unknown as Function } } diff --git a/packages/wdio-cucumber-framework/src/cucumberFormatter.ts b/packages/wdio-cucumber-framework/src/cucumberFormatter.ts index cedbc9f36..7a7f8e6bc 100644 --- a/packages/wdio-cucumber-framework/src/cucumberFormatter.ts +++ b/packages/wdio-cucumber-framework/src/cucumberFormatter.ts @@ -5,6 +5,8 @@ import path from 'node:path' import logger from '@wdio/logger' +import type { Payload } from './types.js' + const log = logger('CucumberFormatter') import type { @@ -122,7 +124,7 @@ export default class CucumberFormatter extends Formatter { return path.isAbsolute(uri) ? uri : path.resolve(uri) } - emit(event: string, payload: any) { + emit(event: string, payload: Payload) { const message = formatMessage({ payload }) message.cid = this.cid @@ -170,7 +172,9 @@ export default class CucumberFormatter extends Formatter { type: 'hook', state: result.status, error, - duration: Date.now() - this._testStart!?.getTime(), + duration: this._testStart + ? Date.now() - this._testStart.getTime() + : 0, }) this.emit('hook:end', payload) @@ -236,7 +240,7 @@ export default class CucumberFormatter extends Formatter { error = err } - } else if (result.status === Status.FAILED && !(result as any as TestCaseFinished).willBeRetried) { + } else if (result.status === Status.FAILED && !(result as unknown as TestCaseFinished).willBeRetried) { error = new Error(result.message?.split('\n')[0]) error.stack = result.message as string this.failedCount++ @@ -251,7 +255,9 @@ export default class CucumberFormatter extends Formatter { title: title, state, error, - duration: Date.now() - this._testStart!?.getTime(), + duration: this._testStart + ? Date.now() - this._testStart.getTime() + : 0, passed: ['pass', 'skip'].includes(state), file: uri, } @@ -352,7 +358,9 @@ export default class CucumberFormatter extends Formatter { title: this.getTitle(this._currentDoc.feature), type: 'feature', file: this._currentDoc.uri, - duration: Date.now() - this._featureStart!?.getTime(), + duration: this._featureStart + ? Date.now() - this._featureStart.getTime() + : 0, tags: this._currentDoc.feature?.tags, } this.emit('suite:end', payload) @@ -394,7 +402,7 @@ export default class CucumberFormatter extends Formatter { const reporterScenario: ReporterScenario = scenario reporterScenario.rule = getRule( - doc?.feature!, + doc?.feature as Feature, this._pickleMap.get(scenario.id)! ) @@ -555,7 +563,9 @@ export default class CucumberFormatter extends Formatter { parent: getFeatureId(doc?.uri as string, doc?.feature as Feature), type: 'scenario', file: doc?.uri, - duration: Date.now() - this._scenarioStart!?.getTime(), + duration: this._scenarioStart + ? Date.now() - this._scenarioStart.getTime() + : 0, tags: scenario.tags, } @@ -579,7 +589,9 @@ export default class CucumberFormatter extends Formatter { title: this.getTitle(this._currentDoc.feature as Feature), type: 'feature', file: this._currentDoc.uri, - duration: Date.now() - this._featureStart!?.getTime(), + duration: this._featureStart + ? Date.now() - this._featureStart.getTime() + : 0, tags: this._currentDoc.feature?.tags, } @@ -602,7 +614,9 @@ export default class CucumberFormatter extends Formatter { title: this.getTitle(gherkinDocEvent.feature as Feature), type: 'feature', file: gherkinDocEvent.uri, - duration: Date.now() - this._featureStart!?.getTime(), + duration: this._featureStart + ? Date.now() - this._featureStart.getTime() + : 0, tags: gherkinDocEvent.feature?.tags, } diff --git a/packages/wdio-cucumber-framework/src/index.cts b/packages/wdio-cucumber-framework/src/index.cts index f5c890da9..0178815ec 100644 --- a/packages/wdio-cucumber-framework/src/index.cts +++ b/packages/wdio-cucumber-framework/src/index.cts @@ -21,13 +21,14 @@ const { defineParameterType, defineStep +// eslint-disable-next-line @typescript-eslint/no-require-imports } = require('@cucumber/cucumber') const adapterFactory = { - init: async function initCucumberFramework (...args: any[]) { + init: async function initCucumberFramework (...args: unknown[]) { const { CucumberAdapter } = await import('./index.js') - // @ts-ignore just passing through args - const adapter = new CucumberAdapter(...args as any) + // @ts-expect-error just passing through args + const adapter = new CucumberAdapter(...args as unknown[]) const instance = await adapter.init() return instance }, diff --git a/packages/wdio-cucumber-framework/src/index.ts b/packages/wdio-cucumber-framework/src/index.ts index 7e9393eef..41a060ac5 100644 --- a/packages/wdio-cucumber-framework/src/index.ts +++ b/packages/wdio-cucumber-framework/src/index.ts @@ -198,7 +198,8 @@ export class CucumberAdapter { this._specs = plan?.map((pl) => path.resolve(pl.uri)) // Filter features (of which at least some have line numbers) against the already filtered specs - if (this._config.cucumberFeaturesWithLineNumbers?.length! > 0) { + const lineNumbers = this._config.cucumberFeaturesWithLineNumbers?.length ?? 0 + if (lineNumbers > 0) { this._specs = this._config.cucumberFeaturesWithLineNumbers!.filter(feature => this._specs.some(spec => path.resolve(feature).startsWith(spec)) ) @@ -276,7 +277,7 @@ export class CucumberAdapter { if (this._cucumberOpts.ignoreUndefinedDefinitions && result) { result = failedCount } - } catch (err: any) { + } catch (err) { runtimeError = err result = 1 } finally { @@ -443,7 +444,7 @@ export class CucumberAdapter { const wrapStep = this.wrapStep const cid = this._cid - let params: any + let params: unknown this._eventEmitter.on('getHookParams', (payload) => { params = payload }) @@ -500,7 +501,7 @@ export class CucumberAdapter { timeout?: number, hookName: string | undefined = undefined, ): Function { - return function (this: Cucumber.World, ...args: any[]) { + return function (this: Cucumber.World, ...args: unknown[]) { const hookParams = getHookParams() const retryTest = isStep && isFinite(options.retry) ? options.retry : 0 @@ -512,8 +513,8 @@ export class CucumberAdapter { return testFnWrapper.call(this, isStep ? 'Step' : 'Hook', { specFn: code, specFnArgs: args }, - { beforeFn: beforeFn as Function[], beforeFnArgs: (context: any) => [hookParams?.step, context] }, - { afterFn: afterFn as Function[], afterFnArgs: (context: any) => [hookParams?.step, context] }, + { beforeFn: beforeFn as Function[], beforeFnArgs: (context: unknown) => [hookParams?.step, context] }, + { afterFn: afterFn as Function[], afterFnArgs: (context: unknown) => [hookParams?.step, context] }, cid, retryTest, hookName, timeout) } @@ -572,9 +573,9 @@ export const adapterFactory: { init?: Function } = {} * tested by smoke tests */ /* istanbul ignore next */ -adapterFactory.init = async function (...args: any[]) { +adapterFactory.init = async function (...args: unknown[]) { // @ts-ignore just passing through args - const adapter = new _CucumberAdapter(...(args as any)) + const adapter = new _CucumberAdapter(...(args as unknown)) const instance = await adapter.init() return instance } diff --git a/packages/wdio-cucumber-framework/src/types.ts b/packages/wdio-cucumber-framework/src/types.ts index a366f4665..6b01bafa9 100644 --- a/packages/wdio-cucumber-framework/src/types.ts +++ b/packages/wdio-cucumber-framework/src/types.ts @@ -1,4 +1,4 @@ -import type { ITestCaseHookParameter } from '@cucumber/cucumber' +import type { ITestCaseHookParameter, World } from '@cucumber/cucumber' import type { Pickle, PickleStep, TestStep, Feature } from '@cucumber/messages' import type { Frameworks } from '@wdio/types' @@ -100,7 +100,7 @@ export interface CucumberOptions { /** * Parameters to be passed to your World */ - worldParameters?: any; + worldParameters?: unknown; /** * Timeout in milliseconds for step definitions. * @default 60000 @@ -189,7 +189,7 @@ export interface HookFunctionExtension { * @param world world object containing information on pickle and test step * @param context Cucumber World object */ - beforeScenario?(world: ITestCaseHookParameter, context: Object): void; + beforeScenario?(world: ITestCaseHookParameter, context: World): void; /** * @@ -198,7 +198,7 @@ export interface HookFunctionExtension { * @param scenario scenario data * @param context Cucumber World object */ - beforeStep?(step: PickleStep, scenario: Pickle, context: Object): void; + beforeStep?(step: PickleStep, scenario: Pickle, context: World): void; /** * @@ -211,7 +211,7 @@ export interface HookFunctionExtension { * @param result.duration duration of scenario in milliseconds * @param context Cucumber World object */ - afterStep?(step: PickleStep, scenario: Pickle, result: Frameworks.PickleResult, context: Object): void; + afterStep?(step: PickleStep, scenario: Pickle, result: Frameworks.PickleResult, context: World): void; /** * @@ -223,7 +223,7 @@ export interface HookFunctionExtension { * @param result.duration duration of scenario in milliseconds * @param context Cucumber World object */ - afterScenario?(world: ITestCaseHookParameter, result: Frameworks.PickleResult, context: Object): void; + afterScenario?(world: ITestCaseHookParameter, result: Frameworks.PickleResult, context: World): void; /** * @@ -241,6 +241,16 @@ export interface StepDefinitionOptions { export interface TestHookDefinitionConfig { code: Function; line: number; - options: any; + options: unknown; uri: string; } + +export interface Payload { + cid?: string + uid?: string + specs?: string[] + error?: Error + parent?: unknown + title?: string + fullTitle?: string +} diff --git a/packages/wdio-cucumber-framework/src/utils.ts b/packages/wdio-cucumber-framework/src/utils.ts index e17f72c9d..c93217801 100644 --- a/packages/wdio-cucumber-framework/src/utils.ts +++ b/packages/wdio-cucumber-framework/src/utils.ts @@ -10,10 +10,11 @@ import type { TestStep, Feature, Pickle, - TestStepResultStatus + TestStepResultStatus, + FeatureChild } from '@cucumber/messages' import type { Capabilities } from '@wdio/types' -import type { ReporterStep, TestHookDefinitionConfig } from './types.js' +import type { ReporterStep, TestHookDefinitionConfig, Payload } from './types.js' import { CUCUMBER_HOOK_DEFINITION_TYPES } from './constants.js' const log = logger('@wdio/cucumber-framework:utils') @@ -46,7 +47,7 @@ export function createStepArgument ({ argument }: PickleStep) { * format message * @param {object} message { type: string, payload: object } */ -export function formatMessage ({ payload = {} }: any) { +export function formatMessage ({ payload = {} }: { payload: Payload }): Payload { const content = { ...payload } /** @@ -157,7 +158,7 @@ export function addKeywordToStep(steps: ReporterStep[], feature: Feature){ const rules = feature.children.filter((child)=> Object.keys(child)[0]=== 'rule') let featureChildren = feature.children.filter((child)=> Object.keys(child)[0]!== 'rule') - const rulesChildrens:any = rules.map((child)=>child.rule?.children).flat() + const rulesChildrens = rules.map((child) => child.rule?.children as FeatureChild).flat() featureChildren = featureChildren.concat(rulesChildrens) featureChildren.find((child) => @@ -207,7 +208,7 @@ export function generateSkipTagsFromCapabilities(capabilities: Capabilities.Reso acc[splitItem.substring(0, pos)] = (0, eval)( splitItem.substring(pos + 1) ) - } catch (err: any) { + } catch { log.error(`Couldn't use tag "${splitItem}" for filtering because it is malformed`) } } @@ -219,7 +220,7 @@ export function generateSkipTagsFromCapabilities(capabilities: Capabilities.Reso if (matched) { const isSkip = [parse(matched[1] ?? '')] .find((filter: WebdriverIO.Capabilities) => Object.keys(filter) - .every((key: keyof WebdriverIO.Capabilities) => match((capabilities as any)[key], filter[key] as RegExp))) + .every((key: keyof WebdriverIO.Capabilities) => match((capabilities as Record)[key], filter[key] as RegExp))) if (isSkip) { generatedTags.push(`(not ${tag.replace(/(\(|\))/g, '\\$1')})`) } @@ -233,7 +234,7 @@ export function generateSkipTagsFromCapabilities(capabilities: Capabilities.Reso * Retrives scenario description if available. */ export function getScenarioDescription(feature: Feature, scenarioId: string){ - const children = feature.children?.find((child) => child?.scenario?.id === scenarioId)! + const children = feature.children?.find((child) => child?.scenario?.id === scenarioId) return children?.scenario?.description || '' } @@ -247,10 +248,10 @@ export function setUserHookNames (options: typeof supportCodeLibraryBuilder) { options[hookName].forEach((testRunHookDefinition: TestHookDefinitionConfig) => { const hookFn = testRunHookDefinition.code if (!hookFn.name.startsWith('wdioHook')) { - const userHookAsyncFn = async function (this: World, ...args: any) { + const userHookAsyncFn = async function (this: World, ...args: unknown[]) { return hookFn.apply(this, args) } - const userHookFn = function (this: World, ...args: any) { + const userHookFn = function (this: World, ...args: unknown[]) { return hookFn.apply(this, args) } testRunHookDefinition.code = (isFunctionAsync(hookFn)) ? userHookAsyncFn : userHookFn diff --git a/packages/wdio-cucumber-framework/tests/__snapshots__/formatter.test.ts.snap b/packages/wdio-cucumber-framework/tests/__snapshots__/formatter.test.ts.snap index 43c76fbc2..c3f344ee4 100644 --- a/packages/wdio-cucumber-framework/tests/__snapshots__/formatter.test.ts.snap +++ b/packages/wdio-cucumber-framework/tests/__snapshots__/formatter.test.ts.snap @@ -136,7 +136,7 @@ exports[`CucumberFormatter > emits messages for certain cucumber events > should "suite:end", { "cid": "0-1", - "duration": NaN, + "duration": 0, "file": "/some/path/to/features/my-feature.feature", "specs": [ "/foobar.js", @@ -509,7 +509,7 @@ exports[`CucumberFormatter > emits messages for certain cucumber events when exe "suite:end", { "cid": "0-1", - "duration": NaN, + "duration": 0, "file": "/some/path/to/features/my-feature.feature", "specs": [ "/foobar.js", diff --git a/packages/wdio-firefox-profile-service/src/launcher.ts b/packages/wdio-firefox-profile-service/src/launcher.ts index dc848bc63..95a2caf50 100644 --- a/packages/wdio-firefox-profile-service/src/launcher.ts +++ b/packages/wdio-firefox-profile-service/src/launcher.ts @@ -49,7 +49,7 @@ export default class FirefoxProfileLauncher { continue } - this._profile.setPreference(preference, value) + this._profile.setPreference(preference, value as string) } if (this._options.proxy) { diff --git a/packages/wdio-firefox-profile-service/src/types.ts b/packages/wdio-firefox-profile-service/src/types.ts index 8385a994c..ef1ef19d4 100644 --- a/packages/wdio-firefox-profile-service/src/types.ts +++ b/packages/wdio-firefox-profile-service/src/types.ts @@ -1,7 +1,7 @@ /** * Contains all settings as key value pair. You can find all available settings on the `about:config` page. */ -type FirefoxSettings = Record +type FirefoxSettings = Record interface NoProxySettings { proxyType: 'direct'; } diff --git a/packages/wdio-globals/src/index.ts b/packages/wdio-globals/src/index.ts index e31b529ab..713f61cc0 100644 --- a/packages/wdio-globals/src/index.ts +++ b/packages/wdio-globals/src/index.ts @@ -1,3 +1,5 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ + /// type SupportedGlobals = 'browser' | 'driver' | 'multiremotebrowser' | '$' | '$$' | 'expect' @@ -40,15 +42,15 @@ function proxyHandler (key: SupportedGlobals) { } export const browser: WebdriverIO.Browser = new Proxy( - class Browser {} as any as WebdriverIO.Browser, + class Browser {} as unknown as WebdriverIO.Browser, proxyHandler('browser') ) export const driver: WebdriverIO.Browser = new Proxy( - class Browser {} as any as WebdriverIO.Browser, + class Browser {} as unknown as WebdriverIO.Browser, proxyHandler('driver') ) export const multiremotebrowser: WebdriverIO.MultiRemoteBrowser = new Proxy( - class Browser {} as any as WebdriverIO.MultiRemoteBrowser, + class Browser {} as unknown as WebdriverIO.MultiRemoteBrowser, proxyHandler('multiremotebrowser') ) // @ts-ignore diff --git a/packages/wdio-jasmine-framework/src/index.ts b/packages/wdio-jasmine-framework/src/index.ts index e31bcee4d..29c769875 100644 --- a/packages/wdio-jasmine-framework/src/index.ts +++ b/packages/wdio-jasmine-framework/src/index.ts @@ -50,8 +50,8 @@ class JasmineAdapter { private _reporter: JasmineReporter private _totalTests = 0 private _hasTests = true - private _lastTest?: any - private _lastSpec?: any + private _lastTest?: unknown + private _lastSpec?: unknown private _jrunner = new Jasmine({}) @@ -158,7 +158,7 @@ class JasmineAdapter { */ INTERFACES.bdd.forEach((fnName) => { const isTest = TEST_INTERFACES.includes(fnName) - const beforeHook = [...this._config.beforeHook] as ((test: any, context: any) => void)[] + const beforeHook = [...this._config.beforeHook] as ((test: unknown, context: unknown) => void)[] const afterHook = [...this._config.afterHook] /** @@ -197,7 +197,7 @@ class JasmineAdapter { beforeAllMock.apply(this, args) } const executeMock = jasmine.Spec.prototype.execute - jasmine.Spec.prototype.execute = function (...args: any[]) { + jasmine.Spec.prototype.execute = function (...args: unknown[]) { self._lastTest = this.result // @ts-ignore overwrite existing type self._lastTest.start = new Date().getTime() @@ -254,7 +254,7 @@ class JasmineAdapter { // @ts-ignore outdated types this._grep(this._jrunner.env.topSuite()) this._hasTests = this._totalTests > 0 - } catch (err: any) { + } catch (err) { log.warn( 'Unable to load spec files quite likely because they rely on `browser` object that is not fully initialized.\n' + '`browser` object has only `capabilities` and some flags like `isMobile`.\n' + @@ -359,7 +359,7 @@ class JasmineAdapter { } if (params.payload.id && params.payload.id.startsWith('spec')) { - message.parent = this._lastSpec?.description + message.parent = (this._lastSpec as jasmine.Spec)?.description message.passed = params.payload.failedExpectations.length === 0 } @@ -391,7 +391,7 @@ class JasmineAdapter { return function (this: jasmine.Spec, passed: boolean, data: ResultHandlerPayload) { try { expectationResultHandler!.call(this, passed, data) - } catch (e: any) { + } catch (e: unknown) { /** * propagate expectationResultHandler error if actual assertion passed * but the custom handler decides to throw @@ -400,8 +400,8 @@ class JasmineAdapter { passed = false data = { passed, - message: 'expectationResultHandlerError: ' + e.message, - error: e + message: 'expectationResultHandlerError: ' + (e as Error).message, + error: e as Error } } } @@ -413,7 +413,7 @@ class JasmineAdapter { #transformMatchers (matchers: jasmine.CustomMatcherFactories) { return Object.entries(matchers).reduce((prev, [name, fn]) => { prev[name] = (util) => ({ - compare: async (actual: T, expected: T, ...args: any[]) => fn(util).compare(actual, expected, ...args), + compare: async (actual: T, expected: T, ...args: unknown[]) => fn(util).compare(actual, expected, ...args), negativeCompare: async (actual: T, expected: T, ...args: unknown[]) => { const { pass, message } = fn(util).compare(actual, expected, ...args) return { @@ -456,7 +456,7 @@ class JasmineAdapter { } const adapterFactory: { init?: Function } = {} -adapterFactory.init = async function (...args: any[]) { +adapterFactory.init = async function (...args: unknown[]) { // @ts-ignore pass along parameters const adapter = new JasmineAdapter(...args) const instance = await adapter.init() diff --git a/packages/wdio-jasmine-framework/src/types.ts b/packages/wdio-jasmine-framework/src/types.ts index 4f2724eda..c13b50a06 100644 --- a/packages/wdio-jasmine-framework/src/types.ts +++ b/packages/wdio-jasmine-framework/src/types.ts @@ -37,6 +37,7 @@ export interface ResultHandlerPayload { export interface FrameworkMessage { type: string + // eslint-disable-next-line @typescript-eslint/no-explicit-any payload?: any err?: jasmine.FailedExpectation } @@ -55,7 +56,7 @@ export interface FormattedMessage { duration?: number currentTest?: string error?: jasmine.FailedExpectation - context?: any + context?: unknown /** * jasmine specific diff --git a/packages/wdio-jasmine-framework/tests/adapter.test.ts b/packages/wdio-jasmine-framework/tests/adapter.test.ts index a03b36b67..4d9f16ae4 100644 --- a/packages/wdio-jasmine-framework/tests/adapter.test.ts +++ b/packages/wdio-jasmine-framework/tests/adapter.test.ts @@ -528,6 +528,7 @@ describe('loadFiles', () => { delete adapter['_hasTests'] // @ts-ignore outdated types + // eslint-disable-next-line @typescript-eslint/no-unused-expressions adapter['_jrunner']!.loadRequires = vi.fn().mockImplementation(() => { throw new Error('foo') }), adapter._loadFiles() diff --git a/packages/wdio-json-reporter/src/mergeResults.ts b/packages/wdio-json-reporter/src/mergeResults.ts index 52e0821a8..a79756ace 100644 --- a/packages/wdio-json-reporter/src/mergeResults.ts +++ b/packages/wdio-json-reporter/src/mergeResults.ts @@ -29,7 +29,7 @@ export default async function mergeResults( async function getDataFromFiles (dir: string, filePattern: string | RegExp) { const fileNames = (await fs.readdir(dir)).filter((file) => file.match(filePattern)) - const data: any[] = [] + const data: unknown[] = [] await Promise.all(fileNames.map(async (fileName) => { data.push(JSON.parse((await fs.readFile(`${dir}/${fileName}`)).toString())) diff --git a/packages/wdio-junit-reporter/src/common/api.ts b/packages/wdio-junit-reporter/src/common/api.ts index ac9a859da..c646da503 100644 --- a/packages/wdio-junit-reporter/src/common/api.ts +++ b/packages/wdio-junit-reporter/src/common/api.ts @@ -10,8 +10,9 @@ export const events = { * @param {object} msg - event payload * @private */ -const tellReporter = (event: string, msg: any = {}) => { - process.emit(event as any, msg) +const tellReporter = (event: string, msg: object = {}) => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + process.emit(event as any, msg as any) } /** diff --git a/packages/wdio-junit-reporter/src/index.ts b/packages/wdio-junit-reporter/src/index.ts index 108709632..7e76b4883 100644 --- a/packages/wdio-junit-reporter/src/index.ts +++ b/packages/wdio-junit-reporter/src/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import url from 'node:url' import os from 'node:os' @@ -313,7 +314,7 @@ class JunitReporter extends WDIOReporter { this._buildOrderedReport(builder, runner, specFileName, '', isCucumberFrameworkRunner) } }) - return builder.build() as any as string + return builder.build() as unknown as string } private _buildOrderedReport(builder: any, runner: RunnerStats, specFileName: string, type: string, isCucumberFrameworkRunner: boolean) { diff --git a/packages/wdio-junit-reporter/src/types.ts b/packages/wdio-junit-reporter/src/types.ts index 356dd2e99..787752617 100644 --- a/packages/wdio-junit-reporter/src/types.ts +++ b/packages/wdio-junit-reporter/src/types.ts @@ -11,7 +11,7 @@ interface ClassNameFormatOptions { /** * Name of the current cucumber feature */ - activeFeatureName?: any + activeFeatureName?: string /** * Context of the current suite */ @@ -19,7 +19,7 @@ interface ClassNameFormatOptions { } interface TestSuiteNameFormatOptions { - name?: any + name?: string suite: SuiteStats } diff --git a/packages/wdio-junit-reporter/src/utils.ts b/packages/wdio-junit-reporter/src/utils.ts index 4c12277d5..8e93a1132 100644 --- a/packages/wdio-junit-reporter/src/utils.ts +++ b/packages/wdio-junit-reporter/src/utils.ts @@ -5,7 +5,7 @@ const ARRLENGTH = 10 const STRINGLIMIT = 1000 const STRINGTRUNCATE = 200 -export const limit = function (rawVal?: any) { +export const limit = function (rawVal?: unknown) { if (!rawVal) { return rawVal } diff --git a/packages/wdio-junit-reporter/tests/reporter.test.ts b/packages/wdio-junit-reporter/tests/reporter.test.ts index c3558aecf..6674d5c3d 100644 --- a/packages/wdio-junit-reporter/tests/reporter.test.ts +++ b/packages/wdio-junit-reporter/tests/reporter.test.ts @@ -111,7 +111,7 @@ describe('wdio-junit-reporter', () => { type: 'result', body: { value: 'foobar' } }] - } as any as TestStats + } as unknown as TestStats expect(reporter['_getStandardOutput'](teststats)).toContain('COMMAND: POST /sessionId/click - {"elementId":"foobar"}') expect(reporter['_getStandardOutput'](teststats)).toContain('RESULT: {"value":"foobar"}') }) diff --git a/packages/wdio-lighthouse-service/src/auditor.ts b/packages/wdio-lighthouse-service/src/auditor.ts index ead692bbe..c7669b5e2 100644 --- a/packages/wdio-lighthouse-service/src/auditor.ts +++ b/packages/wdio-lighthouse-service/src/auditor.ts @@ -61,11 +61,11 @@ export default class Auditor { GatherContext: { gatherMode: 'navigation' }, ...params }, auditContext) - } catch (error: any) { + } catch (error: unknown) { log.error(error) return { score: 0, - error + error: error as Error } } } @@ -77,7 +77,7 @@ export default class Auditor { updateCommands (browser: WebdriverIO.Browser, customFn?: CustomInstanceCommands['addCommand']) { const commands = Object.getOwnPropertyNames(Object.getPrototypeOf(this)).filter( fnName => fnName !== 'constructor' && fnName !== 'updateCommands' && !fnName.startsWith('_')) - commands.forEach(fnName => browser.addCommand(fnName, customFn || (this[fnName as keyof Auditor] as any).bind(this))) + commands.forEach(fnName => browser.addCommand(fnName, customFn || (this[fnName as keyof Auditor] as Function).bind(this))) } /** @@ -160,14 +160,14 @@ export default class Auditor { } async _auditPWA ( - params: any, + params: unknown, auditsToBeRun = Object.keys(PWA_AUDITS) as PWAAudits[] ): Promise { const audits: RunAuditResult[] = await Promise.all( Object.entries(PWA_AUDITS) .filter(([name]) => auditsToBeRun.includes(name as PWAAudits)) .map>( - async ([name, Audit]) => [name, await this._audit(Audit, params)] + async ([name, Audit]) => [name, await this._audit(Audit, params as object)] ) ) return { diff --git a/packages/wdio-lighthouse-service/src/commands.ts b/packages/wdio-lighthouse-service/src/commands.ts index 9fa4de1b6..31637d9e6 100644 --- a/packages/wdio-lighthouse-service/src/commands.ts +++ b/packages/wdio-lighthouse-service/src/commands.ts @@ -27,7 +27,7 @@ const log = logger('@wdio/lighthouse-service:CommandHandler') const TRACE_COMMANDS = ['click', 'navigateTo', 'url'] function isCDPSessionOnMessageObject( - data: any + data: unknown ): data is CDPSessionOnMessageObject { return ( data !== null && @@ -118,8 +118,8 @@ export default class CommandHandler { } this._traceEvents = JSON.parse(traceBuffer.toString()) this._isTracing = false - } catch (err: any) { - throw new Error(`Couldn't parse trace events: ${err.message}`) + } catch (err) { + throw new Error(`Couldn't parse trace events: ${(err as Error).message}`) } return this._traceEvents @@ -194,7 +194,7 @@ export default class CommandHandler { return auditor._auditPWA(artifacts, auditsToBeRun) } - private _propagateWSEvents (data: any) { + private _propagateWSEvents (data: unknown) { if (!isCDPSessionOnMessageObject(data)) { return } @@ -218,12 +218,12 @@ export default class CommandHandler { */ await Promise.all(['Page', 'Network', 'Runtime'].map( (domain) => Promise.all([ - this._session?.send(`${domain}.enable` as any) + this._session?.send(`${domain}.enable` as 'Page.enable' | 'Network.enable' | 'Runtime.enable'), ]) )) } - _beforeCmd (commandName: string, params: any[]) { + _beforeCmd (commandName: string, params: unknown[]) { const isCommandNavigation = ['url', 'navigateTo'].some(cmdName => cmdName === commandName) if (!this._shouldRunPerformanceAudits || !this._traceGatherer || this._traceGatherer.isTracing || !TRACE_COMMANDS.includes(commandName)) { return @@ -235,7 +235,7 @@ export default class CommandHandler { this.setThrottlingProfile(this._networkThrottling, this._cpuThrottling, this._cacheEnabled) const url = isCommandNavigation - ? params[0] + ? params[0] as string : CLICK_TRANSITION return this._traceGatherer.startTracing(url) } diff --git a/packages/wdio-lighthouse-service/src/gatherer/devtools.ts b/packages/wdio-lighthouse-service/src/gatherer/devtools.ts index 2082f090b..ef11266d3 100644 --- a/packages/wdio-lighthouse-service/src/gatherer/devtools.ts +++ b/packages/wdio-lighthouse-service/src/gatherer/devtools.ts @@ -4,9 +4,9 @@ export interface CDPSessionOnMessageObject { params: Record; error: { message: string; - data: any; + data: unknown; }; - result?: any; + result?: unknown; } export default class DevtoolsGatherer { diff --git a/packages/wdio-lighthouse-service/src/gatherer/pwa.ts b/packages/wdio-lighthouse-service/src/gatherer/pwa.ts index f0bda377d..fb13a6802 100644 --- a/packages/wdio-lighthouse-service/src/gatherer/pwa.ts +++ b/packages/wdio-lighthouse-service/src/gatherer/pwa.ts @@ -17,8 +17,8 @@ import type { GathererDriver } from '../types.js' export default class PWAGatherer { private _frGatherer: typeof FRGatherer - private _networkRecorder: any - private _networkRecords: any[] = [] + private _networkRecorder: typeof NetworkRecorder + private _networkRecords: typeof NetworkRecorder[] = [] constructor ( private _session: CDPSession, diff --git a/packages/wdio-lighthouse-service/src/gatherer/trace.ts b/packages/wdio-lighthouse-service/src/gatherer/trace.ts index 7455ed191..5eef87458 100644 --- a/packages/wdio-lighthouse-service/src/gatherer/trace.ts +++ b/packages/wdio-lighthouse-service/src/gatherer/trace.ts @@ -34,7 +34,7 @@ export interface Trace { interface StartedInBrowserEvent extends TraceEventArgs { data: { frames: { - parent: any + parent: unknown processId: number }[] } @@ -47,14 +47,14 @@ interface NavigationStartEvent extends TraceEventArgs { } export interface WaitPromise { - promise: Promise + promise: Promise cancel: Function } export default class TraceGatherer extends EventEmitter { private _failingFrameLoadIds: string[] = [] private _pageLoadDetected = false - private _networkListeners: Record void> = {} + private _networkListeners: Record void> = {} private _frameId?: string private _loaderId?: string @@ -244,7 +244,7 @@ export default class TraceGatherer extends EventEmitter { const mainFrame = ( startedInBrowserEvt && startedInBrowserEvt.args && - (startedInBrowserEvt.args as StartedInBrowserEvent).data.frames?.find((frame: any) => !frame.parent) + (startedInBrowserEvt.args as StartedInBrowserEvent).data.frames?.find((frame: { parent?: unknown }) => !frame.parent) ) if (mainFrame && mainFrame.processId) { const threadNameEvt = traceEvents.traceEvents.find(e => e.ph === 'R' && @@ -267,8 +267,8 @@ export default class TraceGatherer extends EventEmitter { } this.emit('tracingComplete', this._trace) this.finishTracing() - } catch (err: any) { - log.error(`Error capturing tracing logs: ${err.stack}`) + } catch (err) { + log.error(`Error capturing tracing logs: ${(err as Error).stack}`) this.emit('tracingError', err) return this.finishTracing() } diff --git a/packages/wdio-lighthouse-service/src/index.ts b/packages/wdio-lighthouse-service/src/index.ts index 4fbabc316..aa0008947 100644 --- a/packages/wdio-lighthouse-service/src/index.ts +++ b/packages/wdio-lighthouse-service/src/index.ts @@ -30,7 +30,7 @@ export default class DevToolsService implements Services.ServiceInstance { return this._setupHandler() } - async beforeCommand (commandName: string, params: any[]) { + async beforeCommand (commandName: string, params: unknown[]) { return Promise.all(this._command.map(async c => await c._beforeCmd(commandName, params))) } @@ -115,7 +115,7 @@ export default class DevToolsService implements Services.ServiceInstance { (this._browser as WebdriverIO.MultiRemoteBrowser).instances.map(i => (this._browser as WebdriverIO.MultiRemoteBrowser).getInstance(i)) for (const browser of browsers) { - const puppeteer = await (browser as WebdriverIO.Browser).getPuppeteer().catch(() => undefined) as any as PuppeteerBrowser + const puppeteer = await (browser as WebdriverIO.Browser).getPuppeteer().catch(() => undefined) as unknown as PuppeteerBrowser if (!puppeteer) { return setUnsupportedCommand(browser as WebdriverIO.Browser) } diff --git a/packages/wdio-lighthouse-service/src/lighthouse/cri.ts b/packages/wdio-lighthouse-service/src/lighthouse/cri.ts index b4a1c0659..521e32bde 100644 --- a/packages/wdio-lighthouse-service/src/lighthouse/cri.ts +++ b/packages/wdio-lighthouse-service/src/lighthouse/cri.ts @@ -28,7 +28,7 @@ export default class ChromeProtocolPatched extends CriConnection { /** * force every command to be send with the given session id */ - sendCommand(method: string, sessionId?: string, ...paramArgs: any[]) { + sendCommand(method: string, sessionId?: string, ...paramArgs: unknown[]) { return super.sendCommand(method, sessionId || this._sessionId, ...paramArgs) } } diff --git a/packages/wdio-lighthouse-service/src/types.ts b/packages/wdio-lighthouse-service/src/types.ts index 849ac37bd..1a8ceb9fb 100644 --- a/packages/wdio-lighthouse-service/src/types.ts +++ b/packages/wdio-lighthouse-service/src/types.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { TraceStreamJson } from '@tracerbench/trace-event' import type { ReportOptions } from 'istanbul-reports' import type { Totals, CoverageSummaryData } from 'istanbul-lib-coverage' @@ -187,5 +188,5 @@ export interface PerformanceAuditOptions { export interface GathererDriver { beginTrace (): Promise endTrace (): Promise - evaluate (script: Function, args: Object): Promise + evaluate (script: Function, args: unknown): Promise } diff --git a/packages/wdio-lighthouse-service/tests/gatherer/pwa.test.ts b/packages/wdio-lighthouse-service/tests/gatherer/pwa.test.ts index e04f80319..397e8d20b 100644 --- a/packages/wdio-lighthouse-service/tests/gatherer/pwa.test.ts +++ b/packages/wdio-lighthouse-service/tests/gatherer/pwa.test.ts @@ -24,7 +24,7 @@ const sessionMock = { const driver = { evaluate: vi.fn() -} as any as GathererDriver +} as unknown as GathererDriver describe('PWAGatherer', () => { beforeEach(() => { diff --git a/packages/wdio-lighthouse-service/tests/gatherer/trace.test.ts b/packages/wdio-lighthouse-service/tests/gatherer/trace.test.ts index a62861e17..a5439ab5f 100644 --- a/packages/wdio-lighthouse-service/tests/gatherer/trace.test.ts +++ b/packages/wdio-lighthouse-service/tests/gatherer/trace.test.ts @@ -43,7 +43,7 @@ const frame = { const driver = { beginTrace: vi.fn(), endTrace: vi.fn().mockReturnValue(Promise.resolve(TRACELOG)) -} as any as GathererDriver +} as unknown as GathererDriver vi.useFakeTimers() vi.spyOn(global, 'setTimeout') diff --git a/packages/wdio-local-runner/src/index.ts b/packages/wdio-local-runner/src/index.ts index 3fb480dad..032577a59 100644 --- a/packages/wdio-local-runner/src/index.ts +++ b/packages/wdio-local-runner/src/index.ts @@ -11,7 +11,7 @@ export type { WorkerInstance } export interface RunArgs extends Workers.WorkerRunPayload { command: string - args: any + args: Workers.WorkerMessageArgs } export default class LocalRunner { @@ -61,7 +61,7 @@ export default class LocalRunner { for (const [cid, worker] of Object.entries(this.workerPool)) { const { capabilities, server, sessionId, config, isMultiremote, instances } = worker - let payload = {} + let payload: Partial = {} /** * put connection information to payload if in watch mode @@ -74,7 +74,7 @@ export default class LocalRunner { watch: true, isMultiremote, instances - } + } as unknown as Workers.WorkerMessageArgs } else if (!worker.isBusy) { delete this.workerPool[cid] continue diff --git a/packages/wdio-local-runner/src/repl.ts b/packages/wdio-local-runner/src/repl.ts index 491ff58b8..d4556bd36 100644 --- a/packages/wdio-local-runner/src/repl.ts +++ b/packages/wdio-local-runner/src/repl.ts @@ -14,7 +14,7 @@ export default class WDIORunnerRepl extends WDIORepl { this.childProcess = childProcess } - private _getError (params: any) { + private _getError (params: Record) { if (!params.error) { return null } @@ -39,7 +39,7 @@ export default class WDIORunnerRepl extends WDIORepl { this.callback = callback } - onResult (params: any) { + onResult (params: Record) { const error = this._getError(params) if (this.callback) { diff --git a/packages/wdio-local-runner/src/replQueue.ts b/packages/wdio-local-runner/src/replQueue.ts index d6001e94e..aeab19d65 100644 --- a/packages/wdio-local-runner/src/replQueue.ts +++ b/packages/wdio-local-runner/src/replQueue.ts @@ -1,10 +1,11 @@ import type { ChildProcess } from 'node:child_process' +import type { ReplConfig } from '@wdio/repl' import WDIORepl from './repl.js' interface Repl { childProcess: ChildProcess - options: any + options: ReplConfig onStart: Function onEnd: Function } @@ -17,7 +18,7 @@ export default class ReplQueue { private _repls: Repl[] = [] runningRepl?: WDIORepl - add (childProcess: ChildProcess, options: any, onStart: Function, onEnd: Function) { + add (childProcess: ChildProcess, options: ReplConfig, onStart: Function, onEnd: Function) { this._repls.push({ childProcess, options, onStart, onEnd }) } diff --git a/packages/wdio-local-runner/src/run.ts b/packages/wdio-local-runner/src/run.ts index a1e959d8e..c8ee8aeb5 100644 --- a/packages/wdio-local-runner/src/run.ts +++ b/packages/wdio-local-runner/src/run.ts @@ -13,7 +13,7 @@ const log = logger('@wdio/local-runner') */ interface RunnerInterface extends NodeJS.EventEmitter { sigintWasCalled: boolean - [key: string]: any + [key: string]: unknown } /** @@ -35,13 +35,13 @@ runner.on('error', ({ name, message, stack }) => process.send!({ })) process.on('message', (m: Workers.WorkerCommand) => { - if (!m || !m.command || !runner[m.command]) { + if (!m || !m.command || !runner[m.command] || typeof runner[m.command] !== 'function') { return } log.info(`Run worker command: ${m.command}`) - runner[m.command](m).then( - (result: any) => process.send!({ + ;(runner[m.command] as Function)(m).then( + (result: unknown) => process.send!({ origin: 'worker', name: 'finishedCommand', content: { diff --git a/packages/wdio-local-runner/src/stdStream.ts b/packages/wdio-local-runner/src/stdStream.ts index 40fe44728..dae30e40a 100644 --- a/packages/wdio-local-runner/src/stdStream.ts +++ b/packages/wdio-local-runner/src/stdStream.ts @@ -18,7 +18,7 @@ export default class RunnerStream extends Transform { }) } - _transform (chunk: any, encoding: BufferEncoding, callback: TransformCallback): void { + _transform (chunk: Buffer, _encoding: BufferEncoding, callback: TransformCallback): void { callback(undefined, chunk) } diff --git a/packages/wdio-local-runner/src/transformStream.ts b/packages/wdio-local-runner/src/transformStream.ts index 2799b6d25..04e34dd82 100644 --- a/packages/wdio-local-runner/src/transformStream.ts +++ b/packages/wdio-local-runner/src/transformStream.ts @@ -30,10 +30,10 @@ function ignore(patternsToIgnore: string[]) { }) } -function map(mapper: (line: string) => string) { +function map(mapper: (line: Buffer) => string) { return new Transform({ decodeStrings: false, - transform(chunk: any, encoding: BufferEncoding, next: TransformCallback) { + transform(chunk: Buffer, encoding: BufferEncoding, next: TransformCallback) { return next(null, mapper(chunk)) }, final(next: TransformCallback): void { diff --git a/packages/wdio-local-runner/src/worker.ts b/packages/wdio-local-runner/src/worker.ts index 038f55f56..bc07e804a 100644 --- a/packages/wdio-local-runner/src/worker.ts +++ b/packages/wdio-local-runner/src/worker.ts @@ -5,6 +5,7 @@ import { EventEmitter } from 'node:events' import type { ChildProcess } from 'node:child_process' import type { WritableStreamBuffer } from 'stream-buffers' import type { Options, Workers } from '@wdio/types' +import type { ReplConfig } from '@wdio/repl' import logger from '@wdio/logger' @@ -42,7 +43,7 @@ export default class WorkerInstance extends EventEmitter implements Workers.Work stderr: WritableStreamBuffer childProcess?: ChildProcess sessionId?: string - server?: Record + server?: Record logsAggregator: string[] = [] instances?: Record @@ -180,9 +181,9 @@ export default class WorkerInstance extends EventEmitter implements Workers.Work if (childProcess && payload.origin === 'debugger' && payload.name === 'start') { replQueue.add( childProcess, - { prompt: `[${cid}] \u203A `, ...payload.params }, + { prompt: `[${cid}] \u203A `, ...payload.params } as ReplConfig, () => this.emit('message', Object.assign(payload, { cid })), - (ev: any) => this.emit('message', ev) + (ev: unknown) => this.emit('message', ev) ) return replQueue.next() } diff --git a/packages/wdio-logger/src/browser.ts b/packages/wdio-logger/src/browser.ts index 393fe86ae..9f900573b 100644 --- a/packages/wdio-logger/src/browser.ts +++ b/packages/wdio-logger/src/browser.ts @@ -14,9 +14,7 @@ export default function getLogger (component: string) { // check if the method is available on console (web doesn't have // 'silent', for example) before adding to acc - // eslint-disable-next-line no-console if (console[prop]) { - // eslint-disable-next-line no-console // @ts-ignore acc[prop] = console[prop].bind(console, `${component}:`) } diff --git a/packages/wdio-logger/src/index.ts b/packages/wdio-logger/src/index.ts index 7c43a0e93..ba5d14a18 100644 --- a/packages/wdio-logger/src/index.ts +++ b/packages/wdio-logger/src/index.ts @@ -33,8 +33,8 @@ const SERIALIZERS = [{ /** * display error stack */ - matches: (err: any) => err instanceof Error, - serialize: (err: any) => err.stack + matches: (err: unknown) => err instanceof Error, + serialize: (err: Error) => err.stack }, { /** * color commands blue @@ -56,7 +56,7 @@ const SERIALIZERS = [{ }] interface LoggerInterface extends log.Logger { - progress(...msg: any[]): void; + progress(...msg: string[]): void; } interface Loggers { @@ -92,7 +92,7 @@ const wdioLoggerMethodFactory = function (this: log.Logger, methodName: log.LogL args = args.map((arg) => { for (const s of SERIALIZERS) { if (s.matches(arg)) { - return s.serialize(arg) + return s.serialize(arg as Error & string) as string } } return arg @@ -124,7 +124,7 @@ const wdioLoggerMethodFactory = function (this: log.Logger, methodName: log.LogL } } -const progress = function (this: any, data: string) { +const progress = function (this: Logger & { name: string }, data: string) { if (process.stdout.isTTY && this.getLevel() <= log.levels.INFO) { const level = 'progress' const timestampFormatter = chalk.gray(new Date().toISOString()) diff --git a/packages/wdio-mocha-framework/src/common.ts b/packages/wdio-mocha-framework/src/common.ts index ada802739..a49daeacf 100644 --- a/packages/wdio-mocha-framework/src/common.ts +++ b/packages/wdio-mocha-framework/src/common.ts @@ -15,20 +15,34 @@ import type { FormattedMessage, FrameworkMessage, MochaOpts } from './types.js' const MOCHA_UI_TYPE_EXTRACTOR = /^(?:.*-)?([^-.]+)(?:.js)?$/ const DEFAULT_INTERFACE_TYPE = 'bdd' +interface Payload { + title: string + parent?: Payload | null + file?: string + duration?: number + body?: string + context?: unknown + state?: string + pending?: boolean + ctx?: Mocha.Context +} + export function formatMessage (params: FrameworkMessage) { const message: FormattedMessage = { type: params.type } + const payload = params.payload as Payload | undefined - const mochaAllHooksIfPresent = params.payload?.title?.match(/^"(before|after)( all| each)?" hook/) + const mochaAllHooksIfPresent = payload?.title?.match(/^"(before|after)( all| each)?" hook/) if (params.err) { /** * replace "Ensure the done() callback is being called in this test." with a more meaningful message */ if (params.err && params.err.message && params.err.message.includes(MOCHA_TIMEOUT_MESSAGE)) { + const testName = (payload?.parent?.title ? `${payload.parent.title} ${payload.title}` : payload?.title) || 'unknown test' const replacement = ( - `The execution in the test "${params.payload.parent.title} ${params.payload.title}" took too long. Try to reduce the run time or ` + + `The execution in the test "${testName}" took too long. Try to reduce the run time or ` + 'increase your timeout for test specs (https://webdriver.io/docs/timeouts).' ) params.err.message = params.err.message.replace(MOCHA_TIMEOUT_MESSAGE, replacement) @@ -52,43 +66,43 @@ export function formatMessage (params: FrameworkMessage) { } } - if (params.payload) { - message.title = params.payload.title - message.parent = params.payload.parent ? params.payload.parent.title : null + if (payload) { + message.title = payload.title + message.parent = payload.parent ? payload.parent.title : undefined let fullTitle = message.title - if (params.payload.parent) { - let parent = params.payload.parent + if (payload.parent) { + let parent = payload.parent while (parent && parent.title) { fullTitle = parent.title + '.' + fullTitle - parent = parent.parent + parent = parent.parent as Payload } } message.fullTitle = fullTitle - message.pending = params.payload.pending || false - message.file = params.payload.file - message.duration = params.payload.duration - message.body = params.payload.body + message.pending = payload.pending || false + message.file = payload.file + message.duration = payload.duration + message.body = payload.body /** * Add the current test title to the payload for cases where it helps to * identify the test, e.g. when running inside a beforeEach hook */ - if (params.payload.ctx && params.payload.ctx.currentTest) { - message.currentTest = params.payload.ctx.currentTest.title + if (payload.ctx && payload.ctx.currentTest) { + message.currentTest = payload.ctx.currentTest.title } if (params.type.match(/Test/)) { - message.passed = (params.payload.state === 'passed') + message.passed = (payload.state === 'passed') } - if (params.payload.parent?.title && mochaAllHooksIfPresent) { + if (payload.parent?.title && mochaAllHooksIfPresent) { const hookName = mochaAllHooksIfPresent[0] - message.title = `${hookName} for ${params.payload.parent.title}` + message.title = `${hookName} for ${payload.parent.title}` } - if (params.payload.context) { message.context = params.payload.context } + if (payload.context) { message.context = payload.context } } return message @@ -117,7 +131,7 @@ export function requireExternalModules (mods: string[], loader = loadModule) { type Hook = Function | Function[] export function setupEnv (cid: string, options: MochaOpts, beforeTest: Hook, beforeHook: Hook, afterTest: Hook, afterHook: Hook) { - const match = MOCHA_UI_TYPE_EXTRACTOR.exec(options.ui!) as any as [string, keyof typeof INTERFACES] + const match = MOCHA_UI_TYPE_EXTRACTOR.exec(options.ui!) as unknown as [string, keyof typeof INTERFACES] const type: keyof typeof INTERFACES = (match && INTERFACES[match[1]] && match[1]) || DEFAULT_INTERFACE_TYPE const hookArgsFn = (context: Mocha.Context) => { @@ -146,7 +160,7 @@ export function setupEnv (cid: string, options: MochaOpts, beforeTest: Hook, bef export async function loadModule (name: string) { try { return await import(/* @vite-ignore */name) - } catch (err: any) { + } catch { throw new Error(`Module ${name} can't get loaded. Are you sure you have installed it?\n` + 'Note: if you\'ve installed WebdriverIO globally you need to install ' + 'these external modules globally too!') diff --git a/packages/wdio-mocha-framework/src/index.ts b/packages/wdio-mocha-framework/src/index.ts index d15d2fa97..701e5e40c 100644 --- a/packages/wdio-mocha-framework/src/index.ts +++ b/packages/wdio-mocha-framework/src/index.ts @@ -68,7 +68,7 @@ class MochaAdapter { await mocha.loadFilesAsync({ esmDecorator: (file: string) => `${file}?invalidateCache=${Math.random()}` }) - mocha.reporter(NOOP as any) + mocha.reporter(NOOP as unknown as Mocha.Reporter) mocha.fullTrace() /** @@ -105,13 +105,13 @@ class MochaAdapter { } this._hasTests = mochaRunner.total > 0 - } catch (err: any) { + } catch (err) { const error = '' + 'Unable to load spec files quite likely because they rely on `browser` object that is not fully initialized.\n' + '`browser` object has only `capabilities` and some flags like `isMobile`.\n' + 'Helper files that use other `browser` commands have to be moved to `before` hook.\n' + `Spec file(s): ${this._specs.join(',')}\n` + - `Error: ${err.stack}` + `Error: ${(err as Error).stack}` this._specLoadError = new Error(error) log.warn(error) } @@ -128,8 +128,8 @@ class MochaAdapter { const result = await new Promise((resolve) => { try { this._runner = mocha.run(resolve) - } catch (err: any) { - runtimeError = err + } catch (err) { + runtimeError = err as Error return resolve(1) } @@ -175,7 +175,10 @@ class MochaAdapter { case 'afterSuite': params.payload = this._runner?.suite.suites[0] if (params.payload) { - params.payload.duration = params.payload.duration || (Date.now() - this._suiteStartDate) + (params.payload as { duration: number }).duration = ( + (params.payload as { duration: number }).duration || + (Date.now() - this._suiteStartDate) + ) } break case 'beforeTest': @@ -187,7 +190,7 @@ class MochaAdapter { return formatMessage(params) } - emit (event: string, payload: any, err?: MochaError) { + emit (event: string, payload: Record, err?: MochaError) { /** * For some reason, Mocha fires a second 'suite:end' event for the root suite, * with no matching 'suite:start', so this can be ignored. @@ -266,7 +269,7 @@ class MochaAdapter { const adapterFactory: { init?: Function } = {} -adapterFactory.init = async function (...args: any[]) { +adapterFactory.init = async function (...args: unknown[]) { // @ts-ignore just passing through args const adapter = new MochaAdapter(...args) const instance = await adapter.init() diff --git a/packages/wdio-mocha-framework/src/types.ts b/packages/wdio-mocha-framework/src/types.ts index 35c9e6bb9..7802362d8 100644 --- a/packages/wdio-mocha-framework/src/types.ts +++ b/packages/wdio-mocha-framework/src/types.ts @@ -78,13 +78,13 @@ export interface MochaError { message: string stack: string type: string - expected: any - actual: any + expected: unknown + actual: unknown } export interface FrameworkMessage { type: string - payload?: any + payload?: unknown err?: MochaError } @@ -102,6 +102,6 @@ export interface FormattedMessage { duration?: number currentTest?: string error?: MochaError - context?: any + context?: unknown body?: string } diff --git a/packages/wdio-protocols/src/types.ts b/packages/wdio-protocols/src/types.ts index ba15eb26c..d65f46975 100644 --- a/packages/wdio-protocols/src/types.ts +++ b/packages/wdio-protocols/src/types.ts @@ -1,6 +1,6 @@ // object with no match export interface ProtocolCommandResponse { - [key: string]: any; + [key: string]: unknown; } // webdriver.json @@ -306,7 +306,7 @@ export interface BidiRequest { /** * types will be more defined later */ - params: Record + params: Record } export type Context = string | DetailedContext diff --git a/packages/wdio-repl/src/index.ts b/packages/wdio-repl/src/index.ts index 38742951d..115e4d760 100644 --- a/packages/wdio-repl/src/index.ts +++ b/packages/wdio-repl/src/index.ts @@ -43,7 +43,7 @@ export interface ReplConfig { useColor: boolean } -export type ReplCallback = (err: Error | null, result: any) => void +export type ReplCallback = (err: Error | null, result: unknown) => void export default class WDIORepl { static introMessage = INTRO_MESSAGE @@ -78,13 +78,13 @@ export default class WDIORepl { try { const result = vm.runInContext(cmd, context) return this._handleResult(result, callback) - } catch (e: any) { + } catch (e: unknown) { this._isCommandRunning = false - return callback(e, undefined) + return callback(e as Error, undefined) } } - private _handleResult (result: any, callback: ReplCallback) { + private _handleResult (result: Promise, callback: ReplCallback) { if (!result || typeof result.then !== 'function') { this._isCommandRunning = false return callback(null, result) @@ -100,7 +100,7 @@ export default class WDIORepl { this._config.commandTimeout ) - result.then((res: any) => { + result.then((res: unknown) => { /** * don't do anything if timeout was called */ diff --git a/packages/wdio-repl/tests/repl.test.ts b/packages/wdio-repl/tests/repl.test.ts index 7bc1a4f32..25f934335 100644 --- a/packages/wdio-repl/tests/repl.test.ts +++ b/packages/wdio-repl/tests/repl.test.ts @@ -12,7 +12,7 @@ vi.mock('vm', () => { runInContext: () => any constructor () { - this.createContext = vi.fn(), + this.createContext = vi.fn() this.runInContext = vi.fn().mockImplementation(() => { if (runInContextFail) { throw new Error('boom!') @@ -121,11 +121,13 @@ describe('handleResult', () => { const callback = vi.fn() repl['_isCommandRunning'] = true + // @ts-expect-error repl['_handleResult'](null, callback) expect(callback).toBeCalledWith(null, null) expect(repl['_isCommandRunning']).toBe(false) callback.mockClear() + // @ts-expect-error repl['_handleResult'](1, callback) expect(callback).toBeCalledWith(null, 1) }) diff --git a/packages/wdio-reporter/src/index.ts b/packages/wdio-reporter/src/index.ts index 3b6e9440f..35d1c56ba 100644 --- a/packages/wdio-reporter/src/index.ts +++ b/packages/wdio-reporter/src/index.ts @@ -12,7 +12,7 @@ import TestStats, { type Test } from './stats/test.js' import RunnerStats from './stats/runner.js' import type { AfterCommandArgs, BeforeCommandArgs, CommandArgs, Tag, Argument } from './types.js' -type CustomWriteStream = { write: (content: any) => boolean } +type CustomWriteStream = { write: (content: unknown) => boolean } export default class WDIOReporter extends EventEmitter { outputStream: WriteStream | CustomWriteStream @@ -42,8 +42,8 @@ export default class WDIOReporter extends EventEmitter { if (this.options.outputDir) { try { fs.mkdirSync(this.options.outputDir, { recursive: true }) - } catch (err: any) { - throw new Error(`Couldn't create output directory at "${this.options.outputDir}": ${err.stack}`) + } catch (err) { + throw new Error(`Couldn't create output directory at "${this.options.outputDir}": ${(err as Error).stack}`) } } @@ -65,14 +65,14 @@ export default class WDIOReporter extends EventEmitter { this.on('client:beforeAssertion', this.onBeforeAssertion.bind(this)) this.on('client:afterAssertion', this.onAfterAssertion.bind(this)) - this.on('runner:start', /* istanbul ignore next */ (runner: Options.RunnerStart) => { + this.on('runner:start', (runner: Options.RunnerStart) => { rootSuite.cid = runner.cid this.specs.push(...runner.specs) this.runnerStat = new RunnerStats(runner) this.onRunnerStart(this.runnerStat) }) - this.on('suite:start', /* istanbul ignore next */ (params: Suite) => { + this.on('suite:start', (params: Suite) => { /** * the jasmine framework doesn't give us information about the file * therefore we need to propagate these information into params @@ -103,7 +103,7 @@ export default class WDIOReporter extends EventEmitter { this.onSuiteRetry(suiteStat) }) - this.on('hook:start', /* istanbul ignore next */ (hook: Hook) => { + this.on('hook:start', (hook: Hook) => { const hookStats = new HookStats(hook) const currentSuite = this.currentSuites[this.currentSuites.length - 1] currentSuite.hooks.push(hookStats) @@ -112,14 +112,14 @@ export default class WDIOReporter extends EventEmitter { this.onHookStart(hookStats) }) - this.on('hook:end', /* istanbul ignore next */(hook: Hook) => { + this.on('hook:end', (hook: Hook) => { const hookStats = this.hooks[hook.uid!] hookStats.complete(getErrorsFromEvent(hook)) this.counts.hooks++ this.onHookEnd(hookStats) }) - this.on('test:start', /* istanbul ignore next */ (test: Test) => { + this.on('test:start', (test: Test) => { test.retries = this.retries currentTest = new TestStats(test) const currentSuite = this.currentSuites[this.currentSuites.length - 1] @@ -129,7 +129,7 @@ export default class WDIOReporter extends EventEmitter { this.onTestStart(currentTest) }) - this.on('test:pass', /* istanbul ignore next */(test: Test) => { + this.on('test:pass', (test: Test) => { const testStat = this.tests[test.uid] testStat.pass() this.counts.passes++ @@ -145,7 +145,7 @@ export default class WDIOReporter extends EventEmitter { this.onTestSkip(testStat) }) - this.on('test:fail', /* istanbul ignore next */(test: Test) => { + this.on('test:fail', (test: Test) => { const testStat = this.tests[test.uid] testStat.fail(getErrorsFromEvent(test)) @@ -191,20 +191,20 @@ export default class WDIOReporter extends EventEmitter { this.onTestSkip(currentTest) }) - this.on('test:end', /* istanbul ignore next */(test: Test) => { + this.on('test:end', (test: Test) => { const testStat = this.tests[test.uid] this.retries = 0 this.onTestEnd(testStat) }) - this.on('suite:end', /* istanbul ignore next */(suite: Suite) => { + this.on('suite:end', (suite: Suite) => { const suiteStat = this.suites[suite.uid!] suiteStat.complete() this.currentSuites.pop() this.onSuiteEnd(suiteStat) }) - this.on('runner:end', /* istanbul ignore next */(runner: Options.RunnerEnd) => { + this.on('runner:end', (runner: Options.RunnerEnd) => { rootSuite.complete() if (this.runnerStat) { this.runnerStat.failures = runner.failures @@ -221,7 +221,7 @@ export default class WDIOReporter extends EventEmitter { /** * browser client event handlers */ - this.on('client:beforeCommand', /* istanbul ignore next */(payload) => { + this.on('client:beforeCommand', (payload) => { if (!currentTest) { return } @@ -233,7 +233,7 @@ export default class WDIOReporter extends EventEmitter { } currentTest.output.push(Object.assign(payload, { type: 'command' })) }) - this.on('client:afterCommand', /* istanbul ignore next */(payload) => { + this.on('client:afterCommand', (payload) => { if (!currentTest) { return } @@ -258,64 +258,29 @@ export default class WDIOReporter extends EventEmitter { /** * function to write to reporters output stream */ - write(content: any) { + write(content: unknown) { if (content) { this.isContentPresent = true } this.outputStream.write(content) } - - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onRunnerStart(runnerStats: RunnerStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onBeforeCommand(commandArgs: BeforeCommandArgs) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onAfterCommand(commandArgs: AfterCommandArgs) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onBeforeAssertion(assertionArgs: unknown) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onAfterAssertion(assertionArgs: unknown) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onSuiteStart(suiteStats: SuiteStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onHookStart(hookStat: HookStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onHookEnd(hookStats: HookStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestStart(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestPass(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestFail(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestRetry(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestSkip(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onTestEnd(testStats: TestStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onSuiteRetry(suiteStats: SuiteStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onSuiteEnd(suiteStats: SuiteStats) { } - /* istanbul ignore next */ - // eslint-disable-next-line @typescript-eslint/no-unused-vars - onRunnerEnd(runnerStats: RunnerStats) { } + onRunnerStart(_runnerStats: RunnerStats) { } + onBeforeCommand(_commandArgs: BeforeCommandArgs) { } + onAfterCommand(_commandArgs: AfterCommandArgs) { } + onBeforeAssertion(_assertionArgs: unknown) { } + onAfterAssertion(_assertionArgs: unknown) { } + onSuiteStart(_suiteStats: SuiteStats) { } + onHookStart(_hookStat: HookStats) { } + onHookEnd(_hookStats: HookStats) { } + onTestStart(_testStats: TestStats) { } + onTestPass(_testStats: TestStats) { } + onTestFail(_testStats: TestStats) { } + onTestRetry(_testStats: TestStats) { } + onTestSkip(_testStats: TestStats) { } + onTestEnd(_testStats: TestStats) { } + onSuiteRetry(_suiteStats: SuiteStats) { } + onSuiteEnd(_suiteStats: SuiteStats) { } + onRunnerEnd(_runnerStats: RunnerStats) { } } export { diff --git a/packages/wdio-reporter/src/stats/test.ts b/packages/wdio-reporter/src/stats/test.ts index 653b8c1a3..8b070f71b 100644 --- a/packages/wdio-reporter/src/stats/test.ts +++ b/packages/wdio-reporter/src/stats/test.ts @@ -31,7 +31,7 @@ export interface Test { interface Output { command: string - params: any + params: unknown[] method: 'PUT' | 'POST' | 'GET' | 'DELETE' endpoint: string body: {} diff --git a/packages/wdio-reporter/src/supportsColor.ts b/packages/wdio-reporter/src/supportsColor.ts index c8979e4be..046842c23 100644 --- a/packages/wdio-reporter/src/supportsColor.ts +++ b/packages/wdio-reporter/src/supportsColor.ts @@ -8,14 +8,9 @@ import process from 'node:process' import os from 'node:os' import tty from 'node:tty' -declare global { - // eslint-disable-next-line no-var - var Deno: any -} - // From: https://github.com/sindresorhus/has-flag/blob/main/index.js /// function hasFlag(flag, argv = globalThis.Deno?.args ?? process.argv) { -function hasFlag(flag: string, argv = globalThis.Deno ? globalThis.Deno.args : process.argv) { +function hasFlag(flag: string, argv = process.argv) { const prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--') const position = argv.indexOf(prefix + flag) const terminatorPosition = argv.indexOf('--') diff --git a/packages/wdio-reporter/src/types.ts b/packages/wdio-reporter/src/types.ts index 07090189f..d6e6c4573 100644 --- a/packages/wdio-reporter/src/types.ts +++ b/packages/wdio-reporter/src/types.ts @@ -13,15 +13,15 @@ export interface CommandArgs { */ retries?: number command?: string - params?: any + params?: unknown } export interface BeforeCommandArgs extends CommandArgs { - body: any + body: unknown } export interface AfterCommandArgs extends CommandArgs { - result: any + result: unknown /** * custom commands also send along the command name diff --git a/packages/wdio-reporter/src/utils.ts b/packages/wdio-reporter/src/utils.ts index 04199de4a..91a2e81c8 100644 --- a/packages/wdio-reporter/src/utils.ts +++ b/packages/wdio-reporter/src/utils.ts @@ -64,7 +64,7 @@ export function sanitizeCaps (caps?: WebdriverIO.Capabilities) { * have a hard assertion model (Mocha) * @param {*} e An event emitted by a framework adapter */ -export function getErrorsFromEvent(e: { errors?: any; error?: any }) { +export function getErrorsFromEvent(e: { errors?: Error[]; error?: Error }) { if (e.errors) { return e.errors } diff --git a/packages/wdio-runner/src/browser.ts b/packages/wdio-runner/src/browser.ts index 440d7b6cb..b2f916637 100644 --- a/packages/wdio-runner/src/browser.ts +++ b/packages/wdio-runner/src/browser.ts @@ -18,9 +18,16 @@ const ERROR_CHECK_INTERVAL = 500 const DEFAULT_TIMEOUT = 60 * 1000 type WDIOErrorEvent = Partial> & { hasViteError?: boolean } + +interface Event { + type: string + title: string + fullTitle: string + specs: string[] +} interface TestState { failures: number - events: any[] + events: Event[] errors?: WDIOErrorEvent[] hasViteError?: boolean } @@ -35,7 +42,7 @@ interface LogMessage { declare global { interface Window { __wdioErrors__: WDIOErrorEvent[] - __wdioEvents__: any[] + __wdioEvents__: Event[] __wdioFailures__: number __coverage__?: unknown } @@ -43,6 +50,7 @@ declare global { export default class BrowserFramework implements Omit { #retryOutdatedOptimizeDep = false + // eslint-disable-next-line @typescript-eslint/no-explicit-any #runnerOptions: any // `any` here because we don't want to create a dependency to @wdio/browser-runner #resolveTestStatePromise?: (value: TestState) => void @@ -67,14 +75,15 @@ export default class BrowserFramework implements Omit { } init () { - return undefined as any as TestFramework + return undefined as unknown as TestFramework } async run () { try { const failures = await this.#loop() return failures - } catch (err: any) { + } catch (_err: unknown) { + const err = _err as Error if ((err as Error).message.includes('net::ERR_CONNECTION_REFUSE')) { err.message = `Failed to load test page to run tests, make sure your browser can access "${browser.options.baseUrl}"` } @@ -350,7 +359,7 @@ export default class BrowserFramework implements Omit { /** * need await here since ElementArray functions return a promise */ - result = (await result.map((res: any) => ({ + result = (await result.map((res: WebdriverIO.Element) => ({ [ELEMENT_KEY]: res.elementId }))).filter(Boolean) } @@ -358,8 +367,8 @@ export default class BrowserFramework implements Omit { const resultMsg = this.#commandResponse({ id: payload.id, result }) log.debug(`Return command result: ${resultMsg}`) return this.#sendWorkerResponse(id, resultMsg) - } catch (error: any) { - const { message, stack, name } = error + } catch (error: unknown) { + const { message, stack, name } = error as Error return this.#sendWorkerResponse(id, this.#commandResponse({ id: payload.id, error: { message, stack, name } })) } } @@ -416,7 +425,7 @@ export default class BrowserFramework implements Omit { pass: result.pass, message: result.message() })) - } catch (err: unknown) { + } catch (err) { const errorMessage = err instanceof Error ? (err as Error).stack : err const message = `Failed to execute expect command "${payload.matcherName}": ${errorMessage}` return this.#sendWorkerResponse(id, this.#expectResponse({ id: payload.id, pass: false, message })) @@ -517,7 +526,7 @@ export default class BrowserFramework implements Omit { } } - static init (cid: string, config: any, specs: string[], _: unknown, reporter: BaseReporter) { + static init (cid: string, config: Options.Testrunner, specs: string[], _: unknown, reporter: BaseReporter) { const framework = new BrowserFramework(cid, config, specs, reporter) return framework } diff --git a/packages/wdio-runner/src/index.ts b/packages/wdio-runner/src/index.ts index 84184a5d6..edfc95d0c 100644 --- a/packages/wdio-runner/src/index.ts +++ b/packages/wdio-runner/src/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import { EventEmitter } from 'node:events' import logger from '@wdio/logger' @@ -481,7 +482,7 @@ export default class Runner extends EventEmitter { delete multiremoteBrowser.getInstance(browserName).sessionId }) } else if (browser) { - browser.sessionId = undefined as any as string + browser.sessionId = undefined as unknown as string } const afterSessionArgs: AfterSessionArgs = [this._config!, capabilities, this._specs as string[]] diff --git a/packages/wdio-runner/src/reporter.ts b/packages/wdio-runner/src/reporter.ts index db8393c2f..ce5a7046e 100644 --- a/packages/wdio-runner/src/reporter.ts +++ b/packages/wdio-runner/src/reporter.ts @@ -13,7 +13,7 @@ const mochaAllHooks = ['"before all" hook', '"after all" hook'] */ export default class BaseReporter { private _reporters: Reporters.ReporterInstance[] = [] - private listeners: ((ev: any) => void)[] = [] + private listeners: ((ev: unknown) => void)[] = [] constructor( private _config: Options.Testrunner, @@ -33,7 +33,20 @@ export default class BaseReporter { * @param {string} e event name * @param {object} payload event payload */ - emit (e: string, payload: any) { + emit (e: string, payload: { + cid?: string + specs?: string[] + uid?: string + file?: string + title?: string + error?: Error + sessionId?: string + config?: unknown + isMultiremote?: boolean + instanceOptions?: Options.Testrunner + capabilities?: unknown + retry?: number + }) { payload.cid = this._cid /** @@ -43,7 +56,7 @@ export default class BaseReporter { const isHookError = ( e === 'hook:end' && payload.error && - mochaAllHooks.some(hook => payload.title.startsWith(hook)) + mochaAllHooks.some(hook => payload.title?.startsWith(hook)) ) if (isTestError || isHookError) { this.#emitData({ @@ -56,15 +69,19 @@ export default class BaseReporter { this._reporters.forEach((reporter) => { try { reporter.emit(e, payload) - } catch (err: any) { - // When reporter throws an exception, log the error and continue with the next reporter + } catch (err) { + const error = err instanceof Error ? err : new Error(`An unknown error occurred: ${err}`) + + /** + * When reporter throws an exception, log the error and continue with the next reporter + */ this.#emitData({ origin: 'reporter', name: 'printFailureMessage', content: { cid: this._cid, // Destructing of message and stack is required else nothing is outputted - error: { message: err?.message, stack: err?.stack }, + error: { message: error.message, stack: error.stack }, fullTitle: `reporter ${reporter.constructor.name}`, } }) @@ -72,7 +89,7 @@ export default class BaseReporter { }) } - onMessage (listener: (ev: any) => void) { + onMessage (listener: (ev: unknown) => void) { this.listeners.push(listener) } @@ -131,7 +148,7 @@ export default class BaseReporter { /** * emit data either through process or listener */ - #emitData (payload: any) { + #emitData (payload: unknown) { if (typeof process.send === 'function') { return process.send!(payload) } diff --git a/packages/wdio-runner/src/utils.ts b/packages/wdio-runner/src/utils.ts index ead21090e..34ec72178 100644 --- a/packages/wdio-runner/src/utils.ts +++ b/packages/wdio-runner/src/utils.ts @@ -40,7 +40,7 @@ export function sanitizeCaps ( obj: WebdriverIO.Capabilities, key: keyof WebdriverIO.Capabilities ) => { - obj[key] = caps[key] as any + obj[key] = caps[key] as undefined return obj }, {}) } @@ -198,16 +198,16 @@ const SUPPORTED_ASYMMETRIC_MATCHER = { * @param arg raw value or a stringified asymmetric matcher * @returns raw value or an actual asymmetric matcher */ -export function transformExpectArgs (arg: any) { - if (typeof arg === 'object' && '$$typeof' in arg && Object.keys(SUPPORTED_ASYMMETRIC_MATCHER).includes(arg.$$typeof)) { +export function transformExpectArgs (arg: unknown) { + if (typeof arg === 'object' && arg && '$$typeof' in arg && typeof arg.$$typeof === 'string' && Object.keys(SUPPORTED_ASYMMETRIC_MATCHER).includes(arg.$$typeof)) { const matcherKey = SUPPORTED_ASYMMETRIC_MATCHER[arg.$$typeof as keyof typeof SUPPORTED_ASYMMETRIC_MATCHER] as keyof AsymmetricMatchers - const matcher: any = arg.inverse ? expect.not[matcherKey] : expect[matcherKey] + const matcher = ('inverse' in arg && arg.inverse ? expect.not[matcherKey] : expect[matcherKey]) as unknown as (sample: string) => unknown if (!matcher) { throw new Error(`Matcher "${matcherKey}" is not supported by expect-webdriverio`) } - return matcher(arg.sample) + return matcher((arg as unknown as { sample: string }).sample) } return arg diff --git a/packages/wdio-runner/tests/index.test.ts b/packages/wdio-runner/tests/index.test.ts index 4100b7719..02662b139 100644 --- a/packages/wdio-runner/tests/index.test.ts +++ b/packages/wdio-runner/tests/index.test.ts @@ -50,7 +50,7 @@ describe('wdio-runner', () => { deleteSession: vi.fn(), sessionId: '123', config: { afterSession: [hook] } - } as any as BrowserObject + } as unknown as BrowserObject runner['_config'] = { logLevel: 'info', afterSession: [hook] } as any await runner.endSession() expect(executeHooksWithArgs).toBeCalledWith( @@ -98,8 +98,8 @@ describe('wdio-runner', () => { [hook], [{ logLevel: 'error', afterSession: [hook] }, { foo: undefined, bar: undefined }, undefined]) expect(runner['_browser']!.deleteSession).toBeCalledTimes(1) - expect(!(runner['_browser'] as any as MultiRemoteBrowserObject).getInstance('foo').sessionId).toBe(true) - expect(!(runner['_browser'] as any as MultiRemoteBrowserObject).getInstance('bar').sessionId).toBe(true) + expect(!(runner['_browser'] as unknown as MultiRemoteBrowserObject).getInstance('foo').sessionId).toBe(true) + expect(!(runner['_browser'] as unknown as MultiRemoteBrowserObject).getInstance('bar').sessionId).toBe(true) expect(runner['_shutdown']).toBeCalledTimes(0) }) @@ -209,7 +209,7 @@ describe('wdio-runner', () => { runner: 'local' } vi.spyOn(ConfigParser.prototype, 'getConfig').mockReturnValue(config) - runner['_browser'] = { url: vi.fn(url => url) } as any as BrowserObject + runner['_browser'] = { url: vi.fn(url => url) } as unknown as BrowserObject runner['_startSession'] = vi.fn().mockReturnValue({ }) runner['_initSession'] = vi.fn().mockReturnValue({ options: { capabilities: {} } }) const failures = await runner.run({ args: { watch: true }, caps: {}, configFile: '/foo/bar' } as any) @@ -230,7 +230,7 @@ describe('wdio-runner', () => { } vi.spyOn(ConfigParser.prototype, 'getConfig').mockReturnValue(config) const addServiceSpy = vi.spyOn(ConfigParser.prototype, 'addService') - runner['_browser'] = { url: vi.fn(url => url) } as any as BrowserObject + runner['_browser'] = { url: vi.fn(url => url) } as unknown as BrowserObject runner['_startSession'] = vi.fn().mockReturnValue({ }) runner['_initSession'] = vi.fn().mockReturnValue({ options: { capabilities: {} } }) await runner.run({ args: { watch: true }, caps: {}, configFile: '/foo/bar' } as any) @@ -442,7 +442,7 @@ describe('wdio-runner', () => { describe('_shutdown', () => { it('should emit exit', async () => { const runner = new WDIORunner() - runner['_browser'] = {} as any as BrowserObject + runner['_browser'] = {} as unknown as BrowserObject runner['_reporter'] = { waitForSync: vi.fn().mockReturnValue(Promise.resolve()), emit: vi.fn() @@ -459,7 +459,7 @@ describe('wdio-runner', () => { vi.spyOn(log, 'error').mockImplementation((string) => string) const runner = new WDIORunner() - runner['_browser'] = {} as any as BrowserObject + runner['_browser'] = {} as unknown as BrowserObject runner['_reporter'] = { waitForSync: vi.fn().mockReturnValue(Promise.reject('foo')), emit: vi.fn() @@ -475,7 +475,7 @@ describe('wdio-runner', () => { it('should emit runner:start if the initialization failed', async () => { const runner = new WDIORunner() runner['_configParser'] = { getCapabilities: vi.fn().mockReturnValue([{ browserName: 'safari' }]) } as any - runner['_browser'] = {} as any as BrowserObject + runner['_browser'] = {} as unknown as BrowserObject runner['_reporter'] = { waitForSync: vi.fn().mockReturnValue(Promise.resolve()), emit: vi.fn() diff --git a/packages/wdio-runner/tests/utils.test.ts b/packages/wdio-runner/tests/utils.test.ts index 5f68860c8..6486215f4 100644 --- a/packages/wdio-runner/tests/utils.test.ts +++ b/packages/wdio-runner/tests/utils.test.ts @@ -151,7 +151,7 @@ describe('utils', () => { options: { protocol, hostname, port, path, queryParams } }) // @ts-expect-error - } as any as WebdriverIO.MultiRemoteBrowserObject, true)) + } as unknown as WebdriverIO.MultiRemoteBrowserObject, true)) .toEqual({ foo: { sessionId, isW3C, protocol, hostname, port, path, queryParams } }) }) diff --git a/packages/wdio-sauce-service/src/launcher.ts b/packages/wdio-sauce-service/src/launcher.ts index fb34312a1..7288f50a2 100644 --- a/packages/wdio-sauce-service/src/launcher.ts +++ b/packages/wdio-sauce-service/src/launcher.ts @@ -104,12 +104,13 @@ export default class SauceLauncher implements Services.ServiceInstance { try { const scProcess = await this._api.startSauceConnect(sauceConnectOpts) return scProcess - } catch (err: any) { + } catch (err) { ++retryCount /** * fail starting Sauce Connect eventually */ if ( + err instanceof Error && /** * only fail for ENOENT errors due to racing condition * see: https://github.com/saucelabs/node-saucelabs/issues/86 @@ -122,7 +123,7 @@ export default class SauceLauncher implements Services.ServiceInstance { ) { throw err } - log.debug(`Failed to start Sauce Connect Proxy due to ${err.stack}`) + log.debug(`Failed to start Sauce Connect Proxy due to ${(err as Error).stack}`) log.debug(`Retrying ${retryCount}/${MAX_SC_START_TRIALS}`) return this.startTunnel(sauceConnectOpts, retryCount) } diff --git a/packages/wdio-sauce-service/tests/service.test.ts b/packages/wdio-sauce-service/tests/service.test.ts index ef867ba7f..db7340c91 100644 --- a/packages/wdio-sauce-service/tests/service.test.ts +++ b/packages/wdio-sauce-service/tests/service.test.ts @@ -71,7 +71,7 @@ beforeEach(() => { chromeB: { sessionId: 'sessionChromeB', executeScript: vi.fn() }, chromeC: { sessionId: 'sessionChromeC', executeScript: vi.fn() }, instances: ['chromeA', 'chromeB', 'chromeC'], - } as any as WebdriverIO.MultiRemoteBrowser + } as unknown as WebdriverIO.MultiRemoteBrowser vi.mocked(log.info).mockClear() vi.mocked(log.error).mockClear() }) diff --git a/packages/wdio-shared-store-service/src/server.ts b/packages/wdio-shared-store-service/src/server.ts index fe13971be..e4fd6ee40 100644 --- a/packages/wdio-shared-store-service/src/server.ts +++ b/packages/wdio-shared-store-service/src/server.ts @@ -2,10 +2,10 @@ import type { AddressInfo } from 'node:net' import polka from 'polka' import { json } from '@polka/parse' -import type { JsonCompatible, JsonPrimitive, JsonObject } from '@wdio/types' +import type { JsonCompatible, JsonPrimitive, JsonObject, JsonArray } from '@wdio/types' const store: JsonObject = {} -const resourcePoolStore: Map = new Map() +const resourcePoolStore: Map = new Map() /** * @private */ diff --git a/packages/wdio-shared-store-service/src/types.ts b/packages/wdio-shared-store-service/src/types.ts index f56fb9b55..c3b1fc109 100644 --- a/packages/wdio-shared-store-service/src/types.ts +++ b/packages/wdio-shared-store-service/src/types.ts @@ -1,4 +1,4 @@ export interface SharedStoreServiceCapabilities extends WebdriverIO.Capabilities { 'wdio:sharedStoreServicePort': number } -export type GetValueOptions = { timeout: Number } | undefined +export type GetValueOptions = { timeout: number } | undefined diff --git a/packages/wdio-smoke-test-cjs-service/src/launcher.ts b/packages/wdio-smoke-test-cjs-service/src/launcher.ts index 044b04ab3..d1f610866 100644 --- a/packages/wdio-smoke-test-cjs-service/src/launcher.ts +++ b/packages/wdio-smoke-test-cjs-service/src/launcher.ts @@ -6,8 +6,8 @@ export default class SmokeServiceLauncher { constructor () { this.logFile = fs.createWriteStream(path.resolve(__dirname, '..', '..', '..', 'tests', 'helpers', 'launcher.log')) } - onPrepare () { this.logFile.write('onPrepare called\n') } // eslint-disable-line no-console - onWorkerStart () { this.logFile.write('onWorkerStart called\n')} // eslint-disable-line no-console - onWorkerEnd () { this.logFile.write('onWorkerEnd called\n')} // eslint-disable-line no-console - onComplete () { this.logFile.write('onComplete called\n') } // eslint-disable-line no-console + onPrepare () { this.logFile.write('onPrepare called\n') } + onWorkerStart () { this.logFile.write('onWorkerStart called\n')} + onWorkerEnd () { this.logFile.write('onWorkerEnd called\n')} + onComplete () { this.logFile.write('onComplete called\n') } } diff --git a/packages/wdio-smoke-test-cjs-service/src/service.ts b/packages/wdio-smoke-test-cjs-service/src/service.ts index 0f6c99e85..ebe76b1c1 100644 --- a/packages/wdio-smoke-test-cjs-service/src/service.ts +++ b/packages/wdio-smoke-test-cjs-service/src/service.ts @@ -6,18 +6,18 @@ export default class SmokeService { constructor () { this.logFile = fs.createWriteStream(path.resolve(__dirname, '..', '..', '..', 'tests', 'helpers', 'service.log')) } - beforeSession () { this.logFile.write('beforeSession called\n') } // eslint-disable-line no-console - before () { this.logFile.write('before called\n') } // eslint-disable-line no-console - beforeSuite () { this.logFile.write('beforeSuite called\n') } // eslint-disable-line no-console - beforeHook () { this.logFile.write('beforeHook called\n') } // eslint-disable-line no-console - afterHook () { this.logFile.write('afterHook called\n') } // eslint-disable-line no-console - beforeTest () { this.logFile.write('beforeTest called\n') } // eslint-disable-line no-console - beforeCommand () { this.logFile.write('beforeCommand called\n') } // eslint-disable-line no-console - afterCommand () { this.logFile.write('afterCommand called\n') } // eslint-disable-line no-console - afterTest () { this.logFile.write('afterTest called\n') } // eslint-disable-line no-console - afterSuite () { this.logFile.write('afterSuite called\n') } // eslint-disable-line no-console - after () { this.logFile.write('after called\n') } // eslint-disable-line no-console - afterSession () { this.logFile.write('afterSession called\n') } // eslint-disable-line no-console - beforeAssertion () { this.logFile.write('beforeAssertion called\n') } // eslint-disable-line no-console - afterAssertion () { this.logFile.write('afterAssertion called\n') } // eslint-disable-line no-console + beforeSession () { this.logFile.write('beforeSession called\n') } + before () { this.logFile.write('before called\n') } + beforeSuite () { this.logFile.write('beforeSuite called\n') } + beforeHook () { this.logFile.write('beforeHook called\n') } + afterHook () { this.logFile.write('afterHook called\n') } + beforeTest () { this.logFile.write('beforeTest called\n') } + beforeCommand () { this.logFile.write('beforeCommand called\n') } + afterCommand () { this.logFile.write('afterCommand called\n') } + afterTest () { this.logFile.write('afterTest called\n') } + afterSuite () { this.logFile.write('afterSuite called\n') } + after () { this.logFile.write('after called\n') } + afterSession () { this.logFile.write('afterSession called\n') } + beforeAssertion () { this.logFile.write('beforeAssertion called\n') } + afterAssertion () { this.logFile.write('afterAssertion called\n') } } diff --git a/packages/wdio-smoke-test-service/src/index.ts b/packages/wdio-smoke-test-service/src/index.ts index c1f3ee61b..b846c08a8 100644 --- a/packages/wdio-smoke-test-service/src/index.ts +++ b/packages/wdio-smoke-test-service/src/index.ts @@ -9,20 +9,20 @@ export default class SmokeService { constructor () { this.logFile = fs.createWriteStream(path.resolve(__dirname, '..', '..', '..', 'tests', 'helpers', 'service.log')) } - beforeSession () { this.logFile.write('beforeSession called\n') } // eslint-disable-line no-console - before () { this.logFile.write('before called\n') } // eslint-disable-line no-console - beforeSuite () { this.logFile.write('beforeSuite called\n') } // eslint-disable-line no-console - beforeHook () { this.logFile.write('beforeHook called\n') } // eslint-disable-line no-console - afterHook () { this.logFile.write('afterHook called\n') } // eslint-disable-line no-console - beforeTest () { this.logFile.write('beforeTest called\n') } // eslint-disable-line no-console - beforeCommand () { this.logFile.write('beforeCommand called\n') } // eslint-disable-line no-console - afterCommand () { this.logFile.write('afterCommand called\n') } // eslint-disable-line no-console - afterTest () { this.logFile.write('afterTest called\n') } // eslint-disable-line no-console - afterSuite () { this.logFile.write('afterSuite called\n') } // eslint-disable-line no-console - after () { this.logFile.write('after called\n') } // eslint-disable-line no-console - afterSession () { this.logFile.write('afterSession called\n') } // eslint-disable-line no-console - beforeAssertion () { this.logFile.write('beforeAssertion called\n') } // eslint-disable-line no-console - afterAssertion () { this.logFile.write('afterAssertion called\n') } // eslint-disable-line no-console + beforeSession () { this.logFile.write('beforeSession called\n') } + before () { this.logFile.write('before called\n') } + beforeSuite () { this.logFile.write('beforeSuite called\n') } + beforeHook () { this.logFile.write('beforeHook called\n') } + afterHook () { this.logFile.write('afterHook called\n') } + beforeTest () { this.logFile.write('beforeTest called\n') } + beforeCommand () { this.logFile.write('beforeCommand called\n') } + afterCommand () { this.logFile.write('afterCommand called\n') } + afterTest () { this.logFile.write('afterTest called\n') } + afterSuite () { this.logFile.write('afterSuite called\n') } + after () { this.logFile.write('after called\n') } + afterSession () { this.logFile.write('afterSession called\n') } + beforeAssertion () { this.logFile.write('beforeAssertion called\n') } + afterAssertion () { this.logFile.write('afterAssertion called\n') } } class SmokeServiceLauncher { @@ -30,10 +30,10 @@ class SmokeServiceLauncher { constructor () { this.logFile = fs.createWriteStream(path.resolve(__dirname, '..', '..', '..', 'tests', 'helpers', 'launcher.log')) } - onPrepare () { this.logFile.write('onPrepare called\n') } // eslint-disable-line no-console - onWorkerStart () { this.logFile.write('onWorkerStart called\n')} // eslint-disable-line no-console - onWorkerEnd () { this.logFile.write('onWorkerEnd called\n')} // eslint-disable-line no-console - onComplete () { this.logFile.write('onComplete called\n') } // eslint-disable-line no-console + onPrepare () { this.logFile.write('onPrepare called\n') } + onWorkerStart () { this.logFile.write('onWorkerStart called\n')} + onWorkerEnd () { this.logFile.write('onWorkerEnd called\n')} + onComplete () { this.logFile.write('onComplete called\n') } } export const launcher = SmokeServiceLauncher diff --git a/packages/wdio-spec-reporter/src/index.ts b/packages/wdio-spec-reporter/src/index.ts index 3aef5da3b..2ae7b9e68 100644 --- a/packages/wdio-spec-reporter/src/index.ts +++ b/packages/wdio-spec-reporter/src/index.ts @@ -58,7 +58,7 @@ export default class SpecReporter extends WDIOReporter { /** * make spec reporter to write to output stream by default */ - super(Object.assign({ stdout: true }, options)) + super(Object.assign({ stdout: true } as Record, options)) this._symbols = { ...this._symbols, ...this.options.symbols || {} } this._onlyFailures = options.onlyFailures || false @@ -67,7 +67,8 @@ export default class SpecReporter extends WDIOReporter { this._sauceLabsSharableLinks = 'sauceLabsSharableLinks' in options ? options.sauceLabsSharableLinks as boolean : this._sauceLabsSharableLinks - const processObj:any = process + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const processObj = process as any if (options.addConsoleLogs || this._addConsoleLogs) { processObj.stdout.write = (chunk: string, encoding: BufferEncoding, callback: ((err?: Error) => void)) => { if (typeof chunk === 'string' && !chunk.includes('mwebdriver')) { @@ -510,9 +511,11 @@ export default class SpecReporter extends WDIOReporter { ) for (const error of errors) { - !error?.stack?.includes('new AssertionError') - ? output.push(this.setMessageColor(error.message, State.FAILED)) - : output.push(...error.message.split('\n')) + if (!error?.stack?.includes('new AssertionError')) { + output.push(this.setMessageColor(error.message, State.FAILED)) + } else { + output.push(...error.message.split('\n')) + } if (error.stack) { output.push(...error.stack.split(/\n/g).map(value => this.setMessageColor(value))) } diff --git a/packages/wdio-spec-reporter/src/utils.ts b/packages/wdio-spec-reporter/src/utils.ts index f1f8e0451..6fa257785 100644 --- a/packages/wdio-spec-reporter/src/utils.ts +++ b/packages/wdio-spec-reporter/src/utils.ts @@ -3,12 +3,16 @@ import { createHmac } from 'node:crypto' const SEPARATOR = '│' +interface Row { + cells: string[] +} + /** * transform cucumber table to format suitable for `easy-table` * @param {object[]} rows cucumber table rows * @returns {object[]} */ -export const buildTableData = (rows: any) => rows.map((row: any) => { +export const buildTableData = (rows: Row[]) => rows.map((row: Row) => { const tableRow: Record = {}; [...row.cells, ''].forEach((cell, idx) => { tableRow[idx] = (idx === 0 ? `${SEPARATOR} ` : '') + cell @@ -21,7 +25,7 @@ export const buildTableData = (rows: any) => rows.map((row: any) => { * @param {object[]} data table data * @returns {string} */ -export const printTable = (data: any) => Table.print(data, undefined, (table) => { +export const printTable = (data: unknown) => Table.print(data, undefined, (table) => { table.separator = ` ${SEPARATOR} ` return table.print() }) diff --git a/packages/wdio-static-server-service/src/launcher.ts b/packages/wdio-static-server-service/src/launcher.ts index 7323eeaf7..a269caf4d 100644 --- a/packages/wdio-static-server-service/src/launcher.ts +++ b/packages/wdio-static-server-service/src/launcher.ts @@ -45,7 +45,7 @@ export default class StaticServerLauncher implements Services.ServiceInstance { this._middleware.forEach( (ware: MiddleWareOption) => this._server!.use(ware.mount, ware.middleware as unknown as express.Application)) - const listen = <(port: number) => Promise> promisify(this._server.listen.bind(this._server)) + const listen = <(port: number) => Promise> promisify(this._server.listen.bind(this._server)) await listen(this._port) log.info(`Static server running at http://localhost:${this._port}`) } diff --git a/packages/wdio-sumologic-reporter/src/index.ts b/packages/wdio-sumologic-reporter/src/index.ts index 0345721de..bcf53a9a5 100644 --- a/packages/wdio-sumologic-reporter/src/index.ts +++ b/packages/wdio-sumologic-reporter/src/index.ts @@ -161,8 +161,8 @@ export default class SumoLogicReporter extends WDIOReporter { */ this._isSynchronising = false return log.debug(`synchronised collector data, server status: ${resp.status}`) - } catch (err: any) { - return log.error('failed send data to Sumo Logic:\n', err.stack) + } catch (err) { + return log.error('failed send data to Sumo Logic:\n', (err as Error).stack) } } } diff --git a/packages/wdio-testingbot-service/src/launcher.ts b/packages/wdio-testingbot-service/src/launcher.ts index ab2204773..eb1fcd42d 100644 --- a/packages/wdio-testingbot-service/src/launcher.ts +++ b/packages/wdio-testingbot-service/src/launcher.ts @@ -34,7 +34,7 @@ export default class TestingBotLauncher implements Services.ServiceInstance { }, this.options.tbTunnelOpts) const capabilitiesEntries = Array.isArray(capabilities) ? - (capabilities as []).every(cap => Object.values(cap).length > 0 && Object.values(cap).every(c => typeof c === 'object' && (c as any).capabilities)) ? + (capabilities as []).every(cap => Object.values(cap).length > 0 && Object.values(cap).every(c => typeof c === 'object' && (c as Capabilities.RequestedMultiremoteCapabilities).capabilities)) ? capabilities.flatMap((cap: Capabilities.RequestedMultiremoteCapabilities ) => Object.values(cap)) : capabilities : Object.values(capabilities) diff --git a/packages/wdio-testingbot-service/src/service.ts b/packages/wdio-testingbot-service/src/service.ts index a4e6ee9e5..09a02df28 100644 --- a/packages/wdio-testingbot-service/src/service.ts +++ b/packages/wdio-testingbot-service/src/service.ts @@ -85,7 +85,7 @@ export default class TestingBotService implements Services.ServiceInstance { * After test * @param {object} test Test */ - afterTest (test: Frameworks.Test, context: any, results: Frameworks.TestResult) { + afterTest (_test: Frameworks.Test, _context: unknown, results: Frameworks.TestResult) { if (!results.passed) { ++this._failures } @@ -225,7 +225,7 @@ export default class TestingBotService implements Services.ServiceInstance { } getBody (failures: number, calledOnReload = false, browserName?: string) { - const body = { test: {} as any } + const body = { test: {} as Record } /** * set default values @@ -245,11 +245,11 @@ export default class TestingBotService implements Services.ServiceInstance { } for (const prop of jobDataProperties) { - if (!(this._capabilities as Record)[prop]) { + if (!(this._capabilities as Record)[prop]) { continue } - body.test[prop] = (this._capabilities as Record)[prop] + body.test[prop] = (this._capabilities as Record)[prop] } if (browserName) { diff --git a/packages/wdio-types/src/Automation.ts b/packages/wdio-types/src/Automation.ts index 5dd665e64..232d4dca9 100644 --- a/packages/wdio-types/src/Automation.ts +++ b/packages/wdio-types/src/Automation.ts @@ -1,20 +1,20 @@ export interface Driver { newSession( options: T, - modifier?: (...args: any[]) => any, - userPrototype?: Record, - customCommandWrapper?: (...args: any[]) => any - ): any + modifier?: (...args: unknown[]) => unknown, + userPrototype?: Record, + customCommandWrapper?: (...args: unknown[]) => unknown + ): unknown attachToSession( - options: any, - modifier?: (...args: any[]) => any, - userPrototype?: Record, - customCommandWrapper?: (...args: any[]) => any - ): any + options: unknown, + modifier?: (...args: unknown[]) => unknown, + userPrototype?: Record, + customCommandWrapper?: (...args: unknown[]) => unknown + ): unknown reloadSession ( - client: any, + client: unknown, newCapabilities: WebdriverIO.Capabilities - ): any + ): unknown } diff --git a/packages/wdio-types/src/Capabilities.ts b/packages/wdio-types/src/Capabilities.ts index 9eb13b804..e6c1db2ca 100644 --- a/packages/wdio-types/src/Capabilities.ts +++ b/packages/wdio-types/src/Capabilities.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { WebDriver as WebDriverOptions, WebdriverIO as WebDriverIOOptions, @@ -1518,10 +1519,8 @@ export interface LambdaTestCapabilities { export interface BrowserStackCapabilities { browser?: string - // eslint-disable-next-line browser_version?: string os?: string - // eslint-disable-next-line os_version?: string osVersion?: string desired?: unknown diff --git a/packages/wdio-types/src/Frameworks.ts b/packages/wdio-types/src/Frameworks.ts index bb7a98338..79866ee54 100644 --- a/packages/wdio-types/src/Frameworks.ts +++ b/packages/wdio-types/src/Frameworks.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ export interface Suite { type: string title: string diff --git a/packages/wdio-types/src/Network.ts b/packages/wdio-types/src/Network.ts index e2d975db1..b1f9b86b0 100644 --- a/packages/wdio-types/src/Network.ts +++ b/packages/wdio-types/src/Network.ts @@ -28,7 +28,7 @@ export interface Request { } export type NetworkSameSite = 'strict' | 'lax' | 'none' -export type Extensible = Record +export type Extensible = Record export interface NetworkCookie extends Extensible { name: string value: string diff --git a/packages/wdio-types/src/Options.ts b/packages/wdio-types/src/Options.ts index 9c5b7acd0..6e4887b87 100644 --- a/packages/wdio-types/src/Options.ts +++ b/packages/wdio-types/src/Options.ts @@ -6,7 +6,7 @@ export type SupportedProtocols = 'webdriver' | './protocol-stub.js' export type Method = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'HEAD' | 'DELETE' | 'OPTIONS' | 'TRACE' | 'get' | 'post' | 'put' | 'patch' | 'head' | 'delete' | 'options' | 'trace' -export interface RequestLibResponse { +export interface RequestLibResponse { statusCode: number body?: Body rawBody?: Buffer @@ -293,7 +293,7 @@ export interface Testrunner extends Hooks, WebdriverIO, WebdriverIO.HookFunction /** * A set of environment variables to be injected into the worker process. */ - runnerEnv?: Record + runnerEnv?: Record /** * Files to watch when running `wdio` with the `--watch` flag. */ diff --git a/packages/wdio-types/src/Reporters.ts b/packages/wdio-types/src/Reporters.ts index dc0ccbeac..17009edaa 100644 --- a/packages/wdio-types/src/Reporters.ts +++ b/packages/wdio-types/src/Reporters.ts @@ -49,12 +49,12 @@ export interface Options { * Note: `logFile` must not be set, unless `stdout` is set to `true`. */ writeStream?: WriteStream | { - write: (content: any) => boolean + write: (content: unknown) => boolean } /** * allow random typings from 3rd party reporters */ - [key: string]: any + [key: string]: unknown } export interface ReporterInstance extends EventEmitter { diff --git a/packages/wdio-types/src/Services.ts b/packages/wdio-types/src/Services.ts index a609a622f..b2ebe74cd 100644 --- a/packages/wdio-types/src/Services.ts +++ b/packages/wdio-types/src/Services.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { Testrunner as TestrunnerOptions, WebdriverIO as WebdriverIOOptions } from './Options.js' import type { RequestedStandaloneCapabilities, RequestedMultiremoteCapabilities, TestrunnerCapabilities, ResolvedTestrunnerCapabilities } from './Capabilities.js' import type { Suite, Test, TestResult } from './Frameworks.js' diff --git a/packages/wdio-types/src/Workers.ts b/packages/wdio-types/src/Workers.ts index 0e76fb5f2..e9a135245 100644 --- a/packages/wdio-types/src/Workers.ts +++ b/packages/wdio-types/src/Workers.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { EventEmitter } from 'node:events' import type { Testrunner as TestrunnerOptions } from './Options.js' @@ -5,6 +6,9 @@ export interface Job { caps: WebdriverIO.Capabilities specs: string[] hasTests: boolean + baseUrl?: string + config?: TestrunnerOptions & { sessionId?: string } + capabilities?: WebdriverIO.Capabilities } export type WorkerMessageArgs = Omit diff --git a/packages/wdio-types/src/index.ts b/packages/wdio-types/src/index.ts index 0f1a1bbcf..c5686ccc9 100644 --- a/packages/wdio-types/src/index.ts +++ b/packages/wdio-types/src/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type * as Automation from './Automation.js' import type * as Capabilities from './Capabilities.js' import type * as Options from './Options.js' diff --git a/packages/wdio-utils/src/constants.ts b/packages/wdio-utils/src/constants.ts index 29d84f184..8c08b2cab 100644 --- a/packages/wdio-utils/src/constants.ts +++ b/packages/wdio-utils/src/constants.ts @@ -93,7 +93,7 @@ export const DEFAULT_PATH = '/' /* istanbul ignore next */ export const HOOK_DEFINITION = { type: 'object' as const, - validate: (param: any) => { + validate: (param: unknown) => { /** * option must be an array */ @@ -115,4 +115,4 @@ export const HOOK_DEFINITION = { throw new Error('expected hook to be type of function') } } -} \ No newline at end of file +} diff --git a/packages/wdio-utils/src/initializeServices.ts b/packages/wdio-utils/src/initializeServices.ts index 6c683191a..f285df9f7 100644 --- a/packages/wdio-utils/src/initializeServices.ts +++ b/packages/wdio-utils/src/initializeServices.ts @@ -7,7 +7,7 @@ const log = logger('@wdio/utils:initializeServices') type IntialisedService = ( [Services.ServiceClass | { default: Function }, WebdriverIO.ServiceOption, string] | - [Services.HookFunctions, Record] | + [Services.HookFunctions, Record] | [Services.ServiceClass, WebdriverIO.ServiceOption] ) @@ -143,8 +143,8 @@ export async function initializeLauncherService ( ignoredWorkerServices.push(serviceName) } } - } catch (err: any) { - throw new Error(`Failed to initialise launcher service ${serviceLabelToBeInitialised}: ${err.stack}`) + } catch (err) { + throw new Error(`Failed to initialise launcher service ${serviceLabelToBeInitialised}: ${(err as Error).stack}`) } return { ignoredWorkerServices, launcherServices } @@ -190,7 +190,7 @@ export async function initializeWorkerService ( } return initializedServices - } catch (err: any) { - throw new Error(`Failed to initialise service ${serviceLabelToBeInitialised}: ${err.stack}`) + } catch (err) { + throw new Error(`Failed to initialise service ${serviceLabelToBeInitialised}: ${(err as Error).stack}`) } } diff --git a/packages/wdio-utils/src/monad.ts b/packages/wdio-utils/src/monad.ts index 167f87940..00ad92285 100644 --- a/packages/wdio-utils/src/monad.ts +++ b/packages/wdio-utils/src/monad.ts @@ -13,7 +13,7 @@ interface PropertiesObject { [key: string | symbol]: PropertyDescriptor } -export default function WebDriver (options: Record, modifier?: Function, propertiesObject: PropertiesObject = {}) { +export default function WebDriver (options: object, modifier?: Function, propertiesObject: PropertiesObject = {}) { /** * In order to allow named scopes for elements we have to propagate that * info within the `propertiesObject` object. This doesn't have any functional @@ -38,7 +38,9 @@ export default function WebDriver (options: Record, modifier?: Func */ propertiesObject.commandList = { value: Object.keys(propertiesObject) } propertiesObject.options = { value: options } - propertiesObject.requestedCapabilities = { value: options.requestedCapabilities } + if ('requestedCapabilities' in options) { + propertiesObject.requestedCapabilities = { value: options.requestedCapabilities } + } /** * allow to wrap commands if necessary @@ -78,7 +80,7 @@ export default function WebDriver (options: Record, modifier?: Func /** * register capabilities only to browser scope */ - if (scopeType.name === 'Browser') { + if (scopeType.name === 'Browser' && 'capabilities' in options) { client.capabilities = options.capabilities } @@ -86,7 +88,7 @@ export default function WebDriver (options: Record, modifier?: Func client = modifier(client, options) } - client.addCommand = function (name: string, func: Function, attachToElement = false, proto: Record, instances?: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser) { + client.addCommand = function (name: string, func: Function, attachToElement = false, proto: Record, instances?: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser) { const customCommand = typeof commandWrapper === 'function' ? commandWrapper(name, func) : func @@ -140,7 +142,7 @@ export default function WebDriver (options: Record, modifier?: Func * @param {Object=} proto prototype to add function to (optional) * @param {Object=} instances multiremote instances */ - client.overwriteCommand = function (name: string, func: Function, attachToElement = false, proto: Record, instances?: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser) { + client.overwriteCommand = function (name: string, func: Function, attachToElement = false, proto: Record, instances?: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser) { const customCommand = typeof commandWrapper === 'function' ? commandWrapper(name, func) : func @@ -161,7 +163,7 @@ export default function WebDriver (options: Record, modifier?: Func } else if (client[name]) { const origCommand = client[name] delete client[name] - unit.lift(name, customCommand, proto, (...args: any[]) => origCommand.apply(this, args)) + unit.lift(name, customCommand, proto, (...args: unknown[]) => origCommand.apply(this, args)) } else { throw new Error('overwriteCommand: no command to be overwritten: ' + name) } @@ -177,8 +179,9 @@ export default function WebDriver (options: Record, modifier?: Func * @param {Object} proto prototype to add function to (optional) * @param {Function} origCommand original command to be passed to custom command as first argument */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any unit.lift = function (name: string, func: Function, proto: Record, origCommand?: Function) { - (proto || prototype)[name] = function next (...args: any[]) { + (proto || prototype)[name] = function next (...args: unknown[]) { log.info('COMMAND', commandCallStructure(name, args)) /** @@ -215,7 +218,7 @@ export default function WebDriver (options: Record, modifier?: Func * register event emitter */ for (const eventCommand in EVENTHANDLER_FUNCTIONS) { - prototype[eventCommand] = function (...args: [any, any]) { + prototype[eventCommand] = function (...args: [unknown, unknown]) { const method = eventCommand as keyof EventEmitter /** @@ -231,7 +234,7 @@ export default function WebDriver (options: Record, modifier?: Func eventHandler.emit('_dialogListenerRemoved') } - eventHandler[method]?.(...args as [never, any]) + eventHandler[method]?.(...args as [never, unknown]) return this } } diff --git a/packages/wdio-utils/src/node/utils.ts b/packages/wdio-utils/src/node/utils.ts index 78fea2de0..88a9c69fe 100644 --- a/packages/wdio-utils/src/node/utils.ts +++ b/packages/wdio-utils/src/node/utils.ts @@ -32,7 +32,7 @@ export const canAccess = (file?: string) => { try { fs.accessSync(file) return true - } catch (err: any) { + } catch { return false } } diff --git a/packages/wdio-utils/src/pIteration.ts b/packages/wdio-utils/src/pIteration.ts index 8fc57a15d..38be2a1fa 100644 --- a/packages/wdio-utils/src/pIteration.ts +++ b/packages/wdio-utils/src/pIteration.ts @@ -235,7 +235,7 @@ export const someSeries = async (array: T[], callback: Function, thisArg?: T) * @param {Object} [thisArg] - Value to use as *this* when executing the `callback`. * @return {Promise} - Returns a Promise with *true* as value if all elements passed the test, otherwise *false*. */ -export const every = (array: T[], callback: any, thisArg?: T) => { +export const every = (array: T[], callback: Function, thisArg?: T) => { return new Promise((resolve, reject) => { if (array.length === 0) { return resolve(true) diff --git a/packages/wdio-utils/src/shim.ts b/packages/wdio-utils/src/shim.ts index 084f2a848..59670a461 100644 --- a/packages/wdio-utils/src/shim.ts +++ b/packages/wdio-utils/src/shim.ts @@ -1,5 +1,5 @@ import logger from '@wdio/logger' -import type { Frameworks } from '@wdio/types' +import type { Frameworks, Services, Options } from '@wdio/types' import * as iterators from './pIteration.js' import { getBrowserObject } from './utils.js' @@ -22,7 +22,23 @@ const ELEMENT_RETURN_COMMANDS = ['getElement', 'getElements'] const TIME_BUFFER = 3 -export async function executeHooksWithArgs (this: any, hookName: string, hooks: Function | Function[] = [], args: any[] = []): Promise<(T | Error)[]> { +/** + * we have to mock the WebdriverIO.Browser and WebdriverIO.MultiRemoteBrowser type + * here as this package can't access it given it is a dependency of webdriverio + */ +interface WebdriverIOInstance extends Services.Hooks { + selector: string + parent: WebdriverIOInstance + length: number + options: Options.Testrunner + waitUntil: Function + $$: Function + foundWith: string + wdioRetries: number + [i: number]: WebdriverIOInstance +} + +export async function executeHooksWithArgs (this: unknown, hookName: string, hooks: Function | Function[] = [], args: unknown[] = []): Promise<(T | Error)[]> { /** * make sure hooks are an array of functions */ @@ -37,22 +53,22 @@ export async function executeHooksWithArgs (this: any, hookName: string, hook args = [args] } - const rejectIfSkipped = function (e: any, rejectionFunc: (e?: any) => void) { + const rejectIfSkipped = function (e: unknown, rejectionFunc: (e?: Error) => void) { /** * When we use `this.skip()` inside a test or a hook, it's a signal that we want to stop that particular test. * Mocha, the testing framework, knows how to handle this for its own built-in hooks and test steps. * However, for our custom hooks, we need to reject the promise, which effectively skips the test case. * For more details, refer to: https://github.com/mochajs/mocha/pull/3859#issuecomment-534116333 */ - if (/^(sync|async) skip; aborting execution$/.test(e.message)) { + if (/^(sync|async) skip; aborting execution$/.test((e as Error).message)) { rejectionFunc() return true } /** * in case of jasmine, when rejecting, we need to pass the message of rejection as well */ - if (/^=> marked Pending/.test(e)) { - rejectionFunc(e) + if (/^=> marked Pending/.test(e as string)) { + rejectionFunc(e as Error) return true } } @@ -62,12 +78,12 @@ export async function executeHooksWithArgs (this: any, hookName: string, hook try { result = hook.apply(this, args) - } catch (e: any) { + } catch (e) { if (rejectIfSkipped(e, reject)) { return } - log.error(e.stack) - return resolve(e) + log.error((e as Error).stack) + return resolve(e as Error) } /** @@ -100,8 +116,8 @@ export async function executeHooksWithArgs (this: any, hookName: string, hook * @param commandName name of the command (e.g. getTitle) * @param fn command function */ -export function wrapCommand(commandName: string, fn: Function): (...args: any) => Promise { - async function wrapCommandFn(this: any, ...args: any[]) { +export function wrapCommand(commandName: string, fn: Function): (...args: unknown[]) => Promise { + async function wrapCommandFn(this: { options: Services.Hooks }, ...args: unknown[]) { const beforeHookArgs = [commandName, args] if (!inCommandHook && this.options.beforeCommand) { inCommandHook = true @@ -113,7 +129,7 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any let commandError try { commandResult = await fn.apply(this, args) - } catch (err: any) { + } catch (err) { commandError = err } @@ -131,7 +147,7 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any return commandResult } - function wrapElementFn (promise: Promise, cmd: Function, args: any[], prevInnerArgs?: { prop: string | number, args: any[] }): any { + function wrapElementFn (promise: Promise, cmd: Function, args: unknown[], prevInnerArgs?: { prop: string | number, args: unknown[] }): unknown { return new Proxy( Promise.resolve(promise).then((ctx: WebdriverIO.Browser) => cmd.call(ctx, ...args)), { @@ -171,15 +187,15 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any /** * `this` is an array of WebdriverIO elements */ - function (this: any, index: number) { + function (this: WebdriverIOInstance, index: number) { /** * if we access an index that is out of bounds we wait for the * array to get that long, and timeout eventually if it doesn't */ if (index >= this.length) { - const browser = getBrowserObject(this) as any + const browser = getBrowserObject(this) as WebdriverIOInstance return browser.waitUntil(async () => { - const elems = await this.parent[this.foundWith as any as '$$'](this.selector) + const elems = await this.parent[this.foundWith as unknown as '$$'](this.selector) if (elems.length > index) { return elems[index] } @@ -205,7 +221,8 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any */ if (ELEMENT_QUERY_COMMANDS.includes(prop) || prop.endsWith('$')) { // this: WebdriverIO.Element - return wrapCommand(prop, function (this: any, ...args: any) { + return wrapCommand(prop, function (this: Record, ...args: unknown[]) { + // eslint-disable-next-line prefer-spread return this[prop].apply(this, args) }) } @@ -220,7 +237,7 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any if (commandName.endsWith('$$') && typeof iterators[prop as keyof typeof iterators] === 'function') { return (mapIterator: Function) => wrapElementFn( target, - function (this: never, mapIterator: Function): any { + function (this: never, mapIterator: Function) { // @ts-ignore return iterators[prop](this, mapIterator) }, @@ -265,7 +282,7 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any * const tagName = await $('foo').$('bar').getTagName() * ``` */ - return (...args: any[]) => target.then(async (elem) => { + return (...args: unknown[]) => target.then(async (elem) => { if (!elem) { let errMsg = 'Element could not be found' const prevElem = await promise @@ -299,11 +316,11 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any ) } - function chainElementQuery(this: Promise, ...args: any[]): any { + function chainElementQuery(this: Promise, ...args: unknown[]): unknown { return wrapElementFn(this, wrapCommandFn, args) } - return function (this: WebdriverIO.Browser, ...args: any[]) { + return function (this: WebdriverIO.Browser, ...args: unknown[]) { /** * if the command suppose to return an element, we apply `chainElementQuery` to allow * chaining of these promises. @@ -331,7 +348,7 @@ export function wrapCommand(commandName: string, fn: Function): (...args: any * @param {number} timeout The maximum time (in milliseconds) to wait for the function to complete * @return {Promise} that gets resolved once test/hook is done or was retried enough */ -export async function executeAsync(this: any, fn: Function, retries: Frameworks.TestRetries, args: any[] = [], timeout: number = 20000): Promise { +export async function executeAsync(this: WebdriverIOInstance, fn: Function, retries: Frameworks.TestRetries, args: unknown[] = [], timeout: number = 20000): Promise { this.wdioRetries = retries.attempts try { @@ -362,11 +379,11 @@ export async function executeAsync(this: any, fn: Function, retries: Frameworks. done = true if (result !== null && typeof result === 'object' && 'finally' in result && typeof result.finally === 'function') { - result.catch((err: any) => err) + result.catch((err: unknown) => err) } return await result - } catch (err: any) { + } catch (err) { if (retries.limit > retries.attempts) { retries.attempts++ return await executeAsync.call(this, fn, retries, args) diff --git a/packages/wdio-utils/src/test-framework/errorHandler.ts b/packages/wdio-utils/src/test-framework/errorHandler.ts index 0542617e7..780699507 100644 --- a/packages/wdio-utils/src/test-framework/errorHandler.ts +++ b/packages/wdio-utils/src/test-framework/errorHandler.ts @@ -7,7 +7,7 @@ * @param {Array} hookResults hook functions results array * @param {string} cid cid */ -export const logHookError = (hookName: string, hookResults: any[] = [], cid: string) => { +export const logHookError = (hookName: string, hookResults: unknown[] = [], cid: string) => { const result = hookResults.find(result => result instanceof Error) if (typeof result === 'undefined') { return diff --git a/packages/wdio-utils/src/test-framework/testFnWrapper.ts b/packages/wdio-utils/src/test-framework/testFnWrapper.ts index dcdaaa47a..b5e478fa0 100644 --- a/packages/wdio-utils/src/test-framework/testFnWrapper.ts +++ b/packages/wdio-utils/src/test-framework/testFnWrapper.ts @@ -10,9 +10,9 @@ import type { declare global { // Firstly variable '_wdioDynamicJasmineResultErrorList' gets reference to test result in packages/wdio-jasmine-framework/src/index.ts and then used here in wdio-utils/ as workaround for Jasmine - // eslint-disable-next-line no-var + // eslint-disable-next-line no-var, @typescript-eslint/no-explicit-any var _wdioDynamicJasmineResultErrorList: any | undefined - // eslint-disable-next-line no-var + // eslint-disable-next-line no-var, @typescript-eslint/no-explicit-any var _jasmineTestResult: any | undefined } @@ -102,7 +102,8 @@ export const testFrameworkFnWrapper = async function ( error = globalThis._wdioDynamicJasmineResultErrorList[0] globalThis._wdioDynamicJasmineResultErrorList = undefined } - } catch (err: any) { + } catch (_err: unknown) { + const err = _err instanceof Error ? _err : new Error(typeof _err === 'string' ? _err : 'An unknown error occurred') if (err.stack) { err.stack = filterStackTrace(err.stack) } diff --git a/packages/wdio-utils/src/test-framework/testInterfaceWrapper.ts b/packages/wdio-utils/src/test-framework/testInterfaceWrapper.ts index bef85fc9b..c4da1c1ff 100644 --- a/packages/wdio-utils/src/test-framework/testInterfaceWrapper.ts +++ b/packages/wdio-utils/src/test-framework/testInterfaceWrapper.ts @@ -263,7 +263,9 @@ export const wrapGlobalTestMethod = function ( cid: string, scope = globalThis ) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any const origFn = (scope as any)[fnName]; + // eslint-disable-next-line @typescript-eslint/no-explicit-any (scope as any)[fnName] = wrapTestFunction( origFn, isSpec, @@ -273,6 +275,7 @@ export const wrapGlobalTestMethod = function ( afterArgsFn, cid ) + // eslint-disable-next-line @typescript-eslint/no-explicit-any addMochaCommands(origFn, (scope as any)[fnName]) } diff --git a/packages/wdio-utils/src/test-framework/types.ts b/packages/wdio-utils/src/test-framework/types.ts index 092903378..f61275009 100644 --- a/packages/wdio-utils/src/test-framework/types.ts +++ b/packages/wdio-utils/src/test-framework/types.ts @@ -9,7 +9,7 @@ export interface WrapperMethods { export interface SpecFunction { specFn: Function - specFnArgs: any[] + specFnArgs: unknown[] } export interface BeforeHookParam { diff --git a/packages/wdio-utils/src/utils.ts b/packages/wdio-utils/src/utils.ts index 5e185a339..9ba555afc 100644 --- a/packages/wdio-utils/src/utils.ts +++ b/packages/wdio-utils/src/utils.ts @@ -11,7 +11,7 @@ const SCRIPT_PLACEHOLDER = '""' const REGEX_SCRIPT_NAME = /return \((async )?function (\w+)/ const SLASH = '/' -function assertPath(path?: any) { +function assertPath(path?: unknown) { if (typeof path !== 'string') { throw new TypeError('Path must be a string. Received ' + JSON.stringify(path)) } @@ -26,7 +26,7 @@ export function isAbsolute(p: string) { * overwrite native element commands with user defined * @param {object} propertiesObject propertiesObject */ -export function overwriteElementCommands(propertiesObject: { '__elementOverrides__'?: { value: any }, [key: string]: any }) { +export function overwriteElementCommands(propertiesObject: { '__elementOverrides__'?: { value: Record }, [key: string]: unknown }) { const elementOverrides = propertiesObject.__elementOverrides__ ? propertiesObject.__elementOverrides__.value : {} @@ -40,18 +40,20 @@ export function overwriteElementCommands(propertiesObject: { '__elementOverrides throw new Error('overwriteCommand: no command to be overwritten: ' + commandName) } - if (typeof propertiesObject[commandName].value !== 'function') { + const propertiesObjectCommand = (propertiesObject[commandName] as { value: unknown }).value + if (typeof propertiesObjectCommand !== 'function') { throw new Error('overwriteCommand: only functions can be overwritten, command: ' + commandName) } - const origCommand = propertiesObject[commandName].value + const origCommand = propertiesObjectCommand delete propertiesObject[commandName] - const newCommand = function (this: WebdriverIO.Browser, ...args: any[]) { + const newCommand = function (this: WebdriverIO.Browser, ...args: unknown[]) { const element = this return userDefinedCommand.apply(element, [ - function origCommandFunction (this: WebdriverIO.Browser) { + function origCommandFunction (this: WebdriverIO.Browser, ..._args: unknown[]) { const context = this || element // respect explicite context binding, use element as default + // eslint-disable-next-line prefer-rest-params return origCommand.apply(context, arguments) }, ...args @@ -72,7 +74,7 @@ export function overwriteElementCommands(propertiesObject: { '__elementOverrides * get command call structure * (for logging purposes) */ -export function commandCallStructure (commandName: string, args: any[], unfurl = false) { +export function commandCallStructure (commandName: string, args: unknown[], unfurl = false) { const callArgs = args.map((arg) => { if (typeof arg === 'string' && (arg.startsWith('!function(') || arg.startsWith('return (function') || arg.startsWith('return (async function'))) { arg = '' @@ -110,15 +112,19 @@ export function commandCallStructure (commandName: string, args: any[], unfurl = * result strings e.g. if it contains a screenshot * @param {object} result WebDriver response body */ -export function transformCommandLogResult (result: { file?: string, script?: string }) { - if (typeof result.file === 'string' && isBase64(result.file)) { +export function transformCommandLogResult (result: unknown) { + if (typeof result === 'undefined') { + return '' + } else if (typeof result !== 'object' || !result) { + return result + } else if ('file' in result && typeof result.file === 'string' && isBase64(result.file)) { return SCREENSHOT_REPLACEMENT - } else if (typeof result.script === 'string' && isBase64(result.script)) { + } else if ('script' in result && typeof result.script === 'string' && isBase64(result.script)) { return SCRIPT_PLACEHOLDER - } else if (typeof result.script === 'string' && result.script.match(REGEX_SCRIPT_NAME)) { + } else if ('script' in result && typeof result.script === 'string' && result.script.match(REGEX_SCRIPT_NAME)) { const newScript = result.script.match(REGEX_SCRIPT_NAME)![2] return { ...result, script: `${newScript}(...) [${Buffer.byteLength(result.script, 'utf-8')} bytes]` } - } else if (typeof result.script === 'string' && result.script.startsWith('!function(')) { + } else if ('script' in result && typeof result.script === 'string' && result.script.startsWith('!function(')) { return { ...result, script: ` [${Buffer.byteLength(result.script, 'utf-8')} bytes]` } } @@ -132,7 +138,7 @@ export function transformCommandLogResult (result: { file?: string, script?: str * @param {Object} expectedType parameter type (e.g. `number`, `string[]` or `(number|string)`) * @return {Boolean} true if argument is valid */ -export function isValidParameter (arg: any, expectedType: string) { +export function isValidParameter (arg: unknown, expectedType: string) { let shouldBeArray = false if (expectedType.slice(-2) === '[]') { @@ -154,10 +160,12 @@ export function isValidParameter (arg: any, expectedType: string) { arg = [arg] } - for (const argEntity of arg) { - const argEntityType = getArgumentType(argEntity) - if (!argEntityType.match(expectedType)) { - return false + if (Array.isArray(arg)) { + for (const argEntity of arg) { + const argEntityType = getArgumentType(argEntity) + if (!argEntityType.match(expectedType)) { + return false + } } } @@ -167,7 +175,7 @@ export function isValidParameter (arg: any, expectedType: string) { /** * get type of command argument */ -export function getArgumentType (arg: any) { +export function getArgumentType (arg: unknown) { return arg === null ? 'null' : typeof arg } @@ -183,7 +191,7 @@ export async function userImport (moduleName: string, namedImport = 'default' if (namedImport in mod) { return mod[namedImport] } - } catch (err) { + } catch { throw new Error(`Couldn't import "${moduleName}"! Do you have it installed? If not run "npm install ${moduleName}"!`) } @@ -220,16 +228,16 @@ export async function safeImport (name: string): Promise typeof arg !== 'function') } diff --git a/packages/wdio-utils/tests/envDetector.test.ts b/packages/wdio-utils/tests/envDetector.test.ts index d7489ac8e..264060416 100644 --- a/packages/wdio-utils/tests/envDetector.test.ts +++ b/packages/wdio-utils/tests/envDetector.test.ts @@ -138,9 +138,9 @@ describe('sessionEnvironmentDetector', () => { expect(sessionEnvironmentDetector({ capabilities: chromeCaps, requestedCapabilities }).isBidi).toBe(false) expect(sessionEnvironmentDetector({ capabilities: geckoCaps, requestedCapabilities }).isBidi).toBe(false) expect(sessionEnvironmentDetector({ capabilities: phantomCaps, requestedCapabilities }).isBidi).toBe(false) - expect(sessionEnvironmentDetector({ capabilities: bidiResponse as any as WebdriverIO.Capabilities, requestedCapabilities }).isBidi) + expect(sessionEnvironmentDetector({ capabilities: bidiResponse as unknown as WebdriverIO.Capabilities, requestedCapabilities }).isBidi) .toBe(true) - expect(sessionEnvironmentDetector({ capabilities: bidiResponse as any as WebdriverIO.Capabilities, requestedCapabilities: requestedAppiumCapabilities }).isBidi) + expect(sessionEnvironmentDetector({ capabilities: bidiResponse as unknown as WebdriverIO.Capabilities, requestedCapabilities: requestedAppiumCapabilities }).isBidi) .toBe(true) expect(sessionEnvironmentDetector({ capabilities: { webSocketUrl: true diff --git a/packages/wdio-utils/tests/shim-async.test.ts b/packages/wdio-utils/tests/shim-async.test.ts index 258a40590..e83fcccb2 100644 --- a/packages/wdio-utils/tests/shim-async.test.ts +++ b/packages/wdio-utils/tests/shim-async.test.ts @@ -290,7 +290,7 @@ describe('wrapCommand', () => { }] scope.options = options const rawCommand = vi.fn().mockReturnValue(Promise.resolve(scope)) - const commandA = wrapCommand('$$', rawCommand).bind(scope) as any as (sel: string) => Promise[] + const commandA = wrapCommand('$$', rawCommand).bind(scope) as unknown as (sel: string) => Promise[] const expectedResults = ['foobarA', 'foobarB', 'foobarC'] let i = 0 @@ -311,7 +311,7 @@ describe('wrapCommand', () => { } scope.options = options const rawCommand = vi.fn().mockReturnValue(Promise.resolve(scope)) - const commandA = wrapCommand('$', rawCommand).bind(scope) as any as (sel: string) => Promise[] + const commandA = wrapCommand('$', rawCommand).bind(scope) as unknown as (sel: string) => Promise[] try { for await (const elem of commandA('selector')) { diff --git a/packages/wdio-webdriver-mock-service/src/WebDriverMock.ts b/packages/wdio-webdriver-mock-service/src/WebDriverMock.ts index 41ee222ee..f5cd9d0d8 100644 --- a/packages/wdio-webdriver-mock-service/src/WebDriverMock.ts +++ b/packages/wdio-webdriver-mock-service/src/WebDriverMock.ts @@ -18,7 +18,7 @@ type protocolFlattenedType = { method: string, endpoint: string, commandData: Co const protocolFlattened: Map = new Map() export interface CommandMock { - [commandName: string]: (...args: any[]) => nock.Interceptor + [commandName: string]: (...args: unknown[]) => nock.Interceptor } for (const protocol of protocols) { @@ -36,7 +36,7 @@ export default class WebDriverMock { this.scope = nock(`http://${host}:${port}`, { encodedQueryParams: true }) - this.command = new Proxy({}, { get: this.get.bind(this) }) + this.command = new Proxy({}, { get: this.get.bind(this) }) as unknown as CommandMock } /** @@ -67,19 +67,19 @@ export default class WebDriverMock { } } - get(obj: any, commandName: string) { + get(_obj: unknown, commandName: string) { const { method, endpoint, commandData } = protocolFlattened.get(commandName) as protocolFlattenedType - return (...args: any[]) => { + return (...args: unknown[]) => { let urlPath = endpoint for (const [i, param] of Object.entries(commandData.variables || [])) { - urlPath = urlPath.replace(`:${param.name}`, args[parseInt(i)]) + urlPath = urlPath.replace(`:${param.name}`, args[parseInt(i)] as string) } if (method === 'POST') { const reqMethod = method.toLowerCase() as RequestMethods - return this.scope[reqMethod](WebDriverMock.pathMatcher(urlPath), (body: Record) => { + return this.scope[reqMethod](WebDriverMock.pathMatcher(urlPath), (body: Record) => { for (const param of commandData.parameters) { /** * check if parameter was set diff --git a/packages/webdriver/src/bidi/core.ts b/packages/webdriver/src/bidi/core.ts index e0c4bc5c7..f2f543f50 100644 --- a/packages/webdriver/src/bidi/core.ts +++ b/packages/webdriver/src/bidi/core.ts @@ -4,7 +4,7 @@ import type { ClientOptions, RawData, WebSocket } from 'ws' import { environment } from '../environment.js' import type * as remote from './remoteTypes.js' import type { CommandData } from './remoteTypes.js' -import type { CommandResponse } from './localTypes.js' +import type { CommandResponse, ErrorResponse } from './localTypes.js' import type { Client } from '../types.js' @@ -127,7 +127,7 @@ export class BidiCore { this.#pendingCommands.delete(payload.id) resolve(payload) - } catch (err: unknown) { + } catch (err) { const error = err instanceof Error ? err : new Error(`Failed parse message: ${String(err)}`) log.error(`Failed parse message: ${error.message}`) } @@ -136,7 +136,7 @@ export class BidiCore { public async send (params: Omit): Promise { const id = this.sendAsync(params) const failError = new Error(`WebDriver Bidi command "${params.method}" failed`) - const payload = await new Promise((resolve, reject) => { + const payload = await new Promise((resolve, reject) => { const t = setTimeout(() => { reject(new Error(`Command ${params.method} with id ${id} (with the following parameter: ${JSON.stringify(params.params)}) timed out`)) this.#pendingCommands.delete(id) @@ -147,9 +147,9 @@ export class BidiCore { }) }) - if (payload.error) { + if (payload.type === 'error' || 'error' in payload) { failError.message += ` with error: ${payload.error} - ${payload.message}` - if (payload.stacktrace) { + if (payload.stacktrace && typeof payload.stacktrace === 'string') { const driverStack = payload.stacktrace .split('\n') .filter(Boolean) diff --git a/packages/webdriver/src/bidi/localTypes.ts b/packages/webdriver/src/bidi/localTypes.ts index f99e4e52c..1936cc640 100644 --- a/packages/webdriver/src/bidi/localTypes.ts +++ b/packages/webdriver/src/bidi/localTypes.ts @@ -37,7 +37,7 @@ export interface Event extends Extensible { } export type EventData = BrowsingContextEvent | LogEvent | NetworkEvent | ScriptEvent; -export type Extensible = Record; +export type Extensible = Record; export type JsInt = number; export type JsUint = number; export type ErrorCode = 'invalid argument' | 'invalid selector' | 'invalid session id' | 'move target out of bounds' | 'no such alert' | 'no such element' | 'no such frame' | 'no such handle' | 'no such history entry' | 'no such intercept' | 'no such node' | 'no such request' | 'no such script' | 'no such storage partition' | 'no such user context' | 'session not created' | 'unable to capture screen' | 'unable to close browser' | 'unable to set cookie' | 'unable to set file input' | 'underspecified storage partition' | 'unknown command' | 'unknown error' | 'unsupported operation'; @@ -521,7 +521,7 @@ export type ScriptSpecialNumber = 'NaN' | '-0' | 'Infinity' | '-Infinity'; export interface ScriptNumberValue { type: 'number'; - value: Number | ScriptSpecialNumber; + value: number | ScriptSpecialNumber; } export interface ScriptBooleanValue { diff --git a/packages/webdriver/src/bidi/remoteTypes.ts b/packages/webdriver/src/bidi/remoteTypes.ts index e0f78e9db..4d2fcae70 100644 --- a/packages/webdriver/src/bidi/remoteTypes.ts +++ b/packages/webdriver/src/bidi/remoteTypes.ts @@ -19,7 +19,7 @@ export interface Command { export type CommandData = BrowserCommand | BrowsingContextCommand | InputCommand | NetworkCommand | ScriptCommand | SessionCommand | StorageCommand; export interface EmptyParams extends Extensible {} -export type Extensible = Record; +export type Extensible = Record; export type JsInt = number; export type JsUint = number; export type SessionCommand = SessionEnd | SessionNew | SessionStatus | SessionSubscribe | SessionUnsubscribe; @@ -640,7 +640,7 @@ export type ScriptSpecialNumber = 'NaN' | '-0' | 'Infinity' | '-Infinity'; export interface ScriptNumberValue { type: 'number'; - value: Number | ScriptSpecialNumber; + value: number | ScriptSpecialNumber; } export interface ScriptBooleanValue { diff --git a/packages/webdriver/src/bidi/socket.ts b/packages/webdriver/src/bidi/socket.ts index e276e59d0..e3600c4bd 100644 --- a/packages/webdriver/src/bidi/socket.ts +++ b/packages/webdriver/src/bidi/socket.ts @@ -3,12 +3,11 @@ * interface and exposes a similar interface to the Node.js WebSocket */ export class BrowserSocket { - #callbacks = new Set() + #callbacks = new Set() #ws: WebSocket - // eslint-disable-next-line @typescript-eslint/no-unused-vars - constructor (wsUrl: string, opts: any) { - this.#ws = new WebSocket(wsUrl) as any + constructor (wsUrl: string, _opts: unknown) { + this.#ws = new globalThis.WebSocket(wsUrl) this.#ws.onmessage = this.handleMessage.bind(this) } @@ -22,7 +21,7 @@ export class BrowserSocket { this.#ws.send(data) } - on (event: string, callback: (data: any, reason?: any) => void) { + on (event: string, callback: Callback) { if (event === 'open') { this.#ws.onopen = callback } else if (event === 'close') { @@ -36,7 +35,7 @@ export class BrowserSocket { return this } - off (event: string, callback: (data: any, reason?: any) => void) { + off (_event: string, callback: Callback) { this.#callbacks.delete(callback) return this } @@ -45,3 +44,5 @@ export class BrowserSocket { this.#ws.close() } } + +type Callback = (data: unknown, reason?: unknown) => void diff --git a/packages/webdriver/src/command.ts b/packages/webdriver/src/command.ts index 99300e64c..631c13d09 100644 --- a/packages/webdriver/src/command.ts +++ b/packages/webdriver/src/command.ts @@ -18,7 +18,7 @@ export default function ( ) { const { command, deprecated, ref, parameters, variables = [], isHubCommand = false } = commandInfo - return async function protocolCommand (this: BaseClient, ...args: any[]): Promise { + return async function protocolCommand (this: BaseClient, ...args: unknown[]): Promise { const isBidiCommand = BIDI_COMMANDS.includes(command as BidiCommands) let endpoint = endpointUri // clone endpointUri in case we change it const commandParams = [...variables.map((v) => Object.assign(v, { @@ -31,7 +31,7 @@ export default function ( const commandUsage = `${command}(${commandParams.map((p) => p.name).join(', ')})` const moreInfo = `\n\nFor more info see ${ref}\n` - const body: Record = {} + const body: Record = {} /** * log deprecation warning if command is deprecated @@ -109,7 +109,7 @@ export default function ( * inject url variables */ if (i < variables.length) { - const encodedArg = doubleEncodeVariables ? encodeURIComponent(encodeURIComponent(arg)) : encodeURIComponent(arg) + const encodedArg = doubleEncodeVariables ? encodeURIComponent(encodeURIComponent(arg as string)) : encodeURIComponent(arg as string) endpoint = endpoint.replace(`:${commandParams[i].name}`, encodedArg) continue } @@ -133,8 +133,8 @@ export default function ( if (/screenshot|recording/i.test(command) && typeof result.value === 'string' && result.value.length > 64) { resultLog = `${result.value.slice(0, 61)}...` - } else if (command === 'executeScript' && body.script && body.script.includes('(() => window.__wdioEvents__)')) { - resultLog = `[${result.value.length} framework events captured]` + } else if (command === 'executeScript' && typeof body.script === 'string' && body.script.includes('(() => window.__wdioEvents__)')) { + resultLog = `[${(result.value as unknown[]).length} framework events captured]` } log.info('RESULT', resultLog) @@ -149,7 +149,7 @@ export default function ( const browser = this as { _bidiHandler?: BidiHandler } browser._bidiHandler?.close() - const shutdownDriver = body.deleteSessionOpts?.shutdownDriver !== false + const shutdownDriver = (body.deleteSessionOpts as { shutdownDriver?: boolean })?.shutdownDriver !== false /** * kill driver process if there is one */ @@ -185,7 +185,7 @@ export default function ( } } - return result.value + return result.value as WebDriverResponse | BidiResponses }).catch((error) => { this.emit('result', { command, method, endpoint, body, result: { error } }) throw error diff --git a/packages/webdriver/src/index.cts b/packages/webdriver/src/index.cts index 22c3f3af0..30a7f9a3c 100644 --- a/packages/webdriver/src/index.cts +++ b/packages/webdriver/src/index.cts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ const esmModule = import('./node.js') function command (method: string, encodeUri: string, commandInfo: any, doubleEncodeVariables = false) { diff --git a/packages/webdriver/src/index.ts b/packages/webdriver/src/index.ts index 899fd3c81..4a084998d 100644 --- a/packages/webdriver/src/index.ts +++ b/packages/webdriver/src/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { ChildProcess } from 'node:child_process' import logger from '@wdio/logger' @@ -51,7 +52,7 @@ export default class WebDriver { const bidiPrototype: PropertyDescriptorMap = {} if (isBidi(capabilities)) { log.info(`Register BiDi handler for session with id ${sessionId}`) - Object.assign(bidiPrototype, initiateBidi(capabilities.webSocketUrl as any as string, options.strictSSL)) + Object.assign(bidiPrototype, initiateBidi(capabilities.webSocketUrl as unknown as string, options.strictSSL)) } const monad = webdriverMonad( diff --git a/packages/webdriver/src/request/error.ts b/packages/webdriver/src/request/error.ts index 94ef0e9e4..e0703599e 100644 --- a/packages/webdriver/src/request/error.ts +++ b/packages/webdriver/src/request/error.ts @@ -1,5 +1,5 @@ import { transformCommandLogResult } from '@wdio/utils' -import type { Options } from '@wdio/types' + import { REG_EXPS } from './constants.js' abstract class WebDriverError extends Error { @@ -27,7 +27,7 @@ abstract class WebDriverError extends Error { } #getExecCmdArgs(requestOptions: RequestInit): string { - const { body: cmdJson }: any = requestOptions + const { body: cmdJson } = requestOptions as unknown as { body: Record } if (typeof cmdJson !== 'object') { return '' @@ -54,7 +54,7 @@ export class WebDriverRequestError extends WebDriverError { opts: RequestInit statusCode?: number - body?: any + body?: unknown code?: string constructor (err: Error, url: URL, opts: RequestInit) { @@ -86,14 +86,16 @@ export class WebDriverRequestError extends WebDriverError { export class WebDriverResponseError extends WebDriverError { url: URL opts: RequestInit - constructor (response: Options.RequestLibResponse, url: URL, opts: RequestInit) { - const errorObj = !response.body + constructor (response: unknown, url: URL, opts: RequestInit) { + const errorObj: { message?: string, error?: string, class?: string, name?: string } = !response || typeof response !== 'object' || !('body' in response) || !response.body ? new Error('Response has empty body') : typeof response.body === 'string' && response.body.length ? new Error(response.body) : typeof response.body !== 'object' ? new Error('Unknown error') - : response.body.value || response.body + : 'value' in response.body && response.body.value + ? response.body.value + : response.body /** * e.g. in Firefox or Safari, error are following the following structure: diff --git a/packages/webdriver/src/request/index.ts b/packages/webdriver/src/request/index.ts new file mode 100644 index 000000000..5572f6757 --- /dev/null +++ b/packages/webdriver/src/request/index.ts @@ -0,0 +1,281 @@ +import path from 'node:path' +import { EventEmitter } from 'node:events' +import { WebDriverProtocol } from '@wdio/protocols' +import { URL } from 'node:url' + +import logger from '@wdio/logger' +import { transformCommandLogResult, sleep } from '@wdio/utils' +import type { Options } from '@wdio/types' + +import { WebDriverResponseError, type WebDriverRequestError } from './error.js' +import { RETRYABLE_STATUS_CODES, RETRYABLE_ERROR_CODES } from './constants.js' +import type { WebDriverResponse } from './types.js' + +import { isSuccessfulResponse } from '../utils.js' +import { DEFAULTS } from '../constants.js' +import pkg from '../../package.json' with { type: 'json' } + +type RequestLibResponse = Options.RequestLibResponse +type RequestOptions = Omit + +const ERRORS_TO_EXCLUDE_FROM_RETRY = [ + 'detached shadow root', + 'move target out of bounds' +] + +export const COMMANDS_WITHOUT_RETRY = [ + findCommandPathByName('performActions'), +] + +const DEFAULT_HEADERS = { + 'Content-Type': 'application/json; charset=utf-8', + 'Connection': 'keep-alive', + 'Accept': 'application/json', + 'User-Agent': 'webdriver/' + pkg.version +} + +const log = logger('webdriver') + +export default abstract class WebDriverRequest extends EventEmitter { + #requestTimeout?: NodeJS.Timeout + + body?: Record + method: string + endpoint: string + isHubCommand: boolean + requiresSessionId: boolean + + constructor (method: string, endpoint: string, body?: Record, isHubCommand: boolean = false) { + super() + this.body = body + this.method = method + this.endpoint = endpoint + this.isHubCommand = isHubCommand + this.requiresSessionId = Boolean(this.endpoint.match(/:sessionId/)) + } + + async makeRequest (options: RequestOptions, sessionId?: string) { + const { url, requestOptions } = await this._createOptions(options, sessionId) + let fullRequestOptions: RequestInit = Object.assign( + { method: this.method }, + requestOptions + ) + if (typeof options.transformRequest === 'function') { + fullRequestOptions = options.transformRequest(fullRequestOptions) + } + + this.emit('request', fullRequestOptions) + return this._request(url, fullRequestOptions, options.transformResponse, options.connectionRetryCount, 0) + } + + protected async _createOptions (options: RequestOptions, sessionId?: string, isBrowser: boolean = false): Promise<{url: URL; requestOptions: RequestInit;}> { + const controller = new AbortController() + this.#requestTimeout = setTimeout( + () => controller.abort(), + options.connectionRetryTimeout || DEFAULTS.connectionRetryTimeout.default + ) + + const requestOptions: RequestInit = { + signal: controller.signal + } + + const requestHeaders: HeadersInit = new Headers({ + ...DEFAULT_HEADERS, + ...(typeof options.headers === 'object' ? options.headers : {}) + }) + + const searchParams = isBrowser ? undefined : (typeof options.queryParams === 'object' ? options.queryParams : undefined) + + /** + * only apply body property if existing + */ + if (this.body && (Object.keys(this.body).length || this.method === 'POST')) { + const contentLength = Buffer.byteLength(JSON.stringify(this.body), 'utf8') + requestOptions.body = this.body as unknown as BodyInit + requestHeaders.set('Content-Length', `${contentLength}`) + } + + /** + * if we don't have a session id we set it here, unless we call commands that don't require session ids, for + * example /sessions. The call to /sessions is not connected to a session itself and it therefore doesn't + * require it + */ + let endpoint = this.endpoint + if (this.requiresSessionId) { + if (!sessionId) { + throw new Error('A sessionId is required for this command') + } + endpoint = endpoint.replace(':sessionId', sessionId) + } + + const url = new URL(`${options.protocol}://${options.hostname}:${options.port}${this.isHubCommand ? this.endpoint : path.join(options.path || '', endpoint)}`) + + if (searchParams) { + url.search = new URLSearchParams(searchParams).toString() + } + + /** + * send authentication credentials only when creating new session + */ + if (this.endpoint === '/session' && options.user && options.key) { + requestHeaders.set('Authorization', 'Basic ' + btoa(options.user + ':' + options.key)) + } + + requestOptions.headers = requestHeaders + + return { url, requestOptions } + } + + protected async _libRequest(_url: URL, _options: RequestInit): Promise { + throw new Error('This function must be implemented') + } + + protected _libPerformanceNow(): number { + throw new Error('This function must be implemented') + } + + private async _request ( + url: URL, + fullRequestOptions: RequestInit, + transformResponse?: (response: RequestLibResponse, requestOptions: RequestInit) => RequestLibResponse, + totalRetryCount = 0, + retryCount = 0 + ): Promise { + log.info(`[${fullRequestOptions.method}] ${(url as URL).href}`) + + if (fullRequestOptions.body && Object.keys(fullRequestOptions.body).length) { + log.info('DATA', transformCommandLogResult(fullRequestOptions.body as unknown as Record)) + } + + const { ...requestLibOptions } = fullRequestOptions + const startTime = this._libPerformanceNow() + let response = await this._libRequest(url!, requestLibOptions) + .catch((err: WebDriverRequestError) => err) + const durationMillisecond = this._libPerformanceNow() - startTime + + if (this.#requestTimeout) { + clearTimeout(this.#requestTimeout) + } + + /** + * handle retries for requests + * @param {Error} error error object that causes the retry + * @param {string} msg message that is being shown as warning to user + */ + const retry = async (error: Error) => { + /** + * stop retrying if totalRetryCount was exceeded or there is no reason to + * retry, e.g. if sessionId is invalid + */ + if (retryCount >= totalRetryCount || error.message.includes('invalid session id')) { + log.error(error.message) + this.emit('response', { error }) + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount }) + throw error + } + + if (retryCount > 0) { + /* + * Exponential backoff with a minimum of 500ms and a maximum of 10_000ms. + */ + await sleep(Math.min(10000, 250 * Math.pow(2, retryCount))) + } + + ++retryCount + + this.emit('retry', { error, retryCount }) + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount }) + log.warn(error.message) + log.info(`Retrying ${retryCount}/${totalRetryCount}`) + return this._request(url, fullRequestOptions, transformResponse, totalRetryCount, retryCount) + } + + /** + * handle request errors + */ + if (response instanceof Error) { + const resError = response as WebDriverRequestError + + /** + * retry failed requests + */ + if ( + (resError.code && RETRYABLE_ERROR_CODES.includes(resError.code)) || + (resError.statusCode && RETRYABLE_STATUS_CODES.includes(resError.statusCode)) + ) { + return retry(resError) + } + + /** + * throw if request error is unknown + */ + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error: response, retryCount }) + throw response + } + + if (typeof transformResponse === 'function') { + response = transformResponse(response, fullRequestOptions) as RequestLibResponse + } + + /** + * Resolve only if successful response + */ + if (isSuccessfulResponse(response.statusCode, response.body)) { + this.emit('response', { result: response.body }) + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: true, retryCount }) + return response.body as WebDriverResponse + } + + const error = new WebDriverResponseError(response, url, fullRequestOptions) + + /** + * hub commands don't follow standard response formats + * and can have empty bodies + */ + if (this.isHubCommand) { + /** + * if body contains HTML the command was called on a node + * directly without using a hub, therefore throw + */ + if (typeof response.body === 'string' && response.body.startsWith('')) { + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount }) + return Promise.reject(new Error('Command can only be called to a Selenium Hub')) + } + + return { value: response.body || null } + } + + /** + * stop retrying as this will never be successful. + * we will handle this at the elementErrorHandler + */ + if (error.name === 'stale element reference') { + log.warn('Request encountered a stale element - terminating request') + this.emit('response', { error }) + this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: false, error, retryCount }) + throw error + } + + /** + * some errors can be excluded from the request retry mechanism as + * it likely does not changes anything and the error is handled within the command. + */ + if (ERRORS_TO_EXCLUDE_FROM_RETRY.includes(error.name)) { + throw error + } + + return retry(error) + } +} + +function findCommandPathByName (commandName: string) { + const command = Object.entries(WebDriverProtocol).find( + ([, command]) => Object.values(command).find( + (cmd) => cmd.command === commandName)) + + if (!command) { + throw new Error(`Couldn't find command "${commandName}"`) + } + + return command[0] +} diff --git a/packages/webdriver/src/request/node.ts b/packages/webdriver/src/request/node.ts index e85639579..31b769753 100644 --- a/packages/webdriver/src/request/node.ts +++ b/packages/webdriver/src/request/node.ts @@ -14,7 +14,7 @@ dns.setDefaultResultOrder('ipv4first') */ export class FetchRequest extends WebDriverRequest { fetch (url: URL, opts: RequestInit) { - return fetch(url, opts as UndiciRequestInit) as Promise + return fetch(url, opts as UndiciRequestInit) as unknown as Promise } async createOptions (options: RequestOptions, sessionId?: string, isBrowser: boolean = false) { diff --git a/packages/webdriver/src/request/request.ts b/packages/webdriver/src/request/request.ts index e4f6d398b..fa09bf5c1 100644 --- a/packages/webdriver/src/request/request.ts +++ b/packages/webdriver/src/request/request.ts @@ -70,7 +70,7 @@ export abstract class WebDriverRequest extends EventEmitter { */ if (this.body && (Object.keys(this.body).length || this.method === 'POST')) { const contentLength = Buffer.byteLength(JSON.stringify(this.body), 'utf8') - requestOptions.body = this.body as any + requestOptions.body = this.body as unknown as BodyInit requestHeaders.set('Content-Length', `${contentLength}`) } @@ -126,10 +126,10 @@ export abstract class WebDriverRequest extends EventEmitter { statusCode: resp.status, body: await resp.json() ?? {}, } as Options.RequestLibResponse - } catch (err: any) { + } catch (err) { if (!(err instanceof Error)) { throw new WebDriverRequestError( - new Error(`Failed to fetch ${url.href}: ${err.message || err || 'Unknown error'}`), + new Error(`Failed to fetch ${url.href}: ${(err as Error).message || err || 'Unknown error'}`), url, opts ) @@ -149,7 +149,7 @@ export abstract class WebDriverRequest extends EventEmitter { log.info(`[${fullRequestOptions.method}] ${(url as URL).href}`) if (fullRequestOptions.body && Object.keys(fullRequestOptions.body).length) { - log.info('DATA', transformCommandLogResult(fullRequestOptions.body as any)) + log.info('DATA', transformCommandLogResult(fullRequestOptions.body)) } const { ...requestLibOptions } = fullRequestOptions @@ -224,7 +224,7 @@ export abstract class WebDriverRequest extends EventEmitter { if (isSuccessfulResponse(response.statusCode, response.body)) { this.emit('response', { result: response.body }) this.emit('performance', { request: fullRequestOptions, durationMillisecond, success: true, retryCount }) - return response.body + return response.body as WebDriverResponse } const error = new WebDriverResponseError(response, url, fullRequestOptions) diff --git a/packages/webdriver/src/request/types.ts b/packages/webdriver/src/request/types.ts index f8d3eeb4c..6e56bf7c9 100644 --- a/packages/webdriver/src/request/types.ts +++ b/packages/webdriver/src/request/types.ts @@ -1,7 +1,7 @@ import type { Options } from '@wdio/types' -export interface WebDriverResponse { - value: any +export interface WebDriverResponse { + value: T /** * error case * https://w3c.github.io/webdriver/webdriver-spec.html#dfn-send-an-error diff --git a/packages/webdriver/src/types.ts b/packages/webdriver/src/types.ts index dd86ac0f2..b50566eb2 100644 --- a/packages/webdriver/src/types.ts +++ b/packages/webdriver/src/types.ts @@ -27,7 +27,7 @@ export interface SessionFlags { isBidi: boolean } -type Fn = (...args: any) => any +type Fn = (...args: unknown[]) => unknown type ValueOf = T[keyof T] type ObtainMethods = { [Prop in keyof T]: T[Prop] extends Fn ? ThenArg> : never } type WebDriverBidiCommands = typeof WebDriverBidiProtocol @@ -37,17 +37,17 @@ export type RemoteConfig = Options.WebDriver & Capabilities.WithRequestedCapabil type BidiInterface = ObtainMethods> type WebDriverClassicEvents = { - command: { command: string, method: string, endpoint: string, body: any } - result: { command: string, method: string, endpoint: string, body: any, result: any } + command: { command: string, method: string, endpoint: string, body: unknown } + result: { command: string, method: string, endpoint: string, body: unknown, result: unknown } bidiCommand: Omit, bidiResult: CommandResponse, - 'request.performance': { durationMillisecond: number, error: string, request: any, retryCount: number, success: boolean } + 'request.performance': { durationMillisecond: number, error: string, request: unknown, retryCount: number, success: boolean } } export type BidiEventMap = { [Event in keyof Omit]: BidiInterface[WebDriverBidiCommands[Event]['socket']['command']] } -type GetParam = T extends { method: U } ? T['params'] : never +type GetParam = T extends { method: U } ? T['params'] : never export type EventMap = { [Event in EventData['method']]: GetParam } & WebDriverClassicEvents diff --git a/packages/webdriver/src/utils.ts b/packages/webdriver/src/utils.ts index 0d78a263c..f0d991d6f 100644 --- a/packages/webdriver/src/utils.ts +++ b/packages/webdriver/src/utils.ts @@ -10,7 +10,6 @@ import { import { CAPABILITY_KEYS } from '@wdio/protocols' import type { Options } from '@wdio/types' -import type { WebDriverResponse } from './request/types.js' import command from './command.js' import { environment } from './environment.js' import { BidiHandler } from './bidi/handler.js' @@ -27,6 +26,14 @@ const BROWSER_DRIVER_ERRORS = [ 'Command not found' // iedriver ] +interface SessionInitializationResponse { + value: { + sessionId?: string, + capabilities?: WebdriverIO.Capabilities + }, + sessionId: string +} + /** * start browser session with WebDriver protocol */ @@ -78,12 +85,12 @@ export async function startWebDriverSession (params: RemoteConfig): Promise<{ se { capabilities } ) - let response + let response: SessionInitializationResponse try { - response = await sessionRequest.makeRequest(params) - } catch (err: any) { + response = await sessionRequest.makeRequest(params) as SessionInitializationResponse + } catch (err) { log.error(err) - const message = getSessionError(err, params) + const message = getSessionError(err as Error, params) throw new Error('Failed to create session.\n' + message) } const sessionId = response.value.sessionId || response.sessionId @@ -143,11 +150,11 @@ export function validateCapabilities (capabilities: WebdriverIO.Capabilities) { * @param {Object} body body payload of response * @return {Boolean} true if request was successful */ -export function isSuccessfulResponse (statusCode?: number, body?: WebDriverResponse) { +export function isSuccessfulResponse (statusCode?: number, body?: unknown) { /** * response contains a body */ - if (!body || typeof body.value === 'undefined') { + if (!body || typeof body !== 'object' || !('value' in body) || typeof body.value === 'undefined') { log.debug('request failed due to missing body') return false } @@ -156,7 +163,8 @@ export function isSuccessfulResponse (statusCode?: number, body?: WebDriverRespo * ignore failing element request to enable lazy loading capability */ if ( - body.status === 7 && body.value && body.value.message && + 'status' in body && body.status === 7 && body.value && typeof body.value === 'object' && + 'message' in body.value && body.value.message && typeof body.value.message === 'string' && ( body.value.message.toLowerCase().startsWith('no such element') || // Appium @@ -172,12 +180,16 @@ export function isSuccessfulResponse (statusCode?: number, body?: WebDriverRespo * if it has a status property, it should be 0 * (just here to stay backwards compatible to the jsonwire protocol) */ - if (body.status && body.status !== 0) { + if ('status' in body && body.status && body.status !== 0) { log.debug(`request failed due to status ${body.status}`) return false } - const hasErrorResponse = body.value && (body.value.error || body.value.stackTrace || body.value.stacktrace) + const hasErrorResponse = body.value && ( + (typeof body.value === 'object' && 'error' in body.value && body.value.error) || + (typeof body.value === 'object' && 'stackTrace' in body.value && body.value.stackTrace) || + (typeof body.value === 'object' && 'stacktrace' in body.value && body.value.stacktrace) + ) /** * check status code @@ -190,7 +202,7 @@ export function isSuccessfulResponse (statusCode?: number, body?: WebDriverRespo * if an element was not found we don't flag it as failed request because * we lazy load it */ - if (statusCode === 404 && body.value && body.value.error === 'no such element') { + if (statusCode === 404 && typeof body.value === 'object' && body.value && 'error' in body.value && body.value.error === 'no such element') { return true } @@ -198,7 +210,8 @@ export function isSuccessfulResponse (statusCode?: number, body?: WebDriverRespo * that has no error property (Appium only) */ if (hasErrorResponse) { - log.debug('request failed due to response error:', body.value.error) + const errMsg = typeof body.value === 'object' && body.value && 'error' in body.value ? body.value.error : body.value + log.debug('request failed due to response error:', errMsg) return false } @@ -210,6 +223,7 @@ export function isSuccessfulResponse (statusCode?: number, body?: WebDriverRespo */ export function getPrototype ({ isW3C, isChromium, isFirefox, isMobile, isSauce, isSeleniumStandalone }: Partial) { const prototype: Record = {} + // eslint-disable-next-line @typescript-eslint/no-explicit-any const ProtocolCommands = deepmerge( /** * if mobile apply JSONWire and WebDriver protocol because @@ -217,6 +231,7 @@ export function getPrototype ({ isW3C, isChromium, isFirefox, isMobile, isSauce, * (e.g. set/get geolocation) */ isMobile + // eslint-disable-next-line @typescript-eslint/no-explicit-any ? deepmerge(AppiumProtocol as Protocol, WebDriverProtocol as Protocol) as Protocol : WebDriverProtocol, /** @@ -226,6 +241,7 @@ export function getPrototype ({ isW3C, isChromium, isFirefox, isMobile, isSauce, /** * only apply mobile protocol if session is actually for mobile */ + // eslint-disable-next-line @typescript-eslint/no-explicit-any isMobile ? deepmerge(MJsonWProtocol, AppiumProtocol) : {}, /** * only apply special Chromium commands if session is using Chrome or Edge @@ -398,7 +414,7 @@ export function initiateBidi (socketUrl: string, strictSSL: boolean = true): Pro _bidiHandler: { value: handler }, ...Object.values(WebDriverBidiProtocol).map((def) => def.socket).reduce((acc, cur) => { acc[cur.command] = { - value: function (this: Client, ...args: any) { + value: function (this: Client, ...args: unknown[]) { const bidiFn = handler[cur.command] as Function | undefined /** @@ -422,8 +438,8 @@ export function parseBidiMessage (this: EventEmitter, data: Buffer) { return } - this.emit(payload.method, payload.params) - } catch (err: unknown) { + this.emit(payload.method as string, payload.params) + } catch (err) { log.error(`Failed parse WebDriver Bidi message: ${(err as Error).message}`) } } diff --git a/packages/webdriver/tests/command.test.ts b/packages/webdriver/tests/command.test.ts index 2724c58c8..566f0193e 100644 --- a/packages/webdriver/tests/command.test.ts +++ b/packages/webdriver/tests/command.test.ts @@ -60,8 +60,6 @@ vi.mock('../src/request/request', () => { }) thenMock.mockReturnValue(promise) - catchMock - return { thenMock, catchMock, diff --git a/packages/webdriver/tests/index.test.ts b/packages/webdriver/tests/index.test.ts index fd0a8d7a0..09bac780c 100644 --- a/packages/webdriver/tests/index.test.ts +++ b/packages/webdriver/tests/index.test.ts @@ -174,7 +174,7 @@ describe('WebDriver', () => { describe('attachToSession', () => { it('should allow to attach to existing session', async () => { - const client = WebDriver.attachToSession({ ...sessionOptions, logLevel: 'error' }) as any as TestClient + const client = WebDriver.attachToSession({ ...sessionOptions, logLevel: 'error' }) as unknown as TestClient await client.getUrl() expect(fetch).toHaveBeenCalledWith( expect.objectContaining({ href: 'http://localhost:4444/session/foobar/url' }), @@ -184,7 +184,7 @@ describe('WebDriver', () => { }) it('should allow to attach to existing session2', async () => { - const client = WebDriver.attachToSession({ ...sessionOptions }) as any as TestClient + const client = WebDriver.attachToSession({ ...sessionOptions }) as unknown as TestClient await client.getUrl() expect(fetch).toHaveBeenCalledWith( expect.objectContaining({ href: 'http://localhost:4444/session/foobar/url' }), @@ -194,7 +194,7 @@ describe('WebDriver', () => { }) it('should allow to attach to existing session - W3C', async () => { - const client = WebDriver.attachToSession({ ...sessionOptions }) as any as TestClient + const client = WebDriver.attachToSession({ ...sessionOptions }) as unknown as TestClient await client.getUrl() expect(client.isChromium).toBeFalsy() @@ -209,7 +209,7 @@ describe('WebDriver', () => { const client = WebDriver.attachToSession({ ...sessionOptions, isChromium: true, isMobile: true - }) as any as TestClient + }) as unknown as TestClient await client.getUrl() @@ -267,7 +267,7 @@ describe('WebDriver', () => { 'appium:automationName': 'foo', 'platformName': 'ios', } - }) as any as TestClient + }) as unknown as TestClient expect(client.isMobile).toBe(true) expect(client.isLocked).toBeTruthy() expect(client.shake).toBeTruthy() diff --git a/packages/webdriverio/src/clock.ts b/packages/webdriverio/src/clock.ts index afb169d7f..9b36d994b 100644 --- a/packages/webdriverio/src/clock.ts +++ b/packages/webdriverio/src/clock.ts @@ -22,7 +22,7 @@ function uninstallFakeTimers () { export class ClockManager { #browser: WebdriverIO.Browser - #resetFn: (() => Promise) = () => Promise.resolve() + #resetFn: (() => Promise) = () => Promise.resolve() #isInstalled = false constructor(browser: WebdriverIO.Browser) { diff --git a/packages/webdriverio/src/commands/browser/$$.ts b/packages/webdriverio/src/commands/browser/$$.ts index 914551c7f..b43a7dc7f 100644 --- a/packages/webdriverio/src/commands/browser/$$.ts +++ b/packages/webdriverio/src/commands/browser/$$.ts @@ -63,8 +63,8 @@ export async function $$ ( if (globalThis.wdio?.execute) { const command = '$$' as const const res = 'elementId' in this - ? await globalThis.wdio.executeWithScope(command, this.elementId, selector) as any as ElementReference[] - : await globalThis.wdio.execute(command, selector) as any as ElementReference[] + ? await globalThis.wdio.executeWithScope(command, this.elementId, selector) as unknown as ElementReference[] + : await globalThis.wdio.execute(command, selector) as unknown as ElementReference[] const elements = await getElements.call(this, selector as Selector, res) return enhanceElementsArray(elements, this, selector as Selector) as WebdriverIO.ElementArray } @@ -85,7 +85,9 @@ export async function $$ ( res = [] for (const el of selector) { const $el = await findElement.call(this, el) - $el && res.push($el) + if ($el) { + res.push($el) + } } } diff --git a/packages/webdriverio/src/commands/browser/addInitScript.ts b/packages/webdriverio/src/commands/browser/addInitScript.ts index 5fdd03d02..43a5098c0 100644 --- a/packages/webdriverio/src/commands/browser/addInitScript.ts +++ b/packages/webdriverio/src/commands/browser/addInitScript.ts @@ -1,5 +1,5 @@ import { EventEmitter } from 'node:events' -import type { local } from 'webdriver' +import type { local, remote } from 'webdriver' import { deserializeValue } from '../../utils/bidi/index.js' @@ -127,6 +127,7 @@ export async function addInitScript ( export async function addInitScript ( this: WebdriverIO.Browser, script: string | InitScriptFunction | InitScriptFunctionArg1 | InitScriptFunctionArg2 | InitScriptFunctionArg3 | InitScriptFunctionArg4 | InitScriptFunctionArg5, + // eslint-disable-next-line @typescript-eslint/no-explicit-any ...args: any ): Promise> { /** @@ -140,7 +141,7 @@ export async function addInitScript ( throw new Error('This command is only supported when automating browser using WebDriver Bidi protocol') } - const serializedParameters = (args || []).map((arg: any) => JSON.stringify(arg)) + const serializedParameters = (args || []).map((arg: unknown) => JSON.stringify(arg)) const context = await this.getWindowHandle() const fn = `(emit) => { const closure = new Function(\`return ${script.toString()}\`) @@ -162,7 +163,7 @@ export async function addInitScript ( const emitter = new EventEmitter() const messageHandler = (msg: local.ScriptMessageParameters) => { if (msg.channel === channel) { - emitter.emit('data', deserializeValue(msg.data as any)) + emitter.emit('data', deserializeValue(msg.data as remote.ScriptLocalValue)) } } this.on('script.message', messageHandler) diff --git a/packages/webdriverio/src/commands/browser/custom$$.ts b/packages/webdriverio/src/commands/browser/custom$$.ts index 2bdbf2831..583e2e5f7 100644 --- a/packages/webdriverio/src/commands/browser/custom$$.ts +++ b/packages/webdriverio/src/commands/browser/custom$$.ts @@ -31,7 +31,7 @@ import type { CustomStrategyFunction, CustomStrategyReference } from '../../type export async function custom$$ ( this: WebdriverIO.Browser, strategyName: string, - ...strategyArguments: any[] + ...strategyArguments: unknown[] ): Promise { const strategy = this.strategies.get(strategyName) as CustomStrategyFunction diff --git a/packages/webdriverio/src/commands/browser/custom$.ts b/packages/webdriverio/src/commands/browser/custom$.ts index 1442638d5..ad5c929f4 100644 --- a/packages/webdriverio/src/commands/browser/custom$.ts +++ b/packages/webdriverio/src/commands/browser/custom$.ts @@ -33,7 +33,7 @@ import type { CustomStrategyFunction } from '../../types.js' export async function custom$ ( this: WebdriverIO.Browser, strategyName: string, - ...strategyArguments: any[] + ...strategyArguments: unknown[] ) { const strategy = this.strategies.get(strategyName) as CustomStrategyFunction diff --git a/packages/webdriverio/src/commands/browser/debug.ts b/packages/webdriverio/src/commands/browser/debug.ts index 3ea98807b..1a66791fb 100644 --- a/packages/webdriverio/src/commands/browser/debug.ts +++ b/packages/webdriverio/src/commands/browser/debug.ts @@ -42,7 +42,6 @@ export function debug( * run repl in standalone mode */ if (!process.env.WDIO_WORKER_ID || typeof process.send !== 'function') { - // eslint-disable-next-line console.log(WDIORepl.introMessage) const context = { browser: this, @@ -68,7 +67,7 @@ export function debug( }) let commandResolve = /* istanbul ignore next */ () => { } - process.on('message', (m: any) => { + process.on('message', (m: { name: string, origin: string, content: { cmd: string } }) => { if (m.origin !== 'debugger') { return } @@ -80,7 +79,7 @@ export function debug( /* istanbul ignore if */ if (m.name === 'eval') { - repl.eval(m.content.cmd, global, undefined, (err: Error | null, result: any) => { + repl.eval(m.content.cmd, global, undefined, (err: Error | null, result: unknown) => { if (typeof process.send !== 'function') { return } diff --git a/packages/webdriverio/src/commands/browser/downloadFile.ts b/packages/webdriverio/src/commands/browser/downloadFile.ts index ef7ce8c45..82d919890 100644 --- a/packages/webdriverio/src/commands/browser/downloadFile.ts +++ b/packages/webdriverio/src/commands/browser/downloadFile.ts @@ -65,7 +65,9 @@ export async function downloadFile( fs.mkdirSync(targetDirectory, { recursive: true }) const zipFilePath = path.join(targetDirectory, `${fileName}.zip`) - fs.writeFileSync(zipFilePath, Buffer.from(base64Content, 'base64')) + const binaryString = atob(base64Content as string) + const bytes = Uint8Array.from(binaryString, char => char.charCodeAt(0)) + fs.writeFileSync(zipFilePath, bytes) const zipData = fs.readFileSync(zipFilePath) const filesData: string[] = [] diff --git a/packages/webdriverio/src/commands/browser/emulate.ts b/packages/webdriverio/src/commands/browser/emulate.ts index d0dc65b06..d966530bc 100644 --- a/packages/webdriverio/src/commands/browser/emulate.ts +++ b/packages/webdriverio/src/commands/browser/emulate.ts @@ -5,6 +5,7 @@ import { deviceDescriptorsSource, type DeviceName } from '../../deviceDescriptor import { restoreFunctions } from '../../constants.js' import type { SupportedScopes } from '../../types.js' +// eslint-disable-next-line @typescript-eslint/no-explicit-any type RestoreFunction = () => Promise type ColorScheme = 'light' | 'dark' diff --git a/packages/webdriverio/src/commands/browser/execute.ts b/packages/webdriverio/src/commands/browser/execute.ts index 2e3a9e197..1d8383ee2 100644 --- a/packages/webdriverio/src/commands/browser/execute.ts +++ b/packages/webdriverio/src/commands/browser/execute.ts @@ -43,7 +43,7 @@ import { NAME_POLYFILL } from '../../polyfill.js' * @type protocol * */ -export async function execute ( +export async function execute ( this: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, script: string | ((...innerArgs: InnerArguments) => ReturnValue), ...args: InnerArguments @@ -66,7 +66,7 @@ export async function execute ( const params: remote.ScriptCallFunctionParameters = { functionDeclaration, awaitPromise: true, - arguments: args.map((arg) => LocalValue.getArgument(arg)) as any, + arguments: args.map((arg) => LocalValue.getArgument(arg)) as remote.ScriptLocalValue[], target: { context } @@ -86,5 +86,5 @@ export async function execute ( ` } - return this.executeScript(script, verifyArgsAndStripIfElement(args)) + return this.executeScript(script, verifyArgsAndStripIfElement(args) as (string | number | boolean)[]) } diff --git a/packages/webdriverio/src/commands/browser/executeAsync.ts b/packages/webdriverio/src/commands/browser/executeAsync.ts index 35f38ec31..27b47329b 100644 --- a/packages/webdriverio/src/commands/browser/executeAsync.ts +++ b/packages/webdriverio/src/commands/browser/executeAsync.ts @@ -55,7 +55,7 @@ import { NAME_POLYFILL } from '../../polyfill.js' * @type protocol * @deprecated Please use `execute` instead */ -export async function executeAsync( +export async function executeAsync( this: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, script: string | @@ -88,7 +88,7 @@ export async function executeAsync( const params: remote.ScriptCallFunctionParameters = { functionDeclaration, awaitPromise: true, - arguments: args.map((arg) => LocalValue.getArgument(arg)) as any, + arguments: args.map((arg) => LocalValue.getArgument(arg)) as remote.ScriptLocalValue[], target: { context } @@ -108,5 +108,5 @@ export async function executeAsync( ` } - return this.executeAsyncScript(script, verifyArgsAndStripIfElement(args)) + return this.executeAsyncScript(script, verifyArgsAndStripIfElement(args) as (string | number | boolean)[]) } diff --git a/packages/webdriverio/src/commands/browser/getPuppeteer.ts b/packages/webdriverio/src/commands/browser/getPuppeteer.ts index 4808a298e..35427bd19 100644 --- a/packages/webdriverio/src/commands/browser/getPuppeteer.ts +++ b/packages/webdriverio/src/commands/browser/getPuppeteer.ts @@ -72,7 +72,7 @@ export async function getPuppeteer (this: WebdriverIO.Browser): Promise LocalValue.getArgument(arg)) as any, + arguments: args.map((arg) => LocalValue.getArgument(arg)) as remote.ScriptLocalValue[], target: { context: id } } @@ -368,9 +368,9 @@ function findContext ( async function getFlatContextTree (browser: WebdriverIO.Browser): Promise> { const tree = await browser.browsingContextGetTree({}) - const mapContext = (context: local.BrowsingContextInfo): any => [ + const mapContext = (context: local.BrowsingContextInfo): string[] => [ context.context, - ...(context.children || []).map(mapContext) + ...(context.children || []).map(mapContext).flat(Infinity) as string[] ] /** @@ -378,9 +378,9 @@ async function getFlatContextTree (browser: WebdriverIO.Browser): Promise = tree.contexts.map(mapContext).flat(Infinity) - .reduce((acc, ctx) => { + .reduce((acc, ctx: string) => { const context = findContext(ctx, tree.contexts, byContextId) - acc[ctx] = context + acc[ctx] = context as unknown as FlatContextTree return acc }, {} as Record) return allContexts diff --git a/packages/webdriverio/src/commands/browser/url.ts b/packages/webdriverio/src/commands/browser/url.ts index 529679789..003b325ca 100644 --- a/packages/webdriverio/src/commands/browser/url.ts +++ b/packages/webdriverio/src/commands/browser/url.ts @@ -134,7 +134,7 @@ export async function url ( throw new Error(`Option "onBeforeLoad" must be a function, but received: ${typeof options.onBeforeLoad}`) } - resetPreloadScript = await this.addInitScript(options.onBeforeLoad) + resetPreloadScript = await this.addInitScript(options.onBeforeLoad as (() => void)) } if (options.auth) { @@ -262,5 +262,5 @@ interface UrlCommandOptions { * from the Node.js context. Furthermore changes to the environment only apply for this specific page load. * Checkout `browser.addPreloadScript` for a more versatile way to mock the environment. */ - onBeforeLoad?: () => any + onBeforeLoad?: () => unknown } diff --git a/packages/webdriverio/src/commands/browser/waitUntil.ts b/packages/webdriverio/src/commands/browser/waitUntil.ts index 10a5faf43..ef221ea97 100644 --- a/packages/webdriverio/src/commands/browser/waitUntil.ts +++ b/packages/webdriverio/src/commands/browser/waitUntil.ts @@ -28,7 +28,7 @@ export function waitUntil( interval = this.options.waitforInterval, timeoutMsg }: Partial = {} -): Promise> { +): Promise> { if (typeof condition !== 'function') { throw new Error('Condition is not a function') } @@ -46,7 +46,7 @@ export function waitUntil( const fn = condition.bind(this) const timer = new Timer(interval as number, timeout as number, fn, true) - return (timer as any).catch((e: Error) => { + return timer.catch>((e: Error) => { if (e.message === 'timeout') { if (typeof timeoutMsg === 'string') { throw new Error(timeoutMsg) diff --git a/packages/webdriverio/src/commands/constant.ts b/packages/webdriverio/src/commands/constant.ts index 3951cf213..b85808476 100644 --- a/packages/webdriverio/src/commands/constant.ts +++ b/packages/webdriverio/src/commands/constant.ts @@ -24,7 +24,7 @@ export const formatArgs = function ( ): FormattedActions[] { return actions.map((action: TouchAction) => { if (Array.isArray(action)) { - return formatArgs(scope, action) as any + return formatArgs(scope, action) as unknown as FormattedActions } if (typeof action === 'string') { @@ -39,8 +39,8 @@ export const formatArgs = function ( /** * don't propagate for actions that don't require element options */ - const actionElement = action.element && typeof (action.element as any as WebdriverIO.Element).elementId === 'string' - ? (action.element as any as WebdriverIO.Element).elementId + const actionElement = action.element && typeof (action.element as unknown as WebdriverIO.Element).elementId === 'string' + ? (action.element as unknown as WebdriverIO.Element).elementId : (scope as WebdriverIO.Element).elementId if (POS_ACTIONS.includes(action.action) && formattedAction.options && actionElement) { formattedAction.options.element = actionElement diff --git a/packages/webdriverio/src/commands/element/custom$$.ts b/packages/webdriverio/src/commands/element/custom$$.ts index 2a00b5cd4..b25f27992 100644 --- a/packages/webdriverio/src/commands/element/custom$$.ts +++ b/packages/webdriverio/src/commands/element/custom$$.ts @@ -33,7 +33,7 @@ import type { CustomStrategyFunction } from '../../types.js' export async function custom$$ ( this: WebdriverIO.Element, strategyName: string, - ...strategyArguments: any[] + ...strategyArguments: unknown[] ): Promise { const browserObject = getBrowserObject(this) const strategy = browserObject.strategies.get(strategyName) as CustomStrategyFunction diff --git a/packages/webdriverio/src/commands/element/custom$.ts b/packages/webdriverio/src/commands/element/custom$.ts index 93ba247ac..b16681a67 100644 --- a/packages/webdriverio/src/commands/element/custom$.ts +++ b/packages/webdriverio/src/commands/element/custom$.ts @@ -35,7 +35,7 @@ import type { CustomStrategyFunction } from '../../types.js' export async function custom$ ( this: WebdriverIO.Element, strategyName: string, - ...strategyArguments: any[] + ...strategyArguments: unknown[] ) { const browserObject = getBrowserObject(this) const strategy = browserObject.strategies.get(strategyName) as CustomStrategyFunction diff --git a/packages/webdriverio/src/commands/element/execute.ts b/packages/webdriverio/src/commands/element/execute.ts index bdae1e37f..e6185b04e 100644 --- a/packages/webdriverio/src/commands/element/execute.ts +++ b/packages/webdriverio/src/commands/element/execute.ts @@ -36,7 +36,7 @@ import { getBrowserObject } from '@wdio/utils' * @type protocol * */ -export async function execute ( +export async function execute ( this: WebdriverIO.Element, script: string | ((...innerArgs: [WebdriverIO.Element, ...InnerArguments]) => ReturnValue), ...args: InnerArguments diff --git a/packages/webdriverio/src/commands/element/executeAsync.ts b/packages/webdriverio/src/commands/element/executeAsync.ts index fc5668abb..146b64a07 100644 --- a/packages/webdriverio/src/commands/element/executeAsync.ts +++ b/packages/webdriverio/src/commands/element/executeAsync.ts @@ -51,7 +51,7 @@ import { getBrowserObject } from '@wdio/utils' * @type protocol * @deprecated Please use `execute` instead */ -export async function executeAsync ( +export async function executeAsync ( this: WebdriverIO.Browser | WebdriverIO.Element, script: string | diff --git a/packages/webdriverio/src/commands/element/getCSSProperty.ts b/packages/webdriverio/src/commands/element/getCSSProperty.ts index 0fbc37f3e..85a8b50e0 100644 --- a/packages/webdriverio/src/commands/element/getCSSProperty.ts +++ b/packages/webdriverio/src/commands/element/getCSSProperty.ts @@ -185,7 +185,7 @@ async function getPseudoElementCSSValue ( const browser = getBrowserObject(elem) const { cssProperty, pseudoElement } = options const cssValue = await browser.execute( - (elem: Element, pseudoElement: string, cssProperty: string) => (window.getComputedStyle(elem, pseudoElement))[cssProperty as any], + (elem: Element, pseudoElement: string, cssProperty: string) => (window.getComputedStyle(elem, pseudoElement))[cssProperty as unknown as number], elem as unknown as Element, pseudoElement, cssProperty diff --git a/packages/webdriverio/src/commands/element/getHTML.ts b/packages/webdriverio/src/commands/element/getHTML.ts index 71f3192d0..f870a8090 100644 --- a/packages/webdriverio/src/commands/element/getHTML.ts +++ b/packages/webdriverio/src/commands/element/getHTML.ts @@ -100,7 +100,7 @@ export async function getHTML( return browser.execute(getHTMLScript, { [ELEMENT_KEY]: elementId, // w3c compatible ELEMENT: elementId // jsonwp compatible - } as any as HTMLElement, includeSelectorTag) + } as unknown as HTMLElement, includeSelectorTag) } if (pierceShadowRoot && this.isBidi) { @@ -126,7 +126,7 @@ export async function getHTML( const elementsWithShadowRootAndIdVerified = (( await Promise.all( shadowRootElementPairs.map(([elemId, elem]) => ( - browser.execute((elem) => elem.tagName, { [ELEMENT_KEY]: elemId } as any as HTMLElement).then( + browser.execute((elem) => elem.tagName, { [ELEMENT_KEY]: elemId } as unknown as HTMLElement).then( () => [elemId, elem], () => undefined ) @@ -134,7 +134,7 @@ export async function getHTML( ) ).filter(Boolean) as [string, string | undefined][]).map(([elemId, shadowId]) => [ elemId, - { [ELEMENT_KEY]: elemId } as any as HTMLElement, + { [ELEMENT_KEY]: elemId } as unknown as HTMLElement, shadowId ? { [ELEMENT_KEY]: shadowId } : undefined ]) as [string, HTMLElement, HTMLElement | undefined][] @@ -143,7 +143,7 @@ export async function getHTML( */ const { html, shadowElementHTML } = await browser.execute( getHTMLShadowScript, - { [ELEMENT_KEY]: this.elementId } as any as HTMLElement, + { [ELEMENT_KEY]: this.elementId } as unknown as HTMLElement, includeSelectorTag, elementsWithShadowRootAndIdVerified ) diff --git a/packages/webdriverio/src/commands/element/isClickable.ts b/packages/webdriverio/src/commands/element/isClickable.ts index 2635f3ec5..218da2362 100644 --- a/packages/webdriverio/src/commands/element/isClickable.ts +++ b/packages/webdriverio/src/commands/element/isClickable.ts @@ -59,5 +59,5 @@ export async function isClickable (this: WebdriverIO.Element) { return browser.execute(isElementClickableScript, { [ELEMENT_KEY]: this.elementId, // w3c compatible ELEMENT: this.elementId // jsonwp compatible - } as any as HTMLElement) + } as unknown as HTMLElement) } diff --git a/packages/webdriverio/src/commands/element/isDisplayed.ts b/packages/webdriverio/src/commands/element/isDisplayed.ts index 30a3516bd..8a14ba775 100644 --- a/packages/webdriverio/src/commands/element/isDisplayed.ts +++ b/packages/webdriverio/src/commands/element/isDisplayed.ts @@ -122,10 +122,10 @@ export async function isDisplayed ( return await this.isElementDisplayed(this.elementId) } - const isDisplayed = await browser.execute(isElementDisplayedScript, this as any as HTMLElement) + const isDisplayed = await browser.execute(isElementDisplayedScript, this as unknown as HTMLElement) if (isDisplayed && commandParams?.withinViewport) { - return browser.execute(isElementInViewportScript, this as any as HTMLElement) + return browser.execute(isElementInViewportScript, this as unknown as HTMLElement) } return isDisplayed diff --git a/packages/webdriverio/src/commands/element/isEqual.ts b/packages/webdriverio/src/commands/element/isEqual.ts index ca244b0af..753631bfb 100644 --- a/packages/webdriverio/src/commands/element/isEqual.ts +++ b/packages/webdriverio/src/commands/element/isEqual.ts @@ -58,7 +58,7 @@ export async function isEqual ( /* istanbul ignore next */ function (el1: WebdriverIO.Element, el2: WebdriverIO.Element) { return el1 === el2 }, getWebElement(this), getWebElement(el)) - } catch (err: any) { + } catch { result = false } diff --git a/packages/webdriverio/src/commands/element/isFocused.ts b/packages/webdriverio/src/commands/element/isFocused.ts index 4e24d5e98..bc9b2e841 100644 --- a/packages/webdriverio/src/commands/element/isFocused.ts +++ b/packages/webdriverio/src/commands/element/isFocused.ts @@ -34,5 +34,5 @@ export async function isFocused (this: WebdriverIO.Element) { return browser.execute(isFocusedScript, { [ELEMENT_KEY]: this.elementId, // w3c compatible ELEMENT: this.elementId // jsonwp compatible - } as any as HTMLElement) + } as unknown as HTMLElement) } diff --git a/packages/webdriverio/src/commands/element/isStable.ts b/packages/webdriverio/src/commands/element/isStable.ts index 585280419..bb2e74fa7 100644 --- a/packages/webdriverio/src/commands/element/isStable.ts +++ b/packages/webdriverio/src/commands/element/isStable.ts @@ -60,5 +60,5 @@ export async function isStable (this: WebdriverIO.Element) { return await browser.executeAsync(isElementStable, { [ELEMENT_KEY]: this.elementId, // w3c compatible ELEMENT: this.elementId // jsonwp compatible - } as any as HTMLElement) + } as unknown as HTMLElement) } diff --git a/packages/webdriverio/src/commands/element/react$$.ts b/packages/webdriverio/src/commands/element/react$$.ts index 5360df93f..039cce01e 100644 --- a/packages/webdriverio/src/commands/element/react$$.ts +++ b/packages/webdriverio/src/commands/element/react$$.ts @@ -59,6 +59,7 @@ export async function react$$( await this.executeScript(resqScript.toString(), []) await browser.execute(waitToLoadReact) const res = await browser.execute( + // eslint-disable-next-line @typescript-eslint/no-explicit-any react$$Script as any, selector, props, state, this ) as ElementReference[] diff --git a/packages/webdriverio/src/commands/element/react$.ts b/packages/webdriverio/src/commands/element/react$.ts index c89d932fb..e12849a7c 100644 --- a/packages/webdriverio/src/commands/element/react$.ts +++ b/packages/webdriverio/src/commands/element/react$.ts @@ -68,8 +68,8 @@ export async function react$( await this.executeScript(resqScript.toString(), []) await browser.execute(waitToLoadReact) const res = await browser.execute( - react$Script as any, selector, props, state, this - ) as any as ElementReference + react$Script, selector, props, state, this as unknown as HTMLElement + ) as unknown as ElementReference return getElement.call(this, selector, res, { isReactElement: true }) } diff --git a/packages/webdriverio/src/commands/element/scrollIntoView.ts b/packages/webdriverio/src/commands/element/scrollIntoView.ts index 8b942e8ff..63ca1d27d 100644 --- a/packages/webdriverio/src/commands/element/scrollIntoView.ts +++ b/packages/webdriverio/src/commands/element/scrollIntoView.ts @@ -126,9 +126,9 @@ export async function scrollIntoView ( await browser.action('wheel') .scroll({ duration: 0, x: deltaX, y: deltaY, origin: this }) .perform() - } catch (err: any) { + } catch (err) { log.warn( - `Failed to execute "scrollIntoView" using WebDriver Actions API: ${err.message}!\n` + + `Failed to execute "scrollIntoView" using WebDriver Actions API: ${(err as Error).message}!\n` + 'Re-attempting using `Element.scrollIntoView` via Web API.' ) await scrollIntoViewWeb.call(this, options) @@ -247,6 +247,7 @@ async function nativeMobileScrollIntoView({ if (hasScrolled && isVisible) { // Pause for stabilization + // eslint-disable-next-line wdio/no-pause return browser.pause(1000) } else if (isVisible) { // Element is already visible @@ -274,7 +275,7 @@ function scrollIntoViewWeb ( { [ELEMENT_KEY]: this.elementId, // w3c compatible ELEMENT: this.elementId, // jsonwp compatible - } as any as HTMLElement, + } as unknown as HTMLElement, options, ) } diff --git a/packages/webdriverio/src/commands/element/selectByAttribute.ts b/packages/webdriverio/src/commands/element/selectByAttribute.ts index 95e029034..041997adf 100644 --- a/packages/webdriverio/src/commands/element/selectByAttribute.ts +++ b/packages/webdriverio/src/commands/element/selectByAttribute.ts @@ -57,7 +57,7 @@ export async function selectByAttribute ( `./option${normalized}|./optgroup/option${normalized}` ) - if (optionElement && (optionElement as any).error === 'no such element') { + if (optionElement && (optionElement as unknown as { error: string }).error === 'no such element') { throw new Error(`Option with attribute "${attribute}=${value}" not found.`) } diff --git a/packages/webdriverio/src/commands/element/selectByVisibleText.ts b/packages/webdriverio/src/commands/element/selectByVisibleText.ts index b72b74c3d..775976b96 100644 --- a/packages/webdriverio/src/commands/element/selectByVisibleText.ts +++ b/packages/webdriverio/src/commands/element/selectByVisibleText.ts @@ -62,7 +62,7 @@ export async function selectByVisibleText ( const optionElement = await this.findElementFromElement(this.elementId, 'xpath', selections.join('|')) - if (optionElement && (optionElement as any).error === 'no such element') { + if (optionElement && (optionElement as unknown as { error: string }).error === 'no such element') { throw new Error(`Option with text "${text}" not found.`) } diff --git a/packages/webdriverio/src/commands/element/shadow$$.ts b/packages/webdriverio/src/commands/element/shadow$$.ts index dd0c479d7..a5461a0c7 100644 --- a/packages/webdriverio/src/commands/element/shadow$$.ts +++ b/packages/webdriverio/src/commands/element/shadow$$.ts @@ -50,7 +50,7 @@ export async function shadow$$ ( const res = await browser.findElementsFromShadowRoot(shadowRoot[SHADOW_ELEMENT_KEY], using, value) const elements = await getElements.call(this, selector as Selector, res, { isShadowElement: true }) return enhanceElementsArray(elements, this, selector as Selector) as WebdriverIO.ElementArray - } catch (err: unknown) { + } catch (err) { log.warn( `Failed to fetch element within shadow DOM using WebDriver command: ${(err as Error).message}!\n` + 'Falling back to JavaScript shim.' diff --git a/packages/webdriverio/src/commands/element/shadow$.ts b/packages/webdriverio/src/commands/element/shadow$.ts index 0848086ef..cc7beea84 100644 --- a/packages/webdriverio/src/commands/element/shadow$.ts +++ b/packages/webdriverio/src/commands/element/shadow$.ts @@ -46,7 +46,7 @@ export async function shadow$ ( const { using, value } = findStrategy(selector as string, this.isW3C, this.isMobile) const res = await browser.findElementFromShadowRoot(shadowRoot[SHADOW_ELEMENT_KEY], using, value) return getElement.call(this, selector as string, res, { isShadowElement: true }) - } catch (err: unknown) { + } catch (err) { log.warn( `Failed to fetch element within shadow DOM using WebDriver command: ${(err as Error).message}!\n` + 'Falling back to JavaScript shim.' diff --git a/packages/webdriverio/src/context.ts b/packages/webdriverio/src/context.ts index 4b228bafd..176f710af 100644 --- a/packages/webdriverio/src/context.ts +++ b/packages/webdriverio/src/context.ts @@ -50,7 +50,7 @@ export class ContextManager { * which is WebDriver Classic only */ if (event.command === 'switchToWindow') { - this.setCurrentContext(event.body.handle) + this.setCurrentContext((event.body as { handle: string }).handle) } /** @@ -69,7 +69,7 @@ export class ContextManager { * Keep track of the context to which we switch */ if (this.#browser.isMobile && event.command === 'switchContext') { - this.#mobileContext = event.body.name + this.#mobileContext = (event.body as { name: string }).name } }) @@ -88,11 +88,11 @@ export class ContextManager { if (this.#browser.isMobile) { if (event.command === 'getContext') { - this.setCurrentContext(event.result.value) + this.setCurrentContext((event.result as { value: string }).value) } if ( event.command === 'switchContext' && - event.result.value === null && + (event.result as { value: string | null }).value === null && this.#mobileContext ) { this.setCurrentContext(this.#mobileContext) diff --git a/packages/webdriverio/src/index.cts b/packages/webdriverio/src/index.cts index 6805e0682..57531ae45 100644 --- a/packages/webdriverio/src/index.cts +++ b/packages/webdriverio/src/index.cts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ exports.SevereServiceError = class SevereServiceError extends Error { constructor(message = 'Severe Service Error occurred.') { super(message) diff --git a/packages/webdriverio/src/index.ts b/packages/webdriverio/src/index.ts index f0f004e00..83af44af9 100644 --- a/packages/webdriverio/src/index.ts +++ b/packages/webdriverio/src/index.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import logger from '@wdio/logger' import WebDriver, { DEFAULTS } from 'webdriver' diff --git a/packages/webdriverio/src/middlewares.ts b/packages/webdriverio/src/middlewares.ts index 4836fbff6..a9fc6a3ba 100644 --- a/packages/webdriverio/src/middlewares.ts +++ b/packages/webdriverio/src/middlewares.ts @@ -14,7 +14,7 @@ const COMMANDS_TO_SKIP = ['getElement', 'getElements'] * @param {Function} fn command shim */ export const elementErrorHandler = (fn: Function) => (commandName: string, commandFn: Function) => { - return function elementErrorHandlerCallback (this: WebdriverIO.Element, ...args: any[]) { + return function elementErrorHandlerCallback (this: WebdriverIO.Element, ...args: unknown[]) { return fn(commandName, async function elementErrorHandlerCallbackFn (this: WebdriverIO.Element) { if (COMMANDS_TO_SKIP.includes(commandName)) { return fn(commandName, commandFn).apply(this, args) @@ -40,16 +40,17 @@ export const elementErrorHandler = (fn: Function) => (commandName: string, comma } return result - } catch (err: any) { + } catch (_err: unknown) { + const err = _err as Error if (err.name === 'element not interactable') { try { await element.waitForClickable() return await fn(commandName, commandFn).apply(this, args) - } catch (error) { + } catch { const elementHTML = await element.getHTML() err.name = 'webdriverio(middleware): element did not become interactable' err.message = `Element ${elementHTML} did not become interactable` - err.stack = err.stack ?? Error.captureStackTrace(err) + err.stack = err.stack ?? Error.captureStackTrace(err) ?? '' } } @@ -72,7 +73,7 @@ export const elementErrorHandler = (fn: Function) => (commandName: string, comma export const multiremoteHandler = ( wrapCommand: Function ) => (commandName: keyof WebdriverIO.Browser) => { - return wrapCommand(commandName, function (this: WebdriverIO.MultiRemoteBrowser, ...args: any[]) { + return wrapCommand(commandName, function (this: WebdriverIO.MultiRemoteBrowser, ...args: unknown[]) { // @ts-ignore const commandResults = this.instances.map((instanceName: string) => { // @ts-ignore ToDo(Christian) diff --git a/packages/webdriverio/src/multiremote.ts b/packages/webdriverio/src/multiremote.ts index 8e19b177b..b8ecdcbd3 100644 --- a/packages/webdriverio/src/multiremote.ts +++ b/packages/webdriverio/src/multiremote.ts @@ -6,9 +6,9 @@ import type { ProtocolCommands } from '@wdio/protocols' import { multiremoteHandler } from './middlewares.js' import { getPrototype } from './utils/index.js' -import type { BrowserCommandsType } from './types.js' +import type { BrowserCommandsType, WebdriverIOEventMap } from './types.js' -type EventEmitter = (args: any) => void +type EventEmitter = (args: unknown) => void /** * Multiremote class @@ -21,8 +21,8 @@ export default class MultiRemote { /** * add instance to multibrowser instance */ - async addInstance (browserName: string, client: any) { - this.instances[browserName] = await client as WebdriverIO.Browser + async addInstance (browserName: string, client: WebdriverIO.Browser) { + this.instances[browserName] = client return this.instances[browserName] } @@ -79,7 +79,7 @@ export default class MultiRemote { */ static elementWrapper ( instances: Record, - result: any, + result: unknown, propertiesObject: Record, scope: MultiRemote ): WebdriverIO.MultiRemoteElement { @@ -96,7 +96,9 @@ export default class MultiRemote { client.instances = Object.keys(instances) client.isMultiremote = true - client.selector = result[0] ? result[0].selector : null + client.selector = Array.isArray(result) && result[0] + ? result[0].selector + : null // @ts-expect-error ToDo(Christian): remove eventually delete client.sessionId return client @@ -122,7 +124,7 @@ export default class MultiRemote { } } - return wrapCommand(commandName, async function (this: WebdriverIO.MultiRemoteBrowser | WebdriverIO.MultiRemoteElement, ...args: any[]) { + return wrapCommand(commandName, async function (this: WebdriverIO.MultiRemoteBrowser | WebdriverIO.MultiRemoteElement, ...args: unknown[]) { const mElem = this as WebdriverIO.MultiRemoteElement const scope = (this as WebdriverIO.MultiRemoteElement).selector ? Object.entries(mElem.instances.reduce((ins, instanceName) => ( @@ -159,7 +161,7 @@ export default class MultiRemote { /* istanbul ignore next */ export class MultiRemoteDriver { instances: string[] - isMultiremote = true as true + isMultiremote = true as const __propertiesObject__: Record constructor ( @@ -170,17 +172,17 @@ export class MultiRemoteDriver { this.__propertiesObject__ = propertiesObject } - on (this: WebdriverIO.MultiRemoteBrowser, eventName: any, emitter: EventEmitter) { + on (this: WebdriverIO.MultiRemoteBrowser, eventName: keyof WebdriverIOEventMap, emitter: EventEmitter) { this.instances.forEach((instanceName) => this.getInstance(instanceName).on(eventName, emitter)) - return undefined as any + return undefined } - once (this: WebdriverIO.MultiRemoteBrowser, eventName: any, emitter: EventEmitter) { + once (this: WebdriverIO.MultiRemoteBrowser, eventName: keyof WebdriverIOEventMap, emitter: EventEmitter) { this.instances.forEach((instanceName) => this.getInstance(instanceName).once(eventName, emitter)) - return undefined as any + return undefined } - emit (this: WebdriverIO.MultiRemoteBrowser, eventName: string, emitter: EventEmitter) { + emit (this: WebdriverIO.MultiRemoteBrowser, eventName: keyof WebdriverIOEventMap, emitter: EventEmitter) { return this.instances.map( (instanceName) => this.getInstance(instanceName).emit(eventName, emitter) ).some(Boolean) @@ -189,19 +191,19 @@ export class MultiRemoteDriver { eventNames (this: WebdriverIO.MultiRemoteBrowser) { return this.instances.map( (instanceName) => this.getInstance(instanceName).eventNames() - ) as any // special behavior of event methods for multiremote + ) } getMaxListeners (this: WebdriverIO.MultiRemoteBrowser) { return this.instances.map( (instanceName) => this.getInstance(instanceName).getMaxListeners() - ) as any as number // special behavior of event methods for multiremote + ) } listenerCount (this: WebdriverIO.MultiRemoteBrowser, eventName: string) { return this.instances.map( (instanceName) => this.getInstance(instanceName).listenerCount(eventName) - ) as any as number // special behavior of event methods for multiremote + ) } listeners (this: WebdriverIO.MultiRemoteBrowser, eventName: string) { @@ -215,11 +217,11 @@ export class MultiRemoteDriver { removeListener (this: WebdriverIO.MultiRemoteBrowser, eventName: string, emitter: EventEmitter) { this.instances.forEach((instanceName) => this.getInstance(instanceName).removeListener(eventName, emitter)) - return undefined as any + return undefined } removeAllListeners (this: WebdriverIO.MultiRemoteBrowser, eventName: string) { this.instances.forEach((instanceName) => this.getInstance(instanceName).removeAllListeners(eventName)) - return undefined as any + return undefined } } diff --git a/packages/webdriverio/src/networkManager.ts b/packages/webdriverio/src/networkManager.ts index 22ece7635..430c7755d 100644 --- a/packages/webdriverio/src/networkManager.ts +++ b/packages/webdriverio/src/networkManager.ts @@ -191,6 +191,7 @@ export class NetworkManager { response.url = log.response.url const { headers: requestHeaders } = log.request const { fromCache, headers: responseHeaders, mimeType, status } = log.response + // eslint-disable-next-line @typescript-eslint/no-unused-expressions response.headers = headerListToObject(requestHeaders), response.response = { fromCache, diff --git a/packages/webdriverio/src/protocol-stub.ts b/packages/webdriverio/src/protocol-stub.ts index ceda11bd8..f3436682c 100644 --- a/packages/webdriverio/src/protocol-stub.ts +++ b/packages/webdriverio/src/protocol-stub.ts @@ -11,22 +11,24 @@ export default class ProtocolStub { static async newSession (options: Capabilities.RemoteConfig) { const capabilities = emulateSessionCapabilities(options.capabilities) - const browser: any = { + const browser = { options, capabilities, requestedCapabilities: capabilities, - customCommands: [], // internally used to transfer custom commands to the actual protocol instance - overwrittenCommands: [], // internally used to transfer overwritten commands to the actual protocol instance + customCommands: [] as unknown[], // internally used to transfer custom commands to the actual protocol instance + overwrittenCommands: [] as unknown[], // internally used to transfer overwritten commands to the actual protocol instance commandList: [], getWindowHandle: NOOP, on: NOOP, off: NOOP, + addCommand: NOOP, + overwriteCommand: NOOP, ...capabilitiesEnvironmentDetector(capabilities) } - browser.addCommand = (...args: any) => browser.customCommands.push(args) - browser.overwriteCommand = (...args: any) => browser.overwrittenCommands.push(args) - return browser + browser.addCommand = (...args: unknown[]) => browser.customCommands.push(args) + browser.overwriteCommand = (...args: unknown[]) => browser.overwrittenCommands.push(args) + return browser as unknown as WebdriverIO.Browser } /** @@ -57,7 +59,7 @@ export default class ProtocolStub { * @return {object} */ function emulateSessionCapabilities (caps: Capabilities.RequestedStandaloneCapabilities) { - const capabilities: Record = {} + const capabilities: Record = {} // remove appium vendor prefix from capabilities Object.entries(caps).forEach(([key, value]) => { diff --git a/packages/webdriverio/src/scripts/customElement.ts b/packages/webdriverio/src/scripts/customElement.ts index 03d3a2381..0f5fa863a 100644 --- a/packages/webdriverio/src/scripts/customElement.ts +++ b/packages/webdriverio/src/scripts/customElement.ts @@ -4,7 +4,7 @@ interface EnhancedHTMLElement extends HTMLElement { } interface CustomElementConstructor { - new (...params: any[]): EnhancedHTMLElement; + new (...params: unknown[]): EnhancedHTMLElement; } export default function customElementWrapper () { diff --git a/packages/webdriverio/src/scripts/getHTMLShadow.ts b/packages/webdriverio/src/scripts/getHTMLShadow.ts index d3624c811..8675fc7b1 100644 --- a/packages/webdriverio/src/scripts/getHTMLShadow.ts +++ b/packages/webdriverio/src/scripts/getHTMLShadow.ts @@ -35,7 +35,7 @@ export default function getHTMLShadow ( /** * otherwise, we look up the registered shadow styles and html */ - const styles = Array.from((shadow as any as ShadowRoot).adoptedStyleSheets || []) + const styles = Array.from((shadow as unknown as ShadowRoot).adoptedStyleSheets || []) .map(({ cssRules }) => Array.from(cssRules)) .flat() .map(({ cssText }) => cssText) diff --git a/packages/webdriverio/src/scripts/getProperty.ts b/packages/webdriverio/src/scripts/getProperty.ts index dd42fcff6..793534fd7 100644 --- a/packages/webdriverio/src/scripts/getProperty.ts +++ b/packages/webdriverio/src/scripts/getProperty.ts @@ -4,6 +4,6 @@ * @param {string} property requested property * @return {String} the value of the property */ -export default function getProperty (element: any, property: string) { +export default function getProperty (element: Record, property: string) { return element[property] } diff --git a/packages/webdriverio/src/scripts/isElementClickable.ts b/packages/webdriverio/src/scripts/isElementClickable.ts index 7a02a078f..a3c1b1b4b 100644 --- a/packages/webdriverio/src/scripts/isElementClickable.ts +++ b/packages/webdriverio/src/scripts/isElementClickable.ts @@ -9,9 +9,9 @@ export default function isElementClickable (elem: HTMLElement) { } // Edge before switching to Chromium - const isOldEdge = !!(window as any).StyleMedia + const isOldEdge = !!(window as unknown as { StyleMedia: unknown }).StyleMedia // returns true for Chrome and Firefox and false for Safari, Edge and IE - const scrollIntoViewFullSupport = !((window as any).safari || isOldEdge) + const scrollIntoViewFullSupport = !((window as { safari?: boolean }).safari || isOldEdge) // get overlapping element function getOverlappingElement (elem: HTMLElement, context?: Document) { @@ -75,7 +75,7 @@ export default function isElementClickable (elem: HTMLElement) { // @ts-ignore let elemsWithShadowRoot = [].concat(elementsFromPoint) elemsWithShadowRoot = elemsWithShadowRoot.filter(function (x: HTMLElement) { - return x && x.shadowRoot && (x.shadowRoot as any).elementFromPoint + return x && x.shadowRoot && (x.shadowRoot as ShadowRoot).elementFromPoint }) // getOverlappingElements of every element with shadowRoot @@ -83,7 +83,7 @@ export default function isElementClickable (elem: HTMLElement) { for (let i = 0; i < elemsWithShadowRoot.length; ++i) { const shadowElement = elemsWithShadowRoot[i] shadowElementsFromPoint = shadowElementsFromPoint.concat( - getOverlappingElements(elem, (shadowElement as HTMLElement).shadowRoot as any) as any + getOverlappingElements(elem, (shadowElement as HTMLElement).shadowRoot as unknown as Document) as HTMLElement[] ) } // remove duplicates and parents @@ -122,7 +122,7 @@ export default function isElementClickable (elem: HTMLElement) { } function hasOverlaps(elem: HTMLElement) { - return !isOverlappingElementMatch(getOverlappingElements(elem) as any as HTMLElement[], elem) + return !isOverlappingElementMatch(getOverlappingElements(elem) as unknown as HTMLElement[], elem) } function isFullyDisplayedInViewport(elem: HTMLElement) { diff --git a/packages/webdriverio/src/scripts/isElementStable.ts b/packages/webdriverio/src/scripts/isElementStable.ts index 52b75b528..daf5ae289 100644 --- a/packages/webdriverio/src/scripts/isElementStable.ts +++ b/packages/webdriverio/src/scripts/isElementStable.ts @@ -22,7 +22,7 @@ export default function isElementStable(elem: HTMLElement, done: (returnValue: b done(true) }) }) - } catch (error) { + } catch { done(false) } -} \ No newline at end of file +} diff --git a/packages/webdriverio/src/scripts/resq.ts b/packages/webdriverio/src/scripts/resq.ts index 94c57ec44..a31b07c96 100644 --- a/packages/webdriverio/src/scripts/resq.ts +++ b/packages/webdriverio/src/scripts/resq.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type resq from 'resq' interface CustomWindow extends Window { @@ -12,9 +13,9 @@ export const waitToLoadReact = function waitToLoadReact () { export const react$ = function react$ ( selector: string, - props: any[], - state: Record, - reactElement: HTMLElement + props: Record, + state: Record, + reactElement?: HTMLElement ) { props = props || {} state = state || {} @@ -38,15 +39,15 @@ export const react$ = function react$ ( // resq returns an array of HTMLElements if the React component is a fragment // if the element is a fragment, we return the first child to be passed into the driver return element.isFragment && element.node - ? (element.node as any as HTMLElement[])[0] + ? (element.node as unknown as HTMLElement[])[0] : element.node } export const react$$ = function react$$ ( selector: string, - props: any[], - state: Record, - reactElement: HTMLElement + props: Record, + state: Record, + reactElement?: HTMLElement ) { let elements = window.resq.resq$$(selector, reactElement) diff --git a/packages/webdriverio/src/shadowRoot.ts b/packages/webdriverio/src/shadowRoot.ts index baa654b7c..09510eff5 100644 --- a/packages/webdriverio/src/shadowRoot.ts +++ b/packages/webdriverio/src/shadowRoot.ts @@ -73,11 +73,12 @@ export class ShadowRootManager { /** * keep track of frame depth */ - #commandResultHandler (result: { command: string, result: any }) { - if (result.command === 'switchToFrame' && !result.result.error) { + #commandResultHandler (result: { command: string, result: unknown }) { + const noResultError = typeof result.result === 'object' && result.result && 'error' in result.result && !result.result.error + if (result.command === 'switchToFrame' && noResultError) { this.#frameDepth++ } - if (result.command === 'switchToParentFrame' && !result.result.error) { + if (result.command === 'switchToParentFrame' && noResultError) { this.#frameDepth = Math.max(0, this.#frameDepth - 1) } } @@ -172,9 +173,11 @@ export class ShadowRootManager { shadowElem.value.shadowRoot.sharedId, shadowElem.value.shadowRoot.value.mode ) - rootElem.sharedId - ? tree.addShadowElement(rootElem.sharedId, newTree) - : tree.addShadowElement(newTree) + if (rootElem.sharedId) { + tree.addShadowElement(rootElem.sharedId, newTree) + } else { + tree.addShadowElement(newTree) + } return } diff --git a/packages/webdriverio/src/types.ts b/packages/webdriverio/src/types.ts index 719b84c82..5644dd82a 100644 --- a/packages/webdriverio/src/types.ts +++ b/packages/webdriverio/src/types.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import type { EventEmitter } from 'node:events' import type { remote, SessionFlags, AttachOptions as WebDriverAttachOptions, BidiHandler, EventMap } from 'webdriver' import type { Capabilities, Options, ThenArg } from '@wdio/types' @@ -278,7 +279,7 @@ export interface BrowserBase extends InstanceBase, CustomInstanceCommands + state?: Record } export type MoveToOptions = { diff --git a/packages/webdriverio/src/utils/Timer.ts b/packages/webdriverio/src/utils/Timer.ts index f4d101267..830f20625 100644 --- a/packages/webdriverio/src/utils/Timer.ts +++ b/packages/webdriverio/src/utils/Timer.ts @@ -11,6 +11,7 @@ const NOOP = () => {} * @return {promise} Promise-based Timer. */ class Timer { + #retPromise: Promise private _conditionExecutedCnt = 0 private _resolve: Function = NOOP private _reject: Function = NOOP @@ -27,14 +28,20 @@ class Timer { private _fn: Function, private _leading = false ) { - const retPromise = new Promise((resolve, reject) => { + this.#retPromise = new Promise((resolve, reject) => { this._resolve = resolve this._reject = reject }) this._start() + } - return retPromise as any + then (thennable?: (result: boolean) => void, catchable?: (reason: Error) => boolean) { + return this.#retPromise.then(thennable, catchable) + } + + catch (catchable?: (reason: Error) => ReturnValue): Promise { + return this.#retPromise.catch(catchable) as Promise } private _start () { @@ -85,15 +92,15 @@ class Timer { } result.then( - (res: any) => this._checkCondition(undefined, res), + (res: unknown) => this._checkCondition(undefined, res), (err: Error) => this._checkCondition(err) ) - } catch (err: unknown) { + } catch (err) { return this._checkCondition(err as Error) } } - private _checkCondition (err?: Error, res?: any) { + private _checkCondition (err?: Error, res?: unknown) { ++this._conditionExecutedCnt this._lastError = err diff --git a/packages/webdriverio/src/utils/actions/base.ts b/packages/webdriverio/src/utils/actions/base.ts index 8d206ebf5..8b7d25ae0 100644 --- a/packages/webdriverio/src/utils/actions/base.ts +++ b/packages/webdriverio/src/utils/actions/base.ts @@ -1,4 +1,5 @@ import { ELEMENT_KEY } from 'webdriver' +import type { ElementReference } from '@wdio/protocols' export type ActionType = 'key' | 'pointer' | 'wheel' export type KeyActionType = 'mouse' | 'pen' | 'touch' @@ -10,6 +11,13 @@ export interface BaseActionParams { parameters?: ActionParameters } +interface Sequence { + type: string + duration?: number + origin?: (ElementReference | WebdriverIO.Element | 'pointer' | 'viewport') & { then?: Function } + value?: string +} + let actionIds = 0 export default class BaseAction { @@ -17,7 +25,7 @@ export default class BaseAction { #type: ActionType #parameters: ActionParameters #instance: WebdriverIO.Browser - protected sequence: any[] = [] + protected sequence: Sequence[] = [] constructor ( protected instance: WebdriverIO.Browser, @@ -69,7 +77,7 @@ export default class BaseAction { * resolve promise element */ if (typeof seq.origin.then === 'function') { - await seq.origin.waitForExist() + await (seq.origin as WebdriverIO.Element).waitForExist() seq.origin = await seq.origin } diff --git a/packages/webdriverio/src/utils/actions/pointer.ts b/packages/webdriverio/src/utils/actions/pointer.ts index c11b442d8..27890092b 100644 --- a/packages/webdriverio/src/utils/actions/pointer.ts +++ b/packages/webdriverio/src/utils/actions/pointer.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-dupe-class-members */ import type { ElementReference } from '@wdio/protocols' import type { BaseActionParams, KeyActionType } from './base.js' import BaseAction from './base.js' @@ -48,7 +47,7 @@ const MOVE_PARAM_DEFAULTS = { type PointerActionParams = Partial & Partial type PointerActionMoveParams = Partial & PointerActionParams -function removeDefaultParams(seq: Record) { +function removeDefaultParams(seq: Record) { for (const [key, value] of Object.entries(seq)) { if (value === 0 && !['x', 'y', 'button', 'duration'].includes(key)) { delete seq[key] diff --git a/packages/webdriverio/src/utils/bidi/constants.ts b/packages/webdriverio/src/utils/bidi/constants.ts index a5612064f..722f11a27 100644 --- a/packages/webdriverio/src/utils/bidi/constants.ts +++ b/packages/webdriverio/src/utils/bidi/constants.ts @@ -7,6 +7,7 @@ export enum PrimitiveType { Null = 'null', String = 'string', Number = 'number', + // eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values SpecialNumber = 'number', Boolean = 'boolean', BigInt = 'bigint' diff --git a/packages/webdriverio/src/utils/bidi/index.ts b/packages/webdriverio/src/utils/bidi/index.ts index 500a2ac07..ad1c9d4b3 100644 --- a/packages/webdriverio/src/utils/bidi/index.ts +++ b/packages/webdriverio/src/utils/bidi/index.ts @@ -18,24 +18,24 @@ export function parseScriptResult(params: remote.ScriptCallFunctionParameters, r } export function deserializeValue(result: remote.ScriptLocalValue) { - // @ts-expect-error - const { type, value } = result + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const { type, value } = result as any if (type === NonPrimitiveType.RegularExpression) { return new RegExp(value.pattern, value.flags) } if (type === NonPrimitiveType.Array) { - return value.map((element: any) => deserializeValue(element)) + return value.map((element: remote.ScriptLocalValue) => deserializeValue(element)) } if (type === NonPrimitiveType.Date) { return new Date(value) } if (type === NonPrimitiveType.Map) { - return new Map(value.map(([key, value]: [any, any]) => ( + return new Map(value.map(([key, value]: [string, remote.ScriptLocalValue]) => ( [typeof key === 'string' ? key : deserializeValue(key), deserializeValue(value)] ))) } if (type === NonPrimitiveType.Set) { - return new Set(value.map((element: any) => deserializeValue(element))) + return new Set(value.map((element: remote.ScriptLocalValue) => deserializeValue(element))) } if (type === PrimitiveType.Number && value === 'NaN') { return NaN @@ -56,12 +56,12 @@ export function deserializeValue(result: remote.ScriptLocalValue) { return null } if (type === NonPrimitiveType.Object) { - return Object.fromEntries((value || []).map(([key, value]: [any, any]) => { + return Object.fromEntries((value || []).map(([key, value]: [string, remote.ScriptLocalValue]) => { return [typeof key === 'string' ? key : deserializeValue(key), deserializeValue(value)] })) } if (type === RemoteType.Node) { - return { [ELEMENT_KEY]: (result as any).sharedId } + return { [ELEMENT_KEY]: (result as { sharedId: string }).sharedId } } if (type === RemoteType.Error) { return new Error('') diff --git a/packages/webdriverio/src/utils/bidi/value.ts b/packages/webdriverio/src/utils/bidi/value.ts index 96038c959..7069cfa0b 100644 --- a/packages/webdriverio/src/utils/bidi/value.ts +++ b/packages/webdriverio/src/utils/bidi/value.ts @@ -1,4 +1,6 @@ import { ELEMENT_KEY, type remote } from 'webdriver' +import type { ElementReference } from '@wdio/protocols' + import { PrimitiveType, NonPrimitiveType } from './constants.js' const TYPE_CONSTANT = 'type' @@ -106,7 +108,7 @@ export class LocalValue { * @param {BigInt} value - The BigInt value. * @returns {LocalValue} - The created LocalValue object. */ - static createBigIntValue(value: BigInt) { + static createBigIntValue(value: bigint) { return new LocalValue(PrimitiveType.BigInt, value) } @@ -172,7 +174,7 @@ export class LocalValue { * @param {Set} value - The value to be set. * @returns {LocalValue} - The created LocalValue object. */ - static createSetValue(value: ([unknown, unknown] | LocalValue)[]) { + static createSetValue(value: ([unknown, unknown] | ReferenceValue | LocalValue)[]) { return new LocalValue(NonPrimitiveType.Set, value) } @@ -190,25 +192,25 @@ export class LocalValue { return new ReferenceValue(handle, sharedId) } - static getArgument(argument: any) { + static getArgument(argument: unknown) { const type = typeof argument switch (type) { case PrimitiveType.String: - return LocalValue.createStringValue(argument) + return LocalValue.createStringValue(argument as string) case PrimitiveType.Number: if ( Number.isNaN(argument) || Object.is(argument, -0) || !Number.isFinite(argument) ) { - return LocalValue.createSpecialNumberValue(argument) + return LocalValue.createSpecialNumberValue(argument as number) } - return LocalValue.createNumberValue(argument) + return LocalValue.createNumberValue(argument as number) case PrimitiveType.Boolean: - return LocalValue.createBooleanValue(argument) + return LocalValue.createBooleanValue(argument as boolean) case PrimitiveType.BigInt: - return LocalValue.createBigIntValue(argument.toString()) + return LocalValue.createBigIntValue(argument as bigint) case PrimitiveType.Undefined: return LocalValue.createUndefinedValue() case NonPrimitiveType.Object: @@ -231,14 +233,14 @@ export class LocalValue { return new LocalValue(NonPrimitiveType.Map, map) } if (argument instanceof Set) { - const set: (any | LocalValue)[] = [] + const set: (ReferenceValue | LocalValue)[] = [] argument.forEach((value) => { set.push(LocalValue.getArgument(value)) }) return LocalValue.createSetValue(set) } if (argument instanceof Array) { - const arr: (any | LocalValue)[] = [] + const arr: (ReferenceValue | LocalValue)[] = [] argument.forEach((value) => { arr.push(LocalValue.getArgument(value)) }) @@ -250,14 +252,14 @@ export class LocalValue { flags: argument.flags, }) } - if (ELEMENT_KEY in argument) { + if (argument && ELEMENT_KEY in (argument as ElementReference)) { return LocalValue.createReferenceValue( RemoteReferenceType.SharedId, - argument[ELEMENT_KEY] + (argument as ElementReference)[ELEMENT_KEY] ) } - return LocalValue.createObjectValue(argument) + return LocalValue.createObjectValue(argument as Record) } throw new Error(`Unsupported type: ${type}`) diff --git a/packages/webdriverio/src/utils/index.ts b/packages/webdriverio/src/utils/index.ts index ab468a26d..6fb09ac2d 100644 --- a/packages/webdriverio/src/utils/index.ts +++ b/packages/webdriverio/src/utils/index.ts @@ -102,8 +102,8 @@ export const getElementFromResponse = (res?: ElementReference) => { /** * deprecated JSONWireProtocol response */ - if ((res as any).ELEMENT) { - return (res as any as { ELEMENT: string }).ELEMENT + if ((res as unknown as { ELEMENT: string }).ELEMENT) { + return (res as unknown as { ELEMENT: string }).ELEMENT } /** @@ -174,7 +174,7 @@ export function parseCSS (cssPropertyValue: string, cssProperty?: string) { if (parsedValue.parsed.type && parsedValue.parsed.type === 'number' && parsedValue.parsed.unit === '') { parsedValue.value = parsedValue.parsed.value } - } catch (err: any) { + } catch { // TODO improve css-parse lib to handle properties like // `-webkit-animation-timing-function : cubic-bezier(0.25, 0.1, 0.25, 1) } @@ -212,13 +212,14 @@ function fetchElementByJSFunction ( referenceId?: string ): Promise { if (!('elementId' in scope)) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any return scope.execute(selector as any, referenceId) } /** * use a regular function because IE does not understand arrow functions */ const script = (function (elem: HTMLElement, id: string) { - return (selector as any as Function).call(elem, id) + return (selector as unknown as Function).call(elem, id) }).toString().replace('selector', `(${selector.toString()})`) const args: (WebdriverIO.Element | string)[] = [scope as WebdriverIO.Element] if (referenceId) { @@ -461,7 +462,7 @@ export async function findElement( false, selector.slice(DEEP_SELECTOR.length), // hard conversion from element id to Element is done by browser driver - ((this as WebdriverIO.Element).elementId ? this : undefined) as any as Element | Document + ((this as WebdriverIO.Element).elementId ? this : undefined) as unknown as Element | Document ) elem = Array.isArray(elem) ? elem[0] : elem return getElementFromResponse(elem) ? elem : notFoundError @@ -485,8 +486,8 @@ export async function findElement( const { using, value } = findStrategy(selector as string, this.isW3C, this.isMobile) return (this as WebdriverIO.Element).elementId // casting to any necessary given weak type support of protocol commands - ? this.findElementFromElement((this as WebdriverIO.Element).elementId, using, value) as any as ElementReference - : this.findElement(using, value) as any as ElementReference + ? this.findElementFromElement((this as WebdriverIO.Element).elementId, using, value) as unknown as ElementReference + : this.findElement(using, value) as unknown as ElementReference } /** @@ -510,7 +511,7 @@ export async function findElement( const notFoundError = new Error('DOM Node couldn\'t be found anymore') const uid = Math.random().toString().slice(2) window.__wdio_element[uid] = selector as HTMLElement - selector = ((id: string) => window.__wdio_element[id]) as any as ElementFunction + selector = ((id: string) => window.__wdio_element[id]) as unknown as ElementFunction let elem = await fetchElementByJSFunction(selector, this, uid).catch((err) => { /** * WebDriver throws a stale element reference error if the element is not found @@ -546,7 +547,7 @@ export async function findElements( true, selector.slice(DEEP_SELECTOR.length), // hard conversion from element id to Element is done by browser driver - ((this as WebdriverIO.Element).elementId ? this : undefined) as any as Element | Document + ((this as WebdriverIO.Element).elementId ? this : undefined) as unknown as Element | Document ) const elemArray = Array.isArray(elems) ? elems : [elems] return elemArray.filter((elem) => elem && getElementFromResponse(elem)) @@ -569,8 +570,8 @@ export async function findElements( const { using, value } = findStrategy(selector as string, this.isW3C, this.isMobile) return (this as WebdriverIO.Element).elementId // casting to any necessary given weak type support of protocol commands - ? this.findElementsFromElement((this as WebdriverIO.Element).elementId, using, value) as any as ElementReference[] - : this.findElements(using, value) as any as ElementReference[] + ? this.findElementsFromElement((this as WebdriverIO.Element).elementId, using, value) as unknown as ElementReference[] + : this.findElements(using, value) as unknown as ElementReference[] } /** @@ -588,8 +589,8 @@ export async function findElements( /** * Strip element object and return w3c and jsonwp compatible keys */ -export function verifyArgsAndStripIfElement(args: any) { - function verify (arg: any) { +export function verifyArgsAndStripIfElement(args: unknown) { + function verify (arg: unknown) { if (arg && typeof arg === 'object' && arg.constructor.name === 'Element') { const elem = arg as WebdriverIO.Element if (!elem.elementId) { @@ -633,7 +634,7 @@ export async function getElementRect(scope: WebdriverIO.Element) { width, height } - }, scope as any as HTMLElement) + }, scope as unknown as HTMLElement) // try set proper value Object.keys(defaults).forEach((key: keyof typeof defaults) => { @@ -678,7 +679,7 @@ export function validateUrl (url: string, origError?: Error): string { try { const urlObject = new URL(url) return urlObject.href - } catch (err: any) { + } catch { /** * if even adding http:// doesn't help, fail with original error */ @@ -740,7 +741,7 @@ export const enhanceElementsArray = ( parent: WebdriverIO.Browser | WebdriverIO.Element, selector: Selector | ElementReference[] | WebdriverIO.Element[], foundWith = '$$', - props: any[] = [] + props: unknown[] = [] ) => { /** * as we enhance the element array in this method we need to cast its @@ -772,7 +773,7 @@ export const enhanceElementsArray = ( /** * ToDo(Christian): typing fails here for unknown reason */ - elementArray[name] = fn.bind(null, elementArray as any) + elementArray[name] = fn.bind(null, elementArray as unknown) } elementArray.parent = parent diff --git a/packages/webdriverio/src/utils/interception/index.ts b/packages/webdriverio/src/utils/interception/index.ts index 147130cef..6268d54a8 100644 --- a/packages/webdriverio/src/utils/interception/index.ts +++ b/packages/webdriverio/src/utils/interception/index.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-dupe-class-members */ import EventEmitter from 'node:events' import logger from '@wdio/logger' @@ -318,7 +317,7 @@ export default class WebDriverInterception { const handle = await this.#browser.getWindowHandle() log.trace(`Restoring mock for ${handle}`) - SESSION_MOCKS[handle].delete(this as any) + SESSION_MOCKS[handle].delete(this as WebDriverInterception) if (this.#mockId) { await this.#browser.networkRemoveIntercept({ intercept: this.#mockId }) @@ -414,6 +413,7 @@ export default class WebDriverInterception { on(event: 'continue', callback: (requestId: string) => void): WebDriverInterception on(event: 'fail', callback: (requestId: string) => void): WebDriverInterception on(event: 'overwrite', callback: (response: local.NetworkResponseCompletedParameters) => void): WebDriverInterception + // eslint-disable-next-line @typescript-eslint/no-explicit-any on(event: string, callback: (...args: any[]) => void): WebDriverInterception { this.#emitter.on(event, callback) return this @@ -443,7 +443,7 @@ export default class WebDriverInterception { /* istanbul ignore next */ const fn = async () => this.calls && (await this.calls).length > 0 - const timer = new Timer(interval, timeout, fn, true) as any as Promise + const timer = new Timer(interval, timeout, fn, true) as unknown as Promise return this.#browser.call(() => timer.catch((e) => { if (e.message === 'timeout') { diff --git a/packages/webdriverio/src/utils/interception/types.ts b/packages/webdriverio/src/utils/interception/types.ts index 5f89b9630..9dcf3a859 100644 --- a/packages/webdriverio/src/utils/interception/types.ts +++ b/packages/webdriverio/src/utils/interception/types.ts @@ -12,6 +12,7 @@ type Overwrite = T | ((request: Request) => T) type Methods = 'POST' | 'GET' | 'DELETE' | 'PUT' | 'PATCH' | 'OPTIONS' | 'HEAD' export interface RequestWithOptions { + // eslint-disable-next-line @typescript-eslint/no-explicit-any body?: Overwrite cookies?: Overwrite headers?: Overwrite, local.NetworkBeforeRequestSentParameters> diff --git a/packages/webdriverio/src/utils/interception/utils.ts b/packages/webdriverio/src/utils/interception/utils.ts index 5d20ed305..646f15d28 100644 --- a/packages/webdriverio/src/utils/interception/utils.ts +++ b/packages/webdriverio/src/utils/interception/utils.ts @@ -14,7 +14,7 @@ export function parseOverwrite< overwrite: T, request: local.NetworkBeforeRequestSentParameters | local.NetworkResponseCompletedParameters ): Overwrite { - const result: Overwrite = {} as any + const result: Overwrite = {} as unknown as Overwrite if ('body' in overwrite && overwrite.body) { const bodyOverwrite = typeof overwrite.body === 'function' ? overwrite.body(request as local.NetworkBeforeRequestSentParameters) diff --git a/packages/webdriverio/src/utils/thirdParty/querySelectorShadowDom.ts b/packages/webdriverio/src/utils/thirdParty/querySelectorShadowDom.ts index c676003bc..f5b28613a 100644 --- a/packages/webdriverio/src/utils/thirdParty/querySelectorShadowDom.ts +++ b/packages/webdriverio/src/utils/thirdParty/querySelectorShadowDom.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ /* eslint-disable brace-style */ /* eslint-disable camelcase */ /* istanbul ignore file */ @@ -38,7 +39,6 @@ export default function querySelectorAllDeep (findMany: boolean, s: string, r: E prev_match_idx sel = sel.trim() - // eslint-disable-next-line no-constant-condition while (true) { unmatched = '' @@ -303,8 +303,9 @@ export default function querySelectorAllDeep (findMany: boolean, s: string, r: E } } } - if ((root as Element).shadowRoot) { - findAllElements((root as Element).shadowRoot?.querySelectorAll('*')!) + const shadowRoot = (root as Element).shadowRoot + if (shadowRoot) { + findAllElements(shadowRoot.querySelectorAll('*')!) } findAllElements(root.querySelectorAll('*')) } diff --git a/packages/webdriverio/tests/commands/browser/customSelectors.test.ts b/packages/webdriverio/tests/commands/browser/customSelectors.test.ts index 7ea9b0102..b006d29f9 100644 --- a/packages/webdriverio/tests/commands/browser/customSelectors.test.ts +++ b/packages/webdriverio/tests/commands/browser/customSelectors.test.ts @@ -29,7 +29,7 @@ describe('custom$', () => { expect(elems).toHaveLength(2) expect(typeof elems.selector).toBe('string') expect(typeof elems[0].selector).toBe('object') - expect(typeof (elems[0].selector as any as CustomStrategyReference).strategy).toBe('function') + expect(typeof (elems[0].selector as unknown as CustomStrategyReference).strategy).toBe('function') expect((elems[0].selector as CustomStrategyReference).strategyName).toBe('test') expect((elems[0].selector as CustomStrategyReference).strategyArguments).toHaveLength(1) expect((elems[0].selector as CustomStrategyReference).strategyArguments[0]).toBe('.test') diff --git a/packages/webdriverio/tests/commands/browser/emulate.test.ts b/packages/webdriverio/tests/commands/browser/emulate.test.ts index 8f6f1ee8d..870a362dd 100644 --- a/packages/webdriverio/tests/commands/browser/emulate.test.ts +++ b/packages/webdriverio/tests/commands/browser/emulate.test.ts @@ -28,7 +28,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() } - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) // @ts-expect-error missing argument @@ -53,7 +53,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() } - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) // @ts-expect-error invalid argument await expect(() => fakeScope.emulate('userAgent', 123)).rejects.toThrow(/Expected userAgent emulation options to be a string/) @@ -77,7 +77,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() } - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) // @ts-expect-error invalid argument @@ -108,7 +108,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() } - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) // @ts-expect-error invalid @@ -143,7 +143,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() }, - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) const clock = await fakeScope.emulate('clock', { now }) @@ -182,7 +182,7 @@ describe('emulate', () => { beforeCommand: vi.fn(), afterCommand: vi.fn() }, - } as any as WebdriverIO.Browser + } as unknown as WebdriverIO.Browser fakeScope.emulate = browser.emulate.bind(fakeScope) const restore = await fakeScope.emulate('device', 'iPhone 8') diff --git a/packages/webdriverio/tests/commands/browser/mockClearAll.test.ts b/packages/webdriverio/tests/commands/browser/mockClearAll.test.ts index 116c531b1..b11f7822e 100644 --- a/packages/webdriverio/tests/commands/browser/mockClearAll.test.ts +++ b/packages/webdriverio/tests/commands/browser/mockClearAll.test.ts @@ -9,11 +9,11 @@ vi.mock('../../../src/commands/browser/mock', () => { let clearedMocks = 0 const bumpCall = () => ++clearedMocks const SESSION_MOCKS: Record = {} - SESSION_MOCKS['foobar'] = new Set() - SESSION_MOCKS['foobar'].add({ clear: vi.fn(bumpCall) }) - SESSION_MOCKS['foobar'].add({ clear: vi.fn(bumpCall) }) - SESSION_MOCKS['barfoo'] = new Set() - SESSION_MOCKS['barfoo'].add({ clear: vi.fn(bumpCall) }) + SESSION_MOCKS.foobar = new Set() + SESSION_MOCKS.foobar.add({ clear: vi.fn(bumpCall) }) + SESSION_MOCKS.foobar.add({ clear: vi.fn(bumpCall) }) + SESSION_MOCKS.barfoo = new Set() + SESSION_MOCKS.barfoo.add({ clear: vi.fn(bumpCall) }) return { SESSION_MOCKS, getMockCalls: () => clearedMocks, default: vi.fn() } }) vi.mock('@wdio/logger', () => import(path.join(process.cwd(), '__mocks__', '@wdio/logger'))) diff --git a/packages/webdriverio/tests/commands/browser/mockRestoreAll.test.ts b/packages/webdriverio/tests/commands/browser/mockRestoreAll.test.ts index 3c8ef4f05..e783cacef 100644 --- a/packages/webdriverio/tests/commands/browser/mockRestoreAll.test.ts +++ b/packages/webdriverio/tests/commands/browser/mockRestoreAll.test.ts @@ -10,11 +10,11 @@ vi.mock('../../../src/commands/browser/mock', () => { let clearedMocks = 0 const bumpCall = () => ++clearedMocks const SESSION_MOCKS: Record = {} - SESSION_MOCKS['foobar'] = new Set() - SESSION_MOCKS['foobar'].add({ restore: vi.fn(bumpCall) }) - SESSION_MOCKS['foobar'].add({ restore: vi.fn(bumpCall) }) - SESSION_MOCKS['barfoo'] = new Set() - SESSION_MOCKS['barfoo'].add({ restore: vi.fn(bumpCall) }) + SESSION_MOCKS.foobar = new Set() + SESSION_MOCKS.foobar.add({ restore: vi.fn(bumpCall) }) + SESSION_MOCKS.foobar.add({ restore: vi.fn(bumpCall) }) + SESSION_MOCKS.barfoo = new Set() + SESSION_MOCKS.barfoo.add({ restore: vi.fn(bumpCall) }) return { SESSION_MOCKS, getMockCalls: () => clearedMocks, default: vi.fn() } }) diff --git a/packages/webdriverio/tests/commands/browser/restore.test.ts b/packages/webdriverio/tests/commands/browser/restore.test.ts index 2a08420ea..aa59a89f3 100644 --- a/packages/webdriverio/tests/commands/browser/restore.test.ts +++ b/packages/webdriverio/tests/commands/browser/restore.test.ts @@ -29,7 +29,7 @@ const fakeScope = { beforeCommand: vi.fn(), afterCommand: vi.fn() } -} as any as WebdriverIO.Browser +} as unknown as WebdriverIO.Browser const scopeBrowserA = { ...fakeScope, diff --git a/packages/webdriverio/tests/commands/element/customSelector.test.ts b/packages/webdriverio/tests/commands/element/customSelector.test.ts index 6d9511efd..f0d7cb778 100644 --- a/packages/webdriverio/tests/commands/element/customSelector.test.ts +++ b/packages/webdriverio/tests/commands/element/customSelector.test.ts @@ -29,7 +29,7 @@ describe('custom$', () => { // @ts-ignore mock feature browser.addLocatorStrategy('test', (selector: string, parent: string) => ( { 'element-6066-11e4-a52e-4f735466cecf': `${selector}-${parent}` } - ) as any as HTMLElement) + ) as unknown as HTMLElement) const elem = await browser.$('.foo') const custom = await elem.custom$('test', '.test') @@ -51,7 +51,7 @@ describe('custom$', () => { browser.addLocatorStrategy('test', () => [ { 'element-6066-11e4-a52e-4f735466cecf': 'some elem' }, { 'element-6066-11e4-a52e-4f735466cecf': 'some other elem' } - ] as any as HTMLElement[]) + ] as unknown as HTMLElement[]) const elem = await browser.$('.foo') const custom = await elem.custom$('test', '.test') @@ -62,7 +62,7 @@ describe('custom$', () => { browser.addLocatorStrategy('test', () => [ { 'element-6066-11e4-a52e-4f735466cecf': 'some elem' }, { 'element-6066-11e4-a52e-4f735466cecf': 'some other elem' } - ] as any as HTMLElement[]) + ] as unknown as HTMLElement[]) const elem = await browser.custom$('test', '.test') const custom = await elem.custom$('test', '.test') diff --git a/packages/webdriverio/tests/commands/element/customSelectors.test.ts b/packages/webdriverio/tests/commands/element/customSelectors.test.ts index 2c3eea784..c8986764c 100644 --- a/packages/webdriverio/tests/commands/element/customSelectors.test.ts +++ b/packages/webdriverio/tests/commands/element/customSelectors.test.ts @@ -22,7 +22,7 @@ describe('custom$', () => { browser.addLocatorStrategy('test', (selector: string, root: HTMLElement) => [ { 'element-6066-11e4-a52e-4f735466cecf': `${selector}-${root}` }, { 'element-6066-11e4-a52e-4f735466cecf': `${selector}-other-${root}` } - ] as any as HTMLElement[]) + ] as unknown as HTMLElement[]) const elem = await browser.$('#foo') const elems = await elem.custom$$('test', '.test') diff --git a/packages/webdriverio/tests/commands/element/waitForClickable.test.ts b/packages/webdriverio/tests/commands/element/waitForClickable.test.ts index ab8263841..42beea4a8 100644 --- a/packages/webdriverio/tests/commands/element/waitForClickable.test.ts +++ b/packages/webdriverio/tests/commands/element/waitForClickable.test.ts @@ -27,7 +27,7 @@ describe('waitForClickable', () => { elementId : 123, waitUntil : vi.fn(((cb))), options : { waitforInterval: 5, waitforTimeout: duration } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForClickable() @@ -44,7 +44,7 @@ describe('waitForClickable', () => { waitUntil : tmpElem.waitUntil, isClickable : vi.fn(() => true), options : { waitforTimeout : 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element const result = await elem.waitForClickable({ timeout: duration }) expect(result).toBe(true) @@ -62,7 +62,7 @@ describe('waitForClickable', () => { .mockImplementationOnce(() => false) .mockImplementationOnce(() => true), options : { waitforTimeout : 50, waitforInterval: 5 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element const result = await elem.waitForClickable({ timeout: duration }) expect(result).toBe(true) @@ -79,7 +79,7 @@ describe('waitForClickable', () => { waitUntil : tmpElem.waitUntil, isClickable : vi.fn(() => false), options : { waitforTimeout : 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForClickable({ timeout: duration }) @@ -118,7 +118,7 @@ describe('waitForClickable', () => { waitUntil : vi.fn(((cb))), isClickable : vi.fn(() => true), options : { waitforTimeout : 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForClickable({ reverse: true }) @@ -136,7 +136,7 @@ describe('waitForClickable', () => { waitUntil : tmpElem.waitUntil, isClickable : vi.fn(() => false), options : { waitforTimeout : 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForClickable({ timeout: duration, timeoutMsg: 'Element foo never clickable' }) diff --git a/packages/webdriverio/tests/commands/element/waitForDisplayed.test.ts b/packages/webdriverio/tests/commands/element/waitForDisplayed.test.ts index 54f3c31ae..19be864e6 100644 --- a/packages/webdriverio/tests/commands/element/waitForDisplayed.test.ts +++ b/packages/webdriverio/tests/commands/element/waitForDisplayed.test.ts @@ -30,7 +30,7 @@ describe('waitForDisplayed', () => { elementId: 123, waitUntil: vi.fn().mockImplementation(cb), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForDisplayed({ timeout }) expect(cb).toBeCalled() @@ -59,7 +59,7 @@ describe('waitForDisplayed', () => { .mockImplementationOnce(() => false) .mockImplementationOnce(() => true), options: { waitforTimeout: 50, waitforInterval: 5 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element const result = await elem.waitForDisplayed({ timeout }) expect(result).toBe(true) @@ -76,7 +76,7 @@ describe('waitForDisplayed', () => { waitUntil: tmpElem.waitUntil, isDisplayed: vi.fn(() => false), options: { waitforTimeout: 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForDisplayed({ timeout, withinViewport: true }) @@ -96,7 +96,7 @@ describe('waitForDisplayed', () => { waitUntil: tmpElem.waitUntil, isDisplayed: tmpElem.isDisplayed, options: { waitforTimeout: 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element // @ts-expect-error elem.getElement = () => Promise.resolve(elem) @@ -117,7 +117,7 @@ describe('waitForDisplayed', () => { waitUntil: vi.fn().mockImplementation(cb), isDisplayed: vi.fn(() => true), options: { waitforTimeout: 500, waitforInterval: 50 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForDisplayed({ reverse: true }) expect(vi.mocked(elem.waitUntil).mock.calls).toMatchSnapshot() @@ -134,7 +134,7 @@ describe('waitForDisplayed', () => { waitUntil: tmpElem.waitUntil, isDisplayed: vi.fn(() => false), options: { waitforTimeout: 500 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForDisplayed({ timeout, timeoutMsg: 'Element foo never displayed' }) diff --git a/packages/webdriverio/tests/commands/element/waitForEnabled.test.ts b/packages/webdriverio/tests/commands/element/waitForEnabled.test.ts index c3eabc12b..f6b5f5e96 100644 --- a/packages/webdriverio/tests/commands/element/waitForEnabled.test.ts +++ b/packages/webdriverio/tests/commands/element/waitForEnabled.test.ts @@ -29,7 +29,7 @@ describe('waitForEnabled', () => { elementId : null, waitUntil : vi.fn(), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForEnabled({ timeout }) expect(elem.waitForExist).toBeCalled() @@ -44,7 +44,7 @@ describe('waitForEnabled', () => { waitUntil : vi.fn(), isEnabled : vi.fn(() => Promise.resolve()), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForEnabled({ timeout }) expect(elem.waitForExist).not.toBeCalled() @@ -61,7 +61,7 @@ describe('waitForEnabled', () => { waitUntil : vi.fn(((cb))), isEnabled : vi.fn(() => Promise.resolve()), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForEnabled({ timeout }) @@ -79,7 +79,7 @@ describe('waitForEnabled', () => { waitUntil : tmpElem.waitUntil, isEnabled : vi.fn(() => true), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element const result = await elem.waitForEnabled({ timeout }) expect(result).toBe(true) @@ -95,7 +95,7 @@ describe('waitForEnabled', () => { waitUntil : tmpElem.waitUntil, isEnabled : vi.fn(() => false), options : { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForEnabled({ timeout }) @@ -115,7 +115,7 @@ describe('waitForEnabled', () => { waitUntil : vi.fn(((cb))), isEnabled : vi.fn(() => Promise.resolve()), options : { waitforInterval: 50, waitforTimeout: 500 } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForEnabled({ reverse: true }) expect(vi.mocked(elem.waitUntil).mock.calls).toMatchSnapshot() @@ -131,7 +131,7 @@ describe('waitForEnabled', () => { waitUntil : tmpElem.waitUntil, isEnabled : vi.fn(() => false), options : { waitforTimeout : 500 }, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element try { await elem.waitForEnabled({ diff --git a/packages/webdriverio/tests/commands/element/waitForExist.test.ts b/packages/webdriverio/tests/commands/element/waitForExist.test.ts index eff4ed183..d690baae0 100644 --- a/packages/webdriverio/tests/commands/element/waitForExist.test.ts +++ b/packages/webdriverio/tests/commands/element/waitForExist.test.ts @@ -27,7 +27,7 @@ describe('waitForExists', () => { waitForExist: tmpElem.waitForExist, waitUntil: vi.fn(), options: { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForExist() expect(vi.mocked(elem.waitUntil).mock.calls).toMatchSnapshot() @@ -39,7 +39,7 @@ describe('waitForExists', () => { waitForExist: tmpElem.waitForExist, waitUntil: vi.fn(), options: { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForExist({ timeout, diff --git a/packages/webdriverio/tests/commands/element/waitForStable.test.ts b/packages/webdriverio/tests/commands/element/waitForStable.test.ts index ea2783624..c3964396d 100644 --- a/packages/webdriverio/tests/commands/element/waitForStable.test.ts +++ b/packages/webdriverio/tests/commands/element/waitForStable.test.ts @@ -31,7 +31,7 @@ describe('waitForStable', () => { waitUntil: vi.fn(), options: { waitforInterval: 5, waitforTimeout: timeout }, selector, - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForStable() expect(vi.mocked(elem.waitUntil).mock.calls[0][1]?.interval).toEqual(5) @@ -45,7 +45,7 @@ describe('waitForStable', () => { waitForStable: tmpElem.waitForStable, waitUntil: vi.fn(), options: { waitforInterval: 5, waitforTimeout: timeout } - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element await elem.waitForStable({ timeout, diff --git a/packages/webdriverio/tests/module.test.ts b/packages/webdriverio/tests/module.test.ts index 594873098..d85dff67e 100644 --- a/packages/webdriverio/tests/module.test.ts +++ b/packages/webdriverio/tests/module.test.ts @@ -114,7 +114,7 @@ describe('WebdriverIO module interface', () => { automationProtocol: 'webdriver', capabilities: { browserName: 'chrome' } }) - const fakeFn = () => { return 'test' as any as HTMLElement } + const fakeFn = () => { return 'test' as unknown as HTMLElement } browser.addLocatorStrategy('test-strat', fakeFn) expect(browser.strategies.get('test-strat').toString()).toBe(fakeFn.toString()) @@ -129,7 +129,7 @@ describe('WebdriverIO module interface', () => { }) try { - const fakeFn = () => { return 'test' as any as HTMLElement } + const fakeFn = () => { return 'test' as unknown as HTMLElement } browser.addLocatorStrategy('test-strat', fakeFn) } catch (error: any) { browser.strategies.delete('test-strat') @@ -207,7 +207,7 @@ describe('WebdriverIO module interface', () => { } }) - const fakeFn = () => { return 'test' as any as HTMLElement } + const fakeFn = () => { return 'test' as unknown as HTMLElement } driver.addLocatorStrategy('test-strat', fakeFn) expect(driver.strategies.get('test-strat').toString()).toBe(fakeFn.toString()) }) @@ -223,7 +223,7 @@ describe('WebdriverIO module interface', () => { }) try { - const fakeFn = () => { return 'test' as any as HTMLElement } + const fakeFn = () => { return 'test' as unknown as HTMLElement } driver.addLocatorStrategy('test-strat', fakeFn) } catch (error: any) { driver.strategies.delete('test-strat') diff --git a/packages/webdriverio/tests/protocol-stub.test.ts b/packages/webdriverio/tests/protocol-stub.test.ts index c827f6acf..53e824792 100644 --- a/packages/webdriverio/tests/protocol-stub.test.ts +++ b/packages/webdriverio/tests/protocol-stub.test.ts @@ -54,7 +54,7 @@ describe('attachToSession', () => { it('should call modifier if multiremote', async () => { const multiremote = new Multiremote() // @ts-ignore test scenario - multiremote.instances['instanceName'] = 'instance' + multiremote.instances.instanceName = 'instance' const session = await ProtocolStub.attachToSession( // @ts-expect-error diff --git a/packages/webdriverio/tests/scripts/isElementClickable.test.ts b/packages/webdriverio/tests/scripts/isElementClickable.test.ts index 0ebf5206d..12ddc4ddc 100644 --- a/packages/webdriverio/tests/scripts/isElementClickable.test.ts +++ b/packages/webdriverio/tests/scripts/isElementClickable.test.ts @@ -22,7 +22,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: () => vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => elemMock } as any expect(isElementClickable(elemMock)).toBe(true) @@ -41,7 +41,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: () => vi.fn(), contains: () => true - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => 'some element' as any } as any expect(isElementClickable(elemMock)).toBe(true) @@ -60,7 +60,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: vi.fn(), contains: () => { throw new Error('should not be called in old Edge!') } - } as any as Element + } as unknown as Element // emulate old Edge // @ts-expect-error global.window.StyleMedia = (() => { }) as any @@ -89,7 +89,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: vi.fn(), contains: () => { throw new Error('should not be called in old Edge!') } - } as any as Element + } as unknown as Element // emulate old Edge // @ts-expect-error global.window.StyleMedia = (() => { }) as any @@ -122,7 +122,7 @@ describe('isElementClickable script', () => { }], scrollIntoView: () => vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { // only return elemMock in getOverlappingRects elementFromPoint: (x: number) => { @@ -146,7 +146,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: () => vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => ({ shadowRoot: { @@ -174,7 +174,7 @@ describe('isElementClickable script', () => { scrollIntoView: () => vi.fn(), contains: () => false, disabled: true - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => elemMock } as any expect(isElementClickable(elemMock)).toBe(false) @@ -193,7 +193,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => null } as any expect(isElementClickable(elemMock)).toBe(false) @@ -213,7 +213,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: () => vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => ({ shadowRoot: { elementFromPoint: () => null } @@ -234,7 +234,7 @@ describe('isElementClickable script', () => { getClientRects: () => [{}], scrollIntoView: () => vi.fn(), contains: () => false - } as any as Element + } as unknown as Element global.document = { elementFromPoint: () => elemMock } as any expect(isElementClickable(elemMock)).toBe(false) diff --git a/packages/webdriverio/tests/scripts/isElementInViewport.test.ts b/packages/webdriverio/tests/scripts/isElementInViewport.test.ts index 5f20ee207..1837d259c 100644 --- a/packages/webdriverio/tests/scripts/isElementInViewport.test.ts +++ b/packages/webdriverio/tests/scripts/isElementInViewport.test.ts @@ -28,7 +28,7 @@ describe('isElementInViewport script', () => { top: 33, left: 455 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(true) }) @@ -48,7 +48,7 @@ describe('isElementInViewport script', () => { top: 33, left: 455 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(true) }) @@ -61,7 +61,7 @@ describe('isElementInViewport script', () => { top: 601, left: 455 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(false) }) @@ -74,7 +74,7 @@ describe('isElementInViewport script', () => { top: -55, left: 455 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(false) }) @@ -87,7 +87,7 @@ describe('isElementInViewport script', () => { top: 33, left: 801 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(false) }) @@ -100,7 +100,7 @@ describe('isElementInViewport script', () => { top: 33, left: -22 }) - } as any as HTMLElement + } as unknown as HTMLElement expect(isElementInViewport(elemMock)).toBe(false) }) diff --git a/packages/webdriverio/tests/utils.test.ts b/packages/webdriverio/tests/utils.test.ts index 581fac2e1..424083688 100644 --- a/packages/webdriverio/tests/utils.test.ts +++ b/packages/webdriverio/tests/utils.test.ts @@ -166,7 +166,7 @@ describe('utils', () => { findElement: vi.fn(), execute: vi.fn(), executeScript: vi.fn() - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element }) it('fetches element using a selector string with browser scope', async () => { @@ -207,7 +207,7 @@ describe('utils', () => { vi.mocked(scope.execute).mockResolvedValue(elementsResponse) const elem = await findElement.call( scope as any, - (() => { return global.document.body as any as ElementReference }) as any + (() => { return global.document.body as unknown as ElementReference }) as any ) as Element expect(scope.findElement).not.toBeCalled() expect(scope.findElementFromElement).not.toBeCalled() @@ -280,7 +280,7 @@ describe('utils', () => { findElement: vi.fn(), execute: vi.fn(), executeScript: vi.fn() - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element }) it('fetches element using a selector string with browser scope', async () => { @@ -443,7 +443,7 @@ describe('utils', () => { elementId: 123, getElementRect: vi.fn(() => Promise.resolve({ x: 10, width: 300, height: 400 })), execute: vi.fn(() => Promise.resolve({ x: 11, y: 22, width: 333, height: 444 })) - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element expect(await getElementRect(fakeScope as any)).toEqual({ x: 10, y: 22, width: 300, height: 400 }) expect(fakeScope.getElementRect).toHaveBeenCalled() expect(fakeScope.execute).toHaveBeenCalled() @@ -454,7 +454,7 @@ describe('utils', () => { elementId: 123, getElementRect: vi.fn(() => Promise.resolve({ x: 10, y: 0, width: 300, height: 400 })), execute: vi.fn(() => Promise.reject(new Error('Method is not implemented'))) - } as any as WebdriverIO.Element + } as unknown as WebdriverIO.Element expect(await getElementRect(fakeScope as any)).toEqual({ x: 10, y: 0, width: 300, height: 400 }) expect(fakeScope.getElementRect).toHaveBeenCalled() expect(fakeScope.execute).not.toHaveBeenCalled() diff --git a/packages/webdriverio/tests/utils/Timer.test.ts b/packages/webdriverio/tests/utils/Timer.test.ts index dc5888f53..9d1aeef0b 100644 --- a/packages/webdriverio/tests/utils/Timer.test.ts +++ b/packages/webdriverio/tests/utils/Timer.test.ts @@ -22,7 +22,7 @@ describe('timer', () => { it('should be rejected by timeout', async () => { const timer = new Timer(20, 30, () => Promise.resolve(false)) await triggerDelay() - await expect(timer).rejects.toMatchObject(new Error('timeout') as any as Record) + await expect(timer).rejects.toMatchObject(new Error('timeout') as unknown as Record) expect(processEmitSpy).not.toBeCalled() }) @@ -36,20 +36,20 @@ describe('timer', () => { it('should not be fulfilled when resolved with false value', async () => { const timer = new Timer(20, 30, () => Promise.resolve(false)) await triggerDelay() - await expect(timer).rejects.toMatchObject(new Error('timeout') as any as Record) + await expect(timer).rejects.toMatchObject(new Error('timeout') as unknown as Record) expect(processEmitSpy).not.toBeCalled() }) it('should be rejected', async () => { const timer = new Timer(20, 30, () => Promise.reject(new Error('err'))) await triggerDelay() - await expect(timer).rejects.toMatchObject(new Error('err') as any as Record) + await expect(timer).rejects.toMatchObject(new Error('err') as unknown as Record) }) it('should be rejected without promise', async () => { const timer = new Timer(20, 30, () => 0) await triggerDelay() - await expect(timer).rejects.toMatchObject(new Error('timeout') as any as Record) + await expect(timer).rejects.toMatchObject(new Error('timeout') as unknown as Record) }) it('should be fulfilled without promise', async () => { diff --git a/packages/webdriverio/tests/utils/bidi/index.test.ts b/packages/webdriverio/tests/utils/bidi/index.test.ts index 3fe9a805c..9442ddbcd 100644 --- a/packages/webdriverio/tests/utils/bidi/index.test.ts +++ b/packages/webdriverio/tests/utils/bidi/index.test.ts @@ -69,7 +69,7 @@ function getErrorStack () { try { parseScriptResult(params, exception) } catch (e) { - error = e + error = e as Error } if (!error) { @@ -158,7 +158,7 @@ describe('getFailureLine', () => { ] }, text: 'Error: foobar' - }, + } customStack = `Error: foobar at parseScriptResult (/path/to/webdriverio/packages/webdriverio/build/index.js:816:11) diff --git a/packages/webdriverio/tests/utils/bidi/value.test.ts b/packages/webdriverio/tests/utils/bidi/value.test.ts index c5ade4276..98e05a863 100644 --- a/packages/webdriverio/tests/utils/bidi/value.test.ts +++ b/packages/webdriverio/tests/utils/bidi/value.test.ts @@ -57,7 +57,7 @@ describe('LocalValue', () => { }, { "type": "bigint", - "value": "9007199254740991" + "value": 9007199254740991 }, { "type": "map", diff --git a/packages/webdriverio/tests/utils/index.test.ts b/packages/webdriverio/tests/utils/index.test.ts index 0bcad1dad..075a19ab7 100644 --- a/packages/webdriverio/tests/utils/index.test.ts +++ b/packages/webdriverio/tests/utils/index.test.ts @@ -1,5 +1,5 @@ import { describe, it, expect, vi } from 'vitest' -import { ELEMENT_KEY } from 'webdriver' +import { ELEMENT_KEY, type local } from 'webdriver' import { findElement, isStaleElementError, elementPromiseHandler, transformClassicToBidiSelector } from '../../src/utils/index.js' @@ -14,7 +14,7 @@ describe('findElement', () => { elementId: 'source-elem', executeScript: vi.fn().mockReturnValue(elemRes) } - expect(await findElement.call(browser, () => 'testme' as any as HTMLElement)).toEqual(elemRes) + expect(await findElement.call(browser, () => 'testme' as unknown as HTMLElement)).toEqual(elemRes) expect(browser.executeScript).toBeCalledWith(expect.any(String), [browser]) }) @@ -154,6 +154,6 @@ describe('transformClassicToBidiSelector', () => { const bidiSelector = transformClassicToBidiSelector('partial link text', 'new') expect(bidiSelector.type).toBe('innerText') expect(bidiSelector.value).toBe('new') - expect(bidiSelector.matchType).toBe('partial') + expect((bidiSelector as local.BrowsingContextInnerTextLocator).matchType).toBe('partial') }) }) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 823bb2f38..1b120d04d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,40 +10,37 @@ importers: devDependencies: '@aws-sdk/client-cloudfront': specifier: ^3.624.0 - version: 3.658.1 + version: 3.714.0 '@aws-sdk/client-device-farm': specifier: ^3.693.0 - version: 3.693.0 + version: 3.714.0 '@aws-sdk/client-s3': specifier: ^3.624.0 - version: 3.658.1 + version: 3.714.0 '@aws-sdk/lib-storage': specifier: ^3.624.0 - version: 3.658.1(@aws-sdk/client-s3@3.658.1) + version: 3.714.0(@aws-sdk/client-s3@3.714.0) '@octokit/rest': specifier: ^21.0.1 version: 21.0.2 '@preact/preset-vite': specifier: ^2.9.0 - version: 2.9.3(@babel/core@7.26.0)(preact@10.24.0)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + version: 2.9.3(@babel/core@7.26.0)(preact@10.25.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@serenity-js/core': specifier: ^3.25.3 - version: 3.29.5 + version: 3.31.1 '@stencil/core': specifier: ^4.20.0 - version: 4.21.0 + version: 4.23.0 '@sveltejs/vite-plugin-svelte': specifier: ^3.1.1 - version: 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + version: 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@types/archiver': specifier: ^6.0.2 version: 6.0.3 '@types/cheerio': specifier: ^0.22.35 version: 0.22.35 - '@types/eslint': - specifier: ^8.56.10 - version: 8.56.12 '@types/inquirer': specifier: ^9.0.7 version: 9.0.7 @@ -58,10 +55,13 @@ importers: version: 2.1.4 '@types/mocha': specifier: ^10.0.7 - version: 10.0.9 + version: 10.0.10 '@types/node': specifier: ^20.12.7 - version: 20.16.13 + version: 20.17.10 + '@types/recursive-readdir': + specifier: ^2.2.4 + version: 2.2.4 '@types/shelljs': specifier: ^0.8.15 version: 0.8.15 @@ -74,27 +74,21 @@ importers: '@types/uuid': specifier: ^10.0.0 version: 10.0.0 - '@typescript-eslint/eslint-plugin': - specifier: ^7.7.0 - version: 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3) - '@typescript-eslint/parser': - specifier: ^7.7.0 - version: 7.18.0(eslint@8.57.1)(typescript@5.6.3) - '@typescript-eslint/utils': - specifier: ^7.7.0 - version: 7.18.0(eslint@8.57.1)(typescript@5.6.3) '@vitejs/plugin-react': specifier: ^4.3.1 - version: 4.3.4(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + version: 4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@vitejs/plugin-vue': specifier: ^5.1.2 - version: 5.1.4(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))(vue@3.5.13(typescript@5.6.3)) + version: 5.2.1(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))(vue@3.5.13(typescript@5.7.2)) '@vitest/coverage-v8': specifier: ^2.0.5 - version: 2.1.8(vitest@2.1.8(@types/node@20.16.13)(jsdom@25.0.1)(terser@5.32.0)) + version: 2.1.8(vitest@2.1.8(@types/node@20.17.10)(jsdom@25.0.1)(terser@5.37.0)) '@wdio/config': specifier: workspace:* version: link:packages/wdio-config + '@wdio/eslint': + specifier: ^0.0.5 + version: 0.0.5(@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) '@wdio/repl': specifier: workspace:* version: link:packages/wdio-repl @@ -109,7 +103,7 @@ importers: version: 0.2.2 chalk: specifier: ^5.3.0 - version: 5.3.0 + version: 5.4.0 cheerio: specifier: 1.0.0 version: 1.0.0 @@ -131,24 +125,15 @@ importers: ejs-lint: specifier: ^2.0.0 version: 2.0.1 - eslint: - specifier: ^8.57.0 - version: 8.57.1 - eslint-plugin-import: - specifier: ^2.29.1 - version: 2.30.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1) - eslint-plugin-unicorn: - specifier: ^55.0.0 - version: 55.0.0(eslint@8.57.1) - eslint-plugin-wdio: - specifier: workspace:* - version: link:packages/eslint-plugin-wdio eta: specifier: ^3.4.0 version: 3.5.0 glob: specifier: ^11.0.0 version: 11.0.0 + globals: + specifier: ^15.12.0 + version: 15.14.0 husky: specifier: ^9.1.4 version: 9.1.7 @@ -160,7 +145,7 @@ importers: version: 25.0.1 lerna: specifier: 8.1.9 - version: 8.1.9(@swc/core@1.7.26)(encoding@0.1.13) + version: 8.1.9(@swc/core@1.10.1)(encoding@0.1.13) lerna-changelog: specifier: ^2.2.0 version: 2.2.0 @@ -169,7 +154,7 @@ importers: version: 2.1.35 npm-run-all2: specifier: ^6.2.2 - version: 6.2.4 + version: 6.2.6 puppeteer-core: specifier: ^23.0.2 version: 23.4.1 @@ -196,13 +181,13 @@ importers: version: 4.19.2 typescript: specifier: ^5.5.4 - version: 5.6.3 + version: 5.7.2 unzipper: specifier: ^0.12.3 version: 0.12.3 vitest: specifier: ^2.0.5 - version: 2.1.8(@types/node@20.16.13)(jsdom@25.0.1)(terser@5.32.0) + version: 2.1.8(@types/node@20.17.10)(jsdom@25.0.1)(terser@5.37.0) e2e: dependencies: @@ -211,10 +196,10 @@ importers: version: 1.0.2 lit: specifier: ^3.1.1 - version: 3.2.0 + version: 3.2.1 preact: specifier: ^10.19.3 - version: 10.24.0 + version: 10.25.2 react: specifier: ^18.2.0 version: 18.3.1 @@ -223,23 +208,23 @@ importers: version: 4.2.19 vue: specifier: ^3.4.37 - version: 3.5.6(typescript@5.6.3) + version: 3.5.13(typescript@5.7.2) devDependencies: '@babel/plugin-transform-react-jsx-development': specifier: ^7.22.5 - version: 7.24.7(@babel/core@7.26.0) + version: 7.25.9(@babel/core@7.26.0) '@jspm/core': specifier: ^2.0.1 - version: 2.0.1 + version: 2.1.0 '@testing-library/jest-dom': specifier: ^6.2.0 - version: 6.5.0 + version: 6.6.3 '@testing-library/preact': specifier: ^3.2.3 - version: 3.2.4(preact@10.24.0) + version: 3.2.4(preact@10.25.2) '@testing-library/react': specifier: ^14.1.2 - version: 14.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.3.1(@types/react@19.0.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@testing-library/svelte': specifier: ^4.0.5 version: 4.2.3(svelte@4.2.19) @@ -248,16 +233,16 @@ importers: version: 14.5.2(@testing-library/dom@9.3.4) '@testing-library/vue': specifier: ^8.0.1 - version: 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.6(typescript@5.6.3)) + version: 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.2)) '@types/mocha': specifier: ^10.0.6 - version: 10.0.8 + version: 10.0.10 '@types/testing-library__jest-dom': specifier: ^5.14.9 version: 5.14.9 '@vue/compiler-dom': specifier: ^3.4.19 - version: 3.5.6 + version: 3.5.13 '@vue/test-utils': specifier: ^2.4.3 version: 2.4.6 @@ -314,13 +299,13 @@ importers: version: 29.7.0 graphql-request: specifier: ^6.1.0 - version: 6.1.0(encoding@0.1.13)(graphql@16.9.0) + version: 6.1.0(encoding@0.1.13)(graphql@16.10.0) is-url: specifier: ^1.2.4 version: 1.2.4 mocha: specifier: ^10.2.0 - version: 10.7.3 + version: 10.8.2 puppeteer-core: specifier: ^22.2.0 version: 22.15.0 @@ -329,10 +314,10 @@ importers: version: 7.2.0 tailwindcss: specifier: ^3.4.1 - version: 3.4.11 + version: 3.4.17 vite: specifier: ^5.1.3 - version: 5.4.5(@types/node@20.17.10)(terser@5.32.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) webdriver: specifier: workspace:* version: link:../packages/webdriver @@ -436,35 +421,35 @@ importers: dependencies: vue: specifier: ^3.4.15 - version: 3.5.6(typescript@5.6.2) + version: 3.5.13(typescript@5.7.2) devDependencies: '@testing-library/jest-dom': specifier: ^6.2.0 - version: 6.5.0 + version: 6.6.3 '@testing-library/vue': specifier: ^8.0.1 - version: 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.6(typescript@5.6.2)) + version: 8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.2)) '@types/mocha': specifier: ^10.0.6 - version: 10.0.8 + version: 10.0.10 '@vitejs/plugin-vue': specifier: ^5.0.3 - version: 5.1.3(vite@5.4.5(@types/node@20.17.10)(terser@5.32.0))(vue@3.5.6(typescript@5.6.2)) + version: 5.2.1(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))(vue@3.5.13(typescript@5.7.2)) expect-webdriverio: specifier: 5.0.5 version: 5.0.5(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@9.4.3(puppeteer-core@23.4.1)) mocha: specifier: ^10.2.0 - version: 10.7.3 + version: 10.8.2 typescript: specifier: ^5.3.3 - version: 5.6.2 + version: 5.7.2 vite: specifier: ^5.0.12 - version: 5.4.5(@types/node@20.17.10)(terser@5.32.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vue-tsc: specifier: ^2.0.17 - version: 2.1.6(typescript@5.6.2) + version: 2.1.10(typescript@5.7.2) infra/compiler: dependencies: @@ -479,13 +464,13 @@ importers: version: 2.1.1(esbuild@0.24.0) esbuild-plugin-d.ts: specifier: ^1.3.0 - version: 1.3.0(typescript@5.6.3) + version: 1.3.1(typescript@5.7.2) tsx: specifier: ^4.17.0 - version: 4.19.1 + version: 4.19.2 type-fest: specifier: ^4.24.0 - version: 4.26.1 + version: 4.30.2 infra/lernaPatch: {} @@ -493,16 +478,16 @@ importers: devDependencies: '@types/estree': specifier: ^1.0.1 - version: 1.0.5 + version: 1.0.6 eslint: specifier: ^9.0.0 - version: 9.10.0(jiti@1.21.6) + version: 9.17.0(jiti@2.4.2) packages/wdio-allure-reporter: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/reporter': specifier: workspace:* version: link:../wdio-reporter @@ -514,7 +499,7 @@ importers: version: 2.15.1 csv-stringify: specifier: ^6.0.4 - version: 6.5.1 + version: 6.5.2 strip-ansi: specifier: ^7.1.0 version: 7.1.0 @@ -560,7 +545,7 @@ importers: version: 1.0.3 '@vitest/spy': specifier: ^2.0.4 - version: 2.1.1 + version: 2.1.8 '@wdio/globals': specifier: workspace:* version: link:../wdio-globals @@ -587,13 +572,13 @@ importers: version: link:../wdio-utils deepmerge-ts: specifier: ^7.0.3 - version: 7.1.0 + version: 7.1.3 expect: specifier: 30.0.0-alpha.6 version: 30.0.0-alpha.6 expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) + version: 5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) get-port: specifier: ^7.1.0 version: 7.1.0 @@ -614,7 +599,7 @@ importers: version: 3.1.7 mlly: specifier: ^1.6.1 - version: 1.7.1 + version: 1.7.3 modern-node-polyfills: specifier: ^1.0.0 version: 1.0.0(esbuild@0.24.0)(rollup@4.28.1) @@ -629,13 +614,13 @@ importers: version: 0.5.21 vite: specifier: ^5.4.10 - version: 5.4.10(@types/node@20.17.10)(terser@5.32.0) + version: 5.4.11(@types/node@20.17.10)(terser@5.37.0) vite-plugin-istanbul: specifier: ^6.0.0 - version: 6.0.2(vite@5.4.10(@types/node@20.17.10)(terser@5.32.0)) + version: 6.0.2(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) vite-plugin-top-level-await: specifier: ^1.4.1 - version: 1.4.4(rollup@4.28.1)(vite@5.4.10(@types/node@20.17.10)(terser@5.32.0)) + version: 1.4.4(rollup@4.28.1)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) webdriver: specifier: workspace:* version: link:../webdriver @@ -645,13 +630,13 @@ importers: optionalDependencies: '@nuxt/kit': specifier: ^3.12.4 - version: 3.13.2(magicast@0.3.5)(rollup@4.28.1)(webpack-sources@3.2.3) + version: 3.14.1592(magicast@0.3.5)(rollup@4.28.1) '@stencil/core': specifier: ^4.20.0 - version: 4.21.0 + version: 4.23.0 unimport: specifier: ^3.10.0 - version: 3.12.0(rollup@4.28.1)(webpack-sources@3.2.3) + version: 3.14.5(rollup@4.28.1) devDependencies: '@types/istanbul-lib-coverage': specifier: ^2.0.6 @@ -673,7 +658,7 @@ importers: version: 5.0.0 mocha: specifier: ^10.7.3 - version: 10.7.3 + version: 10.8.2 packages/wdio-browserstack-service: dependencies: @@ -682,16 +667,16 @@ importers: version: 1.5.17 '@percy/appium-app': specifier: ^2.0.1 - version: 2.0.8 + version: 2.0.9 '@percy/selenium-webdriver': specifier: ^2.0.3 - version: 2.0.5 + version: 2.1.0 '@types/gitconfiglocal': specifier: ^2.0.1 version: 2.0.3 '@wdio/cli': specifier: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 - version: 9.0.9(puppeteer-core@23.4.1) + version: 9.4.3(puppeteer-core@23.4.1) '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -706,7 +691,7 @@ importers: version: 1.5.5 chalk: specifier: ^5.3.0 - version: 5.3.0 + version: 5.4.0 csv-writer: specifier: ^1.6.0 version: 1.6.0 @@ -727,14 +712,14 @@ importers: version: link:../webdriverio winston-transport: specifier: ^4.5.0 - version: 4.7.1 + version: 4.9.0 yauzl: specifier: ^3.0.0 - version: 3.1.3 + version: 3.2.0 devDependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@types/yauzl': specifier: ^2.10.3 version: 2.10.3 @@ -746,10 +731,10 @@ importers: dependencies: '@types/node': specifier: ^20.1.1 - version: 20.16.5 + version: 20.17.10 '@vitest/snapshot': specifier: ^2.1.1 - version: 2.1.1 + version: 2.1.8 '@wdio/config': specifier: workspace:* version: link:../wdio-config @@ -773,25 +758,25 @@ importers: version: 2.0.1 chalk: specifier: ^5.2.0 - version: 5.3.0 + version: 5.4.0 chokidar: specifier: ^4.0.0 - version: 4.0.0 + version: 4.0.2 dotenv: specifier: ^16.3.1 - version: 16.4.5 + version: 16.4.7 ejs: specifier: ^3.1.9 version: 3.1.10 execa: specifier: ^9.2.0 - version: 9.3.1 + version: 9.5.2 import-meta-resolve: specifier: ^4.0.0 version: 4.1.0 inquirer: specifier: ^11.0.1 - version: 11.0.1 + version: 11.1.0 lodash.flattendeep: specifier: ^4.4.0 version: 4.4.0 @@ -809,7 +794,7 @@ importers: version: 2.2.3 tsx: specifier: ^4.7.2 - version: 4.19.1 + version: 4.19.2 webdriverio: specifier: workspace:* version: link:../webdriverio @@ -852,10 +837,10 @@ importers: version: link:../wdio-types chalk: specifier: ^5.0.1 - version: 5.3.0 + version: 5.4.0 pretty-ms: specifier: ^9.0.0 - version: 9.1.0 + version: 9.2.0 packages/wdio-config: dependencies: @@ -870,7 +855,7 @@ importers: version: link:../wdio-utils deepmerge-ts: specifier: ^7.0.3 - version: 7.1.0 + version: 7.1.3 glob: specifier: ^10.2.2 version: 10.4.5 @@ -895,7 +880,7 @@ importers: version: 26.0.1 '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -929,7 +914,7 @@ importers: version: link:../wdio-types chalk: specifier: ^5.0.1 - version: 5.3.0 + version: 5.4.0 devDependencies: '@types/tmp': specifier: ^0.2.3 @@ -951,7 +936,7 @@ importers: optionalDependencies: expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio) + version: 5.0.5(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio) webdriverio: specifier: workspace:* version: link:../webdriverio @@ -960,7 +945,7 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/globals': specifier: workspace:* version: link:../wdio-globals @@ -975,10 +960,10 @@ importers: version: link:../wdio-utils expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@9.4.3(puppeteer-core@23.4.1)) + version: 5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@9.4.3(puppeteer-core@23.4.1)) jasmine: specifier: ^5.0.0 - version: 5.3.0 + version: 5.5.0 devDependencies: '@types/jasmine': specifier: 5.1.4 @@ -1016,13 +1001,13 @@ importers: dependencies: '@babel/core': specifier: ^7.18.0 - version: 7.25.2 + version: 7.26.0 '@tracerbench/trace-event': specifier: ^8.0.0 version: 8.0.0 '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -1074,7 +1059,7 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -1108,7 +1093,7 @@ importers: dependencies: chalk: specifier: ^5.1.2 - version: 5.3.0 + version: 5.4.0 loglevel: specifier: ^1.6.0 version: 1.9.2 @@ -1123,10 +1108,10 @@ importers: dependencies: '@types/mocha': specifier: ^10.0.6 - version: 10.0.8 + version: 10.0.10 '@types/node': specifier: ^20.11.28 - version: 20.16.5 + version: 20.17.10 '@wdio/logger': specifier: workspace:9.1.3 version: link:../wdio-logger @@ -1138,7 +1123,7 @@ importers: version: link:../wdio-utils mocha: specifier: ^10.3.0 - version: 10.7.3 + version: 10.8.2 packages/wdio-protocols: {} @@ -1146,13 +1131,13 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 packages/wdio-reporter: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -1164,11 +1149,11 @@ importers: version: 7.0.0 object-inspect: specifier: ^1.12.0 - version: 1.13.2 + version: 1.13.3 devDependencies: '@types/diff': specifier: ^5.0.2 - version: 5.2.2 + version: 5.2.3 '@types/object-inspect': specifier: ^1.8.1 version: 1.13.0 @@ -1186,7 +1171,7 @@ importers: dependencies: '@types/node': specifier: ^20.11.28 - version: 20.16.5 + version: 20.17.10 '@wdio/config': specifier: workspace:9.4.3 version: link:../wdio-config @@ -1204,10 +1189,10 @@ importers: version: link:../wdio-utils deepmerge-ts: specifier: ^7.0.3 - version: 7.1.0 + version: 7.1.3 expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) + version: 5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) webdriver: specifier: workspace:9.4.3 version: link:../webdriver @@ -1266,7 +1251,7 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 packages/wdio-smoke-test-reporter: dependencies: @@ -1278,7 +1263,7 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 packages/wdio-spec-reporter: dependencies: @@ -1290,13 +1275,13 @@ importers: version: link:../wdio-types chalk: specifier: ^5.1.2 - version: 5.3.0 + version: 5.4.0 easy-table: specifier: ^1.2.0 version: 1.2.0 pretty-ms: specifier: ^9.0.0 - version: 9.1.0 + version: 9.2.0 packages/wdio-static-server-service: dependencies: @@ -1308,7 +1293,7 @@ importers: version: link:../wdio-types express: specifier: ^4.14.0 - version: 4.21.0 + version: 4.21.2 morgan: specifier: ^1.7.0 version: 1.10.0 @@ -1355,14 +1340,14 @@ importers: version: link:../wdio-types testingbot-tunnel-launcher: specifier: ^1.1.7 - version: 1.1.12 + version: 1.1.14 webdriverio: specifier: workspace:* version: link:../webdriverio devDependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@wdio/globals': specifier: workspace:* version: link:../wdio-globals @@ -1371,13 +1356,13 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 packages/wdio-utils: dependencies: '@puppeteer/browsers': specifier: ^2.2.0 - version: 2.4.0 + version: 2.6.1 '@wdio/logger': specifier: workspace:* version: link:../wdio-logger @@ -1389,7 +1374,7 @@ importers: version: 6.0.0 deepmerge-ts: specifier: ^7.0.3 - version: 7.1.0 + version: 7.1.3 edgedriver: specifier: ^6.1.1 version: 6.1.1 @@ -1404,7 +1389,7 @@ importers: version: 4.1.0 locate-app: specifier: ^2.2.24 - version: 2.4.43 + version: 2.5.0 safaridriver: specifier: ^1.0.0 version: 1.0.0 @@ -1444,10 +1429,10 @@ importers: dependencies: '@types/node': specifier: ^20.1.0 - version: 20.16.5 + version: 20.17.10 '@types/ws': specifier: ^8.5.3 - version: 8.5.12 + version: 8.5.13 '@wdio/config': specifier: workspace:* version: link:../wdio-config @@ -1465,10 +1450,10 @@ importers: version: link:../wdio-utils deepmerge-ts: specifier: ^7.0.3 - version: 7.1.0 + version: 7.1.3 undici: specifier: ^6.20.1 - version: 6.20.1 + version: 6.21.0 ws: specifier: ^8.8.0 version: 8.18.0 @@ -1477,7 +1462,7 @@ importers: dependencies: '@types/node': specifier: ^20.11.30 - version: 20.16.5 + version: 20.17.10 '@types/sinonjs__fake-timers': specifier: ^8.1.5 version: 8.1.5 @@ -1504,13 +1489,13 @@ importers: version: 7.0.1 aria-query: specifier: ^5.3.0 - version: 5.3.1 + version: 5.3.2 cheerio: specifier: ^1.0.0-rc.12 version: 1.0.0 css-shorthand-properties: specifier: ^1.1.1 - version: 1.1.1 + version: 1.1.2 css-value: specifier: ^0.0.1 version: 0.0.1 @@ -1519,7 +1504,7 @@ importers: version: 1.0.4 htmlfy: specifier: ^0.3.0 - version: 0.3.0 + version: 0.3.2 import-meta-resolve: specifier: ^4.0.0 version: 4.1.0 @@ -1559,10 +1544,10 @@ importers: devDependencies: '@sinonjs/fake-timers': specifier: ^13.0.1 - version: 13.0.2 + version: 13.0.5 '@types/archiver': specifier: ^6.0.2 - version: 6.0.2 + version: 6.0.3 '@types/aria-query': specifier: ^5.0.4 version: 5.0.4 @@ -1574,7 +1559,7 @@ importers: version: 4.2.9 puppeteer-core: specifier: ^23.0.2 - version: 23.1.1 + version: 23.4.1 safe-stable-stringify: specifier: ^2.4.3 version: 2.5.0 @@ -1676,7 +1661,7 @@ importers: version: link:../packages/wdio-webdriver-mock-service expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) + version: 5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio) webdriver: specifier: workspace:* version: link:../packages/webdriver @@ -1709,7 +1694,7 @@ importers: version: link:../../packages/wdio-shared-store-service npm-run-all2: specifier: ^6.2.3 - version: 6.2.3 + version: 6.2.6 webdriver: specifier: workspace:* version: link:../../packages/webdriver @@ -1849,7 +1834,7 @@ importers: version: link:../../../packages/wdio-utils expect-webdriverio: specifier: ^5.0.1 - version: 5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio) + version: 5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio) webdriver: specifier: workspace:* version: link:../../../packages/webdriver @@ -2059,37 +2044,37 @@ importers: dependencies: '@docusaurus/core': specifier: ^3.5.2 - version: 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@docusaurus/module-type-aliases': specifier: ^3.5.2 - version: 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@docusaurus/plugin-client-redirects': specifier: ^3.5.2 - version: 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@docusaurus/plugin-google-analytics': specifier: ^3.5.2 - version: 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@docusaurus/plugin-ideal-image': specifier: ^3.5.2 - version: 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@docusaurus/plugin-pwa': specifier: ^3.5.2 - version: 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/babel__core@7.20.5)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/babel__core@7.20.5)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@docusaurus/preset-classic': specifier: ^3.5.2 - version: 3.5.2(@algolia/client-search@4.24.0)(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)(typescript@5.6.2) + version: 3.6.3(@algolia/client-search@5.18.0)(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.7.2) '@docusaurus/remark-plugin-npm2yarn': specifier: ^3.5.2 - version: 3.5.2 + version: 3.6.3 '@docusaurus/theme-search-algolia': specifier: ^3.5.2 - version: 3.5.2(@algolia/client-search@4.24.0)(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)(typescript@5.6.2) + version: 3.6.3(@algolia/client-search@5.18.0)(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.7.2) '@docusaurus/tsconfig': specifier: ^3.5.2 - version: 3.5.2 + version: 3.6.3 '@mdx-js/react': specifier: ^3.0.1 - version: 3.0.1(@types/react@19.0.1)(react@18.3.1) + version: 3.1.0(@types/react@19.0.2)(react@18.3.1) '@mendable/search': specifier: ^0.0.206 version: 0.0.206(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -2101,7 +2086,7 @@ importers: version: 2.1.1 docusaurus-theme-github-codeblock: specifier: ^2.0.2 - version: 2.0.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 2.0.2(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: specifier: ^18.3.1 version: 18.3.1 @@ -2113,42 +2098,42 @@ importers: version: 2.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) typescript: specifier: ^5.5.4 - version: 5.6.2 + version: 5.7.2 workbox-routing: specifier: ^7.1.0 - version: 7.1.0 + version: 7.3.0 workbox-strategies: specifier: ^7.1.0 - version: 7.1.0 + version: 7.3.0 devDependencies: '@docusaurus/theme-common': specifier: ^3.5.2 - version: 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) + version: 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) babel-loader: specifier: ^9.1.3 - version: 9.2.1(@babel/core@7.25.8)(webpack@5.94.0(@swc/core@1.7.26)) + version: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.10.1)) packages: - '@adobe/css-tools@4.4.0': - resolution: {integrity: sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==} + '@adobe/css-tools@4.4.1': + resolution: {integrity: sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==} - '@algolia/autocomplete-core@1.9.3': - resolution: {integrity: sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==} + '@algolia/autocomplete-core@1.17.7': + resolution: {integrity: sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==} - '@algolia/autocomplete-plugin-algolia-insights@1.9.3': - resolution: {integrity: sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==} + '@algolia/autocomplete-plugin-algolia-insights@1.17.7': + resolution: {integrity: sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==} peerDependencies: search-insights: '>= 1 < 3' - '@algolia/autocomplete-preset-algolia@1.9.3': - resolution: {integrity: sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==} + '@algolia/autocomplete-preset-algolia@1.17.7': + resolution: {integrity: sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' - '@algolia/autocomplete-shared@1.9.3': - resolution: {integrity: sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==} + '@algolia/autocomplete-shared@1.17.7': + resolution: {integrity: sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==} peerDependencies: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' @@ -2162,42 +2147,94 @@ packages: '@algolia/cache-in-memory@4.24.0': resolution: {integrity: sha512-gDrt2so19jW26jY3/MkFg5mEypFIPbPoXsQGQWAi6TrCPsNOSEYepBMPlucqWigsmEy/prp5ug2jy/N3PVG/8w==} + '@algolia/client-abtesting@5.18.0': + resolution: {integrity: sha512-DLIrAukjsSrdMNNDx1ZTks72o4RH/1kOn8Wx5zZm8nnqFexG+JzY4SANnCNEjnFQPJTTvC+KpgiNW/CP2lumng==} + engines: {node: '>= 14.0.0'} + '@algolia/client-account@4.24.0': resolution: {integrity: sha512-adcvyJ3KjPZFDybxlqnf+5KgxJtBjwTPTeyG2aOyoJvx0Y8dUQAEOEVOJ/GBxX0WWNbmaSrhDURMhc+QeevDsA==} '@algolia/client-analytics@4.24.0': resolution: {integrity: sha512-y8jOZt1OjwWU4N2qr8G4AxXAzaa8DBvyHTWlHzX/7Me1LX8OayfgHexqrsL4vSBcoMmVw2XnVW9MhL+Y2ZDJXg==} + '@algolia/client-analytics@5.18.0': + resolution: {integrity: sha512-0VpGG2uQW+h2aejxbG8VbnMCQ9ary9/ot7OASXi6OjE0SRkYQ/+pkW+q09+IScif3pmsVVYggmlMPtAsmYWHng==} + engines: {node: '>= 14.0.0'} + '@algolia/client-common@4.24.0': resolution: {integrity: sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==} + '@algolia/client-common@5.18.0': + resolution: {integrity: sha512-X1WMSC+1ve2qlMsemyTF5bIjwipOT+m99Ng1Tyl36ZjQKTa54oajBKE0BrmM8LD8jGdtukAgkUhFoYOaRbMcmQ==} + engines: {node: '>= 14.0.0'} + + '@algolia/client-insights@5.18.0': + resolution: {integrity: sha512-FAJRNANUOSs/FgYOJ/Njqp+YTe4TMz2GkeZtfsw1TMiA5mVNRS/nnMpxas9771aJz7KTEWvK9GwqPs0K6RMYWg==} + engines: {node: '>= 14.0.0'} + '@algolia/client-personalization@4.24.0': resolution: {integrity: sha512-l5FRFm/yngztweU0HdUzz1rC4yoWCFo3IF+dVIVTfEPg906eZg5BOd1k0K6rZx5JzyyoP4LdmOikfkfGsKVE9w==} + '@algolia/client-personalization@5.18.0': + resolution: {integrity: sha512-I2dc94Oiwic3SEbrRp8kvTZtYpJjGtg5y5XnqubgnA15AgX59YIY8frKsFG8SOH1n2rIhUClcuDkxYQNXJLg+w==} + engines: {node: '>= 14.0.0'} + + '@algolia/client-query-suggestions@5.18.0': + resolution: {integrity: sha512-x6XKIQgKFTgK/bMasXhghoEjHhmgoP61pFPb9+TaUJ32aKOGc65b12usiGJ9A84yS73UDkXS452NjyP50Knh/g==} + engines: {node: '>= 14.0.0'} + '@algolia/client-search@4.24.0': resolution: {integrity: sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==} + '@algolia/client-search@5.18.0': + resolution: {integrity: sha512-qI3LcFsVgtvpsBGR7aNSJYxhsR+Zl46+958ODzg8aCxIcdxiK7QEVLMJMZAR57jGqW0Lg/vrjtuLFDMfSE53qA==} + engines: {node: '>= 14.0.0'} + '@algolia/events@4.0.1': resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==} + '@algolia/ingestion@1.18.0': + resolution: {integrity: sha512-bGvJg7HnGGm+XWYMDruZXWgMDPVt4yCbBqq8DM6EoaMBK71SYC4WMfIdJaw+ABqttjBhe6aKNRkWf/bbvYOGyw==} + engines: {node: '>= 14.0.0'} + '@algolia/logger-common@4.24.0': resolution: {integrity: sha512-LLUNjkahj9KtKYrQhFKCzMx0BY3RnNP4FEtO+sBybCjJ73E8jNdaKJ/Dd8A/VA4imVHP5tADZ8pn5B8Ga/wTMA==} '@algolia/logger-console@4.24.0': resolution: {integrity: sha512-X4C8IoHgHfiUROfoRCV+lzSy+LHMgkoEEU1BbKcsfnV0i0S20zyy0NLww9dwVHUWNfPPxdMU+/wKmLGYf96yTg==} + '@algolia/monitoring@1.18.0': + resolution: {integrity: sha512-lBssglINIeGIR+8KyzH05NAgAmn1BCrm5D2T6pMtr/8kbTHvvrm1Zvcltc5dKUQEFyyx3J5+MhNc7kfi8LdjVw==} + engines: {node: '>= 14.0.0'} + '@algolia/recommend@4.24.0': resolution: {integrity: sha512-P9kcgerfVBpfYHDfVZDvvdJv0lEoCvzNlOy2nykyt5bK8TyieYyiD0lguIJdRZZYGre03WIAFf14pgE+V+IBlw==} + '@algolia/recommend@5.18.0': + resolution: {integrity: sha512-uSnkm0cdAuFwdMp4pGT5vHVQ84T6AYpTZ3I0b3k/M3wg4zXDhl3aCiY8NzokEyRLezz/kHLEEcgb/tTTobOYVw==} + engines: {node: '>= 14.0.0'} + '@algolia/requester-browser-xhr@4.24.0': resolution: {integrity: sha512-Z2NxZMb6+nVXSjF13YpjYTdvV3032YTBSGm2vnYvYPA6mMxzM3v5rsCiSspndn9rzIW4Qp1lPHBvuoKJV6jnAA==} + '@algolia/requester-browser-xhr@5.18.0': + resolution: {integrity: sha512-1XFjW0C3pV0dS/9zXbV44cKI+QM4ZIz9cpatXpsjRlq6SUCpLID3DZHsXyE6sTb8IhyPaUjk78GEJT8/3hviqg==} + engines: {node: '>= 14.0.0'} + '@algolia/requester-common@4.24.0': resolution: {integrity: sha512-k3CXJ2OVnvgE3HMwcojpvY6d9kgKMPRxs/kVohrwF5WMr2fnqojnycZkxPoEg+bXm8fi5BBfFmOqgYztRtHsQA==} + '@algolia/requester-fetch@5.18.0': + resolution: {integrity: sha512-0uodeNdAHz1YbzJh6C5xeQ4T6x5WGiUxUq3GOaT/R4njh5t78dq+Rb187elr7KtnjUmETVVuCvmEYaThfTHzNg==} + engines: {node: '>= 14.0.0'} + '@algolia/requester-node-http@4.24.0': resolution: {integrity: sha512-JF18yTjNOVYvU/L3UosRcvbPMGT9B+/GQWNWnenIImglzNVGpyzChkXLnrSf6uxwVNO6ESGu6oN8MqcGQcjQJw==} + '@algolia/requester-node-http@5.18.0': + resolution: {integrity: sha512-tZCqDrqJ2YE2I5ukCQrYN8oiF6u3JIdCxrtKq+eniuLkjkO78TKRnXrVcKZTmfFJyyDK8q47SfDcHzAA3nHi6w==} + engines: {node: '>= 14.0.0'} + '@algolia/transporter@4.24.0': resolution: {integrity: sha512-86nI7w6NzWxd1Zp9q3413dRshDqAzSbsQjhcDhPIatEFiZrL1/TjnHL8S7jVKFePlIMzDsZWXAXwXzcok9c5oA==} @@ -2242,236 +2279,149 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-cloudfront@3.658.1': - resolution: {integrity: sha512-v5bfHSHJ3LbTeWzxV1HReF0HuCwOZO4L5L1Esc5CSt8IX+pfTRR7i3iY7qTt5CfDsHQP4UEETrSEdKGwOl63YA==} + '@aws-sdk/client-cloudfront@3.714.0': + resolution: {integrity: sha512-9RCclTHoxLrZwK8PAZslpOuej+q3qDNgJl9l6/ynXmU3XwTUUwVuF7b0j6ueYgNDYbLR6hUeqKK+ICNkzdlK6w==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-device-farm@3.693.0': - resolution: {integrity: sha512-xdyS1ZESKZyHvtb8uOhWG7c+qN9b0+bfon+l/ZVZMDDKF9mvxZnxLFNc2+8tOnVOXot1iGYKOhmmOYZnY4hvqg==} + '@aws-sdk/client-device-farm@3.714.0': + resolution: {integrity: sha512-oXN4EgsDXJqp5WfMHtbCWa6fNpoy2Q0X6EEoVOM++QCVQb6M+HzMFshHNkkOpScjxLJQEGncp0qxhlDZZ4TseA==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-s3@3.658.1': - resolution: {integrity: sha512-rxYW7ONoh1y/SM292jt0TEH+LSiztoPCJxT3gst4S2o/85apFY3RxL8TrhOqzXoIeMu2LNzyN51Zygme6AbQAA==} + '@aws-sdk/client-s3@3.714.0': + resolution: {integrity: sha512-DqzfbecKrhUEpsYTsYRIm4cKKlIvAl4I/A2NpzDPDSiA2EmCWLy0T5fK1ivUA4XL+09+4pHJGNVTpMyDs7n6vg==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-sso-oidc@3.658.1': - resolution: {integrity: sha512-RGcZAI3qEA05JszPKwa0cAyp8rnS1nUvs0Sqw4hqLNQ1kD7b7V6CPjRXe7EFQqCOMvM4kGqx0+cEEVTOmBsFLw==} + '@aws-sdk/client-sso-oidc@3.714.0': + resolution: {integrity: sha512-dMvpPUaL3v01psPY1ZyCzQ/w2tOgQTH1if0zBF5r2q7Vc0oOPzbBZgNAhG1bDWlRCBW0iXmoqRFoWUwQ5rtx+A==} engines: {node: '>=16.0.0'} peerDependencies: - '@aws-sdk/client-sts': ^3.658.1 + '@aws-sdk/client-sts': ^3.714.0 - '@aws-sdk/client-sso-oidc@3.693.0': - resolution: {integrity: sha512-UEDbYlYtK/e86OOMyFR4zEPyenIxDzO2DRdz3fwVW7RzZ94wfmSwBh/8skzPTuY1G7sI064cjHW0b0QG01Sdtg==} + '@aws-sdk/client-sso@3.714.0': + resolution: {integrity: sha512-pFtjY5Ga91qrryo0UfbjetdT2p9rOgtHofogAeEuGjxx7/rupBpdlW0WDOtD/7jhmbhM8WZEr6aH7GLzzkKfCA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/client-sts@3.714.0': + resolution: {integrity: sha512-ThcXgolapPsOzeavJF4Am312umFyoFBBeiTYD8PQGIiYkbJi4hXcjoWacmtkq6moMmMZSP9iK/ellls7vwY2JQ==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/core@3.714.0': + resolution: {integrity: sha512-TlZ50d8MEPVp9O03SvisOmcmxjxhMDKHJJcrBgYjgDej6QmNfiFwtCRkReXDdkEeXP29ehMs7uPXtmVvPqziYw==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/credential-provider-env@3.714.0': + resolution: {integrity: sha512-0S4nKE1a+EHXAInXUeuWkyzVnXzmwIbwLStVidAIoyl6sJF8xGdw+r3AaoTr7p0YXzdoDUsn3wBTCA6ZwgXVbA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/credential-provider-http@3.714.0': + resolution: {integrity: sha512-1AXEfUSQUQg+x/DpH1XJhjf2yEgTHHatM3cvYu7FZMhRXF28Q5OJDbEFPfdqrK+vmCiYRWhszDb+zuUIvz46bw==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/credential-provider-ini@3.714.0': + resolution: {integrity: sha512-w5wOcgBngfcvVev5wnYWXoc/W2ewVmGJkfRdGquhFt8pkUxktyd8eXehqkP7u31SONVlgy96EFTdSCzWpTrqOw==} engines: {node: '>=16.0.0'} peerDependencies: - '@aws-sdk/client-sts': ^3.693.0 + '@aws-sdk/client-sts': ^3.714.0 - '@aws-sdk/client-sso@3.658.1': - resolution: {integrity: sha512-lOuaBtqPTYGn6xpXlQF4LsNDsQ8Ij2kOdnk+i69Kp6yS76TYvtUuukyLL5kx8zE1c8WbYtxj9y8VNw9/6uKl7Q==} + '@aws-sdk/credential-provider-node@3.714.0': + resolution: {integrity: sha512-ebho1HYNKzaw0ZfbI9kEicSW8J7tsOoV6EJajsjfFnuP+GY9J5Oi4759GEq1Qqj7GxIhrySOZFzif/hxAXPWtQ==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-sso@3.693.0': - resolution: {integrity: sha512-QEynrBC26x6TG9ZMzApR/kZ3lmt4lEIs2D+cHuDxt6fDGzahBUsQFBwJqhizzsM97JJI5YvmJhmihoYjdSSaXA==} + '@aws-sdk/credential-provider-process@3.714.0': + resolution: {integrity: sha512-mHM+zYJDUiXggBx4YvQgMOhbkV07KUib8/jWPnAZbUJcRncN/yevAp/WNocjUN4VaBWkooJUgoTET/okRK+TCQ==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-sts@3.658.1': - resolution: {integrity: sha512-yw9hc5blTnbT1V6mR7Cx9HGc9KQpcLQ1QXj8rntiJi6tIYu3aFNVEyy81JHL7NsuBSeQulJTvHO3y6r3O0sfRg==} + '@aws-sdk/credential-provider-sso@3.714.0': + resolution: {integrity: sha512-LQyHUQd+/A0PO96m6/A3KeekRplRpG9AmwLn8VPknlmACAhhbWHehzerCTd42V8dClf5pigr25/aVqh/2p/sRw==} engines: {node: '>=16.0.0'} - '@aws-sdk/client-sts@3.693.0': - resolution: {integrity: sha512-4S2y7VEtvdnjJX4JPl4kDQlslxXEZFnC50/UXVUYSt/AMc5A/GgspFNA5FVz4E3Gwpfobbf23hR2NBF8AGvYoQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/core@3.658.1': - resolution: {integrity: sha512-vJVMoMcSKXK2gBRSu9Ywwv6wQ7tXH8VL1fqB1uVxgCqBZ3IHfqNn4zvpMPWrwgO2/3wv7XFyikGQ5ypPTCw4jA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/core@3.693.0': - resolution: {integrity: sha512-v6Z/kWmLFqRLDPEwl9hJGhtTgIFHjZugSfF1Yqffdxf4n1AWgtHS7qSegakuMyN5pP4K2tvUD8qHJ+gGe2Bw2A==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-env@3.654.0': - resolution: {integrity: sha512-kogsx3Ql81JouHS7DkheCDU9MYAvK0AokxjcshDveGmf7BbgbWCA8Fnb9wjQyNDaOXNvkZu8Z8rgkX91z324/w==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-env@3.693.0': - resolution: {integrity: sha512-hMUZaRSF7+iBKZfBHNLihFs9zvpM1CB8MBOTnTp5NGCVkRYF3SB2LH+Kcippe0ats4qCyB1eEoyQX99rERp2iQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-http@3.658.1': - resolution: {integrity: sha512-4ubkJjEVCZflxkZnV1JDQv8P2pburxk1LrEp55telfJRzXrnowzBKwuV2ED0QMNC448g2B3VCaffS+Ct7c4IWQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-http@3.693.0': - resolution: {integrity: sha512-sL8MvwNJU7ZpD7/d2VVb3by1GknIJUxzTIgYtVkDVA/ojo+KRQSSHxcj0EWWXF5DTSh2Tm+LrEug3y1ZyKHsDA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/credential-provider-ini@3.658.1': - resolution: {integrity: sha512-2uwOamQg5ppwfegwen1ddPu5HM3/IBSnaGlaKLFhltkdtZ0jiqTZWUtX2V+4Q+buLnT0hQvLS/frQ+7QUam+0Q==} + '@aws-sdk/credential-provider-web-identity@3.714.0': + resolution: {integrity: sha512-piKfEJvLrGZ0bH4NPO19d1dtfCZi2p6YJUK/9vRCD1rvJidOuHNeUwIcxTnkIMovQHX12rZVvU9ub0C3CwegUQ==} engines: {node: '>=16.0.0'} peerDependencies: - '@aws-sdk/client-sts': ^3.658.1 + '@aws-sdk/client-sts': ^3.714.0 - '@aws-sdk/credential-provider-ini@3.693.0': - resolution: {integrity: sha512-kvaa4mXhCCOuW7UQnBhYqYfgWmwy7WSBSDClutwSLPZvgrhYj2l16SD2lN4IfYdxARYMJJ1lFYp3/jJG/9Yk4Q==} + '@aws-sdk/lib-storage@3.714.0': + resolution: {integrity: sha512-rhNT9sys8Egdp23ZiSjFJohlP8maSZd5OcGNgTOBUH8llh4LiPRKyTPs8rnIZqdbRH3Di72ZkS4ZWz4oyOHWmQ==} engines: {node: '>=16.0.0'} peerDependencies: - '@aws-sdk/client-sts': ^3.693.0 + '@aws-sdk/client-s3': ^3.714.0 - '@aws-sdk/credential-provider-node@3.658.1': - resolution: {integrity: sha512-XwxW6N+uPXPYAuyq+GfOEdfL/MZGAlCSfB5gEWtLBFmFbikhmEuqfWtI6CD60OwudCUOh6argd21BsJf8o1SJA==} + '@aws-sdk/middleware-bucket-endpoint@3.714.0': + resolution: {integrity: sha512-I/xSOskiseJJ8i183Z522BgqbgYzLKP7jGcg2Qeib/IWoG2IP+9DH8pwqagKaPAycyswtnoKBJiiFXY43n0CkA==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-node@3.693.0': - resolution: {integrity: sha512-42WMsBjTNnjYxYuM3qD/Nq+8b7UdMopUq5OduMDxoM3mFTV6PXMMnfI4Z1TNnR4tYRvPXAnuNltF6xmjKbSJRA==} + '@aws-sdk/middleware-expect-continue@3.714.0': + resolution: {integrity: sha512-rlzsXdG8Lzo4Qpl35ZnpOBAWlzvDHpP9++0AXoUwAJA0QmMm7auIRmgxJuNj91VwT9h15ZU6xjU4S7fJl4W0+w==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-process@3.654.0': - resolution: {integrity: sha512-PmQoo8sZ9Q2Ow8OMzK++Z9lI7MsRUG7sNq3E72DVA215dhtTICTDQwGlXH2AAmIp7n+G9LLRds+4wo2ehG4mkg==} + '@aws-sdk/middleware-flexible-checksums@3.714.0': + resolution: {integrity: sha512-y5I2mRmTDRQ/SYa+F30RRE4xchTHmDPDiYKFRRoENxFhVcrv/FbjA3hfhB8Z95JfSalzJVr+XQjd+N+t4M2gMw==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-process@3.693.0': - resolution: {integrity: sha512-cvxQkrTWHHjeHrPlj7EWXPnFSq8x7vMx+Zn1oTsMpCY445N9KuzjfJTkmNGwU2GT6rSZI9/0MM02aQvl5bBBTQ==} + '@aws-sdk/middleware-host-header@3.714.0': + resolution: {integrity: sha512-6l68kjNrh5QC8FGX3I3geBDavWN5Tg1RLHJ2HLA8ByGBtJyCwnz3hEkKfaxn0bBx0hF9DzbfjEOUF6cDqy2Kjg==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-sso@3.658.1': - resolution: {integrity: sha512-YOagVEsZEk9DmgJEBg+4MBXrPcw/tYas0VQ5OVBqC5XHNbi2OBGJqgmjVPesuu393E7W0VQxtJFDS00O1ewQgA==} + '@aws-sdk/middleware-location-constraint@3.714.0': + resolution: {integrity: sha512-MX7M+V+FblujKck3fyuzePVIAy9530gY719IiSxV6uN1qLHl7VDJxNblpF/KpXakD6rOg8OpvtmqsXj9aBMftw==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-sso@3.693.0': - resolution: {integrity: sha512-479UlJxY+BFjj3pJFYUNC0DCMrykuG7wBAXfsvZqQxKUa83DnH5Q1ID/N2hZLkxjGd4ZW0AC3lTOMxFelGzzpQ==} + '@aws-sdk/middleware-logger@3.714.0': + resolution: {integrity: sha512-RkqHlMvQWUaRklU1bMfUuBvdWwxgUtEqpADaHXlGVj3vtEY2UgBjy+57CveC4MByqKIunNvVHBBbjrGVtwY7Lg==} engines: {node: '>=16.0.0'} - '@aws-sdk/credential-provider-web-identity@3.654.0': - resolution: {integrity: sha512-6a2g9gMtZToqSu+CusjNK5zvbLJahQ9di7buO3iXgbizXpLXU1rnawCpWxwslMpT5fLgMSKDnKDrr6wdEk7jSw==} + '@aws-sdk/middleware-recursion-detection@3.714.0': + resolution: {integrity: sha512-AVU5ixnh93nqtsfgNc284oXsXaadyHGPHpql/jwgaaqQfEXjS/1/j3j9E/vpacfTTz2Vzo7hAOjnvrOXSEVDaA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-sdk-s3@3.714.0': + resolution: {integrity: sha512-YYhX+JefwwEsUxYs0YXn5Mfb97Lo3hwnk3qRIlUkcotCsHYwgCX4jVWjeh8HK+RFFx3Krbh/8/YmzTkI/Z4Z9Q==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-ssec@3.714.0': + resolution: {integrity: sha512-RkK8REAVwNUQmYbIDRw8eYbMJ8F1Rw4C9mlME4BBMhFlelGcD3ErU2ce24moQbDxBjNwHNESmIqgmdQk93CDCQ==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/middleware-user-agent@3.714.0': + resolution: {integrity: sha512-OgLjJf7WxUqA2OgiqGCfIc68gsbXlIG8LjObBiF0qlMStAd0L23AGuK5VmYinJlsle9qUpwQvWgKFKaDgdQXgA==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/region-config-resolver@3.714.0': + resolution: {integrity: sha512-HJzsQxgMOAzZrbf/YIqEx30or4tZK1oNAk6Wm6xecUQx+23JXIaePRu1YFUOLBBERQ4QBPpISFurZWBMZ5ibAw==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/signature-v4-multi-region@3.714.0': + resolution: {integrity: sha512-xIQyx0ILRtJZnSUPpMsWkwASuFDYh9GPnr7p+pmfsV5KtRQluHuoH1wPkPTeNuTnAl7RDHUOmcOgTPUCDxiKxg==} + engines: {node: '>=16.0.0'} + + '@aws-sdk/token-providers@3.714.0': + resolution: {integrity: sha512-vKN064aLE3kl+Zl16Ony3jltHnMddMBT7JRkP1L+lLywhA0PcAKxpdvComul/sTBWnbnwLnaS5NsDUhcWySH8A==} engines: {node: '>=16.0.0'} peerDependencies: - '@aws-sdk/client-sts': ^3.654.0 + '@aws-sdk/client-sso-oidc': ^3.714.0 - '@aws-sdk/credential-provider-web-identity@3.693.0': - resolution: {integrity: sha512-8LB210Pr6VeCiSb2hIra+sAH4KUBLyGaN50axHtIgufVK8jbKIctTZcVY5TO9Se+1107TsruzeXS7VeqVdJfFA==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.693.0 - - '@aws-sdk/lib-storage@3.658.1': - resolution: {integrity: sha512-qk/CoTpsBj9A9KRT24MrB92TcoKxteCGKLuszU0fAb5KMx3tgJ5kNTkc7Ag/B+sZ1EWO+psqWUJKm2co5u1pDQ==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-s3': ^3.658.1 - - '@aws-sdk/middleware-bucket-endpoint@3.654.0': - resolution: {integrity: sha512-/lWkyeLESiK+rAB4+NCw1cVPle9RN7RW/v7B4b8ORiCn1FwZLUPmEiZSYzyh4in5oa3Mri+W/g+KafZDH6LCbA==} + '@aws-sdk/types@3.714.0': + resolution: {integrity: sha512-ZjpP2gYbSFlxxaUDa1Il5AVvfggvUPbjzzB/l3q0gIE5Thd6xKW+yzEpt2mLZ5s5UaYSABZbF94g8NUOF4CVGA==} engines: {node: '>=16.0.0'} - '@aws-sdk/middleware-expect-continue@3.654.0': - resolution: {integrity: sha512-S7fSlo8vdjkQTy9DmdF54ZsPwc+aA4z5Y9JVqAlGL9QiZe/fPtRE3GZ8BBbMICjBfMEa12tWjzhDz9su2c6PIA==} + '@aws-sdk/util-arn-parser@3.693.0': + resolution: {integrity: sha512-WC8x6ca+NRrtpAH64rWu+ryDZI3HuLwlEr8EU6/dbC/pt+r/zC0PBoC15VEygUaBA+isppCikQpGyEDu0Yj7gQ==} engines: {node: '>=16.0.0'} - '@aws-sdk/middleware-flexible-checksums@3.658.1': - resolution: {integrity: sha512-aBhnDIy8PwhgZRJh5U4l1JfLIPLkBeHBCTwn3XjdvhvisXNCfeINWKYuDDHamM+XKgBNUlLoTxpXI2AvLk5cGw==} + '@aws-sdk/util-endpoints@3.714.0': + resolution: {integrity: sha512-Xv+Z2lhe7w7ZZRsgBwBMZgGTVmS+dkkj2S13uNHAx9lhB5ovM8PhK5G/j28xYf6vIibeuHkRAbb7/ozdZIGR+A==} engines: {node: '>=16.0.0'} - '@aws-sdk/middleware-host-header@3.654.0': - resolution: {integrity: sha512-rxGgVHWKp8U2ubMv+t+vlIk7QYUaRCHaVpmUlJv0Wv6Q0KeO9a42T9FxHphjOTlCGQOLcjCreL9CF8Qhtb4mdQ==} + '@aws-sdk/util-locate-window@3.693.0': + resolution: {integrity: sha512-ttrag6haJLWABhLqtg1Uf+4LgHWIMOVSYL+VYZmAp2v4PUGOwWmWQH0Zk8RM7YuQcLfH/EoR72/Yxz6A4FKcuw==} engines: {node: '>=16.0.0'} - '@aws-sdk/middleware-host-header@3.693.0': - resolution: {integrity: sha512-BCki6sAZ5jYwIN/t3ElCiwerHad69ipHwPsDCxJQyeiOnJ8HG+lEpnVIfrnI8A0fLQNSF3Gtx6ahfBpKiv1Oug==} - engines: {node: '>=16.0.0'} + '@aws-sdk/util-user-agent-browser@3.714.0': + resolution: {integrity: sha512-OdJJ03cP9/MgIVToPJPCPUImbpZzTcwdIgbXC0tUQPJhbD7b7cB4LdnkhNHko+MptpOrCq4CPY/33EpOjRdofw==} - '@aws-sdk/middleware-location-constraint@3.654.0': - resolution: {integrity: sha512-Duvv5c4DEQ7P6c0YlcvEUW3xCJi6X2uktafNGjILhVDMQwShSF/aFqNv/ikWU/luQcmWHZ9DtDjTR9UKLh6eTA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-logger@3.654.0': - resolution: {integrity: sha512-OQYb+nWlmASyXfRb989pwkJ9EVUMP1CrKn2eyTk3usl20JZmKo2Vjis6I0tLUkMSxMhnBJJlQKyWkRpD/u1FVg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-logger@3.693.0': - resolution: {integrity: sha512-dXnXDPr+wIiJ1TLADACI1g9pkSB21KkMIko2u4CJ2JCBoxi5IqeTnVoa6YcC8GdFNVRl+PorZ3Zqfmf1EOTC6w==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.654.0': - resolution: {integrity: sha512-gKSomgltKVmsT8sC6W7CrADZ4GHwX9epk3GcH6QhebVO3LA9LRbkL3TwOPUXakxxOLLUTYdOZLIOtFf7iH00lg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.693.0': - resolution: {integrity: sha512-0LDmM+VxXp0u3rG0xQRWD/q6Ubi7G8I44tBPahevD5CaiDZTkmNTrVUf0VEJgVe0iCKBppACMBDkLB0/ETqkFw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-sdk-s3@3.658.1': - resolution: {integrity: sha512-UdiwCY4Eg7e1ZbseKvBr83SARukcqS5R9R3bnx4sb3cEK0wFDXWrlhRMgK94jr8IJeskV1ySyxozdb1XOzOU3w==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-ssec@3.654.0': - resolution: {integrity: sha512-k7hkQDJh4hcRJC7YojQ11kc37SY4foryen26Eafj5qYjeG2OGMW0oZTJDl1TVFJ7AcCjqIuMIo0Ho2US/2JspQ==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-user-agent@3.654.0': - resolution: {integrity: sha512-liCcqPAyRsr53cy2tYu4qeH4MMN0eh9g6k56XzI5xd4SghXH5YWh4qOYAlQ8T66ZV4nPMtD8GLtLXGzsH8moFg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/middleware-user-agent@3.693.0': - resolution: {integrity: sha512-/KUq/KEpFFbQmNmpp7SpAtFAdViquDfD2W0QcG07zYBfz9MwE2ig48ALynXm5sMpRmnG7sJXjdvPtTsSVPfkiw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/region-config-resolver@3.654.0': - resolution: {integrity: sha512-ydGOrXJxj3x0sJhsXyTmvJVLAE0xxuTWFJihTl67RtaO7VRNtd82I3P3bwoMMaDn5WpmV5mPo8fEUDRlBm3fPg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/region-config-resolver@3.693.0': - resolution: {integrity: sha512-YLUkMsUY0GLW/nfwlZ69cy1u07EZRmsv8Z9m0qW317/EZaVx59hcvmcvb+W4bFqj5E8YImTjoGfE4cZ0F9mkyw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/signature-v4-multi-region@3.658.1': - resolution: {integrity: sha512-gad2cOtmwLuiR096PB1vJsv2+KYwI+eN5D+eLaRLCTD9MMGvVWB5xkIXXGmn99ks4gAgtSpzZp8RD6viBj0gIw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/token-providers@3.654.0': - resolution: {integrity: sha512-D8GeJYmvbfWkQDtTB4owmIobSMexZel0fOoetwvgCQ/7L8VPph3Q2bn1TRRIXvH7wdt6DcDxA3tKMHPBkT3GlA==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sso-oidc': ^3.654.0 - - '@aws-sdk/token-providers@3.693.0': - resolution: {integrity: sha512-nDBTJMk1l/YmFULGfRbToOA2wjf+FkQT4dMgYCv+V9uSYsMzQj8A7Tha2dz9yv4vnQgYaEiErQ8d7HVyXcVEoA==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@aws-sdk/client-sso-oidc': ^3.693.0 - - '@aws-sdk/types@3.654.0': - resolution: {integrity: sha512-VWvbED3SV+10QJIcmU/PKjsKilsTV16d1I7/on4bvD/jo1qGeMXqLDBSen3ks/tuvXZF/mFc7ZW/W2DiLVtO7A==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/types@3.692.0': - resolution: {integrity: sha512-RpNvzD7zMEhiKgmlxGzyXaEcg2khvM7wd5sSHVapOcrde1awQSOMGI4zKBQ+wy5TnDfrm170ROz/ERLYtrjPZA==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-arn-parser@3.568.0': - resolution: {integrity: sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-endpoints@3.654.0': - resolution: {integrity: sha512-i902fcBknHs0Irgdpi62+QMvzxE+bczvILXigYrlHL4+PiEnlMVpni5L5W1qCkNZXf8AaMrSBuR1NZAGp6UOUw==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-endpoints@3.693.0': - resolution: {integrity: sha512-eo4F6DRQ/kxS3gxJpLRv+aDNy76DxQJL5B3DPzpr9Vkq0ygVoi4GT5oIZLVaAVIJmi6k5qq9dLsYZfWLUxJJSg==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-locate-window@3.568.0': - resolution: {integrity: sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==} - engines: {node: '>=16.0.0'} - - '@aws-sdk/util-user-agent-browser@3.654.0': - resolution: {integrity: sha512-ykYAJqvnxLt7wfrqya28wuH3/7NdrwzfiFd7NqEVQf7dXVxL5RPEpD7DxjcyQo3DsHvvdUvGZVaQhozycn1pzA==} - - '@aws-sdk/util-user-agent-browser@3.693.0': - resolution: {integrity: sha512-6EUfuKOujtddy18OLJUaXfKBgs+UcbZ6N/3QV4iOkubCUdeM1maIqs++B9bhCbWeaeF5ORizJw5FTwnyNjE/mw==} - - '@aws-sdk/util-user-agent-node@3.654.0': - resolution: {integrity: sha512-a0ojjdBN6pqv6gB4H/QPPSfhs7mFtlVwnmKCM/QrTaFzN0U810PJ1BST3lBx5sa23I5jWHGaoFY+5q65C3clLQ==} + '@aws-sdk/util-user-agent-node@3.714.0': + resolution: {integrity: sha512-x8JoZb7yBEbNUmHUNoRAP4L++6A5uZCVf2yFLw8CZKpH4q+Cf1a68ou48OfnND3H0rbBnLXc/3uOlseRvd57/g==} engines: {node: '>=16.0.0'} peerDependencies: aws-crt: '>=1.0.0' @@ -2479,267 +2429,140 @@ packages: aws-crt: optional: true - '@aws-sdk/util-user-agent-node@3.693.0': - resolution: {integrity: sha512-td0OVX8m5ZKiXtecIDuzY3Y3UZIzvxEr57Hp21NOwieqKCG2UeyQWWeGPv0FQaU7dpTkvFmVNI+tx9iB8V/Nhg==} + '@aws-sdk/xml-builder@3.709.0': + resolution: {integrity: sha512-2GPCwlNxeHspoK/Mc8nbk9cBOkSpp3j2SJUQmFnyQK6V/pR6II2oPRyZkMomug1Rc10hqlBHByMecq4zhV2uUw==} engines: {node: '>=16.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/xml-builder@3.654.0': - resolution: {integrity: sha512-qA2diK3d/ztC8HUb7NwPKbJRV01NpzTzxFn+L5G3HzJBNeKbjLcprQ/9uG9gp2UEx2Go782FI1ddrMNa0qBICA==} - engines: {node: '>=16.0.0'} - - '@babel/code-frame@7.24.7': - resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} - engines: {node: '>=6.9.0'} '@babel/code-frame@7.26.2': resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.25.4': - resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.25.8': - resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==} - engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.3': resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} - '@babel/core@7.25.2': - resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.25.8': - resolution: {integrity: sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==} - engines: {node: '>=6.9.0'} - '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.25.6': - resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.25.7': - resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} - engines: {node: '>=6.9.0'} - '@babel/generator@7.26.3': resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} engines: {node: '>=6.9.0'} - '@babel/helper-annotate-as-pure@7.24.7': - resolution: {integrity: sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==} - engines: {node: '>=6.9.0'} - '@babel/helper-annotate-as-pure@7.25.9': resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - resolution: {integrity: sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.25.7': - resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.9': resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} engines: {node: '>=6.9.0'} - '@babel/helper-create-class-features-plugin@7.25.4': - resolution: {integrity: sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==} + '@babel/helper-create-class-features-plugin@7.25.9': + resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.2': - resolution: {integrity: sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==} + '@babel/helper-create-regexp-features-plugin@7.26.3': + resolution: {integrity: sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-define-polyfill-provider@0.6.2': - resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==} + '@babel/helper-define-polyfill-provider@0.6.3': + resolution: {integrity: sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - '@babel/helper-member-expression-to-functions@7.24.8': - resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-member-expression-to-functions@7.25.9': + resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} engines: {node: '>=6.9.0'} '@babel/helper-module-imports@7.25.9': resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-module-transforms@7.25.7': - resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - '@babel/helper-module-transforms@7.26.0': resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-optimise-call-expression@7.24.7': - resolution: {integrity: sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.24.8': - resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} + '@babel/helper-optimise-call-expression@7.25.9': + resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} engines: {node: '>=6.9.0'} '@babel/helper-plugin-utils@7.25.9': resolution: {integrity: sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.25.0': - resolution: {integrity: sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==} + '@babel/helper-remap-async-to-generator@7.25.9': + resolution: {integrity: sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.25.0': - resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} + '@babel/helper-replace-supers@7.25.9': + resolution: {integrity: sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.25.7': - resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - resolution: {integrity: sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.24.8': - resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.25.7': - resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} '@babel/helper-string-parser@7.25.9': resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.24.7': - resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.25.7': - resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.25.9': resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.25.7': - resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} - engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.25.9': resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.25.0': - resolution: {integrity: sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.25.6': - resolution: {integrity: sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.25.7': - resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} + '@babel/helper-wrap-function@7.25.9': + resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==} engines: {node: '>=6.9.0'} '@babel/helpers@7.26.0': resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/highlight@7.24.7': - resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.25.6': - resolution: {integrity: sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.25.8': - resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==} - engines: {node: '>=6.0.0'} - hasBin: true - '@babel/parser@7.26.3': resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3': - resolution: {integrity: sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==} + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9': + resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0': - resolution: {integrity: sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==} + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9': + resolution: {integrity: sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0': - resolution: {integrity: sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==} + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9': + resolution: {integrity: sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7': - resolution: {integrity: sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==} + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9': + resolution: {integrity: sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0': - resolution: {integrity: sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==} + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9': + resolution: {integrity: sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -2750,56 +2573,19 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-async-generators@7.8.4': - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-properties@7.12.13': - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-static-block@7.14.5': - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-dynamic-import@7.8.3': resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-export-namespace-from@7.8.3': - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-assertions@7.25.6': - resolution: {integrity: sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ==} + '@babel/plugin-syntax-import-assertions@7.26.0': + resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-import-attributes@7.25.6': - resolution: {integrity: sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-json-strings@7.8.3': - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.24.7': - resolution: {integrity: sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==} + '@babel/plugin-syntax-import-attributes@7.26.0': + resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2810,50 +2596,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4': - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-numeric-separator@7.10.4': - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-object-rest-spread@7.8.3': - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3': - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-chaining@7.8.3': - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-private-property-in-object@7.14.5': - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-top-level-await@7.14.5': - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-typescript@7.25.4': - resolution: {integrity: sha512-uMOCoHVU52BsSWxPOMVv5qKRdeSlPuImUCB2dlPuBSU+W2/ROE7/Zg8F2Kepbk+8yBa68LlRKxO+xgEVWorsDg==} + '@babel/plugin-syntax-typescript@7.25.9': + resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2864,248 +2608,242 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-arrow-functions@7.24.7': - resolution: {integrity: sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==} + '@babel/plugin-transform-arrow-functions@7.25.9': + resolution: {integrity: sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.25.4': - resolution: {integrity: sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==} + '@babel/plugin-transform-async-generator-functions@7.25.9': + resolution: {integrity: sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-to-generator@7.24.7': - resolution: {integrity: sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==} + '@babel/plugin-transform-async-to-generator@7.25.9': + resolution: {integrity: sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoped-functions@7.24.7': - resolution: {integrity: sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==} + '@babel/plugin-transform-block-scoped-functions@7.25.9': + resolution: {integrity: sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.25.0': - resolution: {integrity: sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==} + '@babel/plugin-transform-block-scoping@7.25.9': + resolution: {integrity: sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-properties@7.25.4': - resolution: {integrity: sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g==} + '@babel/plugin-transform-class-properties@7.25.9': + resolution: {integrity: sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-class-static-block@7.24.7': - resolution: {integrity: sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==} + '@babel/plugin-transform-class-static-block@7.26.0': + resolution: {integrity: sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.25.4': - resolution: {integrity: sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==} + '@babel/plugin-transform-classes@7.25.9': + resolution: {integrity: sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-computed-properties@7.24.7': - resolution: {integrity: sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==} + '@babel/plugin-transform-computed-properties@7.25.9': + resolution: {integrity: sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-destructuring@7.24.8': - resolution: {integrity: sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==} + '@babel/plugin-transform-destructuring@7.25.9': + resolution: {integrity: sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-dotall-regex@7.24.7': - resolution: {integrity: sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==} + '@babel/plugin-transform-dotall-regex@7.25.9': + resolution: {integrity: sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-keys@7.24.7': - resolution: {integrity: sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==} + '@babel/plugin-transform-duplicate-keys@7.25.9': + resolution: {integrity: sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0': - resolution: {integrity: sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==} + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9': + resolution: {integrity: sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-dynamic-import@7.24.7': - resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} + '@babel/plugin-transform-dynamic-import@7.25.9': + resolution: {integrity: sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.24.7': - resolution: {integrity: sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==} + '@babel/plugin-transform-exponentiation-operator@7.26.3': + resolution: {integrity: sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-export-namespace-from@7.24.7': - resolution: {integrity: sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==} + '@babel/plugin-transform-export-namespace-from@7.25.9': + resolution: {integrity: sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-for-of@7.24.7': - resolution: {integrity: sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==} + '@babel/plugin-transform-for-of@7.25.9': + resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.25.1': - resolution: {integrity: sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==} + '@babel/plugin-transform-function-name@7.25.9': + resolution: {integrity: sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-json-strings@7.24.7': - resolution: {integrity: sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==} + '@babel/plugin-transform-json-strings@7.25.9': + resolution: {integrity: sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.25.2': - resolution: {integrity: sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==} + '@babel/plugin-transform-literals@7.25.9': + resolution: {integrity: sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-logical-assignment-operators@7.24.7': - resolution: {integrity: sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==} + '@babel/plugin-transform-logical-assignment-operators@7.25.9': + resolution: {integrity: sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-member-expression-literals@7.24.7': - resolution: {integrity: sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==} + '@babel/plugin-transform-member-expression-literals@7.25.9': + resolution: {integrity: sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-amd@7.24.7': - resolution: {integrity: sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==} + '@babel/plugin-transform-modules-amd@7.25.9': + resolution: {integrity: sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.24.8': - resolution: {integrity: sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==} + '@babel/plugin-transform-modules-commonjs@7.26.3': + resolution: {integrity: sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.25.0': - resolution: {integrity: sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==} + '@babel/plugin-transform-modules-systemjs@7.25.9': + resolution: {integrity: sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-umd@7.24.7': - resolution: {integrity: sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==} + '@babel/plugin-transform-modules-umd@7.25.9': + resolution: {integrity: sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7': - resolution: {integrity: sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==} + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9': + resolution: {integrity: sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-transform-new-target@7.24.7': - resolution: {integrity: sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==} + '@babel/plugin-transform-new-target@7.25.9': + resolution: {integrity: sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7': - resolution: {integrity: sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==} + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9': + resolution: {integrity: sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-numeric-separator@7.24.7': - resolution: {integrity: sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==} + '@babel/plugin-transform-numeric-separator@7.25.9': + resolution: {integrity: sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-rest-spread@7.24.7': - resolution: {integrity: sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==} + '@babel/plugin-transform-object-rest-spread@7.25.9': + resolution: {integrity: sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-object-super@7.24.7': - resolution: {integrity: sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==} + '@babel/plugin-transform-object-super@7.25.9': + resolution: {integrity: sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-catch-binding@7.24.7': - resolution: {integrity: sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==} + '@babel/plugin-transform-optional-catch-binding@7.25.9': + resolution: {integrity: sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-optional-chaining@7.24.8': - resolution: {integrity: sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==} + '@babel/plugin-transform-optional-chaining@7.25.9': + resolution: {integrity: sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-parameters@7.24.7': - resolution: {integrity: sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==} + '@babel/plugin-transform-parameters@7.25.9': + resolution: {integrity: sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-methods@7.25.4': - resolution: {integrity: sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw==} + '@babel/plugin-transform-private-methods@7.25.9': + resolution: {integrity: sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-private-property-in-object@7.24.7': - resolution: {integrity: sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==} + '@babel/plugin-transform-private-property-in-object@7.25.9': + resolution: {integrity: sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-property-literals@7.24.7': - resolution: {integrity: sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==} + '@babel/plugin-transform-property-literals@7.25.9': + resolution: {integrity: sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-constant-elements@7.25.1': - resolution: {integrity: sha512-SLV/giH/V4SmloZ6Dt40HjTGTAIkxn33TVIHxNGNvo8ezMhrxBkzisj4op1KZYPIOHFLqhv60OHvX+YRu4xbmQ==} + '@babel/plugin-transform-react-constant-elements@7.25.9': + resolution: {integrity: sha512-Ncw2JFsJVuvfRsa2lSHiC55kETQVLSnsYGQ1JDDwkUeWGTL/8Tom8aLTnlqgoeuopWrbbGndrc9AlLYrIosrow==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-display-name@7.24.7': - resolution: {integrity: sha512-H/Snz9PFxKsS1JLI4dJLtnJgCJRoo0AUm3chP6NYr+9En1JMKloheEiLIhlp5MDVznWo+H3AAC1Mc8lmUEpsgg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-development@7.24.7': - resolution: {integrity: sha512-QG9EnzoGn+Qar7rxuW+ZOsbWOt56FvvI93xInqsZDC5fsekx1AlIO4KIJ5M+D0p0SqSH156EpmZyXq630B8OlQ==} + '@babel/plugin-transform-react-display-name@7.25.9': + resolution: {integrity: sha512-KJfMlYIUxQB1CJfO3e0+h0ZHWOTLCPP115Awhaz8U0Zpq36Gl/cXlpoyMRnUWlhNUBAzldnCiAZNvCDj7CrKxQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -3128,104 +2866,104 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-jsx@7.25.2': - resolution: {integrity: sha512-KQsqEAVBpU82NM/B/N9j9WOdphom1SZH3R+2V7INrQUH+V9EBFwZsEJl8eBIVeQE62FxJCc70jzEZwqU7RcVqA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-jsx@7.25.9': resolution: {integrity: sha512-s5XwpQYCqGerXl+Pu6VDL3x0j2d82eiV77UJ8a2mDHAW7j9SWRqQ2y1fNo1Z74CdcYipl5Z41zvjj4Nfzq36rw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-pure-annotations@7.24.7': - resolution: {integrity: sha512-PLgBVk3fzbmEjBJ/u8kFzOqS9tUeDjiaWud/rRym/yjCo/M9cASPlnrd2ZmmZpQT40fOOrvR8jh+n8jikrOhNA==} + '@babel/plugin-transform-react-pure-annotations@7.25.9': + resolution: {integrity: sha512-KQ/Takk3T8Qzj5TppkS1be588lkbTp5uj7w6a0LeQaTMSckU/wK0oJ/pih+T690tkgI5jfmg2TqDJvd41Sj1Cg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-regenerator@7.24.7': - resolution: {integrity: sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==} + '@babel/plugin-transform-regenerator@7.25.9': + resolution: {integrity: sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-reserved-words@7.24.7': - resolution: {integrity: sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-runtime@7.25.4': - resolution: {integrity: sha512-8hsyG+KUYGY0coX6KUCDancA0Vw225KJ2HJO0yCNr1vq5r+lJTleDaJf0K7iOhjw4SWhu03TMBzYTJ9krmzULQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-shorthand-properties@7.24.7': - resolution: {integrity: sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-spread@7.24.7': - resolution: {integrity: sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-sticky-regex@7.24.7': - resolution: {integrity: sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-template-literals@7.24.7': - resolution: {integrity: sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typeof-symbol@7.24.8': - resolution: {integrity: sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typescript@7.25.2': - resolution: {integrity: sha512-lBwRvjSmqiMYe/pS0+1gggjJleUJi7NzjvQ1Fkqtt69hBa/0t1YuW/MLQMAPixfwaQOHUXsd6jeU3Z+vdGv3+A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-escapes@7.24.7': - resolution: {integrity: sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-property-regex@7.24.7': - resolution: {integrity: sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-regex@7.24.7': - resolution: {integrity: sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-sets-regex@7.25.4': - resolution: {integrity: sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==} + '@babel/plugin-transform-regexp-modifiers@7.26.0': + resolution: {integrity: sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/preset-env@7.25.4': - resolution: {integrity: sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==} + '@babel/plugin-transform-reserved-words@7.25.9': + resolution: {integrity: sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-runtime@7.25.9': + resolution: {integrity: sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-shorthand-properties@7.25.9': + resolution: {integrity: sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-spread@7.25.9': + resolution: {integrity: sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-sticky-regex@7.25.9': + resolution: {integrity: sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-template-literals@7.25.9': + resolution: {integrity: sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typeof-symbol@7.25.9': + resolution: {integrity: sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typescript@7.26.3': + resolution: {integrity: sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-escapes@7.25.9': + resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-property-regex@7.25.9': + resolution: {integrity: sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-regex@7.25.9': + resolution: {integrity: sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-sets-regex@7.25.9': + resolution: {integrity: sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/preset-env@7.26.0': + resolution: {integrity: sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -3235,65 +2973,38 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - '@babel/preset-react@7.24.7': - resolution: {integrity: sha512-AAH4lEkpmzFWrGVlHaxJB7RLH21uPQ9+He+eFLWHmF9IuFQVugz8eAsamaW0DXRrTfco5zj1wWtpdcXJUOfsag==} + '@babel/preset-react@7.26.3': + resolution: {integrity: sha512-Nl03d6T9ky516DGK2YMxrTqvnpUW63TnJMOMonj+Zae0JiPC5BC9xPMSL6L8fiSpA5vP88qfygavVQvnLp+6Cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/preset-typescript@7.24.7': - resolution: {integrity: sha512-SyXRe3OdWwIwalxDg5UtJnJQO+YPcTfwiIY2B0Xlddh9o7jpWLvv8X1RthIeDOxQ+O1ML5BLPCONToObyVQVuQ==} + '@babel/preset-typescript@7.26.0': + resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - - '@babel/runtime-corejs3@7.25.6': - resolution: {integrity: sha512-Gz0Nrobx8szge6kQQ5Z5MX9L3ObqNwCQY1PSwSNzreFL7aHGxv8Fp2j3ETV6/wWdbiV+mW6OSm8oQhg3Tcsniw==} + '@babel/runtime-corejs3@7.26.0': + resolution: {integrity: sha512-YXHu5lN8kJCb1LOb9PgV6pvak43X2h4HvRApcN5SdWeaItQOzfn1hgP6jasD6KWQyJDBxrVmA9o9OivlnNJK/w==} engines: {node: '>=6.9.0'} - '@babel/runtime@7.25.6': - resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} + '@babel/runtime@7.26.0': + resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} engines: {node: '>=6.9.0'} - '@babel/standalone@7.25.6': - resolution: {integrity: sha512-Kf2ZcZVqsKbtYhlA7sP0z5A3q5hmCVYMKMWRWNK/5OVwHIve3JY1djVRmIVAx8FMueLIfZGKQDIILK2w8zO4mg==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.25.7': - resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} + '@babel/standalone@7.26.4': + resolution: {integrity: sha512-SF+g7S2mhTT1b7CHyfNjDkPU1corxg4LPYsyP0x5KuCl+EbtBQHRLqr9N3q7e7+x7NQ5LYxQf8mJ2PmzebLr0A==} engines: {node: '>=6.9.0'} '@babel/template@7.25.9': resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.25.7': - resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} - engines: {node: '>=6.9.0'} - '@babel/traverse@7.26.4': resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} engines: {node: '>=6.9.0'} - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.25.8': - resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==} - engines: {node: '>=6.9.0'} - '@babel/types@7.26.3': resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} @@ -3312,6 +3023,258 @@ packages: resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} engines: {node: '>=0.1.90'} + '@csstools/cascade-layer-name-parser@2.0.4': + resolution: {integrity: sha512-7DFHlPuIxviKYZrOiwVU/PiHLm3lLUR23OMuEEtfEOQTOp9hzQ2JjdY6X5H18RVuUPJqSCI+qNnD5iOLMVE0bA==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/color-helpers@5.0.1': + resolution: {integrity: sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==} + engines: {node: '>=18'} + + '@csstools/css-calc@2.1.0': + resolution: {integrity: sha512-X69PmFOrjTZfN5ijxtI8hZ9kRADFSLrmmQ6hgDJ272Il049WGKpDY64KhrFm/7rbWve0z81QepawzjkKlqkNGw==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/css-color-parser@3.0.6': + resolution: {integrity: sha512-S/IjXqTHdpI4EtzGoNCHfqraXF37x12ZZHA1Lk7zoT5pm2lMjFuqhX/89L7dqX4CcMacKK+6ZCs5TmEGb/+wKw==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/css-parser-algorithms@3.0.4': + resolution: {integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/css-tokenizer@3.0.3': + resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==} + engines: {node: '>=18'} + + '@csstools/media-query-list-parser@4.0.2': + resolution: {integrity: sha512-EUos465uvVvMJehckATTlNqGj4UJWkTmdWuDMjqvSUkjGpmOyFZBVwb4knxCm/k2GMTXY+c/5RkdndzFYWeX5A==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.4 + '@csstools/css-tokenizer': ^3.0.3 + + '@csstools/postcss-cascade-layers@5.0.1': + resolution: {integrity: sha512-XOfhI7GShVcKiKwmPAnWSqd2tBR0uxt+runAxttbSp/LY2U16yAVPmAf7e9q4JJ0d+xMNmpwNDLBXnmRCl3HMQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-color-function@4.0.6': + resolution: {integrity: sha512-EcvXfC60cTIumzpsxWuvVjb7rsJEHPvqn3jeMEBUaE3JSc4FRuP7mEQ+1eicxWmIrs3FtzMH9gR3sgA5TH+ebQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-color-mix-function@3.0.6': + resolution: {integrity: sha512-jVKdJn4+JkASYGhyPO+Wa5WXSx1+oUgaXb3JsjJn/BlrtFh5zjocCY7pwWi0nuP24V1fY7glQsxEYcYNy0dMFg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-content-alt-text@2.0.4': + resolution: {integrity: sha512-YItlZUOuZJCBlRaCf8Aucc1lgN41qYGALMly0qQllrxYJhiyzlI6RxOTMUvtWk+KhS8GphMDsDhKQ7KTPfEMSw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-exponential-functions@2.0.5': + resolution: {integrity: sha512-mi8R6dVfA2nDoKM3wcEi64I8vOYEgQVtVKCfmLHXupeLpACfGAided5ddMt5f+CnEodNu4DifuVwb0I6fQDGGQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-font-format-keywords@4.0.0': + resolution: {integrity: sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-gamut-mapping@2.0.6': + resolution: {integrity: sha512-0ke7fmXfc8H+kysZz246yjirAH6JFhyX9GTlyRnM0exHO80XcA9zeJpy5pOp5zo/AZiC/q5Pf+Hw7Pd6/uAoYA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-gradients-interpolation-method@5.0.6': + resolution: {integrity: sha512-Itrbx6SLUzsZ6Mz3VuOlxhbfuyLTogG5DwEF1V8dAi24iMuvQPIHd7Ti+pNDp7j6WixndJGZaoNR0f9VSzwuTg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-hwb-function@4.0.6': + resolution: {integrity: sha512-927Pqy3a1uBP7U8sTfaNdZVB0mNXzIrJO/GZ8us9219q9n06gOqCdfZ0E6d1P66Fm0fYHvxfDbfcUuwAn5UwhQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-ic-unit@4.0.0': + resolution: {integrity: sha512-9QT5TDGgx7wD3EEMN3BSUG6ckb6Eh5gSPT5kZoVtUuAonfPmLDJyPhqR4ntPpMYhUKAMVKAg3I/AgzqHMSeLhA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-initial@2.0.0': + resolution: {integrity: sha512-dv2lNUKR+JV+OOhZm9paWzYBXOCi+rJPqJ2cJuhh9xd8USVrd0cBEPczla81HNOyThMQWeCcdln3gZkQV2kYxA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-is-pseudo-class@5.0.1': + resolution: {integrity: sha512-JLp3POui4S1auhDR0n8wHd/zTOWmMsmK3nQd3hhL6FhWPaox5W7j1se6zXOG/aP07wV2ww0lxbKYGwbBszOtfQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-light-dark-function@2.0.7': + resolution: {integrity: sha512-ZZ0rwlanYKOHekyIPaU+sVm3BEHCe+Ha0/px+bmHe62n0Uc1lL34vbwrLYn6ote8PHlsqzKeTQdIejQCJ05tfw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-logical-float-and-clear@3.0.0': + resolution: {integrity: sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-logical-overflow@2.0.0': + resolution: {integrity: sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-logical-overscroll-behavior@2.0.0': + resolution: {integrity: sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-logical-resize@3.0.0': + resolution: {integrity: sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-logical-viewport-units@3.0.3': + resolution: {integrity: sha512-OC1IlG/yoGJdi0Y+7duz/kU/beCwO+Gua01sD6GtOtLi7ByQUpcIqs7UE/xuRPay4cHgOMatWdnDdsIDjnWpPw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-media-minmax@2.0.5': + resolution: {integrity: sha512-sdh5i5GToZOIAiwhdntRWv77QDtsxP2r2gXW/WbLSCoLr00KTq/yiF1qlQ5XX2+lmiFa8rATKMcbwl3oXDMNew==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4': + resolution: {integrity: sha512-AnGjVslHMm5xw9keusQYvjVWvuS7KWK+OJagaG0+m9QnIjZsrysD2kJP/tr/UJIyYtMCtu8OkUd+Rajb4DqtIQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-nested-calc@4.0.0': + resolution: {integrity: sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-normalize-display-values@4.0.0': + resolution: {integrity: sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-oklab-function@4.0.6': + resolution: {integrity: sha512-Hptoa0uX+XsNacFBCIQKTUBrFKDiplHan42X73EklG6XmQLG7/aIvxoNhvZ7PvOWMt67Pw3bIlUY2nD6p5vL8A==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-progressive-custom-properties@4.0.0': + resolution: {integrity: sha512-XQPtROaQjomnvLUSy/bALTR5VCtTVUFwYs1SblvYgLSeTo2a/bMNwUwo2piXw5rTv/FEYiy5yPSXBqg9OKUx7Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-random-function@1.0.1': + resolution: {integrity: sha512-Ab/tF8/RXktQlFwVhiC70UNfpFQRhtE5fQQoP2pO+KCPGLsLdWFiOuHgSRtBOqEshCVAzR4H6o38nhvRZq8deA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-relative-color-syntax@3.0.6': + resolution: {integrity: sha512-yxP618Xb+ji1I624jILaYM62uEmZcmbdmFoZHoaThw896sq0vU39kqTTF+ZNic9XyPtPMvq0vyvbgmHaszq8xg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-scope-pseudo-class@4.0.1': + resolution: {integrity: sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-sign-functions@1.1.0': + resolution: {integrity: sha512-SLcc20Nujx/kqbSwDmj6oaXgpy3UjFhBy1sfcqPgDkHfOIfUtUVH7OXO+j7BU4v/At5s61N5ZX6shvgPwluhsA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-stepped-value-functions@4.0.5': + resolution: {integrity: sha512-G6SJ6hZJkhxo6UZojVlLo14MohH4J5J7z8CRBrxxUYy9JuZiIqUo5TBYyDGcE0PLdzpg63a7mHSJz3VD+gMwqw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-text-decoration-shorthand@4.0.1': + resolution: {integrity: sha512-xPZIikbx6jyzWvhms27uugIc0I4ykH4keRvoa3rxX5K7lEhkbd54rjj/dv60qOCTisoS+3bmwJTeyV1VNBrXaw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-trigonometric-functions@4.0.5': + resolution: {integrity: sha512-/YQThYkt5MLvAmVu7zxjhceCYlKrYddK6LEmK5I4ojlS6BmO9u2yO4+xjXzu2+NPYmHSTtP4NFSamBCMmJ1NJA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/postcss-unset-value@4.0.0': + resolution: {integrity: sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + '@csstools/selector-resolve-nested@3.0.0': + resolution: {integrity: sha512-ZoK24Yku6VJU1gS79a5PFmC8yn3wIapiKmPgun0hZgEI5AOqgH2kiPRsPz1qkGv4HL+wuDLH83yQyk6inMYrJQ==} + engines: {node: '>=18'} + peerDependencies: + postcss-selector-parser: ^7.0.0 + + '@csstools/selector-specificity@5.0.0': + resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==} + engines: {node: '>=18'} + peerDependencies: + postcss-selector-parser: ^7.0.0 + + '@csstools/utilities@2.0.0': + resolution: {integrity: sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + '@cucumber/ci-environment@10.0.1': resolution: {integrity: sha512-/+ooDMPtKSmvcPMDYnMZt4LuoipfFfHaYspStI4shqw8FyKcfQAmekz6G+QKWjQQrvM+7Hkljwx58MEwPCwwzg==} @@ -3367,11 +3330,11 @@ packages: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} - '@docsearch/css@3.6.1': - resolution: {integrity: sha512-VtVb5DS+0hRIprU2CO6ZQjK2Zg4QU5HrDM1+ix6rT0umsYvFvatMAnf97NHZlVWDaaLlx7GRfR/7FikANiM2Fg==} + '@docsearch/css@3.8.2': + resolution: {integrity: sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==} - '@docsearch/react@3.6.1': - resolution: {integrity: sha512-qXZkEPvybVhSXj0K7U3bXc233tk5e8PfhoZ6MhPOiik/qUQxYC+Dn9DnoS7CxHQQhHfCvTiN0eY9M12oRghEXw==} + '@docsearch/react@3.8.2': + resolution: {integrity: sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' react: '>= 16.8.0 < 19.0.0' @@ -3387,8 +3350,21 @@ packages: search-insights: optional: true - '@docusaurus/core@3.5.2': - resolution: {integrity: sha512-4Z1WkhCSkX4KO0Fw5m/Vuc7Q3NxBG53NE5u59Rs96fWkMPZVSrzEPP16/Nk6cWb/shK7xXPndTmalJtw7twL/w==} + '@docusaurus/babel@3.6.3': + resolution: {integrity: sha512-7dW9Hat9EHYCVicFXYA4hjxBY38+hPuCURL8oRF9fySRm7vzNWuEOghA1TXcykuXZp0HLG2td4RhDxCvGG7tNw==} + engines: {node: '>=18.0'} + + '@docusaurus/bundler@3.6.3': + resolution: {integrity: sha512-47JLuc8D4wA+6VOvmMd5fUC9rFppBQpQOnxDYiVXffm/DeV/wmm3sbpNd5Y+O+G2+nevLTRnvCm/qyancv0Y3A==} + engines: {node: '>=18.0'} + peerDependencies: + '@docusaurus/faster': '*' + peerDependenciesMeta: + '@docusaurus/faster': + optional: true + + '@docusaurus/core@3.6.3': + resolution: {integrity: sha512-xL7FRY9Jr5DWqB6pEnqgKqcMPJOX5V0pgWXi5lCiih11sUBmcFKM7c3+GyxcVeeWFxyYSDP3grLTWqJoP4P9Vw==} engines: {node: '>=18.0'} hasBin: true peerDependencies: @@ -3396,90 +3372,90 @@ packages: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/cssnano-preset@3.5.2': - resolution: {integrity: sha512-D3KiQXOMA8+O0tqORBrTOEQyQxNIfPm9jEaJoALjjSjc2M/ZAWcUfPQEnwr2JB2TadHw2gqWgpZckQmrVWkytA==} + '@docusaurus/cssnano-preset@3.6.3': + resolution: {integrity: sha512-qP7SXrwZ+23GFJdPN4aIHQrZW+oH/7tzwEuc/RNL0+BdZdmIjYQqUxdXsjE4lFxLNZjj0eUrSNYIS6xwfij+5Q==} engines: {node: '>=18.0'} - '@docusaurus/logger@3.5.2': - resolution: {integrity: sha512-LHC540SGkeLfyT3RHK3gAMK6aS5TRqOD4R72BEU/DE2M/TY8WwEUAMY576UUc/oNJXv8pGhBmQB6N9p3pt8LQw==} + '@docusaurus/logger@3.6.3': + resolution: {integrity: sha512-xSubJixcNyMV9wMV4q0s47CBz3Rlc5jbcCCuij8pfQP8qn/DIpt0ks8W6hQWzHAedg/J/EwxxUOUrnEoKzJo8g==} engines: {node: '>=18.0'} - '@docusaurus/lqip-loader@3.5.2': - resolution: {integrity: sha512-yUD90PgwbGciCHHiQTWXZvpLv9nVTpXrX8Ilz5Sl6oJ1bwnLgGsbl7h+EseVbwBnKhVCoujW/EKRU6+3HqeeXQ==} + '@docusaurus/lqip-loader@3.6.3': + resolution: {integrity: sha512-GlQIhVpskcD7T1Lm/eYR+T0ZurEly3291t/KIJCRZcl3ggVcpRlPDXVx3X2o6O5ESClEt5V5ev0i1J9UaCw8IQ==} engines: {node: '>=18.0'} - '@docusaurus/mdx-loader@3.5.2': - resolution: {integrity: sha512-ku3xO9vZdwpiMIVd8BzWV0DCqGEbCP5zs1iHfKX50vw6jX8vQo0ylYo1YJMZyz6e+JFJ17HYHT5FzVidz2IflA==} + '@docusaurus/mdx-loader@3.6.3': + resolution: {integrity: sha512-3iJdiDz9540ppBseeI93tWTDtUGVkxzh59nMq4ignylxMuXBLK8dFqVeaEor23v1vx6TrGKZ2FuLaTB+U7C0QQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/module-type-aliases@3.5.2': - resolution: {integrity: sha512-Z+Xu3+2rvKef/YKTMxZHsEXp1y92ac0ngjDiExRdqGTmEKtCUpkbNYH8v5eXo5Ls+dnW88n6WTa+Q54kLOkwPg==} + '@docusaurus/module-type-aliases@3.6.3': + resolution: {integrity: sha512-MjaXX9PN/k5ugNvfRZdWyKWq4FsrhN4LEXaj0pEmMebJuBNlFeGyKQUa9DRhJHpadNaiMLrbo9m3U7Ig5YlsZg==} peerDependencies: react: '*' react-dom: '*' - '@docusaurus/plugin-client-redirects@3.5.2': - resolution: {integrity: sha512-GMU0ZNoVG1DEsZlBbwLPdh0iwibrVZiRfmdppvX17SnByCVP74mb/Nne7Ss7ALgxQLtM4IHbXi8ij90VVjAJ+Q==} + '@docusaurus/plugin-client-redirects@3.6.3': + resolution: {integrity: sha512-fQDCxoJCO1jXNQGQmhgYoX3Yx+Z2xSbrLf3PBET6pHnsRk6gGW/VuCHcfQuZlJzbTxN0giQ5u3XcQQ/LzXftJA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-content-blog@3.5.2': - resolution: {integrity: sha512-R7ghWnMvjSf+aeNDH0K4fjyQnt5L0KzUEnUhmf1e3jZrv3wogeytZNN6n7X8yHcMsuZHPOrctQhXWnmxu+IRRg==} + '@docusaurus/plugin-content-blog@3.6.3': + resolution: {integrity: sha512-k0ogWwwJU3pFRFfvW1kRVHxzf2DutLGaaLjAnHVEU6ju+aRP0Z5ap/13DHyPOfHeE4WKpn/M0TqjdwZAcY3kAw==} engines: {node: '>=18.0'} peerDependencies: '@docusaurus/plugin-content-docs': '*' react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-content-docs@3.5.2': - resolution: {integrity: sha512-Bt+OXn/CPtVqM3Di44vHjE7rPCEsRCB/DMo2qoOuozB9f7+lsdrHvD0QCHdBs0uhz6deYJDppAr2VgqybKPlVQ==} + '@docusaurus/plugin-content-docs@3.6.3': + resolution: {integrity: sha512-r2wS8y/fsaDcxkm20W5bbYJFPzdWdEaTWVYjNxlHlcmX086eqQR1Fomlg9BHTJ0dLXPzAlbC8EN4XqMr3QzNCQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-content-pages@3.5.2': - resolution: {integrity: sha512-WzhHjNpoQAUz/ueO10cnundRz+VUtkjFhhaQ9jApyv1a46FPURO4cef89pyNIOMny1fjDz/NUN2z6Yi+5WUrCw==} + '@docusaurus/plugin-content-pages@3.6.3': + resolution: {integrity: sha512-eHrmTgjgLZsuqfsYr5X2xEwyIcck0wseSofWrjTwT9FLOWp+KDmMAuVK+wRo7sFImWXZk3oV/xX/g9aZrhD7OA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-debug@3.5.2': - resolution: {integrity: sha512-kBK6GlN0itCkrmHuCS6aX1wmoWc5wpd5KJlqQ1FyrF0cLDnvsYSnh7+ftdwzt7G6lGBho8lrVwkkL9/iQvaSOA==} + '@docusaurus/plugin-debug@3.6.3': + resolution: {integrity: sha512-zB9GXfIZNPRfzKnNjU6xGVrqn9bPXuGhpjgsuc/YtcTDjnjhasg38NdYd5LEqXex5G/zIorQgWB3n6x/Ut62vQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-google-analytics@3.5.2': - resolution: {integrity: sha512-rjEkJH/tJ8OXRE9bwhV2mb/WP93V441rD6XnM6MIluu7rk8qg38iSxS43ga2V2Q/2ib53PcqbDEJDG/yWQRJhQ==} + '@docusaurus/plugin-google-analytics@3.6.3': + resolution: {integrity: sha512-rCDNy1QW8Dag7nZq67pcum0bpFLrwvxJhYuVprhFh8BMBDxV0bY+bAkGHbSf68P3Bk9C3hNOAXX1srGLIDvcTA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-google-gtag@3.5.2': - resolution: {integrity: sha512-lm8XL3xLkTPHFKKjLjEEAHUrW0SZBSHBE1I+i/tmYMBsjCcUB5UJ52geS5PSiOCFVR74tbPGcPHEV/gaaxFeSA==} + '@docusaurus/plugin-google-gtag@3.6.3': + resolution: {integrity: sha512-+OyDvhM6rqVkQOmLVkQWVJAizEEfkPzVWtIHXlWPOCFGK9X4/AWeBSrU0WG4iMg9Z4zD4YDRrU+lvI4s6DSC+w==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-google-tag-manager@3.5.2': - resolution: {integrity: sha512-QkpX68PMOMu10Mvgvr5CfZAzZQFx8WLlOiUQ/Qmmcl6mjGK6H21WLT5x7xDmcpCoKA/3CegsqIqBR+nA137lQg==} + '@docusaurus/plugin-google-tag-manager@3.6.3': + resolution: {integrity: sha512-1M6UPB13gWUtN2UHX083/beTn85PlRI9ABItTl/JL1FJ5dJTWWFXXsHf9WW/6hrVwthwTeV/AGbGKvLKV+IlCA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-ideal-image@3.5.2': - resolution: {integrity: sha512-FnHi3a5DjYRvjN1XbXRe1Cmiqfc+tAI2VmThN1Mr9teLB0ibuRi++P98q6+KyamBWKrJmuskWLMdr71acwHM8Q==} + '@docusaurus/plugin-ideal-image@3.6.3': + resolution: {integrity: sha512-y5Pi4UH8wsFUEFPzjzo1GEtb9vfi5VfWTH/ONifDW84ldYaZBPzVM4AIVWcuNPlYG+p4eYwHE4eTuJFe2iupKQ==} engines: {node: '>=18.0'} peerDependencies: jimp: '*' @@ -3489,22 +3465,22 @@ packages: jimp: optional: true - '@docusaurus/plugin-pwa@3.5.2': - resolution: {integrity: sha512-FCwE+C04PgoCpOnDecr4qnVJdwrOphOVRkeXSUvL6dEHjxfuB+WpSxFA6ASVSxPnFwrBhwt8UQ3vYQgxYNSstQ==} + '@docusaurus/plugin-pwa@3.6.3': + resolution: {integrity: sha512-lFAQBuu1k2RL0batJNDJhMUBH7idtTOEGFnBIqoV/q5ZFfq7LElh3pc4XIm9P249v5biEQnKX+51UcRoOo7iNA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/plugin-sitemap@3.5.2': - resolution: {integrity: sha512-DnlqYyRAdQ4NHY28TfHuVk414ft2uruP4QWCH//jzpHjqvKyXjj2fmDtI8RPUBh9K8iZKFMHRnLtzJKySPWvFA==} + '@docusaurus/plugin-sitemap@3.6.3': + resolution: {integrity: sha512-94qOO4M9Fwv9KfVQJsgbe91k+fPJ4byf1L3Ez8TUa6TAFPo/BrLwQ80zclHkENlL1824TuxkcMKv33u6eydQCg==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/preset-classic@3.5.2': - resolution: {integrity: sha512-3ihfXQ95aOHiLB5uCu+9PRy2gZCeSZoDcqpnDvf3B+sTrMvMTr8qRUzBvWkoIqc82yG5prCboRjk1SVILKx6sg==} + '@docusaurus/preset-classic@3.6.3': + resolution: {integrity: sha512-VHSYWROT3flvNNI1SrnMOtW1EsjeHNK9dhU6s9eY5hryZe79lUqnZJyze/ymDe2LXAqzyj6y5oYvyBoZZk6ErA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 @@ -3515,8 +3491,8 @@ packages: peerDependencies: react: '*' - '@docusaurus/remark-plugin-npm2yarn@3.5.2': - resolution: {integrity: sha512-EAD7R/skPuhW3lWZyDhRuFs3m2EGaR008tuoe6SrFre7PifoxmSCwXk8Nb4VtVRKnnbn4IgHyqq+ma47gGmKwg==} + '@docusaurus/remark-plugin-npm2yarn@3.6.3': + resolution: {integrity: sha512-ZF1QM4vULeBi0vqpNI2TLBH9vUB7JkN7aMGPpKy4jM4HvGH3ZM4Rq4xGqpGLL1IsiRtAENyzlTMdcA+q+l4OJg==} engines: {node: '>=18.0'} '@docusaurus/responsive-loader@1.7.0': @@ -3531,62 +3507,52 @@ packages: sharp: optional: true - '@docusaurus/theme-classic@3.5.2': - resolution: {integrity: sha512-XRpinSix3NBv95Rk7xeMF9k4safMkwnpSgThn0UNQNumKvmcIYjfkwfh2BhwYh/BxMXQHJ/PdmNh22TQFpIaYg==} + '@docusaurus/theme-classic@3.6.3': + resolution: {integrity: sha512-1RRLK1tSArI2c00qugWYO3jRocjOZwGF1mBzPPylDVRwWCS/rnWWR91ChdbbaxIupRJ+hX8ZBYrwr5bbU0oztQ==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/theme-common@3.5.2': - resolution: {integrity: sha512-QXqlm9S6x9Ibwjs7I2yEDgsCocp708DrCrgHgKwg2n2AY0YQ6IjU0gAK35lHRLOvAoJUfCKpQAwUykB0R7+Eew==} + '@docusaurus/theme-common@3.6.3': + resolution: {integrity: sha512-b8ZkhczXHDxWWyvz+YJy4t/PlPbEogTTbgnHoflYnH7rmRtyoodTsu8WVM12la5LmlMJBclBXFl29OH8kPE7gg==} engines: {node: '>=18.0'} peerDependencies: '@docusaurus/plugin-content-docs': '*' react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/theme-search-algolia@3.5.2': - resolution: {integrity: sha512-qW53kp3VzMnEqZGjakaV90sst3iN1o32PH+nawv1uepROO8aEGxptcq2R5rsv7aBShSRbZwIobdvSYKsZ5pqvA==} + '@docusaurus/theme-search-algolia@3.6.3': + resolution: {integrity: sha512-rt+MGCCpYgPyWCGXtbxlwFbTSobu15jWBTPI2LHsHNa5B0zSmOISX6FWYAPt5X1rNDOqMGM0FATnh7TBHRohVA==} engines: {node: '>=18.0'} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/theme-translations@3.5.2': - resolution: {integrity: sha512-GPZLcu4aT1EmqSTmbdpVrDENGR2yObFEX8ssEFYTCiAIVc0EihNSdOIBTazUvgNqwvnoU1A8vIs1xyzc3LITTw==} + '@docusaurus/theme-translations@3.6.3': + resolution: {integrity: sha512-Gb0regclToVlngSIIwUCtBMQBq48qVUaN1XQNKW4XwlsgUyk0vP01LULdqbem7czSwIeBAFXFoORJ0RPX7ht/w==} engines: {node: '>=18.0'} - '@docusaurus/tsconfig@3.5.2': - resolution: {integrity: sha512-rQ7toURCFnWAIn8ubcquDs0ewhPwviMzxh6WpRjBW7sJVCXb6yzwUaY3HMNa0VXCFw+qkIbFywrMTf+Pb4uHWQ==} + '@docusaurus/tsconfig@3.6.3': + resolution: {integrity: sha512-1pT/rTrRpMV15E4tJH95W5PrjboMn5JkKF+Ys8cTjMegetiXjs0gPFOSDA5hdTlberKQLDO50xPjMJHondLuzA==} - '@docusaurus/types@3.5.2': - resolution: {integrity: sha512-N6GntLXoLVUwkZw7zCxwy9QiuEXIcTVzA9AkmNw16oc0AP3SXLrMmDMMBIfgqwuKWa6Ox6epHol9kMtJqekACw==} + '@docusaurus/types@3.6.3': + resolution: {integrity: sha512-xD9oTGDrouWzefkhe9ogB2fDV96/82cRpNGx2HIvI5L87JHNhQVIWimQ/3JIiiX/TEd5S9s+VO6FFguwKNRVow==} peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - '@docusaurus/utils-common@3.5.2': - resolution: {integrity: sha512-i0AZjHiRgJU6d7faQngIhuHKNrszpL/SHQPgF1zH4H+Ij6E9NBYGy6pkcGWToIv7IVPbs+pQLh1P3whn0gWXVg==} - engines: {node: '>=18.0'} - peerDependencies: - '@docusaurus/types': '*' - peerDependenciesMeta: - '@docusaurus/types': - optional: true - - '@docusaurus/utils-validation@3.5.2': - resolution: {integrity: sha512-m+Foq7augzXqB6HufdS139PFxDC5d5q2QKZy8q0qYYvGdI6nnlNsGH4cIGsgBnV7smz+mopl3g4asbSDvMV0jA==} + '@docusaurus/utils-common@3.6.3': + resolution: {integrity: sha512-v4nKDaANLgT3pMBewHYEMAl/ufY0LkXao1QkFWzI5huWFOmNQ2UFzv2BiKeHX5Ownis0/w6cAyoxPhVdDonlSQ==} engines: {node: '>=18.0'} - '@docusaurus/utils@3.5.2': - resolution: {integrity: sha512-33QvcNFh+Gv+C2dP9Y9xWEzMgf3JzrpL2nW9PopidiohS1nDcyknKRx2DWaFvyVTTYIkkABVSr073VTj/NITNA==} + '@docusaurus/utils-validation@3.6.3': + resolution: {integrity: sha512-bhEGGiN5BE38h21vjqD70Gxg++j+PfYVddDUE5UFvLDup68QOcpD33CLr+2knPorlxRbEaNfz6HQDUMQ3HuqKw==} + engines: {node: '>=18.0'} + + '@docusaurus/utils@3.6.3': + resolution: {integrity: sha512-0R/FR3bKVl4yl8QwbL4TYFfR+OXBRpVUaTJdENapBGR3YMwfM6/JnhGilWQO8AOwPJGtGoDK7ib8+8UF9f3OZQ==} engines: {node: '>=18.0'} - peerDependencies: - '@docusaurus/types': '*' - peerDependenciesMeta: - '@docusaurus/types': - optional: true '@eggjs/yauzl@2.11.0': resolution: {integrity: sha512-Jq+k2fCZJ3i3HShb0nxLUiAgq5pwo8JTT1TrH22JoehZQ0Nm2dvByGIja1NYfNyuE4Tx5/Dns5nVsBN/mlC8yg==} @@ -4032,42 +3998,38 @@ packages: cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} 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.11.1': - resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.18.0': - resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + '@eslint/config-array@0.19.1': + resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/eslintrc@3.1.0': - resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + '@eslint/core@0.9.1': + resolution: {integrity: sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@8.57.1': - resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/js@9.10.0': - resolution: {integrity: sha512-fuXtbiP5GWIn8Fz+LWoOMVf/Jxm+aajZYkhi6CuEm4SxymFM+eUWzbO9qXT+L0iCkL5+KGYMCSGxo686H19S1g==} + '@eslint/eslintrc@3.2.0': + resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@2.1.4': - resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + '@eslint/js@9.17.0': + resolution: {integrity: sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.1.0': - resolution: {integrity: sha512-autAXT203ixhqei9xt+qkYOvY8l6LAFIdT2UXc/RPNeUVfqRF1BV94GTJyVPFKT8nFM6MyVJhjLj9E8JWvf5zQ==} + '@eslint/object-schema@2.1.5': + resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.2.4': + resolution: {integrity: sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@gar/promisify@1.1.3': @@ -4084,39 +4046,34 @@ packages: '@hapi/topo@5.1.0': resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} - '@humanwhocodes/config-array@0.13.0': - resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.6': + resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + engines: {node: '>=18.18.0'} '@humanwhocodes/module-importer@1.0.1': resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} - '@humanwhocodes/object-schema@2.0.3': - resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} - deprecated: Use @eslint/object-schema instead + '@humanwhocodes/retry@0.3.1': + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} - '@humanwhocodes/retry@0.3.0': - resolution: {integrity: sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==} + '@humanwhocodes/retry@0.4.1': + resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} engines: {node: '>=18.18'} '@hutson/parse-repository-url@3.0.2': resolution: {integrity: sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==} engines: {node: '>=6.9.0'} - '@inquirer/checkbox@2.5.0': - resolution: {integrity: sha512-sMgdETOfi2dUHT8r7TT1BTKOwNvdDGFDXYWtQ2J69SvlYNntk9I/gJe7r5yvMwwsuKnYbuRs3pNhx4tgNck5aA==} - engines: {node: '>=18'} - '@inquirer/checkbox@3.0.1': resolution: {integrity: sha512-0hm2nrToWUdD6/UHnel/UKGdk1//ke5zGUpHIvk5ZWmaKezlGxZkOJXNSWsdxO/rEqTkbB3lNC2J6nBElV2aAQ==} engines: {node: '>=18'} - '@inquirer/confirm@3.2.0': - resolution: {integrity: sha512-oOIwPs0Dvq5220Z8lGL/6LHRTEr9TgLHmiI99Rj1PJ1p1czTys+olrgBqZk4E2qC0YTzeHprxSQmoHioVdJ7Lw==} - engines: {node: '>=18'} - '@inquirer/confirm@4.0.1': resolution: {integrity: sha512-46yL28o2NJ9doViqOy0VDcoTzng7rAb6yPQKU7VDLqkmbCaH4JqK4yk4XqlzNWy9PVC5pG1ZUXPBQv+VqnYs2w==} engines: {node: '>=18'} @@ -4125,86 +4082,46 @@ packages: resolution: {integrity: sha512-F2VBt7W/mwqEU4bL0RnHNZmC/OxzNx9cOYxHqnXX3MP6ruYvZUZAW9imgN9+h/uBT/oP8Gh888J2OZSbjSeWcg==} engines: {node: '>=18'} - '@inquirer/editor@2.2.0': - resolution: {integrity: sha512-9KHOpJ+dIL5SZli8lJ6xdaYLPPzB8xB9GZItg39MBybzhxA16vxmszmQFrRwbOA918WA2rvu8xhDEg/p6LXKbw==} - engines: {node: '>=18'} - '@inquirer/editor@3.0.1': resolution: {integrity: sha512-VA96GPFaSOVudjKFraokEEmUQg/Lub6OXvbIEZU1SDCmBzRkHGhxoFAVaF30nyiB4m5cEbDgiI2QRacXZ2hw9Q==} engines: {node: '>=18'} - '@inquirer/expand@2.3.0': - resolution: {integrity: sha512-qnJsUcOGCSG1e5DTOErmv2BPQqrtT6uzqn1vI/aYGiPKq+FgslGZmtdnXbhuI7IlT7OByDoEEqdnhUnVR2hhLw==} - engines: {node: '>=18'} - '@inquirer/expand@3.0.1': resolution: {integrity: sha512-ToG8d6RIbnVpbdPdiN7BCxZGiHOTomOX94C2FaT5KOHupV40tKEDozp12res6cMIfRKrXLJyexAZhWVHgbALSQ==} engines: {node: '>=18'} - '@inquirer/figures@1.0.6': - resolution: {integrity: sha512-yfZzps3Cso2UbM7WlxKwZQh2Hs6plrbjs1QnzQDZhK2DgyCo6D8AaHps9olkNcUFlcYERMqU3uJSp1gmy3s/qQ==} - engines: {node: '>=18'} - - '@inquirer/input@2.3.0': - resolution: {integrity: sha512-XfnpCStx2xgh1LIRqPXrTNEEByqQWoxsWYzNRSEUxJ5c6EQlhMogJ3vHKu8aXuTacebtaZzMAHwEL0kAflKOBw==} + '@inquirer/figures@1.0.8': + resolution: {integrity: sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==} engines: {node: '>=18'} '@inquirer/input@3.0.1': resolution: {integrity: sha512-BDuPBmpvi8eMCxqC5iacloWqv+5tQSJlUafYWUe31ow1BVXjW2a5qe3dh4X/Z25Wp22RwvcaLCc2siHobEOfzg==} engines: {node: '>=18'} - '@inquirer/number@1.1.0': - resolution: {integrity: sha512-ilUnia/GZUtfSZy3YEErXLJ2Sljo/mf9fiKc08n18DdwdmDbOzRcTv65H1jjDvlsAuvdFXf4Sa/aL7iw/NanVA==} - engines: {node: '>=18'} - '@inquirer/number@2.0.1': resolution: {integrity: sha512-QpR8jPhRjSmlr/mD2cw3IR8HRO7lSVOnqUvQa8scv1Lsr3xoAMMworcYW3J13z3ppjBFBD2ef1Ci6AE5Qn8goQ==} engines: {node: '>=18'} - '@inquirer/password@2.2.0': - resolution: {integrity: sha512-5otqIpgsPYIshqhgtEwSspBQE40etouR8VIxzpJkv9i0dVHIpyhiivbkH9/dGiMLdyamT54YRdGJLfl8TFnLHg==} - engines: {node: '>=18'} - '@inquirer/password@3.0.1': resolution: {integrity: sha512-haoeEPUisD1NeE2IanLOiFr4wcTXGWrBOyAyPZi1FfLJuXOzNmxCJPgUrGYKVh+Y8hfGJenIfz5Wb/DkE9KkMQ==} engines: {node: '>=18'} - '@inquirer/prompts@5.5.0': - resolution: {integrity: sha512-BHDeL0catgHdcHbSFFUddNzvx/imzJMft+tWDPwTm3hfu8/tApk1HrooNngB2Mb4qY+KaRWF+iZqoVUPeslEog==} - engines: {node: '>=18'} - '@inquirer/prompts@6.0.1': resolution: {integrity: sha512-yl43JD/86CIj3Mz5mvvLJqAOfIup7ncxfJ0Btnl0/v5TouVUyeEdcpknfgc+yMevS/48oH9WAkkw93m7otLb/A==} engines: {node: '>=18'} - '@inquirer/rawlist@2.3.0': - resolution: {integrity: sha512-zzfNuINhFF7OLAtGHfhwOW2TlYJyli7lOUoJUXw/uyklcwalV6WRXBXtFIicN8rTRK1XTiPWB4UY+YuW8dsnLQ==} - engines: {node: '>=18'} - '@inquirer/rawlist@3.0.1': resolution: {integrity: sha512-VgRtFIwZInUzTiPLSfDXK5jLrnpkuSOh1ctfaoygKAdPqjcjKYmGh6sCY1pb0aGnCGsmhUxoqLDUAU0ud+lGXQ==} engines: {node: '>=18'} - '@inquirer/search@1.1.0': - resolution: {integrity: sha512-h+/5LSj51dx7hp5xOn4QFnUaKeARwUCLs6mIhtkJ0JYPBLmEYjdHSYh7I6GrLg9LwpJ3xeX0FZgAG1q0QdCpVQ==} - engines: {node: '>=18'} - '@inquirer/search@2.0.1': resolution: {integrity: sha512-r5hBKZk3g5MkIzLVoSgE4evypGqtOannnB3PKTG9NRZxyFRKcfzrdxXXPcoJQsxJPzvdSU2Rn7pB7lw0GCmGAg==} engines: {node: '>=18'} - '@inquirer/select@2.5.0': - resolution: {integrity: sha512-YmDobTItPP3WcEI86GvPo+T2sRHkxxOq/kXmsBjHS5BVXUgvgZ5AfJjkvQvZr03T81NnI3KrrRuMzeuYUQRFOA==} - engines: {node: '>=18'} - '@inquirer/select@3.0.1': resolution: {integrity: sha512-lUDGUxPhdWMkN/fHy1Lk7pF3nK1fh/gqeyWXmctefhxLYxlDsc7vsPBEpxrfVGDsVdyYJsiJoD4bJ1b623cV1Q==} engines: {node: '>=18'} - '@inquirer/type@1.5.5': - resolution: {integrity: sha512-MzICLu4yS7V8AA61sANROZ9vT1H3ooca5dSmI1FjZkzq7o/koMsRfQSzRtFo+F3Ao4Sf1C0bpLKejpKB/+j6MA==} - engines: {node: '>=18'} - '@inquirer/type@2.0.0': resolution: {integrity: sha512-XvJRx+2KR3YXyYtPUUy+qd9i7p+GO9Ko6VIIpWlBrpWwXDv8WLFeHTxz35CfQFUiBMLXlGHhGzys7lqit9gWag==} engines: {node: '>=18'} @@ -4252,8 +4169,8 @@ packages: resolution: {integrity: sha512-qUjAm8uvIR7oExn/Fp7/bvn58HSZng5itQDM9x0vaxXWxxGH/8MDmqX/h7OUBz9ka+KfYRaTxe4Y6wiM8+nphw==} engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0} - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} '@jridgewell/resolve-uri@3.1.2': @@ -4273,8 +4190,8 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@jspm/core@2.0.1': - resolution: {integrity: sha512-Lg3PnLp0QXpxwLIAuuJboLeRaIhrgJjeuh797QADg3xz8wGLugQOS5DpsE8A6i6Adgzf+bacllkKZG3J0tGfDw==} + '@jspm/core@2.1.0': + resolution: {integrity: sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==} '@leichtgewicht/ip-codec@2.0.5': resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==} @@ -4289,11 +4206,11 @@ packages: '@lit/reactive-element@2.0.4': resolution: {integrity: sha512-GFn91inaUa2oHLak8awSIigYz0cU0Payr1rcFsrkf5OJ5eSPxElyZfKh0f2p9FsTiZWXQdWGJeXZICEfXXYSXQ==} - '@mdx-js/mdx@3.0.1': - resolution: {integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==} + '@mdx-js/mdx@3.1.0': + resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} - '@mdx-js/react@3.0.1': - resolution: {integrity: sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==} + '@mdx-js/react@3.1.0': + resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==} peerDependencies: '@types/react': '>=16' react: '>=16' @@ -4311,8 +4228,8 @@ packages: '@napi-rs/wasm-runtime@0.2.4': resolution: {integrity: sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==} - '@noble/hashes@1.5.0': - resolution: {integrity: sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==} + '@noble/hashes@1.6.1': + resolution: {integrity: sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==} engines: {node: ^14.21.3 || >=16} '@nodelib/fs.scandir@2.1.5': @@ -4393,75 +4310,75 @@ packages: resolution: {integrity: sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==} engines: {node: ^16.14.0 || >=18.0.0} - '@nuxt/kit@3.13.2': - resolution: {integrity: sha512-KvRw21zU//wdz25IeE1E5m/aFSzhJloBRAQtv+evcFeZvuroIxpIQuUqhbzuwznaUwpiWbmwlcsp5uOWmi4vwA==} + '@nuxt/kit@3.14.1592': + resolution: {integrity: sha512-r9r8bISBBisvfcNgNL3dSIQHSBe0v5YkX5zwNblIC2T0CIEgxEVoM5rq9O5wqgb5OEydsHTtT2hL57vdv6VT2w==} engines: {node: ^14.18.0 || >=16.10.0} - '@nuxt/schema@3.13.2': - resolution: {integrity: sha512-CCZgpm+MkqtOMDEgF9SWgGPBXlQ01hV/6+2reDEpJuqFPGzV8HYKPBcIFvn7/z5ahtgutHLzjP71Na+hYcqSpw==} + '@nuxt/schema@3.14.1592': + resolution: {integrity: sha512-A1d/08ueX8stTXNkvGqnr1eEXZgvKn+vj6s7jXhZNWApUSqMgItU4VK28vrrdpKbjIPwq2SwhnGOHUYvN9HwCQ==} engines: {node: ^14.18.0 || >=16.10.0} - '@nx/devkit@20.0.8': - resolution: {integrity: sha512-MRUGgWSMzYtdwtolvWL5EZlX+7xYgu7JIXf1+3rmZU5adMmlqWKrIbyvDf53XocQlT8oxx/xXTEFHhIymGTQCg==} + '@nx/devkit@20.2.2': + resolution: {integrity: sha512-uqs0LVvuRRVAfFdn0ewvmr1vsNV9Ztugw36emcLJxskqhBZb10K+vzdTDAZpg5aVE2ISg1BmPidoOyk1tP+Omg==} peerDependencies: nx: '>= 19 <= 21' - '@nx/nx-darwin-arm64@20.0.8': - resolution: {integrity: sha512-tDoafq5YUyOwxR1Y796WXA6j49OLJRO7TA/Fym52SSuD3AULbgo3/X5XeY6oL2PWM044CuUVrp3V4cIDUtyJpA==} + '@nx/nx-darwin-arm64@20.2.2': + resolution: {integrity: sha512-gnS5mtbaBAO5TJkl4T68rQaN/79MMWePavw2SOcFyFnIdAriGEZ+ZFDUE0B/xYJSs9CPWLaGHf+n7oqyxaGd9A==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@nx/nx-darwin-x64@20.0.8': - resolution: {integrity: sha512-bvfZ6VhSvOpPV00veaJDO1a4X+f0dn8S1A73/2ThbGZrZLAQIFrA8v+ysax+bfCGRHNdtlAL+f7TG2buh/4BRg==} + '@nx/nx-darwin-x64@20.2.2': + resolution: {integrity: sha512-IctvdQon+K8mlhl06zIq1xTPwf5L4OuS7crzCmK26p5F/lV6iz/UXSPCcgn+bYKOL/q3QCLNR7UasQMjzgCNkQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@nx/nx-freebsd-x64@20.0.8': - resolution: {integrity: sha512-AdOme0o/pTFy+TutIOAamuGTqbh6nOLrkNEX8f4ogfDRH+k/WvjRQ4z4ne58wf/2EVXua4jKTIEipIZAP/Ad1w==} + '@nx/nx-freebsd-x64@20.2.2': + resolution: {integrity: sha512-4/Blg9Y6LVU8tS8yoa2BEXPHWsorpvCuZRH0gXPh96i6b71o4ORPafyLOHp08o3WjtUZb4jl5TfDryE+8y62ZA==} engines: {node: '>= 10'} cpu: [x64] os: [freebsd] - '@nx/nx-linux-arm-gnueabihf@20.0.8': - resolution: {integrity: sha512-PYf7Z30A1TCZq9HVUP6JjT3ghTLYkaBpR6vDwiGWUV/exuNmhUgfYW6TiTpiSArXwnAgSIbaoGe537iEvYzA7A==} + '@nx/nx-linux-arm-gnueabihf@20.2.2': + resolution: {integrity: sha512-AVAxbUXi6q+inmp8re3OV7HzH6fbkKnnMKvjDLnkzK8dA2Mv4JFl/gz++rgkYfEsBk20lcB1i3unqNrtOvzS7Q==} engines: {node: '>= 10'} cpu: [arm] os: [linux] - '@nx/nx-linux-arm64-gnu@20.0.8': - resolution: {integrity: sha512-3VpvhjmNR78HVxGzpWiwqZsG5sNvLUv2Qfohtxyc3561o8VU41R9Onf/LJmbbZvmdDaPvvXQp3rs0OXT4i7T1g==} + '@nx/nx-linux-arm64-gnu@20.2.2': + resolution: {integrity: sha512-h04SLH464Oh/k/1mpAfsMhTVlnc1NJItx4N5DLZb2VuOOY+Tquhrp7HBJLyAhU0Q74JG0LevGFO6wdxliHupmA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@nx/nx-linux-arm64-musl@20.0.8': - resolution: {integrity: sha512-3Z7fTJGG8h4VCHhD8Ix0zr6eFMfa1y3YDlzm8Clxu4Enzz0pEsUrT+ph6qrsArnIyUgiCowSi8+xgHFg7V/F1Q==} + '@nx/nx-linux-arm64-musl@20.2.2': + resolution: {integrity: sha512-rnRXDLvHHj66rCslD4ShDq6KBOVsQ+X63GWTGKM0pnTIIDje9+ltZCoAByieCUm4BvFfCWMUf9y0mGfZvLVKSw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@nx/nx-linux-x64-gnu@20.0.8': - resolution: {integrity: sha512-Uttl1RHzWpjZgdzowCUNjC6/b3YhZR31wyXWgVF4PDWpDVgy4EigGc19tdrvv8pUVKQFuj0uaSTPUklguN7c3A==} + '@nx/nx-linux-x64-gnu@20.2.2': + resolution: {integrity: sha512-K1Z2DVTnyCGl4nolhZ8fvHEixoe1pZOY256LD6D0lGca4Fsi3mHQ7lDU237Pzyc91+cfLva/OAvrivRPeU+DMA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@nx/nx-linux-x64-musl@20.0.8': - resolution: {integrity: sha512-llc6ywSPaOWQzEzD73USyAXd/y3Slu+GHS02IsQqZeA23EIOEzhvEeeeKgs4F8LKuFW/TpV6T5IhvSHw9/mvBg==} + '@nx/nx-linux-x64-musl@20.2.2': + resolution: {integrity: sha512-pyWe+d2Y2pJVgPZf27KkDBufhFPq+Xhs3/zAQdJbicMvym7uhw0qMTV+lmoMXgfx52WZzhqTfG8JQcDqHjExJw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@nx/nx-win32-arm64-msvc@20.0.8': - resolution: {integrity: sha512-GhPVVNrL0QcQ3B6r0P0Dta3TIesJz7uso7iI5rCZ/oOGa02UsT4NkQBpIhxYQZ4TnHYNy84g4rHtYHrSlpDlEw==} + '@nx/nx-win32-arm64-msvc@20.2.2': + resolution: {integrity: sha512-zqSoVrV34tx6qhQo/PwD9IMGhzoNSaFQxjTjNCY61sE7iwi5Qt4dDs3Rlh1ZFCBFnrjziymRPY2RryArgeK8Bw==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@nx/nx-win32-x64-msvc@20.0.8': - resolution: {integrity: sha512-yLlcgM0zFdmsExdLv8O2g5FWQ6d2vyN5OynKV+F5BrWHC4LvrqyYJ99y++5bLFoEi19RYIK6sLnzGIRSF6dHGg==} + '@nx/nx-win32-x64-msvc@20.2.2': + resolution: {integrity: sha512-IfQf2axmCuSArhFGaocIDt8ajWDHXoVut5NOQH4eV2q9whP1j/LVB8EehEaolF5UenM7rhL4V25PXPuuBaUq4A==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -4507,8 +4424,8 @@ packages: '@octokit/plugin-enterprise-rest@6.0.1': resolution: {integrity: sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==} - '@octokit/plugin-paginate-rest@11.3.3': - resolution: {integrity: sha512-o4WRoOJZlKqEEgj+i9CpcmnByvtzoUYC6I8PD2SA95M+BJ2x8h7oLcVOg9qcowWXBOdcTRsMZiwvM3EyLm9AfA==} + '@octokit/plugin-paginate-rest@11.3.6': + resolution: {integrity: sha512-zcvqqf/+TicbTCa/Z+3w4eBJcAxCFymtc0UAIsR3dEVoNilWld4oXdscQ3laXamTszUZdusw97K8+DrbFiOwjw==} engines: {node: '>= 18'} peerDependencies: '@octokit/core': '>=6' @@ -4530,8 +4447,8 @@ packages: peerDependencies: '@octokit/core': '>=6' - '@octokit/plugin-rest-endpoint-methods@13.2.4': - resolution: {integrity: sha512-gusyAVgTrPiuXOdfqOySMDztQHv6928PQ3E4dqVGEtOvRXAKRbJR4b1zQyniIT9waqaWk/UDaoJ2dyPr7Bk7Iw==} + '@octokit/plugin-rest-endpoint-methods@13.2.6': + resolution: {integrity: sha512-wMsdyHMjSfKjGINkdGKki06VEkgdEldIGstIEyGX0wbYHGByOwN/KiM+hAAlUwAtPkP3gvXtVQA9L3ITdV2tVw==} engines: {node: '>= 18'} peerDependencies: '@octokit/core': '>=6' @@ -4546,8 +4463,8 @@ packages: resolution: {integrity: sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==} engines: {node: '>= 14'} - '@octokit/request-error@6.1.4': - resolution: {integrity: sha512-VpAhIUxwhWZQImo/dWAN/NpPqqojR6PSLgLYAituLM6U+ddx9hCioFGwBr5Mi+oi5CLeJkcAs3gJ0PYYzU6wUg==} + '@octokit/request-error@6.1.5': + resolution: {integrity: sha512-IlBTfGX8Yn/oFPMwSfvugfncK2EwRLjzbrpifNaMY8o/HTEAFqCA1FZxjD9cWvSKBHgrIhc4CSBIzMxiLsbzFQ==} engines: {node: '>= 18'} '@octokit/request@6.2.8': @@ -4572,8 +4489,8 @@ packages: '@octokit/types@10.0.0': resolution: {integrity: sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==} - '@octokit/types@13.5.0': - resolution: {integrity: sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ==} + '@octokit/types@13.6.2': + resolution: {integrity: sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==} '@octokit/types@9.3.2': resolution: {integrity: sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==} @@ -4599,16 +4516,16 @@ packages: '@paralleldrive/cuid2@2.2.2': resolution: {integrity: sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==} - '@percy/appium-app@2.0.8': - resolution: {integrity: sha512-meG7ijg5tXsyf92UeVyUb76gOICHiWFjjYmhnXbb3xlwfYAmZ4XWMvv7vhXFQ0vQKCasUEwrYo1bcZ40qzCrqg==} + '@percy/appium-app@2.0.9': + resolution: {integrity: sha512-50tBFevee8f6zxAPr8o8e73vy8JNuLKRi7BcbdWh+N7dK+B6Iu1tyGNElFddDjJaTlWcv1Tg9iAdRlXLfIpZhg==} engines: {node: '>=14'} - '@percy/sdk-utils@1.29.3': - resolution: {integrity: sha512-ITUZinf+50O/Izs/X3HaRxnZvLv4Fw8lV2mSqVD/500au6bApUNeMHnoaAHOC57FgyUOUaYldiAAXNtE/zANtw==} + '@percy/sdk-utils@1.30.5': + resolution: {integrity: sha512-0XCTywh03lynsvPxAgPpZOR3Zg5hqzWCWlJP2T2o/jKS7cT+O4vqS6jZfWoA9ik0ivji5bthaAHEmqVKdw1dDQ==} engines: {node: '>=14'} - '@percy/selenium-webdriver@2.0.5': - resolution: {integrity: sha512-bNj52xQm02dY872loFa+8OwyuGcdYHYvCKflmSEsF9EDRiSDj0Wr+XP+DDIgDAl9xXschA7OOdXCLTWV4zEQWA==} + '@percy/selenium-webdriver@2.1.0': + resolution: {integrity: sha512-CkPe22AJV2ATVDIWLY8PSPDSKx081dS+COgydfdRHXnc5mRw/8YGRcMJw4uvRR4r4u8b9ET2KtPVg0Q56vuSEg==} engines: {node: '>=14'} '@pkgjs/parseargs@0.11.0': @@ -4633,8 +4550,8 @@ packages: '@polka/url@0.5.0': resolution: {integrity: sha512-oZLYFEAzUKyi3SKnXvj32ZCEGH6RDnao7COuCVhDydMS9NrCSVXhM79VaKyP5+Zc33m0QXEd2DN3UkU7OsHcfw==} - '@polka/url@1.0.0-next.25': - resolution: {integrity: sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==} + '@polka/url@1.0.0-next.28': + resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} '@preact/preset-vite@2.9.3': resolution: {integrity: sha512-uVDSKsFnPa/bmRTAcPiYpTvC04T1lhIH2ho3CJZLYibwcwliElS/i64iyATZkgR4DJxSc/JwOCSQS4IF/a03OQ==} @@ -4662,19 +4579,11 @@ packages: '@promptbook/utils@0.69.5': resolution: {integrity: sha512-xm5Ti/Hp3o4xHrsK9Yy3MS6KbDxYbq485hDsFvxqaNA7equHLPdo8H8faTitTeb14QCDfLW4iwCxdVYu5sn6YQ==} - '@promptbook/utils@0.70.0-1': - resolution: {integrity: sha512-qd2lLRRN+sE6UuNMi2tEeUUeb4zmXnxY5EMdfHVXNE+bqBDpUC7/aEfXgA3jnUXEr+xFjQ8PTFQgWvBMaKvw0g==} - '@puppeteer/browsers@2.3.0': resolution: {integrity: sha512-ioXoq9gPxkss4MYhD+SFaU9p1IHFUX0ILAWFPyjGaBdjLsYAlZw6j1iLA0N/m12uVHLFDfSYNF7EQccjinIMDA==} engines: {node: '>=18'} hasBin: true - '@puppeteer/browsers@2.3.1': - resolution: {integrity: sha512-uK7o3hHkK+naEobMSJ+2ySYyXtQkBxIH8Gn4MK9ciePjNV+Pf+PgY/W7iPzn2MTjl3stcYB5AlcTmPYw7AXDwA==} - engines: {node: '>=18'} - hasBin: true - '@puppeteer/browsers@2.4.0': resolution: {integrity: sha512-x8J1csfIygOwf6D6qUAZ0ASk3z63zPb7wkNeHRerCMh82qWKUrOgkuP005AJC8lDL6/evtXETGEJVcwykKT4/g==} engines: {node: '>=18'} @@ -4696,8 +4605,8 @@ packages: '@types/babel__core': optional: true - '@rollup/plugin-node-resolve@15.2.3': - resolution: {integrity: sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==} + '@rollup/plugin-node-resolve@15.3.1': + resolution: {integrity: sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^2.78.0||^3.0.0||^4.0.0 @@ -4738,8 +4647,8 @@ packages: resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} - '@rollup/pluginutils@5.1.0': - resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -4747,70 +4656,21 @@ packages: rollup: optional: true - '@rollup/pluginutils@5.1.3': - resolution: {integrity: sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/rollup-android-arm-eabi@4.21.3': - resolution: {integrity: sha512-MmKSfaB9GX+zXl6E8z4koOr/xU63AMVleLEa64v7R0QF/ZloMs5vcD1sHgM64GXXS1csaJutG+ddtzcueI/BLg==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm-eabi@4.24.0': - resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} - cpu: [arm] - os: [android] - '@rollup/rollup-android-arm-eabi@4.28.1': resolution: {integrity: sha512-2aZp8AES04KI2dy3Ss6/MDjXbwBzj+i0GqKtWXgw2/Ma6E4jJvujryO6gJAghIRVz7Vwr9Gtl/8na3nDUKpraQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.21.3': - resolution: {integrity: sha512-zrt8ecH07PE3sB4jPOggweBjJMzI1JG5xI2DIsUbkA+7K+Gkjys6eV7i9pOenNSDJH3eOr/jLb/PzqtmdwDq5g==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-android-arm64@4.24.0': - resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} - cpu: [arm64] - os: [android] - '@rollup/rollup-android-arm64@4.28.1': resolution: {integrity: sha512-EbkK285O+1YMrg57xVA+Dp0tDBRB93/BZKph9XhMjezf6F4TpYjaUSuPt5J0fZXlSag0LmZAsTmdGGqPp4pQFA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.21.3': - resolution: {integrity: sha512-P0UxIOrKNBFTQaXTxOH4RxuEBVCgEA5UTNV6Yz7z9QHnUJ7eLX9reOd/NYMO3+XZO2cco19mXTxDMXxit4R/eQ==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-arm64@4.24.0': - resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} - cpu: [arm64] - os: [darwin] - '@rollup/rollup-darwin-arm64@4.28.1': resolution: {integrity: sha512-prduvrMKU6NzMq6nxzQw445zXgaDBbMQvmKSJaxpaZ5R1QDM8w+eGxo6Y/jhT/cLoCvnZI42oEqf9KQNYz1fqQ==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.21.3': - resolution: {integrity: sha512-L1M0vKGO5ASKntqtsFEjTq/fD91vAqnzeaF6sfNAy55aD+Hi2pBI5DKwCO+UNDQHWsDViJLqshxOahXyLSh3EA==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.24.0': - resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} - cpu: [x64] - os: [darwin] - '@rollup/rollup-darwin-x64@4.28.1': resolution: {integrity: sha512-WsvbOunsUk0wccO/TV4o7IKgloJ942hVFK1CLatwv6TJspcCZb9umQkPdvB7FihmdxgaKR5JyxDjWpCOp4uZlQ==} cpu: [x64] @@ -4826,61 +4686,21 @@ packages: cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.21.3': - resolution: {integrity: sha512-btVgIsCjuYFKUjopPoWiDqmoUXQDiW2A4C3Mtmp5vACm7/GnyuprqIDPNczeyR5W8rTXEbkmrJux7cJmD99D2g==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': - resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.28.1': resolution: {integrity: sha512-QAg11ZIt6mcmzpNE6JZBpKfJaKkqTm1A9+y9O+frdZJEuhQxiugM05gnCWiANHj4RmbgeVJpTdmKRmH/a+0QbA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.21.3': - resolution: {integrity: sha512-zmjbSphplZlau6ZTkxd3+NMtE4UKVy7U4aVFMmHcgO5CUbw17ZP6QCgyxhzGaU/wFFdTfiojjbLG3/0p9HhAqA==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.24.0': - resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.28.1': resolution: {integrity: sha512-dRP9PEBfolq1dmMcFqbEPSd9VlRuVWEGSmbxVEfiq2cs2jlZAl0YNxFzAQS2OrQmsLBLAATDMb3Z6MFv5vOcXg==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.21.3': - resolution: {integrity: sha512-nSZfcZtAnQPRZmUkUQwZq2OjQciR6tEoJaZVFvLHsj0MF6QhNMg0fQ6mUOsiCUpTqxTx0/O6gX0V/nYc7LrgPw==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.24.0': - resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.28.1': resolution: {integrity: sha512-uGr8khxO+CKT4XU8ZUH1TTEUtlktK6Kgtv0+6bIFSeiSlnGJHG1tSFSjm41uQ9sAO/5ULx9mWOz70jYLyv1QkA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.21.3': - resolution: {integrity: sha512-MnvSPGO8KJXIMGlQDYfvYS3IosFN2rKsvxRpPO2l2cum+Z3exiExLwVU+GExL96pn8IP+GdH8Tz70EpBhO0sIQ==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.24.0': - resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-musl@4.28.1': resolution: {integrity: sha512-QF54q8MYGAqMLrX2t7tNpi01nvq5RI59UBNx+3+37zoKX5KViPo/gk2QLhsuqok05sSCRluj0D00LzCwBikb0A==} cpu: [arm64] @@ -4891,134 +4711,51 @@ packages: cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.21.3': - resolution: {integrity: sha512-+W+p/9QNDr2vE2AXU0qIy0qQE75E8RTwTwgqS2G5CRQ11vzq0tbnfBd6brWhS9bCRjAjepJe2fvvkvS3dno+iw==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': - resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} - cpu: [ppc64] - os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': resolution: {integrity: sha512-pTnTdBuC2+pt1Rmm2SV7JWRqzhYpEILML4PKODqLz+C7Ou2apEV52h19CR7es+u04KlqplggmN9sqZlekg3R1A==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.21.3': - resolution: {integrity: sha512-yXH6K6KfqGXaxHrtr+Uoy+JpNlUlI46BKVyonGiaD74ravdnF9BUNC+vV+SIuB96hUMGShhKV693rF9QDfO6nQ==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.24.0': - resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} - cpu: [riscv64] - os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.28.1': resolution: {integrity: sha512-vWXy1Nfg7TPBSuAncfInmAI/WZDd5vOklyLJDdIRKABcZWojNDY0NJwruY2AcnCLnRJKSaBgf/GiJfauu8cQZA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.21.3': - resolution: {integrity: sha512-R8cwY9wcnApN/KDYWTH4gV/ypvy9yZUHlbJvfaiXSB48JO3KpwSpjOGqO4jnGkLDSk1hgjYkTbTt6Q7uvPf8eg==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.24.0': - resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} - cpu: [s390x] - os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.28.1': resolution: {integrity: sha512-/yqC2Y53oZjb0yz8PVuGOQQNOTwxcizudunl/tFs1aLvObTclTwZ0JhXF2XcPT/zuaymemCDSuuUPXJJyqeDOg==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.21.3': - resolution: {integrity: sha512-kZPbX/NOPh0vhS5sI+dR8L1bU2cSO9FgxwM8r7wHzGydzfSjLRCFAT87GR5U9scj2rhzN3JPYVC7NoBbl4FZ0g==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.24.0': - resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-gnu@4.28.1': resolution: {integrity: sha512-fzgeABz7rrAlKYB0y2kSEiURrI0691CSL0+KXwKwhxvj92VULEDQLpBYLHpF49MSiPG4sq5CK3qHMnb9tlCjBw==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.21.3': - resolution: {integrity: sha512-S0Yq+xA1VEH66uiMNhijsWAafffydd2X5b77eLHfRmfLsRSpbiAWiRHV6DEpz6aOToPsgid7TI9rGd6zB1rhbg==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.24.0': - resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-musl@4.28.1': resolution: {integrity: sha512-xQTDVzSGiMlSshpJCtudbWyRfLaNiVPXt1WgdWTwWz9n0U12cI2ZVtWe/Jgwyv/6wjL7b66uu61Vg0POWVfz4g==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.21.3': - resolution: {integrity: sha512-9isNzeL34yquCPyerog+IMCNxKR8XYmGd0tHSV+OVx0TmE0aJOo9uw4fZfUuk2qxobP5sug6vNdZR6u7Mw7Q+Q==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-arm64-msvc@4.24.0': - resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} - cpu: [arm64] - os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.28.1': resolution: {integrity: sha512-wSXmDRVupJstFP7elGMgv+2HqXelQhuNf+IS4V+nUpNVi/GUiBgDmfwD0UGN3pcAnWsgKG3I52wMOBnk1VHr/A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.21.3': - resolution: {integrity: sha512-nMIdKnfZfzn1Vsk+RuOvl43ONTZXoAPUUxgcU0tXooqg4YrAqzfKzVenqqk2g5efWh46/D28cKFrOzDSW28gTA==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.24.0': - resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} - cpu: [ia32] - os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.28.1': resolution: {integrity: sha512-ZkyTJ/9vkgrE/Rk9vhMXhf8l9D+eAhbAVbsGsXKy2ohmJaWg0LPQLnIxRdRp/bKyr8tXuPlXhIoGlEB5XpJnGA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.21.3': - resolution: {integrity: sha512-fOvu7PCQjAj4eWDEuD8Xz5gpzFqXzGlxHZozHP4b9Jxv9APtdxL6STqztDzMLuRXEc4UpXGGhx029Xgm91QBeA==} - cpu: [x64] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.24.0': - resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} - cpu: [x64] - os: [win32] - '@rollup/rollup-win32-x64-msvc@4.28.1': resolution: {integrity: sha512-ZvK2jBafvttJjoIdKm/Q/Bh7IJ1Ose9IBOwpOXcOvW3ikGTQGmKDgxTC6oCAzW6PynbkKP8+um1du81XJHZ0JA==} cpu: [x64] os: [win32] - '@rtsao/scc@1.1.0': - resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} - '@serenity-js/core@3.29.5': - resolution: {integrity: sha512-aou/UKZkqpDui+Ue2Xki7a0oCu0jKAobSVlGpmjBlbL36rGd3CwfZ+fe7O9HMz/UuU0R5zxDh+fWAldJLxO/qQ==} + '@serenity-js/core@3.31.1': + resolution: {integrity: sha512-rLNjnIwmCMliL4KCspNW+P5wVa1kTty2iVAV+On5sEurWHVdtL8BFtRSmmPY1/ZlaHqjPCskQde/L+xNxOH45Q==} engines: {node: ^18.12 || ^20 || ^22} '@sideway/address@4.1.5': @@ -5057,8 +4794,8 @@ packages: '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - '@sinclair/typebox@0.33.15': - resolution: {integrity: sha512-R50kz7xohLjhwgmAiw+6qOAYkeFXsK8i1CbEQB1qJTiHMK5WywpvGIHJenE3n4t7dqj3bas+H1cD5dTZIfrAEw==} + '@sinclair/typebox@0.33.22': + resolution: {integrity: sha512-auUj4k+f4pyrIVf4GW5UKquSZFHJWri06QgARy9C0t9ZTjJLIuNIrr1yl9bWcJWJ1Gz1vOvYN1D+QPaIlNMVkQ==} '@sindresorhus/is@0.14.0': resolution: {integrity: sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==} @@ -5083,8 +4820,8 @@ packages: '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} - '@sinonjs/fake-timers@13.0.2': - resolution: {integrity: sha512-4Bb+oqXZTSTZ1q27Izly9lv8B9dlV61CROxPiVtywwzv5SnytJqhvYe6FclHYuXml4cd1VHPo1zd5PmTeJozvA==} + '@sinonjs/fake-timers@13.0.5': + resolution: {integrity: sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==} '@slorber/react-ideal-image@0.0.12': resolution: {integrity: sha512-u8KiDTEkMA7/KAeA5ywg/P7YG4zuKhWtswfVZDH8R8HXgQsFcHIYU2WaQnGuK/Du7Wdj90I+SdFmajSGFRvoKA==} @@ -5097,89 +4834,63 @@ packages: '@slorber/remark-comment@1.0.0': resolution: {integrity: sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==} - '@smithy/abort-controller@3.1.4': - resolution: {integrity: sha512-VupaALAQlXViW3/enTf/f5l5JZYSAxoJL7f0nanhNNKnww6DGCg1oYIuNP78KDugnkwthBO6iEcym16HhWV8RQ==} + '@smithy/abort-controller@3.1.9': + resolution: {integrity: sha512-yiW0WI30zj8ZKoSYNx90no7ugVn3khlyH/z5W8qtKBtVE6awRALbhSG+2SAHA1r6bO/6M9utxYKVZ3PCJ1rWxw==} engines: {node: '>=16.0.0'} - '@smithy/abort-controller@3.1.8': - resolution: {integrity: sha512-+3DOBcUn5/rVjlxGvUPKc416SExarAQ+Qe0bqk30YSUjbepwpS7QN0cyKUSifvLJhdMZ0WPzPP5ymut0oonrpQ==} + '@smithy/chunked-blob-reader-native@3.0.1': + resolution: {integrity: sha512-VEYtPvh5rs/xlyqpm5NRnfYLZn+q0SRPELbvBV+C/G7IQ+ouTuo+NKKa3ShG5OaFR8NYVMXls9hPYLTvIKKDrQ==} + + '@smithy/chunked-blob-reader@4.0.0': + resolution: {integrity: sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==} + + '@smithy/config-resolver@3.0.13': + resolution: {integrity: sha512-Gr/qwzyPaTL1tZcq8WQyHhTZREER5R1Wytmz4WnVGL4onA3dNk6Btll55c8Vr58pLdvWZmtG8oZxJTw3t3q7Jg==} engines: {node: '>=16.0.0'} - '@smithy/chunked-blob-reader-native@3.0.0': - resolution: {integrity: sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==} - - '@smithy/chunked-blob-reader@3.0.0': - resolution: {integrity: sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==} - - '@smithy/config-resolver@3.0.12': - resolution: {integrity: sha512-YAJP9UJFZRZ8N+UruTeq78zkdjUHmzsY62J4qKWZ4SXB4QXJ/+680EfXXgkYA2xj77ooMqtUY9m406zGNqwivQ==} + '@smithy/core@2.5.5': + resolution: {integrity: sha512-G8G/sDDhXA7o0bOvkc7bgai6POuSld/+XhNnWAbpQTpLv2OZPvyqQ58tLPPlz0bSNsXktldDDREIv1LczFeNEw==} engines: {node: '>=16.0.0'} - '@smithy/config-resolver@3.0.8': - resolution: {integrity: sha512-Tv1obAC18XOd2OnDAjSWmmthzx6Pdeh63FbLin8MlPiuJ2ATpKkq0NcNOJFr0dO+JmZXnwu8FQxKJ3TKJ3Hulw==} + '@smithy/credential-provider-imds@3.2.8': + resolution: {integrity: sha512-ZCY2yD0BY+K9iMXkkbnjo+08T2h8/34oHd0Jmh6BZUSZwaaGlGCyBT/3wnS7u7Xl33/EEfN4B6nQr3Gx5bYxgw==} engines: {node: '>=16.0.0'} - '@smithy/core@2.4.6': - resolution: {integrity: sha512-6lQQp99hnyuNNIzeTYSzCUXJHwvvFLY7hfdFGSJM95tjRDJGfzWYFRBXPaM9766LiiTsQ561KErtbufzUFSYUg==} + '@smithy/eventstream-codec@3.1.10': + resolution: {integrity: sha512-323B8YckSbUH0nMIpXn7HZsAVKHYHFUODa8gG9cHo0ySvA1fr5iWaNT+iIL0UCqUzG6QPHA3BSsBtRQou4mMqQ==} + + '@smithy/eventstream-serde-browser@3.0.14': + resolution: {integrity: sha512-kbrt0vjOIihW3V7Cqj1SXQvAI5BR8SnyQYsandva0AOR307cXAc+IhPngxIPslxTLfxwDpNu0HzCAq6g42kCPg==} engines: {node: '>=16.0.0'} - '@smithy/core@2.5.3': - resolution: {integrity: sha512-96uW8maifUSmehaeW7uydWn7wBc98NEeNI3zN8vqakGpyCQgzyJaA64Z4FCOUmAdCJkhppd/7SZ798Fo4Xx37g==} + '@smithy/eventstream-serde-config-resolver@3.0.11': + resolution: {integrity: sha512-P2pnEp4n75O+QHjyO7cbw/vsw5l93K/8EWyjNCAAybYwUmj3M+hjSQZ9P5TVdUgEG08ueMAP5R4FkuSkElZ5tQ==} engines: {node: '>=16.0.0'} - '@smithy/credential-provider-imds@3.2.3': - resolution: {integrity: sha512-VoxMzSzdvkkjMJNE38yQgx4CfnmT+Z+5EUXkg4x7yag93eQkVQgZvN3XBSHC/ylfBbLbAtdu7flTCChX9I+mVg==} + '@smithy/eventstream-serde-node@3.0.13': + resolution: {integrity: sha512-zqy/9iwbj8Wysmvi7Lq7XFLeDgjRpTbCfwBhJa8WbrylTAHiAu6oQTwdY7iu2lxigbc9YYr9vPv5SzYny5tCXQ==} engines: {node: '>=16.0.0'} - '@smithy/credential-provider-imds@3.2.7': - resolution: {integrity: sha512-cEfbau+rrWF8ylkmmVAObOmjbTIzKyUC5TkBL58SbLywD0RCBC4JAUKbmtSm2w5KUJNRPGgpGFMvE2FKnuNlWQ==} + '@smithy/eventstream-serde-universal@3.0.13': + resolution: {integrity: sha512-L1Ib66+gg9uTnqp/18Gz4MDpJPKRE44geOjOQ2SVc0eiaO5l255ADziATZgjQjqumC7yPtp1XnjHlF1srcwjKw==} engines: {node: '>=16.0.0'} - '@smithy/eventstream-codec@3.1.5': - resolution: {integrity: sha512-6pu+PT2r+5ZnWEV3vLV1DzyrpJ0TmehQlniIDCSpZg6+Ji2SfOI38EqUyQ+O8lotVElCrfVc9chKtSMe9cmCZQ==} + '@smithy/fetch-http-handler@4.1.2': + resolution: {integrity: sha512-R7rU7Ae3ItU4rC0c5mB2sP5mJNbCfoDc8I5XlYjIZnquyUwec7fEo78F6DA3SmgJgkU1qTMcZJuGblxZsl10ZA==} - '@smithy/eventstream-serde-browser@3.0.9': - resolution: {integrity: sha512-PiQLo6OQmZAotJweIcObL1H44gkvuJACKMNqpBBe5Rf2Ax1DOcGi/28+feZI7yTe1ERHlQQaGnm8sSkyDUgsMg==} + '@smithy/hash-blob-browser@3.1.10': + resolution: {integrity: sha512-elwslXOoNunmfS0fh55jHggyhccobFkexLYC1ZeZ1xP2BTSrcIBaHV2b4xUQOdctrSNOpMqOZH1r2XzWTEhyfA==} + + '@smithy/hash-node@3.0.11': + resolution: {integrity: sha512-emP23rwYyZhQBvklqTtwetkQlqbNYirDiEEwXl2v0GYWMnCzxst7ZaRAnWuy28njp5kAH54lvkdG37MblZzaHA==} engines: {node: '>=16.0.0'} - '@smithy/eventstream-serde-config-resolver@3.0.6': - resolution: {integrity: sha512-iew15It+c7WfnVowWkt2a7cdPp533LFJnpjDQgfZQcxv2QiOcyEcea31mnrk5PVbgo0nNH3VbYGq7myw2q/F6A==} + '@smithy/hash-stream-node@3.1.10': + resolution: {integrity: sha512-olomK/jZQ93OMayW1zfTHwcbwBdhcZOHsyWyiZ9h9IXvc1mCD/VuvzbLb3Gy/qNJwI4MANPLctTp2BucV2oU/Q==} engines: {node: '>=16.0.0'} - '@smithy/eventstream-serde-node@3.0.8': - resolution: {integrity: sha512-6m+wI+fT0na+6oao6UqALVA38fsScCpoG5UO/A8ZSyGLnPM2i4MS1cFUhpuALgvLMxfYoTCh7qSeJa0aG4IWpQ==} - engines: {node: '>=16.0.0'} - - '@smithy/eventstream-serde-universal@3.0.8': - resolution: {integrity: sha512-09tqzIQ6e+7jLqGvRji1yJoDbL/zob0OFhq75edgStWErGLf16+yI5hRc/o9/YAybOhUZs/swpW2SPn892G5Gg==} - engines: {node: '>=16.0.0'} - - '@smithy/fetch-http-handler@3.2.8': - resolution: {integrity: sha512-Lqe0B8F5RM7zkw//6avq1SJ8AfaRd3ubFUS1eVp5WszV7p6Ne5hQ4dSuMHDpNRPhgTvj4va9Kd/pcVigHEHRow==} - - '@smithy/fetch-http-handler@4.1.1': - resolution: {integrity: sha512-bH7QW0+JdX0bPBadXt8GwMof/jz0H28I84hU1Uet9ISpzUqXqRQ3fEZJ+ANPOhzSEczYvANNl3uDQDYArSFDtA==} - - '@smithy/hash-blob-browser@3.1.5': - resolution: {integrity: sha512-Vi3eoNCmao4iKglS80ktYnBOIqZhjbDDwa1IIbF/VaJ8PsHnZTQ5wSicicPrU7nTI4JPFn92/txzWkh4GlK18Q==} - - '@smithy/hash-node@3.0.10': - resolution: {integrity: sha512-3zWGWCHI+FlJ5WJwx73Mw2llYR8aflVyZN5JhoqLxbdPZi6UyKSdCeXAWJw9ja22m6S6Tzz1KZ+kAaSwvydi0g==} - engines: {node: '>=16.0.0'} - - '@smithy/hash-node@3.0.6': - resolution: {integrity: sha512-c/FHEdKK/7DU2z6ZE91L36ahyXWayR3B+FzELjnYq7wH5YqIseM24V+pWCS9kFn1Ln8OFGTf+pyYPiHZuX0s/Q==} - engines: {node: '>=16.0.0'} - - '@smithy/hash-stream-node@3.1.5': - resolution: {integrity: sha512-61CyFCzqN3VBfcnGX7mof/rkzLb8oHjm4Lr6ZwBIRpBssBb8d09ChrZAqinP2rUrA915BRNkq9NpJz18N7+3hQ==} - engines: {node: '>=16.0.0'} - - '@smithy/invalid-dependency@3.0.10': - resolution: {integrity: sha512-Lp2L65vFi+cj0vFMu2obpPW69DU+6O5g3086lmI4XcnRCG8PxvpWC7XyaVwJCxsZFzueHjXnrOH/E0pl0zikfA==} - - '@smithy/invalid-dependency@3.0.6': - resolution: {integrity: sha512-czM7Ioq3s8pIXht7oD+vmgy4Wfb4XavU/k/irO8NdXFFOx7YAlsCCcKOh/lJD1mJSYQqiR7NmpZ9JviryD/7AQ==} + '@smithy/invalid-dependency@3.0.11': + resolution: {integrity: sha512-NuQmVPEJjUX6c+UELyVz8kUx8Q539EDeNwbRyu4IIF8MeV7hUtq1FB3SHVyki2u++5XLMFqngeMKk7ccspnNyQ==} '@smithy/is-array-buffer@2.2.0': resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} @@ -5189,142 +4900,75 @@ packages: resolution: {integrity: sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==} engines: {node: '>=16.0.0'} - '@smithy/md5-js@3.0.6': - resolution: {integrity: sha512-Ze690T8O3M5SVbb70WormwrKzVf9QQRtIuxtJDgpUQDkmt+PtdYDetBbyCbF9ryupxLw6tgzWKgwffAShhVIXQ==} + '@smithy/md5-js@3.0.11': + resolution: {integrity: sha512-3NM0L3i2Zm4bbgG6Ymi9NBcxXhryi3uE8fIfHJZIOfZVxOkGdjdgjR9A06SFIZCfnEIWKXZdm6Yq5/aPXFFhsQ==} - '@smithy/middleware-content-length@3.0.12': - resolution: {integrity: sha512-1mDEXqzM20yywaMDuf5o9ue8OkJ373lSPbaSjyEvkWdqELhFMyNNgKGWL/rCSf4KME8B+HlHKuR8u9kRj8HzEQ==} + '@smithy/middleware-content-length@3.0.13': + resolution: {integrity: sha512-zfMhzojhFpIX3P5ug7jxTjfUcIPcGjcQYzB9t+rv0g1TX7B0QdwONW+ATouaLoD7h7LOw/ZlXfkq4xJ/g2TrIw==} engines: {node: '>=16.0.0'} - '@smithy/middleware-content-length@3.0.8': - resolution: {integrity: sha512-VuyszlSO49WKh3H9/kIO2kf07VUwGV80QRiaDxUfP8P8UKlokz381ETJvwLhwuypBYhLymCYyNhB3fLAGBX2og==} + '@smithy/middleware-endpoint@3.2.5': + resolution: {integrity: sha512-VhJNs/s/lyx4weiZdXSloBgoLoS8osV0dKIain8nGmx7of3QFKu5BSdEuk1z/U8x9iwes1i+XCiNusEvuK1ijg==} engines: {node: '>=16.0.0'} - '@smithy/middleware-endpoint@3.1.3': - resolution: {integrity: sha512-KeM/OrK8MVFUsoJsmCN0MZMVPjKKLudn13xpgwIMpGTYpA8QZB2Xq5tJ+RE6iu3A6NhOI4VajDTwBsm8pwwrhg==} + '@smithy/middleware-retry@3.0.30': + resolution: {integrity: sha512-6323RL2BvAR3VQpTjHpa52kH/iSHyxd/G9ohb2MkBk2Ucu+oMtRXT8yi7KTSIS9nb58aupG6nO0OlXnQOAcvmQ==} engines: {node: '>=16.0.0'} - '@smithy/middleware-endpoint@3.2.3': - resolution: {integrity: sha512-Hdl9296i/EMptaX7agrSzJZDiz5Y8XPUeBbctTmMtnCguGpqfU3jVsTUan0VLaOhsnquqWLL8Bl5HrlbVGT1og==} + '@smithy/middleware-serde@3.0.11': + resolution: {integrity: sha512-KzPAeySp/fOoQA82TpnwItvX8BBURecpx6ZMu75EZDkAcnPtO6vf7q4aH5QHs/F1s3/snQaSFbbUMcFFZ086Mw==} engines: {node: '>=16.0.0'} - '@smithy/middleware-retry@3.0.21': - resolution: {integrity: sha512-/h0fElV95LekVVEJuSw+aI11S1Y3zIUwBc6h9ZbUv43Gl2weXsbQwjLoet6j/Qtb0phfrSxS6pNg6FqgJOWZkA==} + '@smithy/middleware-stack@3.0.11': + resolution: {integrity: sha512-1HGo9a6/ikgOMrTrWL/WiN9N8GSVYpuRQO5kjstAq4CvV59bjqnh7TbdXGQ4vxLD3xlSjfBjq5t1SOELePsLnA==} engines: {node: '>=16.0.0'} - '@smithy/middleware-retry@3.0.27': - resolution: {integrity: sha512-H3J/PjJpLL7Tt+fxDKiOD25sMc94YetlQhCnYeNmina2LZscAdu0ZEZPas/kwePHABaEtqp7hqa5S4UJgMs1Tg==} + '@smithy/node-config-provider@3.1.12': + resolution: {integrity: sha512-O9LVEu5J/u/FuNlZs+L7Ikn3lz7VB9hb0GtPT9MQeiBmtK8RSY3ULmsZgXhe6VAlgTw0YO+paQx4p8xdbs43vQ==} engines: {node: '>=16.0.0'} - '@smithy/middleware-serde@3.0.10': - resolution: {integrity: sha512-MnAuhh+dD14F428ubSJuRnmRsfOpxSzvRhaGVTvd/lrUDE3kxzCCmH8lnVTvoNQnV2BbJ4c15QwZ3UdQBtFNZA==} + '@smithy/node-http-handler@3.3.2': + resolution: {integrity: sha512-t4ng1DAd527vlxvOfKFYEe6/QFBcsj7WpNlWTyjorwXXcKw3XlltBGbyHfSJ24QT84nF+agDha9tNYpzmSRZPA==} engines: {node: '>=16.0.0'} - '@smithy/middleware-serde@3.0.6': - resolution: {integrity: sha512-KKTUSl1MzOM0MAjGbudeaVNtIDo+PpekTBkCNwvfZlKndodrnvRo+00USatiyLOc0ujjO9UydMRu3O9dYML7ag==} + '@smithy/property-provider@3.1.11': + resolution: {integrity: sha512-I/+TMc4XTQ3QAjXfOcUWbSS073oOEAxgx4aZy8jHaf8JQnRkq2SZWw8+PfDtBvLUjcGMdxl+YwtzWe6i5uhL/A==} engines: {node: '>=16.0.0'} - '@smithy/middleware-stack@3.0.10': - resolution: {integrity: sha512-grCHyoiARDBBGPyw2BeicpjgpsDFWZZxptbVKb3CRd/ZA15F/T6rZjCCuBUjJwdck1nwUuIxYtsS4H9DDpbP5w==} + '@smithy/protocol-http@4.1.8': + resolution: {integrity: sha512-hmgIAVyxw1LySOwkgMIUN0kjN8TG9Nc85LJeEmEE/cNEe2rkHDUWhnJf2gxcSRFLWsyqWsrZGw40ROjUogg+Iw==} engines: {node: '>=16.0.0'} - '@smithy/middleware-stack@3.0.6': - resolution: {integrity: sha512-2c0eSYhTQ8xQqHMcRxLMpadFbTXg6Zla5l0mwNftFCZMQmuhI7EbAJMx6R5eqfuV3YbJ3QGyS3d5uSmrHV8Khg==} + '@smithy/querystring-builder@3.0.11': + resolution: {integrity: sha512-u+5HV/9uJaeLj5XTb6+IEF/dokWWkEqJ0XiaRRogyREmKGUgZnNecLucADLdauWFKUNbQfulHFEZEdjwEBjXRg==} engines: {node: '>=16.0.0'} - '@smithy/node-config-provider@3.1.11': - resolution: {integrity: sha512-URq3gT3RpDikh/8MBJUB+QGZzfS7Bm6TQTqoh4CqE8NBuyPkWa5eUXj0XFcFfeZVgg3WMh1u19iaXn8FvvXxZw==} + '@smithy/querystring-parser@3.0.11': + resolution: {integrity: sha512-Je3kFvCsFMnso1ilPwA7GtlbPaTixa3WwC+K21kmMZHsBEOZYQaqxcMqeFFoU7/slFjKDIpiiPydvdJm8Q/MCw==} engines: {node: '>=16.0.0'} - '@smithy/node-config-provider@3.1.7': - resolution: {integrity: sha512-g3mfnC3Oo8pOI0dYuPXLtdW1WGVb3bR2tkV21GNkm0ZvQjLTtamXAwCWt/FCb0HGvKt3gHHmF1XerG0ICfalOg==} + '@smithy/service-error-classification@3.0.11': + resolution: {integrity: sha512-QnYDPkyewrJzCyaeI2Rmp7pDwbUETe+hU8ADkXmgNusO1bgHBH7ovXJiYmba8t0fNfJx75fE8dlM6SEmZxheog==} engines: {node: '>=16.0.0'} - '@smithy/node-http-handler@3.2.3': - resolution: {integrity: sha512-/gcm5DJ3k1b1zEInzBGAZC8ntJ+jwrz1NcSIu+9dSXd1FfG0G6QgkDI40tt8/WYUbHtLyo8fEqtm2v29koWo/w==} + '@smithy/shared-ini-file-loader@3.1.12': + resolution: {integrity: sha512-1xKSGI+U9KKdbG2qDvIR9dGrw3CNx+baqJfyr0igKEpjbHL5stsqAesYBzHChYHlelWtb87VnLWlhvfCz13H8Q==} engines: {node: '>=16.0.0'} - '@smithy/node-http-handler@3.3.1': - resolution: {integrity: sha512-fr+UAOMGWh6bn4YSEezBCpJn9Ukp9oR4D32sCjCo7U81evE11YePOQ58ogzyfgmjIO79YeOdfXXqr0jyhPQeMg==} + '@smithy/signature-v4@4.2.4': + resolution: {integrity: sha512-5JWeMQYg81TgU4cG+OexAWdvDTs5JDdbEZx+Qr1iPbvo91QFGzjy0IkXAKaXUHqmKUJgSHK0ZxnCkgZpzkeNTA==} engines: {node: '>=16.0.0'} - '@smithy/property-provider@3.1.10': - resolution: {integrity: sha512-n1MJZGTorTH2DvyTVj+3wXnd4CzjJxyXeOgnTlgNVFxaaMeT4OteEp4QrzF8p9ee2yg42nvyVK6R/awLCakjeQ==} + '@smithy/smithy-client@3.5.0': + resolution: {integrity: sha512-Y8FeOa7gbDfCWf7njrkoRATPa5eNLUEjlJS5z5rXatYuGkCb80LbHcu8AQR8qgAZZaNHCLyo2N+pxPsV7l+ivg==} engines: {node: '>=16.0.0'} - '@smithy/property-provider@3.1.6': - resolution: {integrity: sha512-NK3y/T7Q/Bw+Z8vsVs9MYIQ5v7gOX7clyrXcwhhIBQhbPgRl6JDrZbusO9qWDhcEus75Tg+VCxtIRfo3H76fpw==} + '@smithy/types@3.7.2': + resolution: {integrity: sha512-bNwBYYmN8Eh9RyjS1p2gW6MIhSO2rl7X9QeLM8iTdcGRP+eDiIWDt66c9IysCc22gefKszZv+ubV9qZc7hdESg==} engines: {node: '>=16.0.0'} - '@smithy/protocol-http@4.1.3': - resolution: {integrity: sha512-GcbMmOYpH9iRqtC05RbRnc/0FssxSTHlmaNhYBTgSgNCYpdR3Kt88u5GAZTBmouzv+Zlj/VRv92J9ruuDeJuEw==} - engines: {node: '>=16.0.0'} - - '@smithy/protocol-http@4.1.7': - resolution: {integrity: sha512-FP2LepWD0eJeOTm0SjssPcgqAlDFzOmRXqXmGhfIM52G7Lrox/pcpQf6RP4F21k0+O12zaqQt5fCDOeBtqY6Cg==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-builder@3.0.10': - resolution: {integrity: sha512-nT9CQF3EIJtIUepXQuBFb8dxJi3WVZS3XfuDksxSCSn+/CzZowRLdhDn+2acbBv8R6eaJqPupoI/aRFIImNVPQ==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-builder@3.0.6': - resolution: {integrity: sha512-sQe08RunoObe+Usujn9+R2zrLuQERi3CWvRO3BvnoWSYUaIrLKuAIeY7cMeDax6xGyfIP3x/yFWbEKSXvOnvVg==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-parser@3.0.10': - resolution: {integrity: sha512-Oa0XDcpo9SmjhiDD9ua2UyM3uU01ZTuIrNdZvzwUTykW1PM8o2yJvMh1Do1rY5sUQg4NDV70dMi0JhDx4GyxuQ==} - engines: {node: '>=16.0.0'} - - '@smithy/querystring-parser@3.0.6': - resolution: {integrity: sha512-UJKw4LlEkytzz2Wq+uIdHf6qOtFfee/o7ruH0jF5I6UAuU+19r9QV7nU3P/uI0l6+oElRHmG/5cBBcGJrD7Ozg==} - engines: {node: '>=16.0.0'} - - '@smithy/service-error-classification@3.0.10': - resolution: {integrity: sha512-zHe642KCqDxXLuhs6xmHVgRwy078RfqxP2wRDpIyiF8EmsWXptMwnMwbVa50lw+WOGNrYm9zbaEg0oDe3PTtvQ==} - engines: {node: '>=16.0.0'} - - '@smithy/service-error-classification@3.0.6': - resolution: {integrity: sha512-53SpchU3+DUZrN7J6sBx9tBiCVGzsib2e4sc512Q7K9fpC5zkJKs6Z9s+qbMxSYrkEkle6hnMtrts7XNkMJJMg==} - engines: {node: '>=16.0.0'} - - '@smithy/shared-ini-file-loader@3.1.11': - resolution: {integrity: sha512-AUdrIZHFtUgmfSN4Gq9nHu3IkHMa1YDcN+s061Nfm+6pQ0mJy85YQDB0tZBCmls0Vuj22pLwDPmL92+Hvfwwlg==} - engines: {node: '>=16.0.0'} - - '@smithy/shared-ini-file-loader@3.1.7': - resolution: {integrity: sha512-IA4K2qTJYXkF5OfVN4vsY1hfnUZjaslEE8Fsr/gGFza4TAC2A9NfnZuSY2srQIbt9bwtjHiAayrRVgKse4Q7fA==} - engines: {node: '>=16.0.0'} - - '@smithy/signature-v4@4.1.4': - resolution: {integrity: sha512-72MiK7xYukNsnLJI9NqvUHqTu0ziEsfMsYNlWpiJfuGQnCTFKpckThlEatirvcA/LmT1h7rRO+pJD06PYsPu9Q==} - engines: {node: '>=16.0.0'} - - '@smithy/signature-v4@4.2.3': - resolution: {integrity: sha512-pPSQQ2v2vu9vc8iew7sszLd0O09I5TRc5zhY71KA+Ao0xYazIG+uLeHbTJfIWGO3BGVLiXjUr3EEeCcEQLjpWQ==} - engines: {node: '>=16.0.0'} - - '@smithy/smithy-client@3.3.5': - resolution: {integrity: sha512-7IZi8J3Dr9n3tX+lcpmJ/5tCYIqoXdblFBaPuv0SEKZFRpCxE+TqIWL6I3t7jLlk9TWu3JSvEZAhtjB9yvB+zA==} - engines: {node: '>=16.0.0'} - - '@smithy/smithy-client@3.4.4': - resolution: {integrity: sha512-dPGoJuSZqvirBq+yROapBcHHvFjChoAQT8YPWJ820aPHHiowBlB3RL1Q4kPT1hx0qKgJuf+HhyzKi5Gbof4fNA==} - engines: {node: '>=16.0.0'} - - '@smithy/types@3.4.2': - resolution: {integrity: sha512-tHiFcfcVedVBHpmHUEUHOCCih8iZbIAYn9NvPsNzaPm/237I3imdDdZoOC8c87H5HBAVEa06tTgb+OcSWV9g5w==} - engines: {node: '>=16.0.0'} - - '@smithy/types@3.7.1': - resolution: {integrity: sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==} - engines: {node: '>=16.0.0'} - - '@smithy/url-parser@3.0.10': - resolution: {integrity: sha512-j90NUalTSBR2NaZTuruEgavSdh8MLirf58LoGSk4AtQfyIymogIhgnGUU2Mga2bkMkpSoC9gxb74xBXL5afKAQ==} - - '@smithy/url-parser@3.0.6': - resolution: {integrity: sha512-47Op/NU8Opt49KyGpHtVdnmmJMsp2hEwBdyjuFB9M2V5QVOwA7pBhhxKN5z6ztKGrMw76gd8MlbPuzzvaAncuQ==} + '@smithy/url-parser@3.0.11': + resolution: {integrity: sha512-TmlqXkSk8ZPhfc+SQutjmFr5FjC0av3GZP4B/10caK1SbRwe/v+Wzu/R6xEKxoNqL+8nY18s1byiy6HqPG37Aw==} '@smithy/util-base64@3.0.0': resolution: {integrity: sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==} @@ -5349,56 +4993,32 @@ packages: resolution: {integrity: sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==} engines: {node: '>=16.0.0'} - '@smithy/util-defaults-mode-browser@3.0.21': - resolution: {integrity: sha512-M/FhTBk4c/SsB91dD/M4gMGfJO7z/qJaM9+XQQIqBOf4qzZYMExnP7R4VdGwxxH8IKMGW+8F0I4rNtVRrcfPoA==} + '@smithy/util-defaults-mode-browser@3.0.30': + resolution: {integrity: sha512-nLuGmgfcr0gzm64pqF2UT4SGWVG8UGviAdayDlVzJPNa6Z4lqvpDzdRXmLxtOdEjVlTOEdpZ9dd3ZMMu488mzg==} engines: {node: '>= 10.0.0'} - '@smithy/util-defaults-mode-browser@3.0.27': - resolution: {integrity: sha512-GV8NvPy1vAGp7u5iD/xNKUxCorE4nQzlyl057qRac+KwpH5zq8wVq6rE3lPPeuFLyQXofPN6JwxL1N9ojGapiQ==} + '@smithy/util-defaults-mode-node@3.0.30': + resolution: {integrity: sha512-OD63eWoH68vp75mYcfYyuVH+p7Li/mY4sYOROnauDrtObo1cS4uWfsy/zhOTW8F8ZPxQC1ZXZKVxoxvMGUv2Ow==} engines: {node: '>= 10.0.0'} - '@smithy/util-defaults-mode-node@3.0.21': - resolution: {integrity: sha512-NiLinPvF86U3S2Pdx/ycqd4bnY5dmFSPNL5KYRwbNjqQFS09M5Wzqk8BNk61/47xCYz1X/6KeiSk9qgYPTtuDw==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-defaults-mode-node@3.0.27': - resolution: {integrity: sha512-7+4wjWfZqZxZVJvDutO+i1GvL6bgOajEkop4FuR6wudFlqBiqwxw3HoH6M9NgeCd37km8ga8NPp2JacQEtAMPg==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-endpoints@2.1.2': - resolution: {integrity: sha512-FEISzffb4H8DLzGq1g4MuDpcv6CIG15fXoQzDH9SjpRJv6h7J++1STFWWinilG0tQh9H1v2UKWG19Jjr2B16zQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-endpoints@2.1.6': - resolution: {integrity: sha512-mFV1t3ndBh0yZOJgWxO9J/4cHZVn5UG1D8DeCc6/echfNkeEJWu9LD7mgGH5fHrEdR7LDoWw7PQO6QiGpHXhgA==} + '@smithy/util-endpoints@2.1.7': + resolution: {integrity: sha512-tSfcqKcN/Oo2STEYCABVuKgJ76nyyr6skGl9t15hs+YaiU06sgMkN7QYjo0BbVw+KT26zok3IzbdSOksQ4YzVw==} engines: {node: '>=16.0.0'} '@smithy/util-hex-encoding@3.0.0': resolution: {integrity: sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==} engines: {node: '>=16.0.0'} - '@smithy/util-middleware@3.0.10': - resolution: {integrity: sha512-eJO+/+RsrG2RpmY68jZdwQtnfsxjmPxzMlQpnHKjFPwrYqvlcT+fHdT+ZVwcjlWSrByOhGr9Ff2GG17efc192A==} + '@smithy/util-middleware@3.0.11': + resolution: {integrity: sha512-dWpyc1e1R6VoXrwLoLDd57U1z6CwNSdkM69Ie4+6uYh2GC7Vg51Qtan7ITzczuVpqezdDTKJGJB95fFvvjU/ow==} engines: {node: '>=16.0.0'} - '@smithy/util-middleware@3.0.6': - resolution: {integrity: sha512-BxbX4aBhI1O9p87/xM+zWy0GzT3CEVcXFPBRDoHAM+pV0eSW156pR+PSYEz0DQHDMYDsYAflC2bQNz2uaDBUZQ==} + '@smithy/util-retry@3.0.11': + resolution: {integrity: sha512-hJUC6W7A3DQgaee3Hp9ZFcOxVDZzmBIRBPlUAk8/fSOEl7pE/aX7Dci0JycNOnm9Mfr0KV2XjIlUOcGWXQUdVQ==} engines: {node: '>=16.0.0'} - '@smithy/util-retry@3.0.10': - resolution: {integrity: sha512-1l4qatFp4PiU6j7UsbasUHL2VU023NRB/gfaa1M0rDqVrRN4g3mCArLRyH3OuktApA4ye+yjWQHjdziunw2eWA==} - engines: {node: '>=16.0.0'} - - '@smithy/util-retry@3.0.6': - resolution: {integrity: sha512-BRZiuF7IwDntAbevqMco67an0Sr9oLQJqqRCsSPZZHYRnehS0LHDAkJk/pSmI7Z8c/1Vet294H7fY2fWUgB+Rg==} - engines: {node: '>=16.0.0'} - - '@smithy/util-stream@3.1.8': - resolution: {integrity: sha512-hoKOqSmb8FD3WLObuB5hwbM7bNIWgcnvkThokTvVq7J5PKjlLUK5qQQcB9zWLHIoSaIlf3VIv2OxZY2wtQjcRQ==} - engines: {node: '>=16.0.0'} - - '@smithy/util-stream@3.3.1': - resolution: {integrity: sha512-Ff68R5lJh2zj+AUTvbAU/4yx+6QPRzg7+pI7M1FbtQHcRIp7xvguxVsQBKyB3fwiOwhAKu0lnNyYBaQfSW6TNw==} + '@smithy/util-stream@3.3.2': + resolution: {integrity: sha512-sInAqdiVeisUGYAv/FrXpmJ0b4WTFmciTRqzhb7wVuem9BHvhIG7tpiYHLDWrl2stOokNZpTTGqz3mzB2qFwXg==} engines: {node: '>=16.0.0'} '@smithy/util-uri-escape@3.0.0': @@ -5413,15 +5033,15 @@ packages: resolution: {integrity: sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==} engines: {node: '>=16.0.0'} - '@smithy/util-waiter@3.1.5': - resolution: {integrity: sha512-jYOSvM3H6sZe3CHjzD2VQNCjWBJs+4DbtwBMvUp9y5EnnwNa7NQxTeYeQw0CKCAdGGZ3QvVkyJmvbvs5M/B10A==} + '@smithy/util-waiter@3.2.0': + resolution: {integrity: sha512-PpjSboaDUE6yl+1qlg3Si57++e84oXdWGbuFUSAciXsVfEZJJJupR2Nb0QuXHiunt2vGR+1PTizOMvnUPaG2Qg==} engines: {node: '>=16.0.0'} '@stencil-community/router@1.0.2': resolution: {integrity: sha512-GQkhcwDZdkX6k6rE/ZqrH2mbxGt9wPq0KGAdwPJOcZJbfq9cKaSMOuS7heDEBcWgXgxJS2rKqwUKyKTj41g9pA==} - '@stencil/core@4.21.0': - resolution: {integrity: sha512-v50lnVbzS8mpMSnEVxR+G75XpvxHKtkJaQrNPE8+/fF6Ppr5z4bcdcBhcP8LPfEW+4BZcic6VifMXRwTopc+kw==} + '@stencil/core@4.23.0': + resolution: {integrity: sha512-9vI8ywhoqlaDEmrcntejrZ9X76Tddv2JyWakjVpqJAdDNXgf520sYkyjzGT0p8VJfPtSaKm6pMtl5sAH1r9cFg==} engines: {node: '>=16.0.0', npm: '>=7.10.0'} hasBin: true @@ -5525,68 +5145,68 @@ packages: resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==} engines: {node: '>=14'} - '@swc/core-darwin-arm64@1.7.26': - resolution: {integrity: sha512-FF3CRYTg6a7ZVW4yT9mesxoVVZTrcSWtmZhxKCYJX9brH4CS/7PRPjAKNk6kzWgWuRoglP7hkjQcd6EpMcZEAw==} + '@swc/core-darwin-arm64@1.10.1': + resolution: {integrity: sha512-NyELPp8EsVZtxH/mEqvzSyWpfPJ1lugpTQcSlMduZLj1EASLO4sC8wt8hmL1aizRlsbjCX+r0PyL+l0xQ64/6Q==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.7.26': - resolution: {integrity: sha512-az3cibZdsay2HNKmc4bjf62QVukuiMRh5sfM5kHR/JMTrLyS6vSw7Ihs3UTkZjUxkLTT8ro54LI6sV6sUQUbLQ==} + '@swc/core-darwin-x64@1.10.1': + resolution: {integrity: sha512-L4BNt1fdQ5ZZhAk5qoDfUnXRabDOXKnXBxMDJ+PWLSxOGBbWE6aJTnu4zbGjJvtot0KM46m2LPAPY8ttknqaZA==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.7.26': - resolution: {integrity: sha512-VYPFVJDO5zT5U3RpCdHE5v1gz4mmR8BfHecUZTmD2v1JeFY6fv9KArJUpjrHEEsjK/ucXkQFmJ0jaiWXmpOV9Q==} + '@swc/core-linux-arm-gnueabihf@1.10.1': + resolution: {integrity: sha512-Y1u9OqCHgvVp2tYQAJ7hcU9qO5brDMIrA5R31rwWQIAKDkJKtv3IlTHF0hrbWk1wPR0ZdngkQSJZple7G+Grvw==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.7.26': - resolution: {integrity: sha512-YKevOV7abpjcAzXrhsl+W48Z9mZvgoVs2eP5nY+uoMAdP2b3GxC0Df1Co0I90o2lkzO4jYBpTMcZlmUXLdXn+Q==} + '@swc/core-linux-arm64-gnu@1.10.1': + resolution: {integrity: sha512-tNQHO/UKdtnqjc7o04iRXng1wTUXPgVd8Y6LI4qIbHVoVPwksZydISjMcilKNLKIwOoUQAkxyJ16SlOAeADzhQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.7.26': - resolution: {integrity: sha512-3w8iZICMkQQON0uIcvz7+Q1MPOW6hJ4O5ETjA0LSP/tuKqx30hIniCGOgPDnv3UTMruLUnQbtBwVCZTBKR3Rkg==} + '@swc/core-linux-arm64-musl@1.10.1': + resolution: {integrity: sha512-x0L2Pd9weQ6n8dI1z1Isq00VHFvpBClwQJvrt3NHzmR+1wCT/gcYl1tp9P5xHh3ldM8Cn4UjWCw+7PaUgg8FcQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.7.26': - resolution: {integrity: sha512-c+pp9Zkk2lqb06bNGkR2Looxrs7FtGDMA4/aHjZcCqATgp348hOKH5WPvNLBl+yPrISuWjbKDVn3NgAvfvpH4w==} + '@swc/core-linux-x64-gnu@1.10.1': + resolution: {integrity: sha512-yyYEwQcObV3AUsC79rSzN9z6kiWxKAVJ6Ntwq2N9YoZqSPYph+4/Am5fM1xEQYf/kb99csj0FgOelomJSobxQA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.7.26': - resolution: {integrity: sha512-PgtyfHBF6xG87dUSSdTJHwZ3/8vWZfNIXQV2GlwEpslrOkGqy+WaiiyE7Of7z9AvDILfBBBcJvJ/r8u980wAfQ==} + '@swc/core-linux-x64-musl@1.10.1': + resolution: {integrity: sha512-tcaS43Ydd7Fk7sW5ROpaf2Kq1zR+sI5K0RM+0qYLYYurvsJruj3GhBCaiN3gkzd8m/8wkqNqtVklWaQYSDsyqA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.7.26': - resolution: {integrity: sha512-9TNXPIJqFynlAOrRD6tUQjMq7KApSklK3R/tXgIxc7Qx+lWu8hlDQ/kVPLpU7PWvMMwC/3hKBW+p5f+Tms1hmA==} + '@swc/core-win32-arm64-msvc@1.10.1': + resolution: {integrity: sha512-D3Qo1voA7AkbOzQ2UGuKNHfYGKL6eejN8VWOoQYtGHHQi1p5KK/Q7V1ku55oxXBsj79Ny5FRMqiRJpVGad7bjQ==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.7.26': - resolution: {integrity: sha512-9YngxNcG3177GYdsTum4V98Re+TlCeJEP4kEwEg9EagT5s3YejYdKwVAkAsJszzkXuyRDdnHUpYbTrPG6FiXrQ==} + '@swc/core-win32-ia32-msvc@1.10.1': + resolution: {integrity: sha512-WalYdFoU3454Og+sDKHM1MrjvxUGwA2oralknXkXL8S0I/8RkWZOB++p3pLaGbTvOO++T+6znFbQdR8KRaa7DA==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.7.26': - resolution: {integrity: sha512-VR+hzg9XqucgLjXxA13MtV5O3C0bK0ywtLIBw/+a+O+Oc6mxFWHtdUeXDbIi5AiPbn0fjgVJMqYnyjGyyX8u0w==} + '@swc/core-win32-x64-msvc@1.10.1': + resolution: {integrity: sha512-JWobfQDbTnoqaIwPKQ3DVSywihVXlQMbDuwik/dDWlj33A8oEHcjPOGs4OqcA3RHv24i+lfCQpM3Mn4FAMfacA==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.7.26': - resolution: {integrity: sha512-f5uYFf+TmMQyYIoxkn/evWhNGuUzC730dFwAKGwBVHHVoPyak1/GvJUm6i1SKl+2Hrj9oN0i3WSoWWZ4pgI8lw==} + '@swc/core@1.10.1': + resolution: {integrity: sha512-rQ4dS6GAdmtzKiCRt3LFVxl37FaY1cgL9kSUTnhQ2xc3fmHOd7jdJK/V4pSZMG1ruGTd0bsi34O2R0Olg9Zo/w==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -5597,8 +5217,8 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - '@swc/types@0.1.12': - resolution: {integrity: sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==} + '@swc/types@0.1.17': + resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} '@szmarczak/http-timer@1.1.2': resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==} @@ -5624,8 +5244,8 @@ packages: resolution: {integrity: sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==} engines: {node: '>=14'} - '@testing-library/jest-dom@6.5.0': - resolution: {integrity: sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==} + '@testing-library/jest-dom@6.6.3': + resolution: {integrity: sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} '@testing-library/preact@3.2.4': @@ -5698,9 +5318,6 @@ packages: '@types/acorn@4.0.6': resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} - '@types/archiver@6.0.2': - resolution: {integrity: sha512-KmROQqbQzKGuaAbmK+ZcytkJ51+YqDa7NmbXjmtC5YBLSyQYo21YaUnQ3HbaPFKL1ooo6RQ6OPYPIDyxfpDDXw==} - '@types/archiver@6.0.3': resolution: {integrity: sha512-a6wUll6k3zX6qs5KlxIggs1P1JcYJaTCx2gnlr+f0S1yd2DoaEwoIK10HmBaLnZwWneBz+JBm0dwcZu0zECBcQ==} @@ -5746,17 +5363,20 @@ packages: '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} - '@types/diff@5.2.2': - resolution: {integrity: sha512-qVqLpd49rmJA2nZzLVsmfS/aiiBpfVE95dHhPVwG0NmSBAt+riPxnj53wq2oBq5m4Q2RF1IWFEUpnZTgrQZfEQ==} + '@types/diff@5.2.3': + resolution: {integrity: sha512-K0Oqlrq3kQMaO2RhfrNQX5trmt+XLyom88zS0u84nnIcLvFnRUMRRHmrGny5GSM+kNO9IZLARsdQHDzkhAgmrQ==} '@types/ejs@3.1.5': resolution: {integrity: sha512-nv+GSx77ZtXiJzwKdsASqi+YQ5Z7vwHsTP0JY2SiQgjGckkBRKZnk8nIM+7oUZ1VCtuTz0+By4qVR7fqzp/Dfg==} + '@types/eslint-scope@3.7.7': + resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==} + '@types/eslint@7.29.0': resolution: {integrity: sha512-VNcvioYDH8/FxaeTKkM4/TiTwt6pBV9E3OfGmvaw8tPl0rrHCJ4Ll15HRT+pMiFAf/MLQvAzC+6RzUMEL9Ceng==} - '@types/eslint@8.56.12': - resolution: {integrity: sha512-03ruubjWyOHlmljCVoxSuNDdmfZDzsrrz0P2LeJsOXr+ZwFQ+0yQIwNCwt/GYhV7Z31fgtXJTAEs+FYlEL851g==} + '@types/eslint@9.6.1': + resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} '@types/estree-jsx@1.0.5': resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} @@ -5764,17 +5384,14 @@ packages: '@types/estree@0.0.39': resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} - '@types/estree@1.0.5': - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} - '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - '@types/express-serve-static-core@4.19.5': - resolution: {integrity: sha512-y6W03tvrACO72aijJ5uF02FRq5cgDR9lUxddQ8vyF+GvmjJQqbzDcJngEjURc+ZsG31VI3hODNZJ2URj86pzmg==} + '@types/express-serve-static-core@4.19.6': + resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==} - '@types/express-serve-static-core@5.0.0': - resolution: {integrity: sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw==} + '@types/express-serve-static-core@5.0.2': + resolution: {integrity: sha512-vluaspfvWEtE4vcSDlKRNer52DvOGrB2xv6diXy6UKyKW0lqZiWHGNApSyxOv+8DE5Z27IzVvE7hNkxg7EXIcg==} '@types/express@4.17.21': resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} @@ -5833,8 +5450,8 @@ packages: '@types/jasmine@5.1.4': resolution: {integrity: sha512-px7OMFO/ncXxixDe1zR13V1iycqWae0MxTaw62RpFlksUi5QuNWgQJFkTQjIOvrmutJbI7Fp2Y2N1F6D2R4G6w==} - '@types/jest@29.5.13': - resolution: {integrity: sha512-wd+MVEZCHt23V0/L642O5APvspWply/rGY5BcW4SUETo2UzPU3Z26qr8jC2qxpimI2jjx9h7+2cj2FwIr01bXg==} + '@types/jest@29.5.14': + resolution: {integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -5842,9 +5459,6 @@ packages: '@types/json-stringify-safe@5.0.3': resolution: {integrity: sha512-oNOjRxLfPeYbBSQ60maucaFNqbslVOPU4WWs5t/sHvAh6tyo/CThXSG+E24tEzkgh/fzvxyDrYdOJufgeNy1sQ==} - '@types/json5@0.0.29': - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - '@types/keyv@3.1.4': resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} @@ -5863,8 +5477,8 @@ packages: '@types/lodash.zip@4.2.9': resolution: {integrity: sha512-cJvqtEzLgHUPF6H6v7K6Q/yIc1DAYpsUkHD1Q7bUOAcCE0b7drzoUMi/Toj0MjQI3WeM6rI6v295mkenAQ+R7A==} - '@types/lodash@4.17.7': - resolution: {integrity: sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA==} + '@types/lodash@4.17.13': + resolution: {integrity: sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==} '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -5887,11 +5501,8 @@ packages: '@types/minimist@1.2.5': resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} - '@types/mocha@10.0.8': - resolution: {integrity: sha512-HfMcUmy9hTMJh66VNcmeC9iVErIZJli2bszuXc6julh5YGuRb/W5OnkHjwLNYdFlMis0sY3If5SEAp+PktdJjw==} - - '@types/mocha@10.0.9': - resolution: {integrity: sha512-sicdRoWtYevwxjOHNMPTl3vSfJM6oyW8o1wXeI7uww6b6xHg8eBznQDNSGBCDJmsE8UMxP05JgZRtsKbTqt//Q==} + '@types/mocha@10.0.10': + resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==} '@types/morgan@1.9.9': resolution: {integrity: sha512-iRYSDKVaC6FkGSpEVVIvrRGw0DfJMiQzIn3qr2G5B3C//AWkulhXgaBd7tS9/J79GWSYMTHGs7PfI5b3Y8m+RQ==} @@ -5908,21 +5519,12 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@20.16.13': - resolution: {integrity: sha512-GjQ7im10B0labo8ZGXDGROUl9k0BNyDgzfGpb4g/cl+4yYDWVKcozANF4FGr4/p0O/rAkQClM6Wiwkije++1Tg==} - - '@types/node@20.16.5': - resolution: {integrity: sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==} - '@types/node@20.17.10': resolution: {integrity: sha512-/jrvh5h6NXhEauFFexRin69nA0uHJ5gwk4iDivp/DeoEua3uwCUto6PC86IpRITBOs4+6i2I56K5x5b6WYGXHA==} '@types/node@22.10.2': resolution: {integrity: sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==} - '@types/node@22.7.7': - resolution: {integrity: sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==} - '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -5932,20 +5534,19 @@ packages: '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - '@types/prismjs@1.26.4': - resolution: {integrity: sha512-rlAnzkW2sZOjbqZ743IHUhFcvzaGbqijwOu8QZnZCjfQzBqFE3s4lOTJEsxikImav9uzz/42I+O7YUs1mWgMlg==} + '@types/prismjs@1.26.5': + resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==} - '@types/prop-types@15.7.12': - resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} - - '@types/qs@6.9.16': - resolution: {integrity: sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==} + '@types/qs@6.9.17': + resolution: {integrity: sha512-rX4/bPcfmvxHDv0XjfJELTTr+iB+tn032nPILqHm5wbthUUUuVtNGGqzhya9XUxjTP8Fpr0qYgSZZKxGY++svQ==} '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react-dom@18.3.0': - resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} + '@types/react-dom@18.3.5': + resolution: {integrity: sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==} + peerDependencies: + '@types/react': ^18.0.0 '@types/react-router-config@5.0.11': resolution: {integrity: sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==} @@ -5956,11 +5557,8 @@ packages: '@types/react-router@5.1.20': resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} - '@types/react@18.3.6': - resolution: {integrity: sha512-CnGaRYNu2iZlkGXGrOYtdg5mLK8neySj0woZ4e2wF/eli2E6Sazmq5X+Nrj6OBrrFVQfJWTUFeqAzoRhWQXYvg==} - - '@types/react@19.0.1': - resolution: {integrity: sha512-YW6614BDhqbpR5KtUYzTA+zlA7nayzJRA9ljz9CQoxthR0sDisYZLuvSMsil36t4EH/uAt8T52Xb4sVw17G+SQ==} + '@types/react@19.0.2': + resolution: {integrity: sha512-USU8ZI/xyKJwFTpjSVIrSeHBVAGagkHQKPNbxeWwql/vDmnTIBgx+TJnhFnj1NXgz8XfprU0egV2dROLGpsBEg==} '@types/readdir-glob@1.1.5': resolution: {integrity: sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==} @@ -6046,9 +5644,6 @@ packages: '@types/wrap-ansi@3.0.0': resolution: {integrity: sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==} - '@types/ws@8.5.12': - resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} - '@types/ws@8.5.13': resolution: {integrity: sha512-osM/gWBTPKgHV8XkTunnegTRIsvF6owmf5w+JtAfOw472dptdm0dlGv4xCt6GwQRcC2XVOvvRE/0bAoQcL2QkA==} @@ -6061,66 +5656,55 @@ packages: '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - '@typescript-eslint/eslint-plugin@7.18.0': - resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/eslint-plugin@8.18.1': + resolution: {integrity: sha512-Ncvsq5CT3Gvh+uJG0Lwlho6suwDfUXH0HztslDf5I+F2wAFAZMRwYLEorumpKLzmO2suAXZ/td1tBg4NZIi9CQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@7.18.0': - resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/parser@8.18.1': + resolution: {integrity: sha512-rBnTWHCdbYM2lh7hjyXqxk70wvon3p2FyaniZuey5TrcGBpfhVp0OxOa6gxr9Q9YhZFKyfbEnxc24ZnVbbUkCA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/scope-manager@7.18.0': - resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/scope-manager@8.18.1': + resolution: {integrity: sha512-HxfHo2b090M5s2+/9Z3gkBhI6xBH8OJCFjH9MhQ+nnoZqxU3wNxkLT+VWXWSFWc3UF3Z+CfPAyqdCTdoXtDPCQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@7.18.0': - resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/type-utils@8.18.1': + resolution: {integrity: sha512-jAhTdK/Qx2NJPNOTxXpMwlOiSymtR2j283TtPqXkKBdH8OAMmhiUfP0kJjc/qSE51Xrq02Gj9NY7MwK+UxVwHQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.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/types@8.18.1': + resolution: {integrity: sha512-7uoAUsCj66qdNQNpH2G8MyTFlgerum8ubf21s3TSM3XmKXuIn+H2Sifh/ES2nPOPiYSRJWAk0fDkW0APBWcpfw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@7.18.0': - resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/typescript-estree@8.18.1': + resolution: {integrity: sha512-z8U21WI5txzl2XYOW7i9hJhxoKKNG1kcU4RzyNvKrdZDmbjkmLBo8bgeiOJmA06kizLI76/CCBAAGlTlEeUfyg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/utils@7.18.0': - resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/utils@8.18.1': + resolution: {integrity: sha512-8vikiIj2ebrC4WRdcAdDcmnu9Q/MXXwg+STf40BVfT8exDqBCUPdypvzcUPxEqRGKg9ALagZ0UWcYCtn+4W2iQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.56.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/visitor-keys@7.18.0': - resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/visitor-keys@8.18.1': + resolution: {integrity: sha512-Vj0WLm5/ZsD013YeUKn+K0y8p1M0jPpxOkKdbD1wB0ns53a5piVY02zjf072TblEweAbcYiFiPoSMF3kp+VhhQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + '@ungap/structured-clone@1.2.1': + resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} '@vitejs/plugin-react@4.3.4': resolution: {integrity: sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==} @@ -6128,18 +5712,11 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 || ^6.0.0 - '@vitejs/plugin-vue@5.1.3': - resolution: {integrity: sha512-3xbWsKEKXYlmX82aOHufFQVnkbMC/v8fLpWwh6hWOUrK5fbbtBh9Q/WWse27BFgSy2/e2c0fz5Scgya9h2GLhw==} + '@vitejs/plugin-vue@5.2.1': + resolution: {integrity: sha512-cxh314tzaWwOLqVes2gnnCtvBDcM1UMdn+iFR+UjAn411dPT3tOmqrJjbMd7koZpMAmBM/GqeV4n9ge7JSiJJQ==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: ^5.0.0 - vue: ^3.2.25 - - '@vitejs/plugin-vue@5.1.4': - resolution: {integrity: sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==} - engines: {node: ^18.0.0 || >=20.0.0} - peerDependencies: - vite: ^5.0.0 + vite: ^5.0.0 || ^6.0.0 vue: ^3.2.25 '@vitest/coverage-v8@2.1.8': @@ -6165,71 +5742,47 @@ packages: vite: optional: true - '@vitest/pretty-format@2.1.1': - resolution: {integrity: sha512-SjxPFOtuINDUW8/UkElJYQSFtnWX7tMksSGW0vfjxMneFqxVr8YJ979QpMbDW7g+BIiq88RAGDjf7en6rvLPPQ==} - '@vitest/pretty-format@2.1.8': resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} '@vitest/runner@2.1.8': resolution: {integrity: sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==} - '@vitest/snapshot@1.6.0': - resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} - - '@vitest/snapshot@2.1.1': - resolution: {integrity: sha512-BnSku1WFy7r4mm96ha2FzN99AZJgpZOWrAhtQfoxjUU5YMRpq1zmHRq7a5K9/NjqonebO7iVDla+VvZS8BOWMw==} - '@vitest/snapshot@2.1.8': resolution: {integrity: sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==} - '@vitest/spy@2.1.1': - resolution: {integrity: sha512-ZM39BnZ9t/xZ/nF4UwRH5il0Sw93QnZXd9NAZGRpIgj0yvVwPpLd702s/Cx955rGaMlyBQkZJ2Ir7qyY48VZ+g==} - '@vitest/spy@2.1.8': resolution: {integrity: sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==} '@vitest/utils@2.1.8': resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} - '@volar/language-core@2.4.5': - resolution: {integrity: sha512-F4tA0DCO5Q1F5mScHmca0umsi2ufKULAnMOVBfMsZdT4myhVl4WdKRwCaKcfOkIEuyrAVvtq1ESBdZ+rSyLVww==} + '@volar/language-core@2.4.11': + resolution: {integrity: sha512-lN2C1+ByfW9/JRPpqScuZt/4OrUUse57GLI6TbLgTIqBVemdl1wNcZ1qYGEo2+Gw8coYLgCy7SuKqn6IrQcQgg==} - '@volar/source-map@2.4.5': - resolution: {integrity: sha512-varwD7RaKE2J/Z+Zu6j3mNNJbNT394qIxXwdvz/4ao/vxOfyClZpSDtLKkwWmecinkOVos5+PWkWraelfMLfpw==} + '@volar/source-map@2.4.11': + resolution: {integrity: sha512-ZQpmafIGvaZMn/8iuvCFGrW3smeqkq/IIh9F1SdSx9aUl0J4Iurzd6/FhmjNO5g2ejF3rT45dKskgXWiofqlZQ==} - '@volar/typescript@2.4.5': - resolution: {integrity: sha512-mcT1mHvLljAEtHviVcBuOyAwwMKz1ibXTi5uYtP/pf4XxoAzpdkQ+Br2IC0NPCvLCbjPZmbf3I0udndkfB1CDg==} + '@volar/typescript@2.4.11': + resolution: {integrity: sha512-2DT+Tdh88Spp5PyPbqhyoYavYCPDsqbHLFwcUI9K1NlY1YgUJvujGdrqUp0zWxnW7KWNTr3xSpMuv2WnaTKDAw==} '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} - '@vue/compiler-core@3.5.6': - resolution: {integrity: sha512-r+gNu6K4lrvaQLQGmf+1gc41p3FO2OUJyWmNqaIITaJU6YFiV5PtQSFZt8jfztYyARwqhoCayjprC7KMvT3nRA==} - '@vue/compiler-dom@3.5.13': resolution: {integrity: sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==} - '@vue/compiler-dom@3.5.6': - resolution: {integrity: sha512-xRXqxDrIqK8v8sSScpistyYH0qYqxakpsIvqMD2e5sV/PXQ1mTwtXp4k42yHK06KXxKSmitop9e45Ui/3BrTEw==} - '@vue/compiler-sfc@3.5.13': resolution: {integrity: sha512-6VdaljMpD82w6c2749Zhf5T9u5uLBWKnVue6XWxprDobftnletJ8+oel7sexFfM3qIxNmVE7LSFGTpv6obNyaQ==} - '@vue/compiler-sfc@3.5.6': - resolution: {integrity: sha512-pjWJ8Kj9TDHlbF5LywjVso+BIxCY5wVOLhkEXRhuCHDxPFIeX1zaFefKs8RYoHvkSMqRWt93a0f2gNJVJixHwg==} - '@vue/compiler-ssr@3.5.13': resolution: {integrity: sha512-wMH6vrYHxQl/IybKJagqbquvxpWCuVYpoUJfCqFZwa/JY1GdATAQ+TgVtgrwwMZ0D07QhA99rs/EAAWfvG6KpA==} - '@vue/compiler-ssr@3.5.6': - resolution: {integrity: sha512-VpWbaZrEOCqnmqjE83xdwegtr5qO/2OPUC6veWgvNqTJ3bYysz6vY3VqMuOijubuUYPRpG3OOKIh9TD0Stxb9A==} - '@vue/compiler-vue2@2.7.16': resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} - '@vue/language-core@2.1.6': - resolution: {integrity: sha512-MW569cSky9R/ooKMh6xa2g1D0AtRKbL56k83dzus/bx//RDJk24RHWkMzbAlXjMdDNyxAaagKPRquBIxkxlCkg==} + '@vue/language-core@2.1.10': + resolution: {integrity: sha512-DAI289d0K3AB5TUG3xDp9OuQ71CnrujQwJrQnfuZDwo6eGNf0UoRlPuaVNO+Zrn65PC3j0oB2i7mNmVPggeGeQ==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -6239,76 +5792,43 @@ packages: '@vue/reactivity@3.5.13': resolution: {integrity: sha512-NaCwtw8o48B9I6L1zl2p41OHo/2Z4wqYGGIK1Khu5T7yxrn+ATOixn/Udn2m+6kZKB/J7cuT9DbWWhRxqixACg==} - '@vue/reactivity@3.5.6': - resolution: {integrity: sha512-shZ+KtBoHna5GyUxWfoFVBCVd7k56m6lGhk5e+J9AKjheHF6yob5eukssHRI+rzvHBiU1sWs/1ZhNbLExc5oYQ==} - '@vue/runtime-core@3.5.13': resolution: {integrity: sha512-Fj4YRQ3Az0WTZw1sFe+QDb0aXCerigEpw418pw1HBUKFtnQHWzwojaukAs2X/c9DQz4MQ4bsXTGlcpGxU/RCIw==} - '@vue/runtime-core@3.5.6': - resolution: {integrity: sha512-FpFULR6+c2lI+m1fIGONLDqPQO34jxV8g6A4wBOgne8eSRHP6PQL27+kWFIx5wNhhjkO7B4rgtsHAmWv7qKvbg==} - '@vue/runtime-dom@3.5.13': resolution: {integrity: sha512-dLaj94s93NYLqjLiyFzVs9X6dWhTdAlEAciC3Moq7gzAc13VJUdCnjjRurNM6uTLFATRHexHCTu/Xp3eW6yoog==} - '@vue/runtime-dom@3.5.6': - resolution: {integrity: sha512-SDPseWre45G38ENH2zXRAHL1dw/rr5qp91lS4lt/nHvMr0MhsbCbihGAWLXNB/6VfFOJe2O+RBRkXU+CJF7/sw==} - '@vue/server-renderer@3.5.13': resolution: {integrity: sha512-wAi4IRJV/2SAW3htkTlB+dHeRmpTiVIK1OGLWV1yeStVSebSQQOwGwIq0D3ZIoBj2C2qpgz5+vX9iEBkTdk5YA==} peerDependencies: vue: 3.5.13 - '@vue/server-renderer@3.5.6': - resolution: {integrity: sha512-zivnxQnOnwEXVaT9CstJ64rZFXMS5ZkKxCjDQKiMSvUhXRzFLWZVbaBiNF4HGDqGNNsTgmjcCSmU6TB/0OOxLA==} - peerDependencies: - vue: 3.5.6 - '@vue/shared@3.5.13': resolution: {integrity: sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==} - '@vue/shared@3.5.6': - resolution: {integrity: sha512-eidH0HInnL39z6wAt6SFIwBrvGOpDWsDxlw3rCgo1B+CQ1781WzQUSU3YjxgdkcJo9Q8S6LmXTkvI+cLHGkQfA==} - '@vue/test-utils@2.4.6': resolution: {integrity: sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==} - '@wdio/cli@9.0.9': - resolution: {integrity: sha512-/sY0pMpLhsnhWpWovG81F/PqYmC7EluskrUhQ8/7BW1XDcNkUminCsd685HgAqPE3nX6Npx1oRhCbNDL/7Z7pw==} + '@wdio/cli@9.4.3': + resolution: {integrity: sha512-N5hVlpwFjmEvky0A/sKNj3879dzPZvFhUFSAE/g0588TFX0J3eD20TPV8T8eoIPk1vHmWda6V8DCJbWyqP4dlw==} engines: {node: '>=18.20.0'} hasBin: true - '@wdio/config@9.0.8': - resolution: {integrity: sha512-37L+hd+A1Nyehd/pgfTrLC6w+Ngbu0CIoFh9Vv6v8Cgu5Hih0TLofvlg+J1BNbcTd5eQ2tFKZBDeFMhQaIiTpg==} - engines: {node: '>=18.20.0'} - '@wdio/config@9.4.3': resolution: {integrity: sha512-8h3SO925efnyIOkKnaNbLbMnJpmvm4wfUWoo26kq8ZPU7DSQsEWvJ7EZ4Hw8RGu+kY4VO7r54ljicnnrFVh/ZA==} engines: {node: '>=18.20.0'} - '@wdio/globals@9.0.9': - resolution: {integrity: sha512-Lmzf82NoNK+i+Z6slt/Ueu0iOfHMLMNxxWnvoC+en3g8A1xj2JxAinC4ymrc0iFC3uvG0SxMWlpVmGTk78wp2Q==} - engines: {node: '>=18.20.0'} + '@wdio/eslint@0.0.5': + resolution: {integrity: sha512-zq1W+b2uJPZQrLfHhgdkVfFIn3lIwIgVanbQQrTD3w3ErKO/klZf/EzUNEkg58F39mhNQONJmbI4Xuzu6cR1sQ==} '@wdio/globals@9.4.3': resolution: {integrity: sha512-IyjiS6jtCMCbDedLZNUUaI9IpGAxkItfVKlGUgQ2kNcjOYUyKf/g8MEE0m8lR50yEEVENJ4rEn9IQ+foeFIZjQ==} engines: {node: '>=18.20.0'} - '@wdio/logger@8.38.0': - resolution: {integrity: sha512-kcHL86RmNbcQP+Gq/vQUGlArfU6IIcbbnNp32rRIraitomZow+iEoc519rdQmSVusDozMS5DZthkgDdxK+vz6Q==} - engines: {node: ^16.13 || >=18} - - '@wdio/logger@9.0.8': - resolution: {integrity: sha512-uIyYIDBwLczmsp9JE5hN3ME8Xg+9WNBfSNXD69ICHrY9WPTzFf94UeTuavK7kwSKF3ro2eJbmNZItYOfnoovnw==} - engines: {node: '>=18.20.0'} - '@wdio/logger@9.1.3': resolution: {integrity: sha512-cumRMK/gE1uedBUw3WmWXOQ7HtB6DR8EyKQioUz2P0IJtRRpglMBdZV7Svr3b++WWawOuzZHMfbTkJQmaVt8Gw==} engines: {node: '>=18.20.0'} - '@wdio/protocols@9.0.8': - resolution: {integrity: sha512-xRH54byFf623/w/KW62xkf/C2mGyigSfMm+UT3tNEAd5ZA9X2VAWQWQBPzdcrsck7Fxk4zlQX8Kb34RSs7Cy4Q==} - '@wdio/protocols@9.2.2': resolution: {integrity: sha512-0GMUSHCbYm+J+rnRU6XPtaUgVCRICsiH6W5zCXpePm3wLlbmg/mvZ+4OnNErssbpIOulZuAmC2jNmut2AEfWSw==} @@ -6316,66 +5836,58 @@ packages: resolution: {integrity: sha512-3iubjl4JX5zD21aFxZwQghqC3lgu+mSs8c3NaiYYNCC+IT5cI/8QuKlgh9s59bu+N3gG988jqMJeCYlKuUv/iw==} engines: {node: '>=18.20.0'} - '@wdio/types@9.0.8': - resolution: {integrity: sha512-pmz2iRWddTanrv8JC7v3wUGm17KRv2WyyJhQfklMSANn9V1ep6pw1RJG2WJnKq4NojMvH1nVv1sMZxXrYPhpYw==} - engines: {node: '>=18.20.0'} - '@wdio/types@9.4.3': resolution: {integrity: sha512-ShXtWdtjmFUX1qT3c0Ldj7v9VB+2WnWpU3JxD0d+WL0W4TSQV8yFxVmwahRPvBsFO+ust4F38o6gOZEANCVhgA==} engines: {node: '>=18.20.0'} - '@wdio/utils@9.0.8': - resolution: {integrity: sha512-p3EgOdkhCvMxJFd3WTtSChqYFQu2mz69/5tOsljDaL+4QYwnRR7O8M9wFsL3/9XMVcHdnC4Ija2VRxQ/lb+hHQ==} - engines: {node: '>=18.20.0'} - '@wdio/utils@9.4.3': resolution: {integrity: sha512-HIA9bzqADRsTmXZDbVAX3jI0vzFXI9RJ6a92emrkANVG27etEL0KEGXDgoTbdwn7lFLkvY6xp7vY3VR1+Dux0w==} engines: {node: '>=18.20.0'} - '@webassemblyjs/ast@1.12.1': - resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} + '@webassemblyjs/ast@1.14.1': + resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==} - '@webassemblyjs/floating-point-hex-parser@1.11.6': - resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==} + '@webassemblyjs/floating-point-hex-parser@1.13.2': + resolution: {integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==} - '@webassemblyjs/helper-api-error@1.11.6': - resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==} + '@webassemblyjs/helper-api-error@1.13.2': + resolution: {integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==} - '@webassemblyjs/helper-buffer@1.12.1': - resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==} + '@webassemblyjs/helper-buffer@1.14.1': + resolution: {integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==} - '@webassemblyjs/helper-numbers@1.11.6': - resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==} + '@webassemblyjs/helper-numbers@1.13.2': + resolution: {integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==} - '@webassemblyjs/helper-wasm-bytecode@1.11.6': - resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==} + '@webassemblyjs/helper-wasm-bytecode@1.13.2': + resolution: {integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==} - '@webassemblyjs/helper-wasm-section@1.12.1': - resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==} + '@webassemblyjs/helper-wasm-section@1.14.1': + resolution: {integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==} - '@webassemblyjs/ieee754@1.11.6': - resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==} + '@webassemblyjs/ieee754@1.13.2': + resolution: {integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==} - '@webassemblyjs/leb128@1.11.6': - resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==} + '@webassemblyjs/leb128@1.13.2': + resolution: {integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==} - '@webassemblyjs/utf8@1.11.6': - resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==} + '@webassemblyjs/utf8@1.13.2': + resolution: {integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==} - '@webassemblyjs/wasm-edit@1.12.1': - resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==} + '@webassemblyjs/wasm-edit@1.14.1': + resolution: {integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==} - '@webassemblyjs/wasm-gen@1.12.1': - resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==} + '@webassemblyjs/wasm-gen@1.14.1': + resolution: {integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==} - '@webassemblyjs/wasm-opt@1.12.1': - resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==} + '@webassemblyjs/wasm-opt@1.14.1': + resolution: {integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==} - '@webassemblyjs/wasm-parser@1.12.1': - resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==} + '@webassemblyjs/wasm-parser@1.14.1': + resolution: {integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==} - '@webassemblyjs/wast-printer@1.12.1': - resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==} + '@webassemblyjs/wast-printer@1.14.1': + resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==} '@xtuc/ieee754@1.2.0': resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} @@ -6386,9 +5898,9 @@ packages: '@yarnpkg/lockfile@1.1.0': resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} - '@yarnpkg/parsers@3.0.0-rc.46': - resolution: {integrity: sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==} - engines: {node: '>=14.15.0'} + '@yarnpkg/parsers@3.0.2': + resolution: {integrity: sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==} + engines: {node: '>=18.12.0'} '@zip.js/zip.js@2.7.54': resolution: {integrity: sha512-qMrJVg2hoEsZJjMJez9yI2+nZlBUxgYzGV3mqcb2B/6T1ihXp0fWBDYlVHlHquuorgNUQP5a8qSmX6HF5rFJNg==} @@ -6414,11 +5926,6 @@ packages: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} - acorn-import-attributes@1.9.5: - resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} - peerDependencies: - acorn: ^8 - acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -6440,11 +5947,6 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - acorn@8.12.1: - resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} - engines: {node: '>=0.4.0'} - hasBin: true - acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} @@ -6465,10 +5967,6 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} - agent-base@7.1.1: - resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} - engines: {node: '>= 14'} - agent-base@7.1.3: resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} engines: {node: '>= 14'} @@ -6505,14 +6003,21 @@ packages: ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} - algoliasearch-helper@3.22.5: - resolution: {integrity: sha512-lWvhdnc+aKOKx8jyA3bsdEgHzm/sglC4cYdMG4xSQyRiPLJVJtH/IVYZG3Hp6PkTEhQqhyVYkeP9z2IlcHJsWw==} + algoliasearch-helper@3.22.6: + resolution: {integrity: sha512-F2gSb43QHyvZmvH/2hxIjbk/uFdO2MguQYTFP7J+RowMW1csjIODMobEnpLI8nbLQuzZnGZdIxl5Bpy1k9+CFQ==} peerDependencies: algoliasearch: '>= 3.1 < 6' algoliasearch@4.24.0: resolution: {integrity: sha512-bf0QV/9jVejssFBmz2HQLxUadxk574t4iwjCKp5E7NBzwKkrDEhKPISIIjAU/p6K5qDx3qoeh4+26zWN1jmw3g==} + algoliasearch@5.18.0: + resolution: {integrity: sha512-/tfpK2A4FpS0o+S78o3YSdlqXr0MavJIDlFK3XZrlXLy7vaRXJvW5jYg3v5e/wCaF8y0IpMjkYLhoV6QqfpOgw==} + engines: {node: '>= 14.0.0'} + + alien-signals@0.2.2: + resolution: {integrity: sha512-cZIRkbERILsBOXTQmMrxc9hgpxglstn69zm+F1ARf4aPAzdAFYd6sBq87ErO0Fj3DV94tglcyHG5kQz9nDC/8A==} + allure-js-commons@2.15.1: resolution: {integrity: sha512-5V/VINplbu0APnfSZOkYpKOzucO36Q2EtTD1kqjWjl7n6tj7Hh+IHCZsH3Vpk/LXRDfj9RuXugBBvwYKV5YMJw==} @@ -6544,10 +6049,6 @@ packages: resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} engines: {node: '>=12'} - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} @@ -6590,10 +6091,6 @@ packages: aria-query@5.1.3: resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} - aria-query@5.3.1: - resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==} - engines: {node: '>= 0.4'} - aria-query@5.3.2: resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} engines: {node: '>= 0.4'} @@ -6612,28 +6109,12 @@ packages: array-ify@1.0.0: resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} - array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} - engines: {node: '>= 0.4'} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - array.prototype.findlastindex@1.2.5: - resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} - engines: {node: '>= 0.4'} - - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - - arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} arrify@1.0.1: @@ -6692,15 +6173,15 @@ packages: resolution: {integrity: sha512-pXnVMfJKSIWU2Ml4JHP7pZEPIrgBO1Fd3WGx+fPBsS+KRGhE4vxooD8XBGWbQOIVSZsVK7pUDBBkCicNu80yzQ==} engines: {node: '>=4'} - axios@1.7.7: - resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} - b4a@1.6.6: - resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} + b4a@1.6.7: + resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} babel-loader@9.2.1: resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==} @@ -6716,8 +6197,8 @@ packages: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} - babel-plugin-polyfill-corejs2@0.4.11: - resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} + babel-plugin-polyfill-corejs2@0.4.12: + resolution: {integrity: sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 @@ -6726,8 +6207,8 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-polyfill-regenerator@0.6.2: - resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==} + babel-plugin-polyfill-regenerator@0.6.3: + resolution: {integrity: sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q==} peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 @@ -6742,8 +6223,8 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - bare-events@2.4.2: - resolution: {integrity: sha512-qMKFd2qG/36aA4GwvKq8MxnPgCQAmBWmSyLWsJcbn8v03wvIPQ/hG1Ms8bPzndZxMDoHpxez5VOS+gC9Yi24/Q==} + bare-events@2.5.0: + resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==} bare-fs@2.3.5: resolution: {integrity: sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==} @@ -6754,8 +6235,8 @@ packages: bare-path@2.1.3: resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==} - bare-stream@2.3.0: - resolution: {integrity: sha512-pVRWciewGUeCyKEuRxwv06M079r+fRjAQjBEK2P6OYGrO43O+Z0LrPZZEjlc4mB6C2RpZ9AxJ1s7NLEtOHO6eA==} + bare-stream@2.6.1: + resolution: {integrity: sha512-eVZbtKM+4uehzrsj49KtCy3Pbg7kO1pJ3SKZ1SFrIH/0pnj9scuGGgUlNDf/7qS8WKtGdiJY5Kyhs/ivYPTB/g==} base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -6801,8 +6282,8 @@ packages: resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - bonjour-service@1.2.1: - resolution: {integrity: sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==} + bonjour-service@1.3.0: + resolution: {integrity: sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==} boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -6835,18 +6316,8 @@ packages: browser-stdout@1.3.1: resolution: {integrity: sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==} - browserslist@4.23.3: - resolution: {integrity: sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - browserslist@4.24.0: - resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - browserslist@4.24.2: - resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} + browserslist@4.24.3: + resolution: {integrity: sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -6897,10 +6368,10 @@ packages: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} - c12@1.11.2: - resolution: {integrity: sha512-oBs8a4uvSDO9dm8b7OCFW7+dgtVrwmwnrVXYzLm43ta7ep2jCn/0MhoUFygIWtxhyy6+/MG7/agvpY0U1Iemew==} + c12@2.0.1: + resolution: {integrity: sha512-Z4JgsKXHG37C6PYUtIxCfLJZvo6FyhHJoClwwb9ftUkLpPSkuYqn6Tr+vnaN8hymm0kIbcg6Ey3kv/Q71k5w/A==} peerDependencies: - magicast: ^0.3.4 + magicast: ^0.3.5 peerDependenciesMeta: magicast: optional: true @@ -6937,8 +6408,16 @@ packages: resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==} engines: {node: '>=8'} - call-bind@1.0.7: - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + call-bind-apply-helpers@1.0.1: + resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} engines: {node: '>= 0.4'} callsite@1.0.0: @@ -6978,14 +6457,8 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001660: - resolution: {integrity: sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==} - - caniuse-lite@1.0.30001669: - resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==} - - caniuse-lite@1.0.30001687: - resolution: {integrity: sha512-0S/FDhf4ZiqrTUiQ39dKeUjYRjkv7lOZU1Dgif2rIqrTzX/1wV2hfKu9TOm1IHkdSijfLswxTFzl/cvir+SLSQ==} + caniuse-lite@1.0.30001689: + resolution: {integrity: sha512-CmeR2VBycfa+5/jOfnp/NpWPGd06nf1XYiefUvhXFfZE4GkRc9jv+eGPS4nT558WS/8lYCzV8SlANCIPvbWP1g==} capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -7005,10 +6478,6 @@ packages: resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} engines: {node: '>=12'} - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - chalk@3.0.0: resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} engines: {node: '>=8'} @@ -7021,8 +6490,8 @@ packages: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} - chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + chalk@5.4.0: + resolution: {integrity: sha512-ZkD35Mx92acjB2yNJgziGqT9oKHEOxjTBTDRpOsRWtdecL/0jM3z5kM/CTzHWvHIen1GvkM85p6TuFfDGfc8/Q==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} change-case@4.1.2: @@ -7072,8 +6541,8 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chokidar@4.0.0: - resolution: {integrity: sha512-mxIojEAQcuEvT/lyXq+jf/3cO/KoA6z4CeNDGGevTybECPOMFCnQy3OPahluUkbqgPNGw5Bi78UC7Po6Lhy+NA==} + chokidar@4.0.2: + resolution: {integrity: sha512-/b57FK+bblSU+dfewfFe0rT1YjVDfOmeLQwCAuC+vwvgLkXboATqqmy+Ipux6JrF6L5joe5CBnFOw+gLWH6yKg==} engines: {node: '>= 14.16.0'} chownr@1.1.4: @@ -7096,11 +6565,6 @@ packages: peerDependencies: devtools-protocol: '*' - chromium-bidi@0.6.4: - resolution: {integrity: sha512-8zoq6ogmhQQkAKZVKO2ObFTl4uOkqoX1PlKQX3hZQ5E9cbUotcAb7h4pTNVAGGv8Z36PF3CtdOriEp/Rz82JqQ==} - peerDependencies: - devtools-protocol: '*' - chromium-bidi@0.6.5: resolution: {integrity: sha512-RuLrmzYrxSb0s9SgpB+QN5jJucPduZQ/9SIe76MDxYJuecPW5mxMdacJ1f4EtgiV+R0p3sCkznTMvH0MPGFqjA==} peerDependencies: @@ -7113,8 +6577,8 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} - ci-info@4.0.0: - resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} + ci-info@4.1.0: + resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==} engines: {node: '>=8'} citty@0.1.6: @@ -7160,10 +6624,6 @@ packages: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} engines: {node: '>=6'} - cli-spinners@3.2.0: - resolution: {integrity: sha512-pXftdQloMZzjCr3pCTIRniDcys6dDzgpgVhAHHk6TKBDbRuP1MkuetTF5KSv4YUutbOPa7+7ZrAJ2kVtbMqyXA==} - engines: {node: '>=18.20'} - cli-table3@0.6.3: resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} engines: {node: 10.* || >= 12.*} @@ -7212,16 +6672,10 @@ packages: collapse-white-space@2.1.0: resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==} - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -7324,13 +6778,10 @@ packages: resolution: {integrity: sha512-XXwUffcVjqv8NGSQu1ttp6eMmuZ3zZEAec28Rt30o/vkXE20jXhowRQ9LXLY4uOgFkxXrNzApLobpam53Dc1AA==} engines: {node: '>= 4.0.0'} - compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} + compression@1.7.5: + resolution: {integrity: sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q==} engines: {node: '>= 0.8.0'} - computeds@0.0.1: - resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -7338,8 +6789,8 @@ packages: resolution: {integrity: sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==} engines: {'0': node >= 6.0} - confbox@0.1.7: - resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + confbox@0.1.8: + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} config-chain@1.1.13: resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} @@ -7356,9 +6807,6 @@ packages: resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==} engines: {node: '>=0.8'} - consola@2.15.3: - resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==} - consola@3.2.3: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} @@ -7425,8 +6873,8 @@ packages: resolution: {integrity: sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw==} engines: {node: '>= 0.6'} - cookie@0.6.0: - resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} + cookie@0.7.1: + resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} engines: {node: '>= 0.6'} copy-text-to-clipboard@3.2.0: @@ -7443,14 +6891,14 @@ packages: resolution: {integrity: sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg==} hasBin: true - core-js-compat@3.38.1: - resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==} + core-js-compat@3.39.0: + resolution: {integrity: sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==} - core-js-pure@3.38.1: - resolution: {integrity: sha512-BY8Etc1FZqdw1glX0XNOq2FDwfrg/VGqoZOZCdaL+UmdaqDwQwYXkMJT4t6In+zfEfOJDcM9T0KdbBeJg8KKCQ==} + core-js-pure@3.39.0: + resolution: {integrity: sha512-7fEcWwKI4rJinnK+wLTezeg2smbFFdSBP6E2kQZNbnzM2s1rpKQ6aaRteZSSg7FLU3P0HGGVo/gbpfanU36urg==} - core-js@3.38.1: - resolution: {integrity: sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==} + core-js@3.39.0: + resolution: {integrity: sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g==} core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -7498,8 +6946,8 @@ packages: cross-fetch@3.1.8: resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} crypt@0.0.2: @@ -7516,12 +6964,24 @@ packages: csp_evaluator@1.1.0: resolution: {integrity: sha512-TcB+ZH9wZBG314jAUpKHPl1oYbRJV+nAT2YwZ9y4fmUN0FkEJa8e/hKZoOgzLYp1Z/CJdFhbhhGIGh0XG8W54Q==} + css-blank-pseudo@7.0.1: + resolution: {integrity: sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + css-declaration-sorter@7.2.0: resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==} engines: {node: ^14 || ^16 || >=18} peerDependencies: postcss: ^8.0.9 + css-has-pseudo@7.0.2: + resolution: {integrity: sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + css-loader@6.11.0: resolution: {integrity: sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==} engines: {node: '>= 12.13.0'} @@ -7559,15 +7019,18 @@ packages: lightningcss: optional: true + css-prefers-color-scheme@10.0.0: + resolution: {integrity: sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + css-select@4.3.0: resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} css-select@5.1.0: resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - css-shorthand-properties@1.1.1: - resolution: {integrity: sha512-Md+Juc7M3uOdbAFwOYlTrccIZ7oCFuzrhKYQjdeUEW/sE1hv17Jp/Bws+ReOPpGVBTYCBoYo+G17V5Qo8QQ75A==} - css-shorthand-properties@1.1.2: resolution: {integrity: sha512-C2AugXIpRGQTxaCW0N7n5jD/p5irUmCrwl03TrnMFBHDbdq44CFWR2zO7rK9xPN4Eo3pUxC4vQzQgbIpzrD1PQ==} @@ -7589,6 +7052,9 @@ packages: css.escape@1.5.1: resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} + cssdb@8.2.3: + resolution: {integrity: sha512-9BDG5XmJrJQQnJ51VFxXCAtpZ5ebDlAREmO8sxMOVU0aSxN/gocbctjIG5LMh3WBUq+xTlb/jw2LoljBEqraTA==} + cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} @@ -7635,8 +7101,8 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - csv-stringify@6.5.1: - resolution: {integrity: sha512-+9lpZfwpLntpTIEpFbwQyWuW/hmI/eHuJZD1XzeZpfZTqkf1fyvBbBLXTJJMsBuuS11uTShMqPwzx4A6ffXgRQ==} + csv-stringify@6.5.2: + resolution: {integrity: sha512-RFPahj0sXcmUyjrObAK+DOWtMvMIFV328n4qZJhgX3x2RqkQgOTU2mCUmiFR0CzM6AzChlRSUErjiJeEt8BaQA==} csv-writer@1.6.0: resolution: {integrity: sha512-NOx7YDFWEsM/fTRAJjRpPp8t+MKRVvniAg9wQlUKx20MFrPs73WLJhFf5iteqrxNYnsy924K3Iroh3yNHeYd2g==} @@ -7689,23 +7155,6 @@ packages: supports-color: optional: true - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - debug@4.4.0: resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} engines: {node: '>=6.0'} @@ -7772,10 +7221,6 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - deepmerge-ts@7.1.0: - resolution: {integrity: sha512-q6bNsfNBtgr8ZOQqmZbl94MmYWm+QcDNIkqCxVWiw1vKvf+y/N2dZQKdnDXn4c5Ygt/y63tDof6OCN+2YwWVEg==} - engines: {node: '>=16.0.0'} - deepmerge-ts@7.1.3: resolution: {integrity: sha512-qCSH6I0INPxd9Y1VtAiLpnYvz5O//6rCfJXKk0z66Up9/VOSr+1yS8XSKA5IWRxjocFGlzPyaZYe+jxq7OOLtQ==} engines: {node: '>=16.0.0'} @@ -7930,14 +7375,6 @@ packages: resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==} engines: {node: '>=6'} - doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - docusaurus-theme-github-codeblock@2.0.2: resolution: {integrity: sha512-H2WoQPWOLjGZO6KS58Gsd+eUVjTFJemkReiSSu9chqokyLc/3Ih3+zPRYfuEZ/HsDvSMIarf7CNcp+Vt+/G+ig==} @@ -7984,12 +7421,8 @@ packages: resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==} engines: {node: '>=10'} - dotenv-expand@11.0.6: - resolution: {integrity: sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g==} - engines: {node: '>=12'} - - dotenv@16.4.5: - resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} + dotenv-expand@11.0.7: + resolution: {integrity: sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==} engines: {node: '>=12'} dotenv@16.4.7: @@ -8005,6 +7438,10 @@ packages: engines: {node: '>=14.0.0'} hasBin: true + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + duplexer2@0.1.4: resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} @@ -8024,10 +7461,6 @@ packages: resolution: {integrity: sha512-sB7vSrDnFa4ezWQk9nZ/n0FdpdUuC6R1EOrlU3DL+bovcNFK28rqu2emmAUjujYEJTWIgQGqgVVWUZXMnc8iWg==} engines: {node: '>=14.0.0'} - edgedriver@5.6.1: - resolution: {integrity: sha512-3Ve9cd5ziLByUdigw6zovVeWJjVs8QHVmqOB0sJ0WNeVPcwf4p18GnxMmVvlFmYRloUwf5suNuorea4QzwBIOA==} - hasBin: true - edgedriver@6.1.1: resolution: {integrity: sha512-/dM/PoBf22Xg3yypMWkmRQrBKEnSyNaZ7wHGCT9+qqT14izwtFT+QvdR89rjNkMfXwW+bSFoqOfbcvM+2Cyc7w==} engines: {node: '>=18.0.0'} @@ -8053,14 +7486,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.23: - resolution: {integrity: sha512-mBhODedOXg4v5QWwl21DjM5amzjmI1zw9EPrPK/5Wx7C8jt33bpZNrC7OhHUG3pxRtbLpr3W2dXT+Ph1SsfRZA==} - - electron-to-chromium@1.5.41: - resolution: {integrity: sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==} - - electron-to-chromium@1.5.72: - resolution: {integrity: sha512-ZpSAUOZ2Izby7qnZluSrAlGgGQzucmFbN0n64dYzocYxnxV5ufurpj3VgEe4cUp7ir9LmeLxNYo8bVnlM8bQHw==} + electron-to-chromium@1.5.74: + resolution: {integrity: sha512-ck3//9RC+6oss/1Bh9tiAVFy5vfSKbRHAFh7Z3/eTRkEqJeWgymloShB17Vg3Z4nmDNp35vAd1BZ6CMW4Wt6Iw==} emoji-regex@10.4.0: resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} @@ -8139,12 +7566,12 @@ packages: error-stack-parser@2.1.4: resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - es-abstract@1.23.3: - resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} + es-abstract@1.23.6: + resolution: {integrity: sha512-Ifco6n3yj2tMZDWNLyloZrytt9lqqlwvS83P3HtaETR0NUOYnIULGGHpktqYGObGy+8wc1okO25p8TjemhImvA==} engines: {node: '>= 0.4'} - es-define-property@1.0.0: - resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} es-errors@1.3.0: @@ -8165,13 +7592,16 @@ packages: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} - es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} + esast-util-from-estree@2.0.0: + resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==} + + esast-util-from-js@2.0.1: + resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==} + esbuild-android-64@0.14.54: resolution: {integrity: sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==} engines: {node: '>=12'} @@ -8273,8 +7703,8 @@ packages: peerDependencies: esbuild: '>= 0.14.0' - esbuild-plugin-d.ts@1.3.0: - resolution: {integrity: sha512-vd7g7dSP2fK4s/OI7PsnnRRBrui9TqQmTZa7nqhokziX52tNWBcXeO3fr59jecIwm/I8AXh/FRFb2N5BL3XppQ==} + esbuild-plugin-d.ts@1.3.1: + resolution: {integrity: sha512-is6W2FalyN5CFMMSNB6k6wIxTw5MGakQVN8+aCnF1g5mwQ21c/IkjgEkwlZy8GyLErmrTY1xympl+HPHtJw8DQ==} engines: {node: '>=12.0.0'} peerDependencies: typescript: '*' @@ -8363,46 +7793,25 @@ packages: resolution: {integrity: sha512-IsUTtGxF1hrH6lMWiSl1WbGaiP01eT6kzywdY1U+zLc0MP+nwEnUiS9UI8IaOTUhTeQJLlCEWIbXINBH4YJbBQ==} engines: {node: '>=10'} - eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - - eslint-module-utils@2.11.0: - resolution: {integrity: sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - - eslint-plugin-import@2.30.0: - resolution: {integrity: sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - - eslint-plugin-unicorn@55.0.0: - resolution: {integrity: sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==} + eslint-plugin-unicorn@56.0.1: + resolution: {integrity: sha512-FwVV0Uwf8XPfVnKSGpMg7NtlZh0G0gBarCaFcMUOoqPxXryxdYxTRRv4kH6B9TFCVIrjRXG+emcxIk2ayZilog==} engines: {node: '>=18.18'} peerDependencies: eslint: '>=8.56.0' + eslint-plugin-unused-imports@4.1.4: + resolution: {integrity: sha512-YptD6IzQjDardkl0POxnnRBhU1OEePMV0nd6siHaRBbd+lyh6NAhFEobiznKU7kTsSsDeSD62Pe7kAM1b7dAZQ==} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0 + eslint: ^9.0.0 || ^8.0.0 + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + + eslint-plugin-wdio@9.2.11: + resolution: {integrity: sha512-EtrbAUdQB9ID6OcASu1fcIgKvIiY+dPsQoPRu5PQbu6wx+7Sly4R6niPlUAABox6Is7Dni4hGmQmT4cy9tHamg==} + engines: {node: '>=18.20.0'} + eslint-rule-docs@1.1.235: resolution: {integrity: sha512-+TQ+x4JdTnDoFEXXb3fDvfGOwnyNV7duH8fXWTPD1ieaBmB8omj7Gw/pMBBu4uI2uJCCU8APDaQJzWuXnTsH4A==} @@ -8410,30 +7819,20 @@ packages: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-scope@8.0.2: - resolution: {integrity: sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==} + eslint-scope@8.2.0: + resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-visitor-keys@4.0.0: - resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} + eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@8.57.1: - resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. - hasBin: true - - eslint@9.10.0: - resolution: {integrity: sha512-Y4D0IgtBZfOcOUAIQTSXBKoNGfY0REGqHJG6+Q81vNippW5YlKjHFj4soMxamKK1NXHUWuBZTLdU3Km+L/pcHw==} + eslint@9.17.0: + resolution: {integrity: sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -8442,14 +7841,10 @@ packages: jiti: optional: true - espree@10.1.0: - resolution: {integrity: sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==} + espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - esprima@4.0.1: resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} engines: {node: '>=4'} @@ -8480,11 +7875,14 @@ packages: estree-util-is-identifier-name@3.0.0: resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} + estree-util-scope@1.0.0: + resolution: {integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==} + estree-util-to-js@2.0.0: resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==} - estree-util-value-to-estree@3.1.2: - resolution: {integrity: sha512-S0gW2+XZkmsx00tU2uJ4L9hUT7IFabbml9pHh2WQqFmAbxit++YGZne0sKJbNwkj9Wvg9E4uqWl4nCIFQMmfag==} + estree-util-value-to-estree@3.2.1: + resolution: {integrity: sha512-Vt2UOjyPbNQQgT5eJh+K5aATti0OjCIAGc9SgMdOFYbohuifsWclR74l0iZTJwePMgWYdX1hlVS+dedH9XV8kw==} estree-util-visit@2.0.0: resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==} @@ -8544,8 +7942,8 @@ packages: resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} engines: {node: '>=16.17'} - execa@9.3.1: - resolution: {integrity: sha512-gdhefCCNy/8tpH/2+ajP9IQc14vXchNdd0weyzSJEFURhRMGncQ+zKFxwjAufIewPEJm9BPOaJnvg2UtlH2gPQ==} + execa@9.5.2: + resolution: {integrity: sha512-EHlpxMCpHWSAh1dgS6bVeoLAXGnJNdR93aabr4QCGbzOM73o5XmRfM/e5FUqsw3aagP8S8XEWUWFAxnRBnAF0Q==} engines: {node: ^18.19.0 || >=20.5.0} expand-template@2.0.3: @@ -8560,14 +7958,6 @@ packages: resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==} engines: {node: '>=12.0.0'} - expect-webdriverio@5.0.2: - resolution: {integrity: sha512-vkUwoUvURH25pRClX1I5oCIObju8cT9kN5jQH4RN5QxKXK7hdowYd8dbDXD5JKOE/OutdYx67YtCl8vpZq/uSg==} - engines: {node: '>=18 || >=20 || >=22'} - peerDependencies: - '@wdio/globals': ^9.0.0 - '@wdio/logger': ^9.0.0 - webdriverio: ^9.0.0 - expect-webdriverio@5.0.5: resolution: {integrity: sha512-h04OGd7ZksVj8bgv3bYdjFpmJuKeCnyRrBmpMxYpMDmYSspxg9vsSr0kD5p9oOM16bX0ZXEVXr42RbI2hoLpTw==} engines: {node: '>=18 || >=20 || >=22'} @@ -8587,8 +7977,8 @@ packages: exponential-backoff@3.1.1: resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} - express@4.21.0: - resolution: {integrity: sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==} + express@4.21.2: + resolution: {integrity: sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==} engines: {node: '>= 0.10.0'} extend-shallow@2.0.1: @@ -8626,18 +8016,15 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - fast-uri@3.0.1: - resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} - - fast-url-parser@1.1.3: - resolution: {integrity: sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==} + fast-uri@3.0.3: + resolution: {integrity: sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==} fast-xml-parser@4.4.1: resolution: {integrity: sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==} hasBin: true - fast-xml-parser@4.5.0: - resolution: {integrity: sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==} + fast-xml-parser@4.5.1: + resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==} hasBin: true fastq@1.17.1: @@ -8678,10 +8065,6 @@ packages: resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} engines: {node: '>=18'} - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - file-entry-cache@8.0.0: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} @@ -8752,10 +8135,6 @@ packages: engines: {node: '>=18'} hasBin: true - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - flat-cache@4.0.1: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} @@ -8764,8 +8143,8 @@ packages: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true - flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + flatted@3.3.2: + resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} flushwritable@1.0.0: resolution: {integrity: sha512-3VELfuWCLVzt5d2Gblk8qcqFro6nuwvxwMzHaENVDHI7rxcBRtMCwTk/E9FXcgh+82DSpavPNDueA9+RxXJoFg==} @@ -8804,8 +8183,8 @@ packages: resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==} engines: {node: '>= 14.17'} - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + form-data@4.0.1: + resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} format@0.2.2: @@ -8874,18 +8253,13 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + function.prototype.name@1.1.7: + resolution: {integrity: sha512-2g4x+HqTJKM9zcJqBSpjoRmdcPFtJM60J3xJisTQSXBWka5XqyBN/2tNUgma1mztTXyDuUsEtYe5qcs7xYzYQA==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - geckodriver@4.5.1: - resolution: {integrity: sha512-lGCRqPMuzbRNDWJOQcUqhNqPvNsIFu6yzXF8J/6K3WCYFd2r5ckbeF7h1cxsnjA7YLSEiWzERCt6/gjZ3tW0ug==} - engines: {node: ^16.13 || >=18 || >=20} - hasBin: true - geckodriver@5.0.0: resolution: {integrity: sha512-vn7TtQ3b9VMJtVXsyWtQQl1fyBVFhQy7UvJF96kPuuJ0or5THH496AD3eUyaDD11+EqCxH9t6V+EP9soZQk4YQ==} engines: {node: '>=18.0.0'} @@ -8899,12 +8273,12 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-east-asian-width@1.2.0: - resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} + get-east-asian-width@1.3.0: + resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} - get-intrinsic@1.2.4: - resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} + get-intrinsic@1.2.6: + resolution: {integrity: sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==} engines: {node: '>= 0.4'} get-own-enumerable-property-symbols@3.0.2: @@ -8954,17 +8328,13 @@ packages: resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} engines: {node: '>=18'} - get-symbol-description@1.0.2: - resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} get-tsconfig@4.8.1: resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} - get-uri@6.0.3: - resolution: {integrity: sha512-BzUrJBS9EcUb4cFol8r4W3v1cPsSyajLSthNkz5BxbpDcHN5tIrM10E2eNvfnvBn3DaT3DUgx0OpsBKkaOpanw==} - engines: {node: '>= 14'} - get-uri@6.0.4: resolution: {integrity: sha512-E1b1lFFLvLgak2whF2xDBcOy6NLVGZBqqjJjsIhvopKfWWEi64pLVTWWehV8KlLerZkfNTA95sTe2OdJKm1OzQ==} engines: {node: '>= 14'} @@ -9070,16 +8440,12 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - globals@14.0.0: resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} engines: {node: '>=18'} - globals@15.9.0: - resolution: {integrity: sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==} + globals@15.14.0: + resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} engines: {node: '>=18'} globalthis@1.0.4: @@ -9098,8 +8464,9 @@ packages: resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} engines: {node: '>=18'} - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} got@11.8.6: resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} @@ -9130,8 +8497,8 @@ packages: peerDependencies: graphql: 14 - 16 - graphql@16.9.0: - resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} + graphql@16.10.0: + resolution: {integrity: sha512-AjqGKbDGUFRKIRCP9tCKiIGHyriz2oHEbPIbEtcSLSs4YjReZOIPQQWek4+6hjw62H9QShXHyaGivGiYVLeYFQ==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} gray-matter@4.0.3: @@ -9158,12 +8525,9 @@ packages: resolution: {integrity: sha512-Qr4RtTm30xvEdqUXbSBVWDu+PrTokJOwe/FU+VdfJPk+MXAPoeOzKpRyrDTnZIJwAkQ4oBLTU53nu0HrkF/Z2A==} engines: {node: '>=8'} - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} @@ -9172,12 +8536,12 @@ packages: has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.3: - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} has-tostringtag@1.0.2: @@ -9205,20 +8569,20 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-from-parse5@8.0.1: - resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} + hast-util-from-parse5@8.0.2: + resolution: {integrity: sha512-SfMzfdAi/zAoZ1KkFEyyeXBn7u/ShQrfd675ZEE9M3qj+PMFX05xubzRyF76CCSJu8au9jgVxDV1+okFvgZU4A==} hast-util-parse-selector@4.0.0: resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} - hast-util-raw@9.0.4: - resolution: {integrity: sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==} + hast-util-raw@9.1.0: + resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==} hast-util-to-estree@3.1.0: resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} - hast-util-to-jsx-runtime@2.3.0: - resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} + hast-util-to-jsx-runtime@2.3.2: + resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} hast-util-to-parse5@8.0.0: resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} @@ -9226,8 +8590,8 @@ packages: hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - hastscript@8.0.0: - resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} + hastscript@9.0.0: + resolution: {integrity: sha512-jzaLBGavEDKHrc5EfFImKN7nZKKBdSLIdGvCwDZ9TfzbF2ffXiov8CKE445L2Z1Ek2t/m4SKQ2j6Ipv7NyUolw==} he@1.2.0: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} @@ -9304,8 +8668,8 @@ packages: html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} - html-webpack-plugin@5.6.0: - resolution: {integrity: sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw==} + html-webpack-plugin@5.6.3: + resolution: {integrity: sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==} engines: {node: '>=10.13.0'} peerDependencies: '@rspack/core': 0.x || 1.x @@ -9316,12 +8680,6 @@ packages: webpack: optional: true - htmlfy@0.2.1: - resolution: {integrity: sha512-HoomFHQ3av1uhq+7FxJTq4Ns0clAD+tGbQNrSd0WFY3UAjjUk6G3LaWEqdgmIXYkY4pexZiyZ3ykZJhQlM0J5A==} - - htmlfy@0.3.0: - resolution: {integrity: sha512-4dVLwk/FOiiYxyd1PzX9Yy6wTN1F4NF2OCcPz2ms+deG0e45NmMDCzYSLBjbdNLdpZR5X9kGqmavAKKklmSbIQ==} - htmlfy@0.3.2: resolution: {integrity: sha512-FsxzfpeDYRqn1emox9VpxMPfGjADoUmmup8D604q497R0VNxiXs4ZZTN2QzkaMA5C9aHGUoe1iQRVSm+HK9xuA==} @@ -9365,8 +8723,8 @@ packages: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} - http-proxy-middleware@2.0.6: - resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==} + http-proxy-middleware@2.0.7: + resolution: {integrity: sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==} engines: {node: '>=12.0.0'} peerDependencies: '@types/express': ^4.17.13 @@ -9390,10 +8748,6 @@ packages: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} - https-proxy-agent@7.0.5: - resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} - engines: {node: '>= 14'} - https-proxy-agent@7.0.6: resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} engines: {node: '>= 14'} @@ -9450,6 +8804,10 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} + ignore@6.0.2: + resolution: {integrity: sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==} + engines: {node: '>= 4'} + image-size@1.1.1: resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} engines: {node: '>=16.x'} @@ -9495,8 +8853,8 @@ packages: infer-owner@1.0.4: resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} - infima@0.2.0-alpha.44: - resolution: {integrity: sha512-tuRkUSO/lB3rEhLJk25atwAjgLuzq070+pOW8XcvpHky/YbENnRRdPd85IBkyeTgttmOy5ah+yHYsK1HhUd4lQ==} + infima@0.2.0-alpha.45: + resolution: {integrity: sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==} engines: {node: '>=12'} inflight@1.0.6: @@ -9536,14 +8894,6 @@ packages: inline-style-parser@0.2.4: resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==} - inquirer@10.2.2: - resolution: {integrity: sha512-tyao/4Vo36XnUItZ7DnUXX4f1jVao2mSrleV/5IPtW/XAEA26hRVsbc68nuTEKWcr5vMP/1mVoT2O7u8H4v1Vg==} - engines: {node: '>=18'} - - inquirer@11.0.1: - resolution: {integrity: sha512-G+GdcKg7AaWER6H3UuccHkDZSJYxE1x12V2AbmJQNY5/WYSBVEDip1nDy0yoQQz21Qm+CscYEXw09lG6OGqTeA==} - engines: {node: '>=18'} - inquirer@11.1.0: resolution: {integrity: sha512-CmLAZT65GG/v30c+D2Fk8+ceP6pxD6RL+hIUOWAltCmeyEqWYwqu9v76q03OvjyZ3AB0C1Ala2stn1z/rMqGEw==} engines: {node: '>=18'} @@ -9552,8 +8902,8 @@ packages: resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==} engines: {node: '>=12.0.0'} - internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} interpret@1.4.0: @@ -9592,12 +8942,12 @@ packages: is-alphanumerical@2.0.1: resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + is-arguments@1.2.0: + resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==} engines: {node: '>= 0.4'} - is-array-buffer@3.0.4: - resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} engines: {node: '>= 0.4'} is-arrayish@0.2.1: @@ -9606,15 +8956,20 @@ packages: is-arrayish@0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-async-function@2.0.0: + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + is-boolean-object@1.2.1: + resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==} engines: {node: '>= 0.4'} is-buffer@1.1.6: @@ -9636,16 +8991,16 @@ packages: resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} hasBin: true - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + is-core-module@2.16.0: + resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} engines: {node: '>= 0.4'} - is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} is-decimal@2.0.1: @@ -9664,10 +9019,18 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} + is-generator-function@1.0.10: + resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + engines: {node: '>= 0.4'} + is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -9712,8 +9075,8 @@ packages: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -9763,11 +9126,11 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - is-reference@3.0.2: - resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} + is-reference@3.0.3: + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} is-regexp@1.0.0: @@ -9785,8 +9148,8 @@ packages: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} - is-shared-array-buffer@1.0.3: - resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} engines: {node: '>= 0.4'} is-ssh@1.4.0: @@ -9808,20 +9171,20 @@ packages: resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} engines: {node: '>=18'} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} is-text-path@1.0.1: resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==} engines: {node: '>=0.10.0'} - is-typed-array@1.1.13: - resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} engines: {node: '>= 0.4'} is-typedarray@1.0.0: @@ -9842,11 +9205,12 @@ packages: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-weakref@1.1.0: + resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==} + engines: {node: '>= 0.4'} - is-weakset@2.0.3: - resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} engines: {node: '>= 0.4'} is-windows@1.0.2: @@ -9915,8 +9279,8 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jackspeak@4.0.1: - resolution: {integrity: sha512-cub8rahkh0Q/bw1+GxP7aeSe29hHHn2V4m29nnDlvCdlgU+3UGxkZp7Z53jLUdpX3jdTO0nJZUDl3xvbWc2Xog==} + jackspeak@4.0.2: + resolution: {integrity: sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==} engines: {node: 20 || >=22} jake@10.9.2: @@ -9924,11 +9288,11 @@ packages: engines: {node: '>=10'} hasBin: true - jasmine-core@5.3.0: - resolution: {integrity: sha512-zsOmeBKESky4toybvWEikRiZ0jHoBEu79wNArLfMdSnlLMZx3Xcp6CSm2sUcYyoJC+Uyj8LBJap/MUbVSfJ27g==} + jasmine-core@5.5.0: + resolution: {integrity: sha512-NHOvoPO6o9gVR6pwqEACTEpbgcH+JJ6QDypyymGbSUIFIFsMMbBJ/xsFNud8MSClfnWclXd7RQlAZBz7yVo5TQ==} - jasmine@5.3.0: - resolution: {integrity: sha512-Vrv5VWTXVZ/5xcNawlYCmE24pOaZu3KduLr9iAaENoMJ8W8Ryvhfpw2cf3rI4Unc2ajvu2t4tCKjS72TnraBGQ==} + jasmine@5.5.0: + resolution: {integrity: sha512-JKlEVCVD5QBPYLsg/VE+IUtjyseDCrW8rMBu8la+9ysYashDgavMLM9Kotls1FhI6dCJLJ40dBCIfQjGLPZI1Q==} hasBin: true jest-diff@29.7.0: @@ -9987,8 +9351,12 @@ packages: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jiti@1.21.6: - resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + jiti@1.21.7: + resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} + hasBin: true + + jiti@2.4.2: + resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true joi@17.13.3: @@ -10013,8 +9381,8 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-tokens@9.0.0: - resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} + js-tokens@9.0.1: + resolution: {integrity: sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==} js-yaml@3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -10045,11 +9413,6 @@ packages: resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} hasBin: true - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - jsesc@3.0.2: resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} engines: {node: '>=6'} @@ -10094,10 +9457,6 @@ packages: json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} - json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} @@ -10152,8 +9511,8 @@ packages: resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} engines: {node: '>= 8'} - knitwork@1.1.0: - resolution: {integrity: sha512-oHnmiBUVHz1V+URE77PNot2lv3QiYU2zQf1JjOVkMt3YDKGbu8NAFr+c4mcNOhdsGrB/VpVbRwPwhiXrPhxQbw==} + knitwork@1.2.0: + resolution: {integrity: sha512-xYSH7AvuQ6nXkq42x0v5S8/Iry+cfulBz/DJQzhIyESdLD7425jXsPy4vn5cCXU+HhRN2kVw51Vd1K6/By4BQg==} knuth-shuffle-seeded@1.0.6: resolution: {integrity: sha512-9pFH0SplrfyKyojCLxZfMcvkhf5hH0d+UwR9nTVJ/DDQJGuzcXjTwB7TP7sDfehSudlGGaOLblmEWqv04ERVWg==} @@ -10208,20 +9567,16 @@ packages: lighthouse-logger@1.4.2: resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==} - lighthouse-stack-packs@1.12.1: - resolution: {integrity: sha512-i4jTmg7tvZQFwNFiwB+nCK6a7ICR68Xcwo+VIVd6Spi71vBNFUlds5HiDrSbClZdkQDON2Bhqv+KKJIo5zkPeA==} + lighthouse-stack-packs@1.12.2: + resolution: {integrity: sha512-Ug8feS/A+92TMTCK6yHYLwaFMuelK/hAKRMdldYkMNwv+d9PtWxjXEg6rwKtsUXTADajhdrhXyuNCJ5/sfmPFw==} lighthouse@8.6.0: resolution: {integrity: sha512-/H7aDL3//Gr0M1v8GGq6k0OTNty7nDVuU/o1cg6opYkfHRz1V3Nhydqz6aBzfXhUQx6iJRnxgRCPya+ZLA2vbg==} engines: {node: '>=12.20.0 12 || >=14.13 14 || >=15'} hasBin: true - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} + lilconfig@3.1.3: + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} lines-and-columns@1.2.4: @@ -10238,14 +9593,14 @@ packages: linkify-it@4.0.1: resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==} - lit-element@4.1.0: - resolution: {integrity: sha512-gSejRUQJuMQjV2Z59KAS/D4iElUhwKpIyJvZ9w+DIagIQjfJnhR20h2Q5ddpzXGS+fF0tMZ/xEYGMnKmaI/iww==} + lit-element@4.1.1: + resolution: {integrity: sha512-HO9Tkkh34QkTeUmEdNYhMT8hzLid7YlMlATSi1q4q17HE5d9mrrEHJ/o8O2D0cMi182zK1F3v7x0PWFjrhXFew==} - lit-html@3.2.0: - resolution: {integrity: sha512-pwT/HwoxqI9FggTrYVarkBKFN9MlTUpLrDHubTmW4SrkL3kkqW5gxwbxMMUnbbRHBC0WTZnYHcjDSCM559VyfA==} + lit-html@3.2.1: + resolution: {integrity: sha512-qI/3lziaPMSKsrwlxH/xMgikhQ0EGOX2ICU73Bi/YHFvz2j/yMCIrw4+puF2IpQ4+upd3EWbvnHM9+PnJn48YA==} - lit@3.2.0: - resolution: {integrity: sha512-s6tI33Lf6VpDu7u4YqsSX78D28bYQulM+VAzsGch4fx2H0eLZnJsUBsPWmGYSGoKDNbjtRv02rio1o+UdPVwvw==} + lit@3.2.1: + resolution: {integrity: sha512-1BBa1E/z0O9ye5fZprPtdqnc0BFzxIxTTOO/tQFmyC/hj1O3jL4TfmLBw0WEwjAokdLwpclkvGgDJwTIh0/22w==} load-json-file@4.0.0: resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} @@ -10271,13 +9626,10 @@ packages: resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} engines: {node: '>=14'} - local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + local-pkg@0.5.1: + resolution: {integrity: sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==} engines: {node: '>=14'} - locate-app@2.4.43: - resolution: {integrity: sha512-BX6NEdECUGcDQw8aqqg02qLyF9rF8V+dAfyAnBzL2AofIlIvf4Q6EGXnzVWpWot9uBE+x/o8CjXHo7Zlegu91Q==} - locate-app@2.5.0: resolution: {integrity: sha512-xIqbzPMBYArJRmPGUZD9CzV9wOqmVtQnaAn3wrj3s6WYW0bQvPI7x+sPYUGmDTYMHefVK//zc6HEYZ1qnxIK+Q==} @@ -10356,8 +9708,8 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} - logform@2.6.1: - resolution: {integrity: sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==} + logform@2.7.0: + resolution: {integrity: sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==} engines: {node: '>= 12.0.0'} loglevel-plugin-prefix@0.8.4: @@ -10398,8 +9750,8 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@11.0.1: - resolution: {integrity: sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==} + lru-cache@11.0.2: + resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==} engines: {node: 20 || >=22} lru-cache@5.1.1: @@ -10424,12 +9776,6 @@ packages: magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} - magic-string@0.30.11: - resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} - - magic-string@0.30.15: - resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} - magic-string@0.30.17: resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} @@ -10479,8 +9825,11 @@ packages: resolution: {integrity: sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==} hasBin: true - markdown-table@3.0.3: - resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} + markdown-table@2.0.0: + resolution: {integrity: sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==} + + markdown-table@3.0.4: + resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} marky@1.2.5: resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} @@ -10489,6 +9838,10 @@ packages: resolution: {integrity: sha512-+nGYoOlfHmxe5BW5tE0EMJppXEwdSf8uBA1GTZC7Q77kbT35+VKLYJMzVNWCHSsga1ps1tPYFtFyvxvKzWVmMA==} engines: {node: '>=6'} + math-intrinsics@1.0.0: + resolution: {integrity: sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==} + engines: {node: '>= 0.4'} + md5@2.3.0: resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} @@ -10498,8 +9851,8 @@ packages: mdast-util-find-and-replace@3.0.1: resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} - mdast-util-from-markdown@2.0.1: - resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} + mdast-util-from-markdown@2.0.2: + resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==} mdast-util-frontmatter@2.0.1: resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==} @@ -10540,8 +9893,8 @@ packages: mdast-util-to-hast@13.2.0: resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} - mdast-util-to-markdown@2.1.0: - resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} + mdast-util-to-markdown@2.1.2: + resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==} mdast-util-to-string@4.0.0: resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} @@ -10592,11 +9945,11 @@ packages: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} - micromark-core-commonmark@2.0.1: - resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} + micromark-core-commonmark@2.0.2: + resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==} - micromark-extension-directive@3.0.1: - resolution: {integrity: sha512-VGV2uxUzhEZmaP7NSFo2vtq7M2nUD+WfmYQD+d8i/1nHbzE+rMy9uzTvUybBbNiVbrhOZibg3gbyoARGqgDWyg==} + micromark-extension-directive@3.0.2: + resolution: {integrity: sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==} micromark-extension-frontmatter@2.0.0: resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==} @@ -10637,11 +9990,11 @@ packages: micromark-extension-mdxjs@3.0.0: resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} - micromark-factory-destination@2.0.0: - resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} + micromark-factory-destination@2.0.1: + resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==} - micromark-factory-label@2.0.0: - resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} + micromark-factory-label@2.0.1: + resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} micromark-factory-mdx-expression@2.0.2: resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} @@ -10649,71 +10002,71 @@ packages: micromark-factory-space@1.1.0: resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} - micromark-factory-space@2.0.0: - resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} + micromark-factory-space@2.0.1: + resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} - micromark-factory-title@2.0.0: - resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} + micromark-factory-title@2.0.1: + resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==} - micromark-factory-whitespace@2.0.0: - resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} + micromark-factory-whitespace@2.0.1: + resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==} micromark-util-character@1.2.0: resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} - micromark-util-character@2.1.0: - resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} + micromark-util-character@2.1.1: + resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==} - micromark-util-chunked@2.0.0: - resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} + micromark-util-chunked@2.0.1: + resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==} - micromark-util-classify-character@2.0.0: - resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} + micromark-util-classify-character@2.0.1: + resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==} - micromark-util-combine-extensions@2.0.0: - resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} + micromark-util-combine-extensions@2.0.1: + resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==} - micromark-util-decode-numeric-character-reference@2.0.1: - resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} + micromark-util-decode-numeric-character-reference@2.0.2: + resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==} - micromark-util-decode-string@2.0.0: - resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} + micromark-util-decode-string@2.0.1: + resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==} - micromark-util-encode@2.0.0: - resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + micromark-util-encode@2.0.1: + resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} micromark-util-events-to-acorn@2.0.2: resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} - micromark-util-html-tag-name@2.0.0: - resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} + micromark-util-html-tag-name@2.0.1: + resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} - micromark-util-normalize-identifier@2.0.0: - resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} + micromark-util-normalize-identifier@2.0.1: + resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==} - micromark-util-resolve-all@2.0.0: - resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} + micromark-util-resolve-all@2.0.1: + resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==} - micromark-util-sanitize-uri@2.0.0: - resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + micromark-util-sanitize-uri@2.0.1: + resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} - micromark-util-subtokenize@2.0.1: - resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} + micromark-util-subtokenize@2.0.3: + resolution: {integrity: sha512-VXJJuNxYWSoYL6AJ6OQECCFGhIU2GGHMw8tahogePBrjkG8aCCas3ibkp7RnVOSTClg2is05/R7maAhF1XyQMg==} micromark-util-symbol@1.1.0: resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} - micromark-util-symbol@2.0.0: - resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + micromark-util-symbol@2.0.1: + resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} micromark-util-types@1.1.0: resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} - micromark-util-types@2.0.0: - resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + micromark-util-types@2.0.1: + resolution: {integrity: sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==} - micromark@4.0.0: - resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} + micromark@4.0.1: + resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==} micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} @@ -10773,8 +10126,8 @@ packages: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} - mini-css-extract-plugin@2.9.1: - resolution: {integrity: sha512-+Vyi+GCCOHnrJ2VPS+6aPoXN2k2jgUzDRhTFLjjTBn23qyXJXkjUWQgTL+mXpF5/A8ixLdCc6kWsoeOjKGejKQ==} + mini-css-extract-plugin@2.9.2: + resolution: {integrity: sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==} engines: {node: '>= 12.13.0'} peerDependencies: webpack: ^5.0.0 @@ -10891,14 +10244,11 @@ packages: engines: {node: '>=10'} hasBin: true - mlly@1.7.1: - resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} + mlly@1.7.3: + resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} - mlly@1.7.2: - resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} - - mocha@10.7.3: - resolution: {integrity: sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==} + mocha@10.8.2: + resolution: {integrity: sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==} engines: {node: '>= 14.0.0'} hasBin: true @@ -10916,10 +10266,6 @@ packages: resolution: {integrity: sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==} engines: {node: '>= 0.8.0'} - mri@1.2.0: - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} - engines: {node: '>=4'} - mrmime@2.0.0: resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} engines: {node: '>=10'} @@ -10951,8 +10297,8 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -10984,8 +10330,8 @@ packages: resolution: {integrity: sha512-pG+QkbovRb8XMdSTnV/GgFWdwWAv2y7bWMzdCQnk2gQ3JjrpHgBAd0V8IIIhSBLJVvrOAqhSBsZrxSntISvXjA==} engines: {node: '>= 18'} - node-abi@3.67.0: - resolution: {integrity: sha512-bLn/fU/ALVBE9wj+p4Y21ZJWYFjUXLXPi/IewyLZkx3ApxKDNBWCKdReeKOtD8dWpOdDCeMyLh6ZewzcLsG2Nw==} + node-abi@3.71.0: + resolution: {integrity: sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==} engines: {node: '>=10'} node-addon-api@6.1.0: @@ -10995,8 +10341,8 @@ packages: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} engines: {node: '>=10.5.0'} - node-emoji@2.1.3: - resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} + node-emoji@2.2.0: + resolution: {integrity: sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==} engines: {node: '>=18'} node-fetch-native@1.6.4: @@ -11028,8 +10374,8 @@ packages: resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} - node-gyp@10.2.0: - resolution: {integrity: sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==} + node-gyp@10.3.1: + resolution: {integrity: sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==} engines: {node: ^16.14.0 || >=18.0.0} hasBin: true @@ -11042,9 +10388,6 @@ packages: node-machine-id@1.1.12: resolution: {integrity: sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==} - node-releases@2.0.18: - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} - node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -11118,13 +10461,8 @@ packages: resolution: {integrity: sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==} engines: {node: ^16.14.0 || >=18.0.0} - npm-run-all2@6.2.3: - resolution: {integrity: sha512-5RsxC7jEc/RjxOYBVdEfrJf5FsJ0pHA7jr2/OxrThXknajETCTYjigOCG3iaGjdYIKEQlDuCG0ir0T1HTva8pg==} - engines: {node: ^14.18.0 || ^16.13.0 || >=18.0.0, npm: '>= 8'} - hasBin: true - - npm-run-all2@6.2.4: - resolution: {integrity: sha512-h/v0JWs0P12iR076jL0iTi4JzZVaJPnwse2+s4XzaIxwjtybQbQM2kg/Wd7Lxi0iEOXy3ZX2tLPNbm3MqzIFqw==} + npm-run-all2@6.2.6: + resolution: {integrity: sha512-tkyb4pc0Zb0oOswCb5tORPk9MvVL6gcDq1cMItQHmsbVk1skk7YF6cH+UU2GxeNLHMuk6wFEOSmEmJ2cnAK1jg==} engines: {node: ^14.18.0 || ^16.13.0 || >=18.0.0, npm: '>= 8'} hasBin: true @@ -11136,8 +10474,12 @@ packages: resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - npm-to-yarn@2.2.1: - resolution: {integrity: sha512-O/j/ROyX0KGLG7O6Ieut/seQ0oiTpHF2tXAcFbpdTLQFiaNtkyTXXocM1fwpaa60dg1qpWj0nHlbNhx6qwuENQ==} + npm-run-path@6.0.0: + resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} + engines: {node: '>=18'} + + npm-to-yarn@3.0.0: + resolution: {integrity: sha512-76YnmsbfrYp0tMsWxM0RNX0Vs+x8JxpJGu6B/jDn4lW8+laiTcKmKi9MeMh4UikO4RkJ1oqURoDy9bXJmMXS6A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} nprogress@0.2.0: @@ -11146,11 +10488,17 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - nwsapi@2.2.12: - resolution: {integrity: sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==} + null-loader@4.0.1: + resolution: {integrity: sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==} + engines: {node: '>= 10.13.0'} + peerDependencies: + webpack: ^4.0.0 || ^5.0.0 - nx@20.0.8: - resolution: {integrity: sha512-cMtb+u5Eji7Xm9xMHZkRXMcO8GH6FFqS2+nMgtLUZ/+ZmquEgoV8mbsKVw1u1sJ6osOpWAu9OwXcilwtvSOoBw==} + nwsapi@2.2.16: + resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} + + nx@20.2.2: + resolution: {integrity: sha512-wHgC/NQ82Q3LOeUZXPI2j/JhpZwb7JjRc0uDn3kQU+lN/ulySCJHTHCf4CIglW4NjZeN1WZZ7YMeddtFWETGGA==} hasBin: true peerDependencies: '@swc-node/register': ^1.8.0 @@ -11161,8 +10509,8 @@ packages: '@swc/core': optional: true - nypm@0.3.11: - resolution: {integrity: sha512-E5GqaAYSnbb6n1qZyik2wjPDZON43FqOJO59+3OkWrnmQtjggrMOVnsyzfjxp/tS6nlYJBA4zRA5jSM2YaadMg==} + nypm@0.3.12: + resolution: {integrity: sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==} engines: {node: ^14.16.0 || >=16.10.0} hasBin: true @@ -11174,10 +10522,6 @@ packages: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} - object-inspect@1.13.2: - resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} - engines: {node: '>= 0.4'} - object-inspect@1.13.3: resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==} engines: {node: '>= 0.4'} @@ -11190,20 +10534,8 @@ packages: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} - object.assign@4.1.5: - resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} - engines: {node: '>= 0.4'} - - object.fromentries@2.0.8: - resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} - engines: {node: '>= 0.4'} - - object.groupby@1.0.3: - resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} - engines: {node: '>= 0.4'} - - object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} + object.assign@4.1.6: + resolution: {integrity: sha512-yVh6qdqwYsX9rUYzK6VGV4QT16okE8zNvcX0uRPg9MmBNcvPdTJi7cErXnUw/IeQ7Cg4tYMM6BTL3JEcEA0YTQ==} engines: {node: '>= 0.4'} obuf@1.1.2: @@ -11362,10 +10694,6 @@ packages: resolution: {integrity: sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==} engines: {node: '>=8'} - pac-proxy-agent@7.0.2: - resolution: {integrity: sha512-BFi3vZnO9X5Qt6NRz7ZOaPja3ic0PhlsmCRYLOpN11+mWBCR6XJDqW5RF3j8jm4WGGQZtBA+bTfxYzeKW73eHg==} - engines: {node: '>= 14'} - pac-proxy-agent@7.1.0: resolution: {integrity: sha512-Z5FnLVVZSnX7WjBg0mhDtydeRZ1xMcATZThjySQUHqr+0ksP8kqaw23fNKkaaN/Z8gwLUs/W7xdl0I75eP2Xyw==} engines: {node: '>= 14'} @@ -11374,8 +10702,8 @@ packages: resolution: {integrity: sha512-5NPgf87AT2STgwa2ntRMr45jTKrYBGkVU36yT0ig/n/GMAa3oPqhZfIQ2kMEimReg0+t9kZViDVZ83qfVUlckg==} engines: {node: '>= 14'} - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} package-json@6.5.0: resolution: {integrity: sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==} @@ -11411,8 +10739,8 @@ packages: resolution: {integrity: sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - parse-entities@4.0.1: - resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} parse-json@4.0.0: resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} @@ -11446,8 +10774,8 @@ packages: parse5-htmlparser2-tree-adapter@6.0.1: resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} - parse5-htmlparser2-tree-adapter@7.0.0: - resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} + parse5-htmlparser2-tree-adapter@7.1.0: + resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==} parse5-parser-stream@7.1.2: resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==} @@ -11458,8 +10786,8 @@ packages: parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@7.1.2: - resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} @@ -11512,14 +10840,14 @@ packages: resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} engines: {node: 20 || >=22} - path-to-regexp@0.1.10: - resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} + path-to-regexp@0.1.12: + resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} path-to-regexp@1.9.0: resolution: {integrity: sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==} - path-to-regexp@2.2.1: - resolution: {integrity: sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==} + path-to-regexp@3.3.0: + resolution: {integrity: sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==} path-type@3.0.0: resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} @@ -11552,9 +10880,6 @@ packages: periscopic@3.1.0: resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} - picocolors@1.1.0: - resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} - picocolors@1.1.1: resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} @@ -11599,8 +10924,8 @@ packages: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} - pkg-types@1.2.0: - resolution: {integrity: sha512-+ifYuSSqOQ8CqP4MbZA5hDpb97n3E8SVWdJe+Wms9kj745lmd3b7EZJiqvmLwAlmRfjrI7Hi5z3kdBJ93lFNPA==} + pkg-types@1.2.1: + resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} pkg-up@3.1.0: resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} @@ -11624,12 +10949,42 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} + postcss-attribute-case-insensitive@7.0.1: + resolution: {integrity: sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-calc@9.0.1: resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.2 + postcss-clamp@4.1.0: + resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==} + engines: {node: '>=7.6.0'} + peerDependencies: + postcss: ^8.4.6 + + postcss-color-functional-notation@7.0.6: + resolution: {integrity: sha512-wLXvm8RmLs14Z2nVpB4CWlnvaWPRcOZFltJSlcbYwSJ1EDZKsKDhPKIMecCnuU054KSmlmubkqczmm6qBPCBhA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-color-hex-alpha@10.0.0: + resolution: {integrity: sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-color-rebeccapurple@10.0.0: + resolution: {integrity: sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-colormin@6.1.0: resolution: {integrity: sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==} engines: {node: ^14 || ^16 || >=18.0} @@ -11642,6 +10997,30 @@ packages: peerDependencies: postcss: ^8.4.31 + postcss-custom-media@11.0.5: + resolution: {integrity: sha512-SQHhayVNgDvSAdX9NQ/ygcDQGEY+aSF4b/96z7QUX6mqL5yl/JgG/DywcF6fW9XbnCRE+aVYk+9/nqGuzOPWeQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-custom-properties@14.0.4: + resolution: {integrity: sha512-QnW8FCCK6q+4ierwjnmXF9Y9KF8q0JkbgVfvQEMa93x1GT8FvOiUevWCN2YLaOWyByeDX8S6VFbZEeWoAoXs2A==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-custom-selectors@8.0.4: + resolution: {integrity: sha512-ASOXqNvDCE0dAJ/5qixxPeL1aOVGHGW2JwSy7HyjWNbnWTQCl+fDc968HY1jCmZI0+BaYT5CxsOiUhavpG/7eg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-dir-pseudo-class@9.0.1: + resolution: {integrity: sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-discard-comments@6.0.2: resolution: {integrity: sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==} engines: {node: ^14 || ^16 || >=18.0} @@ -11672,6 +11051,41 @@ packages: peerDependencies: postcss: ^8.4.31 + postcss-double-position-gradients@6.0.0: + resolution: {integrity: sha512-JkIGah3RVbdSEIrcobqj4Gzq0h53GG4uqDPsho88SgY84WnpkTpI0k50MFK/sX7XqVisZ6OqUfFnoUO6m1WWdg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-focus-visible@10.0.1: + resolution: {integrity: sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-focus-within@9.0.1: + resolution: {integrity: sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-font-variant@5.0.0: + resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==} + peerDependencies: + postcss: ^8.1.0 + + postcss-gap-properties@6.0.0: + resolution: {integrity: sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-image-set-function@7.0.0: + resolution: {integrity: sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-import@15.1.0: resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} engines: {node: '>=14.0.0'} @@ -11684,6 +11098,12 @@ packages: peerDependencies: postcss: ^8.4.21 + postcss-lab-function@7.0.6: + resolution: {integrity: sha512-HPwvsoK7C949vBZ+eMyvH2cQeMr3UREoHvbtra76/UhDuiViZH6pir+z71UaJQohd7VDSVUdR6TkWYKExEc9aQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-load-config@4.0.2: resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} engines: {node: '>= 14'} @@ -11703,6 +11123,12 @@ packages: postcss: ^7.0.0 || ^8.0.1 webpack: ^5.0.0 + postcss-logical@8.0.0: + resolution: {integrity: sha512-HpIdsdieClTjXLOyYdUPAX/XQASNIwdKt5hoZW08ZOAiI+tbV0ta1oclkpVkW5ANU+xJvk3KkA0FejkjGLXUkg==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-merge-idents@6.0.3: resolution: {integrity: sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==} engines: {node: ^14 || ^16 || >=18.0} @@ -11751,14 +11177,14 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules-local-by-default@4.0.5: - resolution: {integrity: sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==} + postcss-modules-local-by-default@4.2.0: + resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 - postcss-modules-scope@3.2.0: - resolution: {integrity: sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==} + postcss-modules-scope@3.2.1: + resolution: {integrity: sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 @@ -11775,6 +11201,12 @@ packages: peerDependencies: postcss: ^8.2.14 + postcss-nesting@13.0.1: + resolution: {integrity: sha512-VbqqHkOBOt4Uu3G8Dm8n6lU5+9cJFxiuty9+4rcoyRPO9zZS1JIs6td49VIoix3qYqELHlJIn46Oih9SAKo+yQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-normalize-charset@6.0.2: resolution: {integrity: sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==} engines: {node: ^14 || ^16 || >=18.0} @@ -11829,12 +11261,47 @@ packages: peerDependencies: postcss: ^8.4.31 + postcss-opacity-percentage@3.0.0: + resolution: {integrity: sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-ordered-values@6.0.2: resolution: {integrity: sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.4.31 + postcss-overflow-shorthand@6.0.0: + resolution: {integrity: sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-page-break@3.0.4: + resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==} + peerDependencies: + postcss: ^8 + + postcss-place@10.0.0: + resolution: {integrity: sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-preset-env@10.1.2: + resolution: {integrity: sha512-OqUBZ9ByVfngWhMNuBEMy52Izj07oIFA6K/EOGBlaSv+P12MiE1+S2cqXtS1VuW82demQ/Tzc7typYk3uHunkA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + + postcss-pseudo-class-any-link@10.0.1: + resolution: {integrity: sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-reduce-idents@6.0.3: resolution: {integrity: sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==} engines: {node: ^14 || ^16 || >=18.0} @@ -11853,10 +11320,25 @@ packages: peerDependencies: postcss: ^8.4.31 + postcss-replace-overflow-wrap@4.0.0: + resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==} + peerDependencies: + postcss: ^8.0.3 + + postcss-selector-not@8.0.1: + resolution: {integrity: sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==} + engines: {node: '>=18'} + peerDependencies: + postcss: ^8.4 + postcss-selector-parser@6.1.2: resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} engines: {node: '>=4'} + postcss-selector-parser@7.0.0: + resolution: {integrity: sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==} + engines: {node: '>=4'} + postcss-sort-media-queries@5.2.0: resolution: {integrity: sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==} engines: {node: '>=14.0.0'} @@ -11884,19 +11366,15 @@ packages: peerDependencies: postcss: ^8.4.31 - postcss@8.4.47: - resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} - engines: {node: ^10 || ^12 || >=14} - postcss@8.4.49: resolution: {integrity: sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==} engines: {node: ^10 || ^12 || >=14} - posthog-js@1.161.5: - resolution: {integrity: sha512-KGkb12grSQvGRauH6z+AUB83c4dgWqzmJFDjyMXarWRafaLN80HzjN1jk806x27HvdDXi21jtwiXekioWzEQ9g==} + posthog-js@1.202.2: + resolution: {integrity: sha512-9p7dAWuCfoM0WrasubGwtC8i38HU3iMqK3gd0mhyAoTrEVMVozTQq64Toc2VEv8H69NGNn6ikk5t2LclHT9XFA==} - preact@10.24.0: - resolution: {integrity: sha512-aK8Cf+jkfyuZ0ZZRG9FbYqwmEiGQ4y/PUO4SuTWoyWL244nZZh7bd5h2APd4rSNDYTBNghg1L+5iJN3Skxtbsw==} + preact@10.25.2: + resolution: {integrity: sha512-GEts1EH3oMnqdOIeXhlbBSddZ9nrINd070WBOiPO2ous1orrKGUM4SMDbwyjSWD1iMS2dBvaDjAa5qUhz3TXqw==} prebuild-install@7.1.2: resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} @@ -11930,16 +11408,16 @@ packages: resolution: {integrity: sha512-xkeffkZoqQmRrcNewpOsUCKNOl+CkPqjt3Ld749uz1S7/O7GuPNPv2fZk3v/1U/FE8/B4Zz0llVL80MKON1tOQ==} engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0} - pretty-ms@9.1.0: - resolution: {integrity: sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==} + pretty-ms@9.2.0: + resolution: {integrity: sha512-4yf0QO/sllf/1zbZWYnvWw3NxCQwLXKzIj0G849LSufP15BXKM0rbD2Z3wVnkMfjdn/CB0Dpp444gYAACdsplg==} engines: {node: '>=18'} pretty-time@1.1.0: resolution: {integrity: sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==} engines: {node: '>=4'} - prism-react-renderer@2.4.0: - resolution: {integrity: sha512-327BsVCD/unU4CNLZTWVHyUHKnsqcvj2qbPlQ8MiBE2eq2rgctjigPA1Gp9HLF83kZ20zNN6jgizHJeEsyFYOw==} + prism-react-renderer@2.4.1: + resolution: {integrity: sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig==} peerDependencies: react: '>=16.0.0' @@ -12019,10 +11497,6 @@ packages: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} - proxy-agent@6.4.0: - resolution: {integrity: sha512-u0piLU+nCOHMgGjRbimiXmA9kM/L9EHh3zL81xCdp7m+Y2pHIsnmbdDoEDoAz5geaonNR6q6+yOPQs6n4T6sBQ==} - engines: {node: '>= 14'} - proxy-agent@6.5.0: resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} engines: {node: '>= 14'} @@ -12042,9 +11516,6 @@ packages: pump@3.0.2: resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} - punycode@1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -12061,10 +11532,6 @@ packages: resolution: {integrity: sha512-cHArnywCiAAVXa3t4GGL2vttNxh7GqXtIYGym99egkNJ3oG//wL9LkvO4WE8W1TJe95t1F1ocu9X4xWaGsOKOA==} engines: {node: '>=18'} - puppeteer-core@23.1.1: - resolution: {integrity: sha512-OeTqNiYGF9qZtwZU4Yc88DDqFJs4TJ4rnK81jkillh6MwDeQodyisM9xe5lBmPhwiDy92s5J5DQtQLjCKHFQ3g==} - engines: {node: '>=18'} - puppeteer-core@23.4.1: resolution: {integrity: sha512-uCxGtn8VE9PlKhdFJX/zZySi9K3Ufr3qUZe28jxJoZUqiMJOi+SFh2zhiFDSjWqZIDkc0FtnaCC+rewW3MYXmg==} engines: {node: '>=18'} @@ -12280,8 +11747,8 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.0.1: - resolution: {integrity: sha512-GkMg9uOTpIWWKbSsgwb5fA4EavTR+SG/PMPoAY8hkhHfEEY0/vqljY+XHqtDf2cr2IJtoNRDbrrEpZUiZCkYRw==} + readdirp@4.0.2: + resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} engines: {node: '>= 14.16.0'} reading-time@1.5.0: @@ -12295,6 +11762,18 @@ packages: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} + recma-build-jsx@1.0.0: + resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} + + recma-jsx@1.0.0: + resolution: {integrity: sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==} + + recma-parse@1.0.0: + resolution: {integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==} + + recma-stringify@1.0.0: + resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==} + recursive-readdir@2.2.3: resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} engines: {node: '>=6.0.0'} @@ -12310,6 +11789,10 @@ packages: reflect-metadata@0.2.2: resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} + reflect.getprototypeof@1.0.9: + resolution: {integrity: sha512-r0Ay04Snci87djAsI4U+WNRcSw5S4pOH7qFjd/veA5gC7TbqESR3tcj28ia95L/fYUDw11JKP7uqUKUAfVvV5Q==} + engines: {node: '>= 0.4'} + regenerate-unicode-properties@10.2.0: resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} engines: {node: '>=4'} @@ -12330,20 +11813,20 @@ packages: resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} hasBin: true - regexp.prototype.flags@1.5.2: - resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} + regexp.prototype.flags@1.5.3: + resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} - regexpu-core@5.3.2: - resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==} + regexpu-core@6.2.0: + resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==} engines: {node: '>=4'} registry-auth-token@4.2.2: resolution: {integrity: sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==} engines: {node: '>=6.0.0'} - registry-auth-token@5.0.2: - resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} + registry-auth-token@5.0.3: + resolution: {integrity: sha512-1bpc9IyC+e+CNFRaWyn77tk4xGG4PPUyfakSmA6F6cvUDjrm58dfyJ3II+9yb10EDkHoy1LaPSmHaWLOH3m6HA==} engines: {node: '>=14'} registry-url@5.1.0: @@ -12354,17 +11837,23 @@ packages: resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==} engines: {node: '>=12'} + regjsgen@0.8.0: + resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} + regjsparser@0.10.0: resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} hasBin: true - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} + regjsparser@0.12.0: + resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==} hasBin: true rehype-raw@7.0.0: resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} + rehype-recma@1.0.0: + resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} + relateurl@0.2.7: resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} engines: {node: '>= 0.10'} @@ -12382,14 +11871,14 @@ packages: remark-gfm@4.0.0: resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} - remark-mdx@3.0.1: - resolution: {integrity: sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==} + remark-mdx@3.1.0: + resolution: {integrity: sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==} remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - remark-rehype@11.1.0: - resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} + remark-rehype@11.1.1: + resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} remark-stringify@11.0.0: resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} @@ -12447,8 +11936,8 @@ packages: resolution: {integrity: sha512-+1lzwXehGCXSeryaISr6WujZzowloigEofRB+dj75y9RRa/obVcYgbHJd53tdYw8pvZj8GojXaaENws8Ktw/hQ==} engines: {node: '>=8'} - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + resolve@1.22.9: + resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} hasBin: true responselike@1.0.2: @@ -12511,16 +12000,6 @@ packages: engines: {node: '>=10.0.0'} hasBin: true - rollup@4.21.3: - resolution: {integrity: sha512-7sqRtBNnEbcBtMeRVc6VRsJMmpI+JU1z9VTvW8D4gXIYQFz0aLcsE6rRkyghZkLfEgUZgVvOG7A5CVz/VW5GIA==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - rollup@4.24.0: - resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - rollup@4.28.1: resolution: {integrity: sha512-61fXYl/qNVinKmGSTHAZ6Yy8I3YIJC/r2m9feHo6SwVAVcLT5MPwOUFe7EuURA/4m0NR8lXG4BBXuo/IZEsjMg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -12551,15 +12030,12 @@ packages: rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} - safaridriver@0.1.2: - resolution: {integrity: sha512-4R309+gWflJktzPXBQCobbWEHlzC4aK3a+Ov3tz2Ib2aBxiwd11phkdIBH1l0EO22x24CJMUQkpKFumRriCSRg==} - safaridriver@1.0.0: resolution: {integrity: sha512-J92IFbskyo7OYB3Dt4aTdyhag1GlInrfbPCmMteb7aBK7PwlnGz1HI0+oyNN97j7pV9DqUAVoVgkNRMrfY47mQ==} engines: {node: '>=18.0.0'} - safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} safe-buffer@5.1.2: @@ -12568,8 +12044,8 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} safe-stable-stringify@2.5.0: @@ -12605,15 +12081,15 @@ packages: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} - schema-utils@4.2.0: - resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} - engines: {node: '>= 12.13.0'} + schema-utils@4.3.0: + resolution: {integrity: sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==} + engines: {node: '>= 10.13.0'} scule@1.3.0: resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==} - search-insights@2.17.2: - resolution: {integrity: sha512-zFNpOpUO+tY2D85KrxJ+aqwnIfdEGi06UH2+xEb+Bp9Mwznmauqc9djbnBibJO5mpfUPPa8st6Sx65+vbeO45g==} + search-insights@2.17.3: + resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==} section-matter@1.0.0: resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} @@ -12672,8 +12148,8 @@ packages: serialize-javascript@6.0.2: resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - serve-handler@6.1.5: - resolution: {integrity: sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==} + serve-handler@6.1.6: + resolution: {integrity: sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==} serve-index@1.9.1: resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==} @@ -12722,16 +12198,29 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + shell-quote@1.8.2: + resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==} + engines: {node: '>= 0.4'} shelljs@0.8.5: resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} engines: {node: '>=4'} hasBin: true - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} siginfo@2.0.0: @@ -12802,10 +12291,6 @@ packages: resolution: {integrity: sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==} engines: {node: '>= 10'} - socks-proxy-agent@8.0.4: - resolution: {integrity: sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==} - engines: {node: '>= 14'} - socks-proxy-agent@8.0.5: resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==} engines: {node: '>= 14'} @@ -12848,9 +12333,6 @@ packages: space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - spacetrim@0.11.39: - resolution: {integrity: sha512-S/baW29azJ7py5ausQRE2S6uEDQnlxgMHOEEq4V770ooBDD1/9kZnxRcco/tjZYuDuqYXblCk/r3N13ZmvHZ2g==} - spacetrim@0.11.59: resolution: {integrity: sha512-lLYsktklSRKprreOm7NXReW8YiX2VBjbgmXYEziOoGf/qsJqAEACaDvoTtUOycwjpaSh+bT8eu0KrJn7UNxiCg==} @@ -12940,8 +12422,8 @@ packages: std-env@3.8.0: resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} - stop-iteration-iterator@1.0.0: - resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} stream-browserify@3.0.0: @@ -12958,8 +12440,8 @@ packages: resolution: {integrity: sha512-zDgl+muIlWzXNsXeyUfOk9dChMjlpkq0DRsxujtYPgyJ676yQ8jEm6zzaaWHFDg5BNcLuif0eD2MTyJdZqXpdg==} engines: {node: '>=0.10'} - streamx@2.20.1: - resolution: {integrity: sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==} + streamx@2.21.1: + resolution: {integrity: sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==} strict-event-emitter@0.1.0: resolution: {integrity: sha512-8hSYfU+WKLdNcHVXJ0VxRXiPESalzRe7w1l8dg9+/22Ry+iZQUoQuoJ27R30GMD1TiyYINWsIEGY05WrskhSKw==} @@ -12991,12 +12473,13 @@ packages: resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} engines: {node: '>= 0.4'} - string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} @@ -13070,8 +12553,8 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - strip-literal@2.1.0: - resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} + strip-literal@2.1.1: + resolution: {integrity: sha512-631UJ6O00eNGfMiWG78ck80dfBab8X6IVFB51jZK5Icd7XAs60Z5y7QdSd/wGIklnWvRbUNloVzhOKKmutxQ6Q==} strip-outer@1.0.1: resolution: {integrity: sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==} @@ -13108,10 +12591,6 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} @@ -13152,8 +12631,8 @@ packages: syntax-error@1.4.0: resolution: {integrity: sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==} - tailwindcss@3.4.11: - resolution: {integrity: sha512-qhEuBcLemjSJk5ajccN9xJFtM/h0AVCPaA6C92jNP+M2J8kX+eMJHI7R2HFKUvvAsMpcfLILMCFYSeDwpMmlUg==} + tailwindcss@3.4.17: + resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} engines: {node: '>=14.0.0'} hasBin: true @@ -13214,8 +12693,8 @@ packages: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} - terser-webpack-plugin@5.3.10: - resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} + terser-webpack-plugin@5.3.11: + resolution: {integrity: sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -13230,8 +12709,8 @@ packages: uglify-js: optional: true - terser@5.32.0: - resolution: {integrity: sha512-v3Gtw3IzpBJ0ugkxEX8U0W6+TnPKRRCWGh1jC/iM/e3Ki5+qvO1L1EAZ56bZasc64aXHwRHNIQEzm6//i5cemQ==} + terser@5.37.0: + resolution: {integrity: sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==} engines: {node: '>=10'} hasBin: true @@ -13243,12 +12722,12 @@ packages: resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==} engines: {node: '>=18'} - testingbot-tunnel-launcher@1.1.12: - resolution: {integrity: sha512-+LaBBI+OYSrv41jN8tzZj9A7OaV3GitOpmjDgnNEJF2imfNLcsyEJP7fpUnxzdmrMaydoyu2L8CTLGuGNSK8wg==} + testingbot-tunnel-launcher@1.1.14: + resolution: {integrity: sha512-3QlE0hgrRfrmJ7bBig9Owhx5/mjfgus1ImNHRsZWgHYpHi51pZF1u3geQ9sAp6znuiJXqzb8YM31lZcFQwcjpg==} engines: {node: '>=4.4'} - text-decoder@1.2.0: - resolution: {integrity: sha512-n1yg1mOj9DNpk3NeZOx7T6jchTbyJS3i3cucbNN6FcdPriMZx7NsgrGpWWdWZZGxD7ES1XB+3uoqHMgOKaN+fg==} + text-decoder@1.2.3: + resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} text-extensions@1.9.0: resolution: {integrity: sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==} @@ -13311,11 +12790,11 @@ packages: resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} engines: {node: '>=14.0.0'} - tldts-core@6.1.47: - resolution: {integrity: sha512-6SWyFMnlst1fEt7GQVAAu16EGgFK0cLouH/2Mk6Ftlwhv3Ol40L0dlpGMcnnNiiOMyD2EV/aF3S+U2nKvvLvrA==} + tldts-core@6.1.68: + resolution: {integrity: sha512-85TdlS/DLW/gVdf2oyyzqp3ocS30WxjaL4la85EArl9cHUR/nizifKAJPziWewSZjDZS71U517/i6ciUeqtB5Q==} - tldts@6.1.47: - resolution: {integrity: sha512-R/K2tZ5MiY+mVrnSkNJkwqYT2vUv1lcT6wJvd2emGaMJ7PHUGRY4e3tUsdFCXgqxi2QgbHjL3yJgXCo40v9Hxw==} + tldts@6.1.68: + resolution: {integrity: sha512-JKF17jROiYkjJPT73hUTEiTp2OBCf+kAlB+1novk8i6Q6dWjHsgEjw9VLiipV4KTJavazXhY1QUXyQFSem2T7w==} hasBin: true tmp@0.0.33: @@ -13329,10 +12808,6 @@ packages: to-buffer@1.1.1: resolution: {integrity: sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg==} - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - to-readable-stream@1.0.0: resolution: {integrity: sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==} engines: {node: '>=6'} @@ -13396,8 +12871,8 @@ packages: resolution: {integrity: sha512-kr8SKKw94OI+xTGOkfsvwZQ8mWoikZDd2n8XZHjJVZUARZT+4/VV6cacRS6CLsH9bNm+HFIPU1Zx4CnNnb4qlQ==} engines: {node: '>=6'} - ts-api-utils@1.3.0: - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' @@ -13405,9 +12880,6 @@ packages: ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - tsconfig-paths@4.2.0: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} @@ -13417,17 +12889,9 @@ packages: engines: {node: '>=14.16'} hasBin: true - tslib@2.7.0: - resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} - tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsx@4.19.1: - resolution: {integrity: sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==} - engines: {node: '>=18.0.0'} - hasBin: true - tsx@4.19.2: resolution: {integrity: sha512-pOUl6Vo2LUq/bSa8S5q7b91cgNSjctn9ugq/+Mvow99qW6x/UZYwzxy/3NmqoT66eHYfCVvFvACC58UBPFf28g==} engines: {node: '>=18.0.0'} @@ -13460,10 +12924,6 @@ packages: resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} engines: {node: '>=10'} - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} @@ -13484,10 +12944,6 @@ packages: resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} - type-fest@2.13.0: - resolution: {integrity: sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw==} - engines: {node: '>=12.20'} - type-fest@2.19.0: resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} engines: {node: '>=12.20'} @@ -13500,28 +12956,28 @@ packages: resolution: {integrity: sha512-OduNjVJsFbifKb57UqZ2EMP1i4u64Xwow3NYXUtBbD4vIwJdQd4+xl8YDou1dlm4DVrtwT/7Ky8z8WyCULVfxw==} engines: {node: '>=16'} - type-fest@4.26.1: - resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==} + type-fest@4.30.2: + resolution: {integrity: sha512-UJShLPYi1aWqCdq9HycOL/gwsuqda1OISdBO3t8RlXQC4QvtuIz4b5FCfe2dQIWEpmlRExKmcTBfP1r9bhY7ig==} engines: {node: '>=16'} type-is@1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} - typed-array-buffer@1.0.2: - resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} - typed-array-byte-length@1.0.1: - resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.2: - resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} + typed-array-byte-offset@1.0.3: + resolution: {integrity: sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==} engines: {node: '>= 0.4'} - typed-array-length@1.0.6: - resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} typed-query-selector@2.12.0: @@ -13533,13 +12989,15 @@ packages: typedarray@0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - typescript@5.6.2: - resolution: {integrity: sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==} - engines: {node: '>=14.17'} - hasBin: true + typescript-eslint@8.18.1: + resolution: {integrity: sha512-Mlaw6yxuaDEPQvb/2Qwu3/TfgeBHy9iTJ3mTwe7OvpPmF6KPQjVOfGyEJpPv6Ez2C34OODChhXrzYw/9phI0MQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' - typescript@5.6.3: - resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} + typescript@5.7.2: + resolution: {integrity: sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==} engines: {node: '>=14.17'} hasBin: true @@ -13554,8 +13012,9 @@ packages: engines: {node: '>=0.8.0'} hasBin: true - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} unbzip2-stream@1.4.3: resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} @@ -13563,8 +13022,8 @@ packages: uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} - unctx@2.3.1: - resolution: {integrity: sha512-PhKke8ZYauiqh3FEMVNm7ljvzQiph0Mt3GBRve03IJm7ukfaON2OBK795tLwhbyfzknuRRkW0+Ze+CQUmzOZ+A==} + unctx@2.4.1: + resolution: {integrity: sha512-AbaYw0Nm4mK4qjhns67C+kgxR2YWiwlDBPzxrN8h8C6VtAdCgditAY5Dezu3IJy4XVqAnbrXt9oQJvsn3fyozg==} undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} @@ -13572,14 +13031,6 @@ packages: undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} - undici@6.19.8: - resolution: {integrity: sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==} - engines: {node: '>=18.17'} - - undici@6.20.1: - resolution: {integrity: sha512-AjQF1QsmqfJys+LXfGTNum+qw4S88CojRInG/6t31W/1fk6G59s92bnAvGz5Cmur+kQv2SURXEvvudLmbrE8QA==} - engines: {node: '>=18.17'} - undici@6.21.0: resolution: {integrity: sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==} engines: {node: '>=18.17'} @@ -13608,11 +13059,15 @@ packages: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} engines: {node: '>=18'} + unicorn-magic@0.3.0: + resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} + engines: {node: '>=18'} + unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} - unimport@3.12.0: - resolution: {integrity: sha512-5y8dSvNvyevsnw4TBQkIQR1Rjdbb+XjVSwQwxltpnVZrStBvvPkMPcZrh1kg5kY77kpx6+D4Ztd3W6FOBH/y2Q==} + unimport@3.14.5: + resolution: {integrity: sha512-tn890SwFFZxqaJSKQPPd+yygfKSATbM8BZWW1aCR2TJBTs1SDrmLamBueaFtYsGjHtQaRgqEbQflOjN2iW12gA==} unique-filename@1.1.1: resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} @@ -13668,21 +13123,20 @@ packages: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - unplugin@1.14.1: - resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==} + unplugin@1.16.0: + resolution: {integrity: sha512-5liCNPuJW8dqh3+DM6uNM2EI3MLLpCKp/KY+9pB5M2S2SR2qvvDHhKgBOaTWEbZTAws3CXfB0rKTIolWKL05VQ==} engines: {node: '>=14.0.0'} - peerDependencies: - webpack-sources: ^3 - peerDependenciesMeta: - webpack-sources: - optional: true + + unplugin@2.1.0: + resolution: {integrity: sha512-us4j03/499KhbGP8BU7Hrzrgseo+KdfJYWcbcajCOqsAyb8Gk0Yn2kiUIcZISYCb1JFaZfIuG3b42HmguVOKCQ==} + engines: {node: '>=18.12.0'} untildify@4.0.0: resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} engines: {node: '>=8'} - untyped@1.4.2: - resolution: {integrity: sha512-nC5q0DnPEPVURPhfPQLahhSTnemVtPzdx7ofiRxXpOB2SYnb3MfdU3DVGyJdS8Lx+tBWeAePO8BfU/3EgksM7Q==} + untyped@1.5.2: + resolution: {integrity: sha512-eL/8PlhLcMmlMDtNPKhyyz9kEBDS3Uk4yMu/ewlkT2WFbtzScjHWPJLdQLmaGPUKjXzwe9MumOtOgc4Fro96Kg==} hasBin: true unzipper@0.12.3: @@ -13696,12 +13150,6 @@ packages: resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==} engines: {node: '>=4'} - update-browserslist-db@1.1.0: - resolution: {integrity: sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - update-browserslist-db@1.1.1: resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true @@ -13742,10 +13190,6 @@ packages: urlpattern-polyfill@10.0.0: resolution: {integrity: sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==} - userhome@1.0.0: - resolution: {integrity: sha512-ayFKY3H+Pwfy4W98yPdtH1VqH4psDeyW8lYYFzfecR9d6hqLpqhecktvYR3SEEXt7vG0S1JEpciI3g94pMErig==} - engines: {node: '>= 0.8.0'} - userhome@1.0.1: resolution: {integrity: sha512-5cnLm4gseXjAclKowC4IjByaGsjtAoV6PrOQOljplNB54ReUYJP8HdAFq2muHinSDAh09PPX/uXDPfdxRHvuSA==} engines: {node: '>= 0.8.0'} @@ -13791,6 +13235,10 @@ packages: resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + validate-npm-package-name@6.0.0: + resolution: {integrity: sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==} + engines: {node: ^18.17.0 || >=20.5.0} + value-equal@1.0.1: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==} @@ -13822,37 +13270,6 @@ packages: peerDependencies: vite: '>=2.8' - vite@5.4.10: - resolution: {integrity: sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - vite@5.4.11: resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==} engines: {node: ^18.0.0 || >=20.0.0} @@ -13884,37 +13301,6 @@ packages: terser: optional: true - vite@5.4.5: - resolution: {integrity: sha512-pXqR0qtb2bTwLkev4SE3r4abCNioP3GkjvIDLlzziPpXtHgiJIjuKl+1GN6ESOT3wMjG3JTeARopj2SwYaHTOA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - vitefu@0.2.5: resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} peerDependencies: @@ -13951,11 +13337,11 @@ packages: vscode-uri@3.0.8: resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} - vue-component-type-helpers@2.1.6: - resolution: {integrity: sha512-ng11B8B/ZADUMMOsRbqv0arc442q7lifSubD0v8oDXIFoMg/mXwAPUunrroIDkY+mcD0dHKccdaznSVp8EoX3w==} + vue-component-type-helpers@2.1.10: + resolution: {integrity: sha512-lfgdSLQKrUmADiSV6PbBvYgQ33KF3Ztv6gP85MfGaGaSGMTXORVaHT1EHfsqCgzRNBstPKYDmvAV9Do5CmJ07A==} - vue-tsc@2.1.6: - resolution: {integrity: sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==} + vue-tsc@2.1.10: + resolution: {integrity: sha512-RBNSfaaRHcN5uqVqJSZh++Gy/YUzryuv9u1aFWhsammDJXNtUiJMNoJ747lZcQ68wUQFx6E73y4FY3D8E7FGMA==} hasBin: true peerDependencies: typescript: '>=5.0.0' @@ -13968,14 +13354,6 @@ packages: typescript: optional: true - vue@3.5.6: - resolution: {integrity: sha512-zv+20E2VIYbcJOzJPUWp03NOGFhMmpCKOfSxVTmCYyYFFko48H9tmuQFzYj7tu4qX1AeXlp9DmhIP89/sSxxhw==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - w3c-xmlserializer@5.0.0: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} engines: {node: '>=18'} @@ -14009,26 +13387,13 @@ packages: resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} engines: {node: '>= 14'} - web-vitals@4.2.3: - resolution: {integrity: sha512-/CFAm1mNxSmOj6i0Co+iGFJ58OS4NRGVP+AWS/l509uIK5a1bSoIVaHz/ZumpHTfHSZBpgrJ+wjfpAOrTHok5Q==} - - webdriver@9.0.8: - resolution: {integrity: sha512-UnV0ANriSTUgypGk0pz8lApeQuHt+72WEDQG5hFwkkSvggtKLyWdT7+PQkNoXvDajTmiLIqUOq8XPI/Pm71rtw==} - engines: {node: '>=18.20.0'} + web-vitals@4.2.4: + resolution: {integrity: sha512-r4DIlprAGwJ7YM11VZp4R884m0Vmgr6EAKe3P+kO0PPj3Unqyvv59rczf6UiGcb9Z8QxZVcqKNwv/g0WNdWwsw==} webdriver@9.4.3: resolution: {integrity: sha512-aZrJq+FwJFrrSX18PHqFK3iEw+Pdu/cvJwgIiuur4/ffP47jrirwCqabCVaIV3eut+mJBc1nY7IV3Jd3i4MekQ==} engines: {node: '>=18.20.0'} - webdriverio@9.0.9: - resolution: {integrity: sha512-IwvKzhcJ9NjOL55xwj27uTTKkfxsg77dmAfqoKFSP5dQ70JzU+NgxiALEjjWQDybtt1yGIkHk7wjjxjboMU1uw==} - engines: {node: '>=18.20.0'} - peerDependencies: - puppeteer-core: ^22.3.0 - peerDependenciesMeta: - puppeteer-core: - optional: true - webdriverio@9.4.3: resolution: {integrity: sha512-MdnMKVZCiC3oqC38pNAkvP5FPomMHK+Hk4bD0JMAKRt7WamQBmaxdObwZAcJMzpn7izYWoo0avZoGYbE/fHRXA==} engines: {node: '>=18.20.0'} @@ -14076,6 +13441,10 @@ packages: resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==} engines: {node: '>=10.0.0'} + webpack-merge@6.0.1: + resolution: {integrity: sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==} + engines: {node: '>=18.0.0'} + webpack-sources@3.2.3: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} @@ -14083,8 +13452,8 @@ packages: webpack-virtual-modules@0.6.2: resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} - webpack@5.94.0: - resolution: {integrity: sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==} + webpack@5.97.1: + resolution: {integrity: sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -14093,9 +13462,9 @@ packages: webpack-cli: optional: true - webpackbar@5.0.2: - resolution: {integrity: sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==} - engines: {node: '>=12'} + webpackbar@6.0.1: + resolution: {integrity: sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q==} + engines: {node: '>=14.21.3'} peerDependencies: webpack: 3 || 4 || 5 @@ -14115,8 +13484,8 @@ packages: resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} engines: {node: '>=18'} - whatwg-url@14.0.0: - resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} + whatwg-url@14.1.0: + resolution: {integrity: sha512-jlf/foYIKywAt3x/XWKZ/3rz8OSJPiWktjmk891alJUEjiVxKX9LEO92qH3hv4aJ0mN3MWPvGMCy8jQi95xK4w==} engines: {node: '>=18'} whatwg-url@5.0.0: @@ -14125,15 +13494,20 @@ packages: whatwg-url@7.1.0: resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} - which-typed-array@1.1.15: - resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} + which-typed-array@1.1.18: + resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} engines: {node: '>= 0.4'} which@1.3.1: @@ -14179,8 +13553,8 @@ packages: wildcard@2.0.1: resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==} - winston-transport@4.7.1: - resolution: {integrity: sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==} + winston-transport@4.9.0: + resolution: {integrity: sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==} engines: {node: '>= 12.0.0'} word-wrap@1.2.5: @@ -14190,54 +13564,54 @@ packages: wordwrap@1.0.0: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - workbox-background-sync@7.1.0: - resolution: {integrity: sha512-rMbgrzueVWDFcEq1610YyDW71z0oAXLfdRHRQcKw4SGihkfOK0JUEvqWHFwA6rJ+6TClnMIn7KQI5PNN1XQXwQ==} + workbox-background-sync@7.3.0: + resolution: {integrity: sha512-PCSk3eK7Mxeuyatb22pcSx9dlgWNv3+M8PqPaYDokks8Y5/FX4soaOqj3yhAZr5k6Q5JWTOMYgaJBpbw11G9Eg==} - workbox-broadcast-update@7.1.0: - resolution: {integrity: sha512-O36hIfhjej/c5ar95pO67k1GQw0/bw5tKP7CERNgK+JdxBANQhDmIuOXZTNvwb2IHBx9hj2kxvcDyRIh5nzOgQ==} + workbox-broadcast-update@7.3.0: + resolution: {integrity: sha512-T9/F5VEdJVhwmrIAE+E/kq5at2OY6+OXXgOWQevnubal6sO92Gjo24v6dCVwQiclAF5NS3hlmsifRrpQzZCdUA==} - workbox-build@7.1.1: - resolution: {integrity: sha512-WdkVdC70VMpf5NBCtNbiwdSZeKVuhTEd5PV3mAwpTQCGAB5XbOny1P9egEgNdetv4srAMmMKjvBk4RD58LpooA==} + workbox-build@7.3.0: + resolution: {integrity: sha512-JGL6vZTPlxnlqZRhR/K/msqg3wKP+m0wfEUVosK7gsYzSgeIxvZLi1ViJJzVL7CEeI8r7rGFV973RiEqkP3lWQ==} engines: {node: '>=16.0.0'} - workbox-cacheable-response@7.1.0: - resolution: {integrity: sha512-iwsLBll8Hvua3xCuBB9h92+/e0wdsmSVgR2ZlvcfjepZWwhd3osumQB3x9o7flj+FehtWM2VHbZn8UJeBXXo6Q==} + workbox-cacheable-response@7.3.0: + resolution: {integrity: sha512-eAFERIg6J2LuyELhLlmeRcJFa5e16Mj8kL2yCDbhWE+HUun9skRQrGIFVUagqWj4DMaaPSMWfAolM7XZZxNmxA==} - workbox-core@7.1.0: - resolution: {integrity: sha512-5KB4KOY8rtL31nEF7BfvU7FMzKT4B5TkbYa2tzkS+Peqj0gayMT9SytSFtNzlrvMaWgv6y/yvP9C0IbpFjV30Q==} + workbox-core@7.3.0: + resolution: {integrity: sha512-Z+mYrErfh4t3zi7NVTvOuACB0A/jA3bgxUN3PwtAVHvfEsZxV9Iju580VEETug3zYJRc0Dmii/aixI/Uxj8fmw==} - workbox-expiration@7.1.0: - resolution: {integrity: sha512-m5DcMY+A63rJlPTbbBNtpJ20i3enkyOtSgYfv/l8h+D6YbbNiA0zKEkCUaMsdDlxggla1oOfRkyqTvl5Ni5KQQ==} + workbox-expiration@7.3.0: + resolution: {integrity: sha512-lpnSSLp2BM+K6bgFCWc5bS1LR5pAwDWbcKt1iL87/eTSJRdLdAwGQznZE+1czLgn/X05YChsrEegTNxjM067vQ==} - workbox-google-analytics@7.1.0: - resolution: {integrity: sha512-FvE53kBQHfVTcZyczeBVRexhh7JTkyQ8HAvbVY6mXd2n2A7Oyz/9fIwnY406ZcDhvE4NFfKGjW56N4gBiqkrew==} + workbox-google-analytics@7.3.0: + resolution: {integrity: sha512-ii/tSfFdhjLHZ2BrYgFNTrb/yk04pw2hasgbM70jpZfLk0vdJAXgaiMAWsoE+wfJDNWoZmBYY0hMVI0v5wWDbg==} - workbox-navigation-preload@7.1.0: - resolution: {integrity: sha512-4wyAbo0vNI/X0uWNJhCMKxnPanNyhybsReMGN9QUpaePLTiDpKxPqFxl4oUmBNddPwIXug01eTSLVIFXimRG/A==} + workbox-navigation-preload@7.3.0: + resolution: {integrity: sha512-fTJzogmFaTv4bShZ6aA7Bfj4Cewaq5rp30qcxl2iYM45YD79rKIhvzNHiFj1P+u5ZZldroqhASXwwoyusnr2cg==} - workbox-precaching@7.1.0: - resolution: {integrity: sha512-LyxzQts+UEpgtmfnolo0hHdNjoB7EoRWcF7EDslt+lQGd0lW4iTvvSe3v5JiIckQSB5KTW5xiCqjFviRKPj1zA==} + workbox-precaching@7.3.0: + resolution: {integrity: sha512-ckp/3t0msgXclVAYaNndAGeAoWQUv7Rwc4fdhWL69CCAb2UHo3Cef0KIUctqfQj1p8h6aGyz3w8Cy3Ihq9OmIw==} - workbox-range-requests@7.1.0: - resolution: {integrity: sha512-m7+O4EHolNs5yb/79CrnwPR/g/PRzMFYEdo01LqwixVnc/sbzNSvKz0d04OE3aMRel1CwAAZQheRsqGDwATgPQ==} + workbox-range-requests@7.3.0: + resolution: {integrity: sha512-EyFmM1KpDzzAouNF3+EWa15yDEenwxoeXu9bgxOEYnFfCxns7eAxA9WSSaVd8kujFFt3eIbShNqa4hLQNFvmVQ==} - workbox-recipes@7.1.0: - resolution: {integrity: sha512-NRrk4ycFN9BHXJB6WrKiRX3W3w75YNrNrzSX9cEZgFB5ubeGoO8s/SDmOYVrFYp9HMw6sh1Pm3eAY/1gVS8YLg==} + workbox-recipes@7.3.0: + resolution: {integrity: sha512-BJro/MpuW35I/zjZQBcoxsctgeB+kyb2JAP5EB3EYzePg8wDGoQuUdyYQS+CheTb+GhqJeWmVs3QxLI8EBP1sg==} - workbox-routing@7.1.0: - resolution: {integrity: sha512-oOYk+kLriUY2QyHkIilxUlVcFqwduLJB7oRZIENbqPGeBP/3TWHYNNdmGNhz1dvKuw7aqvJ7CQxn27/jprlTdg==} + workbox-routing@7.3.0: + resolution: {integrity: sha512-ZUlysUVn5ZUzMOmQN3bqu+gK98vNfgX/gSTZ127izJg/pMMy4LryAthnYtjuqcjkN4HEAx1mdgxNiKJMZQM76A==} - workbox-strategies@7.1.0: - resolution: {integrity: sha512-/UracPiGhUNehGjRm/tLUQ+9PtWmCbRufWtV0tNrALuf+HZ4F7cmObSEK+E4/Bx1p8Syx2tM+pkIrvtyetdlew==} + workbox-strategies@7.3.0: + resolution: {integrity: sha512-tmZydug+qzDFATwX7QiEL5Hdf7FrkhjaF9db1CbB39sDmEZJg3l9ayDvPxy8Y18C3Y66Nrr9kkN1f/RlkDgllg==} - workbox-streams@7.1.0: - resolution: {integrity: sha512-WyHAVxRXBMfysM8ORwiZnI98wvGWTVAq/lOyBjf00pXFvG0mNaVz4Ji+u+fKa/mf1i2SnTfikoYKto4ihHeS6w==} + workbox-streams@7.3.0: + resolution: {integrity: sha512-SZnXucyg8x2Y61VGtDjKPO5EgPUG5NDn/v86WYHX+9ZqvAsGOytP0Jxp1bl663YUuMoXSAtsGLL+byHzEuMRpw==} - workbox-sw@7.1.0: - resolution: {integrity: sha512-Hml/9+/njUXBglv3dtZ9WBKHI235AQJyLBV1G7EFmh4/mUdSQuXui80RtjDeVRrXnm/6QWgRUEHG3/YBVbxtsA==} + workbox-sw@7.3.0: + resolution: {integrity: sha512-aCUyoAZU9IZtH05mn0ACUpyHzPs0lMeJimAYkQkBsOWiqaJLgusfDCR+yllkPkFRxWpZKF8vSvgHYeG7LwhlmA==} - workbox-window@7.1.0: - resolution: {integrity: sha512-ZHeROyqR+AS5UPzholQRDttLFqGMwP0Np8MKWAdyxsDETxq3qOAyXvqessc3GniohG6e0mAqSQyKOHmT8zPF7g==} + workbox-window@7.3.0: + resolution: {integrity: sha512-qW8PDy16OV1UBaUNGlTVcepzrlzyzNW/ZJvFQQs2j2TzGsg6IKjcpZC1RSquqQnTOafl5pCj5bGfAHlCjOOjdA==} workerpool@6.5.1: resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} @@ -14348,8 +13722,8 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} - yaml@2.5.1: - resolution: {integrity: sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==} + yaml@2.6.1: + resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} engines: {node: '>= 14'} hasBin: true @@ -14376,8 +13750,8 @@ packages: yauzl@2.10.0: resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} - yauzl@3.1.3: - resolution: {integrity: sha512-JCCdmlJJWv7L0q/KylOekyRaUrdEoUxWkWVcgorosTROCFWiS9p2NNPE9Yb91ak7b1N5SxAZEliWpspbZccivw==} + yauzl@3.2.0: + resolution: {integrity: sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==} engines: {node: '>=12'} yazl@2.5.1: @@ -14414,35 +13788,35 @@ packages: snapshots: - '@adobe/css-tools@4.4.0': {} + '@adobe/css-tools@4.4.1': {} - '@algolia/autocomplete-core@1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)(search-insights@2.17.2)': + '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)(search-insights@2.17.2) - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0) + '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)(search-insights@2.17.3) + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights - '@algolia/autocomplete-plugin-algolia-insights@1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)(search-insights@2.17.2)': + '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0) - search-insights: 2.17.2 + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0) + search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - '@algolia/autocomplete-preset-algolia@1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)': + '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)': dependencies: - '@algolia/autocomplete-shared': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0) - '@algolia/client-search': 4.24.0 - algoliasearch: 4.24.0 + '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0) + '@algolia/client-search': 5.18.0 + algoliasearch: 5.18.0 - '@algolia/autocomplete-shared@1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)': + '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)': dependencies: - '@algolia/client-search': 4.24.0 - algoliasearch: 4.24.0 + '@algolia/client-search': 5.18.0 + algoliasearch: 5.18.0 '@algolia/cache-browser-local-storage@4.24.0': dependencies: @@ -14454,6 +13828,13 @@ snapshots: dependencies: '@algolia/cache-common': 4.24.0 + '@algolia/client-abtesting@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/client-account@4.24.0': dependencies: '@algolia/client-common': 4.24.0 @@ -14467,31 +13848,82 @@ snapshots: '@algolia/requester-common': 4.24.0 '@algolia/transporter': 4.24.0 + '@algolia/client-analytics@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/client-common@4.24.0': dependencies: '@algolia/requester-common': 4.24.0 '@algolia/transporter': 4.24.0 + '@algolia/client-common@5.18.0': {} + + '@algolia/client-insights@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/client-personalization@4.24.0': dependencies: '@algolia/client-common': 4.24.0 '@algolia/requester-common': 4.24.0 '@algolia/transporter': 4.24.0 + '@algolia/client-personalization@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + + '@algolia/client-query-suggestions@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/client-search@4.24.0': dependencies: '@algolia/client-common': 4.24.0 '@algolia/requester-common': 4.24.0 '@algolia/transporter': 4.24.0 + '@algolia/client-search@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/events@4.0.1': {} + '@algolia/ingestion@1.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/logger-common@4.24.0': {} '@algolia/logger-console@4.24.0': dependencies: '@algolia/logger-common': 4.24.0 + '@algolia/monitoring@1.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/recommend@4.24.0': dependencies: '@algolia/cache-browser-local-storage': 4.24.0 @@ -14506,16 +13938,35 @@ snapshots: '@algolia/requester-node-http': 4.24.0 '@algolia/transporter': 4.24.0 + '@algolia/recommend@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + '@algolia/requester-browser-xhr@4.24.0': dependencies: '@algolia/requester-common': 4.24.0 + '@algolia/requester-browser-xhr@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-common@4.24.0': {} + '@algolia/requester-fetch@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/requester-node-http@4.24.0': dependencies: '@algolia/requester-common': 4.24.0 + '@algolia/requester-node-http@5.18.0': + dependencies: + '@algolia/client-common': 5.18.0 + '@algolia/transporter@4.24.0': dependencies: '@algolia/cache-common': 4.24.0 @@ -14526,7 +13977,7 @@ snapshots: '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)': @@ -14541,965 +13992,615 @@ snapshots: '@aws-crypto/crc32@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.654.0 - tslib: 2.7.0 + '@aws-sdk/types': 3.714.0 + tslib: 2.8.1 '@aws-crypto/crc32c@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.654.0 - tslib: 2.7.0 + '@aws-sdk/types': 3.714.0 + tslib: 2.8.1 '@aws-crypto/sha1-browser@5.2.0': dependencies: '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-locate-window': 3.568.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-locate-window': 3.693.0 '@smithy/util-utf8': 2.3.0 - tslib: 2.7.0 + tslib: 2.8.1 '@aws-crypto/sha256-browser@5.2.0': dependencies: '@aws-crypto/sha256-js': 5.2.0 '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-locate-window': 3.568.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-locate-window': 3.693.0 '@smithy/util-utf8': 2.3.0 - tslib: 2.7.0 + tslib: 2.8.1 '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.654.0 - tslib: 2.7.0 + '@aws-sdk/types': 3.714.0 + tslib: 2.8.1 '@aws-crypto/supports-web-crypto@5.2.0': dependencies: - tslib: 2.7.0 + tslib: 2.8.1 '@aws-crypto/util@5.2.0': dependencies: - '@aws-sdk/types': 3.654.0 + '@aws-sdk/types': 3.714.0 '@smithy/util-utf8': 2.3.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@aws-sdk/client-cloudfront@3.658.1': + '@aws-sdk/client-cloudfront@3.714.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.658.1(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.658.1 - '@aws-sdk/credential-provider-node': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.654.0 - '@aws-sdk/middleware-logger': 3.654.0 - '@aws-sdk/middleware-recursion-detection': 3.654.0 - '@aws-sdk/middleware-user-agent': 3.654.0 - '@aws-sdk/region-config-resolver': 3.654.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@aws-sdk/util-user-agent-browser': 3.654.0 - '@aws-sdk/util-user-agent-node': 3.654.0 - '@aws-sdk/xml-builder': 3.654.0 - '@smithy/config-resolver': 3.0.8 - '@smithy/core': 2.4.6 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/hash-node': 3.0.6 - '@smithy/invalid-dependency': 3.0.6 - '@smithy/middleware-content-length': 3.0.8 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/middleware-stack': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/node-http-handler': 3.2.3 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 + '@aws-sdk/client-sso-oidc': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-node': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@aws-sdk/xml-builder': 3.709.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-node': 3.0.11 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.21 - '@smithy/util-defaults-mode-node': 3.0.21 - '@smithy/util-endpoints': 2.1.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 - '@smithy/util-stream': 3.1.8 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 + '@smithy/util-stream': 3.3.2 '@smithy/util-utf8': 3.0.0 - '@smithy/util-waiter': 3.1.5 - tslib: 2.7.0 + '@smithy/util-waiter': 3.2.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-device-farm@3.693.0': + '@aws-sdk/client-device-farm@3.714.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.693.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/client-sts': 3.693.0 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/credential-provider-node': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.693.0 - '@aws-sdk/middleware-logger': 3.693.0 - '@aws-sdk/middleware-recursion-detection': 3.693.0 - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/region-config-resolver': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@aws-sdk/util-user-agent-browser': 3.693.0 - '@aws-sdk/util-user-agent-node': 3.693.0 - '@smithy/config-resolver': 3.0.12 - '@smithy/core': 2.5.3 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/hash-node': 3.0.10 - '@smithy/invalid-dependency': 3.0.10 - '@smithy/middleware-content-length': 3.0.12 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-retry': 3.0.27 - '@smithy/middleware-serde': 3.0.10 - '@smithy/middleware-stack': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/node-http-handler': 3.3.1 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 + '@aws-sdk/client-sso-oidc': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-node': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-node': 3.0.11 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.27 - '@smithy/util-defaults-mode-node': 3.0.27 - '@smithy/util-endpoints': 2.1.6 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-s3@3.658.1': + '@aws-sdk/client-s3@3.714.0': dependencies: '@aws-crypto/sha1-browser': 5.2.0 '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.658.1(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.658.1 - '@aws-sdk/credential-provider-node': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-bucket-endpoint': 3.654.0 - '@aws-sdk/middleware-expect-continue': 3.654.0 - '@aws-sdk/middleware-flexible-checksums': 3.658.1 - '@aws-sdk/middleware-host-header': 3.654.0 - '@aws-sdk/middleware-location-constraint': 3.654.0 - '@aws-sdk/middleware-logger': 3.654.0 - '@aws-sdk/middleware-recursion-detection': 3.654.0 - '@aws-sdk/middleware-sdk-s3': 3.658.1 - '@aws-sdk/middleware-ssec': 3.654.0 - '@aws-sdk/middleware-user-agent': 3.654.0 - '@aws-sdk/region-config-resolver': 3.654.0 - '@aws-sdk/signature-v4-multi-region': 3.658.1 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@aws-sdk/util-user-agent-browser': 3.654.0 - '@aws-sdk/util-user-agent-node': 3.654.0 - '@aws-sdk/xml-builder': 3.654.0 - '@smithy/config-resolver': 3.0.8 - '@smithy/core': 2.4.6 - '@smithy/eventstream-serde-browser': 3.0.9 - '@smithy/eventstream-serde-config-resolver': 3.0.6 - '@smithy/eventstream-serde-node': 3.0.8 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/hash-blob-browser': 3.1.5 - '@smithy/hash-node': 3.0.6 - '@smithy/hash-stream-node': 3.1.5 - '@smithy/invalid-dependency': 3.0.6 - '@smithy/md5-js': 3.0.6 - '@smithy/middleware-content-length': 3.0.8 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/middleware-stack': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/node-http-handler': 3.2.3 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 + '@aws-sdk/client-sso-oidc': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-node': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/middleware-bucket-endpoint': 3.714.0 + '@aws-sdk/middleware-expect-continue': 3.714.0 + '@aws-sdk/middleware-flexible-checksums': 3.714.0 + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-location-constraint': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-sdk-s3': 3.714.0 + '@aws-sdk/middleware-ssec': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/signature-v4-multi-region': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@aws-sdk/xml-builder': 3.709.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/eventstream-serde-browser': 3.0.14 + '@smithy/eventstream-serde-config-resolver': 3.0.11 + '@smithy/eventstream-serde-node': 3.0.13 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-blob-browser': 3.1.10 + '@smithy/hash-node': 3.0.11 + '@smithy/hash-stream-node': 3.1.10 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/md5-js': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.21 - '@smithy/util-defaults-mode-node': 3.0.21 - '@smithy/util-endpoints': 2.1.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 - '@smithy/util-stream': 3.1.8 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 + '@smithy/util-stream': 3.3.2 '@smithy/util-utf8': 3.0.0 - '@smithy/util-waiter': 3.1.5 - tslib: 2.7.0 + '@smithy/util-waiter': 3.2.0 + tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1)': + '@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0)': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.658.1 - '@aws-sdk/credential-provider-node': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.654.0 - '@aws-sdk/middleware-logger': 3.654.0 - '@aws-sdk/middleware-recursion-detection': 3.654.0 - '@aws-sdk/middleware-user-agent': 3.654.0 - '@aws-sdk/region-config-resolver': 3.654.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@aws-sdk/util-user-agent-browser': 3.654.0 - '@aws-sdk/util-user-agent-node': 3.654.0 - '@smithy/config-resolver': 3.0.8 - '@smithy/core': 2.4.6 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/hash-node': 3.0.6 - '@smithy/invalid-dependency': 3.0.6 - '@smithy/middleware-content-length': 3.0.8 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/middleware-stack': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/node-http-handler': 3.2.3 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-node': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-node': 3.0.11 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.21 - '@smithy/util-defaults-mode-node': 3.0.21 - '@smithy/util-endpoints': 2.1.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.658.1)': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/credential-provider-node': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.693.0 - '@aws-sdk/middleware-logger': 3.693.0 - '@aws-sdk/middleware-recursion-detection': 3.693.0 - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/region-config-resolver': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@aws-sdk/util-user-agent-browser': 3.693.0 - '@aws-sdk/util-user-agent-node': 3.693.0 - '@smithy/config-resolver': 3.0.12 - '@smithy/core': 2.5.3 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/hash-node': 3.0.10 - '@smithy/invalid-dependency': 3.0.10 - '@smithy/middleware-content-length': 3.0.12 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-retry': 3.0.27 - '@smithy/middleware-serde': 3.0.10 - '@smithy/middleware-stack': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/node-http-handler': 3.3.1 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.27 - '@smithy/util-defaults-mode-node': 3.0.27 - '@smithy/util-endpoints': 2.1.6 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0)': + '@aws-sdk/client-sso@3.714.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.693.0 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/credential-provider-node': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.693.0 - '@aws-sdk/middleware-logger': 3.693.0 - '@aws-sdk/middleware-recursion-detection': 3.693.0 - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/region-config-resolver': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@aws-sdk/util-user-agent-browser': 3.693.0 - '@aws-sdk/util-user-agent-node': 3.693.0 - '@smithy/config-resolver': 3.0.12 - '@smithy/core': 2.5.3 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/hash-node': 3.0.10 - '@smithy/invalid-dependency': 3.0.10 - '@smithy/middleware-content-length': 3.0.12 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-retry': 3.0.27 - '@smithy/middleware-serde': 3.0.10 - '@smithy/middleware-stack': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/node-http-handler': 3.3.1 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-node': 3.0.11 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.27 - '@smithy/util-defaults-mode-node': 3.0.27 - '@smithy/util-endpoints': 2.1.6 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.658.1': + '@aws-sdk/client-sts@3.714.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.658.1 - '@aws-sdk/middleware-host-header': 3.654.0 - '@aws-sdk/middleware-logger': 3.654.0 - '@aws-sdk/middleware-recursion-detection': 3.654.0 - '@aws-sdk/middleware-user-agent': 3.654.0 - '@aws-sdk/region-config-resolver': 3.654.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@aws-sdk/util-user-agent-browser': 3.654.0 - '@aws-sdk/util-user-agent-node': 3.654.0 - '@smithy/config-resolver': 3.0.8 - '@smithy/core': 2.4.6 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/hash-node': 3.0.6 - '@smithy/invalid-dependency': 3.0.6 - '@smithy/middleware-content-length': 3.0.8 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/middleware-stack': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/node-http-handler': 3.2.3 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 + '@aws-sdk/client-sso-oidc': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-node': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/middleware-host-header': 3.714.0 + '@aws-sdk/middleware-logger': 3.714.0 + '@aws-sdk/middleware-recursion-detection': 3.714.0 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/region-config-resolver': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@aws-sdk/util-user-agent-browser': 3.714.0 + '@aws-sdk/util-user-agent-node': 3.714.0 + '@smithy/config-resolver': 3.0.13 + '@smithy/core': 2.5.5 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/hash-node': 3.0.11 + '@smithy/invalid-dependency': 3.0.11 + '@smithy/middleware-content-length': 3.0.13 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-retry': 3.0.30 + '@smithy/middleware-serde': 3.0.11 + '@smithy/middleware-stack': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/node-http-handler': 3.3.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 '@smithy/util-base64': 3.0.0 '@smithy/util-body-length-browser': 3.0.0 '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.21 - '@smithy/util-defaults-mode-node': 3.0.21 - '@smithy/util-endpoints': 2.1.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 + '@smithy/util-defaults-mode-browser': 3.0.30 + '@smithy/util-defaults-mode-node': 3.0.30 + '@smithy/util-endpoints': 2.1.7 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.693.0': + '@aws-sdk/core@3.714.0': dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/middleware-host-header': 3.693.0 - '@aws-sdk/middleware-logger': 3.693.0 - '@aws-sdk/middleware-recursion-detection': 3.693.0 - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/region-config-resolver': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@aws-sdk/util-user-agent-browser': 3.693.0 - '@aws-sdk/util-user-agent-node': 3.693.0 - '@smithy/config-resolver': 3.0.12 - '@smithy/core': 2.5.3 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/hash-node': 3.0.10 - '@smithy/invalid-dependency': 3.0.10 - '@smithy/middleware-content-length': 3.0.12 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-retry': 3.0.27 - '@smithy/middleware-serde': 3.0.10 - '@smithy/middleware-stack': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/node-http-handler': 3.3.1 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.27 - '@smithy/util-defaults-mode-node': 3.0.27 - '@smithy/util-endpoints': 2.1.6 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 - '@smithy/util-utf8': 3.0.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.658.1': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.658.1(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/core': 3.658.1 - '@aws-sdk/credential-provider-node': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.654.0 - '@aws-sdk/middleware-logger': 3.654.0 - '@aws-sdk/middleware-recursion-detection': 3.654.0 - '@aws-sdk/middleware-user-agent': 3.654.0 - '@aws-sdk/region-config-resolver': 3.654.0 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@aws-sdk/util-user-agent-browser': 3.654.0 - '@aws-sdk/util-user-agent-node': 3.654.0 - '@smithy/config-resolver': 3.0.8 - '@smithy/core': 2.4.6 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/hash-node': 3.0.6 - '@smithy/invalid-dependency': 3.0.6 - '@smithy/middleware-content-length': 3.0.8 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/middleware-stack': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/node-http-handler': 3.2.3 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.21 - '@smithy/util-defaults-mode-node': 3.0.21 - '@smithy/util-endpoints': 2.1.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.693.0': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.693.0(@aws-sdk/client-sts@3.693.0) - '@aws-sdk/core': 3.693.0 - '@aws-sdk/credential-provider-node': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/middleware-host-header': 3.693.0 - '@aws-sdk/middleware-logger': 3.693.0 - '@aws-sdk/middleware-recursion-detection': 3.693.0 - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/region-config-resolver': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@aws-sdk/util-user-agent-browser': 3.693.0 - '@aws-sdk/util-user-agent-node': 3.693.0 - '@smithy/config-resolver': 3.0.12 - '@smithy/core': 2.5.3 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/hash-node': 3.0.10 - '@smithy/invalid-dependency': 3.0.10 - '@smithy/middleware-content-length': 3.0.12 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-retry': 3.0.27 - '@smithy/middleware-serde': 3.0.10 - '@smithy/middleware-stack': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/node-http-handler': 3.3.1 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.27 - '@smithy/util-defaults-mode-node': 3.0.27 - '@smithy/util-endpoints': 2.1.6 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 - '@smithy/util-utf8': 3.0.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/core@3.658.1': - dependencies: - '@smithy/core': 2.4.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/property-provider': 3.1.6 - '@smithy/protocol-http': 4.1.3 - '@smithy/signature-v4': 4.1.4 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/util-middleware': 3.0.6 - fast-xml-parser: 4.4.1 - tslib: 2.7.0 - - '@aws-sdk/core@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/core': 2.5.3 - '@smithy/node-config-provider': 3.1.11 - '@smithy/property-provider': 3.1.10 - '@smithy/protocol-http': 4.1.7 - '@smithy/signature-v4': 4.2.3 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/util-middleware': 3.0.10 + '@aws-sdk/types': 3.714.0 + '@smithy/core': 2.5.5 + '@smithy/node-config-provider': 3.1.12 + '@smithy/property-provider': 3.1.11 + '@smithy/protocol-http': 4.1.8 + '@smithy/signature-v4': 4.2.4 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/util-middleware': 3.0.11 fast-xml-parser: 4.4.1 tslib: 2.8.1 - '@aws-sdk/credential-provider-env@3.654.0': + '@aws-sdk/credential-provider-env@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/property-provider': 3.1.6 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/credential-provider-env@3.693.0': - dependencies: - '@aws-sdk/core': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@smithy/property-provider': 3.1.10 - '@smithy/types': 3.7.1 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/property-provider': 3.1.11 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.658.1': + '@aws-sdk/credential-provider-http@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/node-http-handler': 3.2.3 - '@smithy/property-provider': 3.1.6 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/util-stream': 3.1.8 - tslib: 2.7.0 - - '@aws-sdk/credential-provider-http@3.693.0': - dependencies: - '@aws-sdk/core': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/node-http-handler': 3.3.1 - '@smithy/property-provider': 3.1.10 - '@smithy/protocol-http': 4.1.7 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/util-stream': 3.3.1 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/node-http-handler': 3.3.2 + '@smithy/property-provider': 3.1.11 + '@smithy/protocol-http': 4.1.8 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/util-stream': 3.3.2 tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1)': + '@aws-sdk/credential-provider-ini@3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0)': dependencies: - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/credential-provider-env': 3.654.0 - '@aws-sdk/credential-provider-http': 3.658.1 - '@aws-sdk/credential-provider-process': 3.654.0 - '@aws-sdk/credential-provider-sso': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1)) - '@aws-sdk/credential-provider-web-identity': 3.654.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.654.0 - '@smithy/credential-provider-imds': 3.2.3 - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - aws-crt - - '@aws-sdk/credential-provider-ini@3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1)': - dependencies: - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/credential-provider-env': 3.693.0 - '@aws-sdk/credential-provider-http': 3.693.0 - '@aws-sdk/credential-provider-process': 3.693.0 - '@aws-sdk/credential-provider-sso': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0)) - '@aws-sdk/credential-provider-web-identity': 3.693.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.692.0 - '@smithy/credential-provider-imds': 3.2.7 - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/credential-provider-env': 3.714.0 + '@aws-sdk/credential-provider-http': 3.714.0 + '@aws-sdk/credential-provider-process': 3.714.0 + '@aws-sdk/credential-provider-sso': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0)) + '@aws-sdk/credential-provider-web-identity': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/types': 3.714.0 + '@smithy/credential-provider-imds': 3.2.8 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-node@3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1)': + '@aws-sdk/credential-provider-node@3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0)': dependencies: - '@aws-sdk/credential-provider-env': 3.654.0 - '@aws-sdk/credential-provider-http': 3.658.1 - '@aws-sdk/credential-provider-ini': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/credential-provider-process': 3.654.0 - '@aws-sdk/credential-provider-sso': 3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1)) - '@aws-sdk/credential-provider-web-identity': 3.654.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.654.0 - '@smithy/credential-provider-imds': 3.2.3 - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - '@aws-sdk/client-sts' - - aws-crt - - '@aws-sdk/credential-provider-node@3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1)': - dependencies: - '@aws-sdk/credential-provider-env': 3.693.0 - '@aws-sdk/credential-provider-http': 3.693.0 - '@aws-sdk/credential-provider-ini': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/credential-provider-process': 3.693.0 - '@aws-sdk/credential-provider-sso': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0)) - '@aws-sdk/credential-provider-web-identity': 3.693.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.692.0 - '@smithy/credential-provider-imds': 3.2.7 - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/credential-provider-env': 3.714.0 + '@aws-sdk/credential-provider-http': 3.714.0 + '@aws-sdk/credential-provider-ini': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/credential-provider-process': 3.714.0 + '@aws-sdk/credential-provider-sso': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0)) + '@aws-sdk/credential-provider-web-identity': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/types': 3.714.0 + '@smithy/credential-provider-imds': 3.2.8 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - '@aws-sdk/client-sts' - aws-crt - '@aws-sdk/credential-provider-process@3.654.0': + '@aws-sdk/credential-provider-process@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/credential-provider-process@3.693.0': - dependencies: - '@aws-sdk/core': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.658.1(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))': + '@aws-sdk/credential-provider-sso@3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))': dependencies: - '@aws-sdk/client-sso': 3.658.1 - '@aws-sdk/token-providers': 3.654.0(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1)) - '@aws-sdk/types': 3.654.0 - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - aws-crt - - '@aws-sdk/credential-provider-sso@3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))': - dependencies: - '@aws-sdk/client-sso': 3.693.0 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/token-providers': 3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0)) - '@aws-sdk/types': 3.692.0 - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/client-sso': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/token-providers': 3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0)) + '@aws-sdk/types': 3.714.0 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 transitivePeerDependencies: - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-web-identity@3.654.0(@aws-sdk/client-sts@3.658.1)': + '@aws-sdk/credential-provider-web-identity@3.714.0(@aws-sdk/client-sts@3.714.0)': dependencies: - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/types': 3.654.0 - '@smithy/property-provider': 3.1.6 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/credential-provider-web-identity@3.693.0(@aws-sdk/client-sts@3.658.1)': - dependencies: - '@aws-sdk/client-sts': 3.658.1 - '@aws-sdk/core': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@smithy/property-provider': 3.1.10 - '@smithy/types': 3.7.1 + '@aws-sdk/client-sts': 3.714.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/property-provider': 3.1.11 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/lib-storage@3.658.1(@aws-sdk/client-s3@3.658.1)': + '@aws-sdk/lib-storage@3.714.0(@aws-sdk/client-s3@3.714.0)': dependencies: - '@aws-sdk/client-s3': 3.658.1 - '@smithy/abort-controller': 3.1.4 - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/smithy-client': 3.3.5 + '@aws-sdk/client-s3': 3.714.0 + '@smithy/abort-controller': 3.1.9 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/smithy-client': 3.5.0 buffer: 5.6.0 events: 3.3.0 stream-browserify: 3.0.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@aws-sdk/middleware-bucket-endpoint@3.654.0': + '@aws-sdk/middleware-bucket-endpoint@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-arn-parser': 3.568.0 - '@smithy/node-config-provider': 3.1.7 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-arn-parser': 3.693.0 + '@smithy/node-config-provider': 3.1.12 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 '@smithy/util-config-provider': 3.0.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@aws-sdk/middleware-expect-continue@3.654.0': + '@aws-sdk/middleware-expect-continue@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@aws-sdk/types': 3.714.0 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@aws-sdk/middleware-flexible-checksums@3.658.1': + '@aws-sdk/middleware-flexible-checksums@3.714.0': dependencies: '@aws-crypto/crc32': 5.2.0 '@aws-crypto/crc32c': 5.2.0 - '@aws-sdk/types': 3.654.0 + '@aws-crypto/util': 5.2.0 + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 '@smithy/is-array-buffer': 3.0.0 - '@smithy/node-config-provider': 3.1.7 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - '@smithy/util-middleware': 3.0.6 + '@smithy/node-config-provider': 3.1.12 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-stream': 3.3.2 '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@aws-sdk/middleware-host-header@3.654.0': - dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-host-header@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 tslib: 2.8.1 - '@aws-sdk/middleware-location-constraint@3.654.0': + '@aws-sdk/middleware-host-header@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-logger@3.654.0': - dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-logger@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/types': 3.7.1 + '@aws-sdk/types': 3.714.0 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.654.0': + '@aws-sdk/middleware-location-constraint@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-recursion-detection@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 + '@aws-sdk/types': 3.714.0 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/middleware-sdk-s3@3.658.1': + '@aws-sdk/middleware-logger@3.714.0': dependencies: - '@aws-sdk/core': 3.658.1 - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-arn-parser': 3.568.0 - '@smithy/core': 2.4.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/protocol-http': 4.1.3 - '@smithy/signature-v4': 4.1.4 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 + '@aws-sdk/types': 3.714.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 + + '@aws-sdk/middleware-recursion-detection@3.714.0': + dependencies: + '@aws-sdk/types': 3.714.0 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 + tslib: 2.8.1 + + '@aws-sdk/middleware-sdk-s3@3.714.0': + dependencies: + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-arn-parser': 3.693.0 + '@smithy/core': 2.5.5 + '@smithy/node-config-provider': 3.1.12 + '@smithy/protocol-http': 4.1.8 + '@smithy/signature-v4': 4.2.4 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-stream': 3.1.8 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-stream': 3.3.2 '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@aws-sdk/middleware-ssec@3.654.0': - dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-user-agent@3.654.0': - dependencies: - '@aws-sdk/types': 3.654.0 - '@aws-sdk/util-endpoints': 3.654.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/middleware-user-agent@3.693.0': - dependencies: - '@aws-sdk/core': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@aws-sdk/util-endpoints': 3.693.0 - '@smithy/core': 2.5.3 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 tslib: 2.8.1 - '@aws-sdk/region-config-resolver@3.654.0': + '@aws-sdk/middleware-ssec@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/node-config-provider': 3.1.7 - '@smithy/types': 3.4.2 + '@aws-sdk/types': 3.714.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 + + '@aws-sdk/middleware-user-agent@3.714.0': + dependencies: + '@aws-sdk/core': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@aws-sdk/util-endpoints': 3.714.0 + '@smithy/core': 2.5.5 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 + tslib: 2.8.1 + + '@aws-sdk/region-config-resolver@3.714.0': + dependencies: + '@aws-sdk/types': 3.714.0 + '@smithy/node-config-provider': 3.1.12 + '@smithy/types': 3.7.2 '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.6 - tslib: 2.7.0 - - '@aws-sdk/region-config-resolver@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/node-config-provider': 3.1.11 - '@smithy/types': 3.7.1 - '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.10 + '@smithy/util-middleware': 3.0.11 tslib: 2.8.1 - '@aws-sdk/signature-v4-multi-region@3.658.1': + '@aws-sdk/signature-v4-multi-region@3.714.0': dependencies: - '@aws-sdk/middleware-sdk-s3': 3.658.1 - '@aws-sdk/types': 3.654.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/signature-v4': 4.1.4 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/token-providers@3.654.0(@aws-sdk/client-sso-oidc@3.658.1(@aws-sdk/client-sts@3.658.1))': - dependencies: - '@aws-sdk/client-sso-oidc': 3.658.1(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.654.0 - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 + '@aws-sdk/middleware-sdk-s3': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/protocol-http': 4.1.8 + '@smithy/signature-v4': 4.2.4 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/token-providers@3.693.0(@aws-sdk/client-sso-oidc@3.693.0(@aws-sdk/client-sts@3.693.0))': + '@aws-sdk/token-providers@3.714.0(@aws-sdk/client-sso-oidc@3.714.0(@aws-sdk/client-sts@3.714.0))': dependencies: - '@aws-sdk/client-sso-oidc': 3.693.0(@aws-sdk/client-sts@3.658.1) - '@aws-sdk/types': 3.692.0 - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/client-sso-oidc': 3.714.0(@aws-sdk/client-sts@3.714.0) + '@aws-sdk/types': 3.714.0 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/types@3.654.0': + '@aws-sdk/types@3.714.0': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/types@3.692.0': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/util-arn-parser@3.568.0': + '@aws-sdk/util-arn-parser@3.693.0': dependencies: - tslib: 2.7.0 - - '@aws-sdk/util-endpoints@3.654.0': - dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/types': 3.4.2 - '@smithy/util-endpoints': 2.1.2 - tslib: 2.7.0 - - '@aws-sdk/util-endpoints@3.693.0': - dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/types': 3.7.1 - '@smithy/util-endpoints': 2.1.6 tslib: 2.8.1 - '@aws-sdk/util-locate-window@3.568.0': + '@aws-sdk/util-endpoints@3.714.0': dependencies: - tslib: 2.7.0 + '@aws-sdk/types': 3.714.0 + '@smithy/types': 3.7.2 + '@smithy/util-endpoints': 2.1.7 + tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.654.0': + '@aws-sdk/util-locate-window@3.693.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/types': 3.4.2 - bowser: 2.11.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.693.0': + '@aws-sdk/util-user-agent-browser@3.714.0': dependencies: - '@aws-sdk/types': 3.692.0 - '@smithy/types': 3.7.1 + '@aws-sdk/types': 3.714.0 + '@smithy/types': 3.7.2 bowser: 2.11.0 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.654.0': + '@aws-sdk/util-user-agent-node@3.714.0': dependencies: - '@aws-sdk/types': 3.654.0 - '@smithy/node-config-provider': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@aws-sdk/util-user-agent-node@3.693.0': - dependencies: - '@aws-sdk/middleware-user-agent': 3.693.0 - '@aws-sdk/types': 3.692.0 - '@smithy/node-config-provider': 3.1.11 - '@smithy/types': 3.7.1 + '@aws-sdk/middleware-user-agent': 3.714.0 + '@aws-sdk/types': 3.714.0 + '@smithy/node-config-provider': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@aws-sdk/xml-builder@3.654.0': + '@aws-sdk/xml-builder@3.709.0': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@babel/code-frame@7.24.7': - dependencies: - '@babel/highlight': 7.24.7 - picocolors: 1.1.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 '@babel/code-frame@7.26.2': dependencies: @@ -15507,52 +14608,8 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.25.4': {} - - '@babel/compat-data@7.25.8': {} - '@babel/compat-data@7.26.3': {} - '@babel/core@7.25.2': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) - '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - convert-source-map: 2.0.0 - debug: 4.3.7(supports-color@8.1.1) - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/core@7.25.8': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.25.7 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8) - '@babel/helpers': 7.25.7 - '@babel/parser': 7.25.8 - '@babel/template': 7.25.7 - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - convert-source-map: 2.0.0 - debug: 4.4.0 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 @@ -15566,150 +14623,71 @@ snapshots: '@babel/traverse': 7.26.4 '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.25.6': - dependencies: - '@babel/types': 7.25.8 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/generator@7.25.7': - dependencies: - '@babel/types': 7.25.8 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 - '@babel/generator@7.26.3': dependencies: '@babel/parser': 7.26.3 '@babel/types': 7.26.3 - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 jsesc: 3.1.0 - '@babel/helper-annotate-as-pure@7.24.7': - dependencies: - '@babel/types': 7.25.8 - '@babel/helper-annotate-as-pure@7.25.9': dependencies: '@babel/types': 7.26.3 - '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': - dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 - transitivePeerDependencies: - - supports-color - - '@babel/helper-compilation-targets@7.25.2': - dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.24.0 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-compilation-targets@7.25.7': - dependencies: - '@babel/compat-data': 7.25.8 - '@babel/helper-validator-option': 7.25.7 - browserslist: 4.24.0 - lru-cache: 5.1.1 - semver: 6.3.1 - '@babel/helper-compilation-targets@7.25.9': dependencies: '@babel/compat-data': 7.26.3 '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.2 + browserslist: 4.24.3 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.4(@babel/core@7.25.8)': + '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.8 + '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.8) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 '@babel/traverse': 7.26.4 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-create-class-features-plugin@7.25.4(@babel/core@7.26.0)': + '@babel/helper-create-regexp-features-plugin@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.26.0) - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/traverse': 7.26.4 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - regexpu-core: 5.3.2 + regexpu-core: 6.2.0 semver: 6.3.1 - '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.25.9 - regexpu-core: 5.3.2 - semver: 6.3.1 - - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-compilation-targets': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - debug: 4.4.0 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.26.0)': + '@babel/helper-define-polyfill-provider@0.6.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) lodash.debounce: 4.0.8 - resolve: 1.22.8 + resolve: 1.22.9 transitivePeerDependencies: - supports-color - '@babel/helper-member-expression-to-functions@7.24.8': + '@babel/helper-member-expression-to-functions@7.25.9': dependencies: '@babel/traverse': 7.26.4 '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color - '@babel/helper-module-imports@7.24.7': - dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - '@babel/helper-module-imports@7.25.9': dependencies: '@babel/traverse': 7.26.4 @@ -15717,35 +14695,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': - dependencies: - '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.25.7 - '@babel/traverse': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-simple-access': 7.25.7 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.26.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.4 - transitivePeerDependencies: - - supports-color - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -15755,90 +14704,44 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-optimise-call-expression@7.24.7': + '@babel/helper-optimise-call-expression@7.25.9': dependencies: '@babel/types': 7.26.3 - '@babel/helper-plugin-utils@7.24.8': {} - '@babel/helper-plugin-utils@7.25.9': {} - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-wrap-function': 7.25.0 - '@babel/traverse': 7.26.4 - transitivePeerDependencies: - - supports-color - - '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.26.0)': + '@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-wrap-function': 7.25.0 + '@babel/helper-wrap-function': 7.25.9 '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color - '@babel/helper-replace-supers@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/traverse': 7.26.4 - transitivePeerDependencies: - - supports-color - - '@babel/helper-replace-supers@7.25.0(@babel/core@7.26.0)': + '@babel/helper-replace-supers@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-member-expression-to-functions': 7.24.8 - '@babel/helper-optimise-call-expression': 7.24.7 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color - '@babel/helper-simple-access@7.24.7': - dependencies: - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.25.7': + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: '@babel/traverse': 7.26.4 '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color - '@babel/helper-skip-transparent-expression-wrappers@7.24.7': - dependencies: - '@babel/traverse': 7.26.4 - '@babel/types': 7.26.3 - transitivePeerDependencies: - - supports-color - - '@babel/helper-string-parser@7.24.8': {} - - '@babel/helper-string-parser@7.25.7': {} - '@babel/helper-string-parser@7.25.9': {} - '@babel/helper-validator-identifier@7.24.7': {} - - '@babel/helper-validator-identifier@7.25.7': {} - '@babel/helper-validator-identifier@7.25.9': {} - '@babel/helper-validator-option@7.24.8': {} - - '@babel/helper-validator-option@7.25.7': {} - '@babel/helper-validator-option@7.25.9': {} - '@babel/helper-wrap-function@7.25.0': + '@babel/helper-wrap-function@7.25.9': dependencies: '@babel/template': 7.25.9 '@babel/traverse': 7.26.4 @@ -15846,221 +14749,67 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helpers@7.25.6': - dependencies: - '@babel/template': 7.25.7 - '@babel/types': 7.25.8 - - '@babel/helpers@7.25.7': - dependencies: - '@babel/template': 7.25.7 - '@babel/types': 7.25.8 - '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 '@babel/types': 7.26.3 - '@babel/highlight@7.24.7': - dependencies: - '@babel/helper-validator-identifier': 7.25.9 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.1.0 - - '@babel/parser@7.25.6': - dependencies: - '@babel/types': 7.25.8 - - '@babel/parser@7.25.8': - dependencies: - '@babel/types': 7.25.8 - '@babel/parser@7.26.3': dependencies: '@babel/types': 7.26.3 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.26.0)': + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0(@babel/core@7.26.0)': + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.26.0)': + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.26.0)': + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.26.0)': + '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-syntax-import-assertions@7.25.6(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-assertions@7.25.6(@babel/core@7.26.0)': + '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.0)': @@ -16068,671 +14817,278 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.9 - - '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.26.0)': + '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-async-generator-functions@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.8) - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-async-generator-functions@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.26.0) - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-class-properties@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-class-properties@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-classes@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.8) - '@babel/traverse': 7.25.6 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-classes@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.26.0) - '@babel/traverse': 7.25.6 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.25.9 - - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.25.9 - - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.8) - - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.26.0) - - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.8) - - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.26.0) - - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.8) - - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.26.0) - - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-literals@7.25.2(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.8) - - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.26.0) - - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-simple-access': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.6 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.8) - - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.26.0) - - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.8) - - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.26.0) - - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.8) - - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.26.0) - - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.25.0(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.8) - - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.26.0) - - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-private-methods@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-private-methods@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-react-constant-elements@7.25.1(@babel/core@7.26.0)': + '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-transform-async-generator-functions@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-react-jsx-development@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/plugin-transform-react-jsx': 7.25.2(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-jsx-development@7.25.9(@babel/core@7.25.8)': + '@babel/plugin-transform-async-to-generator@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.8 - '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.8) + '@babel/core': 7.26.0 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: - supports-color + '@babel/plugin-transform-block-scoped-functions@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-class-properties@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-class-static-block@7.26.0(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-classes@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) + '@babel/traverse': 7.26.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/template': 7.25.9 + + '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-function-name@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.26.4 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-literals@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-modules-amd@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-commonjs@7.26.3(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-systemjs@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.26.4 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-umd@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-object-rest-spread@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.0) + + '@babel/plugin-transform-object-super@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-private-methods@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-private-property-in-object@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-constant-elements@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-react-jsx-development@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -16750,28 +15106,6 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-react-jsx@7.25.2(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.26.0) - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.8) - '@babel/types': 7.26.3 - transitivePeerDependencies: - - supports-color - '@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 @@ -16783,470 +15117,226 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-transform-react-pure-annotations@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.25.8)': + '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 regenerator-transform: 0.15.2 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - regenerator-transform: 0.15.2 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-runtime@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-plugin-utils': 7.24.8 - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.8) - babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.8) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.8) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.26.0)': + '@babel/plugin-transform-runtime@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-typescript@7.25.2(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-annotate-as-pure': 7.25.9 - '@babel/helper-create-class-features-plugin': 7.25.4(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.26.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-sets-regex@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/plugin-transform-unicode-sets-regex@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.26.0) - '@babel/helper-plugin-utils': 7.24.8 - - '@babel/preset-env@7.25.4(@babel/core@7.25.8)': - dependencies: - '@babel/compat-data': 7.25.4 - '@babel/core': 7.25.8 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.25.8) - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.8) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.8) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.8) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-import-assertions': 7.25.6(@babel/core@7.25.8) - '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.25.8) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.8) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.8) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.8) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.8) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.8) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.8) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-async-generator-functions': 7.25.4(@babel/core@7.25.8) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-transform-class-properties': 7.25.4(@babel/core@7.25.8) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-classes': 7.25.4(@babel/core@7.25.8) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.25.8) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.25.8) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.25.8) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.8) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.25.8) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.8) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-private-methods': 7.25.4(@babel/core@7.25.8) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.25.8) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-unicode-sets-regex': 7.25.4(@babel/core@7.25.8) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.8) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.8) - babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.8) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.8) - core-js-compat: 3.38.1 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/preset-env@7.25.4(@babel/core@7.26.0)': - dependencies: - '@babel/compat-data': 7.25.4 - '@babel/core': 7.26.0 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.26.0) - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.26.0) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.26.0) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.26.0) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-import-assertions': 7.25.6(@babel/core@7.26.0) - '@babel/plugin-syntax-import-attributes': 7.25.6(@babel/core@7.26.0) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.26.0) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.26.0) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.26.0) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.26.0) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.26.0) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.26.0) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.26.0) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-async-generator-functions': 7.25.4(@babel/core@7.26.0) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-transform-class-properties': 7.25.4(@babel/core@7.26.0) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-classes': 7.25.4(@babel/core@7.26.0) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.26.0) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.26.0) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.26.0) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.26.0) - '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.26.0) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.26.0) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-private-methods': 7.25.4(@babel/core@7.26.0) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.26.0) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-unicode-sets-regex': 7.25.4(@babel/core@7.26.0) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.26.0) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.26.0) + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + babel-plugin-polyfill-corejs2: 0.4.12(@babel/core@7.26.0) babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.26.0) - core-js-compat: 3.38.1 + babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.0) semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.8)': + '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.26.0)': dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/types': 7.26.3 - esutils: 2.0.3 + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-spread@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-template-literals@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-typeof-symbol@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-typescript@7.26.3(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.0)': + dependencies: + '@babel/core': 7.26.0 + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/preset-env@7.26.0(@babel/core@7.26.0)': + dependencies: + '@babel/compat-data': 7.26.3 + '@babel/core': 7.26.0 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.0) + '@babel/plugin-syntax-import-assertions': 7.26.0(@babel/core@7.26.0) + '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.26.0) + '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-block-scoped-functions': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-class-static-block': 7.26.0(@babel/core@7.26.0) + '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-dotall-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-exponentiation-operator': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-json-strings': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-new-target': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-object-super': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-property-literals': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-regexp-modifiers': 7.26.0(@babel/core@7.26.0) + '@babel/plugin-transform-reserved-words': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-template-literals': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-typeof-symbol': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-unicode-escapes': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-unicode-property-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-unicode-sets-regex': 7.25.9(@babel/core@7.26.0) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.26.0) + babel-plugin-polyfill-corejs2: 0.4.12(@babel/core@7.26.0) + babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0) + babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.0) + core-js-compat: 3.39.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/types': 7.26.3 esutils: 2.0.3 - '@babel/preset-react@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.8) - '@babel/plugin-transform-react-jsx-development': 7.25.9(@babel/core@7.25.8) - '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/preset-react@7.24.7(@babel/core@7.26.0)': + '@babel/preset-react@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-development': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.26.0) + '@babel/plugin-transform-react-pure-annotations': 7.25.9(@babel/core@7.26.0) transitivePeerDependencies: - supports-color - '@babel/preset-typescript@7.24.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.8) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.8) - '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/preset-typescript@7.24.7(@babel/core@7.26.0)': + '@babel/preset-typescript@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.26.0) - '@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.26.0) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.26.3(@babel/core@7.26.0) transitivePeerDependencies: - supports-color - '@babel/regjsgen@0.8.0': {} - - '@babel/runtime-corejs3@7.25.6': + '@babel/runtime-corejs3@7.26.0': dependencies: - core-js-pure: 3.38.1 + core-js-pure: 3.39.0 regenerator-runtime: 0.14.1 - '@babel/runtime@7.25.6': + '@babel/runtime@7.26.0': dependencies: regenerator-runtime: 0.14.1 - '@babel/standalone@7.25.6': + '@babel/standalone@7.26.4': optional: true - '@babel/template@7.25.0': - dependencies: - '@babel/code-frame': 7.24.7 - '@babel/parser': 7.25.8 - '@babel/types': 7.25.8 - - '@babel/template@7.25.7': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.3 - '@babel/types': 7.25.8 - '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 '@babel/parser': 7.26.3 '@babel/types': 7.26.3 - '@babel/traverse@7.25.6': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.25.7 - '@babel/parser': 7.25.8 - '@babel/template': 7.25.7 - '@babel/types': 7.25.8 - debug: 4.4.0 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/traverse@7.25.7': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.3 - '@babel/parser': 7.26.3 - '@babel/template': 7.25.9 - '@babel/types': 7.26.3 - debug: 4.4.0 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - '@babel/traverse@7.26.4': dependencies: '@babel/code-frame': 7.26.2 @@ -17254,23 +15344,11 @@ snapshots: '@babel/parser': 7.26.3 '@babel/template': 7.25.9 '@babel/types': 7.26.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.25.6': - dependencies: - '@babel/helper-string-parser': 7.24.8 - '@babel/helper-validator-identifier': 7.24.7 - to-fast-properties: 2.0.0 - - '@babel/types@7.25.8': - dependencies: - '@babel/helper-string-parser': 7.25.7 - '@babel/helper-validator-identifier': 7.25.9 - to-fast-properties: 2.0.0 - '@babel/types@7.26.3': dependencies: '@babel/helper-string-parser': 7.25.9 @@ -17280,7 +15358,7 @@ snapshots: '@browserstack/ai-sdk-node@1.5.17': dependencies: - axios: 1.7.7 + axios: 1.7.9 uuid: 9.0.1 transitivePeerDependencies: - debug @@ -17290,6 +15368,258 @@ snapshots: '@colors/colors@1.6.0': {} + '@csstools/cascade-layer-name-parser@2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/color-helpers@5.0.1': {} + + '@csstools/css-calc@2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/css-color-parser@3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/color-helpers': 5.0.1 + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/css-tokenizer@3.0.3': {} + + '@csstools/media-query-list-parser@4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + + '@csstools/postcss-cascade-layers@5.0.1(postcss@8.4.49)': + dependencies: + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + '@csstools/postcss-color-function@4.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-color-mix-function@3.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-content-alt-text@2.0.4(postcss@8.4.49)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-exponential-functions@2.0.5(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-font-format-keywords@4.0.0(postcss@8.4.49)': + dependencies: + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-gamut-mapping@2.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-gradients-interpolation-method@5.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-hwb-function@4.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-ic-unit@4.0.0(postcss@8.4.49)': + dependencies: + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-initial@2.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + + '@csstools/postcss-is-pseudo-class@5.0.1(postcss@8.4.49)': + dependencies: + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + '@csstools/postcss-light-dark-function@2.0.7(postcss@8.4.49)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + + '@csstools/postcss-logical-overflow@2.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + + '@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + + '@csstools/postcss-logical-resize@3.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-logical-viewport-units@3.0.3(postcss@8.4.49)': + dependencies: + '@csstools/css-tokenizer': 3.0.3 + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-media-minmax@2.0.5(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.49 + + '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4(postcss@8.4.49)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.49 + + '@csstools/postcss-nested-calc@4.0.0(postcss@8.4.49)': + dependencies: + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-normalize-display-values@4.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-oklab-function@4.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-progressive-custom-properties@4.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-random-function@1.0.1(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-relative-color-syntax@3.0.6(postcss@8.4.49)': + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + '@csstools/postcss-scope-pseudo-class@4.0.1(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + '@csstools/postcss-sign-functions@1.1.0(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-stepped-value-functions@4.0.5(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-text-decoration-shorthand@4.0.1(postcss@8.4.49)': + dependencies: + '@csstools/color-helpers': 5.0.1 + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + '@csstools/postcss-trigonometric-functions@4.0.5(postcss@8.4.49)': + dependencies: + '@csstools/css-calc': 2.1.0(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + + '@csstools/postcss-unset-value@4.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + + '@csstools/selector-resolve-nested@3.0.0(postcss-selector-parser@7.0.0)': + dependencies: + postcss-selector-parser: 7.0.0 + + '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.0.0)': + dependencies: + postcss-selector-parser: 7.0.0 + + '@csstools/utilities@2.0.0(postcss@8.4.49)': + dependencies: + postcss: 8.4.49 + '@cucumber/ci-environment@10.0.1': {} '@cucumber/cucumber-expressions@17.1.0': @@ -17312,7 +15642,7 @@ snapshots: chalk: 4.1.2 cli-table3: 0.6.3 commander: 10.0.1 - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) error-stack-parser: 2.1.4 figures: 3.2.0 glob: 10.4.5 @@ -17335,10 +15665,10 @@ snapshots: strip-ansi: 6.0.1 supports-color: 8.1.1 tmp: 0.2.3 - type-fest: 4.26.1 + type-fest: 4.30.2 util-arity: 1.1.0 xmlbuilder: 15.1.1 - yaml: 2.5.1 + yaml: 2.6.1 yup: 1.2.0 '@cucumber/gherkin-streams@5.0.1(@cucumber/gherkin@28.0.0)(@cucumber/message-streams@4.0.1(@cucumber/messages@24.1.0))(@cucumber/messages@24.1.0)': @@ -17398,101 +15728,150 @@ snapshots: '@discoveryjs/json-ext@0.5.7': {} - '@docsearch/css@3.6.1': {} + '@docsearch/css@3.8.2': {} - '@docsearch/react@3.6.1(@algolia/client-search@4.24.0)(@types/react@19.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)': + '@docsearch/react@3.8.2(@algolia/client-search@5.18.0)(@types/react@19.0.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-core': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0)(search-insights@2.17.2) - '@algolia/autocomplete-preset-algolia': 1.9.3(@algolia/client-search@4.24.0)(algoliasearch@4.24.0) - '@docsearch/css': 3.6.1 - algoliasearch: 4.24.0 + '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0)(search-insights@2.17.3) + '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.18.0)(algoliasearch@5.18.0) + '@docsearch/css': 3.8.2 + algoliasearch: 5.18.0 optionalDependencies: - '@types/react': 19.0.1 + '@types/react': 19.0.2 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - search-insights: 2.17.2 + search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - '@docusaurus/core@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/babel@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@babel/core': 7.25.8 - '@babel/generator': 7.25.6 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.8) - '@babel/plugin-transform-runtime': 7.25.4(@babel/core@7.25.8) - '@babel/preset-env': 7.25.4(@babel/core@7.25.8) - '@babel/preset-react': 7.24.7(@babel/core@7.25.8) - '@babel/preset-typescript': 7.24.7(@babel/core@7.25.8) - '@babel/runtime': 7.25.6 - '@babel/runtime-corejs3': 7.25.6 - '@babel/traverse': 7.25.6 - '@docusaurus/cssnano-preset': 3.5.2 - '@docusaurus/logger': 3.5.2 - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@mdx-js/react': 3.0.1(@types/react@19.0.1)(react@18.3.1) - autoprefixer: 10.4.20(postcss@8.4.47) - babel-loader: 9.2.1(@babel/core@7.25.8)(webpack@5.94.0(@swc/core@1.7.26)) + '@babel/core': 7.26.0 + '@babel/generator': 7.26.3 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.26.0) + '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.26.0) + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + '@babel/preset-react': 7.26.3(@babel/core@7.26.0) + '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) + '@babel/runtime': 7.26.0 + '@babel/runtime-corejs3': 7.26.0 + '@babel/traverse': 7.26.4 + '@docusaurus/logger': 3.6.3 + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) babel-plugin-dynamic-import-node: 2.3.3 + fs-extra: 11.2.0 + tslib: 2.8.1 + transitivePeerDependencies: + - '@swc/core' + - acorn + - esbuild + - react + - react-dom + - supports-color + - typescript + - uglify-js + - webpack-cli + + '@docusaurus/bundler@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': + dependencies: + '@babel/core': 7.26.0 + '@docusaurus/babel': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/cssnano-preset': 3.6.3 + '@docusaurus/logger': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + babel-loader: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.10.1)) + clean-css: 5.3.3 + copy-webpack-plugin: 11.0.0(webpack@5.97.1(@swc/core@1.10.1)) + css-loader: 6.11.0(webpack@5.97.1(@swc/core@1.10.1)) + css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.97.1(@swc/core@1.10.1)) + cssnano: 6.1.2(postcss@8.4.49) + file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.10.1)) + html-minifier-terser: 7.2.0 + mini-css-extract-plugin: 2.9.2(webpack@5.97.1(@swc/core@1.10.1)) + null-loader: 4.0.1(webpack@5.97.1(@swc/core@1.10.1)) + postcss: 8.4.49 + postcss-loader: 7.3.4(postcss@8.4.49)(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)) + postcss-preset-env: 10.1.2(postcss@8.4.49) + react-dev-utils: 12.0.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)) + terser-webpack-plugin: 5.3.11(@swc/core@1.10.1)(webpack@5.97.1(@swc/core@1.10.1)) + tslib: 2.8.1 + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.97.1(@swc/core@1.10.1)))(webpack@5.97.1(@swc/core@1.10.1)) + webpack: 5.97.1(@swc/core@1.10.1) + webpackbar: 6.0.1(webpack@5.97.1(@swc/core@1.10.1)) + transitivePeerDependencies: + - '@parcel/css' + - '@rspack/core' + - '@swc/core' + - '@swc/css' + - acorn + - csso + - esbuild + - eslint + - lightningcss + - react + - react-dom + - supports-color + - typescript + - uglify-js + - vue-template-compiler + - webpack-cli + + '@docusaurus/core@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': + dependencies: + '@docusaurus/babel': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/bundler': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@mdx-js/react': 3.1.0(@types/react@19.0.2)(react@18.3.1) boxen: 6.2.1 chalk: 4.1.2 chokidar: 3.6.0 - clean-css: 5.3.3 cli-table3: 0.6.5 combine-promises: 1.2.0 commander: 5.1.0 - copy-webpack-plugin: 11.0.0(webpack@5.94.0(@swc/core@1.7.26)) - core-js: 3.38.1 - css-loader: 6.11.0(webpack@5.94.0(@swc/core@1.7.26)) - css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.94.0(@swc/core@1.7.26)) - cssnano: 6.1.2(postcss@8.4.47) + core-js: 3.39.0 del: 6.1.1 detect-port: 1.6.1 escape-html: 1.0.3 eta: 2.2.0 eval: 0.1.8 - file-loader: 6.2.0(webpack@5.94.0(@swc/core@1.7.26)) fs-extra: 11.2.0 - html-minifier-terser: 7.2.0 html-tags: 3.3.1 - html-webpack-plugin: 5.6.0(webpack@5.94.0(@swc/core@1.7.26)) + html-webpack-plugin: 5.6.3(webpack@5.97.1(@swc/core@1.10.1)) leven: 3.1.0 lodash: 4.17.21 - mini-css-extract-plugin: 2.9.1(webpack@5.94.0(@swc/core@1.7.26)) p-map: 4.0.0 - postcss: 8.4.47 - postcss-loader: 7.3.4(postcss@8.4.47)(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)) prompts: 2.4.2 react: 18.3.1 - react-dev-utils: 12.0.1(eslint@9.10.0(jiti@1.21.6))(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)) + react-dev-utils: 12.0.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)) react-dom: 18.3.1(react@18.3.1) react-helmet-async: 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.3.1)' - react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@18.3.1))(webpack@5.94.0(@swc/core@1.7.26)) + react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@18.3.1))(webpack@5.97.1(@swc/core@1.10.1)) react-router: 5.3.4(react@18.3.1) react-router-config: 5.1.1(react-router@5.3.4(react@18.3.1))(react@18.3.1) react-router-dom: 5.3.4(react@18.3.1) rtl-detect: 1.1.2 semver: 7.6.3 - serve-handler: 6.1.5 + serve-handler: 6.1.6 shelljs: 0.8.5 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.26)(webpack@5.94.0(@swc/core@1.7.26)) - tslib: 2.7.0 + tslib: 2.8.1 update-notifier: 6.0.2 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.94.0(@swc/core@1.7.26)))(webpack@5.94.0(@swc/core@1.7.26)) - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) webpack-bundle-analyzer: 4.10.2 - webpack-dev-server: 4.15.2(webpack@5.94.0(@swc/core@1.7.26)) - webpack-merge: 5.10.0 - webpackbar: 5.0.2(webpack@5.94.0(@swc/core@1.7.26)) + webpack-dev-server: 4.15.2(webpack@5.97.1(@swc/core@1.10.1)) + webpack-merge: 6.0.1 transitivePeerDependencies: - - '@docusaurus/types' + - '@docusaurus/faster' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17506,38 +15885,38 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/cssnano-preset@3.5.2': + '@docusaurus/cssnano-preset@3.6.3': dependencies: - cssnano-preset-advanced: 6.1.2(postcss@8.4.47) - postcss: 8.4.47 - postcss-sort-media-queries: 5.2.0(postcss@8.4.47) + cssnano-preset-advanced: 6.1.2(postcss@8.4.49) + postcss: 8.4.49 + postcss-sort-media-queries: 5.2.0(postcss@8.4.49) tslib: 2.8.1 - '@docusaurus/logger@3.5.2': + '@docusaurus/logger@3.6.3': dependencies: chalk: 4.1.2 tslib: 2.8.1 - '@docusaurus/lqip-loader@3.5.2(webpack@5.94.0(@swc/core@1.7.26))': + '@docusaurus/lqip-loader@3.6.3(webpack@5.97.1(@swc/core@1.10.1))': dependencies: - '@docusaurus/logger': 3.5.2 - file-loader: 6.2.0(webpack@5.94.0(@swc/core@1.7.26)) + '@docusaurus/logger': 3.6.3 + file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.10.1)) lodash: 4.17.21 sharp: 0.32.6 - tslib: 2.7.0 + tslib: 2.8.1 transitivePeerDependencies: - webpack - '@docusaurus/mdx-loader@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/mdx-loader@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/logger': 3.5.2 - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@mdx-js/mdx': 3.0.1 + '@docusaurus/logger': 3.6.3 + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@mdx-js/mdx': 3.1.0(acorn@8.14.0) '@slorber/remark-comment': 1.0.0 escape-html: 1.0.3 - estree-util-value-to-estree: 3.1.2 - file-loader: 6.2.0(webpack@5.94.0(@swc/core@1.7.26)) + estree-util-value-to-estree: 3.2.1 + file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.10.1)) fs-extra: 11.2.0 image-size: 1.1.1 mdast-util-mdx: 3.0.0 @@ -17550,26 +15929,26 @@ snapshots: remark-frontmatter: 5.0.0 remark-gfm: 4.0.0 stringify-object: 3.3.0 - tslib: 2.7.0 + tslib: 2.8.1 unified: 11.0.5 unist-util-visit: 5.0.0 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.94.0(@swc/core@1.7.26)))(webpack@5.94.0(@swc/core@1.7.26)) + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.97.1(@swc/core@1.10.1)))(webpack@5.97.1(@swc/core@1.10.1)) vfile: 6.0.3 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: - - '@docusaurus/types' - '@swc/core' + - acorn - esbuild - supports-color - typescript - uglify-js - webpack-cli - '@docusaurus/module-type-aliases@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@docusaurus/module-type-aliases@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 '@types/react-router-config': 5.0.11 '@types/react-router-dom': 5.3.3 react: 18.3.1 @@ -17578,31 +15957,33 @@ snapshots: react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.3.1)' transitivePeerDependencies: - '@swc/core' + - acorn - esbuild - supports-color - uglify-js - webpack-cli - '@docusaurus/plugin-client-redirects@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-client-redirects@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) eta: 2.2.0 fs-extra: 11.2.0 lodash: 4.17.21 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - tslib: 2.7.0 + tslib: 2.8.1 transitivePeerDependencies: - - '@docusaurus/types' + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17616,17 +15997,17 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-content-blog@3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-content-blog@3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-docs': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-docs': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) cheerio: 1.0.0-rc.12 feed: 4.2.2 fs-extra: 11.2.0 @@ -17638,13 +16019,15 @@ snapshots: tslib: 2.8.1 unist-util-visit: 5.0.0 utility-types: 3.11.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17658,17 +16041,17 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/module-type-aliases': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/module-type-aliases': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@types/react-router-config': 5.0.11 combine-promises: 1.2.0 fs-extra: 11.2.0 @@ -17678,13 +16061,15 @@ snapshots: react-dom: 18.3.1(react@18.3.1) tslib: 2.8.1 utility-types: 3.11.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17698,24 +16083,26 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-content-pages@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-content-pages@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) fs-extra: 11.2.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) tslib: 2.8.1 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17729,22 +16116,24 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-debug@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-debug@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) fs-extra: 11.2.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-json-view-lite: 1.5.0(react@18.3.1) tslib: 2.8.1 transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17758,20 +16147,22 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-analytics@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-google-analytics@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - tslib: 2.7.0 + tslib: 2.8.1 transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17785,21 +16176,23 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-gtag@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-google-gtag@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@types/gtag.js': 0.0.12 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) tslib: 2.8.1 transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17813,20 +16206,22 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-google-tag-manager@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-google-tag-manager@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) tslib: 2.8.1 transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17840,27 +16235,29 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-ideal-image@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-ideal-image@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/lqip-loader': 3.5.2(webpack@5.94.0(@swc/core@1.7.26)) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/lqip-loader': 3.6.3(webpack@5.97.1(@swc/core@1.10.1)) '@docusaurus/responsive-loader': 1.7.0(sharp@0.32.6) - '@docusaurus/theme-translations': 3.5.2 - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/theme-translations': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) '@slorber/react-ideal-image': 0.0.12(prop-types@15.8.1)(react-waypoint@10.3.0(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-waypoint: 10.3.0(react@18.3.1) sharp: 0.32.6 - tslib: 2.7.0 - webpack: 5.94.0(@swc/core@1.7.26) + tslib: 2.8.1 + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17875,31 +16272,31 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-pwa@3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/babel__core@7.20.5)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-pwa@3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/babel__core@7.20.5)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@babel/core': 7.25.8 - '@babel/preset-env': 7.25.4(@babel/core@7.25.8) - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-translations': 3.5.2 - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - babel-loader: 9.2.1(@babel/core@7.25.8)(webpack@5.94.0(@swc/core@1.7.26)) + '@babel/core': 7.26.0 + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + '@docusaurus/bundler': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-translations': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + babel-loader: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.10.1)) clsx: 2.1.1 - core-js: 3.38.1 + core-js: 3.39.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - terser-webpack-plugin: 5.3.10(@swc/core@1.7.26)(webpack@5.94.0(@swc/core@1.7.26)) - tslib: 2.7.0 - webpack: 5.94.0(@swc/core@1.7.26) + tslib: 2.8.1 + webpack: 5.97.1(@swc/core@1.10.1) webpack-merge: 5.10.0 - webpackbar: 5.0.2(webpack@5.94.0(@swc/core@1.7.26)) - workbox-build: 7.1.1(@types/babel__core@7.20.5) - workbox-precaching: 7.1.0 - workbox-window: 7.1.0 + workbox-build: 7.3.0(@types/babel__core@7.20.5) + workbox-precaching: 7.3.0 + workbox-window: 7.3.0 transitivePeerDependencies: + - '@docusaurus/faster' - '@docusaurus/plugin-content-docs' - '@mdx-js/react' - '@parcel/css' @@ -17907,6 +16304,7 @@ snapshots: - '@swc/core' - '@swc/css' - '@types/babel__core' + - acorn - bufferutil - csso - debug @@ -17920,25 +16318,27 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/plugin-sitemap@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/plugin-sitemap@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) fs-extra: 11.2.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) sitemap: 7.1.2 tslib: 2.8.1 transitivePeerDependencies: + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' + - acorn - bufferutil - csso - debug @@ -17952,31 +16352,33 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/preset-classic@3.5.2(@algolia/client-search@4.24.0)(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)(typescript@5.6.2)': + '@docusaurus/preset-classic@3.6.3(@algolia/client-search@5.18.0)(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-blog': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-docs': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-pages': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-debug': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-google-analytics': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-google-gtag': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-google-tag-manager': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-sitemap': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-classic': 3.5.2(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-search-algolia': 3.5.2(@algolia/client-search@4.24.0)(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)(typescript@5.6.2) - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-blog': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-docs': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-pages': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-debug': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-google-analytics': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-google-gtag': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-google-tag-manager': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-sitemap': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-classic': 3.6.3(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-search-algolia': 3.6.3(@algolia/client-search@5.18.0)(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.7.2) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) transitivePeerDependencies: - '@algolia/client-search' + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' - '@types/react' + - acorn - bufferutil - csso - debug @@ -17993,14 +16395,14 @@ snapshots: '@docusaurus/react-loadable@6.0.0(react@18.3.1)': dependencies: - '@types/react': 19.0.1 + '@types/react': 19.0.2 react: 18.3.1 - '@docusaurus/remark-plugin-npm2yarn@3.5.2': + '@docusaurus/remark-plugin-npm2yarn@3.6.3': dependencies: mdast-util-mdx: 3.0.0 - npm-to-yarn: 2.2.1 - tslib: 2.7.0 + npm-to-yarn: 3.0.0 + tslib: 2.8.1 unified: 11.0.5 unist-util-visit: 5.0.0 transitivePeerDependencies: @@ -18012,28 +16414,29 @@ snapshots: optionalDependencies: sharp: 0.32.6 - '@docusaurus/theme-classic@3.5.2(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/theme-classic@3.6.3(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/module-type-aliases': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-blog': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-docs': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/plugin-content-pages': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-translations': 3.5.2 - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@mdx-js/react': 3.0.1(@types/react@19.0.1)(react@18.3.1) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/module-type-aliases': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/plugin-content-blog': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-docs': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/plugin-content-pages': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-translations': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@mdx-js/react': 3.1.0(@types/react@19.0.2)(react@18.3.1) clsx: 2.1.1 copy-text-to-clipboard: 3.2.0 - infima: 0.2.0-alpha.44 + infima: 0.2.0-alpha.45 lodash: 4.17.21 nprogress: 0.2.0 postcss: 8.4.49 - prism-react-renderer: 2.4.0(react@18.3.1) + prism-react-renderer: 2.4.1(react@18.3.1) prismjs: 1.29.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -18042,11 +16445,13 @@ snapshots: tslib: 2.8.1 utility-types: 3.11.0 transitivePeerDependencies: + - '@docusaurus/faster' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' - '@types/react' + - acorn - bufferutil - csso - debug @@ -18060,61 +16465,62 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/theme-common@3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2)': + '@docusaurus/theme-common@3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/mdx-loader': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/module-type-aliases': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@docusaurus/plugin-content-docs': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + '@docusaurus/mdx-loader': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/module-type-aliases': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/plugin-content-docs': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 '@types/react-router-config': 5.0.11 clsx: 2.1.1 parse-numeric-range: 1.3.0 - prism-react-renderer: 2.4.0(react@18.3.1) + prism-react-renderer: 2.4.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - tslib: 2.7.0 + tslib: 2.8.1 utility-types: 3.11.0 transitivePeerDependencies: - - '@docusaurus/types' - '@swc/core' + - acorn - esbuild - supports-color - typescript - uglify-js - webpack-cli - '@docusaurus/theme-search-algolia@3.5.2(@algolia/client-search@4.24.0)(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(@types/react@19.0.1)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)(typescript@5.6.2)': + '@docusaurus/theme-search-algolia@3.6.3(@algolia/client-search@5.18.0)(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(@types/react@19.0.2)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.7.2)': dependencies: - '@docsearch/react': 3.6.1(@algolia/client-search@4.24.0)(@types/react@19.0.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2) - '@docusaurus/core': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/logger': 3.5.2 - '@docusaurus/plugin-content-docs': 3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-common': 3.5.2(@docusaurus/plugin-content-docs@3.5.2(@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1))(@swc/core@1.7.26)(eslint@9.10.0(jiti@1.21.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2))(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.2) - '@docusaurus/theme-translations': 3.5.2 - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-validation': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) + '@docsearch/react': 3.8.2(@algolia/client-search@5.18.0)(@types/react@19.0.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) + '@docusaurus/core': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/plugin-content-docs': 3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-common': 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1))(@swc/core@1.10.1)(acorn@8.14.0)(eslint@9.17.0(jiti@2.4.2))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2))(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/theme-translations': 3.6.3 + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-validation': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) algoliasearch: 4.24.0 - algoliasearch-helper: 3.22.5(algoliasearch@4.24.0) + algoliasearch-helper: 3.22.6(algoliasearch@4.24.0) clsx: 2.1.1 eta: 2.2.0 fs-extra: 11.2.0 lodash: 4.17.21 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - tslib: 2.7.0 + tslib: 2.8.1 utility-types: 3.11.0 transitivePeerDependencies: - '@algolia/client-search' - - '@docusaurus/types' + - '@docusaurus/faster' - '@mdx-js/react' - '@parcel/css' - '@rspack/core' - '@swc/core' - '@swc/css' - '@types/react' + - acorn - bufferutil - csso - debug @@ -18129,85 +16535,98 @@ snapshots: - vue-template-compiler - webpack-cli - '@docusaurus/theme-translations@3.5.2': + '@docusaurus/theme-translations@3.6.3': dependencies: fs-extra: 11.2.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@docusaurus/tsconfig@3.5.2': {} + '@docusaurus/tsconfig@3.6.3': {} - '@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@docusaurus/types@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@mdx-js/mdx': 3.0.1 + '@mdx-js/mdx': 3.1.0(acorn@8.14.0) '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 commander: 5.1.0 joi: 17.13.3 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) react-helmet-async: 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) utility-types: 3.11.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) webpack-merge: 5.10.0 transitivePeerDependencies: - '@swc/core' + - acorn - esbuild - supports-color - uglify-js - webpack-cli - '@docusaurus/utils-common@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))': + '@docusaurus/utils-common@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - tslib: 2.7.0 - optionalDependencies: - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + tslib: 2.8.1 + transitivePeerDependencies: + - '@swc/core' + - acorn + - esbuild + - react + - react-dom + - supports-color + - uglify-js + - webpack-cli - '@docusaurus/utils-validation@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2)': + '@docusaurus/utils-validation@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/logger': 3.5.2 - '@docusaurus/utils': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2) - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + '@docusaurus/logger': 3.6.3 + '@docusaurus/utils': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) fs-extra: 11.2.0 joi: 17.13.3 js-yaml: 4.1.0 lodash: 4.17.21 tslib: 2.8.1 transitivePeerDependencies: - - '@docusaurus/types' - '@swc/core' + - acorn - esbuild + - react + - react-dom - supports-color - typescript - uglify-js - webpack-cli - '@docusaurus/utils@3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@swc/core@1.7.26)(typescript@5.6.2)': + '@docusaurus/utils@3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.2)': dependencies: - '@docusaurus/logger': 3.5.2 - '@docusaurus/utils-common': 3.5.2(@docusaurus/types@3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - '@svgr/webpack': 8.1.0(typescript@5.6.2) + '@docusaurus/logger': 3.6.3 + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/utils-common': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@svgr/webpack': 8.1.0(typescript@5.7.2) escape-string-regexp: 4.0.0 - file-loader: 6.2.0(webpack@5.94.0(@swc/core@1.7.26)) + file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.10.1)) fs-extra: 11.2.0 github-slugger: 1.5.0 globby: 11.1.0 gray-matter: 4.0.3 - jiti: 1.21.6 + jiti: 1.21.7 js-yaml: 4.1.0 lodash: 4.17.21 micromatch: 4.0.8 prompts: 2.4.2 resolve-pathname: 3.0.0 shelljs: 0.8.5 - tslib: 2.7.0 - url-loader: 4.1.1(file-loader@6.2.0(webpack@5.94.0(@swc/core@1.7.26)))(webpack@5.94.0(@swc/core@1.7.26)) + tslib: 2.8.1 + url-loader: 4.1.1(file-loader@6.2.0(webpack@5.97.1(@swc/core@1.10.1)))(webpack@5.97.1(@swc/core@1.10.1)) utility-types: 3.11.0 - webpack: 5.94.0(@swc/core@1.7.26) - optionalDependencies: - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: - '@swc/core' + - acorn - esbuild + - react + - react-dom - supports-color - typescript - uglify-js @@ -18447,45 +16866,30 @@ snapshots: '@esbuild/win32-x64@0.24.0': optional: true - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.1)': + '@eslint-community/eslint-utils@4.4.1(eslint@9.17.0(jiti@2.4.2))': dependencies: - eslint: 8.57.1 + eslint: 9.17.0(jiti@2.4.2) eslint-visitor-keys: 3.4.3 - '@eslint-community/eslint-utils@4.4.0(eslint@9.10.0(jiti@1.21.6))': - dependencies: - eslint: 9.10.0(jiti@1.21.6) - eslint-visitor-keys: 3.4.3 + '@eslint-community/regexpp@4.12.1': {} - '@eslint-community/regexpp@4.11.1': {} - - '@eslint/config-array@0.18.0': + '@eslint/config-array@0.19.1': dependencies: - '@eslint/object-schema': 2.1.4 - debug: 4.4.0 + '@eslint/object-schema': 2.1.5 + debug: 4.4.0(supports-color@8.1.1) minimatch: 3.1.2 transitivePeerDependencies: - supports-color - '@eslint/eslintrc@2.1.4': + '@eslint/core@0.9.1': dependencies: - ajv: 6.12.6 - debug: 4.4.0 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.2 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color + '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.1.0': + '@eslint/eslintrc@3.2.0': dependencies: ajv: 6.12.6 - debug: 4.4.0 - espree: 10.1.0 + debug: 4.4.0(supports-color@8.1.1) + espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 import-fresh: 3.3.0 @@ -18495,21 +16899,19 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@8.57.1': {} + '@eslint/js@9.17.0': {} - '@eslint/js@9.10.0': {} + '@eslint/object-schema@2.1.5': {} - '@eslint/object-schema@2.1.4': {} - - '@eslint/plugin-kit@0.1.0': + '@eslint/plugin-kit@0.2.4': dependencies: levn: 0.4.1 '@gar/promisify@1.1.3': {} - '@graphql-typed-document-node/core@3.2.0(graphql@16.9.0)': + '@graphql-typed-document-node/core@3.2.0(graphql@16.10.0)': dependencies: - graphql: 16.9.0 + graphql: 16.10.0 '@hapi/hoek@9.3.0': {} @@ -18517,43 +16919,29 @@ snapshots: dependencies: '@hapi/hoek': 9.3.0 - '@humanwhocodes/config-array@0.13.0': + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.6': dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.4.0 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 '@humanwhocodes/module-importer@1.0.1': {} - '@humanwhocodes/object-schema@2.0.3': {} + '@humanwhocodes/retry@0.3.1': {} - '@humanwhocodes/retry@0.3.0': {} + '@humanwhocodes/retry@0.4.1': {} '@hutson/parse-repository-url@3.0.2': {} - '@inquirer/checkbox@2.5.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 - '@inquirer/type': 1.5.5 - ansi-escapes: 4.3.2 - yoctocolors-cjs: 2.1.2 - '@inquirer/checkbox@3.0.1': dependencies: '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 + '@inquirer/figures': 1.0.8 '@inquirer/type': 2.0.0 ansi-escapes: 4.3.2 yoctocolors-cjs: 2.1.2 - '@inquirer/confirm@3.2.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - '@inquirer/confirm@4.0.1': dependencies: '@inquirer/core': 9.2.1 @@ -18561,7 +16949,7 @@ snapshots: '@inquirer/core@9.2.1': dependencies: - '@inquirer/figures': 1.0.6 + '@inquirer/figures': 1.0.8 '@inquirer/type': 2.0.0 '@types/mute-stream': 0.0.4 '@types/node': 22.10.2 @@ -18574,77 +16962,36 @@ snapshots: wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 - '@inquirer/editor@2.2.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - external-editor: 3.1.0 - '@inquirer/editor@3.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 external-editor: 3.1.0 - '@inquirer/expand@2.3.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - yoctocolors-cjs: 2.1.2 - '@inquirer/expand@3.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 yoctocolors-cjs: 2.1.2 - '@inquirer/figures@1.0.6': {} - - '@inquirer/input@2.3.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 + '@inquirer/figures@1.0.8': {} '@inquirer/input@3.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 - '@inquirer/number@1.1.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - '@inquirer/number@2.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 - '@inquirer/password@2.2.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - ansi-escapes: 4.3.2 - '@inquirer/password@3.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 ansi-escapes: 4.3.2 - '@inquirer/prompts@5.5.0': - dependencies: - '@inquirer/checkbox': 2.5.0 - '@inquirer/confirm': 3.2.0 - '@inquirer/editor': 2.2.0 - '@inquirer/expand': 2.3.0 - '@inquirer/input': 2.3.0 - '@inquirer/number': 1.1.0 - '@inquirer/password': 2.2.0 - '@inquirer/rawlist': 2.3.0 - '@inquirer/search': 1.1.0 - '@inquirer/select': 2.5.0 - '@inquirer/prompts@6.0.1': dependencies: '@inquirer/checkbox': 3.0.1 @@ -18658,52 +17005,27 @@ snapshots: '@inquirer/search': 2.0.1 '@inquirer/select': 3.0.1 - '@inquirer/rawlist@2.3.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/type': 1.5.5 - yoctocolors-cjs: 2.1.2 - '@inquirer/rawlist@3.0.1': dependencies: '@inquirer/core': 9.2.1 '@inquirer/type': 2.0.0 yoctocolors-cjs: 2.1.2 - '@inquirer/search@1.1.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 - '@inquirer/type': 1.5.5 - yoctocolors-cjs: 2.1.2 - '@inquirer/search@2.0.1': dependencies: '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 + '@inquirer/figures': 1.0.8 '@inquirer/type': 2.0.0 yoctocolors-cjs: 2.1.2 - '@inquirer/select@2.5.0': - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 - '@inquirer/type': 1.5.5 - ansi-escapes: 4.3.2 - yoctocolors-cjs: 2.1.2 - '@inquirer/select@3.0.1': dependencies: '@inquirer/core': 9.2.1 - '@inquirer/figures': 1.0.6 + '@inquirer/figures': 1.0.8 '@inquirer/type': 2.0.0 ansi-escapes: 4.3.2 yoctocolors-cjs: 2.1.2 - '@inquirer/type@1.5.5': - dependencies: - mute-stream: 1.0.0 - '@inquirer/type@2.0.0': dependencies: mute-stream: 1.0.0 @@ -18748,7 +17070,7 @@ snapshots: '@jest/schemas@30.0.0-alpha.6': dependencies: - '@sinclair/typebox': 0.33.15 + '@sinclair/typebox': 0.33.22 '@jest/types@29.6.3': dependencies: @@ -18769,7 +17091,7 @@ snapshots: '@types/yargs': 17.0.33 chalk: 4.1.2 - '@jridgewell/gen-mapping@0.3.5': + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 @@ -18781,7 +17103,7 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.5.0': {} @@ -18791,16 +17113,16 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@jspm/core@2.0.1': {} + '@jspm/core@2.1.0': {} '@leichtgewicht/ip-codec@2.0.5': {} - '@lerna/create@8.1.9(@swc/core@1.7.26)(encoding@0.1.13)(typescript@5.6.3)': + '@lerna/create@8.1.9(@swc/core@1.10.1)(encoding@0.1.13)(typescript@5.7.2)': dependencies: '@npmcli/arborist': 7.5.4 '@npmcli/package-json': 5.2.0 '@npmcli/run-script': 8.1.0 - '@nx/devkit': 20.0.8(nx@20.0.8(@swc/core@1.7.26)) + '@nx/devkit': 20.2.2(nx@20.2.2(@swc/core@1.10.1)) '@octokit/plugin-enterprise-rest': 6.0.1 '@octokit/rest': 19.0.11(encoding@0.1.13) aproba: 2.0.0 @@ -18813,7 +17135,7 @@ snapshots: console-control-strings: 1.1.0 conventional-changelog-core: 5.0.1 conventional-recommended-bump: 7.0.1 - cosmiconfig: 9.0.0(typescript@5.6.3) + cosmiconfig: 9.0.0(typescript@5.7.2) dedent: 1.5.3 execa: 5.0.0 fs-extra: 11.2.0 @@ -18839,7 +17161,7 @@ snapshots: npm-package-arg: 11.0.2 npm-packlist: 8.0.2 npm-registry-fetch: 17.1.0 - nx: 20.0.8(@swc/core@1.7.26) + nx: 20.2.2(@swc/core@1.10.1) p-map: 4.0.0 p-map-series: 2.1.0 p-queue: 6.6.2 @@ -18884,7 +17206,7 @@ snapshots: dependencies: '@lit-labs/ssr-dom-shim': 1.2.1 - '@mdx-js/mdx@3.0.1': + '@mdx-js/mdx@3.1.0(acorn@8.14.0)': dependencies: '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 @@ -18892,17 +17214,18 @@ snapshots: '@types/mdx': 2.0.13 collapse-white-space: 2.1.0 devlop: 1.1.0 - estree-util-build-jsx: 3.0.1 estree-util-is-identifier-name: 3.0.0 - estree-util-to-js: 2.0.0 + estree-util-scope: 1.0.0 estree-walker: 3.0.3 - hast-util-to-estree: 3.1.0 - hast-util-to-jsx-runtime: 2.3.0 + hast-util-to-jsx-runtime: 2.3.2 markdown-extensions: 2.0.0 - periscopic: 3.1.0 - remark-mdx: 3.0.1 + recma-build-jsx: 1.0.0 + recma-jsx: 1.0.0(acorn@8.14.0) + recma-stringify: 1.0.0 + rehype-recma: 1.0.0 + remark-mdx: 3.1.0 remark-parse: 11.0.0 - remark-rehype: 11.1.0 + remark-rehype: 11.1.1 source-map: 0.7.4 unified: 11.0.5 unist-util-position-from-estree: 2.0.0 @@ -18910,18 +17233,19 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 transitivePeerDependencies: + - acorn - supports-color - '@mdx-js/react@3.0.1(@types/react@19.0.1)(react@18.3.1)': + '@mdx-js/react@3.1.0(@types/react@19.0.2)(react@18.3.1)': dependencies: '@types/mdx': 2.0.13 - '@types/react': 19.0.1 + '@types/react': 19.0.2 react: 18.3.1 '@mendable/search@0.0.206(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: html-react-parser: 4.2.10(react@18.3.1) - posthog-js: 1.161.5 + posthog-js: 1.202.2 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -18940,7 +17264,7 @@ snapshots: '@emnapi/runtime': 1.3.1 '@tybys/wasm-util': 0.9.0 - '@noble/hashes@1.5.0': {} + '@noble/hashes@1.6.1': {} '@nodelib/fs.scandir@2.1.5': dependencies: @@ -18960,7 +17284,7 @@ snapshots: http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 10.4.3 - socks-proxy-agent: 8.0.4 + socks-proxy-agent: 8.0.5 transitivePeerDependencies: - supports-color @@ -19087,102 +17411,102 @@ snapshots: '@npmcli/node-gyp': 3.0.0 '@npmcli/package-json': 5.2.0 '@npmcli/promise-spawn': 7.0.2 - node-gyp: 10.2.0 + node-gyp: 10.3.1 proc-log: 4.2.0 which: 4.0.0 transitivePeerDependencies: - bluebird - supports-color - '@nuxt/kit@3.13.2(magicast@0.3.5)(rollup@4.28.1)(webpack-sources@3.2.3)': + '@nuxt/kit@3.14.1592(magicast@0.3.5)(rollup@4.28.1)': dependencies: - '@nuxt/schema': 3.13.2(rollup@4.28.1)(webpack-sources@3.2.3) - c12: 1.11.2(magicast@0.3.5) + '@nuxt/schema': 3.14.1592(magicast@0.3.5)(rollup@4.28.1) + c12: 2.0.1(magicast@0.3.5) consola: 3.2.3 defu: 6.1.4 destr: 2.0.3 globby: 14.0.2 hash-sum: 2.0.0 - ignore: 5.3.2 - jiti: 1.21.6 + ignore: 6.0.2 + jiti: 2.4.2 klona: 2.0.6 - knitwork: 1.1.0 - mlly: 1.7.2 + knitwork: 1.2.0 + mlly: 1.7.3 pathe: 1.1.2 - pkg-types: 1.2.0 + pkg-types: 1.2.1 scule: 1.3.0 semver: 7.6.3 ufo: 1.5.4 - unctx: 2.3.1(webpack-sources@3.2.3) - unimport: 3.12.0(rollup@4.28.1)(webpack-sources@3.2.3) - untyped: 1.4.2 + unctx: 2.4.1 + unimport: 3.14.5(rollup@4.28.1) + untyped: 1.5.2 transitivePeerDependencies: - magicast - rollup - supports-color - - webpack-sources optional: true - '@nuxt/schema@3.13.2(rollup@4.28.1)(webpack-sources@3.2.3)': + '@nuxt/schema@3.14.1592(magicast@0.3.5)(rollup@4.28.1)': dependencies: + c12: 2.0.1(magicast@0.3.5) compatx: 0.1.8 consola: 3.2.3 defu: 6.1.4 hookable: 5.5.3 pathe: 1.1.2 - pkg-types: 1.2.0 + pkg-types: 1.2.1 scule: 1.3.0 std-env: 3.8.0 ufo: 1.5.4 uncrypto: 0.1.3 - unimport: 3.12.0(rollup@4.28.1)(webpack-sources@3.2.3) - untyped: 1.4.2 + unimport: 3.14.5(rollup@4.28.1) + untyped: 1.5.2 transitivePeerDependencies: + - magicast - rollup - supports-color - - webpack-sources optional: true - '@nx/devkit@20.0.8(nx@20.0.8(@swc/core@1.7.26))': + '@nx/devkit@20.2.2(nx@20.2.2(@swc/core@1.10.1))': dependencies: ejs: 3.1.10 enquirer: 2.3.6 ignore: 5.3.2 minimatch: 9.0.3 - nx: 20.0.8(@swc/core@1.7.26) + nx: 20.2.2(@swc/core@1.10.1) semver: 7.6.3 tmp: 0.2.3 tslib: 2.8.1 yargs-parser: 21.1.1 - '@nx/nx-darwin-arm64@20.0.8': + '@nx/nx-darwin-arm64@20.2.2': optional: true - '@nx/nx-darwin-x64@20.0.8': + '@nx/nx-darwin-x64@20.2.2': optional: true - '@nx/nx-freebsd-x64@20.0.8': + '@nx/nx-freebsd-x64@20.2.2': optional: true - '@nx/nx-linux-arm-gnueabihf@20.0.8': + '@nx/nx-linux-arm-gnueabihf@20.2.2': optional: true - '@nx/nx-linux-arm64-gnu@20.0.8': + '@nx/nx-linux-arm64-gnu@20.2.2': optional: true - '@nx/nx-linux-arm64-musl@20.0.8': + '@nx/nx-linux-arm64-musl@20.2.2': optional: true - '@nx/nx-linux-x64-gnu@20.0.8': + '@nx/nx-linux-x64-gnu@20.2.2': optional: true - '@nx/nx-linux-x64-musl@20.0.8': + '@nx/nx-linux-x64-musl@20.2.2': optional: true - '@nx/nx-win32-arm64-msvc@20.0.8': + '@nx/nx-win32-arm64-msvc@20.2.2': optional: true - '@nx/nx-win32-x64-msvc@20.0.8': + '@nx/nx-win32-x64-msvc@20.2.2': optional: true '@octokit/auth-token@3.0.4': {} @@ -19206,14 +17530,14 @@ snapshots: '@octokit/auth-token': 5.1.1 '@octokit/graphql': 8.1.1 '@octokit/request': 9.1.3 - '@octokit/request-error': 6.1.4 - '@octokit/types': 13.5.0 + '@octokit/request-error': 6.1.5 + '@octokit/types': 13.6.2 before-after-hook: 3.0.2 universal-user-agent: 7.0.2 '@octokit/endpoint@10.1.1': dependencies: - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.2 universal-user-agent: 7.0.2 '@octokit/endpoint@7.0.6': @@ -19233,7 +17557,7 @@ snapshots: '@octokit/graphql@8.1.1': dependencies: '@octokit/request': 9.1.3 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.2 universal-user-agent: 7.0.2 '@octokit/openapi-types@18.1.1': {} @@ -19242,10 +17566,10 @@ snapshots: '@octokit/plugin-enterprise-rest@6.0.1': {} - '@octokit/plugin-paginate-rest@11.3.3(@octokit/core@6.1.2)': + '@octokit/plugin-paginate-rest@11.3.6(@octokit/core@6.1.2)': dependencies: '@octokit/core': 6.1.2 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.2 '@octokit/plugin-paginate-rest@6.1.2(@octokit/core@4.2.4(encoding@0.1.13))': dependencies: @@ -19261,10 +17585,10 @@ snapshots: dependencies: '@octokit/core': 6.1.2 - '@octokit/plugin-rest-endpoint-methods@13.2.4(@octokit/core@6.1.2)': + '@octokit/plugin-rest-endpoint-methods@13.2.6(@octokit/core@6.1.2)': dependencies: '@octokit/core': 6.1.2 - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.2 '@octokit/plugin-rest-endpoint-methods@7.2.3(@octokit/core@4.2.4(encoding@0.1.13))': dependencies: @@ -19277,9 +17601,9 @@ snapshots: deprecation: 2.3.1 once: 1.4.0 - '@octokit/request-error@6.1.4': + '@octokit/request-error@6.1.5': dependencies: - '@octokit/types': 13.5.0 + '@octokit/types': 13.6.2 '@octokit/request@6.2.8(encoding@0.1.13)': dependencies: @@ -19287,7 +17611,7 @@ snapshots: '@octokit/request-error': 3.0.3 '@octokit/types': 9.3.2 is-plain-object: 5.0.0 - node-fetch: 2.7.0(encoding@0.1.13) + node-fetch: 2.6.7(encoding@0.1.13) universal-user-agent: 6.0.1 transitivePeerDependencies: - encoding @@ -19295,8 +17619,8 @@ snapshots: '@octokit/request@9.1.3': dependencies: '@octokit/endpoint': 10.1.1 - '@octokit/request-error': 6.1.4 - '@octokit/types': 13.5.0 + '@octokit/request-error': 6.1.5 + '@octokit/types': 13.6.2 universal-user-agent: 7.0.2 '@octokit/rest@19.0.11(encoding@0.1.13)': @@ -19311,9 +17635,9 @@ snapshots: '@octokit/rest@21.0.2': dependencies: '@octokit/core': 6.1.2 - '@octokit/plugin-paginate-rest': 11.3.3(@octokit/core@6.1.2) + '@octokit/plugin-paginate-rest': 11.3.6(@octokit/core@6.1.2) '@octokit/plugin-request-log': 5.3.1(@octokit/core@6.1.2) - '@octokit/plugin-rest-endpoint-methods': 13.2.4(@octokit/core@6.1.2) + '@octokit/plugin-rest-endpoint-methods': 13.2.6(@octokit/core@6.1.2) '@octokit/tsconfig@1.0.2': {} @@ -19321,7 +17645,7 @@ snapshots: dependencies: '@octokit/openapi-types': 18.1.1 - '@octokit/types@13.5.0': + '@octokit/types@13.6.2': dependencies: '@octokit/openapi-types': 22.2.0 @@ -19348,18 +17672,18 @@ snapshots: '@paralleldrive/cuid2@2.2.2': dependencies: - '@noble/hashes': 1.5.0 + '@noble/hashes': 1.6.1 - '@percy/appium-app@2.0.8': + '@percy/appium-app@2.0.9': dependencies: - '@percy/sdk-utils': 1.29.3 + '@percy/sdk-utils': 1.30.5 tmp: 0.2.3 - '@percy/sdk-utils@1.29.3': {} + '@percy/sdk-utils@1.30.5': {} - '@percy/selenium-webdriver@2.0.5': + '@percy/selenium-webdriver@2.1.0': dependencies: - '@percy/sdk-utils': 1.29.3 + '@percy/sdk-utils': 1.30.5 node-request-interceptor: 0.6.3 transitivePeerDependencies: - supports-color @@ -19383,45 +17707,45 @@ snapshots: '@polka/url@0.5.0': {} - '@polka/url@1.0.0-next.25': {} + '@polka/url@1.0.0-next.28': {} - '@preact/preset-vite@2.9.3(@babel/core@7.26.0)(preact@10.24.0)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@preact/preset-vite@2.9.3(@babel/core@7.26.0)(preact@10.25.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: '@babel/code-frame': 7.26.2 '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-development': 7.25.9(@babel/core@7.26.0) - '@prefresh/vite': 2.4.6(preact@10.24.0)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + '@prefresh/vite': 2.4.6(preact@10.25.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@rollup/pluginutils': 4.2.1 babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.26.0) - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) kolorist: 1.8.0 magic-string: 0.30.5 node-html-parser: 6.1.13 source-map: 0.7.4 stack-trace: 1.0.0-pre2 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - preact - supports-color '@prefresh/babel-plugin@0.5.1': {} - '@prefresh/core@1.5.3(preact@10.24.0)': + '@prefresh/core@1.5.3(preact@10.25.2)': dependencies: - preact: 10.24.0 + preact: 10.25.2 '@prefresh/utils@1.2.0': {} - '@prefresh/vite@2.4.6(preact@10.24.0)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@prefresh/vite@2.4.6(preact@10.25.2)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: '@babel/core': 7.26.0 '@prefresh/babel-plugin': 0.5.1 - '@prefresh/core': 1.5.3(preact@10.24.0) + '@prefresh/core': 1.5.3(preact@10.25.2) '@prefresh/utils': 1.2.0 '@rollup/pluginutils': 4.2.1 - preact: 10.24.0 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + preact: 10.25.2 + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - supports-color @@ -19429,52 +17753,9 @@ snapshots: dependencies: spacetrim: 0.11.59 - '@promptbook/utils@0.70.0-1': - dependencies: - spacetrim: 0.11.39 - '@puppeteer/browsers@2.3.0': dependencies: - debug: 4.4.0 - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.4.0 - semver: 7.6.3 - tar-fs: 3.0.6 - unbzip2-stream: 1.4.3 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color - - '@puppeteer/browsers@2.3.1': - dependencies: - debug: 4.4.0 - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.4.0 - semver: 7.6.3 - tar-fs: 3.0.6 - unbzip2-stream: 1.4.3 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color - - '@puppeteer/browsers@2.4.0': - dependencies: - debug: 4.3.7(supports-color@8.1.1) - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.4.0 - semver: 7.6.3 - tar-fs: 3.0.6 - unbzip2-stream: 1.4.3 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color - - '@puppeteer/browsers@2.6.1': - dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) extract-zip: 2.0.1 progress: 2.0.3 proxy-agent: 6.5.0 @@ -19485,9 +17766,35 @@ snapshots: transitivePeerDependencies: - supports-color - '@rollup/plugin-babel@5.3.1(@babel/core@7.25.8)(@types/babel__core@7.20.5)(rollup@2.79.2)': + '@puppeteer/browsers@2.4.0': dependencies: - '@babel/core': 7.25.8 + debug: 4.4.0(supports-color@8.1.1) + extract-zip: 2.0.1 + progress: 2.0.3 + proxy-agent: 6.5.0 + semver: 7.6.3 + tar-fs: 3.0.6 + unbzip2-stream: 1.4.3 + yargs: 17.7.2 + transitivePeerDependencies: + - supports-color + + '@puppeteer/browsers@2.6.1': + dependencies: + debug: 4.4.0(supports-color@8.1.1) + extract-zip: 2.0.1 + progress: 2.0.3 + proxy-agent: 6.5.0 + semver: 7.6.3 + tar-fs: 3.0.6 + unbzip2-stream: 1.4.3 + yargs: 17.7.2 + transitivePeerDependencies: + - supports-color + + '@rollup/plugin-babel@5.3.1(@babel/core@7.26.0)(@types/babel__core@7.20.5)(rollup@2.79.2)': + dependencies: + '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@rollup/pluginutils': 3.1.0(rollup@2.79.2) rollup: 2.79.2 @@ -19496,14 +17803,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@rollup/plugin-node-resolve@15.2.3(rollup@2.79.2)': + '@rollup/plugin-node-resolve@15.3.1(rollup@2.79.2)': dependencies: - '@rollup/pluginutils': 5.1.3(rollup@2.79.2) + '@rollup/pluginutils': 5.1.4(rollup@2.79.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 - is-builtin-module: 3.2.1 is-module: 1.0.0 - resolve: 1.22.8 + resolve: 1.22.9 optionalDependencies: rollup: 2.79.2 @@ -19517,7 +17823,7 @@ snapshots: dependencies: serialize-javascript: 6.0.2 smob: 1.5.0 - terser: 5.32.0 + terser: 5.37.0 optionalDependencies: rollup: 2.79.2 @@ -19537,15 +17843,7 @@ snapshots: estree-walker: 2.0.2 picomatch: 2.3.1 - '@rollup/pluginutils@5.1.0(rollup@4.28.1)': - dependencies: - '@types/estree': 1.0.6 - estree-walker: 2.0.2 - picomatch: 2.3.1 - optionalDependencies: - rollup: 4.28.1 - - '@rollup/pluginutils@5.1.3(rollup@2.79.2)': + '@rollup/pluginutils@5.1.4(rollup@2.79.2)': dependencies: '@types/estree': 1.0.6 estree-walker: 2.0.2 @@ -19553,39 +17851,23 @@ snapshots: optionalDependencies: rollup: 2.79.2 - '@rollup/rollup-android-arm-eabi@4.21.3': - optional: true - - '@rollup/rollup-android-arm-eabi@4.24.0': - optional: true + '@rollup/pluginutils@5.1.4(rollup@4.28.1)': + dependencies: + '@types/estree': 1.0.6 + estree-walker: 2.0.2 + picomatch: 4.0.2 + optionalDependencies: + rollup: 4.28.1 '@rollup/rollup-android-arm-eabi@4.28.1': optional: true - '@rollup/rollup-android-arm64@4.21.3': - optional: true - - '@rollup/rollup-android-arm64@4.24.0': - optional: true - '@rollup/rollup-android-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-arm64@4.21.3': - optional: true - - '@rollup/rollup-darwin-arm64@4.24.0': - optional: true - '@rollup/rollup-darwin-arm64@4.28.1': optional: true - '@rollup/rollup-darwin-x64@4.21.3': - optional: true - - '@rollup/rollup-darwin-x64@4.24.0': - optional: true - '@rollup/rollup-darwin-x64@4.28.1': optional: true @@ -19595,122 +17877,48 @@ snapshots: '@rollup/rollup-freebsd-x64@4.28.1': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.21.3': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': - optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.21.3': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.24.0': - optional: true - '@rollup/rollup-linux-arm-musleabihf@4.28.1': optional: true - '@rollup/rollup-linux-arm64-gnu@4.21.3': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.24.0': - optional: true - '@rollup/rollup-linux-arm64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-arm64-musl@4.21.3': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.24.0': - optional: true - '@rollup/rollup-linux-arm64-musl@4.28.1': optional: true '@rollup/rollup-linux-loongarch64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.21.3': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': - optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.28.1': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.21.3': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.24.0': - optional: true - '@rollup/rollup-linux-riscv64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-s390x-gnu@4.21.3': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.24.0': - optional: true - '@rollup/rollup-linux-s390x-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-gnu@4.21.3': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.24.0': - optional: true - '@rollup/rollup-linux-x64-gnu@4.28.1': optional: true - '@rollup/rollup-linux-x64-musl@4.21.3': - optional: true - - '@rollup/rollup-linux-x64-musl@4.24.0': - optional: true - '@rollup/rollup-linux-x64-musl@4.28.1': optional: true - '@rollup/rollup-win32-arm64-msvc@4.21.3': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.24.0': - optional: true - '@rollup/rollup-win32-arm64-msvc@4.28.1': optional: true - '@rollup/rollup-win32-ia32-msvc@4.21.3': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.24.0': - optional: true - '@rollup/rollup-win32-ia32-msvc@4.28.1': optional: true - '@rollup/rollup-win32-x64-msvc@4.21.3': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.24.0': - optional: true - '@rollup/rollup-win32-x64-msvc@4.28.1': optional: true - '@rtsao/scc@1.1.0': {} - '@sec-ant/readable-stream@0.4.1': {} - '@serenity-js/core@3.29.5': + '@serenity-js/core@3.31.1': dependencies: '@paralleldrive/cuid2': 2.2.2 chalk: 4.1.2 @@ -19722,7 +17930,7 @@ snapshots: semver: 7.6.3 tiny-types: 1.23.0 upath: 2.0.1 - validate-npm-package-name: 5.0.1 + validate-npm-package-name: 6.0.0 '@sideway/address@4.1.5': dependencies: @@ -19766,7 +17974,7 @@ snapshots: '@sinclair/typebox@0.27.8': {} - '@sinclair/typebox@0.33.15': {} + '@sinclair/typebox@0.33.22': {} '@sindresorhus/is@0.14.0': {} @@ -19783,7 +17991,7 @@ snapshots: dependencies: type-detect: 4.0.8 - '@sinonjs/fake-timers@13.0.2': + '@sinonjs/fake-timers@13.0.5': dependencies: '@sinonjs/commons': 3.0.1 @@ -19799,163 +18007,109 @@ snapshots: micromark-util-character: 1.2.0 micromark-util-symbol: 1.1.0 - '@smithy/abort-controller@3.1.4': + '@smithy/abort-controller@3.1.9': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/abort-controller@3.1.8': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/chunked-blob-reader-native@3.0.0': + '@smithy/chunked-blob-reader-native@3.0.1': dependencies: '@smithy/util-base64': 3.0.0 - tslib: 2.7.0 - - '@smithy/chunked-blob-reader@3.0.0': - dependencies: - tslib: 2.7.0 - - '@smithy/config-resolver@3.0.12': - dependencies: - '@smithy/node-config-provider': 3.1.11 - '@smithy/types': 3.7.1 - '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.10 tslib: 2.8.1 - '@smithy/config-resolver@3.0.8': + '@smithy/chunked-blob-reader@4.0.0': dependencies: - '@smithy/node-config-provider': 3.1.7 - '@smithy/types': 3.4.2 + tslib: 2.8.1 + + '@smithy/config-resolver@3.0.13': + dependencies: + '@smithy/node-config-provider': 3.1.12 + '@smithy/types': 3.7.2 '@smithy/util-config-provider': 3.0.0 - '@smithy/util-middleware': 3.0.6 - tslib: 2.7.0 + '@smithy/util-middleware': 3.0.11 + tslib: 2.8.1 - '@smithy/core@2.4.6': + '@smithy/core@2.5.5': dependencies: - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-retry': 3.0.21 - '@smithy/middleware-serde': 3.0.6 - '@smithy/protocol-http': 4.1.3 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 + '@smithy/middleware-serde': 3.0.11 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/core@2.5.3': - dependencies: - '@smithy/middleware-serde': 3.0.10 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-stream': 3.3.1 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-stream': 3.3.2 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 - '@smithy/credential-provider-imds@3.2.3': + '@smithy/credential-provider-imds@3.2.8': dependencies: - '@smithy/node-config-provider': 3.1.7 - '@smithy/property-provider': 3.1.6 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 - tslib: 2.7.0 - - '@smithy/credential-provider-imds@3.2.7': - dependencies: - '@smithy/node-config-provider': 3.1.11 - '@smithy/property-provider': 3.1.10 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 + '@smithy/node-config-provider': 3.1.12 + '@smithy/property-provider': 3.1.11 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 tslib: 2.8.1 - '@smithy/eventstream-codec@3.1.5': + '@smithy/eventstream-codec@3.1.10': dependencies: '@aws-crypto/crc32': 5.2.0 - '@smithy/types': 3.4.2 + '@smithy/types': 3.7.2 '@smithy/util-hex-encoding': 3.0.0 tslib: 2.8.1 - '@smithy/eventstream-serde-browser@3.0.9': + '@smithy/eventstream-serde-browser@3.0.14': dependencies: - '@smithy/eventstream-serde-universal': 3.0.8 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/eventstream-serde-universal': 3.0.13 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/eventstream-serde-config-resolver@3.0.6': + '@smithy/eventstream-serde-config-resolver@3.0.11': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/eventstream-serde-node@3.0.8': + '@smithy/eventstream-serde-node@3.0.13': dependencies: - '@smithy/eventstream-serde-universal': 3.0.8 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/eventstream-serde-universal': 3.0.13 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/eventstream-serde-universal@3.0.8': + '@smithy/eventstream-serde-universal@3.0.13': dependencies: - '@smithy/eventstream-codec': 3.1.5 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/eventstream-codec': 3.1.10 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/fetch-http-handler@3.2.8': + '@smithy/fetch-http-handler@4.1.2': dependencies: - '@smithy/protocol-http': 4.1.3 - '@smithy/querystring-builder': 3.0.6 - '@smithy/types': 3.4.2 - '@smithy/util-base64': 3.0.0 - tslib: 2.7.0 - - '@smithy/fetch-http-handler@4.1.1': - dependencies: - '@smithy/protocol-http': 4.1.7 - '@smithy/querystring-builder': 3.0.10 - '@smithy/types': 3.7.1 + '@smithy/protocol-http': 4.1.8 + '@smithy/querystring-builder': 3.0.11 + '@smithy/types': 3.7.2 '@smithy/util-base64': 3.0.0 tslib: 2.8.1 - '@smithy/hash-blob-browser@3.1.5': + '@smithy/hash-blob-browser@3.1.10': dependencies: - '@smithy/chunked-blob-reader': 3.0.0 - '@smithy/chunked-blob-reader-native': 3.0.0 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/chunked-blob-reader': 4.0.0 + '@smithy/chunked-blob-reader-native': 3.0.1 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/hash-node@3.0.10': + '@smithy/hash-node@3.0.11': dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 '@smithy/util-buffer-from': 3.0.0 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 - '@smithy/hash-node@3.0.6': + '@smithy/hash-stream-node@3.1.10': dependencies: - '@smithy/types': 3.4.2 - '@smithy/util-buffer-from': 3.0.0 + '@smithy/types': 3.7.2 '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/hash-stream-node@3.1.5': - dependencies: - '@smithy/types': 3.4.2 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/invalid-dependency@3.0.10': - dependencies: - '@smithy/types': 3.7.1 tslib: 2.8.1 - '@smithy/invalid-dependency@3.0.6': + '@smithy/invalid-dependency@3.0.11': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/types': 3.7.2 + tslib: 2.8.1 '@smithy/is-array-buffer@2.2.0': dependencies: @@ -19963,255 +18117,142 @@ snapshots: '@smithy/is-array-buffer@3.0.0': dependencies: - tslib: 2.7.0 + tslib: 2.8.1 - '@smithy/md5-js@3.0.6': + '@smithy/md5-js@3.0.11': dependencies: - '@smithy/types': 3.4.2 + '@smithy/types': 3.7.2 '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/middleware-content-length@3.0.12': - dependencies: - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 tslib: 2.8.1 - '@smithy/middleware-content-length@3.0.8': + '@smithy/middleware-content-length@3.0.13': dependencies: - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/middleware-endpoint@3.1.3': - dependencies: - '@smithy/middleware-serde': 3.0.6 - '@smithy/node-config-provider': 3.1.7 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - '@smithy/url-parser': 3.0.6 - '@smithy/util-middleware': 3.0.6 - tslib: 2.7.0 - - '@smithy/middleware-endpoint@3.2.3': - dependencies: - '@smithy/core': 2.5.3 - '@smithy/middleware-serde': 3.0.10 - '@smithy/node-config-provider': 3.1.11 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 - '@smithy/url-parser': 3.0.10 - '@smithy/util-middleware': 3.0.10 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/middleware-retry@3.0.21': + '@smithy/middleware-endpoint@3.2.5': dependencies: - '@smithy/node-config-provider': 3.1.7 - '@smithy/protocol-http': 4.1.3 - '@smithy/service-error-classification': 3.0.6 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-retry': 3.0.6 - tslib: 2.7.0 - uuid: 9.0.1 + '@smithy/core': 2.5.5 + '@smithy/middleware-serde': 3.0.11 + '@smithy/node-config-provider': 3.1.12 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 + '@smithy/url-parser': 3.0.11 + '@smithy/util-middleware': 3.0.11 + tslib: 2.8.1 - '@smithy/middleware-retry@3.0.27': + '@smithy/middleware-retry@3.0.30': dependencies: - '@smithy/node-config-provider': 3.1.11 - '@smithy/protocol-http': 4.1.7 - '@smithy/service-error-classification': 3.0.10 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 - '@smithy/util-middleware': 3.0.10 - '@smithy/util-retry': 3.0.10 + '@smithy/node-config-provider': 3.1.12 + '@smithy/protocol-http': 4.1.8 + '@smithy/service-error-classification': 3.0.11 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 + '@smithy/util-middleware': 3.0.11 + '@smithy/util-retry': 3.0.11 tslib: 2.8.1 uuid: 9.0.1 - '@smithy/middleware-serde@3.0.10': + '@smithy/middleware-serde@3.0.11': dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/middleware-serde@3.0.6': + '@smithy/middleware-stack@3.0.11': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/middleware-stack@3.0.10': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/middleware-stack@3.0.6': + '@smithy/node-config-provider@3.1.12': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/node-config-provider@3.1.11': - dependencies: - '@smithy/property-provider': 3.1.10 - '@smithy/shared-ini-file-loader': 3.1.11 - '@smithy/types': 3.7.1 + '@smithy/property-provider': 3.1.11 + '@smithy/shared-ini-file-loader': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/node-config-provider@3.1.7': + '@smithy/node-http-handler@3.3.2': dependencies: - '@smithy/property-provider': 3.1.6 - '@smithy/shared-ini-file-loader': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/node-http-handler@3.2.3': - dependencies: - '@smithy/abort-controller': 3.1.4 - '@smithy/protocol-http': 4.1.3 - '@smithy/querystring-builder': 3.0.6 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/node-http-handler@3.3.1': - dependencies: - '@smithy/abort-controller': 3.1.8 - '@smithy/protocol-http': 4.1.7 - '@smithy/querystring-builder': 3.0.10 - '@smithy/types': 3.7.1 + '@smithy/abort-controller': 3.1.9 + '@smithy/protocol-http': 4.1.8 + '@smithy/querystring-builder': 3.0.11 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/property-provider@3.1.10': + '@smithy/property-provider@3.1.11': dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/property-provider@3.1.6': + '@smithy/protocol-http@4.1.8': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/protocol-http@4.1.3': - dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/protocol-http@4.1.7': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/querystring-builder@3.0.10': + '@smithy/querystring-builder@3.0.11': dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 '@smithy/util-uri-escape': 3.0.0 tslib: 2.8.1 - '@smithy/querystring-builder@3.0.6': + '@smithy/querystring-parser@3.0.11': dependencies: - '@smithy/types': 3.4.2 - '@smithy/util-uri-escape': 3.0.0 - tslib: 2.7.0 - - '@smithy/querystring-parser@3.0.10': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/querystring-parser@3.0.6': + '@smithy/service-error-classification@3.0.11': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/types': 3.7.2 - '@smithy/service-error-classification@3.0.10': + '@smithy/shared-ini-file-loader@3.1.12': dependencies: - '@smithy/types': 3.7.1 - - '@smithy/service-error-classification@3.0.6': - dependencies: - '@smithy/types': 3.4.2 - - '@smithy/shared-ini-file-loader@3.1.11': - dependencies: - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/shared-ini-file-loader@3.1.7': - dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/signature-v4@4.1.4': + '@smithy/signature-v4@4.2.4': dependencies: '@smithy/is-array-buffer': 3.0.0 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 '@smithy/util-hex-encoding': 3.0.0 - '@smithy/util-middleware': 3.0.6 - '@smithy/util-uri-escape': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/signature-v4@4.2.3': - dependencies: - '@smithy/is-array-buffer': 3.0.0 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 - '@smithy/util-hex-encoding': 3.0.0 - '@smithy/util-middleware': 3.0.10 + '@smithy/util-middleware': 3.0.11 '@smithy/util-uri-escape': 3.0.0 '@smithy/util-utf8': 3.0.0 tslib: 2.8.1 - '@smithy/smithy-client@3.3.5': + '@smithy/smithy-client@3.5.0': dependencies: - '@smithy/middleware-endpoint': 3.1.3 - '@smithy/middleware-stack': 3.0.6 - '@smithy/protocol-http': 4.1.3 - '@smithy/types': 3.4.2 - '@smithy/util-stream': 3.1.8 - tslib: 2.7.0 - - '@smithy/smithy-client@3.4.4': - dependencies: - '@smithy/core': 2.5.3 - '@smithy/middleware-endpoint': 3.2.3 - '@smithy/middleware-stack': 3.0.10 - '@smithy/protocol-http': 4.1.7 - '@smithy/types': 3.7.1 - '@smithy/util-stream': 3.3.1 + '@smithy/core': 2.5.5 + '@smithy/middleware-endpoint': 3.2.5 + '@smithy/middleware-stack': 3.0.11 + '@smithy/protocol-http': 4.1.8 + '@smithy/types': 3.7.2 + '@smithy/util-stream': 3.3.2 tslib: 2.8.1 - '@smithy/types@3.4.2': - dependencies: - tslib: 2.7.0 - - '@smithy/types@3.7.1': + '@smithy/types@3.7.2': dependencies: tslib: 2.8.1 - '@smithy/url-parser@3.0.10': + '@smithy/url-parser@3.0.11': dependencies: - '@smithy/querystring-parser': 3.0.10 - '@smithy/types': 3.7.1 + '@smithy/querystring-parser': 3.0.11 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/url-parser@3.0.6': - dependencies: - '@smithy/querystring-parser': 3.0.6 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - '@smithy/util-base64@3.0.0': dependencies: '@smithy/util-buffer-from': 3.0.0 '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 + tslib: 2.8.1 '@smithy/util-body-length-browser@3.0.0': dependencies: - tslib: 2.7.0 + tslib: 2.8.1 '@smithy/util-body-length-node@3.0.0': dependencies: - tslib: 2.7.0 + tslib: 2.8.1 '@smithy/util-buffer-from@2.2.0': dependencies: @@ -20221,102 +18262,56 @@ snapshots: '@smithy/util-buffer-from@3.0.0': dependencies: '@smithy/is-array-buffer': 3.0.0 - tslib: 2.7.0 + tslib: 2.8.1 '@smithy/util-config-provider@3.0.0': dependencies: - tslib: 2.7.0 + tslib: 2.8.1 - '@smithy/util-defaults-mode-browser@3.0.21': + '@smithy/util-defaults-mode-browser@3.0.30': dependencies: - '@smithy/property-provider': 3.1.6 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - bowser: 2.11.0 - tslib: 2.7.0 - - '@smithy/util-defaults-mode-browser@3.0.27': - dependencies: - '@smithy/property-provider': 3.1.10 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 + '@smithy/property-provider': 3.1.11 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 bowser: 2.11.0 tslib: 2.8.1 - '@smithy/util-defaults-mode-node@3.0.21': + '@smithy/util-defaults-mode-node@3.0.30': dependencies: - '@smithy/config-resolver': 3.0.8 - '@smithy/credential-provider-imds': 3.2.3 - '@smithy/node-config-provider': 3.1.7 - '@smithy/property-provider': 3.1.6 - '@smithy/smithy-client': 3.3.5 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/util-defaults-mode-node@3.0.27': - dependencies: - '@smithy/config-resolver': 3.0.12 - '@smithy/credential-provider-imds': 3.2.7 - '@smithy/node-config-provider': 3.1.11 - '@smithy/property-provider': 3.1.10 - '@smithy/smithy-client': 3.4.4 - '@smithy/types': 3.7.1 + '@smithy/config-resolver': 3.0.13 + '@smithy/credential-provider-imds': 3.2.8 + '@smithy/node-config-provider': 3.1.12 + '@smithy/property-provider': 3.1.11 + '@smithy/smithy-client': 3.5.0 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/util-endpoints@2.1.2': + '@smithy/util-endpoints@2.1.7': dependencies: - '@smithy/node-config-provider': 3.1.7 - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/util-endpoints@2.1.6': - dependencies: - '@smithy/node-config-provider': 3.1.11 - '@smithy/types': 3.7.1 + '@smithy/node-config-provider': 3.1.12 + '@smithy/types': 3.7.2 tslib: 2.8.1 '@smithy/util-hex-encoding@3.0.0': dependencies: - tslib: 2.7.0 - - '@smithy/util-middleware@3.0.10': - dependencies: - '@smithy/types': 3.7.1 tslib: 2.8.1 - '@smithy/util-middleware@3.0.6': + '@smithy/util-middleware@3.0.11': dependencies: - '@smithy/types': 3.4.2 - tslib: 2.7.0 - - '@smithy/util-retry@3.0.10': - dependencies: - '@smithy/service-error-classification': 3.0.10 - '@smithy/types': 3.7.1 + '@smithy/types': 3.7.2 tslib: 2.8.1 - '@smithy/util-retry@3.0.6': + '@smithy/util-retry@3.0.11': dependencies: - '@smithy/service-error-classification': 3.0.6 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/service-error-classification': 3.0.11 + '@smithy/types': 3.7.2 + tslib: 2.8.1 - '@smithy/util-stream@3.1.8': + '@smithy/util-stream@3.3.2': dependencies: - '@smithy/fetch-http-handler': 3.2.8 - '@smithy/node-http-handler': 3.2.3 - '@smithy/types': 3.4.2 - '@smithy/util-base64': 3.0.0 - '@smithy/util-buffer-from': 3.0.0 - '@smithy/util-hex-encoding': 3.0.0 - '@smithy/util-utf8': 3.0.0 - tslib: 2.7.0 - - '@smithy/util-stream@3.3.1': - dependencies: - '@smithy/fetch-http-handler': 4.1.1 - '@smithy/node-http-handler': 3.3.1 - '@smithy/types': 3.7.1 + '@smithy/fetch-http-handler': 4.1.2 + '@smithy/node-http-handler': 3.3.2 + '@smithy/types': 3.7.2 '@smithy/util-base64': 3.0.0 '@smithy/util-buffer-from': 3.0.0 '@smithy/util-hex-encoding': 3.0.0 @@ -20330,24 +18325,24 @@ snapshots: '@smithy/util-utf8@2.3.0': dependencies: '@smithy/util-buffer-from': 2.2.0 - tslib: 2.7.0 + tslib: 2.8.1 '@smithy/util-utf8@3.0.0': dependencies: '@smithy/util-buffer-from': 3.0.0 - tslib: 2.7.0 + tslib: 2.8.1 - '@smithy/util-waiter@3.1.5': + '@smithy/util-waiter@3.2.0': dependencies: - '@smithy/abort-controller': 3.1.4 - '@smithy/types': 3.4.2 - tslib: 2.7.0 + '@smithy/abort-controller': 3.1.9 + '@smithy/types': 3.7.2 + tslib: 2.8.1 '@stencil-community/router@1.0.2': dependencies: '@stencil/state-tunnel': 1.0.1 - '@stencil/core@4.21.0': {} + '@stencil/core@4.23.0': {} '@stencil/state-tunnel@1.0.1': {} @@ -20358,26 +18353,26 @@ snapshots: magic-string: 0.25.9 string.prototype.matchall: 4.0.11 - '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)))(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) - debug: 4.4.0 + '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) + debug: 4.4.0(supports-color@8.1.1) svelte: 4.2.19 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)))(svelte@4.2.19)(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) - debug: 4.3.7(supports-color@8.1.1) + '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)))(svelte@4.2.19)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) + debug: 4.4.0(supports-color@8.1.1) deepmerge: 4.3.1 kleur: 4.1.5 - magic-string: 0.30.11 + magic-string: 0.30.17 svelte: 4.2.19 svelte-hmr: 0.16.0(svelte@4.2.19) - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) - vitefu: 0.2.5(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) + vitefu: 0.2.5(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) transitivePeerDependencies: - supports-color @@ -20425,12 +18420,12 @@ snapshots: '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.26.0) '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.26.0) - '@svgr/core@8.1.0(typescript@5.6.2)': + '@svgr/core@8.1.0(typescript@5.7.2)': dependencies: '@babel/core': 7.26.0 '@svgr/babel-preset': 8.1.0(@babel/core@7.26.0) camelcase: 6.3.0 - cosmiconfig: 8.3.6(typescript@5.6.2) + cosmiconfig: 8.3.6(typescript@5.7.2) snake-case: 3.0.4 transitivePeerDependencies: - supports-color @@ -20441,88 +18436,88 @@ snapshots: '@babel/types': 7.26.3 entities: 4.5.0 - '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.6.2))': + '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.7.2))': dependencies: '@babel/core': 7.26.0 '@svgr/babel-preset': 8.1.0(@babel/core@7.26.0) - '@svgr/core': 8.1.0(typescript@5.6.2) + '@svgr/core': 8.1.0(typescript@5.7.2) '@svgr/hast-util-to-babel-ast': 8.0.0 svg-parser: 2.0.4 transitivePeerDependencies: - supports-color - '@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0(typescript@5.6.2))(typescript@5.6.2)': + '@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0(typescript@5.7.2))(typescript@5.7.2)': dependencies: - '@svgr/core': 8.1.0(typescript@5.6.2) - cosmiconfig: 8.3.6(typescript@5.6.2) + '@svgr/core': 8.1.0(typescript@5.7.2) + cosmiconfig: 8.3.6(typescript@5.7.2) deepmerge: 4.3.1 svgo: 3.3.2 transitivePeerDependencies: - typescript - '@svgr/webpack@8.1.0(typescript@5.6.2)': + '@svgr/webpack@8.1.0(typescript@5.7.2)': dependencies: '@babel/core': 7.26.0 - '@babel/plugin-transform-react-constant-elements': 7.25.1(@babel/core@7.26.0) - '@babel/preset-env': 7.25.4(@babel/core@7.26.0) - '@babel/preset-react': 7.24.7(@babel/core@7.26.0) - '@babel/preset-typescript': 7.24.7(@babel/core@7.26.0) - '@svgr/core': 8.1.0(typescript@5.6.2) - '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.6.2)) - '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.6.2))(typescript@5.6.2) + '@babel/plugin-transform-react-constant-elements': 7.25.9(@babel/core@7.26.0) + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + '@babel/preset-react': 7.26.3(@babel/core@7.26.0) + '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) + '@svgr/core': 8.1.0(typescript@5.7.2) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.7.2)) + '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.7.2))(typescript@5.7.2) transitivePeerDependencies: - supports-color - typescript - '@swc/core-darwin-arm64@1.7.26': + '@swc/core-darwin-arm64@1.10.1': optional: true - '@swc/core-darwin-x64@1.7.26': + '@swc/core-darwin-x64@1.10.1': optional: true - '@swc/core-linux-arm-gnueabihf@1.7.26': + '@swc/core-linux-arm-gnueabihf@1.10.1': optional: true - '@swc/core-linux-arm64-gnu@1.7.26': + '@swc/core-linux-arm64-gnu@1.10.1': optional: true - '@swc/core-linux-arm64-musl@1.7.26': + '@swc/core-linux-arm64-musl@1.10.1': optional: true - '@swc/core-linux-x64-gnu@1.7.26': + '@swc/core-linux-x64-gnu@1.10.1': optional: true - '@swc/core-linux-x64-musl@1.7.26': + '@swc/core-linux-x64-musl@1.10.1': optional: true - '@swc/core-win32-arm64-msvc@1.7.26': + '@swc/core-win32-arm64-msvc@1.10.1': optional: true - '@swc/core-win32-ia32-msvc@1.7.26': + '@swc/core-win32-ia32-msvc@1.10.1': optional: true - '@swc/core-win32-x64-msvc@1.7.26': + '@swc/core-win32-x64-msvc@1.10.1': optional: true - '@swc/core@1.7.26': + '@swc/core@1.10.1': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.12 + '@swc/types': 0.1.17 optionalDependencies: - '@swc/core-darwin-arm64': 1.7.26 - '@swc/core-darwin-x64': 1.7.26 - '@swc/core-linux-arm-gnueabihf': 1.7.26 - '@swc/core-linux-arm64-gnu': 1.7.26 - '@swc/core-linux-arm64-musl': 1.7.26 - '@swc/core-linux-x64-gnu': 1.7.26 - '@swc/core-linux-x64-musl': 1.7.26 - '@swc/core-win32-arm64-msvc': 1.7.26 - '@swc/core-win32-ia32-msvc': 1.7.26 - '@swc/core-win32-x64-msvc': 1.7.26 + '@swc/core-darwin-arm64': 1.10.1 + '@swc/core-darwin-x64': 1.10.1 + '@swc/core-linux-arm-gnueabihf': 1.10.1 + '@swc/core-linux-arm64-gnu': 1.10.1 + '@swc/core-linux-arm64-musl': 1.10.1 + '@swc/core-linux-x64-gnu': 1.10.1 + '@swc/core-linux-x64-musl': 1.10.1 + '@swc/core-win32-arm64-msvc': 1.10.1 + '@swc/core-win32-ia32-msvc': 1.10.1 + '@swc/core-win32-x64-msvc': 1.10.1 '@swc/counter@0.1.3': {} - '@swc/types@0.1.12': + '@swc/types@0.1.17': dependencies: '@swc/counter': 0.1.3 @@ -20543,7 +18538,7 @@ snapshots: '@testing-library/dom@8.20.1': dependencies: '@babel/code-frame': 7.26.2 - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 '@types/aria-query': 5.0.4 aria-query: 5.1.3 chalk: 4.1.2 @@ -20554,7 +18549,7 @@ snapshots: '@testing-library/dom@9.3.4': dependencies: '@babel/code-frame': 7.26.2 - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 '@types/aria-query': 5.0.4 aria-query: 5.1.3 chalk: 4.1.2 @@ -20562,9 +18557,9 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.5.0': + '@testing-library/jest-dom@6.6.3': dependencies: - '@adobe/css-tools': 4.4.0 + '@adobe/css-tools': 4.4.1 aria-query: 5.3.2 chalk: 3.0.0 css.escape: 1.5.1 @@ -20572,18 +18567,20 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/preact@3.2.4(preact@10.24.0)': + '@testing-library/preact@3.2.4(preact@10.25.2)': dependencies: '@testing-library/dom': 8.20.1 - preact: 10.24.0 + preact: 10.25.2 - '@testing-library/react@14.3.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@testing-library/react@14.3.1(@types/react@19.0.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 '@testing-library/dom': 9.3.4 - '@types/react-dom': 18.3.0 + '@types/react-dom': 18.3.5(@types/react@19.0.2) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + transitivePeerDependencies: + - '@types/react' '@testing-library/svelte@4.2.3(svelte@4.2.19)': dependencies: @@ -20594,21 +18591,12 @@ snapshots: dependencies: '@testing-library/dom': 9.3.4 - '@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.6(typescript@5.6.2))': + '@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.13(typescript@5.7.2))': dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 '@testing-library/dom': 9.3.4 '@vue/test-utils': 2.4.6 - vue: 3.5.6(typescript@5.6.2) - optionalDependencies: - '@vue/compiler-sfc': 3.5.13 - - '@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.13)(vue@3.5.6(typescript@5.6.3))': - dependencies: - '@babel/runtime': 7.25.6 - '@testing-library/dom': 9.3.4 - '@vue/test-utils': 2.4.6 - vue: 3.5.6(typescript@5.6.3) + vue: 3.5.13(typescript@5.7.2) optionalDependencies: '@vue/compiler-sfc': 3.5.13 @@ -20639,10 +18627,6 @@ snapshots: dependencies: '@types/estree': 1.0.6 - '@types/archiver@6.0.2': - dependencies: - '@types/readdir-glob': 1.1.5 - '@types/archiver@6.0.3': dependencies: '@types/readdir-glob': 1.1.5 @@ -20653,24 +18637,24 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.25.8 + '@babel/types': 7.26.3 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.25.8 - '@babel/types': 7.25.8 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.25.8 + '@babel/types': 7.26.3 '@types/body-parser@1.19.5': dependencies: @@ -20690,11 +18674,11 @@ snapshots: '@types/cheerio@0.22.35': dependencies: - '@types/node': 20.16.13 + '@types/node': 20.17.10 '@types/connect-history-api-fallback@1.5.4': dependencies: - '@types/express-serve-static-core': 5.0.0 + '@types/express-serve-static-core': 5.0.2 '@types/node': 20.17.10 '@types/connect@3.4.38': @@ -20707,16 +18691,21 @@ snapshots: dependencies: '@types/ms': 0.7.34 - '@types/diff@5.2.2': {} + '@types/diff@5.2.3': {} '@types/ejs@3.1.5': {} + '@types/eslint-scope@3.7.7': + dependencies: + '@types/eslint': 9.6.1 + '@types/estree': 1.0.6 + '@types/eslint@7.29.0': dependencies: '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 - '@types/eslint@8.56.12': + '@types/eslint@9.6.1': dependencies: '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 @@ -20727,36 +18716,34 @@ snapshots: '@types/estree@0.0.39': {} - '@types/estree@1.0.5': {} - '@types/estree@1.0.6': {} - '@types/express-serve-static-core@4.19.5': + '@types/express-serve-static-core@4.19.6': dependencies: '@types/node': 20.17.10 - '@types/qs': 6.9.16 + '@types/qs': 6.9.17 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 - '@types/express-serve-static-core@5.0.0': + '@types/express-serve-static-core@5.0.2': dependencies: '@types/node': 20.17.10 - '@types/qs': 6.9.16 + '@types/qs': 6.9.17 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 '@types/express@4.17.21': dependencies: '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 4.19.5 - '@types/qs': 6.9.16 + '@types/express-serve-static-core': 4.19.6 + '@types/qs': 6.9.17 '@types/serve-static': 1.15.7 '@types/express@5.0.0': dependencies: '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 5.0.0 - '@types/qs': 6.9.16 + '@types/express-serve-static-core': 5.0.2 + '@types/qs': 6.9.17 '@types/serve-static': 1.15.7 '@types/gitconfiglocal@2.0.3': {} @@ -20791,7 +18778,7 @@ snapshots: '@types/ip@1.1.3': dependencies: - '@types/node': 22.7.7 + '@types/node': 20.17.10 '@types/is-glob@4.0.4': {} @@ -20812,7 +18799,7 @@ snapshots: '@types/jasmine@5.1.4': {} - '@types/jest@29.5.13': + '@types/jest@29.5.14': dependencies: expect: 29.7.0 pretty-format: 29.7.0 @@ -20821,33 +18808,31 @@ snapshots: '@types/json-stringify-safe@5.0.3': {} - '@types/json5@0.0.29': {} - '@types/keyv@3.1.4': dependencies: '@types/node': 20.17.10 '@types/lodash.clonedeep@4.5.9': dependencies: - '@types/lodash': 4.17.7 + '@types/lodash': 4.17.13 '@types/lodash.flattendeep@4.4.9': dependencies: - '@types/lodash': 4.17.7 + '@types/lodash': 4.17.13 '@types/lodash.pickby@4.6.9': dependencies: - '@types/lodash': 4.17.7 + '@types/lodash': 4.17.13 '@types/lodash.union@4.6.9': dependencies: - '@types/lodash': 4.17.7 + '@types/lodash': 4.17.13 '@types/lodash.zip@4.2.9': dependencies: - '@types/lodash': 4.17.7 + '@types/lodash': 4.17.13 - '@types/lodash@4.17.7': {} + '@types/lodash@4.17.13': {} '@types/mdast@4.0.4': dependencies: @@ -20865,13 +18850,11 @@ snapshots: '@types/minimist@1.2.5': {} - '@types/mocha@10.0.8': {} - - '@types/mocha@10.0.9': {} + '@types/mocha@10.0.10': {} '@types/morgan@1.9.9': dependencies: - '@types/node': 22.7.7 + '@types/node': 20.17.10 '@types/ms@0.7.34': {} @@ -20885,14 +18868,6 @@ snapshots: '@types/node@17.0.45': {} - '@types/node@20.16.13': - dependencies: - undici-types: 6.19.8 - - '@types/node@20.16.5': - dependencies: - undici-types: 6.19.8 - '@types/node@20.17.10': dependencies: undici-types: 6.19.8 @@ -20901,51 +18876,40 @@ snapshots: dependencies: undici-types: 6.20.0 - '@types/node@22.7.7': - dependencies: - undici-types: 6.19.8 - '@types/normalize-package-data@2.4.4': {} '@types/object-inspect@1.13.0': {} '@types/parse-json@4.0.2': {} - '@types/prismjs@1.26.4': {} + '@types/prismjs@1.26.5': {} - '@types/prop-types@15.7.12': {} - - '@types/qs@6.9.16': {} + '@types/qs@6.9.17': {} '@types/range-parser@1.2.7': {} - '@types/react-dom@18.3.0': + '@types/react-dom@18.3.5(@types/react@19.0.2)': dependencies: - '@types/react': 18.3.6 + '@types/react': 19.0.2 '@types/react-router-config@5.0.11': dependencies: '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 '@types/react-router': 5.1.20 '@types/react-router-dom@5.3.3': dependencies: '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 '@types/react-router': 5.1.20 '@types/react-router@5.1.20': dependencies: '@types/history': 4.7.11 - '@types/react': 18.3.6 + '@types/react': 19.0.2 - '@types/react@18.3.6': - dependencies: - '@types/prop-types': 15.7.12 - csstype: 3.1.3 - - '@types/react@19.0.1': + '@types/react@19.0.2': dependencies: csstype: 3.1.3 @@ -20955,7 +18919,7 @@ snapshots: '@types/recursive-readdir@2.2.4': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.17.10 '@types/resolve@1.20.2': {} @@ -20987,7 +18951,7 @@ snapshots: '@types/shelljs@0.8.15': dependencies: '@types/glob': 7.2.0 - '@types/node': 20.16.13 + '@types/node': 20.17.10 '@types/sinonjs__fake-timers@8.1.5': {} @@ -20997,19 +18961,19 @@ snapshots: '@types/split2@4.2.3': dependencies: - '@types/node': 20.16.13 + '@types/node': 20.17.10 '@types/stack-utils@2.0.3': {} '@types/stream-buffers@3.0.7': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.17.10 '@types/supports-color@8.1.3': {} '@types/testing-library__jest-dom@5.14.9': dependencies: - '@types/jest': 29.5.13 + '@types/jest': 29.5.14 '@types/through@0.0.33': dependencies: @@ -21027,7 +18991,7 @@ snapshots: '@types/unzipper@0.10.10': dependencies: - '@types/node': 20.16.13 + '@types/node': 20.17.10 '@types/uuid@10.0.0': {} @@ -21037,10 +19001,6 @@ snapshots: '@types/wrap-ansi@3.0.0': {} - '@types/ws@8.5.12': - dependencies: - '@types/node': 20.16.5 - '@types/ws@8.5.13': dependencies: '@types/node': 20.17.10 @@ -21053,127 +19013,118 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 20.16.5 + '@types/node': 20.17.10 - '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3)': + '@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': dependencies: - '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/type-utils': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 7.18.0 - eslint: 8.57.1 + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/scope-manager': 8.18.1 + '@typescript-eslint/type-utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.18.1 + eslint: 9.17.0(jiti@2.4.2) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 + ts-api-utils: 1.4.3(typescript@5.7.2) + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + '@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': dependencies: - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.7(supports-color@8.1.1) - eslint: 8.57.1 - optionalDependencies: - typescript: 5.6.3 + '@typescript-eslint/scope-manager': 8.18.1 + '@typescript-eslint/types': 8.18.1 + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) + '@typescript-eslint/visitor-keys': 8.18.1 + debug: 4.4.0(supports-color@8.1.1) + eslint: 9.17.0(jiti@2.4.2) + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@7.18.0': + '@typescript-eslint/scope-manager@8.18.1': dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 + '@typescript-eslint/types': 8.18.1 + '@typescript-eslint/visitor-keys': 8.18.1 - '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + '@typescript-eslint/type-utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': dependencies: - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) - '@typescript-eslint/utils': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - debug: 4.4.0 - eslint: 8.57.1 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + debug: 4.4.0(supports-color@8.1.1) + eslint: 9.17.0(jiti@2.4.2) + ts-api-utils: 1.4.3(typescript@5.7.2) + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@7.18.0': {} + '@typescript-eslint/types@8.18.1': {} - '@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3)': + '@typescript-eslint/typescript-estree@8.18.1(typescript@5.7.2)': dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.4.0 - globby: 11.1.0 + '@typescript-eslint/types': 8.18.1 + '@typescript-eslint/visitor-keys': 8.18.1 + debug: 4.4.0(supports-color@8.1.1) + fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 + ts-api-utils: 1.4.3(typescript@5.7.2) + typescript: 5.7.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': + '@typescript-eslint/utils@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) - eslint: 8.57.1 + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0(jiti@2.4.2)) + '@typescript-eslint/scope-manager': 8.18.1 + '@typescript-eslint/types': 8.18.1 + '@typescript-eslint/typescript-estree': 8.18.1(typescript@5.7.2) + eslint: 9.17.0(jiti@2.4.2) + typescript: 5.7.2 transitivePeerDependencies: - supports-color - - typescript - '@typescript-eslint/visitor-keys@7.18.0': + '@typescript-eslint/visitor-keys@8.18.1': dependencies: - '@typescript-eslint/types': 7.18.0 - eslint-visitor-keys: 3.4.3 + '@typescript-eslint/types': 8.18.1 + eslint-visitor-keys: 4.2.0 - '@ungap/structured-clone@1.2.0': {} + '@ungap/structured-clone@1.2.1': {} - '@vitejs/plugin-react@4.3.4(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@vitejs/plugin-react@4.3.4(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: '@babel/core': 7.26.0 '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.1.3(vite@5.4.5(@types/node@20.17.10)(terser@5.32.0))(vue@3.5.6(typescript@5.6.2))': + '@vitejs/plugin-vue@5.2.1(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))(vue@3.5.13(typescript@5.7.2))': dependencies: - vite: 5.4.5(@types/node@20.17.10)(terser@5.32.0) - vue: 3.5.6(typescript@5.6.2) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) + vue: 3.5.13(typescript@5.7.2) - '@vitejs/plugin-vue@5.1.4(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))(vue@3.5.13(typescript@5.6.3))': - dependencies: - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) - vue: 3.5.13(typescript@5.6.3) - - '@vitest/coverage-v8@2.1.8(vitest@2.1.8(@types/node@20.16.13)(jsdom@25.0.1)(terser@5.32.0))': + '@vitest/coverage-v8@2.1.8(vitest@2.1.8(@types/node@20.17.10)(jsdom@25.0.1)(terser@5.37.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 - debug: 4.4.0 + debug: 4.4.0(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.15 + magic-string: 0.30.17 magicast: 0.3.5 std-env: 3.8.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.8(@types/node@20.16.13)(jsdom@25.0.1)(terser@5.32.0) + vitest: 2.1.8(@types/node@20.17.10)(jsdom@25.0.1)(terser@5.37.0) transitivePeerDependencies: - supports-color @@ -21184,17 +19135,13 @@ snapshots: chai: 5.1.2 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.8(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0))': + '@vitest/mocker@2.1.8(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0))': dependencies: '@vitest/spy': 2.1.8 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) - - '@vitest/pretty-format@2.1.1': - dependencies: - tinyrainbow: 1.2.0 + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) '@vitest/pretty-format@2.1.8': dependencies: @@ -21205,28 +19152,12 @@ snapshots: '@vitest/utils': 2.1.8 pathe: 1.1.2 - '@vitest/snapshot@1.6.0': - dependencies: - magic-string: 0.30.17 - pathe: 1.1.2 - pretty-format: 29.7.0 - - '@vitest/snapshot@2.1.1': - dependencies: - '@vitest/pretty-format': 2.1.1 - magic-string: 0.30.11 - pathe: 1.1.2 - '@vitest/snapshot@2.1.8': dependencies: '@vitest/pretty-format': 2.1.8 magic-string: 0.30.17 pathe: 1.1.2 - '@vitest/spy@2.1.1': - dependencies: - tinyspy: 3.0.2 - '@vitest/spy@2.1.8': dependencies: tinyspy: 3.0.2 @@ -21237,15 +19168,15 @@ snapshots: loupe: 3.1.2 tinyrainbow: 1.2.0 - '@volar/language-core@2.4.5': + '@volar/language-core@2.4.11': dependencies: - '@volar/source-map': 2.4.5 + '@volar/source-map': 2.4.11 - '@volar/source-map@2.4.5': {} + '@volar/source-map@2.4.11': {} - '@volar/typescript@2.4.5': + '@volar/typescript@2.4.11': dependencies: - '@volar/language-core': 2.4.5 + '@volar/language-core': 2.4.11 path-browserify: 1.0.1 vscode-uri: 3.0.8 @@ -21257,24 +19188,11 @@ snapshots: estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-core@3.5.6': - dependencies: - '@babel/parser': 7.25.8 - '@vue/shared': 3.5.6 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.13': dependencies: '@vue/compiler-core': 3.5.13 '@vue/shared': 3.5.13 - '@vue/compiler-dom@3.5.6': - dependencies: - '@vue/compiler-core': 3.5.6 - '@vue/shared': 3.5.6 - '@vue/compiler-sfc@3.5.13': dependencies: '@babel/parser': 7.26.3 @@ -21287,64 +19205,38 @@ snapshots: postcss: 8.4.49 source-map-js: 1.2.1 - '@vue/compiler-sfc@3.5.6': - dependencies: - '@babel/parser': 7.25.8 - '@vue/compiler-core': 3.5.6 - '@vue/compiler-dom': 3.5.6 - '@vue/compiler-ssr': 3.5.6 - '@vue/shared': 3.5.6 - estree-walker: 2.0.2 - magic-string: 0.30.17 - postcss: 8.4.47 - source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.13': dependencies: '@vue/compiler-dom': 3.5.13 '@vue/shared': 3.5.13 - '@vue/compiler-ssr@3.5.6': - dependencies: - '@vue/compiler-dom': 3.5.6 - '@vue/shared': 3.5.6 - '@vue/compiler-vue2@2.7.16': dependencies: de-indent: 1.0.2 he: 1.2.0 - '@vue/language-core@2.1.6(typescript@5.6.2)': + '@vue/language-core@2.1.10(typescript@5.7.2)': dependencies: - '@volar/language-core': 2.4.5 + '@volar/language-core': 2.4.11 '@vue/compiler-dom': 3.5.13 '@vue/compiler-vue2': 2.7.16 '@vue/shared': 3.5.13 - computeds: 0.0.1 + alien-signals: 0.2.2 minimatch: 9.0.5 muggle-string: 0.4.1 path-browserify: 1.0.1 optionalDependencies: - typescript: 5.6.2 + typescript: 5.7.2 '@vue/reactivity@3.5.13': dependencies: '@vue/shared': 3.5.13 - '@vue/reactivity@3.5.6': - dependencies: - '@vue/shared': 3.5.6 - '@vue/runtime-core@3.5.13': dependencies: '@vue/reactivity': 3.5.13 '@vue/shared': 3.5.13 - '@vue/runtime-core@3.5.6': - dependencies: - '@vue/reactivity': 3.5.6 - '@vue/shared': 3.5.6 - '@vue/runtime-dom@3.5.13': dependencies: '@vue/reactivity': 3.5.13 @@ -21352,66 +19244,44 @@ snapshots: '@vue/shared': 3.5.13 csstype: 3.1.3 - '@vue/runtime-dom@3.5.6': - dependencies: - '@vue/reactivity': 3.5.6 - '@vue/runtime-core': 3.5.6 - '@vue/shared': 3.5.6 - csstype: 3.1.3 - - '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.6.3))': + '@vue/server-renderer@3.5.13(vue@3.5.13(typescript@5.7.2))': dependencies: '@vue/compiler-ssr': 3.5.13 '@vue/shared': 3.5.13 - vue: 3.5.13(typescript@5.6.3) - - '@vue/server-renderer@3.5.6(vue@3.5.6(typescript@5.6.2))': - dependencies: - '@vue/compiler-ssr': 3.5.6 - '@vue/shared': 3.5.6 - vue: 3.5.6(typescript@5.6.2) - - '@vue/server-renderer@3.5.6(vue@3.5.6(typescript@5.6.3))': - dependencies: - '@vue/compiler-ssr': 3.5.6 - '@vue/shared': 3.5.6 - vue: 3.5.6(typescript@5.6.3) + vue: 3.5.13(typescript@5.7.2) '@vue/shared@3.5.13': {} - '@vue/shared@3.5.6': {} - '@vue/test-utils@2.4.6': dependencies: js-beautify: 1.15.1 - vue-component-type-helpers: 2.1.6 + vue-component-type-helpers: 2.1.10 - '@wdio/cli@9.0.9(puppeteer-core@23.4.1)': + '@wdio/cli@9.4.3(puppeteer-core@23.4.1)': dependencies: - '@types/node': 20.16.5 - '@vitest/snapshot': 1.6.0 - '@wdio/config': 9.0.8 - '@wdio/globals': 9.0.9(@wdio/logger@9.0.8)(puppeteer-core@23.4.1) - '@wdio/logger': 9.0.8 - '@wdio/protocols': 9.0.8 - '@wdio/types': 9.0.8 - '@wdio/utils': 9.0.8 + '@types/node': 20.17.10 + '@vitest/snapshot': 2.1.8 + '@wdio/config': 9.4.3 + '@wdio/globals': 9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1) + '@wdio/logger': 9.1.3 + '@wdio/protocols': 9.2.2 + '@wdio/types': 9.4.3 + '@wdio/utils': 9.4.3 async-exit-hook: 2.0.1 - chalk: 5.3.0 - chokidar: 3.6.0 - cli-spinners: 3.2.0 + chalk: 5.4.0 + chokidar: 4.0.2 dotenv: 16.4.7 ejs: 3.1.10 - execa: 9.3.1 + execa: 9.5.2 import-meta-resolve: 4.1.0 - inquirer: 10.2.2 + inquirer: 11.1.0 lodash.flattendeep: 4.4.0 lodash.pickby: 4.6.0 lodash.union: 4.6.0 read-pkg-up: 10.1.0 recursive-readdir: 2.2.3 tsx: 4.19.2 - webdriverio: 9.0.9(puppeteer-core@23.4.1) + webdriverio: 9.4.3(puppeteer-core@23.4.1) yargs: 17.7.2 transitivePeerDependencies: - bufferutil @@ -21419,18 +19289,6 @@ snapshots: - supports-color - utf-8-validate - '@wdio/config@9.0.8': - dependencies: - '@wdio/logger': 9.0.8 - '@wdio/types': 9.0.8 - '@wdio/utils': 9.0.8 - decamelize: 6.0.0 - deepmerge-ts: 7.1.3 - glob: 10.4.5 - import-meta-resolve: 4.1.0 - transitivePeerDependencies: - - supports-color - '@wdio/config@9.4.3': dependencies: '@wdio/logger': 9.1.3 @@ -21442,16 +19300,20 @@ snapshots: transitivePeerDependencies: - supports-color - '@wdio/globals@9.0.9(@wdio/logger@9.0.8)(puppeteer-core@23.4.1)': - optionalDependencies: - expect-webdriverio: 5.0.5(@wdio/globals@9.0.9(@wdio/logger@9.0.8)(puppeteer-core@23.4.1))(@wdio/logger@9.0.8)(webdriverio@9.0.9(puppeteer-core@23.4.1)) - webdriverio: 9.0.9(puppeteer-core@23.4.1) + '@wdio/eslint@0.0.5(@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)': + dependencies: + '@eslint/js': 9.17.0 + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + eslint-plugin-unicorn: 56.0.1(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-unused-imports: 4.1.4(@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2)) + eslint-plugin-wdio: 9.2.11 + globals: 15.14.0 + typescript-eslint: 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) transitivePeerDependencies: - - '@wdio/logger' - - bufferutil - - puppeteer-core + - '@typescript-eslint/eslint-plugin' + - eslint - supports-color - - utf-8-validate + - typescript '@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1)': optionalDependencies: @@ -21464,61 +19326,23 @@ snapshots: - supports-color - utf-8-validate - '@wdio/logger@8.38.0': - dependencies: - chalk: 5.3.0 - loglevel: 1.9.2 - loglevel-plugin-prefix: 0.8.4 - strip-ansi: 7.1.0 - - '@wdio/logger@9.0.8': - dependencies: - chalk: 5.3.0 - loglevel: 1.9.2 - loglevel-plugin-prefix: 0.8.4 - strip-ansi: 7.1.0 - '@wdio/logger@9.1.3': dependencies: - chalk: 5.3.0 + chalk: 5.4.0 loglevel: 1.9.2 loglevel-plugin-prefix: 0.8.4 strip-ansi: 7.1.0 - '@wdio/protocols@9.0.8': {} - '@wdio/protocols@9.2.2': {} '@wdio/repl@9.0.8': dependencies: '@types/node': 20.17.10 - '@wdio/types@9.0.8': - dependencies: - '@types/node': 20.17.10 - '@wdio/types@9.4.3': dependencies: '@types/node': 20.17.10 - '@wdio/utils@9.0.8': - dependencies: - '@puppeteer/browsers': 2.4.0 - '@wdio/logger': 9.0.8 - '@wdio/types': 9.0.8 - decamelize: 6.0.0 - deepmerge-ts: 7.1.3 - edgedriver: 5.6.1 - geckodriver: 4.5.1 - get-port: 7.1.0 - import-meta-resolve: 4.1.0 - locate-app: 2.4.43 - safaridriver: 0.1.2 - split2: 4.2.0 - wait-port: 1.1.0 - transitivePeerDependencies: - - supports-color - '@wdio/utils@9.4.3': dependencies: '@puppeteer/browsers': 2.6.1 @@ -21537,80 +19361,80 @@ snapshots: transitivePeerDependencies: - supports-color - '@webassemblyjs/ast@1.12.1': + '@webassemblyjs/ast@1.14.1': dependencies: - '@webassemblyjs/helper-numbers': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 + '@webassemblyjs/helper-numbers': 1.13.2 + '@webassemblyjs/helper-wasm-bytecode': 1.13.2 - '@webassemblyjs/floating-point-hex-parser@1.11.6': {} + '@webassemblyjs/floating-point-hex-parser@1.13.2': {} - '@webassemblyjs/helper-api-error@1.11.6': {} + '@webassemblyjs/helper-api-error@1.13.2': {} - '@webassemblyjs/helper-buffer@1.12.1': {} + '@webassemblyjs/helper-buffer@1.14.1': {} - '@webassemblyjs/helper-numbers@1.11.6': + '@webassemblyjs/helper-numbers@1.13.2': dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.6 - '@webassemblyjs/helper-api-error': 1.11.6 + '@webassemblyjs/floating-point-hex-parser': 1.13.2 + '@webassemblyjs/helper-api-error': 1.13.2 '@xtuc/long': 4.2.2 - '@webassemblyjs/helper-wasm-bytecode@1.11.6': {} + '@webassemblyjs/helper-wasm-bytecode@1.13.2': {} - '@webassemblyjs/helper-wasm-section@1.12.1': + '@webassemblyjs/helper-wasm-section@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/helper-buffer': 1.12.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/wasm-gen': 1.12.1 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/helper-buffer': 1.14.1 + '@webassemblyjs/helper-wasm-bytecode': 1.13.2 + '@webassemblyjs/wasm-gen': 1.14.1 - '@webassemblyjs/ieee754@1.11.6': + '@webassemblyjs/ieee754@1.13.2': dependencies: '@xtuc/ieee754': 1.2.0 - '@webassemblyjs/leb128@1.11.6': + '@webassemblyjs/leb128@1.13.2': dependencies: '@xtuc/long': 4.2.2 - '@webassemblyjs/utf8@1.11.6': {} + '@webassemblyjs/utf8@1.13.2': {} - '@webassemblyjs/wasm-edit@1.12.1': + '@webassemblyjs/wasm-edit@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/helper-buffer': 1.12.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/helper-wasm-section': 1.12.1 - '@webassemblyjs/wasm-gen': 1.12.1 - '@webassemblyjs/wasm-opt': 1.12.1 - '@webassemblyjs/wasm-parser': 1.12.1 - '@webassemblyjs/wast-printer': 1.12.1 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/helper-buffer': 1.14.1 + '@webassemblyjs/helper-wasm-bytecode': 1.13.2 + '@webassemblyjs/helper-wasm-section': 1.14.1 + '@webassemblyjs/wasm-gen': 1.14.1 + '@webassemblyjs/wasm-opt': 1.14.1 + '@webassemblyjs/wasm-parser': 1.14.1 + '@webassemblyjs/wast-printer': 1.14.1 - '@webassemblyjs/wasm-gen@1.12.1': + '@webassemblyjs/wasm-gen@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/ieee754': 1.11.6 - '@webassemblyjs/leb128': 1.11.6 - '@webassemblyjs/utf8': 1.11.6 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/helper-wasm-bytecode': 1.13.2 + '@webassemblyjs/ieee754': 1.13.2 + '@webassemblyjs/leb128': 1.13.2 + '@webassemblyjs/utf8': 1.13.2 - '@webassemblyjs/wasm-opt@1.12.1': + '@webassemblyjs/wasm-opt@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/helper-buffer': 1.12.1 - '@webassemblyjs/wasm-gen': 1.12.1 - '@webassemblyjs/wasm-parser': 1.12.1 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/helper-buffer': 1.14.1 + '@webassemblyjs/wasm-gen': 1.14.1 + '@webassemblyjs/wasm-parser': 1.14.1 - '@webassemblyjs/wasm-parser@1.12.1': + '@webassemblyjs/wasm-parser@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/helper-api-error': 1.11.6 - '@webassemblyjs/helper-wasm-bytecode': 1.11.6 - '@webassemblyjs/ieee754': 1.11.6 - '@webassemblyjs/leb128': 1.11.6 - '@webassemblyjs/utf8': 1.11.6 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/helper-api-error': 1.13.2 + '@webassemblyjs/helper-wasm-bytecode': 1.13.2 + '@webassemblyjs/ieee754': 1.13.2 + '@webassemblyjs/leb128': 1.13.2 + '@webassemblyjs/utf8': 1.13.2 - '@webassemblyjs/wast-printer@1.12.1': + '@webassemblyjs/wast-printer@1.14.1': dependencies: - '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/ast': 1.14.1 '@xtuc/long': 4.2.2 '@xtuc/ieee754@1.2.0': {} @@ -21619,7 +19443,7 @@ snapshots: '@yarnpkg/lockfile@1.1.0': {} - '@yarnpkg/parsers@3.0.0-rc.46': + '@yarnpkg/parsers@3.0.2': dependencies: js-yaml: 3.14.1 tslib: 2.8.1 @@ -21646,10 +19470,6 @@ snapshots: mime-types: 2.1.35 negotiator: 0.6.3 - acorn-import-attributes@1.9.5(acorn@8.14.0): - dependencies: - acorn: 8.14.0 - acorn-jsx@5.3.2(acorn@8.14.0): dependencies: acorn: 8.14.0 @@ -21668,8 +19488,6 @@ snapshots: acorn@7.4.1: {} - acorn@8.12.1: {} - acorn@8.14.0: {} add-stream@1.0.0: {} @@ -21680,13 +19498,7 @@ snapshots: agent-base@6.0.2: dependencies: - debug: 4.4.0 - transitivePeerDependencies: - - supports-color - - agent-base@7.1.1: - dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -21724,11 +19536,11 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.1 + fast-uri: 3.0.3 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - algoliasearch-helper@3.22.5(algoliasearch@4.24.0): + algoliasearch-helper@3.22.6(algoliasearch@4.24.0): dependencies: '@algolia/events': 4.0.1 algoliasearch: 4.24.0 @@ -21751,6 +19563,24 @@ snapshots: '@algolia/requester-node-http': 4.24.0 '@algolia/transporter': 4.24.0 + algoliasearch@5.18.0: + dependencies: + '@algolia/client-abtesting': 5.18.0 + '@algolia/client-analytics': 5.18.0 + '@algolia/client-common': 5.18.0 + '@algolia/client-insights': 5.18.0 + '@algolia/client-personalization': 5.18.0 + '@algolia/client-query-suggestions': 5.18.0 + '@algolia/client-search': 5.18.0 + '@algolia/ingestion': 1.18.0 + '@algolia/monitoring': 1.18.0 + '@algolia/recommend': 5.18.0 + '@algolia/requester-browser-xhr': 5.18.0 + '@algolia/requester-fetch': 5.18.0 + '@algolia/requester-node-http': 5.18.0 + + alien-signals@0.2.2: {} + allure-js-commons@2.15.1: dependencies: md5: 2.3.0 @@ -21775,10 +19605,6 @@ snapshots: ansi-regex@6.1.0: {} - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 @@ -21828,14 +19654,12 @@ snapshots: dependencies: deep-equal: 2.2.3 - aria-query@5.3.1: {} - aria-query@5.3.2: {} array-buffer-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 - is-array-buffer: 3.0.4 + call-bind: 1.0.8 + is-array-buffer: 3.0.5 array-differ@3.0.0: {} @@ -21843,50 +19667,17 @@ snapshots: array-ify@1.0.0: {} - array-includes@3.1.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - is-string: 1.0.7 - array-union@2.1.0: {} - array.prototype.findlastindex@1.2.5: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-shim-unscopables: 1.0.2 - - array.prototype.flat@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - - array.prototype.flatmap@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - - arraybuffer.prototype.slice@1.0.3: + arraybuffer.prototype.slice@1.0.4: dependencies: array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.3 + es-abstract: 1.23.6 es-errors: 1.3.0 - get-intrinsic: 1.2.4 - is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 + get-intrinsic: 1.2.6 + is-array-buffer: 3.0.5 arrify@1.0.1: {} @@ -21906,7 +19697,7 @@ snapshots: ast-types@0.16.1: dependencies: - tslib: 2.7.0 + tslib: 2.8.1 astring@1.9.0: {} @@ -21918,14 +19709,14 @@ snapshots: at-least-node@1.0.0: {} - autoprefixer@10.4.20(postcss@8.4.47): + autoprefixer@10.4.20(postcss@8.4.49): dependencies: - browserslist: 4.23.3 - caniuse-lite: 1.0.30001660 + browserslist: 4.24.3 + caniuse-lite: 1.0.30001689 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: @@ -21934,32 +19725,32 @@ snapshots: axe-core@4.2.3: {} - axios@1.7.7: + axios@1.7.9: dependencies: follow-redirects: 1.15.9 - form-data: 4.0.0 + form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: - debug axobject-query@4.1.0: {} - b4a@1.6.6: {} + b4a@1.6.7: {} - babel-loader@9.2.1(@babel/core@7.25.8)(webpack@5.94.0(@swc/core@1.7.26)): + babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: - '@babel/core': 7.25.8 + '@babel/core': 7.26.0 find-cache-dir: 4.0.0 - schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.7.26) + schema-utils: 4.3.0 + webpack: 5.97.1(@swc/core@1.10.1) babel-plugin-dynamic-import-node@2.3.3: dependencies: - object.assign: 4.1.5 + object.assign: 4.1.6 babel-plugin-istanbul@6.1.1: dependencies: - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.1 @@ -21967,51 +19758,27 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.8): + babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.0): dependencies: - '@babel/compat-data': 7.25.8 - '@babel/core': 7.25.8 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.26.0): - dependencies: - '@babel/compat-data': 7.25.8 + '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.0) + '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) semver: 6.3.1 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.8): - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8) - core-js-compat: 3.38.1 - transitivePeerDependencies: - - supports-color - babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.26.0): dependencies: '@babel/core': 7.26.0 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.0) - core-js-compat: 3.38.1 + '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) + core-js-compat: 3.39.0 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.8): - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.26.0): + babel-plugin-polyfill-regenerator@0.6.3(@babel/core@7.26.0): dependencies: '@babel/core': 7.26.0 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.0) + '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) transitivePeerDependencies: - supports-color @@ -22023,14 +19790,14 @@ snapshots: balanced-match@1.0.2: {} - bare-events@2.4.2: + bare-events@2.5.0: optional: true bare-fs@2.3.5: dependencies: - bare-events: 2.4.2 + bare-events: 2.5.0 bare-path: 2.1.3 - bare-stream: 2.3.0 + bare-stream: 2.6.1 optional: true bare-os@2.4.4: @@ -22041,10 +19808,9 @@ snapshots: bare-os: 2.4.4 optional: true - bare-stream@2.3.0: + bare-stream@2.6.1: dependencies: - b4a: 1.6.6 - streamx: 2.20.1 + streamx: 2.21.1 optional: true base64-js@1.5.1: {} @@ -22102,7 +19868,7 @@ snapshots: transitivePeerDependencies: - supports-color - bonjour-service@1.2.1: + bonjour-service@1.3.0: dependencies: fast-deep-equal: 3.1.3 multicast-dns: 7.2.5 @@ -22137,7 +19903,7 @@ snapshots: dependencies: ansi-align: 3.0.1 camelcase: 7.0.1 - chalk: 5.3.0 + chalk: 5.4.0 cli-boxes: 3.0.0 string-width: 5.1.2 type-fest: 2.19.0 @@ -22159,26 +19925,12 @@ snapshots: browser-stdout@1.3.1: {} - browserslist@4.23.3: + browserslist@4.24.3: dependencies: - caniuse-lite: 1.0.30001660 - electron-to-chromium: 1.5.23 - node-releases: 2.0.18 - update-browserslist-db: 1.1.0(browserslist@4.23.3) - - browserslist@4.24.0: - dependencies: - caniuse-lite: 1.0.30001669 - electron-to-chromium: 1.5.41 - node-releases: 2.0.18 - update-browserslist-db: 1.1.1(browserslist@4.24.0) - - browserslist@4.24.2: - dependencies: - caniuse-lite: 1.0.30001687 - electron-to-chromium: 1.5.72 + caniuse-lite: 1.0.30001689 + electron-to-chromium: 1.5.74 node-releases: 2.0.19 - update-browserslist-db: 1.1.1(browserslist@4.24.2) + update-browserslist-db: 1.1.1(browserslist@4.24.3) browserstack-local@1.5.5: dependencies: @@ -22228,19 +19980,19 @@ snapshots: bytes@3.1.2: {} - c12@1.11.2(magicast@0.3.5): + c12@2.0.1(magicast@0.3.5): dependencies: - chokidar: 3.6.0 - confbox: 0.1.7 + chokidar: 4.0.2 + confbox: 0.1.8 defu: 6.1.4 dotenv: 16.4.7 giget: 1.2.3 - jiti: 1.21.6 - mlly: 1.7.2 + jiti: 2.4.2 + mlly: 1.7.3 ohash: 1.1.4 pathe: 1.1.2 perfect-debounce: 1.0.0 - pkg-types: 1.2.0 + pkg-types: 1.2.1 rc9: 2.1.2 optionalDependencies: magicast: 0.3.5 @@ -22320,14 +20072,23 @@ snapshots: normalize-url: 6.1.0 responselike: 2.0.1 - call-bind@1.0.7: + call-bind-apply-helpers@1.0.1: dependencies: - es-define-property: 1.0.0 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-define-property: 1.0.1 + get-intrinsic: 1.2.6 set-function-length: 1.2.2 + call-bound@1.0.3: + dependencies: + call-bind-apply-helpers: 1.0.1 + get-intrinsic: 1.2.6 + callsite@1.0.0: {} callsites@3.1.0: {} @@ -22355,28 +20116,24 @@ snapshots: caniuse-api@3.0.0: dependencies: - browserslist: 4.24.2 - caniuse-lite: 1.0.30001687 + browserslist: 4.24.3 + caniuse-lite: 1.0.30001689 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001660: {} - - caniuse-lite@1.0.30001669: {} - - caniuse-lite@1.0.30001687: {} + caniuse-lite@1.0.30001689: {} capital-case@1.0.4: dependencies: no-case: 3.0.4 - tslib: 2.7.0 + tslib: 2.8.1 upper-case-first: 2.0.2 ccount@2.0.1: {} cddl2ts@0.2.2: dependencies: - '@babel/parser': 7.25.6 + '@babel/parser': 7.26.3 camelcase: 8.0.0 cddl: 0.8.5 recast: 0.23.9 @@ -22394,12 +20151,6 @@ snapshots: loupe: 3.1.2 pathval: 2.0.0 - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - chalk@3.0.0: dependencies: ansi-styles: 4.3.0 @@ -22415,7 +20166,7 @@ snapshots: ansi-styles: 4.3.0 supports-color: 7.2.0 - chalk@5.3.0: {} + chalk@5.4.0: {} change-case@4.1.2: dependencies: @@ -22430,7 +20181,7 @@ snapshots: path-case: 3.0.4 sentence-case: 3.0.4 snake-case: 3.0.4 - tslib: 2.7.0 + tslib: 2.8.1 change-case@5.4.4: {} @@ -22467,10 +20218,10 @@ snapshots: domutils: 3.1.0 encoding-sniffer: 0.2.0 htmlparser2: 9.1.0 - parse5: 7.1.2 - parse5-htmlparser2-tree-adapter: 7.0.0 + parse5: 7.2.1 + parse5-htmlparser2-tree-adapter: 7.1.0 parse5-parser-stream: 7.1.2 - undici: 6.19.8 + undici: 6.21.0 whatwg-mimetype: 4.0.0 cheerio@1.0.0-rc.12: @@ -22480,8 +20231,8 @@ snapshots: domhandler: 5.0.3 domutils: 3.1.0 htmlparser2: 8.0.2 - parse5: 7.1.2 - parse5-htmlparser2-tree-adapter: 7.0.0 + parse5: 7.2.1 + parse5-htmlparser2-tree-adapter: 7.1.0 chokidar@3.6.0: dependencies: @@ -22495,9 +20246,9 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chokidar@4.0.0: + chokidar@4.0.2: dependencies: - readdirp: 4.0.1 + readdirp: 4.0.2 chownr@1.1.4: {} @@ -22521,13 +20272,6 @@ snapshots: urlpattern-polyfill: 10.0.0 zod: 3.23.8 - chromium-bidi@0.6.4(devtools-protocol@0.0.1312386): - dependencies: - devtools-protocol: 0.0.1312386 - mitt: 3.0.1 - urlpattern-polyfill: 10.0.0 - zod: 3.23.8 - chromium-bidi@0.6.5(devtools-protocol@0.0.1342118): dependencies: devtools-protocol: 0.0.1342118 @@ -22539,7 +20283,7 @@ snapshots: ci-info@3.9.0: {} - ci-info@4.0.0: {} + ci-info@4.1.0: {} citty@0.1.6: dependencies: @@ -22579,8 +20323,6 @@ snapshots: cli-spinners@2.9.2: {} - cli-spinners@3.2.0: {} - cli-table3@0.6.3: dependencies: string-width: 4.2.3 @@ -22635,16 +20377,10 @@ snapshots: collapse-white-space@2.1.0: {} - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - color-convert@2.0.1: dependencies: color-name: 1.1.4 - color-name@1.1.3: {} - color-name@1.1.4: {} color-string@1.9.1: @@ -22734,20 +20470,18 @@ snapshots: tar-stream: 1.6.2 yazl: 2.5.1 - compression@1.7.4: + compression@1.7.5: dependencies: - accepts: 1.3.8 - bytes: 3.0.0 + bytes: 3.1.2 compressible: 2.0.18 debug: 2.6.9 + negotiator: 0.6.4 on-headers: 1.0.2 - safe-buffer: 5.1.2 + safe-buffer: 5.2.1 vary: 1.1.2 transitivePeerDependencies: - supports-color - computeds@0.0.1: {} - concat-map@0.0.1: {} concat-stream@2.0.0: @@ -22757,7 +20491,7 @@ snapshots: readable-stream: 3.6.2 typedarray: 0.0.6 - confbox@0.1.7: {} + confbox@0.1.8: {} config-chain@1.1.13: dependencies: @@ -22783,10 +20517,7 @@ snapshots: connect-history-api-fallback@2.0.0: {} - consola@2.15.3: {} - - consola@3.2.3: - optional: true + consola@3.2.3: {} console-control-strings@1.1.0: {} @@ -22864,19 +20595,19 @@ snapshots: cookie@0.3.1: {} - cookie@0.6.0: {} + cookie@0.7.1: {} copy-text-to-clipboard@3.2.0: {} - copy-webpack-plugin@11.0.0(webpack@5.94.0(@swc/core@1.7.26)): + copy-webpack-plugin@11.0.0(webpack@5.97.1(@swc/core@1.10.1)): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 globby: 13.2.2 normalize-path: 3.0.0 - schema-utils: 4.2.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) copyfiles@2.4.1: dependencies: @@ -22888,13 +20619,13 @@ snapshots: untildify: 4.0.0 yargs: 16.2.0 - core-js-compat@3.38.1: + core-js-compat@3.39.0: dependencies: - browserslist: 4.23.3 + browserslist: 4.24.3 - core-js-pure@3.38.1: {} + core-js-pure@3.39.0: {} - core-js@3.38.1: {} + core-js@3.39.0: {} core-util-is@1.0.3: {} @@ -22914,23 +20645,23 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 - cosmiconfig@8.3.6(typescript@5.6.2): + cosmiconfig@8.3.6(typescript@5.7.2): dependencies: import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 optionalDependencies: - typescript: 5.6.2 + typescript: 5.7.2 - cosmiconfig@9.0.0(typescript@5.6.3): + cosmiconfig@9.0.0(typescript@5.7.2): dependencies: env-paths: 2.2.1 import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 optionalDependencies: - typescript: 5.6.3 + typescript: 5.7.2 crc-32@1.2.2: {} @@ -22941,7 +20672,7 @@ snapshots: cross-env@7.0.3: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 cross-fetch@3.1.8(encoding@0.1.13): dependencies: @@ -22949,7 +20680,7 @@ snapshots: transitivePeerDependencies: - encoding - cross-spawn@7.0.3: + cross-spawn@7.0.6: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 @@ -22965,35 +20696,51 @@ snapshots: csp_evaluator@1.1.0: {} - css-declaration-sorter@7.2.0(postcss@8.4.47): + css-blank-pseudo@7.0.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 - css-loader@6.11.0(webpack@5.94.0(@swc/core@1.7.26)): + css-declaration-sorter@7.2.0(postcss@8.4.49): dependencies: - icss-utils: 5.1.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-modules-extract-imports: 3.1.0(postcss@8.4.47) - postcss-modules-local-by-default: 4.0.5(postcss@8.4.47) - postcss-modules-scope: 3.2.0(postcss@8.4.47) - postcss-modules-values: 4.0.0(postcss@8.4.47) + postcss: 8.4.49 + + css-has-pseudo@7.0.2(postcss@8.4.49): + dependencies: + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + postcss-value-parser: 4.2.0 + + css-loader@6.11.0(webpack@5.97.1(@swc/core@1.10.1)): + dependencies: + icss-utils: 5.1.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-modules-extract-imports: 3.1.0(postcss@8.4.49) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.49) + postcss-modules-scope: 3.2.1(postcss@8.4.49) + postcss-modules-values: 4.0.0(postcss@8.4.49) postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) - css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.94.0(@swc/core@1.7.26)): + css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 - cssnano: 6.1.2(postcss@8.4.47) + cssnano: 6.1.2(postcss@8.4.49) jest-worker: 29.7.0 - postcss: 8.4.47 - schema-utils: 4.2.0 + postcss: 8.4.49 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) optionalDependencies: clean-css: 5.3.3 + css-prefers-color-scheme@10.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + css-select@4.3.0: dependencies: boolbase: 1.0.0 @@ -23010,8 +20757,6 @@ snapshots: domutils: 3.1.0 nth-check: 2.1.1 - css-shorthand-properties@1.1.1: {} - css-shorthand-properties@1.1.2: {} css-tree@2.2.1: @@ -23030,62 +20775,64 @@ snapshots: css.escape@1.5.1: {} + cssdb@8.2.3: {} + cssesc@3.0.0: {} - cssnano-preset-advanced@6.1.2(postcss@8.4.47): + cssnano-preset-advanced@6.1.2(postcss@8.4.49): dependencies: - autoprefixer: 10.4.20(postcss@8.4.47) - browserslist: 4.24.0 - cssnano-preset-default: 6.1.2(postcss@8.4.47) - postcss: 8.4.47 - postcss-discard-unused: 6.0.5(postcss@8.4.47) - postcss-merge-idents: 6.0.3(postcss@8.4.47) - postcss-reduce-idents: 6.0.3(postcss@8.4.47) - postcss-zindex: 6.0.2(postcss@8.4.47) + autoprefixer: 10.4.20(postcss@8.4.49) + browserslist: 4.24.3 + cssnano-preset-default: 6.1.2(postcss@8.4.49) + postcss: 8.4.49 + postcss-discard-unused: 6.0.5(postcss@8.4.49) + postcss-merge-idents: 6.0.3(postcss@8.4.49) + postcss-reduce-idents: 6.0.3(postcss@8.4.49) + postcss-zindex: 6.0.2(postcss@8.4.49) - cssnano-preset-default@6.1.2(postcss@8.4.47): + cssnano-preset-default@6.1.2(postcss@8.4.49): dependencies: - browserslist: 4.24.0 - css-declaration-sorter: 7.2.0(postcss@8.4.47) - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 - postcss-calc: 9.0.1(postcss@8.4.47) - postcss-colormin: 6.1.0(postcss@8.4.47) - postcss-convert-values: 6.1.0(postcss@8.4.47) - postcss-discard-comments: 6.0.2(postcss@8.4.47) - postcss-discard-duplicates: 6.0.3(postcss@8.4.47) - postcss-discard-empty: 6.0.3(postcss@8.4.47) - postcss-discard-overridden: 6.0.2(postcss@8.4.47) - postcss-merge-longhand: 6.0.5(postcss@8.4.47) - postcss-merge-rules: 6.1.1(postcss@8.4.47) - postcss-minify-font-values: 6.1.0(postcss@8.4.47) - postcss-minify-gradients: 6.0.3(postcss@8.4.47) - postcss-minify-params: 6.1.0(postcss@8.4.47) - postcss-minify-selectors: 6.0.4(postcss@8.4.47) - postcss-normalize-charset: 6.0.2(postcss@8.4.47) - postcss-normalize-display-values: 6.0.2(postcss@8.4.47) - postcss-normalize-positions: 6.0.2(postcss@8.4.47) - postcss-normalize-repeat-style: 6.0.2(postcss@8.4.47) - postcss-normalize-string: 6.0.2(postcss@8.4.47) - postcss-normalize-timing-functions: 6.0.2(postcss@8.4.47) - postcss-normalize-unicode: 6.1.0(postcss@8.4.47) - postcss-normalize-url: 6.0.2(postcss@8.4.47) - postcss-normalize-whitespace: 6.0.2(postcss@8.4.47) - postcss-ordered-values: 6.0.2(postcss@8.4.47) - postcss-reduce-initial: 6.1.0(postcss@8.4.47) - postcss-reduce-transforms: 6.0.2(postcss@8.4.47) - postcss-svgo: 6.0.3(postcss@8.4.47) - postcss-unique-selectors: 6.0.4(postcss@8.4.47) + browserslist: 4.24.3 + css-declaration-sorter: 7.2.0(postcss@8.4.49) + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 + postcss-calc: 9.0.1(postcss@8.4.49) + postcss-colormin: 6.1.0(postcss@8.4.49) + postcss-convert-values: 6.1.0(postcss@8.4.49) + postcss-discard-comments: 6.0.2(postcss@8.4.49) + postcss-discard-duplicates: 6.0.3(postcss@8.4.49) + postcss-discard-empty: 6.0.3(postcss@8.4.49) + postcss-discard-overridden: 6.0.2(postcss@8.4.49) + postcss-merge-longhand: 6.0.5(postcss@8.4.49) + postcss-merge-rules: 6.1.1(postcss@8.4.49) + postcss-minify-font-values: 6.1.0(postcss@8.4.49) + postcss-minify-gradients: 6.0.3(postcss@8.4.49) + postcss-minify-params: 6.1.0(postcss@8.4.49) + postcss-minify-selectors: 6.0.4(postcss@8.4.49) + postcss-normalize-charset: 6.0.2(postcss@8.4.49) + postcss-normalize-display-values: 6.0.2(postcss@8.4.49) + postcss-normalize-positions: 6.0.2(postcss@8.4.49) + postcss-normalize-repeat-style: 6.0.2(postcss@8.4.49) + postcss-normalize-string: 6.0.2(postcss@8.4.49) + postcss-normalize-timing-functions: 6.0.2(postcss@8.4.49) + postcss-normalize-unicode: 6.1.0(postcss@8.4.49) + postcss-normalize-url: 6.0.2(postcss@8.4.49) + postcss-normalize-whitespace: 6.0.2(postcss@8.4.49) + postcss-ordered-values: 6.0.2(postcss@8.4.49) + postcss-reduce-initial: 6.1.0(postcss@8.4.49) + postcss-reduce-transforms: 6.0.2(postcss@8.4.49) + postcss-svgo: 6.0.3(postcss@8.4.49) + postcss-unique-selectors: 6.0.4(postcss@8.4.49) - cssnano-utils@4.0.2(postcss@8.4.47): + cssnano-utils@4.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - cssnano@6.1.2(postcss@8.4.47): + cssnano@6.1.2(postcss@8.4.49): dependencies: - cssnano-preset-default: 6.1.2(postcss@8.4.47) - lilconfig: 3.1.2 - postcss: 8.4.47 + cssnano-preset-default: 6.1.2(postcss@8.4.49) + lilconfig: 3.1.3 + postcss: 8.4.49 csso@5.0.5: dependencies: @@ -23103,7 +20850,7 @@ snapshots: csstype@3.1.3: {} - csv-stringify@6.5.1: {} + csv-stringify@6.5.2: {} csv-writer@1.6.0: {} @@ -23116,25 +20863,25 @@ snapshots: data-urls@5.0.0: dependencies: whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 data-view-buffer@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-offset@1.0.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 dateformat@3.0.3: {} @@ -23148,20 +20895,12 @@ snapshots: dependencies: ms: 2.0.0 - debug@3.2.7: - dependencies: - ms: 2.1.3 - - debug@4.3.7(supports-color@8.1.1): + debug@4.4.0(supports-color@8.1.1): dependencies: ms: 2.1.3 optionalDependencies: supports-color: 8.1.1 - debug@4.4.0: - dependencies: - ms: 2.1.3 - decamelize-keys@1.1.1: dependencies: decamelize: 1.2.0 @@ -23196,30 +20935,28 @@ snapshots: deep-equal@2.2.3: dependencies: array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 + call-bind: 1.0.8 es-get-iterator: 1.1.3 - get-intrinsic: 1.2.4 - is-arguments: 1.1.1 - is-array-buffer: 3.0.4 - is-date-object: 1.0.5 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.3 + get-intrinsic: 1.2.6 + is-arguments: 1.2.0 + is-array-buffer: 3.0.5 + is-date-object: 1.1.0 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 isarray: 2.0.5 object-is: 1.1.6 object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 - side-channel: 1.0.6 - which-boxed-primitive: 1.0.2 + object.assign: 4.1.6 + regexp.prototype.flags: 1.5.3 + side-channel: 1.1.0 + which-boxed-primitive: 1.1.1 which-collection: 1.0.2 - which-typed-array: 1.1.15 + which-typed-array: 1.1.18 deep-extend@0.6.0: {} deep-is@0.1.4: {} - deepmerge-ts@7.1.0: {} - deepmerge-ts@7.1.3: {} deepmerge@4.3.1: {} @@ -23238,9 +20975,9 @@ snapshots: define-data-property@1.1.4: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 - gopd: 1.0.1 + gopd: 1.2.0 define-lazy-prop@2.0.0: {} @@ -23274,17 +21011,17 @@ snapshots: depcheck@1.4.7: dependencies: - '@babel/parser': 7.25.6 - '@babel/traverse': 7.25.6 - '@vue/compiler-sfc': 3.5.6 + '@babel/parser': 7.26.3 + '@babel/traverse': 7.26.4 + '@vue/compiler-sfc': 3.5.13 callsite: 1.0.0 camelcase: 6.3.0 cosmiconfig: 7.1.0 - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) deps-regex: 0.2.0 findup-sync: 5.0.0 ignore: 5.3.2 - is-core-module: 2.15.1 + is-core-module: 2.16.0 js-yaml: 3.14.1 json5: 2.2.3 lodash: 4.17.21 @@ -23293,7 +21030,7 @@ snapshots: please-upgrade-node: 3.2.0 readdirp: 3.6.0 require-package-name: 2.0.1 - resolve: 1.22.8 + resolve: 1.22.9 resolve-from: 5.0.0 semver: 7.6.3 yargs: 16.2.0 @@ -23333,7 +21070,7 @@ snapshots: detect-port@1.6.1: dependencies: address: 1.2.2 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -23371,19 +21108,12 @@ snapshots: dependencies: '@leichtgewicht/ip-codec': 2.0.5 - doctrine@2.1.0: + docusaurus-theme-github-codeblock@2.0.2(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - esutils: 2.0.3 - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - docusaurus-theme-github-codeblock@2.0.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - '@docusaurus/types': 3.5.2(@swc/core@1.7.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@docusaurus/types': 3.6.3(@swc/core@1.10.1)(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) transitivePeerDependencies: - '@swc/core' + - acorn - esbuild - react - react-dom @@ -23446,12 +21176,10 @@ snapshots: dependencies: is-obj: 2.0.0 - dotenv-expand@11.0.6: + dotenv-expand@11.0.7: dependencies: dotenv: 16.4.7 - dotenv@16.4.5: {} - dotenv@16.4.7: {} dox@1.0.0: @@ -23462,9 +21190,15 @@ snapshots: dts-bundle-generator@9.5.1: dependencies: - typescript: 5.6.3 + typescript: 5.7.2 yargs: 17.7.2 + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + duplexer2@0.1.4: dependencies: readable-stream: 2.3.8 @@ -23486,23 +21220,13 @@ snapshots: '@types/which': 2.0.2 which: 2.0.2 - edgedriver@5.6.1: - dependencies: - '@wdio/logger': 8.38.0 - '@zip.js/zip.js': 2.7.54 - decamelize: 6.0.0 - edge-paths: 3.0.5 - fast-xml-parser: 4.5.0 - node-fetch: 3.3.2 - which: 4.0.0 - edgedriver@6.1.1: dependencies: '@wdio/logger': 9.1.3 '@zip.js/zip.js': 2.7.54 decamelize: 6.0.0 edge-paths: 3.0.5 - fast-xml-parser: 4.5.0 + fast-xml-parser: 4.5.1 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 node-fetch: 3.3.2 @@ -23523,7 +21247,7 @@ snapshots: ejs-lint@2.0.1: dependencies: - chalk: 5.3.0 + chalk: 5.4.0 ejs: 3.1.10 ejs-include-regex: 1.0.0 globby: 13.2.2 @@ -23536,11 +21260,7 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.23: {} - - electron-to-chromium@1.5.41: {} - - electron-to-chromium@1.5.72: {} + electron-to-chromium@1.5.74: {} emoji-regex@10.4.0: {} @@ -23606,72 +21326,72 @@ snapshots: dependencies: stackframe: 1.3.4 - es-abstract@1.23.3: + es-abstract@1.23.6: dependencies: array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 + arraybuffer.prototype.slice: 1.0.4 available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 data-view-buffer: 1.0.1 data-view-byte-length: 1.0.1 data-view-byte-offset: 1.0.0 - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 - get-symbol-description: 1.0.2 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.7 + get-intrinsic: 1.2.6 + get-symbol-description: 1.1.0 globalthis: 1.0.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 - internal-slot: 1.0.7 - is-array-buffer: 3.0.4 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 is-callable: 1.2.7 - is-data-view: 1.0.1 + is-data-view: 1.0.2 is-negative-zero: 2.0.3 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 - is-typed-array: 1.1.13 - is-weakref: 1.0.2 + is-regex: 1.2.1 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.0 + math-intrinsics: 1.0.0 object-inspect: 1.13.3 object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 + object.assign: 4.1.6 + regexp.prototype.flags: 1.5.3 + safe-array-concat: 1.1.3 + safe-regex-test: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 - typed-array-buffer: 1.0.2 - typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.2 - typed-array-length: 1.0.6 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.15 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.3 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.18 - es-define-property@1.0.0: - dependencies: - get-intrinsic: 1.2.4 + es-define-property@1.0.1: {} es-errors@1.3.0: {} es-get-iterator@1.1.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - is-arguments: 1.1.1 + call-bind: 1.0.8 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 + is-arguments: 1.2.0 is-map: 2.0.3 is-set: 2.0.3 - is-string: 1.0.7 + is-string: 1.1.1 isarray: 2.0.5 - stop-iteration-iterator: 1.0.0 + stop-iteration-iterator: 1.1.0 es-module-lexer@1.5.4: {} @@ -23681,19 +21401,29 @@ snapshots: es-set-tostringtag@2.0.3: dependencies: - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 has-tostringtag: 1.0.2 hasown: 2.0.2 - es-shim-unscopables@1.0.2: - dependencies: - hasown: 2.0.2 - - es-to-primitive@1.2.1: + es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + esast-util-from-estree@2.0.0: + dependencies: + '@types/estree-jsx': 1.0.5 + devlop: 1.1.0 + estree-util-visit: 2.0.0 + unist-util-position-from-estree: 2.0.0 + + esast-util-from-js@2.0.1: + dependencies: + '@types/estree-jsx': 1.0.5 + acorn: 8.14.0 + esast-util-from-estree: 2.0.0 + vfile-message: 4.0.2 esbuild-android-64@0.14.54: optional: true @@ -23751,12 +21481,13 @@ snapshots: fs-extra: 10.1.0 globby: 11.1.0 - esbuild-plugin-d.ts@1.3.0(typescript@5.6.3): + esbuild-plugin-d.ts@1.3.1(typescript@5.7.2): dependencies: chalk: 4.1.2 dts-bundle-generator: 9.5.1 lodash.merge: 4.6.2 - typescript: 5.6.3 + type-fest: 4.30.2 + typescript: 5.7.2 esbuild-sunos-64@0.14.54: optional: true @@ -23909,65 +21640,19 @@ snapshots: string-width: 4.2.3 supports-hyperlinks: 2.3.0 - eslint-import-resolver-node@0.3.9: + eslint-plugin-unicorn@56.0.1(eslint@9.17.0(jiti@2.4.2)): dependencies: - debug: 3.2.7 - is-core-module: 2.15.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - eslint-module-utils@2.11.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint@8.57.1): - dependencies: - debug: 3.2.7 - optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - eslint: 8.57.1 - eslint-import-resolver-node: 0.3.9 - transitivePeerDependencies: - - supports-color - - eslint-plugin-import@2.30.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1): - dependencies: - '@rtsao/scc': 1.1.0 - array-includes: 3.1.8 - array.prototype.findlastindex: 1.2.5 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.57.1 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.11.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint-import-resolver-node@0.3.9)(eslint@8.57.1) - hasown: 2.0.2 - is-core-module: 2.15.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.8 - object.groupby: 1.0.3 - object.values: 1.2.0 - semver: 6.3.1 - tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@8.57.1)(typescript@5.6.3) - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - eslint-plugin-unicorn@55.0.0(eslint@8.57.1): - dependencies: - '@babel/helper-validator-identifier': 7.24.7 - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) - ci-info: 4.0.0 + '@babel/helper-validator-identifier': 7.25.9 + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0(jiti@2.4.2)) + ci-info: 4.1.0 clean-regexp: 1.0.0 - core-js-compat: 3.38.1 - eslint: 8.57.1 + core-js-compat: 3.39.0 + eslint: 9.17.0(jiti@2.4.2) esquery: 1.6.0 - globals: 15.9.0 + globals: 15.14.0 indent-string: 4.0.0 is-builtin-module: 3.2.1 - jsesc: 3.0.2 + jsesc: 3.1.0 pluralize: 8.0.0 read-pkg-up: 7.0.1 regexp-tree: 0.1.27 @@ -23975,6 +21660,14 @@ snapshots: semver: 7.6.3 strip-indent: 3.0.0 + eslint-plugin-unused-imports@4.1.4(@typescript-eslint/eslint-plugin@8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2)): + dependencies: + eslint: 9.17.0(jiti@2.4.2) + optionalDependencies: + '@typescript-eslint/eslint-plugin': 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + + eslint-plugin-wdio@9.2.11: {} + eslint-rule-docs@1.1.235: {} eslint-scope@5.1.1: @@ -23982,82 +21675,37 @@ snapshots: esrecurse: 4.3.0 estraverse: 4.3.0 - eslint-scope@7.2.2: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-scope@8.0.2: + eslint-scope@8.2.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.0.0: {} + eslint-visitor-keys@4.2.0: {} - eslint@8.57.1: + eslint@9.17.0(jiti@2.4.2): dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) - '@eslint-community/regexpp': 4.11.1 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.57.1 - '@humanwhocodes/config-array': 0.13.0 + '@eslint-community/eslint-utils': 4.4.1(eslint@9.17.0(jiti@2.4.2)) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.19.1 + '@eslint/core': 0.9.1 + '@eslint/eslintrc': 3.2.0 + '@eslint/js': 9.17.0 + '@eslint/plugin-kit': 0.2.4 + '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 + '@humanwhocodes/retry': 0.4.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.7(supports-color@8.1.1) - doctrine: 3.0.0 + cross-spawn: 7.0.6 + debug: 4.4.0(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.6.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - - eslint@9.10.0(jiti@1.21.6): - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.10.0(jiti@1.21.6)) - '@eslint-community/regexpp': 4.11.1 - '@eslint/config-array': 0.18.0 - '@eslint/eslintrc': 3.1.0 - '@eslint/js': 9.10.0 - '@eslint/plugin-kit': 0.1.0 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.3.0 - '@nodelib/fs.walk': 1.2.8 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.7(supports-color@8.1.1) - escape-string-regexp: 4.0.0 - eslint-scope: 8.0.2 - eslint-visitor-keys: 4.0.0 - espree: 10.1.0 + eslint-scope: 8.2.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -24067,30 +21715,21 @@ snapshots: ignore: 5.3.2 imurmurhash: 0.1.4 is-glob: 4.0.3 - is-path-inside: 3.0.3 json-stable-stringify-without-jsonify: 1.0.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.4 - strip-ansi: 6.0.1 - text-table: 0.2.0 optionalDependencies: - jiti: 1.21.6 + jiti: 2.4.2 transitivePeerDependencies: - supports-color - espree@10.1.0: + espree@10.3.0: dependencies: acorn: 8.14.0 acorn-jsx: 5.3.2(acorn@8.14.0) - eslint-visitor-keys: 4.0.0 - - espree@9.6.1: - dependencies: - acorn: 8.14.0 - acorn-jsx: 5.3.2(acorn@8.14.0) - eslint-visitor-keys: 3.4.3 + eslint-visitor-keys: 4.2.0 esprima@4.0.1: {} @@ -24119,13 +21758,18 @@ snapshots: estree-util-is-identifier-name@3.0.0: {} + estree-util-scope@1.0.0: + dependencies: + '@types/estree': 1.0.6 + devlop: 1.1.0 + estree-util-to-js@2.0.0: dependencies: '@types/estree-jsx': 1.0.5 astring: 1.9.0 source-map: 0.7.4 - estree-util-value-to-estree@3.1.2: + estree-util-value-to-estree@3.2.1: dependencies: '@types/estree': 1.0.6 @@ -24173,7 +21817,7 @@ snapshots: execa@5.0.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 6.0.0 human-signals: 2.1.0 is-stream: 2.0.0 @@ -24185,7 +21829,7 @@ snapshots: execa@5.1.1: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 2.1.0 is-stream: 2.0.1 @@ -24197,7 +21841,7 @@ snapshots: execa@8.0.1: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 8.0.1 human-signals: 5.0.0 is-stream: 3.0.0 @@ -24208,17 +21852,17 @@ snapshots: strip-final-newline: 3.0.0 optional: true - execa@9.3.1: + execa@9.5.2: dependencies: '@sindresorhus/merge-streams': 4.0.0 - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 figures: 6.1.0 get-stream: 9.0.1 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.1.0 + npm-run-path: 6.0.0 + pretty-ms: 9.2.0 signal-exit: 4.1.0 strip-final-newline: 4.0.0 yoctocolors: 2.1.1 @@ -24231,58 +21875,6 @@ snapshots: expect-type@1.1.0: {} - expect-webdriverio@5.0.2(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio): - dependencies: - '@vitest/snapshot': 2.1.8 - '@wdio/globals': 9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1) - '@wdio/logger': 9.1.3 - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - webdriverio: link:packages/webdriverio - optional: true - - expect-webdriverio@5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio): - dependencies: - '@vitest/snapshot': 2.1.8 - '@wdio/globals': link:packages/wdio-globals - '@wdio/logger': 9.1.3 - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - webdriverio: link:packages/webdriverio - - expect-webdriverio@5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@9.4.3(puppeteer-core@23.4.1)): - dependencies: - '@vitest/snapshot': 2.1.8 - '@wdio/globals': link:packages/wdio-globals - '@wdio/logger': link:packages/wdio-logger - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - webdriverio: 9.4.3(puppeteer-core@23.4.1) - - expect-webdriverio@5.0.2(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio): - dependencies: - '@vitest/snapshot': 2.1.8 - '@wdio/globals': link:packages/wdio-globals - '@wdio/logger': link:packages/wdio-logger - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - webdriverio: link:packages/webdriverio - - expect-webdriverio@5.0.5(@wdio/globals@9.0.9(@wdio/logger@9.0.8)(puppeteer-core@23.4.1))(@wdio/logger@9.0.8)(webdriverio@9.0.9(puppeteer-core@23.4.1)): - dependencies: - '@vitest/snapshot': 2.1.8 - '@wdio/globals': 9.0.9(@wdio/logger@9.0.8)(puppeteer-core@23.4.1) - '@wdio/logger': 9.0.8 - expect: 29.7.0 - jest-matcher-utils: 29.7.0 - lodash.isequal: 4.5.0 - webdriverio: 9.0.9(puppeteer-core@23.4.1) - optional: true - expect-webdriverio@5.0.5(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@9.4.3(puppeteer-core@23.4.1)): dependencies: '@vitest/snapshot': 2.1.8 @@ -24293,6 +21885,47 @@ snapshots: lodash.isequal: 4.5.0 webdriverio: 9.4.3(puppeteer-core@23.4.1) + expect-webdriverio@5.0.5(@wdio/globals@9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1))(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio): + dependencies: + '@vitest/snapshot': 2.1.8 + '@wdio/globals': 9.4.3(@wdio/logger@9.1.3)(puppeteer-core@23.4.1) + '@wdio/logger': 9.1.3 + expect: 29.7.0 + jest-matcher-utils: 29.7.0 + lodash.isequal: 4.5.0 + webdriverio: link:packages/webdriverio + optional: true + + expect-webdriverio@5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@9.1.3)(webdriverio@packages+webdriverio): + dependencies: + '@vitest/snapshot': 2.1.8 + '@wdio/globals': link:packages/wdio-globals + '@wdio/logger': 9.1.3 + expect: 29.7.0 + jest-matcher-utils: 29.7.0 + lodash.isequal: 4.5.0 + webdriverio: link:packages/webdriverio + + expect-webdriverio@5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@9.4.3(puppeteer-core@23.4.1)): + dependencies: + '@vitest/snapshot': 2.1.8 + '@wdio/globals': link:packages/wdio-globals + '@wdio/logger': link:packages/wdio-logger + expect: 29.7.0 + jest-matcher-utils: 29.7.0 + lodash.isequal: 4.5.0 + webdriverio: 9.4.3(puppeteer-core@23.4.1) + + expect-webdriverio@5.0.5(@wdio/globals@packages+wdio-globals)(@wdio/logger@packages+wdio-logger)(webdriverio@packages+webdriverio): + dependencies: + '@vitest/snapshot': 2.1.8 + '@wdio/globals': link:packages/wdio-globals + '@wdio/logger': link:packages/wdio-logger + expect: 29.7.0 + jest-matcher-utils: 29.7.0 + lodash.isequal: 4.5.0 + webdriverio: link:packages/webdriverio + expect@29.7.0: dependencies: '@jest/expect-utils': 29.7.0 @@ -24312,14 +21945,14 @@ snapshots: exponential-backoff@3.1.1: {} - express@4.21.0: + express@4.21.2: dependencies: accepts: 1.3.8 array-flatten: 1.1.1 body-parser: 1.20.3 content-disposition: 0.5.4 content-type: 1.0.5 - cookie: 0.6.0 + cookie: 0.7.1 cookie-signature: 1.0.6 debug: 2.6.9 depd: 2.0.0 @@ -24333,7 +21966,7 @@ snapshots: methods: 1.1.2 on-finished: 2.4.1 parseurl: 1.3.3 - path-to-regexp: 0.1.10 + path-to-regexp: 0.1.12 proxy-addr: 2.0.7 qs: 6.13.0 range-parser: 1.2.1 @@ -24362,7 +21995,7 @@ snapshots: extract-zip@2.0.1: dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: @@ -24388,17 +22021,13 @@ snapshots: fast-levenshtein@2.0.6: {} - fast-uri@3.0.1: {} - - fast-url-parser@1.1.3: - dependencies: - punycode: 1.4.1 + fast-uri@3.0.3: {} fast-xml-parser@4.4.1: dependencies: strnum: 1.0.5 - fast-xml-parser@4.5.0: + fast-xml-parser@4.5.1: dependencies: strnum: 1.0.5 @@ -24443,19 +22072,15 @@ snapshots: dependencies: is-unicode-supported: 2.1.0 - file-entry-cache@6.0.1: - dependencies: - flat-cache: 3.2.0 - file-entry-cache@8.0.0: dependencies: flat-cache: 4.0.1 - file-loader@6.2.0(webpack@5.94.0(@swc/core@1.7.26)): + file-loader@6.2.0(webpack@5.97.1(@swc/core@1.10.1)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) filelist@1.0.4: dependencies: @@ -24532,20 +22157,14 @@ snapshots: minimist: 1.2.8 xml2js: 0.6.2 - flat-cache@3.2.0: - dependencies: - flatted: 3.3.1 - keyv: 4.5.4 - rimraf: 3.0.2 - flat-cache@4.0.1: dependencies: - flatted: 3.3.1 + flatted: 3.3.2 keyv: 4.5.4 flat@5.0.2: {} - flatted@3.3.1: {} + flatted@3.3.2: {} flushwritable@1.0.0: {} @@ -24557,10 +22176,10 @@ snapshots: foreground-child@3.3.0: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@6.5.3(eslint@9.10.0(jiti@1.21.6))(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)): + fork-ts-checker-webpack-plugin@6.5.3(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@babel/code-frame': 7.26.2 '@types/json-schema': 7.0.15 @@ -24575,14 +22194,14 @@ snapshots: schema-utils: 2.7.0 semver: 7.6.3 tapable: 1.1.3 - typescript: 5.6.2 - webpack: 5.94.0(@swc/core@1.7.26) + typescript: 5.7.2 + webpack: 5.97.1(@swc/core@1.10.1) optionalDependencies: - eslint: 9.10.0(jiti@1.21.6) + eslint: 9.17.0(jiti@2.4.2) form-data-encoder@2.1.4: {} - form-data@4.0.0: + form-data@4.0.1: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -24649,28 +22268,16 @@ snapshots: function-bind@1.1.2: {} - function.prototype.name@1.1.6: + function.prototype.name@1.1.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.3 functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 functions-have-names@1.2.3: {} - geckodriver@4.5.1: - dependencies: - '@wdio/logger': 9.1.3 - '@zip.js/zip.js': 2.7.54 - decamelize: 6.0.0 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 - node-fetch: 3.3.2 - tar-fs: 3.0.6 - which: 4.0.0 - transitivePeerDependencies: - - supports-color - geckodriver@5.0.0: dependencies: '@wdio/logger': 9.1.3 @@ -24688,15 +22295,20 @@ snapshots: get-caller-file@2.0.5: {} - get-east-asian-width@1.2.0: {} + get-east-asian-width@1.3.0: {} - get-intrinsic@1.2.4: + get-intrinsic@1.2.6: dependencies: + call-bind-apply-helpers: 1.0.1 + dunder-proto: 1.0.1 + es-define-property: 1.0.1 es-errors: 1.3.0 + es-object-atoms: 1.0.0 function-bind: 1.1.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + gopd: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 + math-intrinsics: 1.0.0 get-own-enumerable-property-symbols@3.0.2: {} @@ -24735,30 +22347,21 @@ snapshots: '@sec-ant/readable-stream': 0.4.1 is-stream: 4.0.1 - get-symbol-description@1.0.2: + get-symbol-description@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 es-errors: 1.3.0 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 get-tsconfig@4.8.1: dependencies: resolve-pkg-maps: 1.0.0 - get-uri@6.0.3: - dependencies: - basic-ftp: 5.0.5 - data-uri-to-buffer: 6.0.2 - debug: 4.4.0 - fs-extra: 11.2.0 - transitivePeerDependencies: - - supports-color - get-uri@6.0.4: dependencies: basic-ftp: 5.0.5 data-uri-to-buffer: 6.0.2 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -24768,7 +22371,7 @@ snapshots: consola: 3.2.3 defu: 6.1.4 node-fetch-native: 1.6.4 - nypm: 0.3.11 + nypm: 0.3.12 ohash: 1.1.4 pathe: 1.1.2 tar: 6.2.1 @@ -24829,16 +22432,16 @@ snapshots: jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 1.11.1 glob@11.0.0: dependencies: foreground-child: 3.3.0 - jackspeak: 4.0.1 + jackspeak: 4.0.2 minimatch: 10.0.1 minipass: 7.1.2 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 path-scurry: 2.0.0 glob@7.2.3: @@ -24899,18 +22502,14 @@ snapshots: globals@11.12.0: {} - globals@13.24.0: - dependencies: - type-fest: 0.20.2 - globals@14.0.0: {} - globals@15.9.0: {} + globals@15.14.0: {} globalthis@1.0.4: dependencies: define-properties: 1.2.1 - gopd: 1.0.1 + gopd: 1.2.0 globby@11.1.0: dependencies: @@ -24939,9 +22538,7 @@ snapshots: unicorn-magic: 0.1.0 optional: true - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.4 + gopd@1.2.0: {} got@11.8.6: dependencies: @@ -24995,15 +22592,15 @@ snapshots: graphemer@1.4.0: {} - graphql-request@6.1.0(encoding@0.1.13)(graphql@16.9.0): + graphql-request@6.1.0(encoding@0.1.13)(graphql@16.10.0): dependencies: - '@graphql-typed-document-node/core': 3.2.0(graphql@16.9.0) + '@graphql-typed-document-node/core': 3.2.0(graphql@16.10.0) cross-fetch: 3.1.8(encoding@0.1.13) - graphql: 16.9.0 + graphql: 16.10.0 transitivePeerDependencies: - encoding - graphql@16.9.0: {} + graphql@16.10.0: {} gray-matter@4.0.3: dependencies: @@ -25033,23 +22630,23 @@ snapshots: dependencies: ansi-regex: 4.1.1 - has-bigints@1.0.2: {} - - has-flag@3.0.0: {} + has-bigints@1.1.0: {} has-flag@4.0.0: {} has-property-descriptors@1.0.2: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 - has-proto@1.0.3: {} + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 - has-symbols@1.0.3: {} + has-symbols@1.1.0: {} has-tostringtag@1.0.2: dependencies: - has-symbols: 1.0.3 + has-symbols: 1.1.0 has-unicode@2.0.1: {} @@ -25069,12 +22666,12 @@ snapshots: dependencies: function-bind: 1.1.2 - hast-util-from-parse5@8.0.1: + hast-util-from-parse5@8.0.2: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 devlop: 1.1.0 - hastscript: 8.0.0 + hastscript: 9.0.0 property-information: 6.5.0 vfile: 6.0.3 vfile-location: 5.0.3 @@ -25084,16 +22681,16 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hast-util-raw@9.0.4: + hast-util-raw@9.1.0: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 - '@ungap/structured-clone': 1.2.0 - hast-util-from-parse5: 8.0.1 + '@ungap/structured-clone': 1.2.1 + hast-util-from-parse5: 8.0.2 hast-util-to-parse5: 8.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 - parse5: 7.1.2 + parse5: 7.2.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 vfile: 6.0.3 @@ -25121,7 +22718,7 @@ snapshots: transitivePeerDependencies: - supports-color - hast-util-to-jsx-runtime@2.3.0: + hast-util-to-jsx-runtime@2.3.2: dependencies: '@types/estree': 1.0.6 '@types/hast': 3.0.4 @@ -25155,7 +22752,7 @@ snapshots: dependencies: '@types/hast': 3.0.4 - hastscript@8.0.0: + hastscript@9.0.0: dependencies: '@types/hast': 3.0.4 comma-separated-tokens: 2.0.3 @@ -25176,7 +22773,7 @@ snapshots: history@4.10.1: dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 loose-envify: 1.4.0 resolve-pathname: 3.0.0 tiny-invariant: 1.3.3 @@ -25232,7 +22829,7 @@ snapshots: he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.32.0 + terser: 5.37.0 html-minifier-terser@7.2.0: dependencies: @@ -25242,7 +22839,7 @@ snapshots: entities: 4.5.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.32.0 + terser: 5.37.0 html-react-parser@4.2.10(react@18.3.1): dependencies: @@ -25256,7 +22853,7 @@ snapshots: html-void-elements@3.0.0: {} - html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.7.26)): + html-webpack-plugin@5.6.3(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -25264,11 +22861,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.94.0(@swc/core@1.7.26) - - htmlfy@0.2.1: {} - - htmlfy@0.3.0: {} + webpack: 5.97.1(@swc/core@1.10.1) htmlfy@0.3.2: {} @@ -25327,18 +22920,18 @@ snapshots: dependencies: '@tootallnate/once': 1.1.2 agent-base: 6.0.2 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color - http-proxy-middleware@2.0.6(@types/express@4.17.21): + http-proxy-middleware@2.0.7(@types/express@4.17.21): dependencies: '@types/http-proxy': 1.17.15 http-proxy: 1.18.1 @@ -25371,21 +22964,14 @@ snapshots: https-proxy-agent@5.0.1: dependencies: agent-base: 6.0.2 - debug: 4.4.0 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@7.0.5: - dependencies: - agent-base: 7.1.1 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color https-proxy-agent@7.0.6: dependencies: agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -25414,9 +23000,9 @@ snapshots: dependencies: safer-buffer: 2.1.2 - icss-utils@5.1.0(postcss@8.4.47): + icss-utils@5.1.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 idb@7.1.1: {} @@ -25428,6 +23014,9 @@ snapshots: ignore@5.3.2: {} + ignore@6.0.2: + optional: true + image-size@1.1.1: dependencies: queue: 6.0.2 @@ -25460,7 +23049,7 @@ snapshots: infer-owner@1.0.4: {} - infima@0.2.0-alpha.44: {} + infima@0.2.0-alpha.45: {} inflight@1.0.6: dependencies: @@ -25497,28 +23086,6 @@ snapshots: inline-style-parser@0.2.4: {} - inquirer@10.2.2: - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/prompts': 5.5.0 - '@inquirer/type': 1.5.5 - '@types/mute-stream': 0.0.4 - ansi-escapes: 4.3.2 - mute-stream: 1.0.0 - run-async: 3.0.0 - rxjs: 7.8.1 - - inquirer@11.0.1: - dependencies: - '@inquirer/core': 9.2.1 - '@inquirer/prompts': 6.0.1 - '@inquirer/type': 2.0.0 - '@types/mute-stream': 0.0.4 - ansi-escapes: 4.3.2 - mute-stream: 1.0.0 - run-async: 3.0.0 - rxjs: 7.8.1 - inquirer@11.1.0: dependencies: '@inquirer/core': 9.2.1 @@ -25548,11 +23115,11 @@ snapshots: through: 2.3.8 wrap-ansi: 6.2.0 - internal-slot@1.0.7: + internal-slot@1.1.0: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 interpret@1.4.0: {} @@ -25584,31 +23151,36 @@ snapshots: is-alphabetical: 2.0.1 is-decimal: 2.0.1 - is-arguments@1.1.1: + is-arguments@1.2.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 has-tostringtag: 1.0.2 - is-array-buffer@3.0.4: + is-array-buffer@3.0.5: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 is-arrayish@0.2.1: {} is-arrayish@0.3.2: {} - is-bigint@1.0.4: + is-async-function@2.0.0: dependencies: - has-bigints: 1.0.2 + has-tostringtag: 1.0.2 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 is-binary-path@2.1.0: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.1.2: + is-boolean-object@1.2.1: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-buffer@1.1.6: {} @@ -25627,16 +23199,19 @@ snapshots: dependencies: ci-info: 3.9.0 - is-core-module@2.15.1: + is-core-module@2.16.0: dependencies: hasown: 2.0.2 - is-data-view@1.0.1: + is-data-view@1.0.2: dependencies: - is-typed-array: 1.1.13 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 + is-typed-array: 1.1.15 - is-date-object@1.0.5: + is-date-object@1.1.0: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-decimal@2.0.1: {} @@ -25647,8 +23222,16 @@ snapshots: is-extglob@2.1.1: {} + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.3 + is-fullwidth-code-point@3.0.0: {} + is-generator-function@1.0.10: + dependencies: + has-tostringtag: 1.0.2 + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 @@ -25681,8 +23264,9 @@ snapshots: is-npm@6.0.0: {} - is-number-object@1.0.7: + is-number-object@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -25711,14 +23295,16 @@ snapshots: is-potential-custom-element-name@1.0.1: {} - is-reference@3.0.2: + is-reference@3.0.3: dependencies: '@types/estree': 1.0.6 - is-regex@1.1.4: + is-regex@1.2.1: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 + gopd: 1.2.0 has-tostringtag: 1.0.2 + hasown: 2.0.2 is-regexp@1.0.0: {} @@ -25728,9 +23314,9 @@ snapshots: is-set@2.0.3: {} - is-shared-array-buffer@1.0.3: + is-shared-array-buffer@1.0.4: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 is-ssh@1.4.0: dependencies: @@ -25744,21 +23330,24 @@ snapshots: is-stream@4.0.1: {} - is-string@1.0.7: + is-string@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 - is-symbol@1.0.4: + is-symbol@1.1.1: dependencies: - has-symbols: 1.0.3 + call-bound: 1.0.3 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 is-text-path@1.0.1: dependencies: text-extensions: 1.9.0 - is-typed-array@1.1.13: + is-typed-array@1.1.15: dependencies: - which-typed-array: 1.1.15 + which-typed-array: 1.1.18 is-typedarray@1.0.0: {} @@ -25770,14 +23359,14 @@ snapshots: is-weakmap@2.0.2: {} - is-weakref@1.0.2: + is-weakref@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 - is-weakset@2.0.3: + is-weakset@2.0.4: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 is-windows@1.0.2: {} @@ -25807,8 +23396,8 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: - '@babel/core': 7.25.2 - '@babel/parser': 7.25.8 + '@babel/core': 7.26.0 + '@babel/parser': 7.26.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -25818,7 +23407,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.25.8 + '@babel/parser': 7.26.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.6.3 @@ -25834,7 +23423,7 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: '@jridgewell/trace-mapping': 0.3.25 - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: - supports-color @@ -25850,11 +23439,9 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jackspeak@4.0.1: + jackspeak@4.0.2: dependencies: '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 jake@10.9.2: dependencies: @@ -25863,16 +23450,16 @@ snapshots: filelist: 1.0.4 minimatch: 3.1.2 - jasmine-core@5.3.0: {} + jasmine-core@5.5.0: {} - jasmine@5.3.0: + jasmine@5.5.0: dependencies: glob: 10.4.5 - jasmine-core: 5.3.0 + jasmine-core: 5.5.0 jest-diff@29.7.0: dependencies: - chalk: 4.1.2 + chalk: 4.1.0 diff-sequences: 29.6.3 jest-get-type: 29.6.3 pretty-format: 29.7.0 @@ -25948,7 +23535,7 @@ snapshots: '@jest/types': 30.0.0-alpha.6 '@types/node': 20.17.10 chalk: 4.1.2 - ci-info: 4.0.0 + ci-info: 4.1.0 graceful-fs: 4.2.11 picomatch: 4.0.2 @@ -25965,7 +23552,10 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jiti@1.21.6: {} + jiti@1.21.7: {} + + jiti@2.4.2: + optional: true joi@17.13.3: dependencies: @@ -25991,7 +23581,7 @@ snapshots: js-tokens@4.0.0: {} - js-tokens@9.0.0: + js-tokens@9.0.1: optional: true js-yaml@3.14.1: @@ -26012,13 +23602,13 @@ snapshots: cssstyle: 4.1.0 data-urls: 5.0.0 decimal.js: 10.4.3 - form-data: 4.0.0 + form-data: 4.0.1 html-encoding-sniffer: 4.0.0 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.6 is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.12 - parse5: 7.1.2 + nwsapi: 2.2.16 + parse5: 7.2.1 rrweb-cssom: 0.7.1 saxes: 6.0.0 symbol-tree: 3.2.4 @@ -26027,7 +23617,7 @@ snapshots: webidl-conversions: 7.0.0 whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 - whatwg-url: 14.0.0 + whatwg-url: 14.1.0 ws: 8.18.0 xml-name-validator: 5.0.0 transitivePeerDependencies: @@ -26037,8 +23627,6 @@ snapshots: jsesc@0.5.0: {} - jsesc@2.5.2: {} - jsesc@3.0.2: {} jsesc@3.1.0: {} @@ -26065,10 +23653,6 @@ snapshots: json-stringify-safe@5.0.1: {} - json5@1.0.2: - dependencies: - minimist: 1.2.8 - json5@2.2.3: {} jsonc-parser@3.2.0: {} @@ -26117,7 +23701,7 @@ snapshots: klona@2.0.6: optional: true - knitwork@1.1.0: + knitwork@1.2.0: optional: true knuth-shuffle-seeded@1.0.6: @@ -26137,7 +23721,7 @@ snapshots: launch-editor@2.9.1: dependencies: picocolors: 1.1.1 - shell-quote: 1.8.1 + shell-quote: 1.8.2 lazystream@1.0.1: dependencies: @@ -26157,13 +23741,13 @@ snapshots: - bluebird - supports-color - lerna@8.1.9(@swc/core@1.7.26)(encoding@0.1.13): + lerna@8.1.9(@swc/core@1.10.1)(encoding@0.1.13): dependencies: - '@lerna/create': 8.1.9(@swc/core@1.7.26)(encoding@0.1.13)(typescript@5.6.3) + '@lerna/create': 8.1.9(@swc/core@1.10.1)(encoding@0.1.13)(typescript@5.7.2) '@npmcli/arborist': 7.5.4 '@npmcli/package-json': 5.2.0 '@npmcli/run-script': 8.1.0 - '@nx/devkit': 20.0.8(nx@20.0.8(@swc/core@1.7.26)) + '@nx/devkit': 20.2.2(nx@20.2.2(@swc/core@1.10.1)) '@octokit/plugin-enterprise-rest': 6.0.1 '@octokit/rest': 19.0.11(encoding@0.1.13) aproba: 2.0.0 @@ -26177,7 +23761,7 @@ snapshots: conventional-changelog-angular: 7.0.0 conventional-changelog-core: 5.0.1 conventional-recommended-bump: 7.0.1 - cosmiconfig: 9.0.0(typescript@5.6.3) + cosmiconfig: 9.0.0(typescript@5.7.2) dedent: 1.5.3 envinfo: 7.13.0 execa: 5.0.0 @@ -26208,7 +23792,7 @@ snapshots: npm-package-arg: 11.0.2 npm-packlist: 8.0.2 npm-registry-fetch: 17.1.0 - nx: 20.0.8(@swc/core@1.7.26) + nx: 20.2.2(@swc/core@1.10.1) p-map: 4.0.0 p-map-series: 2.1.0 p-pipe: 3.1.0 @@ -26230,7 +23814,7 @@ snapshots: strong-log-transformer: 2.1.0 tar: 6.2.1 temp-dir: 1.0.0 - typescript: 5.6.3 + typescript: 5.7.2 upath: 2.0.1 uuid: 10.0.0 validate-npm-package-license: 3.0.4 @@ -26265,7 +23849,7 @@ snapshots: libnpmpublish@9.0.9: dependencies: - ci-info: 4.0.0 + ci-info: 4.1.0 normalize-package-data: 6.0.2 npm-package-arg: 11.0.2 npm-registry-fetch: 17.1.0 @@ -26287,7 +23871,7 @@ snapshots: transitivePeerDependencies: - supports-color - lighthouse-stack-packs@1.12.1: {} + lighthouse-stack-packs@1.12.2: {} lighthouse@8.6.0: dependencies: @@ -26302,7 +23886,7 @@ snapshots: jpeg-js: 0.4.4 js-library-detector: 6.7.0 lighthouse-logger: 1.4.2 - lighthouse-stack-packs: 1.12.1 + lighthouse-stack-packs: 1.12.2 lodash.clonedeep: 4.5.0 lodash.get: 4.4.2 lodash.isequal: 4.5.0 @@ -26326,9 +23910,7 @@ snapshots: - supports-color - utf-8-validate - lilconfig@2.1.0: {} - - lilconfig@3.1.2: {} + lilconfig@3.1.3: {} lines-and-columns@1.2.4: {} @@ -26340,21 +23922,21 @@ snapshots: dependencies: uc.micro: 1.0.6 - lit-element@4.1.0: + lit-element@4.1.1: dependencies: '@lit-labs/ssr-dom-shim': 1.2.1 '@lit/reactive-element': 2.0.4 - lit-html: 3.2.0 + lit-html: 3.2.1 - lit-html@3.2.0: + lit-html@3.2.1: dependencies: '@types/trusted-types': 2.0.7 - lit@3.2.0: + lit@3.2.1: dependencies: '@lit/reactive-element': 2.0.4 - lit-element: 4.1.0 - lit-html: 3.2.0 + lit-element: 4.1.1 + lit-html: 3.2.1 load-json-file@4.0.0: dependencies: @@ -26382,18 +23964,12 @@ snapshots: local-pkg@0.4.3: {} - local-pkg@0.5.0: + local-pkg@0.5.1: dependencies: - mlly: 1.7.2 - pkg-types: 1.2.0 + mlly: 1.7.3 + pkg-types: 1.2.1 optional: true - locate-app@2.4.43: - dependencies: - '@promptbook/utils': 0.70.0-1 - type-fest: 2.13.0 - userhome: 1.0.0 - locate-app@2.5.0: dependencies: '@promptbook/utils': 0.69.5 @@ -26461,7 +24037,7 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 - logform@2.6.1: + logform@2.7.0: dependencies: '@colors/colors': 1.6.0 '@types/triple-beam': 1.3.5 @@ -26496,7 +24072,7 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@11.0.1: {} + lru-cache@11.0.2: {} lru-cache@5.1.1: dependencies: @@ -26516,14 +24092,6 @@ snapshots: dependencies: sourcemap-codec: 1.4.8 - magic-string@0.30.11: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - - magic-string@0.30.15: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - magic-string@0.30.17: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -26582,7 +24150,7 @@ snapshots: minipass-fetch: 1.4.1 minipass-flush: 1.0.5 minipass-pipeline: 1.2.4 - negotiator: 0.6.3 + negotiator: 0.6.4 promise-retry: 2.0.1 socks-proxy-agent: 6.2.1 ssri: 8.0.1 @@ -26606,7 +24174,11 @@ snapshots: mdurl: 1.0.1 uc.micro: 1.0.6 - markdown-table@3.0.3: {} + markdown-table@2.0.0: + dependencies: + repeat-string: 1.6.1 + + markdown-table@3.0.4: {} marky@1.2.5: {} @@ -26614,6 +24186,8 @@ snapshots: dependencies: '@arr/every': 1.0.1 + math-intrinsics@1.0.0: {} + md5@2.3.0: dependencies: charenc: 0.0.2 @@ -26625,9 +24199,9 @@ snapshots: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - parse-entities: 4.0.1 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + parse-entities: 4.0.2 stringify-entities: 4.0.4 unist-util-visit-parents: 6.0.1 transitivePeerDependencies: @@ -26640,19 +24214,19 @@ snapshots: unist-util-is: 6.0.0 unist-util-visit-parents: 6.0.1 - mdast-util-from-markdown@2.0.1: + mdast-util-from-markdown@2.0.2: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 decode-named-character-reference: 1.0.2 devlop: 1.1.0 mdast-util-to-string: 4.0.0 - micromark: 4.0.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-decode-string: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark: 4.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-decode-string: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 unist-util-stringify-position: 4.0.0 transitivePeerDependencies: - supports-color @@ -26662,8 +24236,8 @@ snapshots: '@types/mdast': 4.0.4 devlop: 1.1.0 escape-string-regexp: 5.0.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 micromark-extension-frontmatter: 2.0.0 transitivePeerDependencies: - supports-color @@ -26674,23 +24248,23 @@ snapshots: ccount: 2.0.1 devlop: 1.1.0 mdast-util-find-and-replace: 3.0.1 - micromark-util-character: 2.1.0 + micromark-util-character: 2.1.1 mdast-util-gfm-footnote@2.0.0: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + micromark-util-normalize-identifier: 2.0.1 transitivePeerDependencies: - supports-color mdast-util-gfm-strikethrough@2.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26698,9 +24272,9 @@ snapshots: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - markdown-table: 3.0.3 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + markdown-table: 3.0.4 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26708,20 +24282,20 @@ snapshots: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color mdast-util-gfm@3.0.0: dependencies: - mdast-util-from-markdown: 2.0.1 + mdast-util-from-markdown: 2.0.2 mdast-util-gfm-autolink-literal: 2.0.1 mdast-util-gfm-footnote: 2.0.0 mdast-util-gfm-strikethrough: 2.0.0 mdast-util-gfm-table: 2.0.0 mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26731,8 +24305,8 @@ snapshots: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26744,9 +24318,9 @@ snapshots: '@types/unist': 3.0.3 ccount: 2.0.1 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - parse-entities: 4.0.1 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 + parse-entities: 4.0.2 stringify-entities: 4.0.4 unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 @@ -26755,11 +24329,11 @@ snapshots: mdast-util-mdx@3.0.0: dependencies: - mdast-util-from-markdown: 2.0.1 + mdast-util-from-markdown: 2.0.2 mdast-util-mdx-expression: 2.0.1 mdast-util-mdx-jsx: 3.1.3 mdast-util-mdxjs-esm: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26769,8 +24343,8 @@ snapshots: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 + mdast-util-from-markdown: 2.0.2 + mdast-util-to-markdown: 2.1.2 transitivePeerDependencies: - supports-color @@ -26783,22 +24357,23 @@ snapshots: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.2.0 + '@ungap/structured-clone': 1.2.1 devlop: 1.1.0 - micromark-util-sanitize-uri: 2.0.0 + micromark-util-sanitize-uri: 2.0.1 trim-lines: 3.0.1 unist-util-position: 5.0.0 unist-util-visit: 5.0.0 vfile: 6.0.3 - mdast-util-to-markdown@2.1.0: + mdast-util-to-markdown@2.1.2: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 longest-streak: 3.1.0 mdast-util-phrasing: 4.1.0 mdast-util-to-string: 4.0.0 - micromark-util-decode-string: 2.0.0 + micromark-util-classify-character: 2.0.1 + micromark-util-decode-string: 2.0.1 unist-util-visit: 5.0.0 zwitch: 2.0.4 @@ -26859,88 +24434,88 @@ snapshots: methods@1.1.2: {} - micromark-core-commonmark@2.0.1: + micromark-core-commonmark@2.0.2: dependencies: decode-named-character-reference: 1.0.2 devlop: 1.1.0 - micromark-factory-destination: 2.0.0 - micromark-factory-label: 2.0.0 - micromark-factory-space: 2.0.0 - micromark-factory-title: 2.0.0 - micromark-factory-whitespace: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 - micromark-util-html-tag-name: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-subtokenize: 2.0.1 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-destination: 2.0.1 + micromark-factory-label: 2.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-title: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-html-tag-name: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-subtokenize: 2.0.3 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 - micromark-extension-directive@3.0.1: + micromark-extension-directive@3.0.2: dependencies: devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-factory-whitespace: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - parse-entities: 4.0.1 + micromark-factory-space: 2.0.1 + micromark-factory-whitespace: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 + parse-entities: 4.0.2 micromark-extension-frontmatter@2.0.0: dependencies: fault: 2.0.1 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-autolink-literal@2.1.0: dependencies: - micromark-util-character: 2.1.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-footnote@2.1.0: dependencies: devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-strikethrough@2.1.0: dependencies: devlop: 1.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-chunked: 2.0.1 + micromark-util-classify-character: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-table@2.1.0: dependencies: devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm-tagfilter@2.0.0: dependencies: - micromark-util-types: 2.0.0 + micromark-util-types: 2.0.1 micromark-extension-gfm-task-list-item@2.1.0: dependencies: devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-gfm@3.0.0: dependencies: @@ -26950,19 +24525,19 @@ snapshots: micromark-extension-gfm-table: 2.1.0 micromark-extension-gfm-tagfilter: 2.0.0 micromark-extension-gfm-task-list-item: 2.1.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-mdx-expression@3.0.0: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 micromark-factory-mdx-expression: 2.0.2 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-extension-mdx-jsx@3.0.1: dependencies: @@ -26971,26 +24546,26 @@ snapshots: devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 micromark-factory-mdx-expression: 2.0.2 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 vfile-message: 4.0.2 micromark-extension-mdx-md@2.0.0: dependencies: - micromark-util-types: 2.0.0 + micromark-util-types: 2.0.1 micromark-extension-mdxjs-esm@3.0.0: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-util-character: 2.1.0 + micromark-core-commonmark: 2.0.2 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 @@ -27002,31 +24577,31 @@ snapshots: micromark-extension-mdx-jsx: 3.0.1 micromark-extension-mdx-md: 2.0.0 micromark-extension-mdxjs-esm: 3.0.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-combine-extensions: 2.0.1 + micromark-util-types: 2.0.1 - micromark-factory-destination@2.0.0: + micromark-factory-destination@2.0.1: dependencies: - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 - micromark-factory-label@2.0.0: + micromark-factory-label@2.0.1: dependencies: devlop: 1.1.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-factory-mdx-expression@2.0.2: dependencies: '@types/estree': 1.0.6 devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 micromark-util-events-to-acorn: 2.0.2 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 @@ -27035,62 +24610,62 @@ snapshots: micromark-util-character: 1.2.0 micromark-util-types: 1.1.0 - micromark-factory-space@2.0.0: + micromark-factory-space@2.0.1: dependencies: - micromark-util-character: 2.1.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-types: 2.0.1 - micromark-factory-title@2.0.0: + micromark-factory-title@2.0.1: dependencies: - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 - micromark-factory-whitespace@2.0.0: + micromark-factory-whitespace@2.0.1: dependencies: - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-util-character@1.2.0: dependencies: micromark-util-symbol: 1.1.0 micromark-util-types: 1.1.0 - micromark-util-character@2.1.0: + micromark-util-character@2.1.1: dependencies: - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 - micromark-util-chunked@2.0.0: + micromark-util-chunked@2.0.1: dependencies: - micromark-util-symbol: 2.0.0 + micromark-util-symbol: 2.0.1 - micromark-util-classify-character@2.0.0: + micromark-util-classify-character@2.0.1: dependencies: - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 - micromark-util-combine-extensions@2.0.0: + micromark-util-combine-extensions@2.0.1: dependencies: - micromark-util-chunked: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-chunked: 2.0.1 + micromark-util-types: 2.0.1 - micromark-util-decode-numeric-character-reference@2.0.1: + micromark-util-decode-numeric-character-reference@2.0.2: dependencies: - micromark-util-symbol: 2.0.0 + micromark-util-symbol: 2.0.1 - micromark-util-decode-string@2.0.0: + micromark-util-decode-string@2.0.1: dependencies: decode-named-character-reference: 1.0.2 - micromark-util-character: 2.1.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-symbol: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-symbol: 2.0.1 - micromark-util-encode@2.0.0: {} + micromark-util-encode@2.0.1: {} micromark-util-events-to-acorn@2.0.2: dependencies: @@ -27099,60 +24674,60 @@ snapshots: '@types/unist': 3.0.3 devlop: 1.1.0 estree-util-visit: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 vfile-message: 4.0.2 - micromark-util-html-tag-name@2.0.0: {} + micromark-util-html-tag-name@2.0.1: {} - micromark-util-normalize-identifier@2.0.0: + micromark-util-normalize-identifier@2.0.1: dependencies: - micromark-util-symbol: 2.0.0 + micromark-util-symbol: 2.0.1 - micromark-util-resolve-all@2.0.0: + micromark-util-resolve-all@2.0.1: dependencies: - micromark-util-types: 2.0.0 + micromark-util-types: 2.0.1 - micromark-util-sanitize-uri@2.0.0: + micromark-util-sanitize-uri@2.0.1: dependencies: - micromark-util-character: 2.1.0 - micromark-util-encode: 2.0.0 - micromark-util-symbol: 2.0.0 + micromark-util-character: 2.1.1 + micromark-util-encode: 2.0.1 + micromark-util-symbol: 2.0.1 - micromark-util-subtokenize@2.0.1: + micromark-util-subtokenize@2.0.3: dependencies: devlop: 1.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-util-chunked: 2.0.1 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 micromark-util-symbol@1.1.0: {} - micromark-util-symbol@2.0.0: {} + micromark-util-symbol@2.0.1: {} micromark-util-types@1.1.0: {} - micromark-util-types@2.0.0: {} + micromark-util-types@2.0.1: {} - micromark@4.0.0: + micromark@4.0.1: dependencies: '@types/debug': 4.1.12 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) decode-named-character-reference: 1.0.2 devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-encode: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-subtokenize: 2.0.1 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 + micromark-core-commonmark: 2.0.2 + micromark-factory-space: 2.0.1 + micromark-util-character: 2.1.1 + micromark-util-chunked: 2.0.1 + micromark-util-combine-extensions: 2.0.1 + micromark-util-decode-numeric-character-reference: 2.0.2 + micromark-util-encode: 2.0.1 + micromark-util-normalize-identifier: 2.0.1 + micromark-util-resolve-all: 2.0.1 + micromark-util-sanitize-uri: 2.0.1 + micromark-util-subtokenize: 2.0.3 + micromark-util-symbol: 2.0.1 + micromark-util-types: 2.0.1 transitivePeerDependencies: - supports-color @@ -27192,11 +24767,11 @@ snapshots: min-indent@1.0.1: {} - mini-css-extract-plugin@2.9.1(webpack@5.94.0(@swc/core@1.7.26)): + mini-css-extract-plugin@2.9.2(webpack@5.97.1(@swc/core@1.10.1)): dependencies: - schema-utils: 4.2.0 + schema-utils: 4.3.0 tapable: 2.2.1 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) minimalistic-assert@1.0.1: {} @@ -27307,26 +24882,19 @@ snapshots: mkdirp@2.1.6: {} - mlly@1.7.1: - dependencies: - acorn: 8.12.1 - pathe: 1.1.2 - pkg-types: 1.2.0 - ufo: 1.5.4 - - mlly@1.7.2: + mlly@1.7.3: dependencies: acorn: 8.14.0 pathe: 1.1.2 - pkg-types: 1.2.0 + pkg-types: 1.2.1 ufo: 1.5.4 - mocha@10.7.3: + mocha@10.8.2: dependencies: ansi-colors: 4.1.3 browser-stdout: 1.3.1 chokidar: 3.6.0 - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) diff: 5.2.0 escape-string-regexp: 4.0.0 find-up: 5.0.0 @@ -27346,8 +24914,8 @@ snapshots: modern-node-polyfills@1.0.0(esbuild@0.24.0)(rollup@4.28.1): dependencies: - '@jspm/core': 2.0.1 - '@rollup/pluginutils': 5.1.0(rollup@4.28.1) + '@jspm/core': 2.1.0 + '@rollup/pluginutils': 5.1.4(rollup@4.28.1) esbuild: 0.24.0 local-pkg: 0.4.3 transitivePeerDependencies: @@ -27365,9 +24933,6 @@ snapshots: transitivePeerDependencies: - supports-color - mri@1.2.0: - optional: true - mrmime@2.0.0: {} ms@2.0.0: {} @@ -27387,7 +24952,7 @@ snapshots: array-differ: 3.0.0 array-union: 2.1.0 arrify: 2.0.1 - minimatch: 3.0.5 + minimatch: 3.1.2 mute-stream@0.0.8: {} @@ -27399,7 +24964,7 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.7: {} + nanoid@3.3.8: {} napi-build-utils@1.0.2: {} @@ -27424,7 +24989,7 @@ snapshots: json-stringify-safe: 5.0.1 propagate: 2.0.1 - node-abi@3.67.0: + node-abi@3.71.0: dependencies: semver: 7.6.3 @@ -27432,7 +24997,7 @@ snapshots: node-domexception@1.0.0: {} - node-emoji@2.1.3: + node-emoji@2.2.0: dependencies: '@sindresorhus/is': 4.6.0 char-regex: 1.0.2 @@ -27462,7 +25027,7 @@ snapshots: node-forge@1.3.1: {} - node-gyp@10.2.0: + node-gyp@10.3.1: dependencies: env-paths: 2.2.1 exponential-backoff: 3.1.1 @@ -27486,14 +25051,12 @@ snapshots: node-machine-id@1.1.12: {} - node-releases@2.0.18: {} - node-releases@2.0.19: {} node-request-interceptor@0.6.3: dependencies: '@open-draft/until': 1.0.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) headers-utils: 1.2.5 strict-event-emitter: 0.1.0 transitivePeerDependencies: @@ -27511,14 +25074,14 @@ snapshots: normalize-package-data@2.5.0: dependencies: hosted-git-info: 2.8.9 - resolve: 1.22.8 + resolve: 1.22.9 semver: 5.7.2 validate-npm-package-license: 3.0.4 normalize-package-data@3.0.3: dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.15.1 + is-core-module: 2.16.0 semver: 7.6.3 validate-npm-package-license: 3.0.4 @@ -27579,25 +25142,15 @@ snapshots: transitivePeerDependencies: - supports-color - npm-run-all2@6.2.3: + npm-run-all2@6.2.6: dependencies: ansi-styles: 6.2.1 - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 memorystream: 0.3.1 minimatch: 9.0.5 pidtree: 0.6.0 read-package-json-fast: 3.0.2 - shell-quote: 1.8.1 - - npm-run-all2@6.2.4: - dependencies: - ansi-styles: 6.2.1 - cross-spawn: 7.0.3 - memorystream: 0.3.1 - minimatch: 9.0.5 - pidtree: 0.6.0 - read-package-json-fast: 3.0.2 - shell-quote: 1.8.1 + shell-quote: 1.8.2 which: 3.0.1 npm-run-path@4.0.1: @@ -27607,8 +25160,14 @@ snapshots: npm-run-path@5.3.0: dependencies: path-key: 4.0.0 + optional: true - npm-to-yarn@2.2.1: {} + npm-run-path@6.0.0: + dependencies: + path-key: 4.0.0 + unicorn-magic: 0.3.0 + + npm-to-yarn@3.0.0: {} nprogress@0.2.0: {} @@ -27616,21 +25175,27 @@ snapshots: dependencies: boolbase: 1.0.0 - nwsapi@2.2.12: {} + null-loader@4.0.1(webpack@5.97.1(@swc/core@1.10.1)): + dependencies: + loader-utils: 2.0.4 + schema-utils: 3.3.0 + webpack: 5.97.1(@swc/core@1.10.1) - nx@20.0.8(@swc/core@1.7.26): + nwsapi@2.2.16: {} + + nx@20.2.2(@swc/core@1.10.1): dependencies: '@napi-rs/wasm-runtime': 0.2.4 '@yarnpkg/lockfile': 1.1.0 - '@yarnpkg/parsers': 3.0.0-rc.46 + '@yarnpkg/parsers': 3.0.2 '@zkochan/js-yaml': 0.0.7 - axios: 1.7.7 - chalk: 4.1.2 + axios: 1.7.9 + chalk: 4.1.0 cli-cursor: 3.1.0 cli-spinners: 2.6.1 cliui: 8.0.1 dotenv: 16.4.7 - dotenv-expand: 11.0.6 + dotenv-expand: 11.0.7 enquirer: 2.3.6 figures: 3.2.0 flat: 5.0.2 @@ -27650,30 +25215,31 @@ snapshots: tmp: 0.2.3 tsconfig-paths: 4.2.0 tslib: 2.8.1 + yaml: 2.6.1 yargs: 17.7.2 yargs-parser: 21.1.1 optionalDependencies: - '@nx/nx-darwin-arm64': 20.0.8 - '@nx/nx-darwin-x64': 20.0.8 - '@nx/nx-freebsd-x64': 20.0.8 - '@nx/nx-linux-arm-gnueabihf': 20.0.8 - '@nx/nx-linux-arm64-gnu': 20.0.8 - '@nx/nx-linux-arm64-musl': 20.0.8 - '@nx/nx-linux-x64-gnu': 20.0.8 - '@nx/nx-linux-x64-musl': 20.0.8 - '@nx/nx-win32-arm64-msvc': 20.0.8 - '@nx/nx-win32-x64-msvc': 20.0.8 - '@swc/core': 1.7.26 + '@nx/nx-darwin-arm64': 20.2.2 + '@nx/nx-darwin-x64': 20.2.2 + '@nx/nx-freebsd-x64': 20.2.2 + '@nx/nx-linux-arm-gnueabihf': 20.2.2 + '@nx/nx-linux-arm64-gnu': 20.2.2 + '@nx/nx-linux-arm64-musl': 20.2.2 + '@nx/nx-linux-x64-gnu': 20.2.2 + '@nx/nx-linux-x64-musl': 20.2.2 + '@nx/nx-win32-arm64-msvc': 20.2.2 + '@nx/nx-win32-x64-msvc': 20.2.2 + '@swc/core': 1.10.1 transitivePeerDependencies: - debug - nypm@0.3.11: + nypm@0.3.12: dependencies: citty: 0.1.6 consola: 3.2.3 execa: 8.0.1 pathe: 1.1.2 - pkg-types: 1.2.0 + pkg-types: 1.2.1 ufo: 1.5.4 optional: true @@ -27681,43 +25247,23 @@ snapshots: object-hash@3.0.0: {} - object-inspect@1.13.2: {} - object-inspect@1.13.3: {} object-is@1.1.6: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 object-keys@1.1.1: {} - object.assign@4.1.5: + object.assign@4.1.6: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 - has-symbols: 1.0.3 + has-symbols: 1.1.0 object-keys: 1.1.1 - object.fromentries@2.0.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - - object.groupby@1.0.3: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - - object.values@1.2.0: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - obuf@1.1.2: {} ohash@1.1.4: @@ -27770,7 +25316,7 @@ snapshots: ora@5.3.0: dependencies: bl: 4.1.0 - chalk: 4.1.2 + chalk: 4.1.0 cli-cursor: 3.1.0 cli-spinners: 2.6.1 is-interactive: 1.0.0 @@ -27874,24 +25420,11 @@ snapshots: dependencies: p-reduce: 2.1.0 - pac-proxy-agent@7.0.2: - dependencies: - '@tootallnate/quickjs-emscripten': 0.23.0 - agent-base: 7.1.3 - debug: 4.4.0 - get-uri: 6.0.3 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 - pac-resolver: 7.0.1 - socks-proxy-agent: 8.0.4 - transitivePeerDependencies: - - supports-color - pac-proxy-agent@7.1.0: dependencies: '@tootallnate/quickjs-emscripten': 0.23.0 agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) get-uri: 6.0.4 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 @@ -27905,7 +25438,7 @@ snapshots: degenerator: 5.0.1 netmask: 2.0.2 - package-json-from-dist@1.0.0: {} + package-json-from-dist@1.0.1: {} package-json@6.5.0: dependencies: @@ -27917,7 +25450,7 @@ snapshots: package-json@8.1.1: dependencies: got: 12.6.1 - registry-auth-token: 5.0.2 + registry-auth-token: 5.0.3 registry-url: 6.0.1 semver: 7.6.3 @@ -27967,10 +25500,9 @@ snapshots: just-diff: 6.0.2 just-diff-apply: 5.5.0 - parse-entities@4.0.1: + parse-entities@4.0.2: dependencies: '@types/unist': 2.0.11 - character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 decode-named-character-reference: 1.0.2 @@ -28016,20 +25548,20 @@ snapshots: dependencies: parse5: 6.0.1 - parse5-htmlparser2-tree-adapter@7.0.0: + parse5-htmlparser2-tree-adapter@7.1.0: dependencies: domhandler: 5.0.3 - parse5: 7.1.2 + parse5: 7.2.1 parse5-parser-stream@7.1.2: dependencies: - parse5: 7.1.2 + parse5: 7.2.1 parse5@5.1.1: {} parse5@6.0.1: {} - parse5@7.1.2: + parse5@7.2.1: dependencies: entities: 4.5.0 @@ -28070,16 +25602,16 @@ snapshots: path-scurry@2.0.0: dependencies: - lru-cache: 11.0.1 + lru-cache: 11.0.2 minipass: 7.1.2 - path-to-regexp@0.1.10: {} + path-to-regexp@0.1.12: {} path-to-regexp@1.9.0: dependencies: isarray: 0.0.1 - path-to-regexp@2.2.1: {} + path-to-regexp@3.3.0: {} path-type@3.0.0: dependencies: @@ -28107,9 +25639,7 @@ snapshots: dependencies: '@types/estree': 1.0.6 estree-walker: 3.0.3 - is-reference: 3.0.2 - - picocolors@1.1.0: {} + is-reference: 3.0.3 picocolors@1.1.1: {} @@ -28137,10 +25667,10 @@ snapshots: dependencies: find-up: 6.3.0 - pkg-types@1.2.0: + pkg-types@1.2.1: dependencies: - confbox: 0.1.7 - mlly: 1.7.2 + confbox: 0.1.8 + mlly: 1.7.3 pathe: 1.1.2 pkg-up@3.1.0: @@ -28164,259 +25694,471 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-calc@9.0.1(postcss@8.4.47): + postcss-attribute-case-insensitive@7.0.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + postcss-calc@9.0.1(postcss@8.4.49): + dependencies: + postcss: 8.4.49 postcss-selector-parser: 6.1.2 postcss-value-parser: 4.2.0 - postcss-colormin@6.1.0(postcss@8.4.47): + postcss-clamp@4.1.0(postcss@8.4.49): dependencies: - browserslist: 4.24.0 + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-color-functional-notation@7.0.6(postcss@8.4.49): + dependencies: + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + postcss-color-hex-alpha@10.0.0(postcss@8.4.49): + dependencies: + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-color-rebeccapurple@10.0.0(postcss@8.4.49): + dependencies: + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-colormin@6.1.0(postcss@8.4.49): + dependencies: + browserslist: 4.24.3 caniuse-api: 3.0.0 colord: 2.9.3 - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-convert-values@6.1.0(postcss@8.4.47): + postcss-convert-values@6.1.0(postcss@8.4.49): dependencies: - browserslist: 4.24.0 - postcss: 8.4.47 + browserslist: 4.24.3 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-discard-comments@6.0.2(postcss@8.4.47): + postcss-custom-media@11.0.5(postcss@8.4.49): dependencies: - postcss: 8.4.47 + '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + postcss: 8.4.49 - postcss-discard-duplicates@6.0.3(postcss@8.4.47): + postcss-custom-properties@14.0.4(postcss@8.4.49): dependencies: - postcss: 8.4.47 + '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 - postcss-discard-empty@6.0.3(postcss@8.4.47): + postcss-custom-selectors@8.0.4(postcss@8.4.49): dependencies: - postcss: 8.4.47 + '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 - postcss-discard-overridden@6.0.2(postcss@8.4.47): + postcss-dir-pseudo-class@9.0.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 - postcss-discard-unused@6.0.5(postcss@8.4.47): + postcss-discard-comments@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 + + postcss-discard-duplicates@6.0.3(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-discard-empty@6.0.3(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-discard-overridden@6.0.2(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-discard-unused@6.0.5(postcss@8.4.49): + dependencies: + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-import@15.1.0(postcss@8.4.47): + postcss-double-position-gradients@6.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-focus-visible@10.0.1(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + postcss-focus-within@9.0.1(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + postcss-font-variant@5.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-gap-properties@6.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-image-set-function@7.0.0(postcss@8.4.49): + dependencies: + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-import@15.1.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 postcss-value-parser: 4.2.0 read-cache: 1.0.0 - resolve: 1.22.8 + resolve: 1.22.9 - postcss-js@4.0.1(postcss@8.4.47): + postcss-js@4.0.1(postcss@8.4.49): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.47 + postcss: 8.4.49 - postcss-load-config@4.0.2(postcss@8.4.47): + postcss-lab-function@7.0.6(postcss@8.4.49): dependencies: - lilconfig: 3.1.2 - yaml: 2.5.1 + '@csstools/css-color-parser': 3.0.6(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3) + '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3) + '@csstools/css-tokenizer': 3.0.3 + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/utilities': 2.0.0(postcss@8.4.49) + postcss: 8.4.49 + + postcss-load-config@4.0.2(postcss@8.4.49): + dependencies: + lilconfig: 3.1.3 + yaml: 2.6.1 optionalDependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-loader@7.3.4(postcss@8.4.47)(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)): + postcss-loader@7.3.4(postcss@8.4.49)(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: - cosmiconfig: 8.3.6(typescript@5.6.2) - jiti: 1.21.6 - postcss: 8.4.47 + cosmiconfig: 8.3.6(typescript@5.7.2) + jiti: 1.21.7 + postcss: 8.4.49 semver: 7.6.3 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: - typescript - postcss-merge-idents@6.0.3(postcss@8.4.47): + postcss-logical@8.0.0(postcss@8.4.49): dependencies: - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-merge-longhand@6.0.5(postcss@8.4.47): + postcss-merge-idents@6.0.3(postcss@8.4.49): dependencies: - postcss: 8.4.47 + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - stylehacks: 6.1.1(postcss@8.4.47) - postcss-merge-rules@6.1.1(postcss@8.4.47): + postcss-merge-longhand@6.0.5(postcss@8.4.49): dependencies: - browserslist: 4.24.0 + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + stylehacks: 6.1.1(postcss@8.4.49) + + postcss-merge-rules@6.1.1(postcss@8.4.49): + dependencies: + browserslist: 4.24.3 caniuse-api: 3.0.0 - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-minify-font-values@6.1.0(postcss@8.4.47): + postcss-minify-font-values@6.1.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-gradients@6.0.3(postcss@8.4.47): + postcss-minify-gradients@6.0.3(postcss@8.4.49): dependencies: colord: 2.9.3 - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-params@6.1.0(postcss@8.4.47): + postcss-minify-params@6.1.0(postcss@8.4.49): dependencies: - browserslist: 4.24.0 - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 + browserslist: 4.24.3 + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-minify-selectors@6.0.4(postcss@8.4.47): + postcss-minify-selectors@6.0.4(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-modules-extract-imports@3.1.0(postcss@8.4.47): + postcss-modules-extract-imports@3.1.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 - postcss-modules-local-by-default@4.0.5(postcss@8.4.47): + postcss-modules-local-by-default@4.2.0(postcss@8.4.49): dependencies: - icss-utils: 5.1.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 + icss-utils: 5.1.0(postcss@8.4.49) + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 postcss-value-parser: 4.2.0 - postcss-modules-scope@3.2.0(postcss@8.4.47): + postcss-modules-scope@3.2.1(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + postcss-modules-values@4.0.0(postcss@8.4.49): + dependencies: + icss-utils: 5.1.0(postcss@8.4.49) + postcss: 8.4.49 + + postcss-nested@6.2.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 postcss-selector-parser: 6.1.2 - postcss-modules-values@4.0.0(postcss@8.4.47): + postcss-nesting@13.0.1(postcss@8.4.49): dependencies: - icss-utils: 5.1.0(postcss@8.4.47) - postcss: 8.4.47 + '@csstools/selector-resolve-nested': 3.0.0(postcss-selector-parser@7.0.0) + '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0) + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 - postcss-nested@6.2.0(postcss@8.4.47): + postcss-normalize-charset@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 + postcss: 8.4.49 - postcss-normalize-charset@6.0.2(postcss@8.4.47): + postcss-normalize-display-values@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 - - postcss-normalize-display-values@6.0.2(postcss@8.4.47): - dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-positions@6.0.2(postcss@8.4.47): + postcss-normalize-positions@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-repeat-style@6.0.2(postcss@8.4.47): + postcss-normalize-repeat-style@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-string@6.0.2(postcss@8.4.47): + postcss-normalize-string@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-timing-functions@6.0.2(postcss@8.4.47): + postcss-normalize-timing-functions@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-unicode@6.1.0(postcss@8.4.47): + postcss-normalize-unicode@6.1.0(postcss@8.4.49): dependencies: - browserslist: 4.24.0 - postcss: 8.4.47 + browserslist: 4.24.3 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-url@6.0.2(postcss@8.4.47): + postcss-normalize-url@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-normalize-whitespace@6.0.2(postcss@8.4.47): + postcss-normalize-whitespace@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-ordered-values@6.0.2(postcss@8.4.47): + postcss-opacity-percentage@3.0.0(postcss@8.4.49): dependencies: - cssnano-utils: 4.0.2(postcss@8.4.47) - postcss: 8.4.47 + postcss: 8.4.49 + + postcss-ordered-values@6.0.2(postcss@8.4.49): + dependencies: + cssnano-utils: 4.0.2(postcss@8.4.49) + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-reduce-idents@6.0.3(postcss@8.4.47): + postcss-overflow-shorthand@6.0.0(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 - postcss-reduce-initial@6.1.0(postcss@8.4.47): + postcss-page-break@3.0.4(postcss@8.4.49): dependencies: - browserslist: 4.24.0 + postcss: 8.4.49 + + postcss-place@10.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-preset-env@10.1.2(postcss@8.4.49): + dependencies: + '@csstools/postcss-cascade-layers': 5.0.1(postcss@8.4.49) + '@csstools/postcss-color-function': 4.0.6(postcss@8.4.49) + '@csstools/postcss-color-mix-function': 3.0.6(postcss@8.4.49) + '@csstools/postcss-content-alt-text': 2.0.4(postcss@8.4.49) + '@csstools/postcss-exponential-functions': 2.0.5(postcss@8.4.49) + '@csstools/postcss-font-format-keywords': 4.0.0(postcss@8.4.49) + '@csstools/postcss-gamut-mapping': 2.0.6(postcss@8.4.49) + '@csstools/postcss-gradients-interpolation-method': 5.0.6(postcss@8.4.49) + '@csstools/postcss-hwb-function': 4.0.6(postcss@8.4.49) + '@csstools/postcss-ic-unit': 4.0.0(postcss@8.4.49) + '@csstools/postcss-initial': 2.0.0(postcss@8.4.49) + '@csstools/postcss-is-pseudo-class': 5.0.1(postcss@8.4.49) + '@csstools/postcss-light-dark-function': 2.0.7(postcss@8.4.49) + '@csstools/postcss-logical-float-and-clear': 3.0.0(postcss@8.4.49) + '@csstools/postcss-logical-overflow': 2.0.0(postcss@8.4.49) + '@csstools/postcss-logical-overscroll-behavior': 2.0.0(postcss@8.4.49) + '@csstools/postcss-logical-resize': 3.0.0(postcss@8.4.49) + '@csstools/postcss-logical-viewport-units': 3.0.3(postcss@8.4.49) + '@csstools/postcss-media-minmax': 2.0.5(postcss@8.4.49) + '@csstools/postcss-media-queries-aspect-ratio-number-values': 3.0.4(postcss@8.4.49) + '@csstools/postcss-nested-calc': 4.0.0(postcss@8.4.49) + '@csstools/postcss-normalize-display-values': 4.0.0(postcss@8.4.49) + '@csstools/postcss-oklab-function': 4.0.6(postcss@8.4.49) + '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.49) + '@csstools/postcss-random-function': 1.0.1(postcss@8.4.49) + '@csstools/postcss-relative-color-syntax': 3.0.6(postcss@8.4.49) + '@csstools/postcss-scope-pseudo-class': 4.0.1(postcss@8.4.49) + '@csstools/postcss-sign-functions': 1.1.0(postcss@8.4.49) + '@csstools/postcss-stepped-value-functions': 4.0.5(postcss@8.4.49) + '@csstools/postcss-text-decoration-shorthand': 4.0.1(postcss@8.4.49) + '@csstools/postcss-trigonometric-functions': 4.0.5(postcss@8.4.49) + '@csstools/postcss-unset-value': 4.0.0(postcss@8.4.49) + autoprefixer: 10.4.20(postcss@8.4.49) + browserslist: 4.24.3 + css-blank-pseudo: 7.0.1(postcss@8.4.49) + css-has-pseudo: 7.0.2(postcss@8.4.49) + css-prefers-color-scheme: 10.0.0(postcss@8.4.49) + cssdb: 8.2.3 + postcss: 8.4.49 + postcss-attribute-case-insensitive: 7.0.1(postcss@8.4.49) + postcss-clamp: 4.1.0(postcss@8.4.49) + postcss-color-functional-notation: 7.0.6(postcss@8.4.49) + postcss-color-hex-alpha: 10.0.0(postcss@8.4.49) + postcss-color-rebeccapurple: 10.0.0(postcss@8.4.49) + postcss-custom-media: 11.0.5(postcss@8.4.49) + postcss-custom-properties: 14.0.4(postcss@8.4.49) + postcss-custom-selectors: 8.0.4(postcss@8.4.49) + postcss-dir-pseudo-class: 9.0.1(postcss@8.4.49) + postcss-double-position-gradients: 6.0.0(postcss@8.4.49) + postcss-focus-visible: 10.0.1(postcss@8.4.49) + postcss-focus-within: 9.0.1(postcss@8.4.49) + postcss-font-variant: 5.0.0(postcss@8.4.49) + postcss-gap-properties: 6.0.0(postcss@8.4.49) + postcss-image-set-function: 7.0.0(postcss@8.4.49) + postcss-lab-function: 7.0.6(postcss@8.4.49) + postcss-logical: 8.0.0(postcss@8.4.49) + postcss-nesting: 13.0.1(postcss@8.4.49) + postcss-opacity-percentage: 3.0.0(postcss@8.4.49) + postcss-overflow-shorthand: 6.0.0(postcss@8.4.49) + postcss-page-break: 3.0.4(postcss@8.4.49) + postcss-place: 10.0.0(postcss@8.4.49) + postcss-pseudo-class-any-link: 10.0.1(postcss@8.4.49) + postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.49) + postcss-selector-not: 8.0.1(postcss@8.4.49) + + postcss-pseudo-class-any-link@10.0.1(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + + postcss-reduce-idents@6.0.3(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-value-parser: 4.2.0 + + postcss-reduce-initial@6.1.0(postcss@8.4.49): + dependencies: + browserslist: 4.24.3 caniuse-api: 3.0.0 - postcss: 8.4.47 + postcss: 8.4.49 - postcss-reduce-transforms@6.0.2(postcss@8.4.47): + postcss-reduce-transforms@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 + postcss-replace-overflow-wrap@4.0.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + + postcss-selector-not@8.0.1(postcss@8.4.49): + dependencies: + postcss: 8.4.49 + postcss-selector-parser: 7.0.0 + postcss-selector-parser@6.1.2: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-sort-media-queries@5.2.0(postcss@8.4.47): + postcss-selector-parser@7.0.0: dependencies: - postcss: 8.4.47 + cssesc: 3.0.0 + util-deprecate: 1.0.2 + + postcss-sort-media-queries@5.2.0(postcss@8.4.49): + dependencies: + postcss: 8.4.49 sort-css-media-queries: 2.2.0 - postcss-svgo@6.0.3(postcss@8.4.47): + postcss-svgo@6.0.3(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-value-parser: 4.2.0 svgo: 3.3.2 - postcss-unique-selectors@6.0.4(postcss@8.4.47): + postcss-unique-selectors@6.0.4(postcss@8.4.49): dependencies: - postcss: 8.4.47 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 postcss-value-parser@4.2.0: {} - postcss-zindex@6.0.2(postcss@8.4.47): + postcss-zindex@6.0.2(postcss@8.4.49): dependencies: - postcss: 8.4.47 - - postcss@8.4.47: - dependencies: - nanoid: 3.3.7 - picocolors: 1.1.1 - source-map-js: 1.2.1 + postcss: 8.4.49 postcss@8.4.49: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 - posthog-js@1.161.5: + posthog-js@1.202.2: dependencies: + core-js: 3.39.0 fflate: 0.4.8 - preact: 10.24.0 - web-vitals: 4.2.3 + preact: 10.25.2 + web-vitals: 4.2.4 - preact@10.24.0: {} + preact@10.25.2: {} prebuild-install@7.1.2: dependencies: @@ -28426,7 +26168,7 @@ snapshots: minimist: 1.2.8 mkdirp-classic: 0.5.3 napi-build-utils: 1.0.2 - node-abi: 3.67.0 + node-abi: 3.71.0 pump: 3.0.2 rc: 1.2.8 simple-get: 4.0.1 @@ -28462,15 +26204,15 @@ snapshots: ansi-styles: 5.2.0 react-is: 18.3.1 - pretty-ms@9.1.0: + pretty-ms@9.2.0: dependencies: parse-ms: 4.0.0 pretty-time@1.1.0: {} - prism-react-renderer@2.4.0(react@18.3.1): + prism-react-renderer@2.4.1(react@18.3.1): dependencies: - '@types/prismjs': 1.26.4 + '@types/prismjs': 1.26.5 clsx: 2.1.1 react: 18.3.1 @@ -28529,23 +26271,10 @@ snapshots: forwarded: 0.2.0 ipaddr.js: 1.9.1 - proxy-agent@6.4.0: - dependencies: - agent-base: 7.1.3 - debug: 4.4.0 - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 - 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 - proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -28568,8 +26297,6 @@ snapshots: end-of-stream: 1.4.4 once: 1.4.0 - punycode@1.4.1: {} - punycode@2.3.1: {} pupa@2.1.1: @@ -28584,7 +26311,7 @@ snapshots: dependencies: '@puppeteer/browsers': 2.3.0 chromium-bidi: 0.6.3(devtools-protocol@0.0.1312386) - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) devtools-protocol: 0.0.1312386 ws: 8.18.0 transitivePeerDependencies: @@ -28592,24 +26319,11 @@ snapshots: - supports-color - utf-8-validate - puppeteer-core@23.1.1: - dependencies: - '@puppeteer/browsers': 2.3.1 - chromium-bidi: 0.6.4(devtools-protocol@0.0.1312386) - debug: 4.3.7(supports-color@8.1.1) - devtools-protocol: 0.0.1312386 - typed-query-selector: 2.12.0 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - puppeteer-core@23.4.1: dependencies: '@puppeteer/browsers': 2.4.0 chromium-bidi: 0.6.5(devtools-protocol@0.0.1342118) - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) devtools-protocol: 0.0.1342118 typed-query-selector: 2.12.0 ws: 8.18.0 @@ -28620,7 +26334,7 @@ snapshots: qs@6.13.0: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 query-selector-shadow-dom@1.0.1: {} @@ -28679,18 +26393,18 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-dev-utils@12.0.1(eslint@9.10.0(jiti@1.21.6))(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)): + react-dev-utils@12.0.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@babel/code-frame': 7.26.2 address: 1.2.2 - browserslist: 4.23.3 + browserslist: 4.24.3 chalk: 4.1.2 - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 detect-port-alt: 1.1.6 escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(eslint@9.10.0(jiti@1.21.6))(typescript@5.6.2)(webpack@5.94.0(@swc/core@1.7.26)) + fork-ts-checker-webpack-plugin: 6.5.3(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2)(webpack@5.97.1(@swc/core@1.10.1)) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -28702,12 +26416,12 @@ snapshots: prompts: 2.4.2 react-error-overlay: 6.0.11 recursive-readdir: 2.2.3 - shell-quote: 1.8.1 + shell-quote: 1.8.2 strip-ansi: 6.0.1 text-table: 0.2.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) optionalDependencies: - typescript: 5.6.2 + typescript: 5.7.2 transitivePeerDependencies: - eslint - supports-color @@ -28725,7 +26439,7 @@ snapshots: react-helmet-async@1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 invariant: 2.2.4 prop-types: 15.8.1 react: 18.3.1 @@ -28755,11 +26469,11 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@18.3.1))(webpack@5.94.0(@swc/core@1.7.26)): + react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@18.3.1))(webpack@5.97.1(@swc/core@1.10.1)): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.3.1)' - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) react-property@2.0.2: {} @@ -28767,13 +26481,13 @@ snapshots: react-router-config@5.1.1(react-router@5.3.4(react@18.3.1))(react@18.3.1): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 react: 18.3.1 react-router: 5.3.4(react@18.3.1) react-router-dom@5.3.4(react@18.3.1): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -28784,7 +26498,7 @@ snapshots: react-router@5.3.4(react@18.3.1): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 @@ -28797,7 +26511,7 @@ snapshots: react-waypoint@10.3.0(react@18.3.1): dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 consolidated-events: 2.0.2 prop-types: 15.8.1 react: 18.3.1 @@ -28824,7 +26538,7 @@ snapshots: dependencies: find-up: 6.3.0 read-pkg: 8.1.0 - type-fest: 4.26.1 + type-fest: 4.30.2 read-pkg-up@3.0.0: dependencies: @@ -28855,7 +26569,7 @@ snapshots: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.2 parse-json: 7.1.1 - type-fest: 4.26.1 + type-fest: 4.30.2 read@3.0.1: dependencies: @@ -28900,7 +26614,7 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.0.1: {} + readdirp@4.0.2: {} reading-time@1.5.0: {} @@ -28910,11 +26624,41 @@ snapshots: esprima: 4.0.1 source-map: 0.6.1 tiny-invariant: 1.3.3 - tslib: 2.7.0 + tslib: 2.8.1 rechoir@0.6.2: dependencies: - resolve: 1.22.8 + resolve: 1.22.9 + + recma-build-jsx@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-build-jsx: 3.0.1 + vfile: 6.0.3 + + recma-jsx@1.0.0(acorn@8.14.0): + dependencies: + acorn-jsx: 5.3.2(acorn@8.14.0) + estree-util-to-js: 2.0.0 + recma-parse: 1.0.0 + recma-stringify: 1.0.0 + unified: 11.0.5 + transitivePeerDependencies: + - acorn + + recma-parse@1.0.0: + dependencies: + '@types/estree': 1.0.6 + esast-util-from-js: 2.0.1 + unified: 11.0.5 + vfile: 6.0.3 + + recma-stringify@1.0.0: + dependencies: + '@types/estree': 1.0.6 + estree-util-to-js: 2.0.0 + unified: 11.0.5 + vfile: 6.0.3 recursive-readdir@2.2.3: dependencies: @@ -28929,6 +26673,17 @@ snapshots: reflect-metadata@0.2.2: {} + reflect.getprototypeof@1.0.9: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + dunder-proto: 1.0.1 + es-abstract: 1.23.6 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + which-builtin-type: 1.2.1 + regenerate-unicode-properties@10.2.0: dependencies: regenerate: 1.4.2 @@ -28939,7 +26694,7 @@ snapshots: regenerator-transform@0.15.2: dependencies: - '@babel/runtime': 7.25.6 + '@babel/runtime': 7.26.0 regexp-match-indices@1.0.2: dependencies: @@ -28947,19 +26702,19 @@ snapshots: regexp-tree@0.1.27: {} - regexp.prototype.flags@1.5.2: + regexp.prototype.flags@1.5.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 set-function-name: 2.0.2 - regexpu-core@5.3.2: + regexpu-core@6.2.0: dependencies: - '@babel/regjsgen': 0.8.0 regenerate: 1.4.2 regenerate-unicode-properties: 10.2.0 - regjsparser: 0.9.1 + regjsgen: 0.8.0 + regjsparser: 0.12.0 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.2.0 @@ -28967,7 +26722,7 @@ snapshots: dependencies: rc: 1.2.8 - registry-auth-token@5.0.2: + registry-auth-token@5.0.3: dependencies: '@pnpm/npm-conf': 2.3.1 @@ -28979,27 +26734,37 @@ snapshots: dependencies: rc: 1.2.8 + regjsgen@0.8.0: {} + regjsparser@0.10.0: dependencies: jsesc: 0.5.0 - regjsparser@0.9.1: + regjsparser@0.12.0: dependencies: - jsesc: 0.5.0 + jsesc: 3.0.2 rehype-raw@7.0.0: dependencies: '@types/hast': 3.0.4 - hast-util-raw: 9.0.4 + hast-util-raw: 9.1.0 vfile: 6.0.3 + rehype-recma@1.0.0: + dependencies: + '@types/estree': 1.0.6 + '@types/hast': 3.0.4 + hast-util-to-estree: 3.1.0 + transitivePeerDependencies: + - supports-color + relateurl@0.2.7: {} remark-directive@3.0.0: dependencies: '@types/mdast': 4.0.4 mdast-util-directive: 3.0.0 - micromark-extension-directive: 3.0.1 + micromark-extension-directive: 3.0.2 unified: 11.0.5 transitivePeerDependencies: - supports-color @@ -29009,7 +26774,7 @@ snapshots: '@types/mdast': 4.0.4 emoticon: 4.1.0 mdast-util-find-and-replace: 3.0.1 - node-emoji: 2.1.3 + node-emoji: 2.2.0 unified: 11.0.5 remark-frontmatter@5.0.0: @@ -29032,7 +26797,7 @@ snapshots: transitivePeerDependencies: - supports-color - remark-mdx@3.0.1: + remark-mdx@3.1.0: dependencies: mdast-util-mdx: 3.0.0 micromark-extension-mdxjs: 3.0.0 @@ -29042,13 +26807,13 @@ snapshots: remark-parse@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - micromark-util-types: 2.0.0 + mdast-util-from-markdown: 2.0.2 + micromark-util-types: 2.0.1 unified: 11.0.5 transitivePeerDependencies: - supports-color - remark-rehype@11.1.0: + remark-rehype@11.1.1: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 @@ -29059,7 +26824,7 @@ snapshots: remark-stringify@11.0.0: dependencies: '@types/mdast': 4.0.4 - mdast-util-to-markdown: 2.1.0 + mdast-util-to-markdown: 2.1.2 unified: 11.0.5 renderkid@3.0.0: @@ -29105,9 +26870,9 @@ snapshots: dependencies: resolve-from: 5.0.0 - resolve@1.22.8: + resolve@1.22.9: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -29155,7 +26920,7 @@ snapshots: rimraf@6.0.1: dependencies: glob: 11.0.0 - package-json-from-dist: 1.0.0 + package-json-from-dist: 1.0.1 robots-parser@2.4.0: {} @@ -29163,50 +26928,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - rollup@4.21.3: - dependencies: - '@types/estree': 1.0.5 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.21.3 - '@rollup/rollup-android-arm64': 4.21.3 - '@rollup/rollup-darwin-arm64': 4.21.3 - '@rollup/rollup-darwin-x64': 4.21.3 - '@rollup/rollup-linux-arm-gnueabihf': 4.21.3 - '@rollup/rollup-linux-arm-musleabihf': 4.21.3 - '@rollup/rollup-linux-arm64-gnu': 4.21.3 - '@rollup/rollup-linux-arm64-musl': 4.21.3 - '@rollup/rollup-linux-powerpc64le-gnu': 4.21.3 - '@rollup/rollup-linux-riscv64-gnu': 4.21.3 - '@rollup/rollup-linux-s390x-gnu': 4.21.3 - '@rollup/rollup-linux-x64-gnu': 4.21.3 - '@rollup/rollup-linux-x64-musl': 4.21.3 - '@rollup/rollup-win32-arm64-msvc': 4.21.3 - '@rollup/rollup-win32-ia32-msvc': 4.21.3 - '@rollup/rollup-win32-x64-msvc': 4.21.3 - fsevents: 2.3.3 - - rollup@4.24.0: - dependencies: - '@types/estree': 1.0.6 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.24.0 - '@rollup/rollup-android-arm64': 4.24.0 - '@rollup/rollup-darwin-arm64': 4.24.0 - '@rollup/rollup-darwin-x64': 4.24.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 - '@rollup/rollup-linux-arm-musleabihf': 4.24.0 - '@rollup/rollup-linux-arm64-gnu': 4.24.0 - '@rollup/rollup-linux-arm64-musl': 4.24.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 - '@rollup/rollup-linux-riscv64-gnu': 4.24.0 - '@rollup/rollup-linux-s390x-gnu': 4.24.0 - '@rollup/rollup-linux-x64-gnu': 4.24.0 - '@rollup/rollup-linux-x64-musl': 4.24.0 - '@rollup/rollup-win32-arm64-msvc': 4.24.0 - '@rollup/rollup-win32-ia32-msvc': 4.24.0 - '@rollup/rollup-win32-x64-msvc': 4.24.0 - fsevents: 2.3.3 - rollup@4.28.1: dependencies: '@types/estree': 1.0.6 @@ -29253,28 +26974,27 @@ snapshots: rxjs@7.8.1: dependencies: - tslib: 2.7.0 - - safaridriver@0.1.2: {} + tslib: 2.8.1 safaridriver@1.0.0: {} - safe-array-concat@1.1.2: + safe-array-concat@1.1.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 isarray: 2.0.5 safe-buffer@5.1.2: {} safe-buffer@5.2.1: {} - safe-regex-test@1.0.3: + safe-regex-test@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 es-errors: 1.3.0 - is-regex: 1.1.4 + is-regex: 1.2.1 safe-stable-stringify@2.5.0: {} @@ -29286,7 +27006,7 @@ snapshots: dependencies: change-case: 4.1.2 compressing: 1.10.1 - form-data: 4.0.0 + form-data: 4.0.1 got: 11.8.6 hash.js: 1.1.7 query-string: 7.1.3 @@ -29315,7 +27035,7 @@ snapshots: ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) - schema-utils@4.2.0: + schema-utils@4.3.0: dependencies: '@types/json-schema': 7.0.15 ajv: 8.17.1 @@ -29325,7 +27045,7 @@ snapshots: scule@1.3.0: optional: true - search-insights@2.17.2: {} + search-insights@2.17.3: {} section-matter@1.0.0: dependencies: @@ -29393,15 +27113,14 @@ snapshots: dependencies: randombytes: 2.1.0 - serve-handler@6.1.5: + serve-handler@6.1.6: dependencies: bytes: 3.0.0 content-disposition: 0.5.2 - fast-url-parser: 1.1.3 mime-types: 2.1.18 minimatch: 3.1.2 path-is-inside: 1.0.2 - path-to-regexp: 2.2.1 + path-to-regexp: 3.3.0 range-parser: 1.2.0 serve-index@1.9.1: @@ -29432,8 +27151,8 @@ snapshots: define-data-property: 1.1.4 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 - gopd: 1.0.1 + get-intrinsic: 1.2.6 + gopd: 1.2.0 has-property-descriptors: 1.0.2 set-function-name@2.0.2: @@ -29472,7 +27191,7 @@ snapshots: shebang-regex@3.0.0: {} - shell-quote@1.8.1: {} + shell-quote@1.8.2: {} shelljs@0.8.5: dependencies: @@ -29480,13 +27199,34 @@ snapshots: interpret: 1.4.0 rechoir: 0.6.2 - side-channel@1.0.6: + side-channel-list@1.0.0: dependencies: - call-bind: 1.0.7 es-errors: 1.3.0 - get-intrinsic: 1.2.4 object-inspect: 1.13.3 + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.3 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + siginfo@2.0.0: {} signal-exit@3.0.7: {} @@ -29518,7 +27258,7 @@ snapshots: sirv@2.0.4: dependencies: - '@polka/url': 1.0.0-next.25 + '@polka/url': 1.0.0-next.28 mrmime: 2.0.0 totalist: 3.0.1 @@ -29559,15 +27299,7 @@ snapshots: socks-proxy-agent@6.2.1: dependencies: agent-base: 6.0.2 - debug: 4.4.0 - socks: 2.8.3 - transitivePeerDependencies: - - supports-color - - socks-proxy-agent@8.0.4: - dependencies: - agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -29575,7 +27307,7 @@ snapshots: socks-proxy-agent@8.0.5: dependencies: agent-base: 7.1.3 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) socks: 2.8.3 transitivePeerDependencies: - supports-color @@ -29610,8 +27342,6 @@ snapshots: space-separated-tokens@2.0.2: {} - spacetrim@0.11.39: {} - spacetrim@0.11.59: {} spdx-correct@3.2.0: @@ -29630,7 +27360,7 @@ snapshots: spdy-transport@3.0.0: dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 @@ -29641,7 +27371,7 @@ snapshots: spdy@4.0.2: dependencies: - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -29703,9 +27433,10 @@ snapshots: std-env@3.8.0: {} - stop-iteration-iterator@1.0.0: + stop-iteration-iterator@1.1.0: dependencies: - internal-slot: 1.0.7 + es-errors: 1.3.0 + internal-slot: 1.1.0 stream-browserify@3.0.0: dependencies: @@ -29720,13 +27451,13 @@ snapshots: streamifier@0.1.1: {} - streamx@2.20.1: + streamx@2.21.1: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.2.0 + text-decoder: 1.2.3 optionalDependencies: - bare-events: 2.4.2 + bare-events: 2.5.0 strict-event-emitter@0.1.0: {} @@ -29751,40 +27482,44 @@ snapshots: string-width@7.2.0: dependencies: emoji-regex: 10.4.0 - get-east-asian-width: 1.2.0 + get-east-asian-width: 1.3.0 strip-ansi: 7.1.0 string.prototype.matchall@4.0.11: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.3 + es-abstract: 1.23.6 es-errors: 1.3.0 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - gopd: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.2 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 - string.prototype.trim@1.2.9: + string.prototype.trim@1.2.10: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + define-data-property: 1.1.4 define-properties: 1.2.1 - es-abstract: 1.23.3 + es-abstract: 1.23.6 es-object-atoms: 1.0.0 + has-property-descriptors: 1.0.2 - string.prototype.trimend@1.0.8: + string.prototype.trimend@1.0.9: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.0.0 string.prototype.trimstart@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -29844,9 +27579,9 @@ snapshots: strip-json-comments@3.1.1: {} - strip-literal@2.1.0: + strip-literal@2.1.1: dependencies: - js-tokens: 9.0.0 + js-tokens: 9.0.1 optional: true strip-outer@1.0.1: @@ -29877,15 +27612,15 @@ snapshots: dependencies: inline-style-parser: 0.2.4 - stylehacks@6.1.1(postcss@8.4.47): + stylehacks@6.1.1(postcss@8.4.49): dependencies: - browserslist: 4.24.2 - postcss: 8.4.47 + browserslist: 4.24.3 + postcss: 8.4.49 postcss-selector-parser: 6.1.2 sucrase@3.35.0: dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 commander: 4.1.1 glob: 10.4.5 lines-and-columns: 1.2.4 @@ -29893,10 +27628,6 @@ snapshots: pirates: 4.0.6 ts-interface-checker: 0.1.13 - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - supports-color@7.2.0: dependencies: has-flag: 4.0.0 @@ -29922,15 +27653,15 @@ snapshots: '@jridgewell/sourcemap-codec': 1.5.0 '@jridgewell/trace-mapping': 0.3.25 '@types/estree': 1.0.6 - acorn: 8.12.1 + acorn: 8.14.0 aria-query: 5.3.2 axobject-query: 4.1.0 code-red: 1.0.4 css-tree: 2.3.1 estree-walker: 3.0.3 - is-reference: 3.0.2 + is-reference: 3.0.3 locate-character: 3.0.0 - magic-string: 0.30.11 + magic-string: 0.30.17 periscopic: 3.1.0 svg-parser@2.0.4: {} @@ -29951,7 +27682,7 @@ snapshots: dependencies: acorn-node: 1.8.2 - tailwindcss@3.4.11: + tailwindcss@3.4.17: dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -29961,19 +27692,19 @@ snapshots: fast-glob: 3.3.2 glob-parent: 6.0.2 is-glob: 4.0.3 - jiti: 1.21.6 - lilconfig: 2.1.0 + jiti: 1.21.7 + lilconfig: 3.1.3 micromatch: 4.0.8 normalize-path: 3.0.0 object-hash: 3.0.0 - picocolors: 1.1.0 - postcss: 8.4.47 - postcss-import: 15.1.0(postcss@8.4.47) - postcss-js: 4.0.1(postcss@8.4.47) - postcss-load-config: 4.0.2(postcss@8.4.47) - postcss-nested: 6.2.0(postcss@8.4.47) + picocolors: 1.1.1 + postcss: 8.4.49 + postcss-import: 15.1.0(postcss@8.4.49) + postcss-js: 4.0.1(postcss@8.4.49) + postcss-load-config: 4.0.2(postcss@8.4.49) + postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 - resolve: 1.22.8 + resolve: 1.22.9 sucrase: 3.35.0 transitivePeerDependencies: - ts-node @@ -30017,9 +27748,9 @@ snapshots: tar-stream@3.1.7: dependencies: - b4a: 1.6.6 + b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.20.1 + streamx: 2.21.1 tar@6.2.1: dependencies: @@ -30056,18 +27787,18 @@ snapshots: term-size@2.2.1: {} - terser-webpack-plugin@5.3.10(@swc/core@1.7.26)(webpack@5.94.0(@swc/core@1.7.26)): + terser-webpack-plugin@5.3.11(@swc/core@1.10.1)(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 - schema-utils: 3.3.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 - terser: 5.32.0 - webpack: 5.94.0(@swc/core@1.7.26) + terser: 5.37.0 + webpack: 5.97.1(@swc/core@1.10.1) optionalDependencies: - '@swc/core': 1.7.26 + '@swc/core': 1.10.1 - terser@5.32.0: + terser@5.37.0: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.14.0 @@ -30086,13 +27817,13 @@ snapshots: glob: 10.4.5 minimatch: 9.0.5 - testingbot-tunnel-launcher@1.1.12: + testingbot-tunnel-launcher@1.1.14: dependencies: async: 3.2.6 - text-decoder@1.2.0: + text-decoder@1.2.3: dependencies: - b4a: 1.6.6 + b4a: 1.6.7 text-extensions@1.9.0: {} @@ -30137,11 +27868,11 @@ snapshots: tinyspy@3.0.2: {} - tldts-core@6.1.47: {} + tldts-core@6.1.68: {} - tldts@6.1.47: + tldts@6.1.68: dependencies: - tldts-core: 6.1.47 + tldts-core: 6.1.68 tmp@0.0.33: dependencies: @@ -30151,8 +27882,6 @@ snapshots: to-buffer@1.1.1: {} - to-fast-properties@2.0.0: {} - to-readable-stream@1.0.0: {} to-regex-range@5.0.1: @@ -30167,7 +27896,7 @@ snapshots: tough-cookie@5.0.0: dependencies: - tldts: 6.1.47 + tldts: 6.1.68 tr46@0.0.3: {} @@ -30199,19 +27928,12 @@ snapshots: dependencies: matchit: 1.1.0 - ts-api-utils@1.3.0(typescript@5.6.3): + ts-api-utils@1.4.3(typescript@5.7.2): dependencies: - typescript: 5.6.3 + typescript: 5.7.2 ts-interface-checker@0.1.13: {} - tsconfig-paths@3.15.0: - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - tsconfig-paths@4.2.0: dependencies: json5: 2.2.3 @@ -30228,17 +27950,8 @@ snapshots: path-exists: 4.0.0 read-pkg-up: 7.0.1 - tslib@2.7.0: {} - tslib@2.8.1: {} - tsx@4.19.1: - dependencies: - esbuild: 0.23.1 - get-tsconfig: 4.8.1 - optionalDependencies: - fsevents: 2.3.3 - tsx@4.19.2: dependencies: esbuild: 0.23.1 @@ -30249,7 +27962,7 @@ snapshots: tuf-js@2.2.1: dependencies: '@tufjs/models': 2.0.1 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) make-fetch-happen: 13.0.1 transitivePeerDependencies: - supports-color @@ -30270,8 +27983,6 @@ snapshots: type-fest@0.18.1: {} - type-fest@0.20.2: {} - type-fest@0.21.3: {} type-fest@0.4.1: {} @@ -30282,52 +27993,51 @@ snapshots: type-fest@1.4.0: {} - type-fest@2.13.0: {} - type-fest@2.19.0: {} type-fest@3.13.1: {} type-fest@4.26.0: {} - type-fest@4.26.1: {} + type-fest@4.30.2: {} type-is@1.6.18: dependencies: media-typer: 0.3.0 mime-types: 2.1.35 - typed-array-buffer@1.0.2: + typed-array-buffer@1.0.3: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 es-errors: 1.3.0 - is-typed-array: 1.1.13 + is-typed-array: 1.1.15 - typed-array-byte-length@1.0.1: + typed-array-byte-length@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 - typed-array-byte-offset@1.0.2: + typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.9 - typed-array-length@1.0.6: + typed-array-length@1.0.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 + gopd: 1.2.0 + is-typed-array: 1.1.15 possible-typed-array-names: 1.0.0 + reflect.getprototypeof: 1.0.9 typed-query-selector@2.12.0: {} @@ -30337,9 +28047,17 @@ snapshots: typedarray@0.0.6: {} - typescript@5.6.2: {} + typescript-eslint@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2): + dependencies: + '@typescript-eslint/eslint-plugin': 8.18.1(@typescript-eslint/parser@8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2))(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/parser': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + '@typescript-eslint/utils': 8.18.1(eslint@9.17.0(jiti@2.4.2))(typescript@5.7.2) + eslint: 9.17.0(jiti@2.4.2) + typescript: 5.7.2 + transitivePeerDependencies: + - supports-color - typescript@5.6.3: {} + typescript@5.7.2: {} uc.micro@1.0.6: {} @@ -30348,12 +28066,12 @@ snapshots: uglify-js@3.19.3: optional: true - unbox-primitive@1.0.2: + unbox-primitive@1.1.0: dependencies: - call-bind: 1.0.7 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 + call-bound: 1.0.3 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 unbzip2-stream@1.4.3: dependencies: @@ -30363,24 +28081,18 @@ snapshots: uncrypto@0.1.3: optional: true - unctx@2.3.1(webpack-sources@3.2.3): + unctx@2.4.1: dependencies: acorn: 8.14.0 estree-walker: 3.0.3 magic-string: 0.30.17 - unplugin: 1.14.1(webpack-sources@3.2.3) - transitivePeerDependencies: - - webpack-sources + unplugin: 2.1.0 optional: true undici-types@6.19.8: {} undici-types@6.20.0: {} - undici@6.19.8: {} - - undici@6.20.1: {} - undici@6.21.0: {} unicode-canonical-property-names-ecmascript@2.0.1: {} @@ -30399,6 +28111,8 @@ snapshots: unicorn-magic@0.1.0: optional: true + unicorn-magic@0.3.0: {} + unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -30409,24 +28123,24 @@ snapshots: trough: 2.2.0 vfile: 6.0.3 - unimport@3.12.0(rollup@4.28.1)(webpack-sources@3.2.3): + unimport@3.14.5(rollup@4.28.1): dependencies: - '@rollup/pluginutils': 5.1.0(rollup@4.28.1) - acorn: 8.12.1 + '@rollup/pluginutils': 5.1.4(rollup@4.28.1) + acorn: 8.14.0 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 fast-glob: 3.3.2 - local-pkg: 0.5.0 - magic-string: 0.30.11 - mlly: 1.7.2 + local-pkg: 0.5.1 + magic-string: 0.30.17 + mlly: 1.7.3 pathe: 1.1.2 - pkg-types: 1.2.0 + picomatch: 4.0.2 + pkg-types: 1.2.1 scule: 1.3.0 - strip-literal: 2.1.0 - unplugin: 1.14.1(webpack-sources@3.2.3) + strip-literal: 2.1.1 + unplugin: 1.16.0 transitivePeerDependencies: - rollup - - webpack-sources optional: true unique-filename@1.1.1: @@ -30488,24 +28202,29 @@ snapshots: unpipe@1.0.0: {} - unplugin@1.14.1(webpack-sources@3.2.3): + unplugin@1.16.0: + dependencies: + acorn: 8.14.0 + webpack-virtual-modules: 0.6.2 + optional: true + + unplugin@2.1.0: dependencies: acorn: 8.14.0 webpack-virtual-modules: 0.6.2 - optionalDependencies: - webpack-sources: 3.2.3 optional: true untildify@4.0.0: {} - untyped@1.4.2: + untyped@1.5.2: dependencies: '@babel/core': 7.26.0 - '@babel/standalone': 7.25.6 - '@babel/types': 7.25.8 + '@babel/standalone': 7.26.4 + '@babel/types': 7.26.3 + citty: 0.1.6 defu: 6.1.4 - jiti: 1.21.6 - mri: 1.2.0 + jiti: 2.4.2 + knitwork: 1.2.0 scule: 1.3.0 transitivePeerDependencies: - supports-color @@ -30523,21 +28242,9 @@ snapshots: upath@2.0.1: {} - update-browserslist-db@1.1.0(browserslist@4.23.3): + update-browserslist-db@1.1.1(browserslist@4.24.3): dependencies: - browserslist: 4.23.3 - escalade: 3.2.0 - picocolors: 1.1.1 - - update-browserslist-db@1.1.1(browserslist@4.24.0): - dependencies: - browserslist: 4.24.0 - escalade: 3.2.0 - picocolors: 1.1.1 - - update-browserslist-db@1.1.1(browserslist@4.24.2): - dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 escalade: 3.2.0 picocolors: 1.1.1 @@ -30560,7 +28267,7 @@ snapshots: update-notifier@6.0.2: dependencies: boxen: 7.1.1 - chalk: 5.3.0 + chalk: 5.4.0 configstore: 6.0.0 has-yarn: 3.0.0 import-lazy: 4.0.0 @@ -30586,14 +28293,14 @@ snapshots: dependencies: punycode: 2.3.1 - url-loader@4.1.1(file-loader@6.2.0(webpack@5.94.0(@swc/core@1.7.26)))(webpack@5.94.0(@swc/core@1.7.26)): + url-loader@4.1.1(file-loader@6.2.0(webpack@5.97.1(@swc/core@1.10.1)))(webpack@5.97.1(@swc/core@1.10.1)): dependencies: loader-utils: 2.0.4 mime-types: 2.1.35 schema-utils: 3.3.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) optionalDependencies: - file-loader: 6.2.0(webpack@5.94.0(@swc/core@1.7.26)) + file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.10.1)) url-parse-lax@3.0.0: dependencies: @@ -30601,8 +28308,6 @@ snapshots: urlpattern-polyfill@10.0.0: {} - userhome@1.0.0: {} - userhome@1.0.1: {} util-arity@1.1.0: {} @@ -30630,6 +28335,8 @@ snapshots: validate-npm-package-name@5.0.1: {} + validate-npm-package-name@6.0.0: {} + value-equal@1.0.1: {} vary@1.1.2: {} @@ -30649,13 +28356,13 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@2.1.8(@types/node@20.16.13)(terser@5.32.0): + vite-node@2.1.8(@types/node@20.17.10)(terser@5.37.0): dependencies: cac: 6.7.14 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) es-module-lexer: 1.5.4 pathe: 1.1.2 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - '@types/node' - less @@ -30667,86 +28374,66 @@ snapshots: - supports-color - terser - vite-plugin-istanbul@6.0.2(vite@5.4.10(@types/node@20.17.10)(terser@5.32.0)): + vite-plugin-istanbul@6.0.2(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)): dependencies: '@istanbuljs/load-nyc-config': 1.1.0 - espree: 10.1.0 + espree: 10.3.0 istanbul-lib-instrument: 6.0.3 - picocolors: 1.1.0 + picocolors: 1.1.1 source-map: 0.7.4 test-exclude: 6.0.0 - vite: 5.4.10(@types/node@20.17.10)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - supports-color - vite-plugin-top-level-await@1.4.4(rollup@4.28.1)(vite@5.4.10(@types/node@20.17.10)(terser@5.32.0)): + vite-plugin-top-level-await@1.4.4(rollup@4.28.1)(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)): dependencies: '@rollup/plugin-virtual': 3.0.2(rollup@4.28.1) - '@swc/core': 1.7.26 + '@swc/core': 1.10.1 uuid: 10.0.0 - vite: 5.4.10(@types/node@20.17.10)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) transitivePeerDependencies: - '@swc/helpers' - rollup - vite@5.4.10(@types/node@20.17.10)(terser@5.32.0): - dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.24.0 - optionalDependencies: - '@types/node': 20.17.10 - fsevents: 2.3.3 - terser: 5.32.0 - - vite@5.4.11(@types/node@20.16.13)(terser@5.32.0): + vite@5.4.11(@types/node@20.17.10)(terser@5.37.0): dependencies: esbuild: 0.21.5 postcss: 8.4.49 rollup: 4.28.1 - optionalDependencies: - '@types/node': 20.16.13 - fsevents: 2.3.3 - terser: 5.32.0 - - vite@5.4.5(@types/node@20.17.10)(terser@5.32.0): - dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.21.3 optionalDependencies: '@types/node': 20.17.10 fsevents: 2.3.3 - terser: 5.32.0 + terser: 5.37.0 - vitefu@0.2.5(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)): + vitefu@0.2.5(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)): optionalDependencies: - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) - vitest@2.1.8(@types/node@20.16.13)(jsdom@25.0.1)(terser@5.32.0): + vitest@2.1.8(@types/node@20.17.10)(jsdom@25.0.1)(terser@5.37.0): dependencies: '@vitest/expect': 2.1.8 - '@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@20.16.13)(terser@5.32.0)) + '@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@20.17.10)(terser@5.37.0)) '@vitest/pretty-format': 2.1.8 '@vitest/runner': 2.1.8 '@vitest/snapshot': 2.1.8 '@vitest/spy': 2.1.8 '@vitest/utils': 2.1.8 chai: 5.1.2 - debug: 4.4.0 + debug: 4.4.0(supports-color@8.1.1) expect-type: 1.1.0 - magic-string: 0.30.15 + magic-string: 0.30.17 pathe: 1.1.2 std-env: 3.8.0 tinybench: 2.9.0 tinyexec: 0.3.1 tinypool: 1.0.2 tinyrainbow: 1.2.0 - vite: 5.4.11(@types/node@20.16.13)(terser@5.32.0) - vite-node: 2.1.8(@types/node@20.16.13)(terser@5.32.0) + vite: 5.4.11(@types/node@20.17.10)(terser@5.37.0) + vite-node: 2.1.8(@types/node@20.17.10)(terser@5.37.0) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 20.16.13 + '@types/node': 20.17.10 jsdom: 25.0.1 transitivePeerDependencies: - less @@ -30761,44 +28448,24 @@ snapshots: vscode-uri@3.0.8: {} - vue-component-type-helpers@2.1.6: {} + vue-component-type-helpers@2.1.10: {} - vue-tsc@2.1.6(typescript@5.6.2): + vue-tsc@2.1.10(typescript@5.7.2): dependencies: - '@volar/typescript': 2.4.5 - '@vue/language-core': 2.1.6(typescript@5.6.2) + '@volar/typescript': 2.4.11 + '@vue/language-core': 2.1.10(typescript@5.7.2) semver: 7.6.3 - typescript: 5.6.2 + typescript: 5.7.2 - vue@3.5.13(typescript@5.6.3): + vue@3.5.13(typescript@5.7.2): dependencies: '@vue/compiler-dom': 3.5.13 '@vue/compiler-sfc': 3.5.13 '@vue/runtime-dom': 3.5.13 - '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.6.3)) + '@vue/server-renderer': 3.5.13(vue@3.5.13(typescript@5.7.2)) '@vue/shared': 3.5.13 optionalDependencies: - typescript: 5.6.3 - - vue@3.5.6(typescript@5.6.2): - dependencies: - '@vue/compiler-dom': 3.5.6 - '@vue/compiler-sfc': 3.5.6 - '@vue/runtime-dom': 3.5.6 - '@vue/server-renderer': 3.5.6(vue@3.5.6(typescript@5.6.2)) - '@vue/shared': 3.5.6 - optionalDependencies: - typescript: 5.6.2 - - vue@3.5.6(typescript@5.6.3): - dependencies: - '@vue/compiler-dom': 3.5.6 - '@vue/compiler-sfc': 3.5.6 - '@vue/runtime-dom': 3.5.6 - '@vue/server-renderer': 3.5.6(vue@3.5.6(typescript@5.6.3)) - '@vue/shared': 3.5.6 - optionalDependencies: - typescript: 5.6.3 + typescript: 5.7.2 w3c-xmlserializer@5.0.0: dependencies: @@ -30808,7 +28475,7 @@ snapshots: dependencies: chalk: 4.1.2 commander: 9.5.0 - debug: 4.3.7(supports-color@8.1.1) + debug: 4.4.0(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -30833,23 +28500,7 @@ snapshots: web-streams-polyfill@4.0.0-beta.3: {} - web-vitals@4.2.3: {} - - webdriver@9.0.8: - dependencies: - '@types/node': 20.17.10 - '@types/ws': 8.5.13 - '@wdio/config': 9.0.8 - '@wdio/logger': 9.0.8 - '@wdio/protocols': 9.0.8 - '@wdio/types': 9.0.8 - '@wdio/utils': 9.0.8 - deepmerge-ts: 7.1.3 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate + web-vitals@4.2.4: {} webdriver@9.4.3: dependencies: @@ -30868,42 +28519,6 @@ snapshots: - supports-color - utf-8-validate - webdriverio@9.0.9(puppeteer-core@23.4.1): - dependencies: - '@types/node': 20.17.10 - '@types/sinonjs__fake-timers': 8.1.5 - '@wdio/config': 9.0.8 - '@wdio/logger': 9.0.8 - '@wdio/protocols': 9.0.8 - '@wdio/repl': 9.0.8 - '@wdio/types': 9.0.8 - '@wdio/utils': 9.0.8 - archiver: 7.0.1 - aria-query: 5.3.2 - cheerio: 1.0.0 - css-shorthand-properties: 1.1.2 - 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.8 - optionalDependencies: - puppeteer-core: 23.4.1 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - webdriverio@9.4.3(puppeteer-core@23.4.1): dependencies: '@types/node': 20.17.10 @@ -30964,16 +28579,16 @@ snapshots: - bufferutil - utf-8-validate - webpack-dev-middleware@5.3.4(webpack@5.94.0(@swc/core@1.7.26)): + webpack-dev-middleware@5.3.4(webpack@5.97.1(@swc/core@1.10.1)): dependencies: colorette: 2.0.20 memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 - schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.7.26) + schema-utils: 4.3.0 + webpack: 5.97.1(@swc/core@1.10.1) - webpack-dev-server@4.15.2(webpack@5.94.0(@swc/core@1.7.26)): + webpack-dev-server@4.15.2(webpack@5.97.1(@swc/core@1.10.1)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -30983,30 +28598,30 @@ snapshots: '@types/sockjs': 0.3.36 '@types/ws': 8.5.13 ansi-html-community: 0.0.8 - bonjour-service: 1.2.1 + bonjour-service: 1.3.0 chokidar: 3.6.0 colorette: 2.0.20 - compression: 1.7.4 + compression: 1.7.5 connect-history-api-fallback: 2.0.0 default-gateway: 6.0.3 - express: 4.21.0 + express: 4.21.2 graceful-fs: 4.2.11 html-entities: 2.5.2 - http-proxy-middleware: 2.0.6(@types/express@4.17.21) + http-proxy-middleware: 2.0.7(@types/express@4.17.21) ipaddr.js: 2.2.0 launch-editor: 2.9.1 open: 8.4.2 p-retry: 4.6.2 rimraf: 3.0.2 - schema-utils: 4.2.0 + schema-utils: 4.3.0 selfsigned: 2.4.1 serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.4(webpack@5.94.0(@swc/core@1.7.26)) + webpack-dev-middleware: 5.3.4(webpack@5.97.1(@swc/core@1.10.1)) ws: 8.18.0 optionalDependencies: - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) transitivePeerDependencies: - bufferutil - debug @@ -31019,20 +28634,26 @@ snapshots: flat: 5.0.2 wildcard: 2.0.1 + webpack-merge@6.0.1: + dependencies: + clone-deep: 4.0.1 + flat: 5.0.2 + wildcard: 2.0.1 + webpack-sources@3.2.3: {} webpack-virtual-modules@0.6.2: optional: true - webpack@5.94.0(@swc/core@1.7.26): + webpack@5.97.1(@swc/core@1.10.1): dependencies: + '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.6 - '@webassemblyjs/ast': 1.12.1 - '@webassemblyjs/wasm-edit': 1.12.1 - '@webassemblyjs/wasm-parser': 1.12.1 + '@webassemblyjs/ast': 1.14.1 + '@webassemblyjs/wasm-edit': 1.14.1 + '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.14.0 - acorn-import-attributes: 1.9.5(acorn@8.14.0) - browserslist: 4.23.3 + browserslist: 4.24.3 chrome-trace-event: 1.0.4 enhanced-resolve: 5.17.1 es-module-lexer: 1.5.4 @@ -31046,7 +28667,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.7.26)(webpack@5.94.0(@swc/core@1.7.26)) + terser-webpack-plugin: 5.3.11(@swc/core@1.10.1)(webpack@5.97.1(@swc/core@1.10.1)) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -31054,13 +28675,17 @@ snapshots: - esbuild - uglify-js - webpackbar@5.0.2(webpack@5.94.0(@swc/core@1.7.26)): + webpackbar@6.0.1(webpack@5.97.1(@swc/core@1.10.1)): dependencies: + ansi-escapes: 4.3.2 chalk: 4.1.2 - consola: 2.15.3 + consola: 3.2.3 + figures: 3.2.0 + markdown-table: 2.0.0 pretty-time: 1.1.0 std-env: 3.8.0 - webpack: 5.94.0(@swc/core@1.7.26) + webpack: 5.97.1(@swc/core@1.10.1) + wrap-ansi: 7.0.0 websocket-driver@0.7.4: dependencies: @@ -31076,7 +28701,7 @@ snapshots: whatwg-mimetype@4.0.0: {} - whatwg-url@14.0.0: + whatwg-url@14.1.0: dependencies: tr46: 5.0.0 webidl-conversions: 7.0.0 @@ -31092,27 +28717,44 @@ snapshots: tr46: 1.0.1 webidl-conversions: 4.0.2 - which-boxed-primitive@1.0.2: + which-boxed-primitive@1.1.1: dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 + is-bigint: 1.1.0 + is-boolean-object: 1.2.1 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.3 + function.prototype.name: 1.1.7 + has-tostringtag: 1.0.2 + is-async-function: 2.0.0 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.0.10 + is-regex: 1.2.1 + is-weakref: 1.1.0 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.18 which-collection@1.0.2: dependencies: is-map: 2.0.3 is-set: 2.0.3 is-weakmap: 2.0.2 - is-weakset: 2.0.3 + is-weakset: 2.0.4 - which-typed-array@1.1.15: + which-typed-array@1.1.18: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 for-each: 0.3.3 - gopd: 1.0.1 + gopd: 1.2.0 has-tostringtag: 1.0.2 which@1.3.1: @@ -31154,9 +28796,9 @@ snapshots: wildcard@2.0.1: {} - winston-transport@4.7.1: + winston-transport@4.9.0: dependencies: - logform: 2.6.1 + logform: 2.7.0 readable-stream: 3.6.2 triple-beam: 1.4.1 @@ -31164,23 +28806,23 @@ snapshots: wordwrap@1.0.0: {} - workbox-background-sync@7.1.0: + workbox-background-sync@7.3.0: dependencies: idb: 7.1.1 - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-broadcast-update@7.1.0: + workbox-broadcast-update@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-build@7.1.1(@types/babel__core@7.20.5): + workbox-build@7.3.0(@types/babel__core@7.20.5): dependencies: '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1) - '@babel/core': 7.25.8 - '@babel/preset-env': 7.25.4(@babel/core@7.25.8) - '@babel/runtime': 7.25.6 - '@rollup/plugin-babel': 5.3.1(@babel/core@7.25.8)(@types/babel__core@7.20.5)(rollup@2.79.2) - '@rollup/plugin-node-resolve': 15.2.3(rollup@2.79.2) + '@babel/core': 7.26.0 + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + '@babel/runtime': 7.26.0 + '@rollup/plugin-babel': 5.3.1(@babel/core@7.26.0)(@types/babel__core@7.20.5)(rollup@2.79.2) + '@rollup/plugin-node-resolve': 15.3.1(rollup@2.79.2) '@rollup/plugin-replace': 2.4.2(rollup@2.79.2) '@rollup/plugin-terser': 0.4.4(rollup@2.79.2) '@surma/rollup-plugin-off-main-thread': 2.2.3 @@ -31197,85 +28839,85 @@ snapshots: strip-comments: 2.0.1 tempy: 0.6.0 upath: 1.2.0 - workbox-background-sync: 7.1.0 - workbox-broadcast-update: 7.1.0 - workbox-cacheable-response: 7.1.0 - workbox-core: 7.1.0 - workbox-expiration: 7.1.0 - workbox-google-analytics: 7.1.0 - workbox-navigation-preload: 7.1.0 - workbox-precaching: 7.1.0 - workbox-range-requests: 7.1.0 - workbox-recipes: 7.1.0 - workbox-routing: 7.1.0 - workbox-strategies: 7.1.0 - workbox-streams: 7.1.0 - workbox-sw: 7.1.0 - workbox-window: 7.1.0 + workbox-background-sync: 7.3.0 + workbox-broadcast-update: 7.3.0 + workbox-cacheable-response: 7.3.0 + workbox-core: 7.3.0 + workbox-expiration: 7.3.0 + workbox-google-analytics: 7.3.0 + workbox-navigation-preload: 7.3.0 + workbox-precaching: 7.3.0 + workbox-range-requests: 7.3.0 + workbox-recipes: 7.3.0 + workbox-routing: 7.3.0 + workbox-strategies: 7.3.0 + workbox-streams: 7.3.0 + workbox-sw: 7.3.0 + workbox-window: 7.3.0 transitivePeerDependencies: - '@types/babel__core' - supports-color - workbox-cacheable-response@7.1.0: + workbox-cacheable-response@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-core@7.1.0: {} + workbox-core@7.3.0: {} - workbox-expiration@7.1.0: + workbox-expiration@7.3.0: dependencies: idb: 7.1.1 - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-google-analytics@7.1.0: + workbox-google-analytics@7.3.0: dependencies: - workbox-background-sync: 7.1.0 - workbox-core: 7.1.0 - workbox-routing: 7.1.0 - workbox-strategies: 7.1.0 + workbox-background-sync: 7.3.0 + workbox-core: 7.3.0 + workbox-routing: 7.3.0 + workbox-strategies: 7.3.0 - workbox-navigation-preload@7.1.0: + workbox-navigation-preload@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-precaching@7.1.0: + workbox-precaching@7.3.0: dependencies: - workbox-core: 7.1.0 - workbox-routing: 7.1.0 - workbox-strategies: 7.1.0 + workbox-core: 7.3.0 + workbox-routing: 7.3.0 + workbox-strategies: 7.3.0 - workbox-range-requests@7.1.0: + workbox-range-requests@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-recipes@7.1.0: + workbox-recipes@7.3.0: dependencies: - workbox-cacheable-response: 7.1.0 - workbox-core: 7.1.0 - workbox-expiration: 7.1.0 - workbox-precaching: 7.1.0 - workbox-routing: 7.1.0 - workbox-strategies: 7.1.0 + workbox-cacheable-response: 7.3.0 + workbox-core: 7.3.0 + workbox-expiration: 7.3.0 + workbox-precaching: 7.3.0 + workbox-routing: 7.3.0 + workbox-strategies: 7.3.0 - workbox-routing@7.1.0: + workbox-routing@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-strategies@7.1.0: + workbox-strategies@7.3.0: dependencies: - workbox-core: 7.1.0 + workbox-core: 7.3.0 - workbox-streams@7.1.0: + workbox-streams@7.3.0: dependencies: - workbox-core: 7.1.0 - workbox-routing: 7.1.0 + workbox-core: 7.3.0 + workbox-routing: 7.3.0 - workbox-sw@7.1.0: {} + workbox-sw@7.3.0: {} - workbox-window@7.1.0: + workbox-window@7.3.0: dependencies: '@types/trusted-types': 2.0.7 - workbox-core: 7.1.0 + workbox-core: 7.3.0 workerpool@6.5.1: {} @@ -31367,7 +29009,7 @@ snapshots: yaml@1.10.2: {} - yaml@2.5.1: {} + yaml@2.6.1: {} yargs-parser@20.2.9: {} @@ -31405,7 +29047,7 @@ snapshots: buffer-crc32: 0.2.13 fd-slicer: 1.1.0 - yauzl@3.1.3: + yauzl@3.2.0: dependencies: buffer-crc32: 0.2.13 pend: 1.2.0 diff --git a/scripts/backport.ts b/scripts/backport.ts index 0f6d9532a..05f710b9e 100755 --- a/scripts/backport.ts +++ b/scripts/backport.ts @@ -1,6 +1,6 @@ #!/usr/bin/env node -import Octokit from '@octokit/rest' +import { Octokit } from '@octokit/rest' import inquirer from 'inquirer' import shell from 'shelljs' @@ -28,24 +28,23 @@ if (branch.trim() !== maintenanceLTSVersion) { ) } -function getPrompt (pr) { +function getPrompt (pr: { title: string, user: { login: string } | null, html_url: string }) { return [{ name: 'toBackport', type: 'confirm', default: true, - message: `You want to backport "${pr.title}" by ${pr.user.login}?\n(See PR ${pr.html_url})` + message: `You want to backport "${pr.title}" by ${pr.user?.login || 'unknown user'}?\n(See PR ${pr.html_url})` }, { name: 'exit', type: 'confirm', default: false, message: 'Exit process?', - when: ({ toBackport }) => !toBackport + when: ({ toBackport }: { toBackport: boolean }) => !toBackport }] } const api = new Octokit({ auth: process.env.GITHUB_AUTH }) -/* eslint-disable no-console */ ;(async () => { let backportedPRs = 0 @@ -69,7 +68,8 @@ const api = new Octokit({ auth: process.env.GITHUB_AUTH }) } for (const prToBackport of prsToBackport) { - const { toBackport, exit } = await inquirer.prompt(getPrompt(prToBackport)) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const { toBackport, exit } = await inquirer.prompt(getPrompt(prToBackport) as any) if (exit) { return backportedPRs diff --git a/scripts/bidi/index.ts b/scripts/bidi/index.ts index 21d285b8c..892205aaa 100644 --- a/scripts/bidi/index.ts +++ b/scripts/bidi/index.ts @@ -33,7 +33,7 @@ const [astLocal, astRemote] = await Promise.all(cddlTypes.map(async (type) => { try { ast = parseCDDL(path.join(__dirname, 'cddl', `${type}.cddl`)) - } catch (err: unknown) { + } catch (err) { console.log(util.format(CDDL_PARSE_ERROR_MESSAGE, `Failed to parse ${type}.cddl: ${(err as Error).stack}`)) process.exit(0) } diff --git a/scripts/changelog.ts b/scripts/changelog.ts index 3929716e1..47ac4c349 100755 --- a/scripts/changelog.ts +++ b/scripts/changelog.ts @@ -55,7 +55,6 @@ const api = new Octokit({ auth: process.env.GITHUB_AUTH }) * as parameter into `createMarkdown` and set the version from which * a release was made (the older version). */ -// eslint-disable-next-line no-console console.log('Start generating changelog...') changelog.createMarkdown({ tagFrom: `${latestRelease}` }).then((newChangelog) => { const changes = newChangelog.slice(newChangelog.indexOf('(')) @@ -82,9 +81,7 @@ changelog.createMarkdown({ tagFrom: `${latestRelease}` }).then((newChangelog) => } }) - // eslint-disable-next-line no-console console.log(BANNER) - // eslint-disable-next-line no-console console.log(highlighted, '\n\n') return newChangelog }, (err) => { diff --git a/scripts/docs-generation/3rdPartyDocs.ts b/scripts/docs-generation/3rdPartyDocs.ts index 6fcfb54e4..9a65f9e22 100644 --- a/scripts/docs-generation/3rdPartyDocs.ts +++ b/scripts/docs-generation/3rdPartyDocs.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import fs from 'node:fs/promises' import url from 'node:url' import path from 'node:path' @@ -97,7 +98,6 @@ export async function generate3rdPartyDocs (sidebars: any) { return } - // eslint-disable-next-line no-console console.log(`Generated docs for ${packageName}`) items.push(category === 'api' ? `${category}/${id}` : id) } diff --git a/scripts/docs-generation/eventDocs.ts b/scripts/docs-generation/eventDocs.ts index 73069529b..76eabaa36 100644 --- a/scripts/docs-generation/eventDocs.ts +++ b/scripts/docs-generation/eventDocs.ts @@ -4,17 +4,26 @@ import url from 'node:url' const __dirname = path.dirname(url.fileURLToPath(import.meta.url)) +interface Event { + id: string + time: string + title: string + image: string + description: string + signup: boolean +} + export async function generateEventDocs () { const eventsDir = path.resolve(__dirname, '..', '..', 'website', 'community', 'events') await fs.mkdir(eventsDir, { recursive: true }) const res = await fetch('https://events.webdriver.io/api/events') - const events = await res.json() + const events = await res.json() as Event[] const sidebarPath = path.join(__dirname, '..', '..', 'website', 'events.json') const sidebarContent = events - .filter((event: any) => new Date(event.time) > new Date()) - .map((event: any) => event.id) + .filter((event) => new Date(event.time) > new Date()) + .map((event) => event.id) await fs.writeFile( sidebarPath, @@ -22,7 +31,7 @@ export async function generateEventDocs () { 'utf-8' ) - return Promise.all(events.map(async (event: any) => { + return Promise.all(events.map(async (event) => { console.log(`Generate Event Docs for ${event.id}`) const date = new Date(event.time) const content = `--- diff --git a/scripts/docs-generation/generateDocs.ts b/scripts/docs-generation/generateDocs.ts index 6cde39639..7f252251d 100755 --- a/scripts/docs-generation/generateDocs.ts +++ b/scripts/docs-generation/generateDocs.ts @@ -22,7 +22,7 @@ ${title} //////////////////////////////////////////////////`) } -function writeSidebars(sidebars: any) { +function writeSidebars(sidebars: unknown) { fs.writeFileSync( path.join(__dirname, '..', '..', 'website', 'sidebars.json'), JSON.stringify(sidebars, null, 2), @@ -52,10 +52,8 @@ try { writeSidebars(sidebars) - // eslint-disable-next-line no-console console.log('=== Docs generated successfully! ===') } catch (err) { - // eslint-disable-next-line no-console console.error(err) process.exit(1) } diff --git a/scripts/docs-generation/packagesDocs.ts b/scripts/docs-generation/packagesDocs.ts index 3929052da..004d1d2b7 100644 --- a/scripts/docs-generation/packagesDocs.ts +++ b/scripts/docs-generation/packagesDocs.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import fs from 'node:fs' import url from 'node:url' import path from 'node:path' @@ -31,7 +32,6 @@ export function generateReportersAndServicesDocs (sidebars: any) { const doc = [...preface, ...readme.split('\n').slice(3)].join('\n') fs.writeFileSync(path.join(__dirname, '..', '..', 'website', 'docs', `_${id}.md`), doc, { encoding: 'utf-8' }) - // eslint-disable-next-line no-console console.log(`Generated docs for ${pkg}`) items.push(id) } diff --git a/scripts/docs-generation/protocolDocs.ts b/scripts/docs-generation/protocolDocs.ts index 19e219b60..ceff9c65a 100644 --- a/scripts/docs-generation/protocolDocs.ts +++ b/scripts/docs-generation/protocolDocs.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import fs from 'node:fs' import path from 'node:path' import url from 'node:url' @@ -40,7 +41,7 @@ export function generateProtocolDocs (sidebars: any) { } for (const [protocolName, definition] of Object.entries(PROTOCOLS)) { - const protocol = PROTOCOL_NAMES[protocolName as any as keyof typeof PROTOCOL_NAMES] as string + const protocol = PROTOCOL_NAMES[protocolName as unknown as keyof typeof PROTOCOL_NAMES] as string for (const [, methods] of Object.entries(definition)) { for (const [, description] of Object.entries(methods) as any) { @@ -107,7 +108,6 @@ export function generateProtocolDocs (sidebars: any) { const [preemble, ...apiDocs] = protocolDocs[protocolName] fs.writeFileSync(docPath, preemble + apiDocs.join('\n---\n'), { encoding: 'utf-8' }) - // eslint-disable-next-line no-console console.log(`Generated docs for ${protocolName} protocol`) protocolDocEntry.items.push(`${category}/${protocolName}`) diff --git a/scripts/docs-generation/wdioDocs.ts b/scripts/docs-generation/wdioDocs.ts index f3bfc32cb..348b0ad96 100644 --- a/scripts/docs-generation/wdioDocs.ts +++ b/scripts/docs-generation/wdioDocs.ts @@ -1,7 +1,8 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import fs from 'node:fs' import url from 'node:url' import path from 'node:path' -// @ts-expect-error +// @ts-expect-error no type definition import dox from 'dox' import { Eta } from 'eta' import type { NavbarItem } from '../../website/node_modules/@docusaurus/theme-common/lib/index.js' diff --git a/scripts/updateDocs.ts b/scripts/updateDocs.ts index 121537373..a32c8b379 100755 --- a/scripts/updateDocs.ts +++ b/scripts/updateDocs.ts @@ -23,10 +23,9 @@ const BUILD_DIR = path.resolve(__dirname, '..', 'website', 'build') const UPLOAD_OPTIONS = { partSize: 10 * 1024 * 1024, queueSize: 1 } const IGNORE_FILE_SUFFIX = ['*.rb'] -/* eslint-disable no-console */ const timestamp = Date.now() const s3 = new S3({ region }) -const files = await readDir(BUILD_DIR, IGNORE_FILE_SUFFIX) +const files: string[] = await readDir(BUILD_DIR, IGNORE_FILE_SUFFIX) const version = `v${PKG_VERSION.split('.')[0]}` const bucketName = version === PRODUCTION_VERSION ? BUCKET_NAME : `${version}.${BUCKET_NAME}` @@ -100,4 +99,3 @@ await Promise.all(objectsToDelete.map((obj) => ( ))) console.log('Deleted obsolete items successfully') console.log('Successfully updated webdriver.io docs') -/* eslint-enable no-console */ diff --git a/scripts/utils/formatter.ts b/scripts/utils/formatter.ts index 7acf0b3ad..0d1e24623 100644 --- a/scripts/utils/formatter.ts +++ b/scripts/utils/formatter.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ import path from 'node:path' interface TagType { @@ -109,7 +110,6 @@ export default function (docfile: any) { let currentLine = 0 if (example && example[0]) { - // eslint-disable-next-line no-console console.log('parse example section for', docfile.filename) example = example[0].replace(/<(\/)*example>/g, '').split(/\n/g) diff --git a/scripts/utils/index.ts b/scripts/utils/index.ts index b551ef57b..cb9544fb0 100644 --- a/scripts/utils/index.ts +++ b/scripts/utils/index.ts @@ -10,7 +10,6 @@ const githubRawHost = 'https://raw.githubusercontent.com/' */ export async function downloadFromGitHub(githubUrl: string, branch: string, location = githubReadme) { const url = `${githubUrl}/${branch}/${location}`.replace(githubHost, githubRawHost) - // eslint-disable-next-line no-console console.log(`Downloading: ${url}`) const res = await fetch(url) return await res.text() diff --git a/tests/.eslintrc b/tests/.eslintrc deleted file mode 100644 index 11af21c74..000000000 --- a/tests/.eslintrc +++ /dev/null @@ -1,10 +0,0 @@ -{ - env: { - mocha: true, - jasmine: true - }, - globals: { - browser: true, - $: true - } -} diff --git a/tests/mocha/test.ts b/tests/mocha/test.ts index 6a205494b..bc59e9301 100644 --- a/tests/mocha/test.ts +++ b/tests/mocha/test.ts @@ -129,7 +129,7 @@ describe('Mocha smoke test', () => { await elem.click() return false }, { timeout: 1000 }) - } catch (err) { + } catch { // ignored } assert.equal(JSON.stringify(await elem.getSize()), JSON.stringify({ width: 1, height: 2 })) diff --git a/tests/reporter/memory.ts b/tests/reporter/memory.ts index 9d0d44292..39ba71757 100644 --- a/tests/reporter/memory.ts +++ b/tests/reporter/memory.ts @@ -32,10 +32,8 @@ describe('`execute` memory leak check', () => { heapUsage = getHeapUsageMiB() log.debug(`[${i.toString().padStart(2, '0')}] Heap usage ${heapUsage.toFixed(2)} MiB`) } - // @ts-ignore nock retains all timers even after they're finished, leading to a conflicting memory leak nockReset() - // @ts-expect-error gc is exposed - globalThis.gc() + globalThis.gc?.() const finalHeapUsage = getHeapUsageMiB() log.debug(`Final heap usage ${finalHeapUsage.toFixed(2)} MiB (${heapSnapshot()})`) // 5% for variability / v8 internals + script size once due to nock interceptor leaking the last request+response (despite nockReset) diff --git a/tests/smoke.runner.js b/tests/smoke.runner.js index 7d5d1b539..2e3d711db 100644 --- a/tests/smoke.runner.js +++ b/tests/smoke.runner.js @@ -1030,7 +1030,6 @@ const jasmineAfterHookArgsValidation = async () => { console.log('\nAll smoke tests passed!\n') process.exit(0) })().catch((e) => { - // eslint-disable-next-line no-console console.log(e.stack) process.exit(1) diff --git a/tests/tests-cli-exclude-arg/wdio.conf.js b/tests/tests-cli-exclude-arg/wdio.conf.js index bf91d0b92..49c56f817 100644 --- a/tests/tests-cli-exclude-arg/wdio.conf.js +++ b/tests/tests-cli-exclude-arg/wdio.conf.js @@ -41,11 +41,9 @@ export const config = { * hooks */ onPrepare: function() { - // eslint-disable-next-line console.log('let\'s go') }, onComplete: function() { - // eslint-disable-next-line console.log('that\'s it') } } diff --git a/tests/tests-cli-exclude-arg/wdio.with-exclude-prop.conf.js b/tests/tests-cli-exclude-arg/wdio.with-exclude-prop.conf.js index 7290f6c44..625a918ef 100644 --- a/tests/tests-cli-exclude-arg/wdio.with-exclude-prop.conf.js +++ b/tests/tests-cli-exclude-arg/wdio.with-exclude-prop.conf.js @@ -45,11 +45,9 @@ export const config = { * hooks */ onPrepare: function() { - // eslint-disable-next-line console.log('let\'s go') }, onComplete: function() { - // eslint-disable-next-line console.log('that\'s it') } } diff --git a/tests/typings/webdriverio/async.ts b/tests/typings/webdriverio/async.ts index 679a53331..958686750 100644 --- a/tests/typings/webdriverio/async.ts +++ b/tests/typings/webdriverio/async.ts @@ -361,18 +361,18 @@ async function bar() { const reactWrapper = await browser.react$('') const reactWrapperWithOptions = await browser.react$('', { props: {}, - state: true + state: { someValue: true } }) const reactElement = await reactWrapper.react$('') const reactElementWithOptions = await reactWrapper.react$('', { props: {}, - state: true + state: { someValue: true } }) await reactElement.click() const reactElements = await reactWrapper.react$$('') const reactElementsWithOptions = await reactWrapper.react$$('', { props: {}, - state: true + state: { someValue: true } }) await reactElements[0].click()