All files / src/rules deprecated.ts

100% Statements 7/7
100% Branches 4/4
100% Functions 2/2
100% Lines 7/7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23      1x           409x 852x     852x 2x     850x 26x        
import { Rule, RuleReport, RuleParserProxy } from '../rule';
import { TagOpenEvent } from '../event';
 
export = {
	name: 'deprecated',
	init,
} as Rule;
 
function init(parser: RuleParserProxy){
	parser.on('tag:open', (event: TagOpenEvent, report: RuleReport) => {
		const node = event.target;
 
		/* cannot validate if meta isn't known */
		if (node.meta === null){
			return;
		}
 
		if (node.meta.deprecated){
			report(node, `<${node.tagName}> is deprecated`);
		}
	});
}