aboutsummaryrefslogtreecommitdiff
path: root/sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js
diff options
context:
space:
mode:
authorDanijel Andjelkovic <adanijel99@gmail.com>2022-03-01 21:54:41 +0100
committerDanijel Andjelkovic <adanijel99@gmail.com>2022-03-01 21:54:41 +0100
commit6c8128f9fd5a5d0be115806c35a21b3d683df8d6 (patch)
treef46c2f6b3b9b294ff32bd75c08ccdc9e7a8cc4ef /sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js
parent2400b84e95913665da6279114168148444b8f9ab (diff)
parent7d3640f824f46490b47bd95f1c5a16644f712068 (diff)
Merge branch 'dev' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into logo
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js')
-rw-r--r--sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js b/sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js
new file mode 100644
index 00000000..5284a699
--- /dev/null
+++ b/sandbox/testAppNevena/Front/node_modules/gauge/lib/wide-truncate.js
@@ -0,0 +1,31 @@
+'use strict'
+var stringWidth = require('string-width')
+var stripAnsi = require('strip-ansi')
+
+module.exports = wideTruncate
+
+function wideTruncate (str, target) {
+ if (stringWidth(str) === 0) {
+ return str
+ }
+ if (target <= 0) {
+ return ''
+ }
+ if (stringWidth(str) <= target) {
+ return str
+ }
+
+ // We compute the number of bytes of ansi sequences here and add
+ // that to our initial truncation to ensure that we don't slice one
+ // that we want to keep in half.
+ var noAnsi = stripAnsi(str)
+ var ansiSize = str.length + noAnsi.length
+ var truncated = str.slice(0, target + ansiSize)
+
+ // we have to shrink the result to account for our ansi sequence buffer
+ // (if an ansi sequence was truncated) and double width characters.
+ while (stringWidth(truncated) > target) {
+ truncated = truncated.slice(0, -1)
+ }
+ return truncated
+}