source: imaps-frontend/node_modules/ajv/lib/compile/ucs2length.js

main
Last change on this file was d565449, checked in by stefan toskovski <stefantoska84@…>, 4 weeks ago

Update repo after prototype presentation

  • Property mode set to 100644
File size: 558 bytes
Line 
1'use strict';
2
3// https://mathiasbynens.be/notes/javascript-encoding
4// https://github.com/bestiejs/punycode.js - punycode.ucs2.decode
5module.exports = function ucs2length(str) {
6 var length = 0
7 , len = str.length
8 , pos = 0
9 , value;
10 while (pos < len) {
11 length++;
12 value = str.charCodeAt(pos++);
13 if (value >= 0xD800 && value <= 0xDBFF && pos < len) {
14 // high surrogate, and there is a next character
15 value = str.charCodeAt(pos);
16 if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate
17 }
18 }
19 return length;
20};
Note: See TracBrowser for help on using the repository browser.