-
Notifications
You must be signed in to change notification settings - Fork 30
/
polyfill.ts
51 lines (45 loc) · 1.17 KB
/
polyfill.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import {
ByteLengthQueuingStrategy,
CountQueuingStrategy,
ReadableByteStreamController,
ReadableStream,
ReadableStreamBYOBReader,
ReadableStreamBYOBRequest,
ReadableStreamDefaultController,
ReadableStreamDefaultReader,
TransformStream,
TransformStreamDefaultController,
WritableStream,
WritableStreamDefaultController,
WritableStreamDefaultWriter
} from './ponyfill';
import { globals } from './utils';
// Export
export * from './ponyfill';
const exports = {
ReadableStream,
ReadableStreamDefaultController,
ReadableByteStreamController,
ReadableStreamBYOBRequest,
ReadableStreamDefaultReader,
ReadableStreamBYOBReader,
WritableStream,
WritableStreamDefaultController,
WritableStreamDefaultWriter,
ByteLengthQueuingStrategy,
CountQueuingStrategy,
TransformStream,
TransformStreamDefaultController
};
// Add classes to global scope
if (typeof globals !== 'undefined') {
for (const prop in exports) {
if (Object.prototype.hasOwnProperty.call(exports, prop)) {
Object.defineProperty(globals, prop, {
value: exports[prop as (keyof typeof exports)],
writable: true,
configurable: true
});
}
}
}