1 /**
  2   Polyfills!
  3 */
  4 
  5 // window.performance
  6 (function() {
  7   // TODO: Include polyfill for node.js
  8   if (window && typeof window.performance === 'undefined') {
  9     window.performance = {};
 10   }
 11 
 12   if (window && !window.performance.now) {
 13     var initTimestamp;
 14     if (window.performance.timing && window.performance.timing.navigationStart) {
 15       initTimestamp = window.performance.timing.navigationStart;
 16     } else {
 17       window.performance.timing = {};
 18       initTimestamp = window.performance.timing.navigationStart = Date.now ? Date.now() : (new Date()).getTime();
 19     }
 20     window.performance.now = function() {
 21       var now = Date.now ? Date.now() : (new Date()).getTime();
 22       return now - initTimestamp;
 23     };
 24   }
 25 })();
 26