@depup/jsdom 29.0.0-depup.0 → 29.0.1-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -13,16 +13,10 @@ npm install @depup/jsdom
13
13
 
14
14
  | Field | Value |
15
15
  |-------|-------|
16
- | Original | [jsdom](https://www.npmjs.com/package/jsdom) @ 29.0.0 |
17
- | Processed | 2026-03-15 |
16
+ | Original | [jsdom](https://www.npmjs.com/package/jsdom) @ 29.0.1 |
17
+ | Processed | 2026-03-20 |
18
18
  | Smoke test | passed |
19
- | Deps updated | 1 |
20
-
21
- ## Dependency Changes
22
-
23
- | Dependency | From | To |
24
- |------------|------|-----|
25
- | @asamuzakjp/dom-selector | ^7.0.2 | ^7.0.3 |
19
+ | Deps updated | 0 |
26
20
 
27
21
  ---
28
22
 
package/changes.json CHANGED
@@ -1,10 +1,5 @@
1
1
  {
2
- "bumped": {
3
- "@asamuzakjp/dom-selector": {
4
- "from": "^7.0.2",
5
- "to": "^7.0.3"
6
- }
7
- },
8
- "timestamp": "2026-03-15T08:14:54.449Z",
9
- "totalUpdated": 1
2
+ "bumped": {},
3
+ "timestamp": "2026-03-20T04:40:07.696Z",
4
+ "totalUpdated": 0
10
5
  }
@@ -65,6 +65,10 @@ module.exports = new Map([
65
65
  "animation-play-state",
66
66
  "animation-timeline"
67
67
  ],
68
+ "resetLonghands": [
69
+ "animation-range",
70
+ "animation-trigger"
71
+ ],
68
72
  "syntax": "<single-animation>#"
69
73
  }
70
74
  ],
@@ -602,6 +606,9 @@ module.exports = new Map([
602
606
  "mask-composite",
603
607
  "mask-mode"
604
608
  ],
609
+ "resetLonghands": [
610
+ "mask-border"
611
+ ],
605
612
  "syntax": "<mask-layer>#"
606
613
  }
607
614
  ],
@@ -1248,6 +1255,10 @@ module.exports = new Map([
1248
1255
  "animation-play-state",
1249
1256
  "animation-timeline"
1250
1257
  ],
1258
+ "resetLonghands": [
1259
+ "animation-range",
1260
+ "animation-trigger"
1261
+ ],
1251
1262
  "syntax": "<single-animation>#"
1252
1263
  }
1253
1264
  ],
@@ -1641,6 +1652,9 @@ module.exports = new Map([
1641
1652
  "background-clip",
1642
1653
  "background-color"
1643
1654
  ],
1655
+ "resetLonghands": [
1656
+ "background-blend-mode"
1657
+ ],
1644
1658
  "syntax": "<bg-layer>#? , <final-bg-layer>"
1645
1659
  }
1646
1660
  ],
@@ -2254,6 +2268,9 @@ module.exports = new Map([
2254
2268
  "border-style",
2255
2269
  "border-color"
2256
2270
  ],
2271
+ "resetLonghands": [
2272
+ "border-image"
2273
+ ],
2257
2274
  "syntax": "<line-width> || <line-style> || <color>"
2258
2275
  }
2259
2276
  ],
@@ -6926,6 +6943,14 @@ module.exports = new Map([
6926
6943
  "line-height",
6927
6944
  "font-family"
6928
6945
  ],
6946
+ "resetLonghands": [
6947
+ "font-feature-settings",
6948
+ "font-kerning",
6949
+ "font-language-override",
6950
+ "font-optical-sizing",
6951
+ "font-size-adjust",
6952
+ "font-variation-settings"
6953
+ ],
6929
6954
  "syntax": "[ [ <'font-style'> || <font-variant-css2> || <'font-weight'> || <font-width-css3> ]? <'font-size'> [ / <'line-height'> ]? <'font-family'># ] | <system-family-name>"
6930
6955
  }
6931
6956
  ],
@@ -8052,7 +8077,7 @@ module.exports = new Map([
8052
8077
  "image-animation",
8053
8078
  "imageAnimation"
8054
8079
  ],
8055
- "syntax": "normal | paused | running"
8080
+ "syntax": "normal | paused | stopped | running"
8056
8081
  }
8057
8082
  ],
8058
8083
  [
@@ -9259,6 +9284,9 @@ module.exports = new Map([
9259
9284
  "mask-composite",
9260
9285
  "mask-mode"
9261
9286
  ],
9287
+ "resetLonghands": [
9288
+ "mask-border"
9289
+ ],
9262
9290
  "syntax": "<mask-layer>#"
9263
9291
  }
9264
9292
  ],
@@ -12721,14 +12749,14 @@ module.exports = new Map([
12721
12749
  "appliesTo": "scroll containers",
12722
12750
  "inherited": "no",
12723
12751
  "percentages": "n/a",
12724
- "computedValue": "specified value",
12752
+ "computedValue": "specified keyword(s)",
12725
12753
  "canonicalOrder": "per grammar",
12726
12754
  "animationType": "discrete",
12727
12755
  "styleDeclaration": [
12728
12756
  "scroll-marker-group",
12729
12757
  "scrollMarkerGroup"
12730
12758
  ],
12731
- "syntax": "none | before | after"
12759
+ "syntax": "none | [ [ before | after ] || [ links | tabs ] ]"
12732
12760
  }
12733
12761
  ],
12734
12762
  [
@@ -14714,7 +14742,7 @@ module.exports = new Map([
14714
14742
  "appliesTo": "all elements",
14715
14743
  "inherited": "no",
14716
14744
  "percentages": "n/a",
14717
- "computedValue": "the keyword none or a list of CSS identifiers",
14745
+ "computedValue": "the keyword none, the keyword all, or a list of CSS identifiers",
14718
14746
  "canonicalOrder": "per grammar",
14719
14747
  "animationType": "not animatable",
14720
14748
  "styleDeclaration": [
@@ -869,7 +869,7 @@ function installOwnProperties(window, options) {
869
869
  }
870
870
  }
871
871
 
872
- return getComputedStyleDeclaration(elementImpl);
872
+ return idlUtils.wrapperForImpl(getComputedStyleDeclaration(elementImpl));
873
873
  };
874
874
 
875
875
  window.getSelection = function () {
@@ -255,6 +255,9 @@ function replaceBackgroundShorthand(property, properties) {
255
255
  */
256
256
  function matchesBorderShorthandValue(property, value, shorthandValue) {
257
257
  const obj = border.parse(shorthandValue);
258
+ if (typeof obj !== "object") {
259
+ return false;
260
+ }
258
261
  if (Object.hasOwn(obj, property)) {
259
262
  return value === obj[property];
260
263
  }
@@ -277,6 +280,9 @@ function replaceBorderShorthandValue(value, shorthandValue) {
277
280
  {
278
281
  [borderFirstInitialKey]: borderFirstInitialValue
279
282
  };
283
+ if (shorthandObj && typeof shorthandObj !== "object") {
284
+ return "";
285
+ }
280
286
  const keys = border.shorthandFor.keys();
281
287
  for (const key of keys) {
282
288
  const initialValue = border.initialValues.get(key);
@@ -548,7 +554,11 @@ function prepareBorderStringValue({ property, value, priority, properties, parts
548
554
  shorthandItem.value = "";
549
555
  }
550
556
  if (lineItem.value) {
551
- lineItem.value = replacePositionValue(propertyValue, splitValue(lineItem.value), prop2);
557
+ if (isGlobalKeyword(lineItem.value)) {
558
+ lineItem.value = "";
559
+ } else {
560
+ lineItem.value = replacePositionValue(propertyValue, splitValue(lineItem.value), prop2);
561
+ }
552
562
  }
553
563
  if (positionItem.value && !matchesBorderShorthandValue(lineProperty, propertyValue, positionItem.value)) {
554
564
  positionItem.value = "";
@@ -807,11 +817,23 @@ function prepareBorderObjectValue({ property, value, priority, properties, parts
807
817
  value[longhandProperty] :
808
818
  border.initialValues.get(`${prop1}-${line}`);
809
819
  if (line === WIDTH && lineWidthItem.value) {
810
- lineWidthItem.value = replacePositionValue(itemValue, splitValue(lineWidthItem.value), prop2);
820
+ if (isGlobalKeyword(lineWidthItem.value)) {
821
+ lineWidthItem.value = "";
822
+ } else {
823
+ lineWidthItem.value = replacePositionValue(itemValue, splitValue(lineWidthItem.value), prop2);
824
+ }
811
825
  } else if (line === STYLE && lineStyleItem.value) {
812
- lineStyleItem.value = replacePositionValue(itemValue, splitValue(lineStyleItem.value), prop2);
826
+ if (isGlobalKeyword(lineStyleItem.value)) {
827
+ lineStyleItem.value = "";
828
+ } else {
829
+ lineStyleItem.value = replacePositionValue(itemValue, splitValue(lineStyleItem.value), prop2);
830
+ }
813
831
  } else if (line === COLOR && lineColorItem.value) {
814
- lineColorItem.value = replacePositionValue(itemValue, splitValue(lineColorItem.value), prop2);
832
+ if (isGlobalKeyword(lineColorItem.value)) {
833
+ lineColorItem.value = "";
834
+ } else {
835
+ lineColorItem.value = replacePositionValue(itemValue, splitValue(lineColorItem.value), prop2);
836
+ }
815
837
  }
816
838
  longhandItem.value = itemValue;
817
839
  longhandItem.priority = priority;
@@ -1213,6 +1235,10 @@ function processBorderProperties(borders) {
1213
1235
  for (const [property, item] of borders) {
1214
1236
  if (shorthandProperties.has(property)) {
1215
1237
  const { value, priority } = item;
1238
+ if (isGlobalKeyword(value)) {
1239
+ longhandProperties.set(property, createPropertyItem(property, value, priority));
1240
+ continue;
1241
+ }
1216
1242
  if (property === border.property) {
1217
1243
  const lineItems = border.parse(value);
1218
1244
  for (const [key, initialValue] of border.initialValues) {
@@ -1363,10 +1389,9 @@ function prepareProperties(properties) {
1363
1389
  parsedProperties.set(property, createPropertyItem(property, value, priority));
1364
1390
  if (hasPrecedingBackground) {
1365
1391
  const { value: shorthandValue, priority: shorthandPriority } = properties.get(background.property);
1366
- if ((!shorthandPriority || priority) && !hasVarFunc(shorthandValue)) {
1392
+ if ((!shorthandPriority || priority) && !hasVarFunc(shorthandValue) && !isGlobalKeyword(shorthandValue)) {
1367
1393
  const replacedShorthandValue = replaceBackgroundShorthand(property, parsedProperties);
1368
- properties.delete(background.property);
1369
- properties.set(
1394
+ parsedProperties.set(
1370
1395
  background.property,
1371
1396
  createPropertyItem(background.property, replacedShorthandValue, shorthandPriority)
1372
1397
  );
@@ -44,6 +44,13 @@ const descriptor = {
44
44
  this._setProperty(property, v);
45
45
  } else {
46
46
  const bgValues = parse(v);
47
+ if (typeof bgValues === "string") {
48
+ for (const [key] of shorthandFor) {
49
+ this._setProperty(key, bgValues);
50
+ }
51
+ this._setProperty(property, bgValues);
52
+ return;
53
+ }
47
54
  if (!Array.isArray(bgValues)) {
48
55
  return;
49
56
  }
@@ -96,6 +103,14 @@ const descriptor = {
96
103
  if (parsers.hasVarFunc(v)) {
97
104
  return v;
98
105
  }
106
+ if (parsers.isGlobalKeyword(v)) {
107
+ for (const [longhand] of shorthandFor) {
108
+ if (this.getPropertyValue(longhand) !== v) {
109
+ return "";
110
+ }
111
+ }
112
+ return v;
113
+ }
99
114
  const bgMap = new Map();
100
115
  let l = 0;
101
116
  for (const [longhand] of shorthandFor) {
@@ -193,7 +208,7 @@ const descriptor = {
193
208
  * @returns {Array<object>|undefined} The parsed background values or undefined if invalid.
194
209
  */
195
210
  function parse(v) {
196
- if (v === "") {
211
+ if (v === "" || parsers.isGlobalKeyword(v)) {
197
212
  return v;
198
213
  } else if (parsers.hasCalcFunc(v)) {
199
214
  v = parsers.resolveCalc(v);
package/package.json CHANGED
@@ -1,12 +1,14 @@
1
1
  {
2
2
  "name": "@depup/jsdom",
3
- "version": "29.0.0-depup.0",
4
- "description": "[DepUp] A JavaScript implementation of many web standards",
3
+ "version": "29.0.1-depup.0",
4
+ "description": "A JavaScript implementation of many web standards (with updated dependencies)",
5
5
  "keywords": [
6
- "depup",
7
- "dependency-bumped",
8
- "updated-deps",
9
6
  "jsdom",
7
+ "depup",
8
+ "updated-dependencies",
9
+ "security",
10
+ "latest",
11
+ "patched",
10
12
  "dom",
11
13
  "html",
12
14
  "whatwg",
@@ -42,7 +44,7 @@
42
44
  "saxes": "^6.0.0",
43
45
  "symbol-tree": "^3.2.4",
44
46
  "tough-cookie": "^6.0.1",
45
- "undici": "^7.24.3",
47
+ "undici": "^7.24.5",
46
48
  "w3c-xmlserializer": "^5.0.0",
47
49
  "webidl-conversions": "^8.0.1",
48
50
  "whatwg-mimetype": "^5.0.0",
@@ -60,7 +62,7 @@
60
62
  "devDependencies": {
61
63
  "@domenic/eslint-config": "^5.1.0",
62
64
  "@stylistic/eslint-plugin": "^5.10.0",
63
- "@webref/css": "^8.3.0",
65
+ "@webref/css": "^8.5.0",
64
66
  "eslint": "^10.0.3",
65
67
  "eslint-plugin-html": "^8.1.4",
66
68
  "eslint-plugin-n": "^17.24.0",
@@ -95,7 +97,6 @@
95
97
  "wpt:init": "git submodule update --init --recursive",
96
98
  "wpt:reset": "rm -rf ./test/web-platform-tests/tests && npm run wpt:init",
97
99
  "wpt:update": "git submodule update --init --recursive --remote && cd test/web-platform-tests/tests && python wpt.py manifest --path ../wpt-manifest.json",
98
- "update-authors": "git log --format=\"%aN <%aE>\" | sort -f | uniq > AUTHORS.txt",
99
100
  "benchmark": "node ./benchmark/runner"
100
101
  },
101
102
  "wireit": {
@@ -128,16 +129,11 @@
128
129
  "node": "^20.19.0 || ^22.13.0 || >=24.0.0"
129
130
  },
130
131
  "depup": {
131
- "changes": {
132
- "@asamuzakjp/dom-selector": {
133
- "from": "^7.0.2",
134
- "to": "^7.0.3"
135
- }
136
- },
137
- "depsUpdated": 1,
132
+ "changes": {},
133
+ "depsUpdated": 0,
138
134
  "originalPackage": "jsdom",
139
- "originalVersion": "29.0.0",
140
- "processedAt": "2026-03-15T08:15:01.677Z",
135
+ "originalVersion": "29.0.1",
136
+ "processedAt": "2026-03-20T04:40:15.619Z",
141
137
  "smokeTest": "passed"
142
138
  }
143
139
  }