All files / src/utils escape-xml.util.js

100% Statements 17/17
100% Branches 2/2
100% Functions 1/1
100% Lines 17/17

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 181x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
/** @type {{[key: string]: string}} */
const xmlEscapeMap = {
  '<': '&lt;',
  '>': '&gt;',
  '&': '&amp;',
  "'": '&apos;',
  '"': '&quot;',
}
 
/**
 * Escapes XML entities characters in `xml` string
 * @param {string} xml - xml to escape
 * @returns {string} escaped xml
 */
export function escapeXml (xml) {
  return xml.replace(/[<>&'"]/g, c => xmlEscapeMap[c])
};