downlinkmax
Version:
downlinkMax is a 0.26KB Network Information API polyfill for navigator.connection.downlinkMax written in both CoffeeScript and JavaScript with AMD support.
16 lines • 784 B
JavaScript
(function (window, factory) {
'use strict';
if (typeof define === 'function' && define.amd) {
// AMD
define([], factory);
} else if (typeof exports === 'object') {
// Node.js
module.exports = factory();
} else {
// Browser
window.downlinkmax = factory();
}
}(this, function factory() {
// public API
return function downlinkmax(){var n,e=1/0,a=navigator,i=a.connection||a.mozConnection||a.webkitConnection||{downlinkMax:e};if(!("downlinkMax"in i))if("bandwidth"in i)i.downlinkMax=8*i.bandwidth;else{switch(i.type){case"none":n=0;break;case"2g":n=.134;break;case"bluetooth":case"cellular":n=2;break;case"3g":n=8.95;break;case"4g":n=100;break;case"ethernet":n=550;break;case"wifi":n=600;break;default:n=e}i.downlinkMax=n}return i.downlinkMax};
}));