diff options
Diffstat (limited to 'assets/node_modules/leven/index.js')
-rw-r--r-- | assets/node_modules/leven/index.js | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/assets/node_modules/leven/index.js b/assets/node_modules/leven/index.js deleted file mode 100644 index 25f5a3d..0000000 --- a/assets/node_modules/leven/index.js +++ /dev/null @@ -1,77 +0,0 @@ -'use strict'; -const array = []; -const charCodeCache = []; - -const leven = (left, right) => { - if (left === right) { - return 0; - } - - const swap = left; - - // Swapping the strings if `a` is longer than `b` so we know which one is the - // shortest & which one is the longest - if (left.length > right.length) { - left = right; - right = swap; - } - - let leftLength = left.length; - let rightLength = right.length; - - // Performing suffix trimming: - // We can linearly drop suffix common to both strings since they - // don't increase distance at all - // Note: `~-` is the bitwise way to perform a `- 1` operation - while (leftLength > 0 && (left.charCodeAt(~-leftLength) === right.charCodeAt(~-rightLength))) { - leftLength--; - rightLength--; - } - - // Performing prefix trimming - // We can linearly drop prefix common to both strings since they - // don't increase distance at all - let start = 0; - - while (start < leftLength && (left.charCodeAt(start) === right.charCodeAt(start))) { - start++; - } - - leftLength -= start; - rightLength -= start; - - if (leftLength === 0) { - return rightLength; - } - - let bCharCode; - let result; - let temp; - let temp2; - let i = 0; - let j = 0; - - while (i < leftLength) { - charCodeCache[i] = left.charCodeAt(start + i); - array[i] = ++i; - } - - while (j < rightLength) { - bCharCode = right.charCodeAt(start + j); - temp = j++; - result = j; - - for (i = 0; i < leftLength; i++) { - temp2 = bCharCode === charCodeCache[i] ? temp : temp + 1; - temp = array[i]; - // eslint-disable-next-line no-multi-assign - result = array[i] = temp > result ? temp2 > result ? result + 1 : temp2 : temp2 > temp ? temp + 1 : temp2; - } - } - - return result; -}; - -module.exports = leven; -// TODO: Remove this for the next major release -module.exports.default = leven; |