diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index a7ba841f04..7bda4671fe 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -66,9 +66,6 @@ jobs: run: yarn test:types - name: Run unit tests run: yarn test:ci - # TODO [#4815]: enable all SSR v2 tests - - name: Run experimental SSR fixture tests - run: TEST_SSR_COMPILER=1 yarn test packages/@lwc/ssr-compiler/src/__tests__/fixtures.spec.ts - name: Upload unit test coverage report uses: actions/upload-artifact@v4 with: diff --git a/eslint.config.mjs b/eslint.config.mjs index ee53dd3eea..62a8942fe8 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -48,14 +48,7 @@ export default tseslint.config( }, parserOptions: { - projectService: { - allowDefaultProject: [ - // I'm not sure why these files aren't picked up... :\ - 'packages/@lwc/module-resolver/scripts/test/matchers/to-throw-error-with-code.ts', - 'packages/@lwc/module-resolver/scripts/test/matchers/to-throw-error-with-type.ts', - 'packages/@lwc/module-resolver/scripts/test/setup-test.ts', - ], - }, + projectService: {}, }, }, diff --git a/package.json b/package.json index 720a13f95e..0f54f3b62a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lwc-monorepo", - "version": "8.12.6", + "version": "8.12.7", "private": true, "description": "Lightning Web Components", "repository": { @@ -35,26 +35,26 @@ }, "devDependencies": { "@commitlint/cli": "^19.6.1", - "@eslint/js": "9.18.0", + "@eslint/js": "9.19.0", "@lwc/eslint-plugin-lwc-internal": "link:./scripts/eslint-plugin", "@lwc/test-utils-lwc-internals": "link:./scripts/test-utils", - "@nx/js": "20.3.2", + "@nx/js": "20.3.3", "@rollup/plugin-commonjs": "^28.0.2", "@rollup/plugin-inject": "^5.0.5", "@rollup/plugin-node-resolve": "^16.0.0", "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-typescript": "^12.1.2", "@swc-node/register": "~1.10.9", - "@swc/core": "~1.10.8", + "@swc/core": "~1.10.11", "@swc/helpers": "~0.5.15", "@types/babel__core": "^7.20.5", - "@types/node": "^22.10.7", - "@vitest/coverage-v8": "^3.0.3", + "@types/node": "^22.10.10", + "@vitest/coverage-v8": "^3.0.4", "@vitest/eslint-plugin": "^1.1.25", - "@vitest/ui": "^3.0.3", + "@vitest/ui": "^3.0.4", "bytes": "^3.1.2", "es-module-lexer": "^1.6.0", - "eslint": "9.18.0", + "eslint": "9.19.0", "eslint-config-flat-gitignore": "^1.0.0", "eslint-plugin-header": "^3.1.1", "eslint-plugin-import": "^2.31.0", @@ -63,16 +63,16 @@ "husky": "^9.1.7", "isbinaryfile": "^5.0.4", "jsdom": "^26.0.0", - "lint-staged": "^15.4.1", + "lint-staged": "^15.4.3", "magic-string": "^0.30.17", - "nx": "20.3.2", + "nx": "20.3.3", "prettier": "^3.4.2", - "rollup": "^4.31.0", + "rollup": "^4.32.0", "terser": "^5.37.0", "tslib": "^2.8.1", - "typescript": "5.4.5", - "typescript-eslint": "8.20.0", - "vitest": "^3.0.3" + "typescript": "5.7.3", + "typescript-eslint": "8.21.0", + "vitest": "^3.0.4" }, "lint-staged": { "*.{js,mjs,ts}": "eslint --cache", diff --git a/packages/@lwc/aria-reflection/package.json b/packages/@lwc/aria-reflection/package.json index ee0debe575..82e1b99d20 100644 --- a/packages/@lwc/aria-reflection/package.json +++ b/packages/@lwc/aria-reflection/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/aria-reflection", - "version": "8.12.6", + "version": "8.12.7", "description": "ARIA element reflection polyfill for strings", "keywords": [ "aom", diff --git a/packages/@lwc/babel-plugin-component/package.json b/packages/@lwc/babel-plugin-component/package.json index d03a83fad6..ce2118b4e9 100644 --- a/packages/@lwc/babel-plugin-component/package.json +++ b/packages/@lwc/babel-plugin-component/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/babel-plugin-component", - "version": "8.12.6", + "version": "8.12.7", "description": "Babel plugin to transform a LWC module", "keywords": [ "lwc" @@ -47,8 +47,8 @@ }, "dependencies": { "@babel/helper-module-imports": "7.25.9", - "@lwc/errors": "8.12.6", - "@lwc/shared": "8.12.6", + "@lwc/errors": "8.12.7", + "@lwc/shared": "8.12.7", "line-column": "~1.0.2" }, "devDependencies": { diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-function-identifier-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/adapter-member-expression-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-function-identifier-as-first-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-field/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-a-member-expression/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/basic-method/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-method/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-ignores-spread/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-imported-values-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-multiple-dynamic-params-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-accepts-an-optional-config-object-as-second-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-not-provided-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-object-method/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-numeric-keys-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/ignores-spread-element/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-string-literal-keys-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/should-not-throw-when-using-2-separate-wired-decorators/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorating-multiple-props-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-multiple-dynamic-params/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-alone-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-named-imports-from-static-imports/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-getter-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-numeric-props/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-alone-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-object-properties-as-string-literal/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-on-setter-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-2-levels-deep--foo.bar/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-2-levels-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-parameters-with-multiple-levels-deep/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-deep-chain-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-field/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-when-param-definition-has-empty-segment/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-empty-segment-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/transforms-wired-method/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/config-function-should-use-bracket-notation-for-param-when-its-definition-has-invalid-identifier-as-segment/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/reactive-string-with-non-identifier-works/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-2-wires/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-computed-prop/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-a-function-identifier-as-first-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-function-expression/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-imported-identifier-as-first-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-local-var/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-nested-member-expression/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-to-be-imported/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-computed-props/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-adapter-undeclared-var/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-an-object-as-second-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-rejects-nested-member-expression/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-config-not-object/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/decorator-expects-wire-adapter-as-first-parameter/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-using-2-wired-decorators/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-decorator-no-args/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-method-is-combined-with-@api/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-method-with-@api/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@api/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@api/expected.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/actual.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/actual.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/actual.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/actual.js diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/error.json b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/error.json similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/error.json rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/error.json diff --git a/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/expected.js b/packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/expected.js similarity index 100% rename from packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-when-wired-property-is-combined-with-@track/expected.js rename to packages/@lwc/babel-plugin-component/src/__tests__/fixtures/wire-decorator/throws-on-wired-prop-with-@track/expected.js diff --git a/packages/@lwc/compiler/package.json b/packages/@lwc/compiler/package.json index 5699e1d0c4..52539151a3 100644 --- a/packages/@lwc/compiler/package.json +++ b/packages/@lwc/compiler/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/compiler", - "version": "8.12.6", + "version": "8.12.7", "description": "LWC compiler", "keywords": [ "lwc" @@ -46,17 +46,17 @@ } }, "dependencies": { - "@babel/core": "7.26.0", + "@babel/core": "7.26.7", "@babel/plugin-transform-async-generator-functions": "7.25.9", "@babel/plugin-transform-async-to-generator": "7.25.9", "@babel/plugin-transform-class-properties": "7.25.9", "@babel/plugin-transform-object-rest-spread": "7.25.9", "@locker/babel-plugin-transform-unforgeables": "0.22.0", - "@lwc/babel-plugin-component": "8.12.6", - "@lwc/errors": "8.12.6", - "@lwc/shared": "8.12.6", - "@lwc/ssr-compiler": "8.12.6", - "@lwc/style-compiler": "8.12.6", - "@lwc/template-compiler": "8.12.6" + "@lwc/babel-plugin-component": "8.12.7", + "@lwc/errors": "8.12.7", + "@lwc/shared": "8.12.7", + "@lwc/ssr-compiler": "8.12.7", + "@lwc/style-compiler": "8.12.7", + "@lwc/template-compiler": "8.12.7" } } diff --git a/packages/@lwc/engine-core/package.json b/packages/@lwc/engine-core/package.json index 23ec822f13..9b667d9c07 100644 --- a/packages/@lwc/engine-core/package.json +++ b/packages/@lwc/engine-core/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/engine-core", - "version": "8.12.6", + "version": "8.12.7", "description": "Core LWC engine APIs.", "keywords": [ "lwc" @@ -46,9 +46,9 @@ } }, "dependencies": { - "@lwc/features": "8.12.6", - "@lwc/shared": "8.12.6", - "@lwc/signals": "8.12.6" + "@lwc/features": "8.12.7", + "@lwc/shared": "8.12.7", + "@lwc/signals": "8.12.7" }, "devDependencies": { "observable-membrane": "2.0.0" diff --git a/packages/@lwc/engine-core/src/framework/decorators/wire.ts b/packages/@lwc/engine-core/src/framework/decorators/wire.ts index 7abb57b1f3..f737421427 100644 --- a/packages/@lwc/engine-core/src/framework/decorators/wire.ts +++ b/packages/@lwc/engine-core/src/framework/decorators/wire.ts @@ -65,7 +65,15 @@ export default function wire< Class = LightningElement, >( // eslint-disable-next-line @typescript-eslint/no-unused-vars - adapter: WireAdapterConstructor, Value, Context>, + adapter: + | WireAdapterConstructor, Value, Context> + | { + adapter: WireAdapterConstructor< + ReplaceReactiveValues, + Value, + Context + >; + }, // eslint-disable-next-line @typescript-eslint/no-unused-vars config?: ReactiveConfig ): WireDecorator { diff --git a/packages/@lwc/engine-dom/package.json b/packages/@lwc/engine-dom/package.json index 1b1533f701..d5d1a662f6 100644 --- a/packages/@lwc/engine-dom/package.json +++ b/packages/@lwc/engine-dom/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/engine-dom", - "version": "8.12.6", + "version": "8.12.7", "description": "Renders LWC components in a DOM environment.", "keywords": [ "lwc" @@ -46,9 +46,9 @@ } }, "devDependencies": { - "@lwc/engine-core": "8.12.6", - "@lwc/shared": "8.12.6", - "@lwc/features": "8.12.6" + "@lwc/engine-core": "8.12.7", + "@lwc/shared": "8.12.7", + "@lwc/features": "8.12.7" }, "lwc": { "modules": [ diff --git a/packages/@lwc/engine-server/package.json b/packages/@lwc/engine-server/package.json index 6fdebe7582..080211cbdd 100644 --- a/packages/@lwc/engine-server/package.json +++ b/packages/@lwc/engine-server/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/engine-server", - "version": "8.12.6", + "version": "8.12.7", "description": "Renders LWC components in a server environment.", "keywords": [ "lwc" @@ -46,10 +46,10 @@ } }, "devDependencies": { - "@lwc/engine-core": "8.12.6", - "@lwc/rollup-plugin": "8.12.6", - "@lwc/shared": "8.12.6", - "@lwc/features": "8.12.6", + "@lwc/engine-core": "8.12.7", + "@lwc/rollup-plugin": "8.12.7", + "@lwc/shared": "8.12.7", + "@lwc/features": "8.12.7", "@rollup/plugin-virtual": "^3.0.2", "parse5": "^7.2.1" } diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures.spec.ts b/packages/@lwc/engine-server/src/__tests__/fixtures.spec.ts index 0889ac7a4a..b9a54d4eb8 100755 --- a/packages/@lwc/engine-server/src/__tests__/fixtures.spec.ts +++ b/packages/@lwc/engine-server/src/__tests__/fixtures.spec.ts @@ -11,6 +11,7 @@ import { rollup } from 'rollup'; import lwcRollupPlugin from '@lwc/rollup-plugin'; import { testFixtureDir, formatHTML } from '@lwc/test-utils-lwc-internals'; import { setFeatureFlagForTest } from '../index'; +import type { FeatureFlagName } from '@lwc/features/dist/types'; import type { RollupLwcOptions } from '@lwc/rollup-plugin'; import type * as lwc from '../index'; @@ -128,16 +129,17 @@ function testFixtures(options?: RollupLwcOptions) { // the LightningElement. Therefor the compiled module should also be evaluated in the // same sandbox registry as the engine. const lwcEngineServer = await import('../index'); - const module = (await import(compiledFixturePath)) as FixtureModule; - - const features = module!.features ?? []; - features.forEach((flag) => { - lwcEngineServer!.setFeatureFlagForTest(flag, true); - }); let result; let err; + let features: FeatureFlagName[] = []; try { + const module = (await import(compiledFixturePath)) as FixtureModule; + + features = module!.features ?? []; + features.forEach((flag) => { + lwcEngineServer!.setFeatureFlagForTest(flag, true); + }); result = formatHTML( lwcEngineServer!.renderComponent( module!.tagName, @@ -146,10 +148,10 @@ function testFixtures(options?: RollupLwcOptions) { ) ); } catch (_err: any) { - if (_err.name === 'AssertionError') { + if (_err?.name === 'AssertionError') { throw _err; } - err = _err.message; + err = _err?.message || 'An empty error occurred?!'; } features.forEach((flag) => { diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/error.txt similarity index 100% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/expected.html rename to packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/error.txt diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/expected.html new file mode 100644 index 0000000000..4b6d956f1a --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/expected.html @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/index.js new file mode 100644 index 0000000000..d5a55ceefa --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-parent'; +export { default } from 'x/parent'; +export * from 'x/parent'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.html new file mode 100755 index 0000000000..9a178c0e77 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.js new file mode 100755 index 0000000000..7c97dd51ea --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/child/child.js @@ -0,0 +1,12 @@ +import { LightningElement, api } from 'lwc'; + +export default class Child extends LightningElement { + set setterGetterApi(value) { + this._someApi = value; + } + + @api + get setterGetterApi() { + return this._someApi; + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.html new file mode 100755 index 0000000000..f096b285f5 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.html @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.js new file mode 100755 index 0000000000..e1d0ea7f96 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-getter/modules/x/parent/parent.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class Parent extends LightningElement { + setterGetterApiValue = 'setter getter api value'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/error.txt new file mode 100644 index 0000000000..ab90d18fb4 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/error.txt @@ -0,0 +1 @@ +LWC1112: @api get setterGetterApi and @api set setterGetterApi detected in class declaration. Only one of the two needs to be decorated with @api. \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/expected.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/index.js new file mode 100644 index 0000000000..d5a55ceefa --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-parent'; +export { default } from 'x/parent'; +export * from 'x/parent'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.html new file mode 100755 index 0000000000..9a178c0e77 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.js new file mode 100755 index 0000000000..608d8f4639 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/child/child.js @@ -0,0 +1,13 @@ +import { LightningElement, api } from 'lwc'; + +export default class Child extends LightningElement { + @api + set setterGetterApi(value) { + this._someApi = value; + } + + @api + get setterGetterApi() { + return this._someApi; + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.html new file mode 100755 index 0000000000..f096b285f5 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.html @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.js new file mode 100755 index 0000000000..e1d0ea7f96 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter-getter/modules/x/parent/parent.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class Parent extends LightningElement { + setterGetterApiValue = 'setter getter api value'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/expected.html new file mode 100644 index 0000000000..4b6d956f1a --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/expected.html @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/index.js new file mode 100644 index 0000000000..d5a55ceefa --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-parent'; +export { default } from 'x/parent'; +export * from 'x/parent'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.html new file mode 100755 index 0000000000..9a178c0e77 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.js new file mode 100755 index 0000000000..bb1cabad15 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/child/child.js @@ -0,0 +1,12 @@ +import { LightningElement, api } from 'lwc'; + +export default class Child extends LightningElement { + @api + set setterGetterApi(value) { + this._someApi = value; + } + + get setterGetterApi() { + return this._someApi; + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.html new file mode 100755 index 0000000000..f096b285f5 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.html @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.js new file mode 100755 index 0000000000..e1d0ea7f96 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/decorated-setter/modules/x/parent/parent.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class Parent extends LightningElement { + setterGetterApiValue = 'setter getter api value'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/expected.html new file mode 100644 index 0000000000..73ad529907 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/expected.html @@ -0,0 +1,14 @@ + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/index.js new file mode 100644 index 0000000000..d5a55ceefa --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-parent'; +export { default } from 'x/parent'; +export * from 'x/parent'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.html new file mode 100755 index 0000000000..c7953f5407 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.js new file mode 100755 index 0000000000..26d125ff03 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/child/child.js @@ -0,0 +1,5 @@ +import { LightningElement, api } from 'lwc'; + +export default class Child extends LightningElement { + @api fieldApi; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.html b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.html new file mode 100755 index 0000000000..2a68acdb59 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.html @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.js b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.js new file mode 100755 index 0000000000..2594cd2bed --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/api/property/modules/x/parent/parent.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class Parent extends LightningElement { + fieldApiValue = 'field api value'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/expected.html index 5e0db2fe74..a6d0a48fdf 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/expected.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/expected.html @@ -39,13 +39,6 @@
[object Object]
-
- function whoWouldDoThis() { - return 'somebody, probably!'; - } -
ooo eee, ooo ah ah, ting tang, walla walla, bing bang
diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.html b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.html index e1ef429add..59a7684a90 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.html @@ -12,7 +12,6 @@
{isSymbol}
{isArray}
{isObject}
-
{isFunction}
{isString}
{isNumber}
diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.js b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.js index 9c43516e2b..c4c512dc01 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.js +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/render-dynamic-value/modules/x/component/component.js @@ -14,9 +14,6 @@ export default class extends LightningElement { isSymbol = Symbol('yolo'); isArray = ['foo', 'bar']; isObject = { foo: 'bar', baz: 'quux' }; - isFunction = function whoWouldDoThis() { - return 'somebody, probably!'; - }; isString = 'ooo eee, ooo ah ah, ting tang, walla walla, bing bang'; isNumber = 6.02214076e23; } diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/reserved-keywords/modules/x/cmp/cmp.js b/packages/@lwc/engine-server/src/__tests__/fixtures/reserved-keywords/modules/x/cmp/cmp.js index 738e5d8707..80e30c3485 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/reserved-keywords/modules/x/cmp/cmp.js +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/reserved-keywords/modules/x/cmp/cmp.js @@ -1,7 +1,7 @@ import { LightningElement } from 'lwc'; -const privateFields = undefined; -const publicFields = undefined; +const privateProperties = undefined; +const publicProperties = undefined; const stylesheetScopeToken = undefined; const hasScopedStylesheets = undefined; const defaultScopedStylesheets = undefined; @@ -12,8 +12,8 @@ export default class extends LightningElement { Object.assign( {}, { - privateFields, - publicFields, + privateProperties, + publicProperties, stylesheetScopeToken, hasScopedStylesheets, defaultScopedStylesheets, diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/expected.html new file mode 100644 index 0000000000..63ea1759fe --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/expected.html @@ -0,0 +1,16 @@ + + + + + + Component content + + + + + Component content + + + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/index.js new file mode 100644 index 0000000000..b202a15a0a --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/index.js @@ -0,0 +1,4 @@ +export const tagName = 'x-dangling-container'; +export { default } from 'x/container'; +export * from 'x/container'; +export const features = []; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.html new file mode 100644 index 0000000000..17ad53e7e1 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/component/component.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.html new file mode 100644 index 0000000000..685193646f --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.html @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/container/container.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.html new file mode 100644 index 0000000000..dc9ac68111 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.html @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/leaf/leaf.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.html new file mode 100644 index 0000000000..963a3fceca --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.html @@ -0,0 +1,6 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling-component/modules/x/slot/slot.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/expected.html index aa23e8774b..adfb2329a5 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/expected.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/expected.html @@ -2,14 +2,14 @@ -

- bottom content +

+ top content

-

- top content -

+

+ bottom content +

diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/container/container.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/container/container.html index d6153f7e58..616c5495b8 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/container/container.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/container/container.html @@ -1,6 +1,6 @@ \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/leaf/leaf.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/leaf/leaf.html index 039365a7a7..dc9ac68111 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/leaf/leaf.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/leaf/leaf.html @@ -1,4 +1,4 @@ \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/slot/slot.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/slot/slot.html index e641874967..963a3fceca 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/slot/slot.html +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/modules/x/slot/slot.html @@ -1,6 +1,6 @@ \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/expected.html new file mode 100644 index 0000000000..ada6887b85 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/expected.html @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/index.js new file mode 100644 index 0000000000..17a015b5ea --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-outer'; +export { default } from 'x/outer'; +export * from 'x/outer'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/inner/inner.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/inner/inner.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/inner/inner.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.html new file mode 100644 index 0000000000..e6479b1b01 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.html @@ -0,0 +1,6 @@ + diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.js new file mode 100644 index 0000000000..0679d2bc10 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/light/modules/x/outer/outer.js @@ -0,0 +1,5 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement { + static renderMode = 'light'; +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/expected.html new file mode 100644 index 0000000000..bc3c9ecc25 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/expected.html @@ -0,0 +1,12 @@ + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/index.js new file mode 100644 index 0000000000..17a015b5ea --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-outer'; +export { default } from 'x/outer'; +export * from 'x/outer'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/inner/inner.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/inner/inner.js new file mode 100644 index 0000000000..ca8dce94e0 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/inner/inner.js @@ -0,0 +1,3 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement {} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.html b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.html new file mode 100644 index 0000000000..03c77e467f --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.html @@ -0,0 +1,6 @@ + diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.js b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.js new file mode 100644 index 0000000000..ca8dce94e0 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/slots-basic/implicit-no-template/shadow/modules/x/outer/outer.js @@ -0,0 +1,3 @@ +import { LightningElement } from 'lwc'; + +export default class extends LightningElement {} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/config.json b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/config.json new file mode 100644 index 0000000000..59676736cb --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/config.json @@ -0,0 +1,6 @@ +{ + "ssrFiles": { + "error": "error-ssr.txt", + "expected": "expected-ssr.html" + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/error-ssr.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/error-ssr.txt new file mode 100644 index 0000000000..79108e479b --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/error-ssr.txt @@ -0,0 +1 @@ +Unknown state: property definition has no key \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/error.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/expected-ssr.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/expected-ssr.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/expected.html new file mode 100644 index 0000000000..1c8de4df88 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/expected.html @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/index.js similarity index 100% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/index.js rename to packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/index.js diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/adapter.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/adapter.js new file mode 100644 index 0000000000..23bd99195c --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/adapter.js @@ -0,0 +1,13 @@ +export class adapter { + constructor(dataCallback) { + this.dc = dataCallback; + } + + connect() {} + + update(config) { + this.dc(config.value); + } + + disconnect() {} +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.html new file mode 100644 index 0000000000..d4a16e667d --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.html @@ -0,0 +1,4 @@ + diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.js new file mode 100644 index 0000000000..e9484092eb --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/computed-prop-updates-incorrectly/modules/x/wire/wire.js @@ -0,0 +1,14 @@ +import { LightningElement, wire } from 'lwc'; +import { adapter } from './adapter'; + +const symbol = Symbol("I'm a symbol!"); +export default class extends LightningElement { + symbol = 'accidentally overwritten'; + + @wire(adapter, { value: 'wire data' }) + [symbol] = 'unset'; + + get symbolValue() { + return this[symbol] ?? 'unset'; + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/config.json b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/config.json new file mode 100644 index 0000000000..59676736cb --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/config.json @@ -0,0 +1,6 @@ +{ + "ssrFiles": { + "error": "error-ssr.txt", + "expected": "expected-ssr.html" + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/error-ssr.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/error-ssr.txt new file mode 100644 index 0000000000..4c6804b7e9 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/error-ssr.txt @@ -0,0 +1 @@ +@wire cannot be used on computed properties in SSR context. \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/error.txt similarity index 100% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/error.txt rename to packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/error.txt diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/expected-ssr.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/expected-ssr.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/expected.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/index.js new file mode 100644 index 0000000000..fafb890973 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-wire'; +export { default } from 'x/wire'; +export * from 'x/wire'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/adapter.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/adapter.js similarity index 100% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/adapter.js rename to packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/adapter.js diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/wire.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/wire.html similarity index 100% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/wire.html rename to packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/wire.html diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/wire.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/wire.js similarity index 74% rename from packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/wire.js rename to packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/wire.js index 723fb3bb05..7f8f6bf4ac 100644 --- a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-key/modules/x/wire/wire.js +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-getter/modules/x/wire/wire.js @@ -8,11 +8,6 @@ export default class Wire extends LightningElement { throw new Error('getter should not be called'); } - @wire(adapter, { name: 'symbol' }) - set [sym](v) { - throw new Error('setter should not be called'); - } - get exposedSymbol() { return this[sym]; } diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/config.json b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/config.json new file mode 100644 index 0000000000..59676736cb --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/config.json @@ -0,0 +1,6 @@ +{ + "ssrFiles": { + "error": "error-ssr.txt", + "expected": "expected-ssr.html" + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error-ssr.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error-ssr.txt new file mode 100644 index 0000000000..87163d13b1 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error-ssr.txt @@ -0,0 +1 @@ +[7:13]: Unexpected token: '{' \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error.txt new file mode 100644 index 0000000000..9991fca2d0 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/error.txt @@ -0,0 +1 @@ +An empty error occurred?! \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/expected-ssr.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/expected-ssr.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/expected.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/index.js new file mode 100644 index 0000000000..fafb890973 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-wire'; +export { default } from 'x/wire'; +export * from 'x/wire'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/adapter.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/adapter.js new file mode 100644 index 0000000000..b212b22d3f --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/adapter.js @@ -0,0 +1,13 @@ +export class adapter { + constructor(dataCallback) { + this.dc = dataCallback; + } + + connect() {} + + update(config) { + this.dc(config.name); + } + + disconnect() {} +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.html new file mode 100644 index 0000000000..3981f33b93 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.js new file mode 100644 index 0000000000..aaf6cc3fde --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-method/modules/x/wire/wire.js @@ -0,0 +1,14 @@ +import { LightningElement, wire } from 'lwc'; +import { adapter } from './adapter'; +const sym = Symbol('computed prop'); + +export default class Wire extends LightningElement { + @wire(adapter, { name: 'symbol' }) + [sym]() { + return 'john was here'; + } + + get exposedSymbol() { + return this[sym](); + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/config.json b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/config.json new file mode 100644 index 0000000000..59676736cb --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/config.json @@ -0,0 +1,6 @@ +{ + "ssrFiles": { + "error": "error-ssr.txt", + "expected": "expected-ssr.html" + } +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error-ssr.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error-ssr.txt new file mode 100644 index 0000000000..4c6804b7e9 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error-ssr.txt @@ -0,0 +1 @@ +@wire cannot be used on computed properties in SSR context. \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error.txt b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error.txt new file mode 100644 index 0000000000..f7989ab39d --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/error.txt @@ -0,0 +1 @@ +setter should not be called \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/expected-ssr.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/expected-ssr.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/expected.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/expected.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/index.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/index.js new file mode 100644 index 0000000000..fafb890973 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/index.js @@ -0,0 +1,3 @@ +export const tagName = 'x-wire'; +export { default } from 'x/wire'; +export * from 'x/wire'; diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/adapter.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/adapter.js new file mode 100644 index 0000000000..b212b22d3f --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/adapter.js @@ -0,0 +1,13 @@ +export class adapter { + constructor(dataCallback) { + this.dc = dataCallback; + } + + connect() {} + + update(config) { + this.dc(config.name); + } + + disconnect() {} +} diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.html b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.html new file mode 100644 index 0000000000..3981f33b93 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.js b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.js new file mode 100644 index 0000000000..1d509fc723 --- /dev/null +++ b/packages/@lwc/engine-server/src/__tests__/fixtures/wire/errors/throws-on-computed-setter/modules/x/wire/wire.js @@ -0,0 +1,15 @@ +import { LightningElement, wire } from 'lwc'; +import { adapter } from './adapter'; +const sym = Symbol('computed prop'); + +export default class Wire extends LightningElement { + @wire(adapter, { name: 'symbol' }) + set [sym](_) { + throw new Error('setter should not be called'); + } + + get exposedSymbol() { + this[sym] = 123; + return 123; + } +} diff --git a/packages/@lwc/errors/package.json b/packages/@lwc/errors/package.json index 89931c227f..8b7f18bef9 100644 --- a/packages/@lwc/errors/package.json +++ b/packages/@lwc/errors/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/errors", - "version": "8.12.6", + "version": "8.12.7", "description": "LWC Error Utilities", "keywords": [ "lwc" diff --git a/packages/@lwc/features/package.json b/packages/@lwc/features/package.json index 966b86243f..1149372285 100644 --- a/packages/@lwc/features/package.json +++ b/packages/@lwc/features/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/features", - "version": "8.12.6", + "version": "8.12.7", "description": "LWC Features Flags", "keywords": [ "lwc" @@ -46,6 +46,6 @@ } }, "dependencies": { - "@lwc/shared": "8.12.6" + "@lwc/shared": "8.12.7" } } diff --git a/packages/@lwc/integration-karma/package.json b/packages/@lwc/integration-karma/package.json index 32582c106f..885cca9864 100644 --- a/packages/@lwc/integration-karma/package.json +++ b/packages/@lwc/integration-karma/package.json @@ -1,7 +1,7 @@ { "name": "@lwc/integration-karma", "private": true, - "version": "8.12.6", + "version": "8.12.7", "scripts": { "start": "KARMA_MODE=watch karma start ./scripts/karma-configs/test/local.js", "test": "karma start ./scripts/karma-configs/test/local.js --single-run --browsers ChromeHeadless", @@ -17,11 +17,11 @@ "karma-sauce-launcher-fix-firefox": "using a fork to work around https://github.com/karma-runner/karma-sauce-launcher/issues/275" }, "devDependencies": { - "@lwc/compiler": "8.12.6", - "@lwc/engine-dom": "8.12.6", - "@lwc/engine-server": "8.12.6", - "@lwc/rollup-plugin": "8.12.6", - "@lwc/synthetic-shadow": "8.12.6", + "@lwc/compiler": "8.12.7", + "@lwc/engine-dom": "8.12.7", + "@lwc/engine-server": "8.12.7", + "@lwc/rollup-plugin": "8.12.7", + "@lwc/synthetic-shadow": "8.12.7", "@types/jasmine": "^5.1.5", "chokidar": "^4.0.3", "istanbul-lib-coverage": "^3.2.2", diff --git a/packages/@lwc/integration-tests/package.json b/packages/@lwc/integration-tests/package.json index 469f2ee36d..34c04a46bc 100644 --- a/packages/@lwc/integration-tests/package.json +++ b/packages/@lwc/integration-tests/package.json @@ -1,7 +1,7 @@ { "name": "@lwc/integration-tests", "private": true, - "version": "8.12.6", + "version": "8.12.7", "scripts": { "build": "node scripts/build.js", "build:dev": "MODE=dev yarn build", @@ -18,16 +18,16 @@ "sauce:prod:ci": "MODE=prod yarn build:prod && MODE=prod ../../../scripts/ci/retry.sh wdio ./scripts/wdio.sauce.conf.js" }, "devDependencies": { - "@lwc/rollup-plugin": "8.12.6", - "@wdio/cli": "^9.5.7", - "@wdio/local-runner": "^9.5.7", - "@wdio/mocha-framework": "^9.5.0", - "@wdio/sauce-service": "^9.5.7", - "@wdio/spec-reporter": "^9.5.0", - "@wdio/static-server-service": "^9.5.0", + "@lwc/rollup-plugin": "8.12.7", + "@wdio/cli": "^9.7.1", + "@wdio/local-runner": "^9.7.1", + "@wdio/mocha-framework": "^9.6.4", + "@wdio/sauce-service": "^9.7.1", + "@wdio/spec-reporter": "^9.6.3", + "@wdio/static-server-service": "^9.6.3", "deepmerge": "^4.3.1", "dotenv": "^16.4.7", - "lwc": "8.12.6", + "lwc": "8.12.7", "minimist": "^1.2.8", "webdriverio": "^9.0.7" }, diff --git a/packages/@lwc/integration-types/package.json b/packages/@lwc/integration-types/package.json index 54dc831926..e81328f15c 100644 --- a/packages/@lwc/integration-types/package.json +++ b/packages/@lwc/integration-types/package.json @@ -1,7 +1,7 @@ { "name": "@lwc/integration-types", "private": true, - "version": "8.12.6", + "version": "8.12.7", "description": "Type validation for LWC packages", "type": "module", "scripts": { @@ -9,13 +9,13 @@ "playground": "rollup -c src/playground/rollup.config.js --watch" }, "dependencies": { - "@lwc/rollup-plugin": "8.12.6", - "lwc": "8.12.6" + "@lwc/rollup-plugin": "8.12.7", + "lwc": "8.12.7" }, "devDependencies": { "@rollup/plugin-replace": "^6.0.2", "@rollup/plugin-typescript": "^12.1.2", - "rollup": "^4.31.0", + "rollup": "^4.32.0", "rollup-plugin-livereload": "^2.0.5", "rollup-plugin-serve": "^3.0.0" } diff --git a/packages/@lwc/integration-types/src/decorators/wire.ts b/packages/@lwc/integration-types/src/decorators/wire.ts index 6be62c1ab2..686d578540 100644 --- a/packages/@lwc/integration-types/src/decorators/wire.ts +++ b/packages/@lwc/integration-types/src/decorators/wire.ts @@ -15,6 +15,10 @@ type DeepConfig = { deep: { config: number } }; declare const testConfig: TestConfig; declare const testValue: TestValue; declare const TestAdapter: WireAdapterConstructor; +declare const TestAdapterWithImperative: { + (config: TestConfig): TestValue; + adapter: WireAdapterConstructor; +}; declare const AnyAdapter: any; declare const InvalidAdapter: object; declare const DeepConfigAdapter: WireAdapterConstructor; @@ -39,7 +43,7 @@ export class PropertyDecorators extends LightningElement { // Valid - basic @wire(TestAdapter, { config: 'config' }) basic?: TestValue; - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) simpleReactive?: TestValue; @wire(TestAdapter, { config: '$nested.prop' }) nestedReactive?: TestValue; @@ -126,6 +130,72 @@ export class PropertyDecorators extends LightningElement { never?: never; } +/** Validations for decorated properties/fields */ +export class PropertyDecoratorsWithImperative extends LightningElement { + // Helper props + configProp = 'config' as const; + nested = { prop: 'config', invalid: 123 } as const; + // 'nested.prop' is not directly used, but helps validate that the reactive config resolution + // uses the object above, rather than a weird prop name + 'nested.prop' = false; + number = 123; + // --- VALID --- // + // Valid - basic + @wire(TestAdapterWithImperative, { config: 'config' }) + basic?: TestValue; + @wire(TestAdapterWithImperative, { config: '$configProp' }) + simpleReactive?: TestValue; + @wire(TestAdapterWithImperative, { config: '$nested.prop' }) + nestedReactive?: TestValue; + // Valid - as const + @wire(TestAdapterWithImperative, { config: 'config' } as const) + basicAsConst?: TestValue; + @wire(TestAdapterWithImperative, { config: '$configProp' } as const) + simpleReactiveAsConst?: TestValue; + // Valid - using `any` + @wire(TestAdapterWithImperative, {} as any) + configAsAny?: TestValue; + @wire(TestAdapterWithImperative, { config: 'config' }) + propAsAny?: any; + // Valid - prop assignment + @wire(TestAdapterWithImperative, { config: 'config' }) + nonNullAssertion!: TestValue; + @wire(TestAdapterWithImperative, { config: 'config' }) + explicitDefaultType: TestValue = testValue; + @wire(TestAdapterWithImperative, { config: 'config' }) + implicitDefaultType = testValue; + + // --- INVALID --- // + // @ts-expect-error Too many wire parameters + @wire(TestAdapterWithImperative, { config: 'config' }, {}) + tooManyWireParams?: TestValue; + // @ts-expect-error Bad config type + @wire(TestAdapterWithImperative, { bad: 'value' }) + badConfig?: TestValue; + // @ts-expect-error Bad prop type + @wire(TestAdapterWithImperative, { config: 'config' }) + badPropType?: { bad: 'value' }; + // @ts-expect-error Referenced reactive prop does not exist + @wire(TestAdapterWithImperative, { config: '$nonexistentProp' } as const) + nonExistentReactiveProp?: TestValue; + + // --- AMBIGUOUS --- // + // Passing a config is optional because adapters don't strictly need to use it. + // Can we be smarter about the type and require a config, but only if the adapter does? + @wire(TestAdapterWithImperative) + noConfig?: TestValue; + // Because the basic type `string` could be _any_ string, we can't narrow it and compare against + // the component's props, so we must accept all string props, even if they're incorrect. + // We could technically be strict, and enforce that all configs objects use `as const`, but very + // few projects currently use it (there is no need) and the error reported is not simple to + // understand. + @wire(TestAdapterWithImperative, { config: 'incorrect' }) + wrongConfigButInferredAsString?: TestValue; + // People shouldn't do this, and they probably never (heh) will. TypeScript allows it, though. + @wire(TestAdapterWithImperative, { config: 'config' }) + never?: never; +} + /** Validations for decorated methods */ export class MethodDecorators extends LightningElement { // Helper props @@ -141,13 +211,13 @@ export class MethodDecorators extends LightningElement { basic(_: TestValue) {} @wire(TestAdapter, { config: 'config' }) async asyncMethod(_: TestValue) {} - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) simpleReactive(_: TestValue) {} @wire(TestAdapter, { config: '$nested.prop' }) nestedReactive(_: TestValue) {} - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) optionalParam(_?: TestValue) {} - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) noParam() {} // Valid - as const @wire(TestAdapter, { config: 'config' } as const) @@ -222,6 +292,67 @@ export class MethodDecorators extends LightningElement { implicitDefaultType(_ = testValue) {} } +/** Validations for decorated methods */ +export class MethodDecoratorsWithImperative extends LightningElement { + // Helper props + configProp = 'config' as const; + nested = { prop: 'config', invalid: 123 } as const; + // 'nested.prop' is not directly used, but helps validate that the reactive config resolution + // uses the object above, rather than a weird prop name + 'nested.prop' = false; + number = 123; + // --- VALID --- // + // Valid - basic + @wire(TestAdapterWithImperative, { config: 'config' }) + basic(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: 'config' }) + async asyncMethod(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' }) + simpleReactive(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$nested.prop' }) + nestedReactive(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' }) + optionalParam(_?: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' }) + noParam() {} + // Valid - as const + @wire(TestAdapterWithImperative, { config: 'config' } as const) + basicAsConst(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' } as const) + simpleReactiveAsConst(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$nested.prop' } as const) + nestedReactiveAsConst(_: TestValue) {} + // Valid - using `any` + @wire(TestAdapterWithImperative, {} as any) + configAsAny(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: 'config' }) + paramAsAny(_: any) {} + + // --- INVALID --- // + // @ts-expect-error Too many wire parameters + @wire(TestAdapterWithImperative, { config: 'config' }, {}) + tooManyWireParams(_: TestValue) {} + // @ts-expect-error Too many method parameters + @wire(TestAdapterWithImperative, { config: 'config' }) + tooManyParameters(_a: TestValue, _b: TestValue) {} + + // --- AMBIGUOUS --- // + // Passing a config is optional because adapters don't strictly need to use it. + // Can we be smarter about the type and require a config, but only if the adapter does? + @wire(TestAdapterWithImperative) + noConfig(_: TestValue): void {} + // Because the basic type `string` could be _any_ string, we can't narrow it and compare against + // the component's props, so we must accept all string props, even if they're incorrect. + // We could technically be strict, and enforce that all configs objects use `as const`, but very + // few projects currently use it (there is no need) and the error reported is not simple to + // understand. + @wire(TestAdapterWithImperative, { config: 'incorrect' }) + wrongConfigButInferredAsString(_: TestValue): void {} + // Wire adapters shouldn't use default params, but the type system doesn't know the difference + @wire(TestAdapterWithImperative, { config: 'config' }) + implicitDefaultType(_ = testValue) {} +} + /** Validations for decorated getters */ export class GetterDecorators extends LightningElement { // Helper props @@ -244,7 +375,7 @@ export class GetterDecorators extends LightningElement { // we must return something. Since we don't have any data to return, we return `undefined` return undefined; } - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) get simpleReactive() { return testValue; } @@ -341,6 +472,69 @@ export class GetterDecorators extends LightningElement { } } +/** Validations for decorated getters */ +export class GetterDecoratorsWithImperative extends LightningElement { + // Helper props + configProp = 'config' as const; + nested = { prop: 'config', invalid: 123 } as const; + // 'nested.prop' is not directly used, but helps validate that the reactive config resolution + // uses the object above, rather than a weird prop name + 'nested.prop' = false; + number = 123; + // --- VALID --- // + + // Valid - basic + @wire(TestAdapterWithImperative, { config: 'config' }) + get basic() { + return testValue; + } + @wire(TestAdapterWithImperative, { config: 'config' }) + get undefined() { + // The function implementation of a wired getter is ignored, but TypeScript enforces that + // we must return something. Since we don't have any data to return, we return `undefined` + return undefined; + } + @wire(TestAdapterWithImperative, { config: '$configProp' }) + get simpleReactive() { + return testValue; + } + @wire(TestAdapterWithImperative, { config: '$nested.prop' }) + get nestedReactive() { + return testValue; + } + // Valid - using `any` + @wire(TestAdapterWithImperative, {} as any) + get configAsAny() { + return testValue; + } + @wire(TestAdapterWithImperative, { config: 'config' }) + get valueAsAny() { + return null as any; + } + + // --- INVALID --- // + // @ts-expect-error Too many wire parameters + @wire(TestAdapterWithImperative, { config: 'config' }, {}) + get tooManyWireParams() { + return testValue; + } + // @ts-expect-error Bad config type + @wire(TestAdapterWithImperative, { bad: 'value' }) + get badConfig() { + return testValue; + } + // @ts-expect-error Bad value type + @wire(TestAdapterWithImperative, { config: 'config' }) + get badValueType() { + return { bad: 'value' }; + } + // @ts-expect-error Referenced reactive prop does not exist + @wire(TestAdapterWithImperative, { config: '$nonexistentProp' } as const) + get nonExistentReactiveProp() { + return testValue; + } +} + /** Validations for decorated setters */ export class Setter extends LightningElement { // Helper props @@ -355,7 +549,7 @@ export class Setter extends LightningElement { // Valid - basic @wire(TestAdapter, { config: 'config' }) set basic(_: TestValue) {} - @wire(TestAdapter, { config: '$config' }) + @wire(TestAdapter, { config: '$configProp' }) set simpleReactive(_: TestValue) {} @wire(TestAdapter, { config: '$nested.prop' }) set nestedReactive(_: TestValue) {} @@ -411,3 +605,61 @@ export class Setter extends LightningElement { @wire(DeepConfigAdapter, { deep: { config: '$number' } } as const) set deepReactive(_: TestValue) {} } + +/** Validations for decorated setters */ +export class SetterWithImperative extends LightningElement { + // Helper props + configProp = 'config' as const; + nested = { prop: 'config', invalid: 123 } as const; + // 'nested.prop' is not directly used, but helps validate that the reactive config resolution + // uses the object above, rather than a weird prop name + 'nested.prop' = false; + number = 123; + // --- VALID --- // + + // Valid - basic + @wire(TestAdapterWithImperative, { config: 'config' }) + set basic(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' }) + set simpleReactive(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$nested.prop' }) + set nestedReactive(_: TestValue) {} + // Valid - as const + @wire(TestAdapterWithImperative, { config: 'config' } as const) + set basicAsConst(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$configProp' } as const) + set simpleReactiveAsConst(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: '$nested.prop' } as const) + set nestedReactiveAsConst(_: TestValue) {} + // Valid - using `any` + @wire(TestAdapterWithImperative, {} as any) + set configAsAny(_: TestValue) {} + @wire(TestAdapterWithImperative, { config: 'config' }) + set valueAsAny(_: any) {} + + // --- INVALID --- // + // @ts-expect-error Too many wire parameters + @wire(TestAdapterWithImperative, { config: 'config' }, {}) + set tooManyWireParams(_: TestValue) {} + // @ts-expect-error Bad config type + @wire(TestAdapterWithImperative, { bad: 'value' }) + set badConfig(_: TestValue) {} + // @ts-expect-error Bad value type + @wire(TestAdapterWithImperative, { config: 'config' }) + set badValueType(_: { bad: 'value' }) {} + // @ts-expect-error Referenced reactive prop does not exist + @wire(TestAdapterWithImperative, { config: '$nonexistentProp' } as const) + set nonExistentReactiveProp(_: TestValue) {} + // @ts-expect-error Referenced reactive prop is the wrong type + @wire(TestAdapterWithImperative, { config: '$number' } as const) + set numberReactiveProp(_: TestValue) {} + // @ts-expect-error Referenced nested reactive prop does not exist + @wire(TestAdapterWithImperative, { config: '$nested.nonexistent' } as const) + set nonexistentNestedReactiveProp(_: TestValue) {} + // @ts-expect-error Referenced nested reactive prop does not exist + @wire(TestAdapterWithImperative, { config: '$nested.invalid' } as const) + set invalidNestedReactiveProp(_: TestValue) {} + // @ts-expect-error Incorrect non-reactive string literal type + @wire(TestAdapterWithImperative, { config: 'not reactive' } as const) + set nonReactiveStringLiteral(_: TestValue) {} +} diff --git a/packages/@lwc/module-resolver/package.json b/packages/@lwc/module-resolver/package.json index e9ca364b13..9ea56ec533 100644 --- a/packages/@lwc/module-resolver/package.json +++ b/packages/@lwc/module-resolver/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/module-resolver", - "version": "8.12.6", + "version": "8.12.7", "description": "Resolves paths for LWC components", "keywords": [ "lwc" diff --git a/packages/@lwc/perf-benchmarks-components/package.json b/packages/@lwc/perf-benchmarks-components/package.json index 915690daeb..c4af68674f 100644 --- a/packages/@lwc/perf-benchmarks-components/package.json +++ b/packages/@lwc/perf-benchmarks-components/package.json @@ -1,12 +1,12 @@ { "name": "@lwc/perf-benchmarks-components", - "version": "8.12.6", + "version": "8.12.7", "private": true, "scripts": { "build": "rm -fr dist && rollup -c ./rollup.config.mjs" }, "devDependencies": { - "@lwc/rollup-plugin": "8.12.6" + "@lwc/rollup-plugin": "8.12.7" }, "nx": { "targets": { diff --git a/packages/@lwc/perf-benchmarks/README.md b/packages/@lwc/perf-benchmarks/README.md index 92f5b13043..1cd6c89fa0 100644 --- a/packages/@lwc/perf-benchmarks/README.md +++ b/packages/@lwc/perf-benchmarks/README.md @@ -21,6 +21,9 @@ cd packages/@lwc/perf-benchmarks ../../../node_modules/.bin/tach --config dist/__benchmarks__/path/to/tachometer.json ``` +> [!TIP] +> Running all of the benchmarks will take multiple hours. Let it run overnight! + ## Manual testing When the benchmark is not working, the best way to debug it locally is to load its HTML file and inspect it in the Chrome DevTools. After building, you can run: @@ -84,3 +87,6 @@ This package also supports [Best](https://bestjs.dev) as a benchmark runner. To Or for CI: yarn test:performance:best:ci + +> [!TIP] +> Best tests only take a few dozen minutes. Take a break! diff --git a/packages/@lwc/perf-benchmarks/package.json b/packages/@lwc/perf-benchmarks/package.json index 2f3a3248f5..cc7595cc2d 100644 --- a/packages/@lwc/perf-benchmarks/package.json +++ b/packages/@lwc/perf-benchmarks/package.json @@ -1,6 +1,6 @@ { "name": "@lwc/perf-benchmarks", - "version": "8.12.6", + "version": "8.12.7", "private": true, "scripts": { "build": "rm -fr dist && rollup -c ./rollup.config.mjs && node scripts/build.js && ./scripts/fix-deps.sh", @@ -15,11 +15,11 @@ "Don't forget to add these to fix-deps.sh as well." ], "dependencies": { - "@lwc/engine-dom": "8.12.6", - "@lwc/engine-server": "8.12.6", - "@lwc/perf-benchmarks-components": "8.12.6", - "@lwc/ssr-runtime": "8.12.6", - "@lwc/synthetic-shadow": "8.12.6" + "@lwc/engine-dom": "8.12.7", + "@lwc/engine-server": "8.12.7", + "@lwc/perf-benchmarks-components": "8.12.7", + "@lwc/ssr-runtime": "8.12.7", + "@lwc/synthetic-shadow": "8.12.7" }, "devDependencies": { "@best/cli": "^14.0.0", diff --git a/packages/@lwc/rollup-plugin/package.json b/packages/@lwc/rollup-plugin/package.json index 244b35acda..0442783f9e 100644 --- a/packages/@lwc/rollup-plugin/package.json +++ b/packages/@lwc/rollup-plugin/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/rollup-plugin", - "version": "8.12.6", + "version": "8.12.7", "description": "Rollup plugin to compile LWC", "keywords": [ "lwc" @@ -46,13 +46,13 @@ } }, "dependencies": { - "@lwc/compiler": "8.12.6", - "@lwc/module-resolver": "8.12.6", - "@lwc/shared": "8.12.6", + "@lwc/compiler": "8.12.7", + "@lwc/module-resolver": "8.12.7", + "@lwc/shared": "8.12.7", "@rollup/pluginutils": "~5.1.4" }, "devDependencies": { - "@lwc/errors": "8.12.6" + "@lwc/errors": "8.12.7" }, "peerDependencies": { "rollup": "^1.2.0||^2.0.0||^3.0.0||^4.0.0" diff --git a/packages/@lwc/shared/package.json b/packages/@lwc/shared/package.json index 145d2c34ec..93fde048cd 100644 --- a/packages/@lwc/shared/package.json +++ b/packages/@lwc/shared/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/shared", - "version": "8.12.6", + "version": "8.12.7", "description": "Utilities and methods that are shared across packages", "keywords": [ "lwc" diff --git a/packages/@lwc/signals/package.json b/packages/@lwc/signals/package.json index 388ab6e864..cf9c3aec63 100644 --- a/packages/@lwc/signals/package.json +++ b/packages/@lwc/signals/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/signals", - "version": "8.12.6", + "version": "8.12.7", "description": "Provides the interface to interact with reactivity from outside the framework", "keywords": [ "lwc" @@ -46,6 +46,6 @@ } }, "devDependencies": { - "@lwc/shared": "8.12.6" + "@lwc/shared": "8.12.7" } } diff --git a/packages/@lwc/ssr-compiler/package.json b/packages/@lwc/ssr-compiler/package.json index 34fd66fd9a..bd26e47b07 100644 --- a/packages/@lwc/ssr-compiler/package.json +++ b/packages/@lwc/ssr-compiler/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/ssr-compiler", - "version": "8.12.6", + "version": "8.12.7", "description": "Compile component for use during server-side rendering", "keywords": [ "compiler", @@ -48,10 +48,10 @@ } }, "dependencies": { - "@babel/types": "7.26.5", - "@lwc/shared": "8.12.6", - "@lwc/errors": "8.12.6", - "@lwc/template-compiler": "8.12.6", + "@babel/types": "7.26.7", + "@lwc/shared": "8.12.7", + "@lwc/errors": "8.12.7", + "@lwc/template-compiler": "8.12.7", "acorn": "8.14.0", "astring": "^1.9.0", "estree-toolkit": "^1.7.8", @@ -59,7 +59,7 @@ "meriyah": "^5.0.0" }, "devDependencies": { - "@lwc/babel-plugin-component": "8.12.6", + "@lwc/babel-plugin-component": "8.12.7", "@types/estree": "^1.0.6" } } diff --git a/packages/@lwc/ssr-compiler/src/__tests__/fixtures.spec.ts b/packages/@lwc/ssr-compiler/src/__tests__/fixtures.spec.ts index 6e5cb3bcf9..bc8aa372ad 100644 --- a/packages/@lwc/ssr-compiler/src/__tests__/fixtures.spec.ts +++ b/packages/@lwc/ssr-compiler/src/__tests__/fixtures.spec.ts @@ -77,9 +77,7 @@ async function compileFixture({ input, dirname }: { input: string; dirname: stri return outputFile; } -// We will enable this for realsies once all the tests are passing, but for now having the env var avoids -// running these tests in CI while still allowing for local testing. -describe.runIf(process.env.TEST_SSR_COMPILER).concurrent('fixtures', () => { +describe.concurrent('fixtures', () => { testFixtureDir( { root: path.resolve(__dirname, '../../../engine-server/src/__tests__/fixtures'), diff --git a/packages/@lwc/ssr-compiler/src/__tests__/utils/expected-failures.ts b/packages/@lwc/ssr-compiler/src/__tests__/utils/expected-failures.ts index b2f8518054..004300f11a 100644 --- a/packages/@lwc/ssr-compiler/src/__tests__/utils/expected-failures.ts +++ b/packages/@lwc/ssr-compiler/src/__tests__/utils/expected-failures.ts @@ -12,9 +12,5 @@ export const expectedFailures = new Set([ 'attribute-global-html/as-component-prop/without-@api/index.js', 'exports/component-as-default/index.js', 'known-boolean-attributes/default-def-html-attributes/static-on-component/index.js', - 'render-dynamic-value/index.js', - 'slot-forwarding/slots/mixed/index.js', - 'slot-forwarding/slots/dangling/index.js', - 'wire/errors/throws-on-computed-key/index.js', 'wire/errors/throws-when-colliding-prop-then-method/index.js', ]); diff --git a/packages/@lwc/ssr-compiler/src/compile-js/generate-markup.ts b/packages/@lwc/ssr-compiler/src/compile-js/generate-markup.ts index ce1fd11d7b..bddee319c5 100644 --- a/packages/@lwc/ssr-compiler/src/compile-js/generate-markup.ts +++ b/packages/@lwc/ssr-compiler/src/compile-js/generate-markup.ts @@ -16,8 +16,8 @@ import type { ComponentMetaState } from './types'; const bGenerateMarkup = esTemplate` // These variables may mix with component-authored variables, so should be reasonably unique - const __lwcPublicFields__ = new Set(${/*public fields*/ is.arrayExpression}); - const __lwcPrivateFields__ = new Set(${/*private fields*/ is.arrayExpression}); + const __lwcPublicProperties__ = new Set(${/*api*/ is.arrayExpression}); + const __lwcPrivateProperties__ = new Set(${/*private fields*/ is.arrayExpression}); async function* generateMarkup( tagName, @@ -43,8 +43,8 @@ const bGenerateMarkup = esTemplate` instance[__SYMBOL__SET_INTERNALS]( props, attrs, - __lwcPublicFields__, - __lwcPrivateFields__, + __lwcPublicProperties__, + __lwcPrivateProperties__, ); instance.isConnected = true; if (instance.connectedCallback) { @@ -101,7 +101,7 @@ export function addGenerateMarkupFunction( tagName: string, filename: string ) { - const { privateFields, publicFields, tmplExplicitImports } = state; + const { privateProperties, publicProperties, tmplExplicitImports } = state; // The default tag name represents the component name that's passed to the transformer. // This is needed to generate markup for dynamic components which are invoked through @@ -141,8 +141,8 @@ export function addGenerateMarkupFunction( ); program.body.push( ...bGenerateMarkup( - b.arrayExpression(publicFields.map(b.literal)), - b.arrayExpression(privateFields.map(b.literal)), + b.arrayExpression(publicProperties.map(b.literal)), + b.arrayExpression(privateProperties.map(b.literal)), defaultTagName, classIdentifier, connectWireAdapterCode diff --git a/packages/@lwc/ssr-compiler/src/compile-js/index.ts b/packages/@lwc/ssr-compiler/src/compile-js/index.ts index a6386dcadf..192732f23a 100644 --- a/packages/@lwc/ssr-compiler/src/compile-js/index.ts +++ b/packages/@lwc/ssr-compiler/src/compile-js/index.ts @@ -93,7 +93,11 @@ const visitors: Visitors = { }, PropertyDefinition(path, state) { const node = path.node; - if (!is.identifier(node?.key)) { + if (!node?.key) { + // Seems to occur for `@wire() [symbol];` -- not sure why + throw new Error('Unknown state: property definition has no key'); + } + if (!is.identifier(node.key)) { return; } @@ -101,16 +105,20 @@ const visitors: Visitors = { validateUniqueDecorator(decorators); const decoratedExpression = decorators?.[0]?.expression; if (is.identifier(decoratedExpression) && decoratedExpression.name === 'api') { - state.publicFields.push(node.key.name); + state.publicProperties.push(node.key.name); } else if ( is.callExpression(decoratedExpression) && is.identifier(decoratedExpression.callee) && decoratedExpression.callee.name === 'wire' ) { + if (node.computed) { + // TODO [#5032]: Harmonize errors thrown in `@lwc/ssr-compiler` + throw new Error('@wire cannot be used on computed properties in SSR context.'); + } catalogWireAdapters(path, state); - state.privateFields.push(node.key.name); + state.privateProperties.push(node.key.name); } else { - state.privateFields.push(node.key.name); + state.privateProperties.push(node.key.name); } if ( @@ -146,9 +154,17 @@ const visitors: Visitors = { is.identifier(decoratedExpression.callee) && decoratedExpression.callee.name === 'wire' ) { + // not a getter/setter + const isRealMethod = node.kind === 'method'; + if (node.computed) { + // TODO [#5032]: Harmonize errors thrown in `@lwc/ssr-compiler` + throw new Error( + `@wire cannot be used on computed ${isRealMethod ? 'method' : 'properties'} in SSR context.` + ); + } // Getters and setters are methods in the AST, but treated as properties by @wire // Note that this means that their implementations are ignored! - if (node.kind === 'get' || node.kind === 'set') { + if (!isRealMethod) { const methodAsProp = b.propertyDefinition( structuredClone(node.key), null, @@ -164,6 +180,14 @@ const visitors: Visitors = { } else { catalogWireAdapters(path, state); } + } else if (is.identifier(decoratedExpression) && decoratedExpression.name === 'api') { + if (state.publicProperties.includes(node.key.name)) { + // TODO [#5032]: Harmonize errors thrown in `@lwc/ssr-compiler` + throw new Error( + `LWC1112: @api get ${node.key.name} and @api set ${node.key.name} detected in class declaration. Only one of the two needs to be decorated with @api.` + ); + } + state.publicProperties.push(node.key.name); } switch (node.key.name) { @@ -269,8 +293,8 @@ export default function compileJS( tmplExplicitImports: null, cssExplicitImports: null, staticStylesheetIds: null, - publicFields: [], - privateFields: [], + publicProperties: [], + privateProperties: [], wireAdapters: [], experimentalDynamicComponent: options.experimentalDynamicComponent, importManager: new ImportManager(), diff --git a/packages/@lwc/ssr-compiler/src/compile-js/types.ts b/packages/@lwc/ssr-compiler/src/compile-js/types.ts index 6ff7723f08..3690338a52 100644 --- a/packages/@lwc/ssr-compiler/src/compile-js/types.ts +++ b/packages/@lwc/ssr-compiler/src/compile-js/types.ts @@ -48,10 +48,10 @@ export interface ComponentMetaState { cssExplicitImports: Map | null; // the set of variable names associated with explicitly imported CSS files staticStylesheetIds: Set | null; - // the public (`@api`-annotated) fields of the component class - publicFields: Array; - // the private fields of the component class - privateFields: Array; + // the public (`@api`-annotated) properties of the component class + publicProperties: Array; + // the private properties of the component class + privateProperties: Array; // indicates whether the LightningElement has any wired props wireAdapters: WireAdapter[]; // dynamic imports configuration diff --git a/packages/@lwc/ssr-compiler/src/compile-template/index.ts b/packages/@lwc/ssr-compiler/src/compile-template/index.ts index 037d51299f..041ef68f94 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/index.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/index.ts @@ -32,6 +32,9 @@ const bExportTemplate = esTemplate` let textContentBuffer = ''; let didBufferTextContent = false; + // This will get overridden but requires initialization. + const slotAttributeValue = null; + // Establishes a contextual relationship between two components for ContextProviders. // This variable will typically get overridden (shadowed) within slotted content. const contextfulParent = instance; diff --git a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/component.ts b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/component.ts index 305878fdd4..c02ffe8bf8 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/component.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/component.ts @@ -19,6 +19,13 @@ const bYieldFromChildGenerator = esTemplateWithYield` { const childProps = ${/* child props */ is.objectExpression}; const childAttrs = ${/* child attrs */ is.objectExpression}; + /* + If 'slotAttributeValue' is set, it references a slot that does not exist, and the 'slot' attribute should be set in the DOM. This behavior aligns with engine-server and engine-dom. + See: engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/ for example case. + */ + if (slotAttributeValue) { + childAttrs.slot = slotAttributeValue; + } ${ /* Slotted content is inserted here. diff --git a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/lwc-component.ts b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/lwc-component.ts index b7076424c9..b6b7a518be 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/lwc-component.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/lwc-component.ts @@ -25,6 +25,13 @@ const bYieldFromDynamicComponentConstructorGenerator = esTemplateWithYield` } const childProps = ${/* child props */ is.objectExpression}; const childAttrs = ${/* child attrs */ is.objectExpression}; + /* + If 'slotAttributeValue' is set, it references a slot that does not exist, and the 'slot' attribute should be set in the DOM. This behavior aligns with engine-server and engine-dom. + See: engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/ for example case. + */ + if (slotAttributeValue) { + childAttrs.slot = slotAttributeValue; + } ${ /* Slotted content is inserted here. diff --git a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/slotted-content.ts b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/slotted-content.ts index 6fa1660203..8ad46d5d5e 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/slotted-content.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/transformers/component/slotted-content.ts @@ -78,7 +78,7 @@ const bGenerateSlottedContent = esTemplateWithYield` const bAddSlottedContent = esTemplate` addSlottedContent(${/* slot name */ is.expression} ?? "", async function* generateSlottedContent(contextfulParent, ${ /* scoped slot data variable */ isNullableOf(is.identifier) - }) { + }, slotAttributeValue) { // FIXME: make validation work again ${/* slot content */ false} }, ${/* content map */ is.identifier}); diff --git a/packages/@lwc/ssr-compiler/src/compile-template/transformers/element.ts b/packages/@lwc/ssr-compiler/src/compile-template/transformers/element.ts index 66341e2355..32c673fe7c 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/transformers/element.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/transformers/element.ts @@ -120,6 +120,16 @@ const bConditionallyYieldScopeTokenClass = esTemplateWithYield` } `; +/* + If `slotAttributeValue` is set, it references a slot that does not exist, and the `slot` attribute should be set in the DOM. This behavior aligns with engine-server and engine-dom. + See: engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/ for example case. +*/ +const bConditionallyYieldDanglingSlotName = esTemplateWithYield` + if (slotAttributeValue) { + yield \` slot="\${slotAttributeValue}"\`; + } +`; + const bYieldSanitizedHtml = esTemplateWithYield` yield sanitizeHtmlContent(${/* lwc:inner-html content */ is.expression}) `; @@ -263,6 +273,7 @@ export const Element: Transformer = fu return [ bYield(b.literal(`<${node.name}`)), + bConditionallyYieldDanglingSlotName(), // If we haven't already prefixed the scope token to an existing class, add an explicit class here ...(hasClassAttribute ? [] : [bConditionallyYieldScopeTokenClass()]), ...yieldAttrsAndProps, diff --git a/packages/@lwc/ssr-compiler/src/compile-template/transformers/slot.ts b/packages/@lwc/ssr-compiler/src/compile-template/transformers/slot.ts index 3dcdea4adc..952619235d 100644 --- a/packages/@lwc/ssr-compiler/src/compile-template/transformers/slot.ts +++ b/packages/@lwc/ssr-compiler/src/compile-template/transformers/slot.ts @@ -30,7 +30,13 @@ const bConditionalSlot = esTemplateWithYield` const scopedGenerators = scopedSlottedContent?.[slotName ?? ""]; const mismatchedSlots = isScopedSlot ? lightGenerators : scopedGenerators; const generators = isScopedSlot ? scopedGenerators : lightGenerators; - + /* + If a slotAttributeValue is present, it should be provided for assignment to any slotted content. This behavior aligns with v1 and engine-dom. + See: engine-server/src/__tests__/fixtures/slot-forwarding/slots/dangling/ for example. + Note the slot mapping does not work for scoped slots, so the slot name is not rendered in this case. + See: engine-server/src/__tests__/fixtures/slot-forwarding/scoped-slots for example. + */ + const danglingSlotName = !isScopedSlot ? ${/* slotAttributeValue */ is.expression} || slotAttributeValue : null; // start bookend HTML comment for light DOM slot vfragment if (!isSlotted) { yield ''; @@ -43,7 +49,7 @@ const bConditionalSlot = esTemplateWithYield` if (generators) { for (let i = 0; i < generators.length; i++) { - yield* generators[i](contextfulParent, ${/* scoped slot data */ isNullableOf(is.expression)}); + yield* generators[i](contextfulParent, ${/* scoped slot data */ isNullableOf(is.expression)}, danglingSlotName); // Scoped slotted data is separated by bookends. Final bookends are added outside of the loop below. if (isScopedSlot && i < generators.length - 1) { yield ''; @@ -90,5 +96,16 @@ export const Slot: Transformer = function Slot(node, ctx): EsStatement[] const slotChildren = irChildrenToEs(node.children, ctx); const isScopedSlot = b.literal(Boolean(slotBound)); const isSlotted = b.literal(Boolean(ctx.isSlotted)); - return [bConditionalSlot(isScopedSlot, isSlotted, slotName, slotBound, slotChildren, slotAst)]; + const slotAttributeValue = bAttributeValue(node, 'slot'); + return [ + bConditionalSlot( + isScopedSlot, + isSlotted, + slotName, + slotAttributeValue, + slotBound, + slotChildren, + slotAst + ), + ]; }; diff --git a/packages/@lwc/ssr-runtime/package.json b/packages/@lwc/ssr-runtime/package.json index 4b89af280a..d3e2df89da 100644 --- a/packages/@lwc/ssr-runtime/package.json +++ b/packages/@lwc/ssr-runtime/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/ssr-runtime", - "version": "8.12.6", + "version": "8.12.7", "description": "Runtime complement to @lwc/ssr-compiler", "keywords": [ "lwc", @@ -48,8 +48,8 @@ } }, "devDependencies": { - "@lwc/shared": "8.12.6", - "@lwc/engine-core": "8.12.6", + "@lwc/shared": "8.12.7", + "@lwc/engine-core": "8.12.7", "observable-membrane": "2.0.0" } } diff --git a/packages/@lwc/ssr-runtime/src/lightning-element.ts b/packages/@lwc/ssr-runtime/src/lightning-element.ts index 2c78d199a4..464830d247 100644 --- a/packages/@lwc/ssr-runtime/src/lightning-element.ts +++ b/packages/@lwc/ssr-runtime/src/lightning-element.ts @@ -78,8 +78,8 @@ export class LightningElement implements PropsAvailableAtConstruction { [SYMBOL__SET_INTERNALS]( props: Properties, attrs: Attributes, - publicFields: Set, - privateFields: Set + publicProperties: Set, + privateProperties: Set ) { this.#props = props; this.#attrs = attrs; @@ -91,9 +91,9 @@ export class LightningElement implements PropsAvailableAtConstruction { for (const propName of keys(props)) { const attrName = htmlPropertyToAttribute(propName); if ( - publicFields.has(propName) || + publicProperties.has(propName) || ((REFLECTIVE_GLOBAL_PROPERTY_SET.has(propName) || isAriaAttribute(attrName)) && - !privateFields.has(propName)) + !privateProperties.has(propName)) ) { // For props passed from parents to children, they are intended to be read-only // to avoid a child mutating its parent's state diff --git a/packages/@lwc/ssr-runtime/src/render.ts b/packages/@lwc/ssr-runtime/src/render.ts index 188c169ba7..4a635df8e2 100644 --- a/packages/@lwc/ssr-runtime/src/render.ts +++ b/packages/@lwc/ssr-runtime/src/render.ts @@ -101,27 +101,33 @@ export function renderAttrsNoYield( } export function* fallbackTmpl( - _shadowSlottedContent: unknown, + shadowSlottedContent: AsyncGeneratorFunction, _lightSlottedContent: unknown, _scopedSlottedContent: unknown, Cmp: LightningElementConstructor, - _instance: unknown + instance: unknown ) { if (Cmp.renderMode !== 'light') { - yield ''; + yield ``; + if (shadowSlottedContent) { + yield shadowSlottedContent(instance); + } } } export function fallbackTmplNoYield( emit: (segment: string) => void, - _shadowSlottedContent: unknown, + shadowSlottedContent: AsyncGeneratorFunction, _lightSlottedContent: unknown, _scopedSlottedContent: unknown, Cmp: LightningElementConstructor, - _instance: unknown + instance: unknown ) { if (Cmp.renderMode !== 'light') { - emit(''); + emit(``); + if (shadowSlottedContent) { + shadowSlottedContent(emit, instance); + } } } diff --git a/packages/@lwc/style-compiler/package.json b/packages/@lwc/style-compiler/package.json index 052223f7f5..f478ad6fb4 100644 --- a/packages/@lwc/style-compiler/package.json +++ b/packages/@lwc/style-compiler/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/style-compiler", - "version": "8.12.6", + "version": "8.12.7", "description": "Transform style sheet to be consumed by the LWC engine", "keywords": [ "lwc" @@ -46,7 +46,7 @@ } }, "dependencies": { - "@lwc/shared": "8.12.6", + "@lwc/shared": "8.12.7", "postcss": "~8.5.1", "postcss-selector-parser": "~7.0.0", "postcss-value-parser": "~4.2.0" diff --git a/packages/@lwc/synthetic-shadow/package.json b/packages/@lwc/synthetic-shadow/package.json index c0921e8d41..c543320162 100644 --- a/packages/@lwc/synthetic-shadow/package.json +++ b/packages/@lwc/synthetic-shadow/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/synthetic-shadow", - "version": "8.12.6", + "version": "8.12.7", "description": "Synthetic Shadow Root for LWC", "keywords": [ "lwc" @@ -46,8 +46,8 @@ } }, "devDependencies": { - "@lwc/features": "8.12.6", - "@lwc/shared": "8.12.6" + "@lwc/features": "8.12.7", + "@lwc/shared": "8.12.7" }, "lwc": { "modules": [ diff --git a/packages/@lwc/template-compiler/package.json b/packages/@lwc/template-compiler/package.json index 2653ad39f9..3a186b0bc4 100644 --- a/packages/@lwc/template-compiler/package.json +++ b/packages/@lwc/template-compiler/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/template-compiler", - "version": "8.12.6", + "version": "8.12.7", "description": "Template compiler package", "keywords": [ "lwc" @@ -46,8 +46,8 @@ } }, "dependencies": { - "@lwc/errors": "8.12.6", - "@lwc/shared": "8.12.6", + "@lwc/errors": "8.12.7", + "@lwc/shared": "8.12.7", "acorn": "~8.14.0", "astring": "~1.9.0", "he": "~1.2.0" diff --git a/packages/@lwc/types/package.json b/packages/@lwc/types/package.json index f6cdf33b26..2a14cdd300 100644 --- a/packages/@lwc/types/package.json +++ b/packages/@lwc/types/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/types", - "version": "8.12.6", + "version": "8.12.7", "keywords": [ "lwc", "types", @@ -32,6 +32,6 @@ "*.d.ts" ], "dependencies": { - "@lwc/engine-core": "8.12.6" + "@lwc/engine-core": "8.12.7" } } diff --git a/packages/@lwc/wire-service/package.json b/packages/@lwc/wire-service/package.json index 76724b529a..b21e057774 100644 --- a/packages/@lwc/wire-service/package.json +++ b/packages/@lwc/wire-service/package.json @@ -4,7 +4,7 @@ "You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten." ], "name": "@lwc/wire-service", - "version": "8.12.6", + "version": "8.12.7", "description": "@wire service", "keywords": [ "lwc" @@ -46,8 +46,8 @@ } }, "devDependencies": { - "@lwc/engine-core": "8.12.6", - "@lwc/shared": "8.12.6" + "@lwc/engine-core": "8.12.7", + "@lwc/shared": "8.12.7" }, "lwc": { "modules": [ diff --git a/packages/lwc/package.json b/packages/lwc/package.json index 6781e9d571..8f76256404 100644 --- a/packages/lwc/package.json +++ b/packages/lwc/package.json @@ -1,6 +1,6 @@ { "name": "lwc", - "version": "8.12.6", + "version": "8.12.7", "description": "Lightning Web Components (LWC)", "homepage": "https://lwc.dev/", "repository": { @@ -21,24 +21,24 @@ "!vitest.config.*" ], "dependencies": { - "@lwc/aria-reflection": "8.12.6", - "@lwc/babel-plugin-component": "8.12.6", - "@lwc/compiler": "8.12.6", - "@lwc/engine-core": "8.12.6", - "@lwc/engine-dom": "8.12.6", - "@lwc/engine-server": "8.12.6", - "@lwc/errors": "8.12.6", - "@lwc/features": "8.12.6", - "@lwc/module-resolver": "8.12.6", - "@lwc/rollup-plugin": "8.12.6", - "@lwc/shared": "8.12.6", - "@lwc/ssr-compiler": "8.12.6", - "@lwc/ssr-runtime": "8.12.6", - "@lwc/style-compiler": "8.12.6", - "@lwc/synthetic-shadow": "8.12.6", - "@lwc/template-compiler": "8.12.6", - "@lwc/types": "8.12.6", - "@lwc/wire-service": "8.12.6" + "@lwc/aria-reflection": "8.12.7", + "@lwc/babel-plugin-component": "8.12.7", + "@lwc/compiler": "8.12.7", + "@lwc/engine-core": "8.12.7", + "@lwc/engine-dom": "8.12.7", + "@lwc/engine-server": "8.12.7", + "@lwc/errors": "8.12.7", + "@lwc/features": "8.12.7", + "@lwc/module-resolver": "8.12.7", + "@lwc/rollup-plugin": "8.12.7", + "@lwc/shared": "8.12.7", + "@lwc/ssr-compiler": "8.12.7", + "@lwc/ssr-runtime": "8.12.7", + "@lwc/style-compiler": "8.12.7", + "@lwc/synthetic-shadow": "8.12.7", + "@lwc/template-compiler": "8.12.7", + "@lwc/types": "8.12.7", + "@lwc/wire-service": "8.12.7" }, "lwc": { "modules": [ diff --git a/playground/package.json b/playground/package.json index 1de51026c3..7b83a7a52c 100644 --- a/playground/package.json +++ b/playground/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@lwc/playground", - "version": "8.12.6", + "version": "8.12.7", "type": "module", "description": "Playground project to experiment with LWC.", "scripts": { @@ -9,10 +9,10 @@ "build": "NODE_ENV=production rollup -c" }, "devDependencies": { - "@lwc/rollup-plugin": "8.12.6", + "@lwc/rollup-plugin": "8.12.7", "@rollup/plugin-replace": "^6.0.2", - "lwc": "8.12.6", - "rollup": "^4.31.0", + "lwc": "8.12.7", + "rollup": "^4.32.0", "rollup-plugin-livereload": "^2.0.5", "rollup-plugin-serve": "^3.0.0" }, diff --git a/vitest.config.mjs b/vitest.config.mjs index 70cd0f0057..eb11f9cb21 100644 --- a/vitest.config.mjs +++ b/vitest.config.mjs @@ -29,17 +29,24 @@ export default defineConfig({ '**/packages/@lwc/perf-benchmarks-components/**', '**/packages/@lwc/perf-benchmarks/**', '**/playground/**', - // These are not production-ready yet - '**/packages/@lwc/ssr-compiler/**', - '**/packages/@lwc/ssr-runtime/**', // This just re-exports other packages '**/packages/lwc/**', ], thresholds: { - branches: 95, - functions: 95, - lines: 95, - statements: 95, + // SSR compiler/runtime is relatively newer, so has lower thresholds for now + '**/packages/@lwc/ssr-*/**': { + branches: 90, + functions: 60, + lines: 85, + statements: 85, + }, + + '!**/packages/@lwc/ssr-*/**': { + branches: 95, + functions: 95, + lines: 95, + statements: 95, + }, }, reporter: [ 'clover', diff --git a/yarn.lock b/yarn.lock index df389be172..70bffebd6b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35,7 +35,28 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.26.5.tgz#df93ac37f4417854130e21d72c66ff3d4b897fc7" integrity sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg== -"@babel/core@7.26.0", "@babel/core@^7.12.3", "@babel/core@^7.23.2": +"@babel/core@7.26.7": + version "7.26.7" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.7.tgz#0439347a183b97534d52811144d763a17f9d2b24" + integrity sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.26.2" + "@babel/generator" "^7.26.5" + "@babel/helper-compilation-targets" "^7.26.5" + "@babel/helper-module-transforms" "^7.26.0" + "@babel/helpers" "^7.26.7" + "@babel/parser" "^7.26.7" + "@babel/template" "^7.25.9" + "@babel/traverse" "^7.26.7" + "@babel/types" "^7.26.7" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/core@^7.12.3", "@babel/core@^7.23.2": version "7.26.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.26.0.tgz#d78b6023cc8f3114ccf049eb219613f74a747b40" integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== @@ -84,7 +105,7 @@ dependencies: "@babel/types" "^7.25.9" -"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9": +"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.25.9", "@babel/helper-compilation-targets@^7.26.5": version "7.26.5" resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz#75d92bb8d8d51301c0d49e52a65c9a7fe94514d8" integrity sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA== @@ -223,6 +244,14 @@ "@babel/template" "^7.25.9" "@babel/types" "^7.26.0" +"@babel/helpers@^7.26.7": + version "7.26.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.26.7.tgz#fd1d2a7c431b6e39290277aacfd8367857c576a4" + integrity sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A== + dependencies: + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.7" + "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.25.4", "@babel/parser@^7.25.9", "@babel/parser@^7.26.0", "@babel/parser@^7.26.5", "@babel/parser@^7.4.5": version "7.26.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.5.tgz#6fec9aebddef25ca57a935c86dbb915ae2da3e1f" @@ -230,6 +259,13 @@ dependencies: "@babel/types" "^7.26.5" +"@babel/parser@^7.26.7": + version "7.26.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.7.tgz#e114cd099e5f7d17b05368678da0fb9f69b3385c" + integrity sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w== + dependencies: + "@babel/types" "^7.26.7" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.25.9": version "7.25.9" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.9.tgz#cc2e53ebf0a0340777fff5ed521943e253b4d8fe" @@ -860,7 +896,28 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@7.26.5", "@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.10", "@babel/types@^7.25.4", "@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.26.5", "@babel/types@^7.4.4": +"@babel/traverse@^7.26.7": + version "7.26.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.26.7.tgz#99a0a136f6a75e7fb8b0a1ace421e0b25994b8bb" + integrity sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA== + dependencies: + "@babel/code-frame" "^7.26.2" + "@babel/generator" "^7.26.5" + "@babel/parser" "^7.26.7" + "@babel/template" "^7.25.9" + "@babel/types" "^7.26.7" + debug "^4.3.1" + globals "^11.1.0" + +"@babel/types@7.26.7", "@babel/types@^7.26.7": + version "7.26.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.7.tgz#5e2b89c0768e874d4d061961f3a5a153d71dc17a" + integrity sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.10", "@babel/types@^7.25.4", "@babel/types@^7.25.9", "@babel/types@^7.26.0", "@babel/types@^7.26.5", "@babel/types@^7.4.4": version "7.26.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.5.tgz#7a1e1c01d28e26d1fe7f8ec9567b3b92b9d07747" integrity sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg== @@ -1588,10 +1645,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.18.0": - version "9.18.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.18.0.tgz#3356f85d18ed3627ab107790b53caf7e1e3d1e84" - integrity sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA== +"@eslint/js@9.19.0": + version "9.19.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.19.0.tgz#51dbb140ed6b49d05adc0b171c41e1a8713b7789" + integrity sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ== "@eslint/object-schema@^2.1.5": version "2.1.5" @@ -1902,11 +1959,9 @@ "@lwc/eslint-plugin-lwc-internal@link:./scripts/eslint-plugin": version "0.0.0" - uid "" "@lwc/test-utils-lwc-internals@link:./scripts/test-utils": version "0.0.0" - uid "" "@napi-rs/wasm-runtime@0.2.4": version "0.2.4" @@ -1963,10 +2018,10 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@nx/devkit@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/devkit/-/devkit-20.3.2.tgz#b16e66771dd7dd24670eafa060c01f8af1191645" - integrity sha512-VhbxEsSTCZlOVgjuQC+6HQmb9Oz9VoHUeo4001Pw6BFBcSXZUi5q37C/lxbAgQPnMKLkFcLva3WKZ+fOLwhGIg== +"@nx/devkit@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/devkit/-/devkit-20.3.3.tgz#fe499feb617bc4b69ced629fec4bd94d4f14dae3" + integrity sha512-YwVQQpyeMpQeXzu4/Yv6Ng3ZZxJ45RGbGqbb+VWQfDKkZIHcyR7iLLQDaLpyl34HkrLYdZez9BB8wnyn3IaxqA== dependencies: ejs "^3.1.7" enquirer "~2.3.6" @@ -1977,10 +2032,10 @@ tslib "^2.3.0" yargs-parser "21.1.1" -"@nx/js@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/js/-/js-20.3.2.tgz#9fb7a056fda4a6e95b73aba447e49117000c8c44" - integrity sha512-t2mLCogVc/DWpkJ1SW4pFgeyWAmuy7EI4IPyShtF4s9mhqyIDfd29fGYsocuv84skX6y4JMOw3O+c+LXdQ9QWw== +"@nx/js@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/js/-/js-20.3.3.tgz#ffc00ddc27cd4bebd2aee1b2af674a6cc85f5086" + integrity sha512-IVECDcjUv3mzM4uIR/BhWs1IbmvGAw2EkGoISsaiXqffFlQpQBOqypZmKORTjQr7Qyn4kHzEJ7EyuQM9w/MYpA== dependencies: "@babel/core" "^7.23.2" "@babel/plugin-proposal-decorators" "^7.22.7" @@ -1989,8 +2044,8 @@ "@babel/preset-env" "^7.23.2" "@babel/preset-typescript" "^7.22.5" "@babel/runtime" "^7.22.6" - "@nx/devkit" "20.3.2" - "@nx/workspace" "20.3.2" + "@nx/devkit" "20.3.3" + "@nx/workspace" "20.3.3" "@zkochan/js-yaml" "0.0.7" babel-plugin-const-enum "^1.0.1" babel-plugin-macros "^2.8.0" @@ -2013,65 +2068,65 @@ tsconfig-paths "^4.1.2" tslib "^2.3.0" -"@nx/nx-darwin-arm64@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.3.2.tgz#bc212fdee150b49cdfe72697c7e3234bcbc07caa" - integrity sha512-lQOXMIPmE9o36TuZ+SX6iq7PPWa3s1fjNRqCujlviExX69245NNCMxd754gXlLrsxC1onrx/zmJciKmmEWDIiw== - -"@nx/nx-darwin-x64@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-darwin-x64/-/nx-darwin-x64-20.3.2.tgz#198d4d985e14954fe4d7b00075f9b2a95eed5161" - integrity sha512-RvvSz4QYVOYOfC8sUE63b6dy8iHk2AEI0r1FF5FCQuqE1DdTeTjPETY2sY35tRqF+mO/6oLGp2+m9ti/ysRoTg== - -"@nx/nx-freebsd-x64@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.3.2.tgz#42b5a8c045d60d69e9540aeb74b62f8208e41b73" - integrity sha512-KBDTyGn1evlZ17pupwRUDh2wrCMuHhP2j8cOCdgF5cl7vRki8BOK9yyL6jD11d/d/6DgXzy1jmQEX4Xx+AGCug== - -"@nx/nx-linux-arm-gnueabihf@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.3.2.tgz#a56e2fca7f56efef9f04c91c93ae4065a4a1c46c" - integrity sha512-mW+OcOnJEMvs7zD3aSwEG3z5M9bI4CuUU5Q/ePmnNzWIucRHpoAMNt/Sd+yu6L4+QttvoUf967uwcMsX8l4nrw== - -"@nx/nx-linux-arm64-gnu@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.3.2.tgz#1468b2b3425f8398f17b797703e153d7e66cca2c" - integrity sha512-hbXpZqUvGY5aeEWvh0SNsiYjP1ytSM30XOT6qN6faLO2CL/7j9D2UB69SKOqF3TJOvuNU6cweFgZCxyGfXBYIQ== - -"@nx/nx-linux-arm64-musl@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.3.2.tgz#4c139a23f321d9115f9e2c3ef7f55bc0363c2d39" - integrity sha512-HXthtN7adXCNVWs2F4wIqq2f7BcKTjsEnqg2LWV5lm4hRYvMfEvPftb0tECsEhcSQQYcvIJnLfv3vtu9HZSfVA== - -"@nx/nx-linux-x64-gnu@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.3.2.tgz#5935d5b71029284be63a9106b8bd50df1804c9e3" - integrity sha512-HhgHqOUT05H45zuQL+XPywQbRNFttd7Rkkr7dZnpCRdp4W8GDjfyKCoCS5qVyowAyNh9Vc7VEq9qmiLMlvf6Zg== - -"@nx/nx-linux-x64-musl@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.3.2.tgz#4d4ff695efaa1207de5b3354d8fe08341f4d004f" - integrity sha512-NrZ8L9of2GmYEM8GMJX6QRrLJlAwM+ds2rhdY1bxwpiyCNcD3IO/gzJlBs+kG4ly05F1u/X4k/FI5dXPpjUSgw== - -"@nx/nx-win32-arm64-msvc@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.3.2.tgz#992ce1f483a96075cdfd4b2b9c8ccb6c5e6144b2" - integrity sha512-yLjacZND7C1XmsC0jfRLSgeLWZUw2Oz+u3nXNvj5JX6YHtYTVLFnRbTAcI+pG2Y6v0Otf2GKb3VT5d1mQb8JvA== - -"@nx/nx-win32-x64-msvc@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.3.2.tgz#0508f0ea8ee0727f34dcadfecf6b7b4921484776" - integrity sha512-oDhcctfk0UB1V+Otp1161VKNMobzkFQxGyiEIjp0CjCBa2eRHC1r35L695F1Hj0bvLQPSni9XIe9evh2taeAkg== - -"@nx/workspace@20.3.2": - version "20.3.2" - resolved "https://registry.yarnpkg.com/@nx/workspace/-/workspace-20.3.2.tgz#b61b6c849cacd0f6ff8bd38819e2ee4d7545d8a6" - integrity sha512-Dj2AbG9X8Uo6k3XhcuNOblDgR/U8u5+x41hMNKHSG9Pi3CyAJ24didtn1SMf78GElzPOV94KJZmioGHw3rKyCg== - dependencies: - "@nx/devkit" "20.3.2" +"@nx/nx-darwin-arm64@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.3.3.tgz#ca71ec90a7f4c87053cd8d0a1c440942fecb2233" + integrity sha512-4C7ShMrqp1vbH1ZgvSlkt0f35hJcqKtRcf8n/tCck46rnMkj4egXi3K1dE6uQcOorwiD1ttAr0DHcI1TTqcNXw== + +"@nx/nx-darwin-x64@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-darwin-x64/-/nx-darwin-x64-20.3.3.tgz#d2ec9855359a14cb6dd6904eafde57c4e3fcabf4" + integrity sha512-OUtJ7gA09pJC+a+RcZf1bGbMM4T7a/IcPb97z1xOoxr5Wm2s8BGBQUW2CKJ5gCp5iI1pGo44F12u0G9gbYClow== + +"@nx/nx-freebsd-x64@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.3.3.tgz#7b812c484d4a5be2c188414a57063d32a9bbb42c" + integrity sha512-q4SABgKYWPGOcdfRZne6n8HF4CzltRL5nJ3q093jQAUO93yPXtWzhQBaKZIZr6aPoqq0/NuH6xY4gNo4w9F8Bg== + +"@nx/nx-linux-arm-gnueabihf@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.3.3.tgz#847455666dd40ada56849061109d6f4b6ba42b99" + integrity sha512-e07PJcVsBT/Aelo/Vj6hLplDZamGCZ3zOJpW3XVBhdG4DC4sn+jodsdrIASoEpmF70VB89lzQsm9GrAgQPaWOA== + +"@nx/nx-linux-arm64-gnu@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.3.3.tgz#17fe1e0df21cfbbe859eef0a449397666be4749a" + integrity sha512-1Z9chlN0/hWzliMer7TvdLT8cb6BKpGjZ15a+rQuUbO/CyLhY21Ct+lXtnaBERnNPYJpNOJlrbBDuF/9wpZ4CQ== + +"@nx/nx-linux-arm64-musl@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.3.3.tgz#4cf4927c2039df48b2d718e3bd61f3891384e3b5" + integrity sha512-RrLgujPU5NfDrsDRa7Y2isxGb8XkoQeJkTMUl1xmBK2Qnf4jAUn0PH0ULWrRMNgChi4nYUTn/Sf+2m6Uyoqcfw== + +"@nx/nx-linux-x64-gnu@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.3.3.tgz#82df37eaaca1af8b6949ca0babddc5b9f28dfd94" + integrity sha512-/WmCnPxv1eR8tyYiFp4XoMbcXrJ8a/OIw1rpZZ5ceMKgH8lPaF2/KFf04JZZygrCKletEdqqIojBXz4AHoaueQ== + +"@nx/nx-linux-x64-musl@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.3.3.tgz#109f5fb546ae4f191f214b4cf06620d480222f1c" + integrity sha512-y4BJsR0fgJrXY3P7GkWfUZAeQEHMTXvaRHvzJfBSBPmnVcVZDYNTfEQYnslp8m8ahKdlJwtflxzykJ4Bwf55fw== + +"@nx/nx-win32-arm64-msvc@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.3.3.tgz#8397db80440dbe5150c01f73c93e59393a7c37d2" + integrity sha512-BHqZitBaGT9ybv386B5QKxP5N66+xpTiYlKClzQ44o6Ca8QxnkugI64exBdcQyj+DRiL6HJhN14kaPJ1KrsKRA== + +"@nx/nx-win32-x64-msvc@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.3.3.tgz#82d2a1df984d8220882d9df38c92a8e1060bbebc" + integrity sha512-6HcbAKghEypt4aMAoDjPn2sa6FG0MyiDabpV/cVLKokK09ngyy6qQDa5vSCUSDwI542XBxqtcv0AcZi7Ez+XUQ== + +"@nx/workspace@20.3.3": + version "20.3.3" + resolved "https://registry.yarnpkg.com/@nx/workspace/-/workspace-20.3.3.tgz#62e8c74f77e2b8d8322c70d28f949c8abfcad931" + integrity sha512-eN7W9H2yLDZ4ZWegdS+pChdFETMUgjsLgvGijRpZONIguo6wR+aU2LhSfj2ww8JKNJ4rcSnOw4soaaHg2W3dTQ== + dependencies: + "@nx/devkit" "20.3.3" chalk "^4.1.0" enquirer "~2.3.6" - nx "20.3.2" + nx "20.3.3" tslib "^2.3.0" yargs-parser "21.1.1" @@ -2354,100 +2409,100 @@ estree-walker "^2.0.2" picomatch "^4.0.2" -"@rollup/rollup-android-arm-eabi@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.31.0.tgz#d4dd60da0075a6ce9a6c76d71b8204f3e1822285" - integrity sha512-9NrR4033uCbUBRgvLcBrJofa2KY9DzxL2UKZ1/4xA/mnTNyhZCWBuD8X3tPm1n4KxcgaraOYgrFKSgwjASfmlA== - -"@rollup/rollup-android-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.31.0.tgz#25c4d33259a7a2ccd2f52a5ffcc0bb3ab3f0729d" - integrity sha512-iBbODqT86YBFHajxxF8ebj2hwKm1k8PTBQSojSt3d1FFt1gN+xf4CowE47iN0vOSdnd+5ierMHBbu/rHc7nq5g== - -"@rollup/rollup-darwin-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.31.0.tgz#d137dff254b19163a6b52ac083a71cd055dae844" - integrity sha512-WHIZfXgVBX30SWuTMhlHPXTyN20AXrLH4TEeH/D0Bolvx9PjgZnn4H677PlSGvU6MKNsjCQJYczkpvBbrBnG6g== - -"@rollup/rollup-darwin-x64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.31.0.tgz#58ff20b5dacb797d3adca19f02a21c532f9d55bf" - integrity sha512-hrWL7uQacTEF8gdrQAqcDy9xllQ0w0zuL1wk1HV8wKGSGbKPVjVUv/DEwT2+Asabf8Dh/As+IvfdU+H8hhzrQQ== - -"@rollup/rollup-freebsd-arm64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.31.0.tgz#96ce1a241c591ec3e068f4af765d94eddb24e60c" - integrity sha512-S2oCsZ4hJviG1QjPY1h6sVJLBI6ekBeAEssYKad1soRFv3SocsQCzX6cwnk6fID6UQQACTjeIMB+hyYrFacRew== - -"@rollup/rollup-freebsd-x64@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.31.0.tgz#e59e7ede505be41f0b4311b0b943f8eb44938467" - integrity sha512-pCANqpynRS4Jirn4IKZH4tnm2+2CqCNLKD7gAdEjzdLGbH1iO0zouHz4mxqg0uEMpO030ejJ0aA6e1PJo2xrPA== - -"@rollup/rollup-linux-arm-gnueabihf@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.31.0.tgz#e455ca6e4ff35bd46d62201c153352e717000a7b" - integrity sha512-0O8ViX+QcBd3ZmGlcFTnYXZKGbFu09EhgD27tgTdGnkcYXLat4KIsBBQeKLR2xZDCXdIBAlWLkiXE1+rJpCxFw== - -"@rollup/rollup-linux-arm-musleabihf@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.31.0.tgz#bc1a93d807d19e70b1e343a5bfea43723bcd6327" - integrity sha512-w5IzG0wTVv7B0/SwDnMYmbr2uERQp999q8FMkKG1I+j8hpPX2BYFjWe69xbhbP6J9h2gId/7ogesl9hwblFwwg== - -"@rollup/rollup-linux-arm64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.31.0.tgz#f38bf843f1dc3d5de680caf31084008846e3efae" - integrity sha512-JyFFshbN5xwy6fulZ8B/8qOqENRmDdEkcIMF0Zz+RsfamEW+Zabl5jAb0IozP/8UKnJ7g2FtZZPEUIAlUSX8cA== - -"@rollup/rollup-linux-arm64-musl@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.31.0.tgz#b3987a96c18b7287129cf735be2dbf83e94d9d05" - integrity sha512-kpQXQ0UPFeMPmPYksiBL9WS/BDiQEjRGMfklVIsA0Sng347H8W2iexch+IEwaR7OVSKtr2ZFxggt11zVIlZ25g== - -"@rollup/rollup-linux-loongarch64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.31.0.tgz#0f0324044e71c4f02e9f49e7ec4e347b655b34ee" - integrity sha512-pMlxLjt60iQTzt9iBb3jZphFIl55a70wexvo8p+vVFK+7ifTRookdoXX3bOsRdmfD+OKnMozKO6XM4zR0sHRrQ== - -"@rollup/rollup-linux-powerpc64le-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.31.0.tgz#809479f27f1fd5b4eecd2aa732132ad952d454ba" - integrity sha512-D7TXT7I/uKEuWiRkEFbed1UUYZwcJDU4vZQdPTcepK7ecPhzKOYk4Er2YR4uHKme4qDeIh6N3XrLfpuM7vzRWQ== - -"@rollup/rollup-linux-riscv64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.31.0.tgz#7bc75c4f22db04d3c972f83431739cfa41c6a36e" - integrity sha512-wal2Tc8O5lMBtoePLBYRKj2CImUCJ4UNGJlLwspx7QApYny7K1cUYlzQ/4IGQBLmm+y0RS7dwc3TDO/pmcneTw== - -"@rollup/rollup-linux-s390x-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.31.0.tgz#cfe8052345c55864d83ae343362cf1912480170e" - integrity sha512-O1o5EUI0+RRMkK9wiTVpk2tyzXdXefHtRTIjBbmFREmNMy7pFeYXCFGbhKFwISA3UOExlo5GGUuuj3oMKdK6JQ== - -"@rollup/rollup-linux-x64-gnu@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.31.0.tgz#c6b048f1e25f3fea5b4bd246232f4d07a159c5a0" - integrity sha512-zSoHl356vKnNxwOWnLd60ixHNPRBglxpv2g7q0Cd3Pmr561gf0HiAcUBRL3S1vPqRC17Zo2CX/9cPkqTIiai1g== - -"@rollup/rollup-linux-x64-musl@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.31.0.tgz#615273ac52d1a201f4de191cbd3389016a9d7d80" - integrity sha512-ypB/HMtcSGhKUQNiFwqgdclWNRrAYDH8iMYH4etw/ZlGwiTVxBz2tDrGRrPlfZu6QjXwtd+C3Zib5pFqID97ZA== - -"@rollup/rollup-win32-arm64-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.31.0.tgz#32ed85810c1b831c648eca999d68f01255b30691" - integrity sha512-JuhN2xdI/m8Hr+aVO3vspO7OQfUFO6bKLIRTAy0U15vmWjnZDLrEgCZ2s6+scAYaQVpYSh9tZtRijApw9IXyMw== - -"@rollup/rollup-win32-ia32-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.31.0.tgz#d47effada68bcbfdccd30c4a788d42e4542ff4d3" - integrity sha512-U1xZZXYkvdf5MIWmftU8wrM5PPXzyaY1nGCI4KI4BFfoZxHamsIe+BtnPLIvvPykvQWlVbqUXdLa4aJUuilwLQ== - -"@rollup/rollup-win32-x64-msvc@4.31.0": - version "4.31.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.31.0.tgz#7a2d89a82cf0388d60304964217dd7beac6de645" - integrity sha512-ul8rnCsUumNln5YWwz0ted2ZHFhzhRRnkpBZ+YRuHoRAlUji9KChpOUOndY7uykrPEPXVbHLlsdo6v5yXo/TXw== +"@rollup/rollup-android-arm-eabi@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.32.0.tgz#42a8e897c7b656adb4edebda3a8b83a57526452f" + integrity sha512-G2fUQQANtBPsNwiVFg4zKiPQyjVKZCUdQUol53R8E71J7AsheRMV/Yv/nB8giOcOVqP7//eB5xPqieBYZe9bGg== + +"@rollup/rollup-android-arm64@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.32.0.tgz#846a73eef25b18ff94bac1e52acab6a7c7ac22fa" + integrity sha512-qhFwQ+ljoymC+j5lXRv8DlaJYY/+8vyvYmVx074zrLsu5ZGWYsJNLjPPVJJjhZQpyAKUGPydOq9hRLLNvh1s3A== + +"@rollup/rollup-darwin-arm64@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.32.0.tgz#014ed37f1f7809fdf3442a6b689d3a074a844058" + integrity sha512-44n/X3lAlWsEY6vF8CzgCx+LQaoqWGN7TzUfbJDiTIOjJm4+L2Yq+r5a8ytQRGyPqgJDs3Rgyo8eVL7n9iW6AQ== + +"@rollup/rollup-darwin-x64@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.32.0.tgz#dde6ed3e56d0b34477fa56c4a199abe5d4b9846b" + integrity sha512-F9ct0+ZX5Np6+ZDztxiGCIvlCaW87HBdHcozUfsHnj1WCUTBUubAoanhHUfnUHZABlElyRikI0mgcw/qdEm2VQ== + +"@rollup/rollup-freebsd-arm64@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.32.0.tgz#8ad634f462a6b7e338257cf64c7baff99618a08e" + integrity sha512-JpsGxLBB2EFXBsTLHfkZDsXSpSmKD3VxXCgBQtlPcuAqB8TlqtLcbeMhxXQkCDv1avgwNjF8uEIbq5p+Cee0PA== + +"@rollup/rollup-freebsd-x64@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.32.0.tgz#9d4d1dbbafcb0354d52ba6515a43c7511dba8052" + integrity sha512-wegiyBT6rawdpvnD9lmbOpx5Sph+yVZKHbhnSP9MqUEDX08G4UzMU+D87jrazGE7lRSyTRs6NEYHtzfkJ3FjjQ== + +"@rollup/rollup-linux-arm-gnueabihf@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.32.0.tgz#3bd5fcbab92a66e032faef1078915d1dbf27de7a" + integrity sha512-3pA7xecItbgOs1A5H58dDvOUEboG5UfpTq3WzAdF54acBbUM+olDJAPkgj1GRJ4ZqE12DZ9/hNS2QZk166v92A== + +"@rollup/rollup-linux-arm-musleabihf@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.32.0.tgz#a77838b9779931ce4fa01326b585eee130f51e60" + integrity sha512-Y7XUZEVISGyge51QbYyYAEHwpGgmRrAxQXO3siyYo2kmaj72USSG8LtlQQgAtlGfxYiOwu+2BdbPjzEpcOpRmQ== + +"@rollup/rollup-linux-arm64-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.32.0.tgz#ec1b1901b82d57a20184adb61c725dd8991a0bf0" + integrity sha512-r7/OTF5MqeBrZo5omPXcTnjvv1GsrdH8a8RerARvDFiDwFpDVDnJyByYM/nX+mvks8XXsgPUxkwe/ltaX2VH7w== + +"@rollup/rollup-linux-arm64-musl@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.32.0.tgz#7aa23b45bf489b7204b5a542e857e134742141de" + integrity sha512-HJbifC9vex9NqnlodV2BHVFNuzKL5OnsV2dvTw6e1dpZKkNjPG6WUq+nhEYV6Hv2Bv++BXkwcyoGlXnPrjAKXw== + +"@rollup/rollup-linux-loongarch64-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.32.0.tgz#7bf0ebd8c5ad08719c3b4786be561d67f95654a7" + integrity sha512-VAEzZTD63YglFlWwRj3taofmkV1V3xhebDXffon7msNz4b14xKsz7utO6F8F4cqt8K/ktTl9rm88yryvDpsfOw== + +"@rollup/rollup-linux-powerpc64le-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.32.0.tgz#e687dfcaf08124aafaaebecef0cc3986675cb9b6" + integrity sha512-Sts5DST1jXAc9YH/iik1C9QRsLcCoOScf3dfbY5i4kH9RJpKxiTBXqm7qU5O6zTXBTEZry69bGszr3SMgYmMcQ== + +"@rollup/rollup-linux-riscv64-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.32.0.tgz#19fce2594f9ce73d1cb0748baf8cd90a7bedc237" + integrity sha512-qhlXeV9AqxIyY9/R1h1hBD6eMvQCO34ZmdYvry/K+/MBs6d1nRFLm6BOiITLVI+nFAAB9kUB6sdJRKyVHXnqZw== + +"@rollup/rollup-linux-s390x-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.32.0.tgz#fd99b335bb65c59beb7d15ae82be0aafa9883c19" + integrity sha512-8ZGN7ExnV0qjXa155Rsfi6H8M4iBBwNLBM9lcVS+4NcSzOFaNqmt7djlox8pN1lWrRPMRRQ8NeDlozIGx3Omsw== + +"@rollup/rollup-linux-x64-gnu@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.32.0.tgz#4e8c697bbaa2e2d7212bd42086746c8275721166" + integrity sha512-VDzNHtLLI5s7xd/VubyS10mq6TxvZBp+4NRWoW+Hi3tgV05RtVm4qK99+dClwTN1McA6PHwob6DEJ6PlXbY83A== + +"@rollup/rollup-linux-x64-musl@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.32.0.tgz#0d2f74bd9cfe0553f20f056760a95b293e849ab2" + integrity sha512-qcb9qYDlkxz9DxJo7SDhWxTWV1gFuwznjbTiov289pASxlfGbaOD54mgbs9+z94VwrXtKTu+2RqwlSTbiOqxGg== + +"@rollup/rollup-win32-arm64-msvc@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.32.0.tgz#6534a09fcdd43103645155cedb5bfa65fbf2c23f" + integrity sha512-pFDdotFDMXW2AXVbfdUEfidPAk/OtwE/Hd4eYMTNVVaCQ6Yl8et0meDaKNL63L44Haxv4UExpv9ydSf3aSayDg== + +"@rollup/rollup-win32-ia32-msvc@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.32.0.tgz#8222ccfecffd63a6b0ddbe417d8d959e4f2b11b3" + integrity sha512-/TG7WfrCAjeRNDvI4+0AAMoHxea/USWhAzf9PVDFHbcqrQ7hMMKp4jZIy4VEjk72AAfN5k4TiSMRXRKf/0akSw== + +"@rollup/rollup-win32-x64-msvc@4.32.0": + version "4.32.0" + resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.32.0.tgz#1a40b4792c08094b6479c48c90fe7f4b10ec2f54" + integrity sha512-5hqO5S3PTEO2E5VjCePxv40gIgyS2KvO7E7/vvC/NbIW4SIRamkMr1hqj+5Y67fbBWv/bQLB6KelBQmXlyCjWA== "@rtsao/scc@^1.1.0": version "1.1.0" @@ -2520,74 +2575,74 @@ source-map-support "^0.5.21" tslib "^2.6.3" -"@swc/core-darwin-arm64@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.10.8.tgz#5d897f83c91e1d7ac66442a80e8270cf3a3d7297" - integrity sha512-FtacTu9zS5YuepujQqujveNw8BQ8ESJ+pN1Z7C+WrKCHlCl+5dh0n6gMAlEj+3iRvY6UAYqkzTVeiX/bOMoJKA== - -"@swc/core-darwin-x64@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.10.8.tgz#e59fa374fbf086068e1bdd516b1e436c5d34d8b1" - integrity sha512-nfk+iq7EKQwADaCERzZLSi9ovzjJcqDWaO4e2ztyCNaLFi6fP1m6+ij21aki5KAd8AXoY4fue4Mo2fuYbesX9Q== - -"@swc/core-linux-arm-gnueabihf@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.10.8.tgz#2b8c9bdc539d96ef18e78e05803aca97d53a8278" - integrity sha512-CL2zfbnrEc6nIiWbgshOz0mjn/zY8JcYqO12vGcTxmZOrh0n+mmHN2ejX91pYWQnQDtbhCmFTaEndExFpA7Gww== - -"@swc/core-linux-arm64-gnu@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.10.8.tgz#63529299e95ef00fb5a8deb090c9cf7a00b9122d" - integrity sha512-quS8F18DDScW3B7qnbWkz95abZ5p0xp/W8N498NAAls/YQj4jQIlf8WlAWoxVVjY/SmSus5kN5tuwhHD8t0NPw== - -"@swc/core-linux-arm64-musl@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.10.8.tgz#53f07e06d82ca14c060f8683a9eff03d9bce0bd0" - integrity sha512-wI0Hny8fHbBK/OjJ7eFYP0uDKiCMMMr5OBWGKMRRUvWs2zlGeJQZbwUeCnWuLLXzDfL+feMfh5TieYlqKTTtRw== - -"@swc/core-linux-x64-gnu@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.10.8.tgz#3509eccae36a919492233815e04f53b5dc012139" - integrity sha512-24FCRUFO8gzPP2eu3soHTm3lk+ktcsIhdM2DTOlXGA+2TBYFWgAZX/yZV+eeRrtIZYSr4OcOWsNWnQ5Ma4budA== - -"@swc/core-linux-x64-musl@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.10.8.tgz#8ecb569841261ed3eab643f95dc2963fd617a871" - integrity sha512-mBo7M/FmUhoWpUG17MLbS98iRA7t6ThxQBWDJZd322whkN1GqrvumYm2wvvjmoMTeDOPwAL3hIIa5H+Q4vb1zA== - -"@swc/core-win32-arm64-msvc@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.10.8.tgz#797b5f5f56b5193a379742061f277d8f592e4b6d" - integrity sha512-rXJ9y77JZZXoZkgFR0mObKa3TethRBJ6Exs/pwhScl9pz4qsfxhj/bQbEu1g1i/ihmd0l+IKZwGSC7Ibh3HA2Q== - -"@swc/core-win32-ia32-msvc@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.10.8.tgz#582b836ae81e385e8a942207b4e91d49e8de8db2" - integrity sha512-n6ekYFJEBPvTpRIqJiu6EHXVzVnuCtDTpFnn/0KVGJI1yQHriGVEovnb/+qyLh8Rwx2AZM9qgZVgMhVtfcFQJg== - -"@swc/core-win32-x64-msvc@1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.10.8.tgz#4f9cb14f53362c4f026a1b8e385e4901f9e64005" - integrity sha512-vplXxtH/lFc/epELnAyvdCvqlDJrM+OKtkphYcbPqq50g/dEZYZ8FYHU5Df9Uo19UooWSo1LaxPk4R7n6i1Axw== - -"@swc/core@~1.10.8": - version "1.10.8" - resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.10.8.tgz#7495a96313a8d3a96398015fa0affa268ff6736b" - integrity sha512-I3G+n9qbHNu6KNraaAG1+Z1S1x5S7MGRA6OEppT8Pt3Z9uD5a/kYAGU33eXy7zY+BoKuKA2X1H0r4vSimAgU8w== +"@swc/core-darwin-arm64@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.10.11.tgz#37e79f35f1d0226465d4b5fe8e1c957e35661bd5" + integrity sha512-ZpgEaNcx2e5D+Pd0yZGVbpSrEDOEubn7r2JXoNBf0O85lPjUm3HDzGRfLlV/MwxRPAkwm93eLP4l7gYnc50l3g== + +"@swc/core-darwin-x64@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.10.11.tgz#da0354121088d73808634efb213a264400587c8f" + integrity sha512-szObinnq2o7spXMDU5pdunmUeLrfV67Q77rV+DyojAiGJI1RSbEQotLOk+ONOLpoapwGUxOijFG4IuX1xiwQ2g== + +"@swc/core-linux-arm-gnueabihf@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.10.11.tgz#4357c4f8fd1a4d53020c2e5caf048ff5ca134eec" + integrity sha512-tVE8aXQwd8JUB9fOGLawFJa76nrpvp3dvErjozMmWSKWqtoeO7HV83aOrVtc8G66cj4Vq7FjTE9pOJeV1FbKRw== + +"@swc/core-linux-arm64-gnu@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.10.11.tgz#2b92ddb2500c1292a999fc617044bed8318ac0dc" + integrity sha512-geFkENU5GMEKO7FqHOaw9HVlpQEW10nICoM6ubFc0hXBv8dwRXU4vQbh9s/isLSFRftw1m4jEEWixAnXSw8bxQ== + +"@swc/core-linux-arm64-musl@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.10.11.tgz#8545fd335bd5234522bc23a8a11582ff549e26eb" + integrity sha512-2mMscXe/ivq8c4tO3eQSbQDFBvagMJGlalXCspn0DgDImLYTEnt/8KHMUMGVfh0gMJTZ9q4FlGLo7mlnbx99MQ== + +"@swc/core-linux-x64-gnu@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.10.11.tgz#79e94f3d59e29016c8294d401d8b35bc13d6586a" + integrity sha512-eu2apgDbC4xwsigpl6LS+iyw6a3mL6kB4I+6PZMbFF2nIb1Dh7RGnu70Ai6mMn1o80fTmRSKsCT3CKMfVdeNFg== + +"@swc/core-linux-x64-musl@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.10.11.tgz#edceb8cf38ad00d82db56349b919d4482bc5ba96" + integrity sha512-0n+wPWpDigwqRay4IL2JIvAqSKCXv6nKxPig9M7+epAlEQlqX+8Oq/Ap3yHtuhjNPb7HmnqNJLCXT1Wx+BZo0w== + +"@swc/core-win32-arm64-msvc@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.10.11.tgz#000e82ccd079a7eab382b9124b216e2310d7d013" + integrity sha512-7+bMSIoqcbXKosIVd314YjckDRPneA4OpG1cb3/GrkQTEDXmWT3pFBBlJf82hzJfw7b6lfv6rDVEFBX7/PJoLA== + +"@swc/core-win32-ia32-msvc@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.10.11.tgz#6138bdf97a221d2194f4181bf87255063520210d" + integrity sha512-6hkLl4+3KjP/OFTryWxpW7YFN+w4R689TSPwiII4fFgsFNupyEmLWWakKfkGgV2JVA59L4Oi02elHy/O1sbgtw== + +"@swc/core-win32-x64-msvc@1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.10.11.tgz#d1571d46a5c0efe17ef12898bc605e301d266b2d" + integrity sha512-kKNE2BGu/La2k2WFHovenqZvGQAHRIU+rd2/6a7D6EiQ6EyimtbhUqjCCZ+N1f5fIAnvM+sMdLiQJq4jdd/oOQ== + +"@swc/core@~1.10.11": + version "1.10.11" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.10.11.tgz#cbc72a940b127dd6313b5c6c5ab67a746cd39751" + integrity sha512-3zGU5y3S20cAwot9ZcsxVFNsSVaptG+dKdmAxORSE3EX7ixe1Xn5kUwLlgIsM4qrwTUWCJDLNhRS+2HLFivcDg== dependencies: "@swc/counter" "^0.1.3" "@swc/types" "^0.1.17" optionalDependencies: - "@swc/core-darwin-arm64" "1.10.8" - "@swc/core-darwin-x64" "1.10.8" - "@swc/core-linux-arm-gnueabihf" "1.10.8" - "@swc/core-linux-arm64-gnu" "1.10.8" - "@swc/core-linux-arm64-musl" "1.10.8" - "@swc/core-linux-x64-gnu" "1.10.8" - "@swc/core-linux-x64-musl" "1.10.8" - "@swc/core-win32-arm64-msvc" "1.10.8" - "@swc/core-win32-ia32-msvc" "1.10.8" - "@swc/core-win32-x64-msvc" "1.10.8" + "@swc/core-darwin-arm64" "1.10.11" + "@swc/core-darwin-x64" "1.10.11" + "@swc/core-linux-arm-gnueabihf" "1.10.11" + "@swc/core-linux-arm64-gnu" "1.10.11" + "@swc/core-linux-arm64-musl" "1.10.11" + "@swc/core-linux-x64-gnu" "1.10.11" + "@swc/core-linux-x64-musl" "1.10.11" + "@swc/core-win32-arm64-msvc" "1.10.11" + "@swc/core-win32-ia32-msvc" "1.10.11" + "@swc/core-win32-x64-msvc" "1.10.11" "@swc/counter@^0.1.3": version "0.1.3" @@ -2821,10 +2876,10 @@ dependencies: "@types/node" "*" -"@types/node@*", "@types/node@>= 8", "@types/node@>=10.0.0", "@types/node@^22.10.7", "@types/node@^22.5.5": - version "22.10.7" - resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.7.tgz#14a1ca33fd0ebdd9d63593ed8d3fbc882a6d28d7" - integrity sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg== +"@types/node@*", "@types/node@>= 8", "@types/node@>=10.0.0", "@types/node@^22.10.10", "@types/node@^22.5.5": + version "22.10.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.10.10.tgz#85fe89f8bf459dc57dfef1689bd5b52ad1af07e6" + integrity sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww== dependencies: undici-types "~6.20.0" @@ -2933,62 +2988,62 @@ dependencies: "@types/node" "*" -"@typescript-eslint/eslint-plugin@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.20.0.tgz#b47a398e0e551cb008c60190b804394e6852c863" - integrity sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A== +"@typescript-eslint/eslint-plugin@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.21.0.tgz#395014a75112ecdb81142b866ab6bb62e3be0f2a" + integrity sha512-eTH+UOR4I7WbdQnG4Z48ebIA6Bgi7WO8HvFEneeYBxG8qCOYgTOFPSg6ek9ITIDvGjDQzWHcoWHCDO2biByNzA== dependencies: "@eslint-community/regexpp" "^4.10.0" - "@typescript-eslint/scope-manager" "8.20.0" - "@typescript-eslint/type-utils" "8.20.0" - "@typescript-eslint/utils" "8.20.0" - "@typescript-eslint/visitor-keys" "8.20.0" + "@typescript-eslint/scope-manager" "8.21.0" + "@typescript-eslint/type-utils" "8.21.0" + "@typescript-eslint/utils" "8.21.0" + "@typescript-eslint/visitor-keys" "8.21.0" graphemer "^1.4.0" ignore "^5.3.1" natural-compare "^1.4.0" ts-api-utils "^2.0.0" -"@typescript-eslint/parser@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.20.0.tgz#5caf2230a37094dc0e671cf836b96dd39b587ced" - integrity sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g== +"@typescript-eslint/parser@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-8.21.0.tgz#312c638aaba4f640d45bfde7c6795a9d75deb088" + integrity sha512-Wy+/sdEH9kI3w9civgACwabHbKl+qIOu0uFZ9IMKzX3Jpv9og0ZBJrZExGrPpFAY7rWsXuxs5e7CPPP17A4eYA== dependencies: - "@typescript-eslint/scope-manager" "8.20.0" - "@typescript-eslint/types" "8.20.0" - "@typescript-eslint/typescript-estree" "8.20.0" - "@typescript-eslint/visitor-keys" "8.20.0" + "@typescript-eslint/scope-manager" "8.21.0" + "@typescript-eslint/types" "8.21.0" + "@typescript-eslint/typescript-estree" "8.21.0" + "@typescript-eslint/visitor-keys" "8.21.0" debug "^4.3.4" -"@typescript-eslint/scope-manager@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.20.0.tgz#aaf4198b509fb87a6527c02cfbfaf8901179e75c" - integrity sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw== +"@typescript-eslint/scope-manager@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-8.21.0.tgz#d08d94e2a34b4ccdcc975543c25bb62917437500" + integrity sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA== dependencies: - "@typescript-eslint/types" "8.20.0" - "@typescript-eslint/visitor-keys" "8.20.0" + "@typescript-eslint/types" "8.21.0" + "@typescript-eslint/visitor-keys" "8.21.0" -"@typescript-eslint/type-utils@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.20.0.tgz#958171d86b213a3f32b5b16b91db267968a4ef19" - integrity sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA== +"@typescript-eslint/type-utils@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-8.21.0.tgz#2e69d1a93cdbedc73fe694cd6ae4dfedd00430a0" + integrity sha512-95OsL6J2BtzoBxHicoXHxgk3z+9P3BEcQTpBKriqiYzLKnM2DeSqs+sndMKdamU8FosiadQFT3D+BSL9EKnAJQ== dependencies: - "@typescript-eslint/typescript-estree" "8.20.0" - "@typescript-eslint/utils" "8.20.0" + "@typescript-eslint/typescript-estree" "8.21.0" + "@typescript-eslint/utils" "8.21.0" debug "^4.3.4" ts-api-utils "^2.0.0" -"@typescript-eslint/types@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.20.0.tgz#487de5314b5415dee075e95568b87a75a3e730cf" - integrity sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA== +"@typescript-eslint/types@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-8.21.0.tgz#58f30aec8db8212fd886835dc5969cdf47cb29f5" + integrity sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A== -"@typescript-eslint/typescript-estree@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.20.0.tgz#658cea07b7e5981f19bce5cf1662cb70ad59f26b" - integrity sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA== +"@typescript-eslint/typescript-estree@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.21.0.tgz#5ce71acdbed3b97b959f6168afba5a03c88f69a9" + integrity sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg== dependencies: - "@typescript-eslint/types" "8.20.0" - "@typescript-eslint/visitor-keys" "8.20.0" + "@typescript-eslint/types" "8.21.0" + "@typescript-eslint/visitor-keys" "8.21.0" debug "^4.3.4" fast-glob "^3.3.2" is-glob "^4.0.3" @@ -2996,28 +3051,28 @@ semver "^7.6.0" ts-api-utils "^2.0.0" -"@typescript-eslint/utils@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.20.0.tgz#53127ecd314b3b08836b4498b71cdb86f4ef3aa2" - integrity sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA== +"@typescript-eslint/utils@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-8.21.0.tgz#bc4874fbc30feb3298b926e3b03d94570b3999c5" + integrity sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw== dependencies: "@eslint-community/eslint-utils" "^4.4.0" - "@typescript-eslint/scope-manager" "8.20.0" - "@typescript-eslint/types" "8.20.0" - "@typescript-eslint/typescript-estree" "8.20.0" + "@typescript-eslint/scope-manager" "8.21.0" + "@typescript-eslint/types" "8.21.0" + "@typescript-eslint/typescript-estree" "8.21.0" -"@typescript-eslint/visitor-keys@8.20.0": - version "8.20.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.20.0.tgz#2df6e24bc69084b81f06aaaa48d198b10d382bed" - integrity sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA== +"@typescript-eslint/visitor-keys@8.21.0": + version "8.21.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.21.0.tgz#a89744c4cdc83b5c761eb5878befe6c33d1481b2" + integrity sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w== dependencies: - "@typescript-eslint/types" "8.20.0" + "@typescript-eslint/types" "8.21.0" eslint-visitor-keys "^4.2.0" -"@vitest/coverage-v8@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-3.0.3.tgz#8e7339b0b2ec36b0d1facd43f73d96ce185301bf" - integrity sha512-uVbJ/xhImdNtzPnLyxCZJMTeTIYdgcC2nWtBBBpR1H6z0w8m7D+9/zrDIx2nNxgMg9r+X8+RY2qVpUDeW2b3nw== +"@vitest/coverage-v8@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/coverage-v8/-/coverage-v8-3.0.4.tgz#01b2d295cf664be9545228f364fa6495bc066a45" + integrity sha512-f0twgRCHgbs24Dp8cLWagzcObXMcuKtAwgxjJV/nnysPAJJk1JiKu/W0gIehZLmkljhJXU/E0/dmuQzsA/4jhA== dependencies: "@ampproject/remapping" "^2.3.0" "@bcoe/v8-coverage" "^1.0.2" @@ -3037,22 +3092,22 @@ resolved "https://registry.yarnpkg.com/@vitest/eslint-plugin/-/eslint-plugin-1.1.25.tgz#0e2ed719844b52edc88a0467f11f80162ebbebf0" integrity sha512-u8DpDnMbPcqBmJOB4PeEtn6q7vKmLVTLFMpzoxSAo0hjYdl4iYSHRleqwPQo0ywc7UV0S6RKIahYRQ3BnZdMVw== -"@vitest/expect@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-3.0.3.tgz#a83af04a68e70a9af8aa6f68442a696b4bc599c5" - integrity sha512-SbRCHU4qr91xguu+dH3RUdI5dC86zm8aZWydbp961aIR7G8OYNN6ZiayFuf9WAngRbFOfdrLHCGgXTj3GtoMRQ== +"@vitest/expect@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-3.0.4.tgz#95c0a73980e99a30d3994c35b4468c4bb257d093" + integrity sha512-Nm5kJmYw6P2BxhJPkO3eKKhGYKRsnqJqf+r0yOGRKpEP+bSCBDsjXgiu1/5QFrnPMEgzfC38ZEjvCFgaNBC0Eg== dependencies: - "@vitest/spy" "3.0.3" - "@vitest/utils" "3.0.3" + "@vitest/spy" "3.0.4" + "@vitest/utils" "3.0.4" chai "^5.1.2" tinyrainbow "^2.0.0" -"@vitest/mocker@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-3.0.3.tgz#f63a7e2e93fecaab1046038f3a9f60ea6b369173" - integrity sha512-XT2XBc4AN9UdaxJAeIlcSZ0ILi/GzmG5G8XSly4gaiqIvPV3HMTSIDZWJVX6QRJ0PX1m+W8Cy0K9ByXNb/bPIA== +"@vitest/mocker@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-3.0.4.tgz#91eba38f720d47aa708d1bcc5e4c7d885b1fc435" + integrity sha512-gEef35vKafJlfQbnyOXZ0Gcr9IBUsMTyTLXsEQwuyYAerpHqvXhzdBnDFuHLpFqth3F7b6BaFr4qV/Cs1ULx5A== dependencies: - "@vitest/spy" "3.0.3" + "@vitest/spy" "3.0.4" estree-walker "^3.0.3" magic-string "^0.30.17" @@ -3063,29 +3118,29 @@ dependencies: tinyrainbow "^1.2.0" -"@vitest/pretty-format@3.0.3", "@vitest/pretty-format@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-3.0.3.tgz#4bd59463d1c944c22287c3da2060785269098183" - integrity sha512-gCrM9F7STYdsDoNjGgYXKPq4SkSxwwIU5nkaQvdUxiQ0EcNlez+PdKOVIsUJvh9P9IeIFmjn4IIREWblOBpP2Q== +"@vitest/pretty-format@3.0.4", "@vitest/pretty-format@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-3.0.4.tgz#18d5da3bad9a0eebf49f5c5daa84d0d5f7d2bbfa" + integrity sha512-ts0fba+dEhK2aC9PFuZ9LTpULHpY/nd6jhAQ5IMU7Gaj7crPCTdCFfgvXxruRBLFS+MLraicCuFXxISEq8C93g== dependencies: tinyrainbow "^2.0.0" -"@vitest/runner@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-3.0.3.tgz#c123e3225ccdd52c5a8e45edb59340ec8dcb6df2" - integrity sha512-Rgi2kOAk5ZxWZlwPguRJFOBmWs6uvvyAAR9k3MvjRvYrG7xYvKChZcmnnpJCS98311CBDMqsW9MzzRFsj2gX3g== +"@vitest/runner@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-3.0.4.tgz#5bdc965c32721c7cf025481124f73589deea313a" + integrity sha512-dKHzTQ7n9sExAcWH/0sh1elVgwc7OJ2lMOBrAm73J7AH6Pf9T12Zh3lNE1TETZaqrWFXtLlx3NVrLRb5hCK+iw== dependencies: - "@vitest/utils" "3.0.3" - pathe "^2.0.1" + "@vitest/utils" "3.0.4" + pathe "^2.0.2" -"@vitest/snapshot@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-3.0.3.tgz#a20a8cfa0e7434ef94f4dff40d946a57922119de" - integrity sha512-kNRcHlI4txBGztuJfPEJ68VezlPAXLRT1u5UCx219TU3kOG2DplNxhWLwDf2h6emwmTPogzLnGVwP6epDaJN6Q== +"@vitest/snapshot@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-3.0.4.tgz#7e64c19ca1ab9abb2f01fd246817b5f0404798fd" + integrity sha512-+p5knMLwIk7lTQkM3NonZ9zBewzVp9EVkVpvNta0/PlFWpiqLaRcF4+33L1it3uRUCh0BGLOaXPPGEjNKfWb4w== dependencies: - "@vitest/pretty-format" "3.0.3" + "@vitest/pretty-format" "3.0.4" magic-string "^0.30.17" - pathe "^2.0.1" + pathe "^2.0.2" "@vitest/snapshot@^2.0.5", "@vitest/snapshot@^2.1.1": version "2.1.8" @@ -3096,48 +3151,48 @@ magic-string "^0.30.12" pathe "^1.1.2" -"@vitest/spy@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-3.0.3.tgz#ea4e5f7f8b3513e3ac0e556557e4ed339edc82e8" - integrity sha512-7/dgux8ZBbF7lEIKNnEqQlyRaER9nkAL9eTmdKJkDO3hS8p59ATGwKOCUDHcBLKr7h/oi/6hP+7djQk8049T2A== +"@vitest/spy@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-3.0.4.tgz#966fd3422ba093568a6a33c437751a91061f8622" + integrity sha512-sXIMF0oauYyUy2hN49VFTYodzEAu744MmGcPR3ZBsPM20G+1/cSW/n1U+3Yu/zHxX2bIDe1oJASOkml+osTU6Q== dependencies: tinyspy "^3.0.2" -"@vitest/ui@^3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-3.0.3.tgz#5dd455981935172eda4a9a4979f589b33bbcbd09" - integrity sha512-kGavHxFA3dETa61mgzdvxc3u/JSCiHR2o/0Z99IE8EAwtFxSLZeb2MofPKNVCPY3IAIcTx4blH57BJ1GuiRAUA== +"@vitest/ui@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/ui/-/ui-3.0.4.tgz#751e5ec7e00201adeb0a75a07e57f34c9c9b6eb4" + integrity sha512-e+s2F9e9FUURkZ5aFIe1Fi3Y8M7UF6gEuShcaV/ur7y/Ldri+1tzWQ1TJq9Vas42NXnXvCAIrU39Z4U2RyET6g== dependencies: - "@vitest/utils" "3.0.3" + "@vitest/utils" "3.0.4" fflate "^0.8.2" flatted "^3.3.2" - pathe "^2.0.1" + pathe "^2.0.2" sirv "^3.0.0" tinyglobby "^0.2.10" tinyrainbow "^2.0.0" -"@vitest/utils@3.0.3": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-3.0.3.tgz#25d5a2e0cd0b5529132b76482fd48139ca56c197" - integrity sha512-f+s8CvyzPtMFY1eZKkIHGhPsQgYo5qCm6O8KZoim9qm1/jT64qBgGpO5tHscNH6BzRHM+edLNOP+3vO8+8pE/A== +"@vitest/utils@3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-3.0.4.tgz#9dd2336170097b20a6e5b778bb5ea7786cc56008" + integrity sha512-8BqC1ksYsHtbWH+DfpOAKrFw3jl3Uf9J7yeFh85Pz52IWuh1hBBtyfEbRNNZNjl8H8A5yMLH9/t+k7HIKzQcZQ== dependencies: - "@vitest/pretty-format" "3.0.3" + "@vitest/pretty-format" "3.0.4" loupe "^3.1.2" tinyrainbow "^2.0.0" -"@wdio/cli@^9.5.7": - version "9.5.7" - resolved "https://registry.yarnpkg.com/@wdio/cli/-/cli-9.5.7.tgz#599a4f4da38e6184aff12f790be99dc0328ddb9e" - integrity sha512-Wn2Njfl7Te01JXcBkcyn5bV2V4NXUzzyaezpIAISqf4mIRUSy9OO/tdXS/qpRjK3U3hQSsLrXs9JeTGrL5/5+Q== +"@wdio/cli@^9.7.1": + version "9.7.1" + resolved "https://registry.yarnpkg.com/@wdio/cli/-/cli-9.7.1.tgz#afe3d9d0e3985bee022e1bd4d738008cfcdd9f2b" + integrity sha512-oPCmjle4+UEFs2WAql3HQNfRgTu3orwb139jt79cS9XtNtGku4iiAgD/lND+c555TnVJin2BWdu1D4kZdCTVBw== dependencies: "@types/node" "^20.1.1" "@vitest/snapshot" "^2.1.1" - "@wdio/config" "9.5.0" - "@wdio/globals" "9.5.7" + "@wdio/config" "9.6.4" + "@wdio/globals" "9.7.1" "@wdio/logger" "9.4.4" - "@wdio/protocols" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/protocols" "9.7.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" async-exit-hook "^2.0.1" chalk "^5.2.0" chokidar "^4.0.0" @@ -3152,7 +3207,7 @@ read-pkg-up "^10.0.0" recursive-readdir "^2.2.3" tsx "^4.7.2" - webdriverio "9.5.7" + webdriverio "9.7.1" yargs "^17.7.2" "@wdio/config@7.19.5": @@ -3165,36 +3220,45 @@ deepmerge "^4.0.0" glob "^7.1.2" -"@wdio/config@9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/config/-/config-9.5.0.tgz#cb40bd5cff20d57104e627663d31481c00891d28" - integrity sha512-ty0laZy9J6pYpPd9BzNS4/P9RcRFCQfiacQuJFCkaM0NXjOtkWnyMnrqLP09nyUEQYhOGwANwShbsS+EaUkmSQ== +"@wdio/config@9.6.4": + version "9.6.4" + resolved "https://registry.yarnpkg.com/@wdio/config/-/config-9.6.4.tgz#9765ea4e959532865e8dcbc09ea5af295b480a9b" + integrity sha512-oTNXVVzaZ0qaM7oX8tyS3YBr4A3ij2py3Umew3ez0IS2vHpRs1LvLfVWoHRSqrhJIVnfjV3+zqcl9BWALNVD/g== dependencies: "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" deepmerge-ts "^7.0.3" glob "^10.2.2" import-meta-resolve "^4.0.0" -"@wdio/globals@9.5.7": - version "9.5.7" - resolved "https://registry.yarnpkg.com/@wdio/globals/-/globals-9.5.7.tgz#1848bbffe91fcc1eadaaee30a0c832bd7f3b7bdd" - integrity sha512-Ipl7GR/8RzRqPehOe4ngCFvMzDaVi9vuBcVa/LDbPP8/UUcjGWHbNH2J8pMdu/z3eF3U5MIHnOa9YNSs1jKJ0g== +"@wdio/dot-reporter@9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@wdio/dot-reporter/-/dot-reporter-9.6.3.tgz#b492f7c2c4bd564686ba465d60411229ad1d1724" + integrity sha512-/54vTrG08Q66QFFvw96SrdKpqhFknucdKZZj5rN8h5/e5zT+nl7BXUvCkXy6eEP9CCR+DOYLvA2sXZjoArG6xw== + dependencies: + "@wdio/reporter" "9.6.3" + "@wdio/types" "9.6.3" + chalk "^5.0.1" + +"@wdio/globals@9.7.1": + version "9.7.1" + resolved "https://registry.yarnpkg.com/@wdio/globals/-/globals-9.7.1.tgz#a0bbaa82aa49dc2616e20436e236d7e63779dbb8" + integrity sha512-o3Zaiyi/amH3VF+D2+lB+UXcaksWx44SIIVZjkgYgHsKAnmrv04JfkneQo+x05J/vNc+BM6jwTgTAtmkfF/t5w== optionalDependencies: expect-webdriverio "^5.0.1" - webdriverio "9.5.7" + webdriverio "9.7.1" -"@wdio/local-runner@^9.5.7": - version "9.5.7" - resolved "https://registry.yarnpkg.com/@wdio/local-runner/-/local-runner-9.5.7.tgz#7db1d0fdf365fbd95e6470baa3e45d9b80dc63bb" - integrity sha512-d69dDBEOH2aPKy7ADiKsWDAlH1LAjXyl8NI6FO/GyBS2zmEHs3tCMZDr1MlHkime7gCqCPNJnZgFEVMrmqM2Zg== +"@wdio/local-runner@^9.7.1": + version "9.7.1" + resolved "https://registry.yarnpkg.com/@wdio/local-runner/-/local-runner-9.7.1.tgz#118d5882c68099ca4a8a585e6da4f58ef8d18db0" + integrity sha512-VgSEo9/Z7byTdtjQyUryr4nCIY/1/Du8VkSoyW641+2+QQR5XvhcbU5TIdOfaplj7Bvearfl8S3h8E7swN0L/Q== dependencies: "@types/node" "^20.1.0" "@wdio/logger" "9.4.4" "@wdio/repl" "9.4.4" - "@wdio/runner" "9.5.7" - "@wdio/types" "9.5.0" + "@wdio/runner" "9.7.1" + "@wdio/types" "9.6.3" async-exit-hook "^2.0.1" split2 "^4.1.0" stream-buffers "^3.0.2" @@ -3219,16 +3283,16 @@ loglevel-plugin-prefix "^0.8.4" strip-ansi "^7.1.0" -"@wdio/mocha-framework@^9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/mocha-framework/-/mocha-framework-9.5.0.tgz#7cdd15babcbff19bae788bdc9d949cb58a007c64" - integrity sha512-bHzgPJeik9z4OBZ4LGLPouzE5KiQflx/EvNJL6iIZkvmoBbWAeSROzjNok6y+PWN4SykHwtTuRs+vXUBINKulg== +"@wdio/mocha-framework@^9.6.4": + version "9.6.4" + resolved "https://registry.yarnpkg.com/@wdio/mocha-framework/-/mocha-framework-9.6.4.tgz#f92a6c282ba636facf21c468fa8d8e0556e37c2f" + integrity sha512-8TqCIKGz5CkA2uSJSLXLLjINCeZ/UGvegZiB82Fr9hO3RvirPXbYVV+P6vqB9jqSACZ5kxX22cTUhqXgFxUjyQ== dependencies: "@types/mocha" "^10.0.6" "@types/node" "^20.11.28" "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" mocha "^10.3.0" "@wdio/protocols@7.19.0": @@ -3236,10 +3300,10 @@ resolved "https://registry.yarnpkg.com/@wdio/protocols/-/protocols-7.19.0.tgz#cd753752c64b9c1dd7ace05398c1d11c46af41ab" integrity sha512-ji74rQag6v+INSNd0J8eAh2rpH5vOXgeiP5Qr32K6PWU6HzYWuAFH2x4srXsH0JawHCdTK2OQAOYrLmMb44hug== -"@wdio/protocols@9.4.4": - version "9.4.4" - resolved "https://registry.yarnpkg.com/@wdio/protocols/-/protocols-9.4.4.tgz#f8144e671b581478374abfebea6c5ad19c4edb20" - integrity sha512-IqbAWe5feY3xOwjbiW/2iwcbDU+nm5CX5Om835mxaNWqEoQiaZuTin4YgtgsPeSEBcSFtQ+2ooswr/6vIZdxSw== +"@wdio/protocols@9.7.0": + version "9.7.0" + resolved "https://registry.yarnpkg.com/@wdio/protocols/-/protocols-9.7.0.tgz#2f2c0a7e371d65305e0d64980f63caa98ba5a4de" + integrity sha512-5DI8cqJqT9K6oQn8UpaSTmcGAl4ufkUWC5FoPT3oXdLjILfxvweZDf/2XNBCbGMk4+VOMKqB2ofOqKhDIB2nAg== "@wdio/repl@7.19.5": version "7.19.5" @@ -3255,62 +3319,63 @@ dependencies: "@types/node" "^20.1.0" -"@wdio/reporter@9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/reporter/-/reporter-9.5.0.tgz#f7577d31a1b38f70d4dc3414c1831c6e78b8f5eb" - integrity sha512-ycdbU97tDT7RCgutM+fSwbd0FIab821BAc0hYopCkB0FIooHUjIjvXmh0QichasS5a21tGe0UXfCcnn1S6V6Fw== +"@wdio/reporter@9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@wdio/reporter/-/reporter-9.6.3.tgz#c9693893fd980211f849fd9a1c578d149f919e69" + integrity sha512-OwuwhRtqDZDPU8/6TBSMg+bvw9DKgUVfGu160zamBt8jPg8LZ5VU2VoZlRBNZMAHl3OnSwj+ih2/meEoLf3DUg== dependencies: "@types/node" "^20.1.0" "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" + "@wdio/types" "9.6.3" diff "^7.0.0" object-inspect "^1.12.0" -"@wdio/runner@9.5.7": - version "9.5.7" - resolved "https://registry.yarnpkg.com/@wdio/runner/-/runner-9.5.7.tgz#cbc1c37a05bf7cfb9d5399857c9a811870cd245e" - integrity sha512-yl6p9VgCoPRYyd5JGroWS14wm01aM97T6Ona42unUXnkhR0YM7GH2PSycguT4yBOAIry/y2tH7JwObh3hXCjGQ== +"@wdio/runner@9.7.1": + version "9.7.1" + resolved "https://registry.yarnpkg.com/@wdio/runner/-/runner-9.7.1.tgz#078bad6d7b60c372f532a599c24d599ea0187812" + integrity sha512-S3MFpAS9LtMCLYH2Vt+AGmRjakGH5DVn96GGo0AeqeUcx3JZPGqj03QYbm6QUFgsXf6HqqTdTW1GcPc8PpMXJQ== dependencies: "@types/node" "^20.11.28" - "@wdio/config" "9.5.0" - "@wdio/globals" "9.5.7" + "@wdio/config" "9.6.4" + "@wdio/dot-reporter" "9.6.3" + "@wdio/globals" "9.7.1" "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" deepmerge-ts "^7.0.3" expect-webdriverio "^5.0.1" - webdriver "9.5.4" - webdriverio "9.5.7" + webdriver "9.7.0" + webdriverio "9.7.1" -"@wdio/sauce-service@^9.5.7": - version "9.5.7" - resolved "https://registry.yarnpkg.com/@wdio/sauce-service/-/sauce-service-9.5.7.tgz#504e4922619bfa5a1646130cbddad9a7a7732123" - integrity sha512-Sw9+Px++2RZ++26wpMojbpGEOHzn4/F4F8AjOcG3cgW5uxR0sNJIPaIRkgtykL2jr/H5Il71Oqp9mMmidhaSpg== +"@wdio/sauce-service@^9.7.1": + version "9.7.1" + resolved "https://registry.yarnpkg.com/@wdio/sauce-service/-/sauce-service-9.7.1.tgz#ff91a61dfd23986dbdf287f93e63ade9f472ef85" + integrity sha512-xpZIeXiTK3GvfbOWTnP5kuKXTHmjdX8kN4IGoQJk5+StjtTcfnXZKXoeZUAPYdNL0X+gG2MDo2zdqIyafoMa4A== dependencies: "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" saucelabs "8.0.0" - webdriverio "9.5.7" + webdriverio "9.7.1" -"@wdio/spec-reporter@^9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/spec-reporter/-/spec-reporter-9.5.0.tgz#b8a746fd3c6d2a19328f1df9403365028ccd0b55" - integrity sha512-xapzWIPZE8E5IHQdhIESJ9u10fZMWi91D0Hu3EiyDvZ6ClJR6LIS/eeGChXVx3+x/OeU6yiOwhmkV4mCUyFeNA== +"@wdio/spec-reporter@^9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@wdio/spec-reporter/-/spec-reporter-9.6.3.tgz#7e96390a9d5280a97dcc5db01b3191edaf853251" + integrity sha512-P9zi8PfdhUWGnwb1tcl7EyLGKHFiCOkS04I7nBnVRAkTTfeQ+jpuDIlefW8DkW91yHHOpoAOOVeMqVBGRc8OoQ== dependencies: - "@wdio/reporter" "9.5.0" - "@wdio/types" "9.5.0" + "@wdio/reporter" "9.6.3" + "@wdio/types" "9.6.3" chalk "^5.1.2" easy-table "^1.2.0" pretty-ms "^9.0.0" -"@wdio/static-server-service@^9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/static-server-service/-/static-server-service-9.5.0.tgz#7ccfc6f1d735e21b97988d8c85dc8726376ddd1c" - integrity sha512-srTTomP+kjjieWSmYFxKdfIj0P7TorrngehO1djpWMk3xyuTaR1fyehNuwsmZHnRk7Zbrim1HFCZwwX5WnaBSw== +"@wdio/static-server-service@^9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@wdio/static-server-service/-/static-server-service-9.6.3.tgz#01b536a530bbbd9d91d06576659eb815f3db22b2" + integrity sha512-wAAS3S1y7mm3iATyeWkCKHfJrP7ZmW2FkPSALoDcea2jQIeMXe6pQlGTkBPMw9CRnt8Rdu8Fy5ImtL5Uwr1wHQ== dependencies: "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" + "@wdio/types" "9.6.3" express "^4.14.0" morgan "^1.7.0" @@ -3322,10 +3387,10 @@ "@types/node" "^17.0.4" got "^11.8.1" -"@wdio/types@9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/types/-/types-9.5.0.tgz#260dd40f3bd26519adc0e1102a0c909a4faa402c" - integrity sha512-sX1vH6VebVHvgdpySTOXzKNazHBu+yFr5bMvveJ2T4vKjJTJOAwO6nPftjKcgGDfhyYxM3xOCvboKICdQKFgEg== +"@wdio/types@9.6.3": + version "9.6.3" + resolved "https://registry.yarnpkg.com/@wdio/types/-/types-9.6.3.tgz#2fbbb5fcdec32f9d9953ee9d73c659052c0fb6b1" + integrity sha512-K3Lu7K5g5bsUcQV6/95XaS3jMwcGUn2pDdryYibKZafklhHjVt3o/xnw6Vgd/JzoSneCKHdwj941n+yDpTJHAw== dependencies: "@types/node" "^20.1.0" @@ -3338,14 +3403,14 @@ "@wdio/types" "7.19.5" p-iteration "^1.1.8" -"@wdio/utils@9.5.0": - version "9.5.0" - resolved "https://registry.yarnpkg.com/@wdio/utils/-/utils-9.5.0.tgz#7f9450f60685a8900a6e3b6c3a9388f742b6d2d4" - integrity sha512-Lrom21pIdp60IiKznecJT6Za0GGeXxKikPyWHH5z9SY5TmuSoIhuG/bq40lfUjeSW7doiL1JEsFHbRbzt0bHYA== +"@wdio/utils@9.6.4": + version "9.6.4" + resolved "https://registry.yarnpkg.com/@wdio/utils/-/utils-9.6.4.tgz#534fd67e0b0c4be85b8c5379a9e79e64aa05bc1d" + integrity sha512-FMI/F5ju0h0HKC4RRQKW/H9So2cgtK6dd0JCmVdBzQ+/LMluEzlZmQva14HYmNd2t2ZmejYRqAJPV3aAsMAMZA== dependencies: "@puppeteer/browsers" "^2.2.0" "@wdio/logger" "9.4.4" - "@wdio/types" "9.5.0" + "@wdio/types" "9.6.3" decamelize "^6.0.0" deepmerge-ts "^7.0.3" edgedriver "^6.1.1" @@ -4319,7 +4384,7 @@ chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^5.1.2, chalk@^5.2.0, chalk@^5.3.0, chalk@~5.4.1: +chalk@^5.0.1, chalk@^5.1.2, chalk@^5.2.0, chalk@^5.3.0, chalk@^5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.4.1.tgz#1b48bf0963ec158dce2aacf69c093ae2dd2092d8" integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== @@ -4644,6 +4709,11 @@ command-line-usage@^6.1.0: table-layout "^1.0.2" typical "^5.2.0" +commander@^13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-13.1.0.tgz#776167db68c78f38dcce1f9b8d7b8b9a488abf46" + integrity sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw== + commander@^2.20.0, commander@^2.8.1: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -4654,11 +4724,6 @@ commander@^9.3.0: resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== -commander@~12.1.0: - version "12.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-12.1.0.tgz#01423b36f501259fdaac4d0e4d60c96c991585d3" - integrity sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA== - commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -5033,7 +5098,7 @@ debug@2.6.9, debug@^2.6.9: dependencies: ms "2.0.0" -debug@4, debug@4.4.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0, debug@~4.4.0: +debug@4, debug@4.4.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== @@ -5918,17 +5983,17 @@ eslint-visitor-keys@^4.2.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz#687bacb2af884fcdda8a6e7d65c606f46a14cd45" integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw== -eslint@9.18.0: - version "9.18.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.18.0.tgz#c95b24de1183e865de19f607fda6518b54827850" - integrity sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA== +eslint@9.19.0: + version "9.19.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.19.0.tgz#ffa1d265fc4205e0f8464330d35f09e1d548b1bf" + integrity sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.12.1" "@eslint/config-array" "^0.19.0" "@eslint/core" "^0.10.0" "@eslint/eslintrc" "^3.2.0" - "@eslint/js" "9.18.0" + "@eslint/js" "9.19.0" "@eslint/plugin-kit" "^0.2.5" "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" @@ -6067,6 +6132,21 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" +execa@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" + integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== + dependencies: + cross-spawn "^7.0.3" + get-stream "^8.0.1" + human-signals "^5.0.0" + is-stream "^3.0.0" + merge-stream "^2.0.0" + npm-run-path "^5.1.0" + onetime "^6.0.0" + signal-exit "^4.1.0" + strip-final-newline "^3.0.0" + execa@^9.2.0: version "9.5.2" resolved "https://registry.yarnpkg.com/execa/-/execa-9.5.2.tgz#a4551034ee0795e241025d2f987dab3f4242dff2" @@ -6085,21 +6165,6 @@ execa@^9.2.0: strip-final-newline "^4.0.0" yoctocolors "^2.0.0" -execa@~8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/execa/-/execa-8.0.1.tgz#51f6a5943b580f963c3ca9c6321796db8cc39b8c" - integrity sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg== - dependencies: - cross-spawn "^7.0.3" - get-stream "^8.0.1" - human-signals "^5.0.0" - is-stream "^3.0.0" - merge-stream "^2.0.0" - npm-run-path "^5.1.0" - onetime "^6.0.0" - signal-exit "^4.1.0" - strip-final-newline "^3.0.0" - executable@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" @@ -8358,7 +8423,7 @@ lighthouse-logger@^1.0.0: debug "^2.6.9" marky "^1.2.2" -lilconfig@~3.1.3: +lilconfig@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4" integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw== @@ -8386,23 +8451,23 @@ lines-and-columns@^2.0.3: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-2.0.4.tgz#d00318855905d2660d8c0822e3f5a4715855fc42" integrity sha512-wM1+Z03eypVAVUCE7QdSqpVIvelbOakn1M0bPDoA4SGWPx3sNDVUiMo3L6To6WWGClB7VyXnhQ4Sn7gxiJbE6A== -lint-staged@^15.4.1: - version "15.4.1" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.4.1.tgz#b34e3297ae13fdb2d99b3456e2dbd8e20798bced" - integrity sha512-P8yJuVRyLrm5KxCtFx+gjI5Bil+wO7wnTl7C3bXhvtTaAFGirzeB24++D0wGoUwxrUKecNiehemgCob9YL39NA== - dependencies: - chalk "~5.4.1" - commander "~12.1.0" - debug "~4.4.0" - execa "~8.0.1" - lilconfig "~3.1.3" - listr2 "~8.2.5" - micromatch "~4.0.8" - pidtree "~0.6.0" - string-argv "~0.3.2" - yaml "~2.6.1" - -listr2@~8.2.5: +lint-staged@^15.4.3: + version "15.4.3" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-15.4.3.tgz#e73587cc857f580c99f907abefe9ac8d8d5e74c1" + integrity sha512-FoH1vOeouNh1pw+90S+cnuoFwRfUD9ijY2GKy5h7HS3OR7JVir2N2xrsa0+Twc1B7cW72L+88geG5cW4wIhn7g== + dependencies: + chalk "^5.4.1" + commander "^13.1.0" + debug "^4.4.0" + execa "^8.0.1" + lilconfig "^3.1.3" + listr2 "^8.2.5" + micromatch "^4.0.8" + pidtree "^0.6.0" + string-argv "^0.3.2" + yaml "^2.7.0" + +listr2@^8.2.5: version "8.2.5" resolved "https://registry.yarnpkg.com/listr2/-/listr2-8.2.5.tgz#5c9db996e1afeb05db0448196d3d5f64fec2593d" integrity sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ== @@ -8854,7 +8919,7 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== -micromatch@4.0.8, micromatch@^4.0.4, micromatch@^4.0.8, micromatch@~4.0.8: +micromatch@4.0.8, micromatch@^4.0.4, micromatch@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -9360,10 +9425,10 @@ nwsapi@^2.2.16: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.16.tgz#177760bba02c351df1d2644e220c31dfec8cdb43" integrity sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ== -nx@20.3.2: - version "20.3.2" - resolved "https://registry.yarnpkg.com/nx/-/nx-20.3.2.tgz#32db1c3d339db9f456610f84732eff012ae12749" - integrity sha512-VWUHX0uCn8ACFbpBTpgucDzwe4q/a/UU3AYOhzKCvTzb3kQiyvoxLjORSze93ZNEqgor0PMkCQgcoMBUjxJfzQ== +nx@20.3.3: + version "20.3.3" + resolved "https://registry.yarnpkg.com/nx/-/nx-20.3.3.tgz#fd1bc64a88c77a1c1a1059db9b9fb939461a31bc" + integrity sha512-IUu2D8/bVa7aSr3ViRcrmpTGO2FKqzJoio6gjeq/YbyUHyjrrq5HUmHFx30Wm2vmC1BGm0MeyakTNUJzQvfAog== dependencies: "@napi-rs/wasm-runtime" "0.2.4" "@yarnpkg/lockfile" "^1.1.0" @@ -9400,16 +9465,16 @@ nx@20.3.2: yargs "^17.6.2" yargs-parser "21.1.1" optionalDependencies: - "@nx/nx-darwin-arm64" "20.3.2" - "@nx/nx-darwin-x64" "20.3.2" - "@nx/nx-freebsd-x64" "20.3.2" - "@nx/nx-linux-arm-gnueabihf" "20.3.2" - "@nx/nx-linux-arm64-gnu" "20.3.2" - "@nx/nx-linux-arm64-musl" "20.3.2" - "@nx/nx-linux-x64-gnu" "20.3.2" - "@nx/nx-linux-x64-musl" "20.3.2" - "@nx/nx-win32-arm64-msvc" "20.3.2" - "@nx/nx-win32-x64-msvc" "20.3.2" + "@nx/nx-darwin-arm64" "20.3.3" + "@nx/nx-darwin-x64" "20.3.3" + "@nx/nx-freebsd-x64" "20.3.3" + "@nx/nx-linux-arm-gnueabihf" "20.3.3" + "@nx/nx-linux-arm64-gnu" "20.3.3" + "@nx/nx-linux-arm64-musl" "20.3.3" + "@nx/nx-linux-x64-gnu" "20.3.3" + "@nx/nx-linux-x64-musl" "20.3.3" + "@nx/nx-win32-arm64-msvc" "20.3.3" + "@nx/nx-win32-x64-msvc" "20.3.3" object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.1" @@ -9922,7 +9987,7 @@ pathe@^1.1.2: resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.1.2.tgz#6c4cb47a945692e48a1ddd6e4094d170516437ec" integrity sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ== -pathe@^2.0.1: +pathe@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/pathe/-/pathe-2.0.2.tgz#5ed86644376915b3c7ee4d00ac8c348d671da3a5" integrity sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w== @@ -10008,7 +10073,7 @@ picomatch@^4.0.2: resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== -pidtree@~0.6.0: +pidtree@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz#90ad7b6d42d5841e69e0a2419ef38f8883aa057c" integrity sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== @@ -10723,32 +10788,32 @@ rollup-plugin-serve@^3.0.0: mime "^4" opener "1" -rollup@^4.23.0, rollup@^4.28.0, rollup@^4.31.0: - version "4.31.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.31.0.tgz#b84af969a0292cb047dce2c0ec5413a9457597a4" - integrity sha512-9cCE8P4rZLx9+PjoyqHLs31V9a9Vpvfo4qNcs6JCiGWYhw2gijSetFbH6SSy1whnkgcefnUwr8sad7tgqsGvnw== +rollup@^4.23.0, rollup@^4.28.0, rollup@^4.32.0: + version "4.32.0" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.32.0.tgz#c405bf6fca494d1999d9088f7736d7f03e5cac5a" + integrity sha512-JmrhfQR31Q4AuNBjjAX4s+a/Pu/Q8Q9iwjWBsjRH1q52SPFE2NqRMK6fUZKKnvKO6id+h7JIRf0oYsph53eATg== dependencies: "@types/estree" "1.0.6" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.31.0" - "@rollup/rollup-android-arm64" "4.31.0" - "@rollup/rollup-darwin-arm64" "4.31.0" - "@rollup/rollup-darwin-x64" "4.31.0" - "@rollup/rollup-freebsd-arm64" "4.31.0" - "@rollup/rollup-freebsd-x64" "4.31.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.31.0" - "@rollup/rollup-linux-arm-musleabihf" "4.31.0" - "@rollup/rollup-linux-arm64-gnu" "4.31.0" - "@rollup/rollup-linux-arm64-musl" "4.31.0" - "@rollup/rollup-linux-loongarch64-gnu" "4.31.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.31.0" - "@rollup/rollup-linux-riscv64-gnu" "4.31.0" - "@rollup/rollup-linux-s390x-gnu" "4.31.0" - "@rollup/rollup-linux-x64-gnu" "4.31.0" - "@rollup/rollup-linux-x64-musl" "4.31.0" - "@rollup/rollup-win32-arm64-msvc" "4.31.0" - "@rollup/rollup-win32-ia32-msvc" "4.31.0" - "@rollup/rollup-win32-x64-msvc" "4.31.0" + "@rollup/rollup-android-arm-eabi" "4.32.0" + "@rollup/rollup-android-arm64" "4.32.0" + "@rollup/rollup-darwin-arm64" "4.32.0" + "@rollup/rollup-darwin-x64" "4.32.0" + "@rollup/rollup-freebsd-arm64" "4.32.0" + "@rollup/rollup-freebsd-x64" "4.32.0" + "@rollup/rollup-linux-arm-gnueabihf" "4.32.0" + "@rollup/rollup-linux-arm-musleabihf" "4.32.0" + "@rollup/rollup-linux-arm64-gnu" "4.32.0" + "@rollup/rollup-linux-arm64-musl" "4.32.0" + "@rollup/rollup-linux-loongarch64-gnu" "4.32.0" + "@rollup/rollup-linux-powerpc64le-gnu" "4.32.0" + "@rollup/rollup-linux-riscv64-gnu" "4.32.0" + "@rollup/rollup-linux-s390x-gnu" "4.32.0" + "@rollup/rollup-linux-x64-gnu" "4.32.0" + "@rollup/rollup-linux-x64-musl" "4.32.0" + "@rollup/rollup-win32-arm64-msvc" "4.32.0" + "@rollup/rollup-win32-ia32-msvc" "4.32.0" + "@rollup/rollup-win32-x64-msvc" "4.32.0" fsevents "~2.3.2" rrweb-cssom@^0.8.0: @@ -11457,7 +11522,7 @@ strict-uri-encode@^2.0.0: resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ== -string-argv@~0.3.2: +string-argv@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.2.tgz#2b6d0ef24b656274d957d54e0a4bbf6153dc02b6" integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== @@ -12135,19 +12200,19 @@ typed-query-selector@^2.12.0: resolved "https://registry.yarnpkg.com/typed-query-selector/-/typed-query-selector-2.12.0.tgz#92b65dbc0a42655fccf4aeb1a08b1dddce8af5f2" integrity sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg== -typescript-eslint@8.20.0: - version "8.20.0" - resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.20.0.tgz#76d4ea6a483fd49830a7e8baccaed10f76d1e57b" - integrity sha512-Kxz2QRFsgbWj6Xcftlw3Dd154b3cEPFqQC+qMZrMypSijPd4UanKKvoKDrJ4o8AIfZFKAF+7sMaEIR8mTElozA== +typescript-eslint@8.21.0: + version "8.21.0" + resolved "https://registry.yarnpkg.com/typescript-eslint/-/typescript-eslint-8.21.0.tgz#78bdb83a6d771f0312b128297d84a3111885fd08" + integrity sha512-txEKYY4XMKwPXxNkN8+AxAdX6iIJAPiJbHE/FpQccs/sxw8Lf26kqwC3cn0xkHlW8kEbLhkhCsjWuMveaY9Rxw== dependencies: - "@typescript-eslint/eslint-plugin" "8.20.0" - "@typescript-eslint/parser" "8.20.0" - "@typescript-eslint/utils" "8.20.0" + "@typescript-eslint/eslint-plugin" "8.21.0" + "@typescript-eslint/parser" "8.21.0" + "@typescript-eslint/utils" "8.21.0" -typescript@5.4.5: - version "5.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.5.tgz#42ccef2c571fdbd0f6718b1d1f5e6e5ef006f611" - integrity sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ== +typescript@5.7.3: + version "5.7.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.7.3.tgz#919b44a7dbb8583a9b856d162be24a54bf80073e" + integrity sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw== typical@^4.0.0: version "4.0.0" @@ -12370,15 +12435,15 @@ vary@^1, vary@^1.1.2, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -vite-node@3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-3.0.3.tgz#2127458eae8c78b92f609f4c84d613599cd14317" - integrity sha512-0sQcwhwAEw/UJGojbhOrnq3HtiZ3tC7BzpAa0lx3QaTX0S3YX70iGcik25UBdB96pmdwjyY2uyKNYruxCDmiEg== +vite-node@3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-3.0.4.tgz#6db5bc4c182baf04986265d46bc3193c5491f41f" + integrity sha512-7JZKEzcYV2Nx3u6rlvN8qdo3QV7Fxyt6hx+CCKz9fbWxdX5IvUOmTWEAxMrWxaiSf7CKGLJQ5rFu8prb/jBjOA== dependencies: cac "^6.7.14" debug "^4.4.0" es-module-lexer "^1.6.0" - pathe "^2.0.1" + pathe "^2.0.2" vite "^5.0.0 || ^6.0.0" "vite@^5.0.0 || ^6.0.0": @@ -12392,30 +12457,30 @@ vite-node@3.0.3: optionalDependencies: fsevents "~2.3.3" -vitest@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/vitest/-/vitest-3.0.3.tgz#e7bcf3ba82e4a18f1f2c5083b3d989cd344cb78c" - integrity sha512-dWdwTFUW9rcnL0LyF2F+IfvNQWB0w9DERySCk8VMG75F8k25C7LsZoh6XfCjPvcR8Nb+Lqi9JKr6vnzH7HSrpQ== - dependencies: - "@vitest/expect" "3.0.3" - "@vitest/mocker" "3.0.3" - "@vitest/pretty-format" "^3.0.3" - "@vitest/runner" "3.0.3" - "@vitest/snapshot" "3.0.3" - "@vitest/spy" "3.0.3" - "@vitest/utils" "3.0.3" +vitest@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-3.0.4.tgz#c1d1c7ed1b21308906cd06d9cdee28b2eefddf97" + integrity sha512-6XG8oTKy2gnJIFTHP6LD7ExFeNLxiTkK3CfMvT7IfR8IN+BYICCf0lXUQmX7i7JoxUP8QmeP4mTnWXgflu4yjw== + dependencies: + "@vitest/expect" "3.0.4" + "@vitest/mocker" "3.0.4" + "@vitest/pretty-format" "^3.0.4" + "@vitest/runner" "3.0.4" + "@vitest/snapshot" "3.0.4" + "@vitest/spy" "3.0.4" + "@vitest/utils" "3.0.4" chai "^5.1.2" debug "^4.4.0" expect-type "^1.1.0" magic-string "^0.30.17" - pathe "^2.0.1" + pathe "^2.0.2" std-env "^3.8.0" tinybench "^2.9.0" tinyexec "^0.3.2" tinypool "^1.0.2" tinyrainbow "^2.0.0" vite "^5.0.0 || ^6.0.0" - vite-node "3.0.3" + vite-node "3.0.4" why-is-node-running "^2.3.0" void-elements@^2.0.0: @@ -12466,18 +12531,18 @@ webdriver@7.19.5: ky "^0.30.0" lodash.merge "^4.6.1" -webdriver@9.5.4: - version "9.5.4" - resolved "https://registry.yarnpkg.com/webdriver/-/webdriver-9.5.4.tgz#45c640064da72cbf1e5e65389de8951f12716d4f" - integrity sha512-wmuIL8XMLUUjmpXuQTqH1fhvWnh+8PA4TemYbXfLP/U1gdAowgxy3+rWMc+LGHkDOZLBIB4tHcdxkj7xbSOvLQ== +webdriver@9.7.0: + version "9.7.0" + resolved "https://registry.yarnpkg.com/webdriver/-/webdriver-9.7.0.tgz#2cc6b0e2c057cb65888bdbf32e5eb221c420a754" + integrity sha512-O/Ce4I7HcsqlP3kx9L0F14olOsarKkXUz+hSunOTC9YxsiVoOu5yIcRrHyWUQziYgA4K5gobZSKrTuAr+edA4Q== dependencies: "@types/node" "^20.1.0" "@types/ws" "^8.5.3" - "@wdio/config" "9.5.0" + "@wdio/config" "9.6.4" "@wdio/logger" "9.4.4" - "@wdio/protocols" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/protocols" "9.7.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" deepmerge-ts "^7.0.3" undici "^6.20.1" ws "^8.8.0" @@ -12515,19 +12580,19 @@ webdriverio@7.19.5: serialize-error "^8.0.0" webdriver "7.19.5" -webdriverio@9.5.7, webdriverio@^9.0.7: - version "9.5.7" - resolved "https://registry.yarnpkg.com/webdriverio/-/webdriverio-9.5.7.tgz#85705b35606556b06e6f5d9e9c762c23d4c87844" - integrity sha512-Uvro6y9AvDzlrEzoEM+J/C8/foQVKisvTFXdr+XF63BYsPBKZAhL2cKiHuwwj0FaSVC/VIhd0IVj+oGdkDKs/Q== +webdriverio@9.7.1, webdriverio@^9.0.7: + version "9.7.1" + resolved "https://registry.yarnpkg.com/webdriverio/-/webdriverio-9.7.1.tgz#110c87b44e892c9583dbd95792a1e0d661895e81" + integrity sha512-P1roVTpXwtzSgNKl9j92LF4+5i2eGd0n9EMvMRdLNnI0v1ws7dNJOHNgsEAepZqMikYPgh2m+5DyXR1Ygoa+nQ== dependencies: "@types/node" "^20.11.30" "@types/sinonjs__fake-timers" "^8.1.5" - "@wdio/config" "9.5.0" + "@wdio/config" "9.6.4" "@wdio/logger" "9.4.4" - "@wdio/protocols" "9.4.4" + "@wdio/protocols" "9.7.0" "@wdio/repl" "9.4.4" - "@wdio/types" "9.5.0" - "@wdio/utils" "9.5.0" + "@wdio/types" "9.6.3" + "@wdio/utils" "9.6.4" archiver "^7.0.1" aria-query "^5.3.0" cheerio "^1.0.0-rc.12" @@ -12546,7 +12611,7 @@ webdriverio@9.5.7, webdriverio@^9.0.7: rgb2hex "0.2.5" serialize-error "^11.0.3" urlpattern-polyfill "^10.0.0" - webdriver "9.5.4" + webdriver "9.7.0" webidl-conversions@^3.0.0: version "3.0.1" @@ -12852,16 +12917,11 @@ yaml@^1.7.2: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yaml@^2.6.0: +yaml@^2.6.0, yaml@^2.7.0: version "2.7.0" resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.7.0.tgz#aef9bb617a64c937a9a748803786ad8d3ffe1e98" integrity sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA== -yaml@~2.6.1: - version "2.6.1" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.6.1.tgz#42f2b1ba89203f374609572d5349fb8686500773" - integrity sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg== - yargs-parser@21.1.1, yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35"