You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							34 lines
						
					
					
						
							936 B
						
					
					
				
			
		
		
	
	
							34 lines
						
					
					
						
							936 B
						
					
					
				/** | 
						|
 * @fileoverview XML character escaper | 
						|
 * @author George Chung | 
						|
 */ | 
						|
"use strict"; | 
						|
 | 
						|
//------------------------------------------------------------------------------ | 
						|
// Public Interface | 
						|
//------------------------------------------------------------------------------ | 
						|
 | 
						|
/** | 
						|
 * Returns the escaped value for a character | 
						|
 * @param {string} s string to examine | 
						|
 * @returns {string} severity level | 
						|
 * @private | 
						|
 */ | 
						|
module.exports = function(s) { | 
						|
    return (`${s}`).replace(/[<>&"'\x00-\x1F\x7F\u0080-\uFFFF]/gu, c => { // eslint-disable-line no-control-regex | 
						|
        switch (c) { | 
						|
            case "<": | 
						|
                return "<"; | 
						|
            case ">": | 
						|
                return ">"; | 
						|
            case "&": | 
						|
                return "&"; | 
						|
            case "\"": | 
						|
                return """; | 
						|
            case "'": | 
						|
                return "'"; | 
						|
            default: | 
						|
                return `&#${c.charCodeAt(0)};`; | 
						|
        } | 
						|
    }); | 
						|
};
 | 
						|
 |