ng2-charts
Version:
Reactive, responsive, beautiful charts for Angular based on Chart.js
31 lines • 1.04 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.addPackageToPackageJson = addPackageToPackageJson;
/**
* Sorts the keys of the given object.
* @returns A new object instance with sorted keys
*/
function sortObjectByKeys(obj) {
return Object.keys(obj)
.sort()
.reduce((result, key) => (result[key] = obj[key]) && result, {});
}
/**
* Adds a package to the package.json in the given tree
*/
function addPackageToPackageJson(tree, pkg, version) {
if (tree.exists('package.json')) {
const sourceText = tree.read('package.json').toString('utf-8');
const json = JSON.parse(sourceText);
if (!json.dependencies) {
json.dependencies = {};
}
if (!json.dependencies[pkg]) {
json.dependencies[pkg] = version;
json.dependencies = sortObjectByKeys(json.dependencies);
}
tree.overwrite('package.json', JSON.stringify(json, null, 2));
}
return tree;
}
//# sourceMappingURL=package-config.js.map