aboutsummaryrefslogtreecommitdiff
path: root/node_modules/nodemon/lib/cli/index.js
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-06-04 08:51:01 +0200
committerMinteck <contact@minteck.org>2022-06-04 08:51:01 +0200
commit383285ecd5292bf9a825e05904955b937de84cc9 (patch)
tree0a53b6f02c1604b078044567c03dc1b6c944c8c2 /node_modules/nodemon/lib/cli/index.js
downloadequestriadb-383285ecd5292bf9a825e05904955b937de84cc9.tar.gz
equestriadb-383285ecd5292bf9a825e05904955b937de84cc9.tar.bz2
equestriadb-383285ecd5292bf9a825e05904955b937de84cc9.zip
Initial commit
Diffstat (limited to 'node_modules/nodemon/lib/cli/index.js')
-rw-r--r--node_modules/nodemon/lib/cli/index.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/node_modules/nodemon/lib/cli/index.js b/node_modules/nodemon/lib/cli/index.js
new file mode 100644
index 0000000..bf9e809
--- /dev/null
+++ b/node_modules/nodemon/lib/cli/index.js
@@ -0,0 +1,49 @@
+var parse = require('./parse');
+
+/**
+ * Converts a string to command line args, in particular
+ * groups together quoted values.
+ * This is a utility function to allow calling nodemon as a required
+ * library, but with the CLI args passed in (instead of an object).
+ *
+ * @param {String} string
+ * @return {Array}
+ */
+function stringToArgs(string) {
+ var args = [];
+
+ var parts = string.split(' ');
+ var length = parts.length;
+ var i = 0;
+ var open = false;
+ var grouped = '';
+ var lead = '';
+
+ for (; i < length; i++) {
+ lead = parts[i].substring(0, 1);
+ if (lead === '"' || lead === '\'') {
+ open = lead;
+ grouped = parts[i].substring(1);
+ } else if (open && parts[i].slice(-1) === open) {
+ open = false;
+ grouped += ' ' + parts[i].slice(0, -1);
+ args.push(grouped);
+ } else if (open) {
+ grouped += ' ' + parts[i];
+ } else {
+ args.push(parts[i]);
+ }
+ }
+
+ return args;
+}
+
+module.exports = {
+ parse: function (argv) {
+ if (typeof argv === 'string') {
+ argv = stringToArgs(argv);
+ }
+
+ return parse(argv);
+ },
+}; \ No newline at end of file