1 | (function(modules) {
|
2 |
|
3 | var installedModules = {};
|
4 |
|
5 |
|
6 | function __webpack_require__(moduleId) {
|
7 |
|
8 |
|
9 | if(installedModules[moduleId]) {
|
10 | return installedModules[moduleId].exports;
|
11 | }
|
12 |
|
13 | var module = installedModules[moduleId] = {
|
14 | i: moduleId,
|
15 | l: false,
|
16 | exports: {}
|
17 | };
|
18 |
|
19 |
|
20 | modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
21 |
|
22 |
|
23 | module.l = true;
|
24 |
|
25 |
|
26 | return module.exports;
|
27 | }
|
28 |
|
29 |
|
30 |
|
31 | __webpack_require__.m = modules;
|
32 |
|
33 |
|
34 | __webpack_require__.c = installedModules;
|
35 |
|
36 |
|
37 | __webpack_require__.d = function(exports, name, getter) {
|
38 | if(!__webpack_require__.o(exports, name)) {
|
39 | Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
40 | }
|
41 | };
|
42 |
|
43 |
|
44 | __webpack_require__.r = function(exports) {
|
45 | if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
46 | Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
47 | }
|
48 | Object.defineProperty(exports, '__esModule', { value: true });
|
49 | };
|
50 |
|
51 |
|
52 |
|
53 |
|
54 |
|
55 |
|
56 | __webpack_require__.t = function(value, mode) {
|
57 | if(mode & 1) value = __webpack_require__(value);
|
58 | if(mode & 8) return value;
|
59 | if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
60 | var ns = Object.create(null);
|
61 | __webpack_require__.r(ns);
|
62 | Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
63 | if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
64 | return ns;
|
65 | };
|
66 |
|
67 |
|
68 | __webpack_require__.n = function(module) {
|
69 | var getter = module && module.__esModule ?
|
70 | function getDefault() { return module['default']; } :
|
71 | function getModuleExports() { return module; };
|
72 | __webpack_require__.d(getter, 'a', getter);
|
73 | return getter;
|
74 | };
|
75 |
|
76 |
|
77 | __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
78 |
|
79 |
|
80 | __webpack_require__.p = "";
|
81 |
|
82 |
|
83 |
|
84 | return __webpack_require__(__webpack_require__.s = "./node_modules/babel-loader/lib/index.js?!./src/FetchWorkerTool.worker.js");
|
85 | })
|
86 |
|
87 | ({
|
88 |
|
89 | "./node_modules/babel-loader/lib/index.js?!./src/FetchWorkerTool.worker.js":
|
90 |
|
91 |
|
92 |
|
93 |
|
94 | (function(module, exports) {
|
95 |
|
96 |
|
97 | var jobsActive = 0;
|
98 | var complete = [];
|
99 | var intervalId = null;
|
100 |
|
101 |
|
102 |
|
103 |
|
104 |
|
105 |
|
106 |
|
107 |
|
108 | var registerStep = function registerStep() {
|
109 | intervalId = setInterval(function () {
|
110 | if (complete.length) {
|
111 |
|
112 |
|
113 | postMessage(complete.slice(),
|
114 |
|
115 |
|
116 |
|
117 |
|
118 |
|
119 |
|
120 | complete.map(function (response) {
|
121 | return response.buffer;
|
122 | }).filter(Boolean));
|
123 | complete.length = 0;
|
124 | }
|
125 |
|
126 | if (jobsActive === 0) {
|
127 | clearInterval(intervalId);
|
128 | intervalId = null;
|
129 | }
|
130 | }, 1);
|
131 | };
|
132 |
|
133 |
|
134 |
|
135 |
|
136 |
|
137 |
|
138 | var onMessage = function onMessage(_ref) {
|
139 | var job = _ref.data;
|
140 |
|
141 | if (jobsActive === 0 && !intervalId) {
|
142 | registerStep();
|
143 | }
|
144 |
|
145 | jobsActive++;
|
146 | fetch(job.url, job.options).then(function (response) {
|
147 | return response.arrayBuffer();
|
148 | }).then(function (buffer) {
|
149 | return complete.push({
|
150 | id: job.id,
|
151 | buffer: buffer
|
152 | });
|
153 | }).catch(function (error) {
|
154 | return complete.push({
|
155 | id: job.id,
|
156 | error: error
|
157 | });
|
158 | }).then(function () {
|
159 | return jobsActive--;
|
160 | });
|
161 | };
|
162 |
|
163 | if (self.fetch) {
|
164 | postMessage({
|
165 | support: {
|
166 | fetch: true
|
167 | }
|
168 | });
|
169 | self.addEventListener('message', onMessage);
|
170 | } else {
|
171 | postMessage({
|
172 | support: {
|
173 | fetch: false
|
174 | }
|
175 | });
|
176 | self.addEventListener('message', function (_ref2) {
|
177 | var job = _ref2.data;
|
178 | postMessage([{
|
179 | id: job.id,
|
180 | error: new Error('fetch is unavailable')
|
181 | }]);
|
182 | });
|
183 | }
|
184 |
|
185 | })
|
186 |
|
187 | });
|
188 |
|
\ | No newline at end of file |