| 1234567891011121314151617181920212223242526272829303132333435363738 |
- "use strict";
- function supportsUploadProgress(userAgent) {
- // Allow passing in userAgent for tests
- if (userAgent == null && typeof navigator !== 'undefined') {
- // eslint-disable-next-line no-param-reassign
- userAgent = navigator.userAgent;
- } // Assume it works because basically everything supports progress events.
- if (!userAgent) return true;
- const m = /Edge\/(\d+\.\d+)/.exec(userAgent);
- if (!m) return true;
- const edgeVersion = m[1];
- let [major, minor] = edgeVersion.split('.');
- major = parseInt(major, 10);
- minor = parseInt(minor, 10); // Worked before:
- // Edge 40.15063.0.0
- // Microsoft EdgeHTML 15.15063
- if (major < 15 || major === 15 && minor < 15063) {
- return true;
- } // Fixed in:
- // Microsoft EdgeHTML 18.18218
- if (major > 18 || major === 18 && minor >= 18218) {
- return true;
- } // other versions don't work.
- return false;
- }
- // Edge 15.x does not fire 'progress' events on uploads.
- // See https://github.com/transloadit/uppy/issues/945
- // And https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/12224510/
- module.exports = supportsUploadProgress;
|