@transifex/cli
Version:
i18n CLI tool for Transifex Native
45 lines (40 loc) • 823 B
JavaScript
const _ = require('lodash');
/**
* Convert a comma separated string to array of strings
*
* @param {String} string
* @returns {String[]}
*/
function stringToArray(string) {
string = (string || '').toString().trim(); // eslint-disable-line
if (!string) return [];
return _.compact(_.map(string.split(','), (entry) => entry.trim()));
}
/**
* Merge arrays and remove duplicate values
*
* @param {Array} array1
* @param {Array} array2
* @returns
*/
function mergeArrays(array1, array2) {
return _.uniq(_.concat(array1 || [], array2 || []));
}
/**
* Async/await sleep
*
* @param {Number} msec
* @return {Promise}
*/
function sleep(msec) {
return new Promise((resolve) => {
setTimeout(() => {
resolve();
}, msec);
});
}
module.exports = {
stringToArray,
mergeArrays,
sleep,
};