@depup/jsdom 30.1.1-depup.2 → 30.1.2-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.
Files changed (222) hide show
  1. package/README.md +3 -14
  2. package/changes.json +3 -28
  3. package/lib/generated/css-property-definitions.js +1130 -10853
  4. package/lib/generated/css-property-descriptors.js +28 -28
  5. package/lib/generated/css-property-metadata.js +864 -7813
  6. package/lib/generated/idl/AbortController.js +6 -13
  7. package/lib/generated/idl/AbortSignal.js +9 -34
  8. package/lib/generated/idl/AbstractRange.js +9 -35
  9. package/lib/generated/idl/Attr.js +12 -42
  10. package/lib/generated/idl/BarProp.js +5 -5
  11. package/lib/generated/idl/BeforeUnloadEvent.js +6 -13
  12. package/lib/generated/idl/Blob.js +10 -29
  13. package/lib/generated/idl/BlobEvent.js +6 -12
  14. package/lib/generated/idl/CSSConditionRule.js +5 -7
  15. package/lib/generated/idl/CSSContainerRule.js +6 -14
  16. package/lib/generated/idl/CSSCounterStyleRule.js +26 -143
  17. package/lib/generated/idl/CSSFontFaceRule.js +6 -14
  18. package/lib/generated/idl/CSSGroupingRule.js +7 -21
  19. package/lib/generated/idl/CSSImportRule.js +10 -42
  20. package/lib/generated/idl/CSSKeyframeRule.js +8 -27
  21. package/lib/generated/idl/CSSKeyframesRule.js +11 -48
  22. package/lib/generated/idl/CSSLayerBlockRule.js +5 -7
  23. package/lib/generated/idl/CSSLayerStatementRule.js +5 -7
  24. package/lib/generated/idl/CSSMediaRule.js +7 -21
  25. package/lib/generated/idl/CSSNamespaceRule.js +6 -14
  26. package/lib/generated/idl/CSSNestedDeclarations.js +6 -14
  27. package/lib/generated/idl/CSSPageRule.js +8 -27
  28. package/lib/generated/idl/CSSRule.js +9 -28
  29. package/lib/generated/idl/CSSRuleList.js +6 -12
  30. package/lib/generated/idl/CSSScopeRule.js +6 -12
  31. package/lib/generated/idl/CSSStyleDeclaration.js +13 -61
  32. package/lib/generated/idl/CSSStyleProperties.js +3282 -19668
  33. package/lib/generated/idl/CSSStyleRule.js +8 -27
  34. package/lib/generated/idl/CSSStyleSheet.js +13 -61
  35. package/lib/generated/idl/CSSSupportsRule.js +5 -7
  36. package/lib/generated/idl/CharacterData.js +18 -88
  37. package/lib/generated/idl/CloseEvent.js +7 -19
  38. package/lib/generated/idl/CompositionEvent.js +6 -14
  39. package/lib/generated/idl/Crypto.js +6 -12
  40. package/lib/generated/idl/CustomElementRegistry.js +9 -35
  41. package/lib/generated/idl/CustomEvent.js +6 -14
  42. package/lib/generated/idl/DOMException.js +7 -21
  43. package/lib/generated/idl/DOMImplementation.js +8 -27
  44. package/lib/generated/idl/DOMParser.js +5 -7
  45. package/lib/generated/idl/DOMRect.js +12 -36
  46. package/lib/generated/idl/DOMRectReadOnly.js +13 -63
  47. package/lib/generated/idl/DOMTokenList.js +15 -62
  48. package/lib/generated/idl/DeviceMotionEvent.js +8 -28
  49. package/lib/generated/idl/DeviceMotionEventAcceleration.js +7 -21
  50. package/lib/generated/idl/DeviceMotionEventRotationRate.js +7 -21
  51. package/lib/generated/idl/DeviceOrientationEvent.js +8 -28
  52. package/lib/generated/idl/Document.js +258 -1534
  53. package/lib/generated/idl/DocumentFragment.js +14 -67
  54. package/lib/generated/idl/DocumentType.js +11 -40
  55. package/lib/generated/idl/Element.js +160 -936
  56. package/lib/generated/idl/ElementInternals.js +90 -518
  57. package/lib/generated/idl/ErrorEvent.js +9 -31
  58. package/lib/generated/idl/Event.js +24 -116
  59. package/lib/generated/idl/EventTarget.js +7 -21
  60. package/lib/generated/idl/External.js +6 -14
  61. package/lib/generated/idl/File.js +6 -12
  62. package/lib/generated/idl/FileList.js +6 -10
  63. package/lib/generated/idl/FileReader.js +24 -130
  64. package/lib/generated/idl/FocusEvent.js +5 -7
  65. package/lib/generated/idl/FormData.js +14 -50
  66. package/lib/generated/idl/HTMLAnchorElement.js +50 -279
  67. package/lib/generated/idl/HTMLAreaElement.js +40 -219
  68. package/lib/generated/idl/HTMLBRElement.js +6 -12
  69. package/lib/generated/idl/HTMLBaseElement.js +8 -24
  70. package/lib/generated/idl/HTMLBodyElement.js +48 -280
  71. package/lib/generated/idl/HTMLButtonElement.js +26 -140
  72. package/lib/generated/idl/HTMLCanvasElement.js +11 -44
  73. package/lib/generated/idl/HTMLCollection.js +7 -19
  74. package/lib/generated/idl/HTMLDListElement.js +6 -12
  75. package/lib/generated/idl/HTMLDataElement.js +6 -12
  76. package/lib/generated/idl/HTMLDataListElement.js +5 -7
  77. package/lib/generated/idl/HTMLDetailsElement.js +6 -12
  78. package/lib/generated/idl/HTMLDialogElement.js +6 -12
  79. package/lib/generated/idl/HTMLDirectoryElement.js +6 -12
  80. package/lib/generated/idl/HTMLDivElement.js +6 -12
  81. package/lib/generated/idl/HTMLElement.js +210 -1322
  82. package/lib/generated/idl/HTMLEmbedElement.js +16 -72
  83. package/lib/generated/idl/HTMLFieldSetElement.js +17 -87
  84. package/lib/generated/idl/HTMLFontElement.js +10 -36
  85. package/lib/generated/idl/HTMLFormControlsCollection.js +5 -7
  86. package/lib/generated/idl/HTMLFormElement.js +25 -132
  87. package/lib/generated/idl/HTMLFrameElement.js +22 -110
  88. package/lib/generated/idl/HTMLFrameSetElement.js +40 -232
  89. package/lib/generated/idl/HTMLHRElement.js +14 -60
  90. package/lib/generated/idl/HTMLHeadingElement.js +6 -12
  91. package/lib/generated/idl/HTMLHtmlElement.js +6 -12
  92. package/lib/generated/idl/HTMLIFrameElement.js +31 -165
  93. package/lib/generated/idl/HTMLImageElement.js +40 -220
  94. package/lib/generated/idl/HTMLInputElement.js +90 -536
  95. package/lib/generated/idl/HTMLLIElement.js +8 -24
  96. package/lib/generated/idl/HTMLLabelElement.js +8 -26
  97. package/lib/generated/idl/HTMLLegendElement.js +7 -19
  98. package/lib/generated/idl/HTMLLinkElement.js +25 -129
  99. package/lib/generated/idl/HTMLMapElement.js +7 -19
  100. package/lib/generated/idl/HTMLMarqueeElement.js +24 -120
  101. package/lib/generated/idl/HTMLMediaElement.js +46 -275
  102. package/lib/generated/idl/HTMLMenuElement.js +6 -12
  103. package/lib/generated/idl/HTMLMetaElement.js +12 -48
  104. package/lib/generated/idl/HTMLMeterElement.js +17 -79
  105. package/lib/generated/idl/HTMLModElement.js +8 -24
  106. package/lib/generated/idl/HTMLOListElement.js +12 -48
  107. package/lib/generated/idl/HTMLObjectElement.js +44 -248
  108. package/lib/generated/idl/HTMLOptGroupElement.js +8 -24
  109. package/lib/generated/idl/HTMLOptionElement.js +18 -87
  110. package/lib/generated/idl/HTMLOptionsCollection.js +10 -39
  111. package/lib/generated/idl/HTMLOutputElement.js +21 -113
  112. package/lib/generated/idl/HTMLParagraphElement.js +6 -12
  113. package/lib/generated/idl/HTMLParamElement.js +12 -48
  114. package/lib/generated/idl/HTMLPreElement.js +6 -12
  115. package/lib/generated/idl/HTMLProgressElement.js +10 -38
  116. package/lib/generated/idl/HTMLQuoteElement.js +6 -12
  117. package/lib/generated/idl/HTMLScriptElement.js +20 -96
  118. package/lib/generated/idl/HTMLSelectElement.js +37 -214
  119. package/lib/generated/idl/HTMLSlotElement.js +8 -24
  120. package/lib/generated/idl/HTMLSourceElement.js +14 -60
  121. package/lib/generated/idl/HTMLStyleElement.js +11 -44
  122. package/lib/generated/idl/HTMLTableCaptionElement.js +6 -12
  123. package/lib/generated/idl/HTMLTableCellElement.js +33 -175
  124. package/lib/generated/idl/HTMLTableColElement.js +16 -72
  125. package/lib/generated/idl/HTMLTableElement.js +39 -220
  126. package/lib/generated/idl/HTMLTableRowElement.js +19 -94
  127. package/lib/generated/idl/HTMLTableSectionElement.js +15 -68
  128. package/lib/generated/idl/HTMLTemplateElement.js +5 -7
  129. package/lib/generated/idl/HTMLTextAreaElement.js +55 -322
  130. package/lib/generated/idl/HTMLTimeElement.js +6 -12
  131. package/lib/generated/idl/HTMLTitleElement.js +6 -12
  132. package/lib/generated/idl/HTMLTrackElement.js +15 -67
  133. package/lib/generated/idl/HTMLUListElement.js +8 -24
  134. package/lib/generated/idl/HTMLVideoElement.js +14 -62
  135. package/lib/generated/idl/HashChangeEvent.js +6 -14
  136. package/lib/generated/idl/Headers.js +14 -50
  137. package/lib/generated/idl/History.js +11 -34
  138. package/lib/generated/idl/InputEvent.js +7 -19
  139. package/lib/generated/idl/KeyboardEvent.js +17 -91
  140. package/lib/generated/idl/Location.js +25 -114
  141. package/lib/generated/idl/MediaList.js +11 -41
  142. package/lib/generated/idl/MessageEvent.js +10 -42
  143. package/lib/generated/idl/MimeType.js +8 -26
  144. package/lib/generated/idl/MimeTypeArray.js +7 -19
  145. package/lib/generated/idl/MouseEvent.js +25 -139
  146. package/lib/generated/idl/MutationObserver.js +7 -21
  147. package/lib/generated/idl/MutationRecord.js +13 -63
  148. package/lib/generated/idl/NamedNodeMap.js +12 -54
  149. package/lib/generated/idl/Navigator.js +21 -115
  150. package/lib/generated/idl/Node.js +35 -161
  151. package/lib/generated/idl/NodeIterator.js +12 -54
  152. package/lib/generated/idl/NodeList.js +6 -10
  153. package/lib/generated/idl/PageTransitionEvent.js +5 -7
  154. package/lib/generated/idl/Performance.js +7 -17
  155. package/lib/generated/idl/Plugin.js +10 -32
  156. package/lib/generated/idl/PluginArray.js +8 -24
  157. package/lib/generated/idl/PointerEvent.js +19 -105
  158. package/lib/generated/idl/PopStateEvent.js +5 -7
  159. package/lib/generated/idl/ProcessingInstruction.js +5 -7
  160. package/lib/generated/idl/ProgressEvent.js +7 -21
  161. package/lib/generated/idl/PromiseRejectionEvent.js +6 -14
  162. package/lib/generated/idl/QuotaExceededError.js +6 -14
  163. package/lib/generated/idl/RadioNodeList.js +6 -13
  164. package/lib/generated/idl/Range.js +27 -126
  165. package/lib/generated/idl/SVGAnimatedPreserveAspectRatio.js +6 -14
  166. package/lib/generated/idl/SVGAnimatedRect.js +6 -14
  167. package/lib/generated/idl/SVGAnimatedString.js +7 -20
  168. package/lib/generated/idl/SVGElement.js +192 -1208
  169. package/lib/generated/idl/SVGGraphicsElement.js +6 -14
  170. package/lib/generated/idl/SVGNumber.js +6 -9
  171. package/lib/generated/idl/SVGPreserveAspectRatio.js +8 -26
  172. package/lib/generated/idl/SVGRect.js +12 -36
  173. package/lib/generated/idl/SVGSVGElement.js +45 -271
  174. package/lib/generated/idl/SVGStringList.js +13 -61
  175. package/lib/generated/idl/SVGSymbolElement.js +6 -14
  176. package/lib/generated/idl/Screen.js +10 -38
  177. package/lib/generated/idl/Selection.js +26 -140
  178. package/lib/generated/idl/ShadowRoot.js +9 -29
  179. package/lib/generated/idl/Storage.js +10 -30
  180. package/lib/generated/idl/StorageEvent.js +10 -38
  181. package/lib/generated/idl/StyleSheet.js +13 -52
  182. package/lib/generated/idl/StyleSheetList.js +6 -12
  183. package/lib/generated/idl/SubmitEvent.js +5 -7
  184. package/lib/generated/idl/Text.js +7 -17
  185. package/lib/generated/idl/TextDecoder.js +8 -25
  186. package/lib/generated/idl/TextEncoder.js +7 -18
  187. package/lib/generated/idl/TouchEvent.js +11 -49
  188. package/lib/generated/idl/TransitionEvent.js +7 -21
  189. package/lib/generated/idl/TreeWalker.js +16 -77
  190. package/lib/generated/idl/UIEvent.js +8 -20
  191. package/lib/generated/idl/ValidityState.js +15 -77
  192. package/lib/generated/idl/WebSocket.js +21 -103
  193. package/lib/generated/idl/WheelEvent.js +8 -28
  194. package/lib/generated/idl/XMLHttpRequest.js +27 -150
  195. package/lib/generated/idl/XMLHttpRequestEventTarget.js +18 -91
  196. package/lib/generated/idl/XMLSerializer.js +5 -7
  197. package/lib/generated/idl/utils.js +11 -0
  198. package/lib/jsdom/living/constraint-validation/DefaultConstraintValidation-impl.js +4 -1
  199. package/lib/jsdom/living/css/CSSGroupingRule-impl.js +2 -2
  200. package/lib/jsdom/living/css/CSSMediaRule-impl.js +2 -1
  201. package/lib/jsdom/living/css/CSSRule-impl.js +13 -0
  202. package/lib/jsdom/living/css/CSSRuleList-impl.js +1 -1
  203. package/lib/jsdom/living/css/CSSStyleDeclaration-impl.js +19 -8
  204. package/lib/jsdom/living/css/CSSStyleRule-impl.js +2 -0
  205. package/lib/jsdom/living/css/CSSStyleSheet-impl.js +4 -4
  206. package/lib/jsdom/living/css/MediaList-impl.js +9 -0
  207. package/lib/jsdom/living/css/StyleSheet-impl.js +10 -1
  208. package/lib/jsdom/living/css/helpers/computed-style.js +7 -3
  209. package/lib/jsdom/living/css/helpers/css-parser.js +7 -2
  210. package/lib/jsdom/living/css/helpers/css-values.js +2 -1
  211. package/lib/jsdom/living/helpers/document-named-properties.js +17 -0
  212. package/lib/jsdom/living/helpers/focusing.js +27 -20
  213. package/lib/jsdom/living/helpers/iterable-weak-list.js +16 -9
  214. package/lib/jsdom/living/helpers/shadow-dom.js +48 -1
  215. package/lib/jsdom/living/nodes/Document-impl.js +15 -17
  216. package/lib/jsdom/living/nodes/HTMLCollection-impl.js +1 -0
  217. package/lib/jsdom/living/nodes/HTMLInputElement-impl.js +34 -14
  218. package/lib/jsdom/living/nodes/HTMLOptionElement-impl.js +17 -7
  219. package/lib/jsdom/living/nodes/HTMLSelectElement-impl.js +9 -8
  220. package/lib/jsdom/living/nodes/HTMLTextAreaElement-impl.js +10 -3
  221. package/lib/jsdom/living/nodes/Node-impl.js +21 -2
  222. package/package.json +18 -43
@@ -17,6 +17,10 @@ const interfaceName = "HTMLMediaElement";
17
17
  const $interfaceDescriptor = utils.createInterfaceDescriptor(() => HTMLElement.interfaceDescriptor);
18
18
  exports.interfaceDescriptor = $interfaceDescriptor;
19
19
 
20
+ function $requireImpl(wrapper, globalObject, context) {
21
+ return utils.requireImplForWrapper(wrapper, $interfaceDescriptor, globalObject, interfaceName, context);
22
+ }
23
+
20
24
  exports.is = value => {
21
25
  return utils.implForWrapperWithInterface(value, $interfaceDescriptor) !== null;
22
26
  };
@@ -100,24 +104,12 @@ exports.install = (globalObject, globalNames) => {
100
104
  }
101
105
 
102
106
  load() {
103
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
104
- if ($impl === null) {
105
- throw new globalObject.TypeError(
106
- "'load' called on an object that is not a valid instance of HTMLMediaElement."
107
- );
108
- }
109
-
107
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "load");
110
108
  return $impl.load();
111
109
  }
112
110
 
113
111
  canPlayType(type) {
114
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
115
- if ($impl === null) {
116
- throw new globalObject.TypeError(
117
- "'canPlayType' called on an object that is not a valid instance of HTMLMediaElement."
118
- );
119
- }
120
-
112
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "canPlayType");
121
113
  if (arguments.length < 1) {
122
114
  throw new globalObject.TypeError(
123
115
  `Failed to execute 'canPlayType' on 'HTMLMediaElement': 1 argument required, but only ${arguments.length} present.`
@@ -137,13 +129,7 @@ exports.install = (globalObject, globalNames) => {
137
129
 
138
130
  play() {
139
131
  try {
140
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
141
- if ($impl === null) {
142
- throw new globalObject.TypeError(
143
- "'play' called on an object that is not a valid instance of HTMLMediaElement."
144
- );
145
- }
146
-
132
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "play");
147
133
  return utils.tryWrapperForImpl($impl.play());
148
134
  } catch (e) {
149
135
  return globalObject.Promise.reject(e);
@@ -151,24 +137,12 @@ exports.install = (globalObject, globalNames) => {
151
137
  }
152
138
 
153
139
  pause() {
154
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
155
- if ($impl === null) {
156
- throw new globalObject.TypeError(
157
- "'pause' called on an object that is not a valid instance of HTMLMediaElement."
158
- );
159
- }
160
-
140
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "pause");
161
141
  return $impl.pause();
162
142
  }
163
143
 
164
144
  addTextTrack(kind) {
165
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
166
- if ($impl === null) {
167
- throw new globalObject.TypeError(
168
- "'addTextTrack' called on an object that is not a valid instance of HTMLMediaElement."
169
- );
170
- }
171
-
145
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "addTextTrack");
172
146
  if (arguments.length < 1) {
173
147
  throw new globalObject.TypeError(
174
148
  `Failed to execute 'addTextTrack' on 'HTMLMediaElement': 1 argument required, but only ${arguments.length} present.`
@@ -210,12 +184,7 @@ exports.install = (globalObject, globalNames) => {
210
184
  }
211
185
 
212
186
  get src() {
213
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
214
- if ($impl === null) {
215
- throw new globalObject.TypeError(
216
- "'get src' called on an object that is not a valid instance of HTMLMediaElement."
217
- );
218
- }
187
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get src");
219
188
 
220
189
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
221
190
  try {
@@ -246,12 +215,7 @@ exports.install = (globalObject, globalNames) => {
246
215
  }
247
216
 
248
217
  set src(V) {
249
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
250
- if ($impl === null) {
251
- throw new globalObject.TypeError(
252
- "'set src' called on an object that is not a valid instance of HTMLMediaElement."
253
- );
254
- }
218
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set src");
255
219
 
256
220
  V = conversions["USVString"](V, {
257
221
  context: "Failed to set the 'src' property on 'HTMLMediaElement': The provided value",
@@ -267,23 +231,12 @@ exports.install = (globalObject, globalNames) => {
267
231
  }
268
232
 
269
233
  get currentSrc() {
270
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
271
- if ($impl === null) {
272
- throw new globalObject.TypeError(
273
- "'get currentSrc' called on an object that is not a valid instance of HTMLMediaElement."
274
- );
275
- }
276
-
234
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get currentSrc");
277
235
  return $impl["currentSrc"];
278
236
  }
279
237
 
280
238
  get crossOrigin() {
281
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
282
- if ($impl === null) {
283
- throw new globalObject.TypeError(
284
- "'get crossOrigin' called on an object that is not a valid instance of HTMLMediaElement."
285
- );
286
- }
239
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get crossOrigin");
287
240
 
288
241
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
289
242
  try {
@@ -294,12 +247,7 @@ exports.install = (globalObject, globalNames) => {
294
247
  }
295
248
 
296
249
  set crossOrigin(V) {
297
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
298
- if ($impl === null) {
299
- throw new globalObject.TypeError(
300
- "'set crossOrigin' called on an object that is not a valid instance of HTMLMediaElement."
301
- );
302
- }
250
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set crossOrigin");
303
251
 
304
252
  if (V === null || V === undefined) {
305
253
  V = null;
@@ -323,23 +271,12 @@ exports.install = (globalObject, globalNames) => {
323
271
  }
324
272
 
325
273
  get networkState() {
326
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
327
- if ($impl === null) {
328
- throw new globalObject.TypeError(
329
- "'get networkState' called on an object that is not a valid instance of HTMLMediaElement."
330
- );
331
- }
332
-
274
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get networkState");
333
275
  return $impl["networkState"];
334
276
  }
335
277
 
336
278
  get preload() {
337
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
338
- if ($impl === null) {
339
- throw new globalObject.TypeError(
340
- "'get preload' called on an object that is not a valid instance of HTMLMediaElement."
341
- );
342
- }
279
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get preload");
343
280
 
344
281
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
345
282
  try {
@@ -351,12 +288,7 @@ exports.install = (globalObject, globalNames) => {
351
288
  }
352
289
 
353
290
  set preload(V) {
354
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
355
- if ($impl === null) {
356
- throw new globalObject.TypeError(
357
- "'set preload' called on an object that is not a valid instance of HTMLMediaElement."
358
- );
359
- }
291
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set preload");
360
292
 
361
293
  V = conversions["DOMString"](V, {
362
294
  context: "Failed to set the 'preload' property on 'HTMLMediaElement': The provided value",
@@ -372,56 +304,27 @@ exports.install = (globalObject, globalNames) => {
372
304
  }
373
305
 
374
306
  get buffered() {
375
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
376
- if ($impl === null) {
377
- throw new globalObject.TypeError(
378
- "'get buffered' called on an object that is not a valid instance of HTMLMediaElement."
379
- );
380
- }
381
-
307
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get buffered");
382
308
  return utils.tryWrapperForImpl($impl["buffered"]);
383
309
  }
384
310
 
385
311
  get readyState() {
386
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
387
- if ($impl === null) {
388
- throw new globalObject.TypeError(
389
- "'get readyState' called on an object that is not a valid instance of HTMLMediaElement."
390
- );
391
- }
392
-
312
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get readyState");
393
313
  return $impl["readyState"];
394
314
  }
395
315
 
396
316
  get seeking() {
397
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
398
- if ($impl === null) {
399
- throw new globalObject.TypeError(
400
- "'get seeking' called on an object that is not a valid instance of HTMLMediaElement."
401
- );
402
- }
403
-
317
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get seeking");
404
318
  return $impl["seeking"];
405
319
  }
406
320
 
407
321
  get currentTime() {
408
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
409
- if ($impl === null) {
410
- throw new globalObject.TypeError(
411
- "'get currentTime' called on an object that is not a valid instance of HTMLMediaElement."
412
- );
413
- }
414
-
322
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get currentTime");
415
323
  return $impl["currentTime"];
416
324
  }
417
325
 
418
326
  set currentTime(V) {
419
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
420
- if ($impl === null) {
421
- throw new globalObject.TypeError(
422
- "'set currentTime' called on an object that is not a valid instance of HTMLMediaElement."
423
- );
424
- }
327
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set currentTime");
425
328
 
426
329
  V = conversions["double"](V, {
427
330
  context: "Failed to set the 'currentTime' property on 'HTMLMediaElement': The provided value",
@@ -432,45 +335,22 @@ exports.install = (globalObject, globalNames) => {
432
335
  }
433
336
 
434
337
  get duration() {
435
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
436
- if ($impl === null) {
437
- throw new globalObject.TypeError(
438
- "'get duration' called on an object that is not a valid instance of HTMLMediaElement."
439
- );
440
- }
441
-
338
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get duration");
442
339
  return $impl["duration"];
443
340
  }
444
341
 
445
342
  get paused() {
446
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
447
- if ($impl === null) {
448
- throw new globalObject.TypeError(
449
- "'get paused' called on an object that is not a valid instance of HTMLMediaElement."
450
- );
451
- }
452
-
343
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get paused");
453
344
  return $impl["paused"];
454
345
  }
455
346
 
456
347
  get defaultPlaybackRate() {
457
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
458
- if ($impl === null) {
459
- throw new globalObject.TypeError(
460
- "'get defaultPlaybackRate' called on an object that is not a valid instance of HTMLMediaElement."
461
- );
462
- }
463
-
348
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get defaultPlaybackRate");
464
349
  return $impl["defaultPlaybackRate"];
465
350
  }
466
351
 
467
352
  set defaultPlaybackRate(V) {
468
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
469
- if ($impl === null) {
470
- throw new globalObject.TypeError(
471
- "'set defaultPlaybackRate' called on an object that is not a valid instance of HTMLMediaElement."
472
- );
473
- }
353
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set defaultPlaybackRate");
474
354
 
475
355
  V = conversions["double"](V, {
476
356
  context: "Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided value",
@@ -481,23 +361,12 @@ exports.install = (globalObject, globalNames) => {
481
361
  }
482
362
 
483
363
  get playbackRate() {
484
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
485
- if ($impl === null) {
486
- throw new globalObject.TypeError(
487
- "'get playbackRate' called on an object that is not a valid instance of HTMLMediaElement."
488
- );
489
- }
490
-
364
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get playbackRate");
491
365
  return $impl["playbackRate"];
492
366
  }
493
367
 
494
368
  set playbackRate(V) {
495
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
496
- if ($impl === null) {
497
- throw new globalObject.TypeError(
498
- "'set playbackRate' called on an object that is not a valid instance of HTMLMediaElement."
499
- );
500
- }
369
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set playbackRate");
501
370
 
502
371
  V = conversions["double"](V, {
503
372
  context: "Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided value",
@@ -508,45 +377,22 @@ exports.install = (globalObject, globalNames) => {
508
377
  }
509
378
 
510
379
  get played() {
511
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
512
- if ($impl === null) {
513
- throw new globalObject.TypeError(
514
- "'get played' called on an object that is not a valid instance of HTMLMediaElement."
515
- );
516
- }
517
-
380
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get played");
518
381
  return utils.tryWrapperForImpl($impl["played"]);
519
382
  }
520
383
 
521
384
  get seekable() {
522
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
523
- if ($impl === null) {
524
- throw new globalObject.TypeError(
525
- "'get seekable' called on an object that is not a valid instance of HTMLMediaElement."
526
- );
527
- }
528
-
385
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get seekable");
529
386
  return utils.tryWrapperForImpl($impl["seekable"]);
530
387
  }
531
388
 
532
389
  get ended() {
533
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
534
- if ($impl === null) {
535
- throw new globalObject.TypeError(
536
- "'get ended' called on an object that is not a valid instance of HTMLMediaElement."
537
- );
538
- }
539
-
390
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get ended");
540
391
  return $impl["ended"];
541
392
  }
542
393
 
543
394
  get autoplay() {
544
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
545
- if ($impl === null) {
546
- throw new globalObject.TypeError(
547
- "'get autoplay' called on an object that is not a valid instance of HTMLMediaElement."
548
- );
549
- }
395
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get autoplay");
550
396
 
551
397
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
552
398
  try {
@@ -557,12 +403,7 @@ exports.install = (globalObject, globalNames) => {
557
403
  }
558
404
 
559
405
  set autoplay(V) {
560
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
561
- if ($impl === null) {
562
- throw new globalObject.TypeError(
563
- "'set autoplay' called on an object that is not a valid instance of HTMLMediaElement."
564
- );
565
- }
406
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set autoplay");
566
407
 
567
408
  V = conversions["boolean"](V, {
568
409
  context: "Failed to set the 'autoplay' property on 'HTMLMediaElement': The provided value",
@@ -582,12 +423,7 @@ exports.install = (globalObject, globalNames) => {
582
423
  }
583
424
 
584
425
  get loop() {
585
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
586
- if ($impl === null) {
587
- throw new globalObject.TypeError(
588
- "'get loop' called on an object that is not a valid instance of HTMLMediaElement."
589
- );
590
- }
426
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get loop");
591
427
 
592
428
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
593
429
  try {
@@ -598,12 +434,7 @@ exports.install = (globalObject, globalNames) => {
598
434
  }
599
435
 
600
436
  set loop(V) {
601
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
602
- if ($impl === null) {
603
- throw new globalObject.TypeError(
604
- "'set loop' called on an object that is not a valid instance of HTMLMediaElement."
605
- );
606
- }
437
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set loop");
607
438
 
608
439
  V = conversions["boolean"](V, {
609
440
  context: "Failed to set the 'loop' property on 'HTMLMediaElement': The provided value",
@@ -623,12 +454,7 @@ exports.install = (globalObject, globalNames) => {
623
454
  }
624
455
 
625
456
  get controls() {
626
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
627
- if ($impl === null) {
628
- throw new globalObject.TypeError(
629
- "'get controls' called on an object that is not a valid instance of HTMLMediaElement."
630
- );
631
- }
457
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get controls");
632
458
 
633
459
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
634
460
  try {
@@ -639,12 +465,7 @@ exports.install = (globalObject, globalNames) => {
639
465
  }
640
466
 
641
467
  set controls(V) {
642
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
643
- if ($impl === null) {
644
- throw new globalObject.TypeError(
645
- "'set controls' called on an object that is not a valid instance of HTMLMediaElement."
646
- );
647
- }
468
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set controls");
648
469
 
649
470
  V = conversions["boolean"](V, {
650
471
  context: "Failed to set the 'controls' property on 'HTMLMediaElement': The provided value",
@@ -664,23 +485,12 @@ exports.install = (globalObject, globalNames) => {
664
485
  }
665
486
 
666
487
  get volume() {
667
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
668
- if ($impl === null) {
669
- throw new globalObject.TypeError(
670
- "'get volume' called on an object that is not a valid instance of HTMLMediaElement."
671
- );
672
- }
673
-
488
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get volume");
674
489
  return $impl["volume"];
675
490
  }
676
491
 
677
492
  set volume(V) {
678
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
679
- if ($impl === null) {
680
- throw new globalObject.TypeError(
681
- "'set volume' called on an object that is not a valid instance of HTMLMediaElement."
682
- );
683
- }
493
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set volume");
684
494
 
685
495
  V = conversions["double"](V, {
686
496
  context: "Failed to set the 'volume' property on 'HTMLMediaElement': The provided value",
@@ -691,23 +501,12 @@ exports.install = (globalObject, globalNames) => {
691
501
  }
692
502
 
693
503
  get muted() {
694
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
695
- if ($impl === null) {
696
- throw new globalObject.TypeError(
697
- "'get muted' called on an object that is not a valid instance of HTMLMediaElement."
698
- );
699
- }
700
-
504
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get muted");
701
505
  return $impl["muted"];
702
506
  }
703
507
 
704
508
  set muted(V) {
705
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
706
- if ($impl === null) {
707
- throw new globalObject.TypeError(
708
- "'set muted' called on an object that is not a valid instance of HTMLMediaElement."
709
- );
710
- }
509
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set muted");
711
510
 
712
511
  V = conversions["boolean"](V, {
713
512
  context: "Failed to set the 'muted' property on 'HTMLMediaElement': The provided value",
@@ -718,12 +517,7 @@ exports.install = (globalObject, globalNames) => {
718
517
  }
719
518
 
720
519
  get defaultMuted() {
721
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
722
- if ($impl === null) {
723
- throw new globalObject.TypeError(
724
- "'get defaultMuted' called on an object that is not a valid instance of HTMLMediaElement."
725
- );
726
- }
520
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get defaultMuted");
727
521
 
728
522
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
729
523
  try {
@@ -734,12 +528,7 @@ exports.install = (globalObject, globalNames) => {
734
528
  }
735
529
 
736
530
  set defaultMuted(V) {
737
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
738
- if ($impl === null) {
739
- throw new globalObject.TypeError(
740
- "'set defaultMuted' called on an object that is not a valid instance of HTMLMediaElement."
741
- );
742
- }
531
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set defaultMuted");
743
532
 
744
533
  V = conversions["boolean"](V, {
745
534
  context: "Failed to set the 'defaultMuted' property on 'HTMLMediaElement': The provided value",
@@ -759,39 +548,21 @@ exports.install = (globalObject, globalNames) => {
759
548
  }
760
549
 
761
550
  get audioTracks() {
762
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
763
- if ($impl === null) {
764
- throw new globalObject.TypeError(
765
- "'get audioTracks' called on an object that is not a valid instance of HTMLMediaElement."
766
- );
767
- }
768
-
551
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get audioTracks");
769
552
  return utils.getSameObject(this, "audioTracks", () => {
770
553
  return utils.tryWrapperForImpl($impl["audioTracks"]);
771
554
  });
772
555
  }
773
556
 
774
557
  get videoTracks() {
775
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
776
- if ($impl === null) {
777
- throw new globalObject.TypeError(
778
- "'get videoTracks' called on an object that is not a valid instance of HTMLMediaElement."
779
- );
780
- }
781
-
558
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get videoTracks");
782
559
  return utils.getSameObject(this, "videoTracks", () => {
783
560
  return utils.tryWrapperForImpl($impl["videoTracks"]);
784
561
  });
785
562
  }
786
563
 
787
564
  get textTracks() {
788
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
789
- if ($impl === null) {
790
- throw new globalObject.TypeError(
791
- "'get textTracks' called on an object that is not a valid instance of HTMLMediaElement."
792
- );
793
- }
794
-
565
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get textTracks");
795
566
  return utils.getSameObject(this, "textTracks", () => {
796
567
  return utils.tryWrapperForImpl($impl["textTracks"]);
797
568
  });
@@ -17,6 +17,10 @@ const interfaceName = "HTMLMenuElement";
17
17
  const $interfaceDescriptor = utils.createInterfaceDescriptor(() => HTMLElement.interfaceDescriptor);
18
18
  exports.interfaceDescriptor = $interfaceDescriptor;
19
19
 
20
+ function $requireImpl(wrapper, globalObject, context) {
21
+ return utils.requireImplForWrapper(wrapper, $interfaceDescriptor, globalObject, interfaceName, context);
22
+ }
23
+
20
24
  exports.is = value => {
21
25
  return utils.implForWrapperWithInterface(value, $interfaceDescriptor) !== null;
22
26
  };
@@ -100,12 +104,7 @@ exports.install = (globalObject, globalNames) => {
100
104
  }
101
105
 
102
106
  get compact() {
103
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
104
- if ($impl === null) {
105
- throw new globalObject.TypeError(
106
- "'get compact' called on an object that is not a valid instance of HTMLMenuElement."
107
- );
108
- }
107
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "get compact");
109
108
 
110
109
  ceReactionsPreSteps_jsdom_living_helpers_custom_elements(globalObject);
111
110
  try {
@@ -116,12 +115,7 @@ exports.install = (globalObject, globalNames) => {
116
115
  }
117
116
 
118
117
  set compact(V) {
119
- const $impl = utils.implForWrapperWithInterface(this ?? globalObject, $interfaceDescriptor);
120
- if ($impl === null) {
121
- throw new globalObject.TypeError(
122
- "'set compact' called on an object that is not a valid instance of HTMLMenuElement."
123
- );
124
- }
118
+ const $impl = $requireImpl(this ?? globalObject, globalObject, "set compact");
125
119
 
126
120
  V = conversions["boolean"](V, {
127
121
  context: "Failed to set the 'compact' property on 'HTMLMenuElement': The provided value",