31 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| "use strict";
 | |
| var __importDefault = (this && this.__importDefault) || function (mod) {
 | |
|     return (mod && mod.__esModule) ? mod : { "default": mod };
 | |
| };
 | |
| Object.defineProperty(exports, "__esModule", { value: true });
 | |
| var decode_json_1 = __importDefault(require("./maps/decode.json"));
 | |
| // Adapted from https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119
 | |
| var fromCodePoint = 
 | |
| // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
 | |
| String.fromCodePoint ||
 | |
|     function (codePoint) {
 | |
|         var output = "";
 | |
|         if (codePoint > 0xffff) {
 | |
|             codePoint -= 0x10000;
 | |
|             output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);
 | |
|             codePoint = 0xdc00 | (codePoint & 0x3ff);
 | |
|         }
 | |
|         output += String.fromCharCode(codePoint);
 | |
|         return output;
 | |
|     };
 | |
| function decodeCodePoint(codePoint) {
 | |
|     if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {
 | |
|         return "\uFFFD";
 | |
|     }
 | |
|     if (codePoint in decode_json_1.default) {
 | |
|         codePoint = decode_json_1.default[codePoint];
 | |
|     }
 | |
|     return fromCodePoint(codePoint);
 | |
| }
 | |
| exports.default = decodeCodePoint;
 |