mirror of
https://github.com/morhetz/gruvbox.git
synced 2025-11-16 07:13:46 -05:00
99 lines
2.5 KiB
JavaScript
99 lines
2.5 KiB
JavaScript
'use strict';
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.isInTest = exports.isString = exports.isFunction = exports.isArray = exports.getParsedPackageJsonFromPath = exports.getParsedJsonFromFile = exports.executeShellCommand = undefined;
|
|
|
|
var _fs = require('fs');
|
|
|
|
var _fs2 = _interopRequireDefault(_fs);
|
|
|
|
var _path = require('path');
|
|
|
|
var _path2 = _interopRequireDefault(_path);
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
exports.executeShellCommand = executeShellCommand;
|
|
exports.getParsedJsonFromFile = getParsedJsonFromFile;
|
|
exports.getParsedPackageJsonFromPath = getParsedPackageJsonFromPath;
|
|
exports.isArray = isArray;
|
|
exports.isFunction = isFunction;
|
|
exports.isString = isString;
|
|
exports.isInTest = isInTest;
|
|
|
|
/**
|
|
* Executes the command passed to it at the path requested
|
|
* using the instance of shelljs passed in
|
|
*/
|
|
|
|
function executeShellCommand(sh, path, installCommand) {
|
|
sh.cd(path);
|
|
sh.exec(installCommand);
|
|
}
|
|
|
|
/**
|
|
* Gets the parsed contents of a json file
|
|
*/
|
|
function getParsedJsonFromFile(filePath, fileName) {
|
|
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'utf8';
|
|
|
|
try {
|
|
var packageJsonContents = _fs2.default.readFileSync(_path2.default.join(filePath, fileName), encoding);
|
|
return JSON.parse(packageJsonContents);
|
|
} catch (e) {
|
|
console.error(e);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* A helper method for getting the contents of package.json at a given path
|
|
*/
|
|
function getParsedPackageJsonFromPath(path) {
|
|
return getParsedJsonFromFile(path, 'package.json');
|
|
}
|
|
|
|
/**
|
|
* Test if the passed argument is an array
|
|
*/
|
|
function isArray(arr) {
|
|
if (typeof arr === "undefined") {
|
|
return false;
|
|
} else if (arr === null) {
|
|
return false;
|
|
} else {
|
|
return arr.constructor === Array;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Test if the passed argument is a function
|
|
*/
|
|
function isFunction(functionToCheck) {
|
|
if (typeof functionToCheck === "undefined") {
|
|
return false;
|
|
} else if (functionToCheck === null) {
|
|
return false;
|
|
} else {
|
|
var getType = {};
|
|
return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Test if the passed argument is a string
|
|
*/
|
|
function isString(str) {
|
|
if (typeof str === "undefined") {
|
|
return false;
|
|
} else if (str === null) {
|
|
return false;
|
|
} else {
|
|
return Object.prototype.toString.call(str) === '[object String]';
|
|
}
|
|
}
|
|
|
|
function isInTest() {
|
|
return typeof global.it === 'function';
|
|
} |