CoolFace
Apppublic

opusdev/vector-similarity-api

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes
index.js49 linesDownload Raw Back to cli
1var parse = require('./parse');2 3/**4 * Converts a string to command line args, in particular5 * groups together quoted values.6 * This is a utility function to allow calling nodemon as a required7 * library, but with the CLI args passed in (instead of an object).8 *9 * @param  {String} string10 * @return {Array}11 */12function stringToArgs(string) {13  var args = [];14 15  var parts = string.split(' ');16  var length = parts.length;17  var i = 0;18  var open = false;19  var grouped = '';20  var lead = '';21 22  for (; i < length; i++) {23    lead = parts[i].substring(0, 1);24    if (lead === '"' || lead === '\'') {25      open = lead;26      grouped = parts[i].substring(1);27    } else if (open && parts[i].slice(-1) === open) {28      open = false;29      grouped += ' ' + parts[i].slice(0, -1);30      args.push(grouped);31    } else if (open) {32      grouped += ' ' + parts[i];33    } else {34      args.push(parts[i]);35    }36  }37 38  return args;39}40 41module.exports = {42  parse: function (argv) {43    if (typeof argv === 'string') {44      argv = stringToArgs(argv);45    }46 47    return parse(argv);48  },49};