@catladder/cli
Version:
Panter cli tool for cloud CI/CD and DevOps
26 lines (25 loc) • 705 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createArgsString = void 0;
const lodash_es_1 = require("lodash-es");
/**
* creates arguments string:
*
* --key=value
*
* - undefined or null values will get removed completly
* - true will just be "--key"
* @param args args record
* @returns
*/
const createArgsString = (...args) => args.map(argObj => Object.entries(argObj).filter(([, value]) => !(0, lodash_es_1.isNil)(value)).map(([key, value]) => {
if (value === true) {
return `--${key}`;
} else if (value === false) {
return `--no-${key}`;
}
return `--${key}=${value}`;
})).flat().join(" ");
exports.createArgsString = createArgsString;