happy-dom 7.1.0 → 7.2.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.

Potentially problematic release.


This version of happy-dom might be problematic. Click here for more details.

Files changed (42) hide show
  1. package/lib/config/ElementTag.d.ts +4 -2
  2. package/lib/config/ElementTag.js +4 -2
  3. package/lib/config/ElementTag.js.map +1 -1
  4. package/lib/config/NonImplemenetedElementClasses.js +0 -3
  5. package/lib/config/NonImplemenetedElementClasses.js.map +1 -1
  6. package/lib/index.d.ts +7 -1
  7. package/lib/index.js +8 -2
  8. package/lib/index.js.map +1 -1
  9. package/lib/nodes/html-audio-element/HTMLAudioElement.d.ts +11 -0
  10. package/lib/nodes/html-audio-element/HTMLAudioElement.js +17 -0
  11. package/lib/nodes/html-audio-element/HTMLAudioElement.js.map +1 -0
  12. package/lib/nodes/html-audio-element/IHTMLAudioElement.d.ts +9 -0
  13. package/lib/nodes/html-audio-element/IHTMLAudioElement.js +3 -0
  14. package/lib/nodes/html-audio-element/IHTMLAudioElement.js.map +1 -0
  15. package/lib/nodes/html-media-element/HTMLMediaElement.d.ts +234 -0
  16. package/lib/nodes/html-media-element/HTMLMediaElement.js +418 -0
  17. package/lib/nodes/html-media-element/HTMLMediaElement.js.map +1 -0
  18. package/lib/nodes/html-media-element/IHTMLMediaElement.d.ts +76 -0
  19. package/lib/nodes/html-media-element/IHTMLMediaElement.js +3 -0
  20. package/lib/nodes/html-media-element/IHTMLMediaElement.js.map +1 -0
  21. package/lib/nodes/html-video-element/HTMLVideoElement.d.ts +11 -0
  22. package/lib/nodes/html-video-element/HTMLVideoElement.js +17 -0
  23. package/lib/nodes/html-video-element/HTMLVideoElement.js.map +1 -0
  24. package/lib/nodes/html-video-element/IHTMLVideoElement.d.ts +9 -0
  25. package/lib/nodes/html-video-element/IHTMLVideoElement.js +3 -0
  26. package/lib/nodes/html-video-element/IHTMLVideoElement.js.map +1 -0
  27. package/lib/window/IWindow.d.ts +6 -0
  28. package/lib/window/Window.d.ts +6 -0
  29. package/lib/window/Window.js +6 -0
  30. package/lib/window/Window.js.map +1 -1
  31. package/package.json +2 -2
  32. package/src/config/ElementTag.ts +4 -2
  33. package/src/config/NonImplemenetedElementClasses.ts +0 -3
  34. package/src/index.ts +12 -0
  35. package/src/nodes/html-audio-element/HTMLAudioElement.ts +11 -0
  36. package/src/nodes/html-audio-element/IHTMLAudioElement.ts +11 -0
  37. package/src/nodes/html-media-element/HTMLMediaElement.ts +441 -0
  38. package/src/nodes/html-media-element/IHTMLMediaElement.ts +84 -0
  39. package/src/nodes/html-video-element/HTMLVideoElement.ts +11 -0
  40. package/src/nodes/html-video-element/IHTMLVideoElement.ts +11 -0
  41. package/src/window/IWindow.ts +6 -0
  42. package/src/window/Window.ts +6 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Window.js","sourceRoot":"","sources":["../../src/window/Window.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "happy-dom",
3
- "version": "7.1.0",
3
+ "version": "7.2.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/capricorn86/happy-dom",
6
6
  "repository": "https://github.com/capricorn86/happy-dom",
@@ -75,5 +75,5 @@
75
75
  "ts-jest": "^27.1.3",
76
76
  "typescript": "^4.6.2"
77
77
  },
78
- "gitHead": "583e9c50d9bf8d457e9b90fce8c5a7bf4758c629"
78
+ "gitHead": "5ca063b2f745c250c433eeb66325613f1cbd2185"
79
79
  }
@@ -18,6 +18,8 @@ import HTMLOptionElement from '../nodes/html-option-element/HTMLOptionElement';
18
18
  import HTMLOptGroupElement from '../nodes/html-opt-group-element/HTMLOptGroupElement';
19
19
  import HTMLDialogElement from '../nodes/html-dialog-element/HTMLDialogElement';
20
20
  import HTMLButtonElement from '../nodes/html-button-element/HTMLButtonElement';
21
+ import HTMLAudioElement from '../nodes/html-audio-element/HTMLAudioElement';
22
+ import HTMLVideoElement from '../nodes/html-video-element/HTMLVideoElement';
21
23
 
22
24
  export default {
23
25
  A: HTMLElement,
@@ -26,7 +28,7 @@ export default {
26
28
  AREA: HTMLElement,
27
29
  ARTICLE: HTMLElement,
28
30
  ASIDE: HTMLElement,
29
- AUDIO: HTMLElement,
31
+ AUDIO: HTMLAudioElement,
30
32
  B: HTMLElement,
31
33
  BASE: HTMLBaseElement,
32
34
  BDI: HTMLElement,
@@ -145,6 +147,6 @@ export default {
145
147
  U: HTMLElement,
146
148
  UL: HTMLElement,
147
149
  VAR: HTMLElement,
148
- VIDEO: HTMLElement,
150
+ VIDEO: HTMLVideoElement,
149
151
  WBR: HTMLElement
150
152
  };
@@ -28,7 +28,6 @@ export default [
28
28
  'HTMLLegendElement',
29
29
  'HTMLMapElement',
30
30
  'HTMLMarqueeElement',
31
- 'HTMLMediaElement',
32
31
  'HTMLMeterElement',
33
32
  'HTMLModElement',
34
33
  'HTMLOutputElement',
@@ -50,7 +49,5 @@ export default [
50
49
  'HTMLEmbedElement',
51
50
  'HTMLObjectElement',
52
51
  'HTMLParamElement',
53
- 'HTMLVideoElement',
54
- 'HTMLAudioElement',
55
52
  'HTMLTrackElement'
56
53
  ];
package/src/index.ts CHANGED
@@ -74,6 +74,12 @@ import HTMLLabelElement from './nodes/html-label-element/HTMLLabelElement';
74
74
  import IHTMLLabelElement from './nodes/html-label-element/IHTMLLabelElement';
75
75
  import HTMLMetaElement from './nodes/html-meta-element/HTMLMetaElement';
76
76
  import IHTMLMetaElement from './nodes/html-meta-element/IHTMLMetaElement';
77
+ import IHTMLMediaElement from './nodes/html-media-element/IHTMLMediaElement';
78
+ import HTMLMediaElement from './nodes/html-media-element/HTMLMediaElement';
79
+ import HTMLAudioElement from './nodes/html-audio-element/HTMLAudioElement';
80
+ import IHTMLAudioElement from './nodes/html-audio-element/IHTMLAudioElement';
81
+ import HTMLVideoElement from './nodes/html-video-element/HTMLVideoElement';
82
+ import IHTMLVideoElement from './nodes/html-video-element/IHTMLVideoElement';
77
83
  import HTMLBaseElement from './nodes/html-base-element/HTMLBaseElement';
78
84
  import IHTMLBaseElement from './nodes/html-base-element/IHTMLBaseElement';
79
85
  import SVGElement from './nodes/svg-element/SVGElement';
@@ -192,6 +198,12 @@ export {
192
198
  IHTMLLabelElement,
193
199
  HTMLMetaElement,
194
200
  IHTMLMetaElement,
201
+ HTMLMediaElement,
202
+ IHTMLMediaElement,
203
+ HTMLAudioElement,
204
+ IHTMLAudioElement,
205
+ HTMLVideoElement,
206
+ IHTMLVideoElement,
195
207
  HTMLBaseElement,
196
208
  IHTMLBaseElement,
197
209
  SVGElement,
@@ -0,0 +1,11 @@
1
+ import HTMLMediaElement from '../html-media-element/HTMLMediaElement';
2
+ import IHTMLAudioElement from './IHTMLAudioElement';
3
+
4
+ /**
5
+ * HTML Audio Element.
6
+ *
7
+ * Reference:
8
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement.
9
+ *
10
+ */
11
+ export default class HTMLAudioElement extends HTMLMediaElement implements IHTMLAudioElement {}
@@ -0,0 +1,11 @@
1
+ import IHTMLMediaElement from '../html-media-element/IHTMLMediaElement';
2
+
3
+ /**
4
+ * HTML Audio Element.
5
+ *
6
+ * Reference:
7
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLAudioElement.
8
+ */
9
+
10
+ type IHTMLAudioElement = IHTMLMediaElement;
11
+ export default IHTMLAudioElement;
@@ -0,0 +1,441 @@
1
+ import ErrorEvent from 'src/event/events/ErrorEvent';
2
+ import Event from '../../event/Event';
3
+ import DOMException from '../../exception/DOMException';
4
+ import DOMExceptionNameEnum from '../../exception/DOMExceptionNameEnum';
5
+ import HTMLElement from '../html-element/HTMLElement';
6
+ import IHTMLMediaElement, { IMediaError } from './IHTMLMediaElement';
7
+
8
+ /**
9
+ *
10
+ * This implementation coming from jsdom
11
+ * https://github.com/jsdom/jsdom/blob/master/lib/jsdom/living/nodes/HTMLMediaElement-impl.js#L7
12
+ *
13
+ */
14
+ function getTimeRangeDummy(): object {
15
+ return {
16
+ length: 0,
17
+ start() {
18
+ return 0;
19
+ },
20
+ end() {
21
+ return 0;
22
+ }
23
+ };
24
+ }
25
+ /**
26
+ * HTML Media Element.
27
+ *
28
+ * Reference:
29
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement.
30
+ *
31
+ */
32
+ export default class HTMLMediaElement extends HTMLElement implements IHTMLMediaElement {
33
+ // Public Properties
34
+ public readonly buffered = getTimeRangeDummy();
35
+ public readonly duration = NaN;
36
+ public readonly error: IMediaError = null;
37
+ public readonly ended = false;
38
+ public readonly networkState = 0;
39
+ public readonly readyState = 0;
40
+ public readonly textTracks = [];
41
+ public readonly videoTracks = [];
42
+ public readonly seeking = false;
43
+ public readonly seekable = getTimeRangeDummy();
44
+ public readonly played = getTimeRangeDummy();
45
+
46
+ // Events
47
+ public onabort: (event: Event) => void = null;
48
+ public oncanplay: (event: Event) => void = null;
49
+ public oncanplaythrough: (event: Event) => void = null;
50
+ public ondurationchange: (event: Event) => void = null;
51
+ public onemptied: (event: Event) => void = null;
52
+ public onended: (event: Event) => void = null;
53
+ public onerror: (event: ErrorEvent) => void = null;
54
+ public onloadeddata: (event: Event) => void = null;
55
+
56
+ #volume = 1;
57
+ #paused = true;
58
+ #currentTime = 0;
59
+ #playbackRate = 1;
60
+ #defaultPlaybackRate = 1;
61
+ #muted = false;
62
+ #defaultMuted = false;
63
+ #preservesPitch = true;
64
+ /**
65
+ * Returns autoplay.
66
+ *
67
+ * @returns Autoplay.
68
+ */
69
+ public get autoplay(): boolean {
70
+ return this.getAttributeNS(null, 'autoplay') !== null;
71
+ }
72
+
73
+ /**
74
+ * Sets autoplay.
75
+ *
76
+ * @param autoplay Autoplay.
77
+ */
78
+ public set autoplay(autoplay: boolean) {
79
+ if (!autoplay) {
80
+ this.removeAttributeNS(null, 'autoplay');
81
+ } else {
82
+ this.setAttributeNS(null, 'autoplay', '');
83
+ }
84
+ }
85
+
86
+ /**
87
+ * Returns controls.
88
+ *
89
+ * @returns Controls.
90
+ */
91
+ public get controls(): boolean {
92
+ return this.getAttributeNS(null, 'controls') !== null;
93
+ }
94
+
95
+ /**
96
+ * Sets controls.
97
+ *
98
+ * @param controls Controls.
99
+ */
100
+ public set controls(controls: boolean) {
101
+ if (!controls) {
102
+ this.removeAttributeNS(null, 'controls');
103
+ } else {
104
+ this.setAttributeNS(null, 'controls', '');
105
+ }
106
+ }
107
+
108
+ /**
109
+ * Returns loop.
110
+ *
111
+ * @returns Loop.
112
+ */
113
+ public get loop(): boolean {
114
+ return this.getAttributeNS(null, 'loop') !== null;
115
+ }
116
+
117
+ /**
118
+ * Sets loop.
119
+ *
120
+ * @param loop Loop.
121
+ */
122
+ public set loop(loop: boolean) {
123
+ if (!loop) {
124
+ this.removeAttributeNS(null, 'loop');
125
+ } else {
126
+ this.setAttributeNS(null, 'loop', '');
127
+ }
128
+ }
129
+ /**
130
+ * Returns muted.
131
+ *
132
+ * @returns Muted.
133
+ */
134
+ public get muted(): boolean {
135
+ if (this.#muted) {
136
+ return this.#muted;
137
+ }
138
+
139
+ if (!this.#defaultMuted) {
140
+ return this.getAttributeNS(null, 'muted') !== null;
141
+ }
142
+
143
+ return false;
144
+ }
145
+
146
+ /**
147
+ * Sets muted.
148
+ *
149
+ * @param muted Muted.
150
+ */
151
+ public set muted(muted: boolean) {
152
+ this.#muted = !!muted;
153
+ if (!muted && !this.#defaultMuted) {
154
+ this.removeAttributeNS(null, 'muted');
155
+ } else {
156
+ this.setAttributeNS(null, 'muted', '');
157
+ }
158
+ }
159
+
160
+ /**
161
+ * Returns defaultMuted.
162
+ *
163
+ * @returns DefaultMuted.
164
+ */
165
+ public get defaultMuted(): boolean {
166
+ return this.#defaultMuted;
167
+ }
168
+
169
+ /**
170
+ * Sets defaultMuted.
171
+ *
172
+ * @param defaultMuted DefaultMuted.
173
+ */
174
+ public set defaultMuted(defaultMuted: boolean) {
175
+ this.#defaultMuted = !!defaultMuted;
176
+ if (!this.#defaultMuted && !this.#muted) {
177
+ this.removeAttributeNS(null, 'muted');
178
+ } else {
179
+ this.setAttributeNS(null, 'muted', '');
180
+ }
181
+ }
182
+
183
+ /**
184
+ * Returns src.
185
+ *
186
+ * @returns Src.
187
+ */
188
+ public get src(): string {
189
+ return this.getAttributeNS(null, 'src') || '';
190
+ }
191
+
192
+ /**
193
+ * Sets src.
194
+ *
195
+ * @param src Src.
196
+ */
197
+ public set src(src: string) {
198
+ this.setAttributeNS(null, 'src', src);
199
+ if (Boolean(src)) {
200
+ this.dispatchEvent(new Event('canplay', { bubbles: false, cancelable: false }));
201
+ this.dispatchEvent(new Event('durationchange', { bubbles: false, cancelable: false }));
202
+ }
203
+ }
204
+
205
+ /**
206
+ * Returns currentSrc.
207
+ *
208
+ * @returns CurrentrSrc.
209
+ */
210
+ public get currentSrc(): string {
211
+ return this.src;
212
+ }
213
+
214
+ /**
215
+ * Returns volume.
216
+ *
217
+ * @returns Volume.
218
+ */
219
+ public get volume(): number {
220
+ return this.#volume;
221
+ }
222
+
223
+ /**
224
+ * Sets volume.
225
+ *
226
+ * @param volume Volume.
227
+ */
228
+ public set volume(volume: number | string) {
229
+ const parsedVolume = Number(volume);
230
+
231
+ if (isNaN(parsedVolume)) {
232
+ throw new TypeError(
233
+ `Failed to set the 'volume' property on 'HTMLMediaElement': The provided double value is non-finite.`
234
+ );
235
+ }
236
+ if (parsedVolume < 0 || parsedVolume > 1) {
237
+ throw new DOMException(
238
+ `Failed to set the 'volume' property on 'HTMLMediaElement': The volume provided (${parsedVolume}) is outside the range [0, 1].`,
239
+ DOMExceptionNameEnum.indexSizeError
240
+ );
241
+ }
242
+ // TODO: volumechange event https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/volumechange_event
243
+ this.#volume = parsedVolume;
244
+ }
245
+
246
+ /**
247
+ * Returns crossOrigin.
248
+ *
249
+ * @returns CrossOrigin.
250
+ */
251
+ public get crossOrigin(): string {
252
+ return this.getAttributeNS(null, 'crossorigin');
253
+ }
254
+
255
+ /**
256
+ * Sets crossOrigin.
257
+ *
258
+ * @param crossOrigin CrossOrigin.
259
+ */
260
+ public set crossOrigin(crossOrigin: string | null) {
261
+ if (crossOrigin === null) {
262
+ return;
263
+ }
264
+
265
+ if (['', 'use-credentials', 'anonymous'].includes(crossOrigin)) {
266
+ this.setAttributeNS(null, 'crossorigin', crossOrigin);
267
+ } else {
268
+ this.setAttributeNS(null, 'crossorigin', 'anonymous');
269
+ }
270
+ }
271
+
272
+ /**
273
+ * Returns currentTime.
274
+ *
275
+ * @returns CurrentTime.
276
+ */
277
+ public get currentTime(): number {
278
+ return this.#currentTime;
279
+ }
280
+
281
+ /**
282
+ * Sets currentTime.
283
+ *
284
+ * @param currentTime CurrentTime.
285
+ */
286
+ public set currentTime(currentTime: number | string) {
287
+ const parsedCurrentTime = Number(currentTime);
288
+ if (isNaN(parsedCurrentTime)) {
289
+ throw new TypeError(
290
+ `Failed to set the 'currentTime' property on 'HTMLMediaElement': The provided double value is non-finite.`
291
+ );
292
+ }
293
+ this.#currentTime = parsedCurrentTime;
294
+ }
295
+
296
+ /**
297
+ * Returns playbackRate.
298
+ *
299
+ * @returns PlaybackRate.
300
+ */
301
+ public get playbackRate(): number {
302
+ return this.#playbackRate;
303
+ }
304
+
305
+ /**
306
+ * Sets playbackRate.
307
+ *
308
+ * @param playbackRate PlaybackRate.
309
+ */
310
+ public set playbackRate(playbackRate: number | string) {
311
+ const parsedPlaybackRate = Number(playbackRate);
312
+ if (isNaN(parsedPlaybackRate)) {
313
+ throw new TypeError(
314
+ `Failed to set the 'playbackRate' property on 'HTMLMediaElement': The provided double value is non-finite.`
315
+ );
316
+ }
317
+ this.#playbackRate = parsedPlaybackRate;
318
+ }
319
+
320
+ /**
321
+ * Returns defaultPlaybackRate.
322
+ *
323
+ * @returns DefaultPlaybackRate.
324
+ */
325
+ public get defaultPlaybackRate(): number {
326
+ return this.#defaultPlaybackRate;
327
+ }
328
+
329
+ /**
330
+ * Sets defaultPlaybackRate.
331
+ *
332
+ * @param defaultPlaybackRate DefaultPlaybackRate.
333
+ */
334
+ public set defaultPlaybackRate(defaultPlaybackRate: number | string) {
335
+ const parsedDefaultPlaybackRate = Number(defaultPlaybackRate);
336
+ if (isNaN(parsedDefaultPlaybackRate)) {
337
+ throw new TypeError(
338
+ `Failed to set the 'defaultPlaybackRate' property on 'HTMLMediaElement': The provided double value is non-finite.`
339
+ );
340
+ }
341
+ this.#defaultPlaybackRate = parsedDefaultPlaybackRate;
342
+ }
343
+
344
+ /**
345
+ * Returns preservesPitch.
346
+ *
347
+ * @returns PlaybackRate.
348
+ */
349
+ public get preservesPitch(): boolean {
350
+ return this.#preservesPitch;
351
+ }
352
+
353
+ /**
354
+ * Sets preservesPitch.
355
+ *
356
+ * @param preservesPitch PreservesPitch.
357
+ */
358
+ public set preservesPitch(preservesPitch: boolean) {
359
+ this.#preservesPitch = Boolean(preservesPitch);
360
+ }
361
+
362
+ /**
363
+ * Returns preload.
364
+ *
365
+ * @returns preload.
366
+ */
367
+ public get preload(): string {
368
+ return this.getAttributeNS(null, 'preload') || 'auto';
369
+ }
370
+
371
+ /**
372
+ * Sets preload.
373
+ *
374
+ * @param preload preload.
375
+ */
376
+ public set preload(preload: string) {
377
+ this.setAttributeNS(null, 'preload', preload);
378
+ }
379
+
380
+ /**
381
+ * Returns paused.
382
+ *
383
+ * @returns Paused.
384
+ */
385
+ public get paused(): boolean {
386
+ return this.#paused;
387
+ }
388
+
389
+ /**
390
+ * Pause played media.
391
+ */
392
+ public pause(): void {
393
+ this.#paused = true;
394
+ this.dispatchEvent(new Event('pause', { bubbles: false, cancelable: false }));
395
+ }
396
+
397
+ /**
398
+ * Start playing media.
399
+ */
400
+ public async play(): Promise<void> {
401
+ this.#paused = false;
402
+ return Promise.resolve();
403
+ }
404
+
405
+ /**
406
+ *
407
+ * @param _type
408
+ */
409
+ public canPlayType(_type: string): string {
410
+ return '';
411
+ }
412
+
413
+ /**
414
+ * Load media.
415
+ */
416
+ public load(): void {
417
+ this.dispatchEvent(new Event('emptied', { bubbles: false, cancelable: false }));
418
+ }
419
+
420
+ /**
421
+ *
422
+ */
423
+ public captureStream(): object {
424
+ return {};
425
+ }
426
+
427
+ /**
428
+ * Clones a node.
429
+ *
430
+ * @override
431
+ * @param [deep=false] "true" to clone deep.
432
+ * @returns Cloned node.
433
+ */
434
+ /**
435
+ *
436
+ * @param deep
437
+ */
438
+ public cloneNode(deep = false): IHTMLMediaElement {
439
+ return <IHTMLMediaElement>super.cloneNode(deep);
440
+ }
441
+ }
@@ -0,0 +1,84 @@
1
+ import IHTMLElement from '../html-element/IHTMLElement';
2
+
3
+ /**
4
+ * HTML Media Element.
5
+ *
6
+ * Reference:
7
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement.
8
+ */
9
+
10
+ export interface IMediaError {
11
+ code: number;
12
+ message: string;
13
+ }
14
+ export default interface IHTMLMediaElement extends IHTMLElement {
15
+ readonly currentSrc: string;
16
+ readonly duration: number;
17
+ readonly ended: boolean;
18
+ readonly error: IMediaError | null;
19
+ readonly networkState: number;
20
+ readonly played: object; // TimeRanges https://developer.mozilla.org/en-US/docs/Web/API/TimeRanges
21
+ readonly readyState: number;
22
+ readonly seekable: object; // TimeRanges https://developer.mozilla.org/en-US/docs/Web/API/TimeRanges
23
+ readonly seeking: boolean;
24
+ readonly textTracks: object[];
25
+ readonly videoTracks: object[];
26
+ readonly buffered: object; // TimeRanges https://developer.mozilla.org/en-US/docs/Web/API/TimeRanges
27
+ autoplay: boolean;
28
+ controls: boolean;
29
+ crossOrigin: string; // Only anonymus and 'use-credentials' is valid
30
+ currentTime: number | string;
31
+ defaultMuted: boolean;
32
+ defaultPlaybackRate: number | string;
33
+ loop: boolean;
34
+ muted: boolean;
35
+ paused: boolean;
36
+ playbackRate: number | string;
37
+ preload: string;
38
+ preservesPitch: boolean;
39
+ src: string;
40
+ volume: number | string;
41
+
42
+ /**
43
+ * A MediaStream object which can be used as a source for audio and/or video data by other media processing code,
44
+ * or as a source for WebRTC.
45
+ * Https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/captureStream
46
+ */
47
+ captureStream(): object;
48
+
49
+ /**
50
+ * The HTMLMediaElement method canPlayType() reports how likely it is that the current browser will be able to play
51
+ * media of a given MIME type.
52
+ * Https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/canPlayType
53
+ * possible return value: "" | "probably" | "maybe".
54
+ */
55
+ canPlayType(_type: string): string;
56
+
57
+ /**
58
+ * The HTMLMediaElement method load() resets the media element to its initial state and begins the process of
59
+ * selecting a media source and loading the media in preparation for playback to begin at the beginning.
60
+ * Https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/load.
61
+ */
62
+ load(): void;
63
+
64
+ /**
65
+ * The HTMLMediaElement.pause() method will pause playback of the media, if the media is already in a paused state
66
+ * this method will have no effect.
67
+ */
68
+ pause(): void;
69
+
70
+ /**
71
+ * The HTMLMediaElement play() method attempts to begin playback of the media. It returns a Promise
72
+ * which is resolved when playback has been successfully started.
73
+ */
74
+ play(): Promise<void>;
75
+
76
+ /**
77
+ * Clones a node.
78
+ *
79
+ * @override
80
+ * @param [deep=false] "true" to clone deep.
81
+ * @returns Cloned node.
82
+ */
83
+ cloneNode(deep: boolean): IHTMLMediaElement;
84
+ }
@@ -0,0 +1,11 @@
1
+ import HTMLMediaElement from '../html-media-element/HTMLMediaElement';
2
+ import IHTMLVideoElement from './IHTMLVideoElement';
3
+
4
+ /**
5
+ * HTML Video Element.
6
+ *
7
+ * Reference:
8
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLVideoElement.
9
+ *
10
+ */
11
+ export default class HTMLVideoElement extends HTMLMediaElement implements IHTMLVideoElement {}