50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * @fileoverview Helpers for severity values (e.g. normalizing different types).
 | 
						|
 * @author Bryan Mishkin
 | 
						|
 */
 | 
						|
 | 
						|
"use strict";
 | 
						|
 | 
						|
/**
 | 
						|
 * Convert severity value of different types to a string.
 | 
						|
 * @param {string|number} severity severity value
 | 
						|
 * @throws error if severity is invalid
 | 
						|
 * @returns {string} severity string
 | 
						|
 */
 | 
						|
function normalizeSeverityToString(severity) {
 | 
						|
    if ([2, "2", "error"].includes(severity)) {
 | 
						|
        return "error";
 | 
						|
    }
 | 
						|
    if ([1, "1", "warn"].includes(severity)) {
 | 
						|
        return "warn";
 | 
						|
    }
 | 
						|
    if ([0, "0", "off"].includes(severity)) {
 | 
						|
        return "off";
 | 
						|
    }
 | 
						|
    throw new Error(`Invalid severity value: ${severity}`);
 | 
						|
}
 | 
						|
 | 
						|
/**
 | 
						|
 * Convert severity value of different types to a number.
 | 
						|
 * @param {string|number} severity severity value
 | 
						|
 * @throws error if severity is invalid
 | 
						|
 * @returns {number} severity number
 | 
						|
 */
 | 
						|
function normalizeSeverityToNumber(severity) {
 | 
						|
    if ([2, "2", "error"].includes(severity)) {
 | 
						|
        return 2;
 | 
						|
    }
 | 
						|
    if ([1, "1", "warn"].includes(severity)) {
 | 
						|
        return 1;
 | 
						|
    }
 | 
						|
    if ([0, "0", "off"].includes(severity)) {
 | 
						|
        return 0;
 | 
						|
    }
 | 
						|
    throw new Error(`Invalid severity value: ${severity}`);
 | 
						|
}
 | 
						|
 | 
						|
module.exports = {
 | 
						|
    normalizeSeverityToString,
 | 
						|
    normalizeSeverityToNumber
 | 
						|
};
 |