UNPKG

stylelint-checkstyle-reporter

Version:
3 lines (2 loc) 1.09 kB
import{create as e}from"xmlbuilder2";class r{constructor(){this.fileLevel=!1,this.builder=e({version:"1.0",encoding:"utf-8"}),this.builder=this.builder.ele("checkstyle",{version:"4.3"})}startFile(e){if(this.fileLevel)throw new Error("You have already started a file. Please call endFile first.");this.builder=this.builder.ele("file",{name:e}),this.fileLevel=!0}endFile(){if(!this.fileLevel)throw new Error("You have not started a file yet. Call startFile first.");this.builder=this.builder.up(),this.fileLevel=!1}addError(e){if(!this.fileLevel)throw new Error("You have not started a file yet. Call startFile first.");this.builder=this.builder.ele("error",e).up()}generate(e){return this.builder.end(e??{})}}const i=(e,i,t)=>{const l=new r;return e.forEach((e=>{e.source&&(l.startFile(e.source),e.warnings.forEach((e=>{l.addError({column:e.column,line:e.line,message:e.text,severity:e.severity,source:`stylelint.rules.${e.rule}`})})),l.endFile())})),l.generate(t)};export{r as CheckstyleReport,i as default,i as stylelintToCheckstyle}; //# sourceMappingURL=stylelint-checkstyle-reporter.mjs.map