daniellmb/downlinkMax

View on GitHub
downlinkmax.min.js

Summary

Maintainability
A
1 hr
Test Coverage
(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};
}));