summaryrefslogtreecommitdiffstats
path: root/front/odiparpack/internals/scripts/helpers/progress.js
diff options
context:
space:
mode:
Diffstat (limited to 'front/odiparpack/internals/scripts/helpers/progress.js')
-rw-r--r--front/odiparpack/internals/scripts/helpers/progress.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/front/odiparpack/internals/scripts/helpers/progress.js b/front/odiparpack/internals/scripts/helpers/progress.js
new file mode 100644
index 0000000..4353f20
--- /dev/null
+++ b/front/odiparpack/internals/scripts/helpers/progress.js
@@ -0,0 +1,25 @@
+'use strict';
+
+const readline = require('readline');
+
+/**
+ * Adds an animated progress indicator
+ *
+ * @param {string} message The message to write next to the indicator
+ * @param {number} amountOfDots The amount of dots you want to animate
+ */
+function animateProgress(message, amountOfDots) {
+ if (typeof amountOfDots !== 'number') {
+ amountOfDots = 3;
+ }
+
+ let i = 0;
+ return setInterval(function() {
+ readline.cursorTo(process.stdout, 0);
+ i = (i + 1) % (amountOfDots + 1);
+ const dots = new Array(i + 1).join('.');
+ process.stdout.write(message + dots);
+ }, 500);
+}
+
+module.exports = animateProgress;