/** * The MIT License (MIT) * Copyright (c) 2017-present Dmitry Soshnikov */ 'use strict'; /** * A regexp-tree plugin to transform surrogate pairs into single unicode code point * * \ud83d\ude80 -> \u{1f680} */ module.exports = { shouldRun: function shouldRun(ast) { return ast.flags.includes('u'); }, Char: function Char(path) { var node = path.node; if (node.kind !== 'unicode' || !node.isSurrogatePair || isNaN(node.codePoint)) { return; } node.value = '\\u{' + node.codePoint.toString(16) + '}'; delete node.isSurrogatePair; } };