Code coverage report for src/util/root.ts

Statements: 100% (7 / 7)      Branches: 78.95% (15 / 19)      Functions: 100% (0 / 0)      Lines: 100% (7 / 7)      Ignored: none     

All files » src/util/ » root.ts
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 311                                       1     1 1 1   1 1    
let objectTypes = {
  'boolean': false,
  'function': true,
  'object': true,
  'number': false,
  'string': false,
  'undefined': false
};
 
declare let global: NodeJS.Global;
declare let module: any;
declare let exports: any;
 
declare module NodeJS {
  interface Global {
    window: any;
    global: any;
  }
}
 
export let root: any = (objectTypes[typeof self] && self) || (objectTypes[typeof window] && window);
 
/* tslint:disable:no-unused-variable */
let freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
let freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
let freeGlobal = objectTypes[typeof global] && global;
 
Eif (freeGlobal && (freeGlobal.global === freeGlobal || freeGlobal.window === freeGlobal)) {
  root = freeGlobal;
}