simba-cli
Version:
A simple CLI to handle most basic and everyday usage cli command wishes
28 lines • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.interpolateString = exports.getSchematicName = void 0;
const lodash_1 = require("lodash");
const getSchematicName = (name) => {
const parts = name.toLowerCase().split('/').map(s => s.trim()).filter(s => !!s);
const last = parts[parts.length - 1];
const res = { err: '', name: '' };
const isValidName = /^[a-zA-Z0-9\_\-]*$/.test(last);
if (isValidName) {
for (const n of last.split('-')) {
res.name += (0, lodash_1.startCase)(n).replace(new RegExp(' ', 'g'), '');
}
}
else {
res.err = 'Invalid widget name: ' + last;
}
return res;
};
exports.getSchematicName = getSchematicName;
const interpolateString = (text, varMap) => {
lodash_1.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
const interpolator = (0, lodash_1.template)(text);
const interpolated = interpolator(varMap);
return interpolated;
};
exports.interpolateString = interpolateString;
//# sourceMappingURL=helpers.js.map