Skip to content

Commit ff849a1

Browse files
committed
Merge branch 'master' into wjh/rewire
2 parents d1768dd + 6831028 commit ff849a1

File tree

766 files changed

+2394
-2402
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

766 files changed

+2394
-2402
lines changed

.git2gus/config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"productTag": "a1aB0000000g309IAA",
3-
"defaultBuild": "252",
3+
"defaultBuild": "256",
44
"hideWorkItemUrl": true
55
}

package.json

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "lwc-monorepo",
3-
"version": "8.12.6",
3+
"version": "8.13.2",
44
"private": true,
55
"description": "Lightning Web Components",
66
"repository": {
@@ -12,12 +12,12 @@
1212
"lint": "eslint . --cache",
1313
"format": "prettier --write .",
1414
"bundlesize": "node scripts/bundlesize/bundlesize.mjs",
15-
"build": "nx run-many --target=build --exclude=@lwc/perf-benchmarks,@lwc/perf-benchmarks-components,@lwc/integration-tests,lwc",
15+
"build": "nx run-many --target=build --exclude=@lwc/perf-benchmarks,@lwc/perf-benchmarks-components,@lwc/integration-tests",
1616
"build:performance": "yarn build:performance:components && yarn build:performance:benchmarks",
1717
"build:performance:components": "nx build @lwc/perf-benchmarks-components",
1818
"build:performance:benchmarks": "nx build @lwc/perf-benchmarks",
1919
"copy-fork": "./scripts/tasks/unsafe-external-contributor-ci-workaround.sh",
20-
"dev": "nx run-many --target=dev --all --parallel=999 --exclude=@lwc/perf-benchmarks,@lwc/perf-benchmarks-components,@lwc/integration-tests,lwc",
20+
"dev": "nx run-many --target=dev --all --parallel=999 --exclude=@lwc/perf-benchmarks,@lwc/perf-benchmarks-components,@lwc/integration-tests",
2121
"test": "vitest --workspace vitest.workspace.mjs",
2222
"test:bespoke": "nx run-many --target=test",
2323
"test:debug": "vitest --workspace vitest.workspace.mjs --inspect-brk --no-file-parallelism",
@@ -34,28 +34,28 @@
3434
"release:publish": "nx release publish --registry https://registry.npmjs.org"
3535
},
3636
"devDependencies": {
37-
"@commitlint/cli": "^19.6.1",
38-
"@eslint/js": "9.19.0",
37+
"@commitlint/cli": "^19.7.1",
38+
"@eslint/js": "9.20.0",
3939
"@lwc/eslint-plugin-lwc-internal": "link:./scripts/eslint-plugin",
4040
"@lwc/test-utils-lwc-internals": "link:./scripts/test-utils",
41-
"@nx/js": "20.3.3",
41+
"@nx/js": "20.4.0",
4242
"@rollup/plugin-commonjs": "^28.0.2",
4343
"@rollup/plugin-inject": "^5.0.5",
4444
"@rollup/plugin-node-resolve": "^16.0.0",
4545
"@rollup/plugin-replace": "^6.0.2",
4646
"@rollup/plugin-typescript": "^12.1.2",
4747
"@swc-node/register": "~1.10.9",
48-
"@swc/core": "~1.10.11",
48+
"@swc/core": "~1.10.15",
4949
"@swc/helpers": "~0.5.15",
5050
"@types/babel__core": "^7.20.5",
51-
"@types/node": "^22.10.10",
52-
"@vitest/coverage-v8": "^3.0.4",
53-
"@vitest/eslint-plugin": "^1.1.25",
54-
"@vitest/ui": "^3.0.4",
51+
"@types/node": "^22.13.1",
52+
"@vitest/coverage-v8": "^3.0.5",
53+
"@vitest/eslint-plugin": "^1.1.27",
54+
"@vitest/ui": "^3.0.5",
5555
"bytes": "^3.1.2",
5656
"es-module-lexer": "^1.6.0",
57-
"eslint": "9.19.0",
58-
"eslint-config-flat-gitignore": "^1.0.0",
57+
"eslint": "9.20.0",
58+
"eslint-config-flat-gitignore": "^2.0.0",
5959
"eslint-plugin-header": "^3.1.1",
6060
"eslint-plugin-import": "^2.31.0",
6161
"glob": "^11.0.1",
@@ -65,14 +65,14 @@
6565
"jsdom": "^26.0.0",
6666
"lint-staged": "^15.4.3",
6767
"magic-string": "^0.30.17",
68-
"nx": "20.3.3",
69-
"prettier": "^3.4.2",
70-
"rollup": "^4.32.0",
71-
"terser": "^5.37.0",
68+
"nx": "20.4.0",
69+
"prettier": "^3.5.0",
70+
"rollup": "^4.34.6",
71+
"terser": "^5.38.1",
7272
"tslib": "^2.8.1",
7373
"typescript": "5.7.3",
74-
"typescript-eslint": "8.21.0",
75-
"vitest": "^3.0.4"
74+
"typescript-eslint": "8.23.0",
75+
"vitest": "^3.0.5"
7676
},
7777
"lint-staged": {
7878
"*.{js,mjs,ts}": "eslint --cache",

packages/@lwc/aria-reflection/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
55
],
66
"name": "@lwc/aria-reflection",
7-
"version": "8.12.6",
7+
"version": "8.13.2",
88
"description": "ARIA element reflection polyfill for strings",
99
"keywords": [
1010
"aom",

packages/@lwc/babel-plugin-component/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
55
],
66
"name": "@lwc/babel-plugin-component",
7-
"version": "8.12.6",
7+
"version": "8.13.2",
88
"description": "Babel plugin to transform a LWC module",
99
"keywords": [
1010
"lwc"
@@ -47,8 +47,8 @@
4747
},
4848
"dependencies": {
4949
"@babel/helper-module-imports": "7.25.9",
50-
"@lwc/errors": "8.12.6",
51-
"@lwc/shared": "8.12.6",
50+
"@lwc/errors": "8.13.2",
51+
"@lwc/shared": "8.13.2",
5252
"line-column": "~1.0.2"
5353
},
5454
"devDependencies": {

packages/@lwc/babel-plugin-component/src/constants.ts

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,6 @@
55
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
66
*/
77

8-
// This set is for attributes that have a camel cased property name
9-
// For example, div.tabIndex.
10-
// We do not want users to define @api properties with these names
11-
// Because the template will never call them. It'll always call the camel
12-
// cased version.
13-
const AMBIGUOUS_PROP_SET = new Map([
14-
['bgcolor', 'bgColor'],
15-
['accesskey', 'accessKey'],
16-
['contenteditable', 'contentEditable'],
17-
['tabindex', 'tabIndex'],
18-
['maxlength', 'maxLength'],
19-
['maxvalue', 'maxValue'],
20-
]);
21-
22-
// This set is for attributes that can never be defined
23-
// by users on their components.
24-
// We throw for these.
25-
const DISALLOWED_PROP_SET = new Set(['is', 'class', 'slot', 'style']);
26-
278
const LWC_PACKAGE_ALIAS = 'lwc';
289

2910
const LWC_PACKAGE_EXPORTS = {
@@ -55,9 +36,7 @@ const API_VERSION_KEY = 'apiVersion';
5536
const COMPONENT_CLASS_ID = '__lwc_component_class_internal';
5637

5738
export {
58-
AMBIGUOUS_PROP_SET,
5939
DECORATOR_TYPES,
60-
DISALLOWED_PROP_SET,
6140
LWC_PACKAGE_ALIAS,
6241
LWC_PACKAGE_EXPORTS,
6342
LWC_COMPONENT_PROPERTIES,

packages/@lwc/babel-plugin-component/src/decorators/api/validate.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,9 @@
55
* For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
66
*/
77
import { DecoratorErrors } from '@lwc/errors';
8+
import { AMBIGUOUS_PROP_SET, DISALLOWED_PROP_SET } from '@lwc/shared';
89
import { generateError } from '../../utils';
9-
import {
10-
AMBIGUOUS_PROP_SET,
11-
DECORATOR_TYPES,
12-
DISALLOWED_PROP_SET,
13-
LWC_PACKAGE_EXPORTS,
14-
} from '../../constants';
10+
import { DECORATOR_TYPES, LWC_PACKAGE_EXPORTS } from '../../constants';
1511
import { isApiDecorator } from './shared';
1612
import type { types, NodePath } from '@babel/core';
1713
import type { LwcBabelPluginPass } from '../../types';

packages/@lwc/compiler/package.json

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
55
],
66
"name": "@lwc/compiler",
7-
"version": "8.12.6",
7+
"version": "8.13.2",
88
"description": "LWC compiler",
99
"keywords": [
1010
"lwc"
@@ -46,17 +46,17 @@
4646
}
4747
},
4848
"dependencies": {
49-
"@babel/core": "7.26.7",
50-
"@babel/plugin-transform-async-generator-functions": "7.25.9",
49+
"@babel/core": "7.26.8",
50+
"@babel/plugin-transform-async-generator-functions": "7.26.8",
5151
"@babel/plugin-transform-async-to-generator": "7.25.9",
5252
"@babel/plugin-transform-class-properties": "7.25.9",
5353
"@babel/plugin-transform-object-rest-spread": "7.25.9",
5454
"@locker/babel-plugin-transform-unforgeables": "0.22.0",
55-
"@lwc/babel-plugin-component": "8.12.6",
56-
"@lwc/errors": "8.12.6",
57-
"@lwc/shared": "8.12.6",
58-
"@lwc/ssr-compiler": "8.12.6",
59-
"@lwc/style-compiler": "8.12.6",
60-
"@lwc/template-compiler": "8.12.6"
55+
"@lwc/babel-plugin-component": "8.13.2",
56+
"@lwc/errors": "8.13.2",
57+
"@lwc/shared": "8.13.2",
58+
"@lwc/ssr-compiler": "8.13.2",
59+
"@lwc/style-compiler": "8.13.2",
60+
"@lwc/template-compiler": "8.13.2"
6161
}
6262
}

packages/@lwc/engine-core/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
55
],
66
"name": "@lwc/engine-core",
7-
"version": "8.12.6",
7+
"version": "8.13.2",
88
"description": "Core LWC engine APIs.",
99
"keywords": [
1010
"lwc"
@@ -46,9 +46,9 @@
4646
}
4747
},
4848
"dependencies": {
49-
"@lwc/features": "8.12.6",
50-
"@lwc/shared": "8.12.6",
51-
"@lwc/signals": "8.12.6"
49+
"@lwc/features": "8.13.2",
50+
"@lwc/shared": "8.13.2",
51+
"@lwc/signals": "8.13.2"
5252
},
5353
"devDependencies": {
5454
"observable-membrane": "2.0.0"

packages/@lwc/engine-core/src/framework/mutation-logger.ts

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,18 @@ function safelyCallGetter(target: any, key: PropertyKey) {
6060
}
6161
}
6262

63+
function isRevokedProxy(target: object) {
64+
try {
65+
// `str in obj` will never throw for normal objects or active proxies,
66+
// but the operation is not allowed for revoked proxies
67+
// eslint-disable-next-line @typescript-eslint/no-unused-expressions
68+
'' in target;
69+
return false;
70+
} catch (_) {
71+
return true;
72+
}
73+
}
74+
6375
/**
6476
* Flush all the logs we've written so far and return the current logs.
6577
*/
@@ -126,7 +138,9 @@ export function trackTargetForMutationLogging(key: PropertyKey, target: any) {
126138
// Guard against recursive objects - don't traverse forever
127139
return;
128140
}
129-
if (isObject(target) && !isNull(target)) {
141+
142+
// Revoked proxies (e.g. window props in LWS sandboxes) throw an error if we try to track them
143+
if (isObject(target) && !isNull(target) && !isRevokedProxy(target)) {
130144
// only track non-primitives; others are invalid as WeakMap keys
131145
targetsToPropertyKeys.set(target, key);
132146

packages/@lwc/engine-dom/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"You can safely modify dependencies, devDependencies, keywords, etc., but other props will be overwritten."
55
],
66
"name": "@lwc/engine-dom",
7-
"version": "8.12.6",
7+
"version": "8.13.2",
88
"description": "Renders LWC components in a DOM environment.",
99
"keywords": [
1010
"lwc"
@@ -46,9 +46,9 @@
4646
}
4747
},
4848
"devDependencies": {
49-
"@lwc/engine-core": "8.12.6",
50-
"@lwc/shared": "8.12.6",
51-
"@lwc/features": "8.12.6"
49+
"@lwc/engine-core": "8.13.2",
50+
"@lwc/shared": "8.13.2",
51+
"@lwc/features": "8.13.2"
5252
},
5353
"lwc": {
5454
"modules": [

0 commit comments

Comments
 (0)