add CI questions to Environment
This commit is contained in:
49
ts/smartenv.classes.helpers.ts
Normal file
49
ts/smartenv.classes.helpers.ts
Normal file
@ -0,0 +1,49 @@
|
||||
/// <reference path="typings/main.d.ts" />
|
||||
|
||||
export var getEnvString = function():string {
|
||||
if (typeof window !== "undefined") {
|
||||
return "browser";
|
||||
} else if (typeof process !== "undefined") {
|
||||
return "node";
|
||||
}
|
||||
};
|
||||
|
||||
export var getUserAgentString = function():string{
|
||||
if(isBrowser()){
|
||||
return navigator.userAgent;
|
||||
} else {
|
||||
return undefined;
|
||||
}
|
||||
};
|
||||
|
||||
export var isNode = function():boolean {
|
||||
if (getEnvString() === "node"){
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
export var getNodeVersion = function():string {
|
||||
return process.version;
|
||||
};
|
||||
|
||||
export var isBrowser = function():boolean {
|
||||
return !isNode();
|
||||
};
|
||||
|
||||
export var isCI = function(){
|
||||
if(process.env.CI){
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
};
|
||||
};
|
||||
|
||||
export var isTravis = function(){
|
||||
if(process.env.TRAVIS){
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
};
|
||||
};
|
@ -1,21 +1,21 @@
|
||||
/// <reference path="typings/main.d.ts" />
|
||||
|
||||
import helpers = require("./smartenv.classes.helpers");
|
||||
export class Environment {
|
||||
public runtimeEnv:string;
|
||||
public userAgent:string;
|
||||
public nodeVersion:string;
|
||||
public isBrowser:boolean;
|
||||
public isNode:boolean;
|
||||
constructor(runtimeEnvArg:string,userAgentArg:string = "undefined") {
|
||||
this.runtimeEnv = runtimeEnvArg;
|
||||
this.userAgent = userAgentArg;
|
||||
if(runtimeEnvArg == "node"){
|
||||
this.isBrowser = false;
|
||||
this.isNode = true;
|
||||
this.nodeVersion = process.version;
|
||||
} else if (runtimeEnvArg == "browser") {
|
||||
this.isBrowser = true;
|
||||
this.isNode = false;
|
||||
this.nodeVersion = "undefined";
|
||||
}
|
||||
runtimeEnv:string;
|
||||
isBrowser:boolean;
|
||||
userAgent:string;
|
||||
isNode:boolean;
|
||||
nodeVersion:string;
|
||||
isCI:boolean;
|
||||
isTravis:boolean;
|
||||
constructor() {
|
||||
this.runtimeEnv = helpers.getEnvString();
|
||||
this.isBrowser = helpers.isBrowser();
|
||||
this.userAgent = helpers.getUserAgentString();
|
||||
this.isNode = helpers.isNode();
|
||||
this.nodeVersion = helpers.getNodeVersion();
|
||||
this.isCI = helpers.isCI();
|
||||
this.isTravis = helpers.isTravis();
|
||||
};
|
||||
}
|
||||
|
@ -16,17 +16,7 @@ var envDetermined:boolean = false;
|
||||
*/
|
||||
var getEnv = function(){
|
||||
if (!envDetermined) {
|
||||
(function() {
|
||||
var localRunTimeEnv = "undefined";
|
||||
var localUserAgent = "undefined";
|
||||
if (typeof window !== "undefined") {
|
||||
localRunTimeEnv = 'browser';
|
||||
localUserAgent = navigator.userAgent;
|
||||
} else if (typeof process !== "undefined") {
|
||||
localRunTimeEnv = 'node';
|
||||
}
|
||||
environment = new classes.Environment(localRunTimeEnv,localUserAgent);
|
||||
})();
|
||||
environment = new classes.Environment();
|
||||
envDetermined = true; // ensure code above only runs once
|
||||
};
|
||||
return environment;
|
||||
|
@ -1,6 +1,7 @@
|
||||
/// <reference path="typings/main.d.ts" />
|
||||
var plugins = {
|
||||
beautylog: require("beautylog"),
|
||||
Q: require("q"),
|
||||
_: require("lodash")
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user