diff options
author | Minteck <contact@minteck.org> | 2022-11-28 17:31:34 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-11-28 17:31:34 +0100 |
commit | 7923aa8942b55884320ef2428417e3ee4b121613 (patch) | |
tree | 7993632f2898b1998f25b11ce40a8d2eb3d44730 /MistyCore/node_modules/chalk/source/util.js | |
download | mistyos-og-7923aa8942b55884320ef2428417e3ee4b121613.tar.gz mistyos-og-7923aa8942b55884320ef2428417e3ee4b121613.tar.bz2 mistyos-og-7923aa8942b55884320ef2428417e3ee4b121613.zip |
Diffstat (limited to 'MistyCore/node_modules/chalk/source/util.js')
-rw-r--r-- | MistyCore/node_modules/chalk/source/util.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/MistyCore/node_modules/chalk/source/util.js b/MistyCore/node_modules/chalk/source/util.js new file mode 100644 index 0000000..ca466fd --- /dev/null +++ b/MistyCore/node_modules/chalk/source/util.js @@ -0,0 +1,39 @@ +'use strict'; + +const stringReplaceAll = (string, substring, replacer) => { + let index = string.indexOf(substring); + if (index === -1) { + return string; + } + + const substringLength = substring.length; + let endIndex = 0; + let returnValue = ''; + do { + returnValue += string.substr(endIndex, index - endIndex) + substring + replacer; + endIndex = index + substringLength; + index = string.indexOf(substring, endIndex); + } while (index !== -1); + + returnValue += string.substr(endIndex); + return returnValue; +}; + +const stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => { + let endIndex = 0; + let returnValue = ''; + do { + const gotCR = string[index - 1] === '\r'; + returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? '\r\n' : '\n') + postfix; + endIndex = index + 1; + index = string.indexOf('\n', endIndex); + } while (index !== -1); + + returnValue += string.substr(endIndex); + return returnValue; +}; + +module.exports = { + stringReplaceAll, + stringEncaseCRLFWithFirstIndex +}; |