var ATTR_VALUE_REGEX_TEST = /[\xA0"&]/; var ATTR_VALUE_REGEX_REPLACE = new RegExp(ATTR_VALUE_REGEX_TEST.source, 'g'); var TEXT_REGEX_TEST = /[\xA0&<>]/; var TEXT_REGEX_REPLACE = new RegExp(TEXT_REGEX_TEST.source, 'g'); function attrValueReplacer(_char) { switch (_char.charCodeAt(0)) { case 160 /* NBSP */ : return ' '; case 34 /* QUOT */ : return '"'; case 38 /* AMP */ : return '&'; default: return _char; } } function textReplacer(_char2) { switch (_char2.charCodeAt(0)) { case 160 /* NBSP */ : return ' '; case 38 /* AMP */ : return '&'; case 60 /* LT */ : return '<'; case 62 /* GT */ : return '>'; default: return _char2; } } export function escapeAttrValue(attrValue) { if (ATTR_VALUE_REGEX_TEST.test(attrValue)) { return attrValue.replace(ATTR_VALUE_REGEX_REPLACE, attrValueReplacer); } return attrValue; } export function escapeText(text) { if (TEXT_REGEX_TEST.test(text)) { return text.replace(TEXT_REGEX_REPLACE, textReplacer); } return text; } export function sortByLoc(a, b) { // If either is invisible, don't try to order them if (a.loc.isInvisible || b.loc.isInvisible) { return 0; } if (a.loc.startPosition.line < b.loc.startPosition.line) { return -1; } if (a.loc.startPosition.line === b.loc.startPosition.line && a.loc.startPosition.column < b.loc.startPosition.column) { return -1; } if (a.loc.startPosition.line === b.loc.startPosition.line && a.loc.startPosition.column === b.loc.startPosition.column) { return 0; } return 1; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3N5bnRheC9saWIvZ2VuZXJhdGlvbi91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLElBQU0scUJBQXFCLEdBQTNCLFVBQUE7QUFDQSxJQUFNLHdCQUF3QixHQUFHLElBQUEsTUFBQSxDQUFXLHFCQUFxQixDQUFoQyxNQUFBLEVBQWpDLEdBQWlDLENBQWpDO0FBRUEsSUFBTSxlQUFlLEdBQXJCLFdBQUE7QUFDQSxJQUFNLGtCQUFrQixHQUFHLElBQUEsTUFBQSxDQUFXLGVBQWUsQ0FBMUIsTUFBQSxFQUEzQixHQUEyQixDQUEzQjs7QUFFQSxTQUFBLGlCQUFBLENBQUEsS0FBQSxFQUF1QztBQUNyQyxVQUFRLEtBQUksQ0FBSixVQUFBLENBQVIsQ0FBUSxDQUFSO0FBQ0UsU0FBQTtBQUFBO0FBQUE7QUFDRSxhQUFBLFFBQUE7O0FBQ0YsU0FBQTtBQUFBO0FBQUE7QUFDRSxhQUFBLFFBQUE7O0FBQ0YsU0FBQTtBQUFBO0FBQUE7QUFDRSxhQUFBLE9BQUE7O0FBQ0Y7QUFDRSxhQUFBLEtBQUE7QUFSSjtBQVVEOztBQUVELFNBQUEsWUFBQSxDQUFBLE1BQUEsRUFBa0M7QUFDaEMsVUFBUSxNQUFJLENBQUosVUFBQSxDQUFSLENBQVEsQ0FBUjtBQUNFLFNBQUE7QUFBQTtBQUFBO0FBQ0UsYUFBQSxRQUFBOztBQUNGLFNBQUE7QUFBQTtBQUFBO0FBQ0UsYUFBQSxPQUFBOztBQUNGLFNBQUE7QUFBQTtBQUFBO0FBQ0UsYUFBQSxNQUFBOztBQUNGLFNBQUE7QUFBQTtBQUFBO0FBQ0UsYUFBQSxNQUFBOztBQUNGO0FBQ0UsYUFBQSxNQUFBO0FBVko7QUFZRDs7QUFFRCxPQUFNLFNBQUEsZUFBQSxDQUFBLFNBQUEsRUFBMkM7QUFDL0MsTUFBSSxxQkFBcUIsQ0FBckIsSUFBQSxDQUFKLFNBQUksQ0FBSixFQUEyQztBQUN6QyxXQUFPLFNBQVMsQ0FBVCxPQUFBLENBQUEsd0JBQUEsRUFBUCxpQkFBTyxDQUFQO0FBQ0Q7O0FBQ0QsU0FBQSxTQUFBO0FBQ0Q7QUFFRCxPQUFNLFNBQUEsVUFBQSxDQUFBLElBQUEsRUFBaUM7QUFDckMsTUFBSSxlQUFlLENBQWYsSUFBQSxDQUFKLElBQUksQ0FBSixFQUFnQztBQUM5QixXQUFPLElBQUksQ0FBSixPQUFBLENBQUEsa0JBQUEsRUFBUCxZQUFPLENBQVA7QUFDRDs7QUFDRCxTQUFBLElBQUE7QUFDRDtBQUVELE9BQU0sU0FBQSxTQUFBLENBQUEsQ0FBQSxFQUFBLENBQUEsRUFBZ0Q7QUFDcEQ7QUFDQSxNQUFJLENBQUMsQ0FBRCxHQUFBLENBQUEsV0FBQSxJQUFxQixDQUFDLENBQUQsR0FBQSxDQUF6QixXQUFBLEVBQTRDO0FBQzFDLFdBQUEsQ0FBQTtBQUNEOztBQUVELE1BQUksQ0FBQyxDQUFELEdBQUEsQ0FBQSxhQUFBLENBQUEsSUFBQSxHQUEyQixDQUFDLENBQUQsR0FBQSxDQUFBLGFBQUEsQ0FBL0IsSUFBQSxFQUF5RDtBQUN2RCxXQUFPLENBQVAsQ0FBQTtBQUNEOztBQUVELE1BQ0UsQ0FBQyxDQUFELEdBQUEsQ0FBQSxhQUFBLENBQUEsSUFBQSxLQUE2QixDQUFDLENBQUQsR0FBQSxDQUFBLGFBQUEsQ0FBN0IsSUFBQSxJQUNBLENBQUMsQ0FBRCxHQUFBLENBQUEsYUFBQSxDQUFBLE1BQUEsR0FBNkIsQ0FBQyxDQUFELEdBQUEsQ0FBQSxhQUFBLENBRi9CLE1BQUEsRUFHRTtBQUNBLFdBQU8sQ0FBUCxDQUFBO0FBQ0Q7O0FBRUQsTUFDRSxDQUFDLENBQUQsR0FBQSxDQUFBLGFBQUEsQ0FBQSxJQUFBLEtBQTZCLENBQUMsQ0FBRCxHQUFBLENBQUEsYUFBQSxDQUE3QixJQUFBLElBQ0EsQ0FBQyxDQUFELEdBQUEsQ0FBQSxhQUFBLENBQUEsTUFBQSxLQUErQixDQUFDLENBQUQsR0FBQSxDQUFBLGFBQUEsQ0FGakMsTUFBQSxFQUdFO0FBQ0EsV0FBQSxDQUFBO0FBQ0Q7O0FBRUQsU0FBQSxDQUFBO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBBU1R2MSBmcm9tICcuLi92MS9hcGknO1xuXG5jb25zdCBlbnVtIENoYXIge1xuICBOQlNQID0gMHhhMCxcbiAgUVVPVCA9IDB4MjIsXG4gIExUID0gMHgzYyxcbiAgR1QgPSAweDNlLFxuICBBTVAgPSAweDI2LFxufVxuXG5jb25zdCBBVFRSX1ZBTFVFX1JFR0VYX1RFU1QgPSAvW1xceEEwXCImXS87XG5jb25zdCBBVFRSX1ZBTFVFX1JFR0VYX1JFUExBQ0UgPSBuZXcgUmVnRXhwKEFUVFJfVkFMVUVfUkVHRVhfVEVTVC5zb3VyY2UsICdnJyk7XG5cbmNvbnN0IFRFWFRfUkVHRVhfVEVTVCA9IC9bXFx4QTAmPD5dLztcbmNvbnN0IFRFWFRfUkVHRVhfUkVQTEFDRSA9IG5ldyBSZWdFeHAoVEVYVF9SRUdFWF9URVNULnNvdXJjZSwgJ2cnKTtcblxuZnVuY3Rpb24gYXR0clZhbHVlUmVwbGFjZXIoY2hhcjogc3RyaW5nKTogc3RyaW5nIHtcbiAgc3dpdGNoIChjaGFyLmNoYXJDb2RlQXQoMCkpIHtcbiAgICBjYXNlIENoYXIuTkJTUDpcbiAgICAgIHJldHVybiAnJm5ic3A7JztcbiAgICBjYXNlIENoYXIuUVVPVDpcbiAgICAgIHJldHVybiAnJnF1b3Q7JztcbiAgICBjYXNlIENoYXIuQU1QOlxuICAgICAgcmV0dXJuICcmYW1wOyc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBjaGFyO1xuICB9XG59XG5cbmZ1bmN0aW9uIHRleHRSZXBsYWNlcihjaGFyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBzd2l0Y2ggKGNoYXIuY2hhckNvZGVBdCgwKSkge1xuICAgIGNhc2UgQ2hhci5OQlNQOlxuICAgICAgcmV0dXJuICcmbmJzcDsnO1xuICAgIGNhc2UgQ2hhci5BTVA6XG4gICAgICByZXR1cm4gJyZhbXA7JztcbiAgICBjYXNlIENoYXIuTFQ6XG4gICAgICByZXR1cm4gJyZsdDsnO1xuICAgIGNhc2UgQ2hhci5HVDpcbiAgICAgIHJldHVybiAnJmd0Oyc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBjaGFyO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlc2NhcGVBdHRyVmFsdWUoYXR0clZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoQVRUUl9WQUxVRV9SRUdFWF9URVNULnRlc3QoYXR0clZhbHVlKSkge1xuICAgIHJldHVybiBhdHRyVmFsdWUucmVwbGFjZShBVFRSX1ZBTFVFX1JFR0VYX1JFUExBQ0UsIGF0dHJWYWx1ZVJlcGxhY2VyKTtcbiAgfVxuICByZXR1cm4gYXR0clZhbHVlO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlVGV4dCh0ZXh0OiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoVEVYVF9SRUdFWF9URVNULnRlc3QodGV4dCkpIHtcbiAgICByZXR1cm4gdGV4dC5yZXBsYWNlKFRFWFRfUkVHRVhfUkVQTEFDRSwgdGV4dFJlcGxhY2VyKTtcbiAgfVxuICByZXR1cm4gdGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRCeUxvYyhhOiBBU1R2MS5Ob2RlLCBiOiBBU1R2MS5Ob2RlKTogLTEgfCAwIHwgMSB7XG4gIC8vIElmIGVpdGhlciBpcyBpbnZpc2libGUsIGRvbid0IHRyeSB0byBvcmRlciB0aGVtXG4gIGlmIChhLmxvYy5pc0ludmlzaWJsZSB8fCBiLmxvYy5pc0ludmlzaWJsZSkge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgaWYgKGEubG9jLnN0YXJ0UG9zaXRpb24ubGluZSA8IGIubG9jLnN0YXJ0UG9zaXRpb24ubGluZSkge1xuICAgIHJldHVybiAtMTtcbiAgfVxuXG4gIGlmIChcbiAgICBhLmxvYy5zdGFydFBvc2l0aW9uLmxpbmUgPT09IGIubG9jLnN0YXJ0UG9zaXRpb24ubGluZSAmJlxuICAgIGEubG9jLnN0YXJ0UG9zaXRpb24uY29sdW1uIDwgYi5sb2Muc3RhcnRQb3NpdGlvbi5jb2x1bW5cbiAgKSB7XG4gICAgcmV0dXJuIC0xO1xuICB9XG5cbiAgaWYgKFxuICAgIGEubG9jLnN0YXJ0UG9zaXRpb24ubGluZSA9PT0gYi5sb2Muc3RhcnRQb3NpdGlvbi5saW5lICYmXG4gICAgYS5sb2Muc3RhcnRQb3NpdGlvbi5jb2x1bW4gPT09IGIubG9jLnN0YXJ0UG9zaXRpb24uY29sdW1uXG4gICkge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcmV0dXJuIDE7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9