X-Git-Url: https://git.josue.xyz/?p=dotfiles%2F.git;a=blobdiff_plain;f=.config%2Fcoc%2Fextensions%2Fnode_modules%2Fcoc-prettier%2Fnode_modules%2Fajv%2Flib%2Fcompile%2Fucs2length.js;fp=.config%2Fcoc%2Fextensions%2Fnode_modules%2Fcoc-prettier%2Fnode_modules%2Fajv%2Flib%2Fcompile%2Fucs2length.js;h=d193fb170008b388109f1cd93f1b95f447dcd6c8;hp=0000000000000000000000000000000000000000;hb=3c06164f15bd10aed7d66b6314764a2961a14762;hpb=0e9c3ceb40901f4d44981c1376cb9e23a248e006 diff --git a/.config/coc/extensions/node_modules/coc-prettier/node_modules/ajv/lib/compile/ucs2length.js b/.config/coc/extensions/node_modules/coc-prettier/node_modules/ajv/lib/compile/ucs2length.js new file mode 100644 index 00000000..d193fb17 --- /dev/null +++ b/.config/coc/extensions/node_modules/coc-prettier/node_modules/ajv/lib/compile/ucs2length.js @@ -0,0 +1,20 @@ +'use strict'; + +// https://mathiasbynens.be/notes/javascript-encoding +// https://github.com/bestiejs/punycode.js - punycode.ucs2.decode +module.exports = function ucs2length(str) { + var length = 0 + , len = str.length + , pos = 0 + , value; + while (pos < len) { + length++; + value = str.charCodeAt(pos++); + if (value >= 0xD800 && value <= 0xDBFF && pos < len) { + // high surrogate, and there is a next character + value = str.charCodeAt(pos); + if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate + } + } + return length; +};