UNPKG

803 BJavaScriptView Raw
1import AbortController, {AbortSignal} from './abortcontroller';
2import abortableFetch from './abortableFetch';
3import {polyfillNeeded} from './utils';
4
5(function(self) {
6 'use strict';
7
8 if (!polyfillNeeded(self)) {
9 return;
10 }
11
12 if (!self.fetch) {
13 console.warn('fetch() is not available, cannot install abortcontroller-polyfill');
14 return;
15 }
16
17 const {fetch, Request} = abortableFetch(self);
18 self.fetch = fetch;
19 self.Request = Request;
20
21 Object.defineProperty(self, 'AbortController', {
22 writable: true,
23 enumerable: false,
24 configurable: true,
25 value: AbortController
26 });
27
28 Object.defineProperty(self, 'AbortSignal', {
29 writable: true,
30 enumerable: false,
31 configurable: true,
32 value: AbortSignal
33 });
34
35})(typeof self !== 'undefined' ? self : global);