@(idPrefix: String, list: Seq[GroupedDependency], selectorOption: Option[String], expandByDefault: Boolean = true, addButtons: Boolean = true) @cpeHtmlId(cpe: String) = @{ cpe.getBytes("utf-8").mkString("-") } @for(dep <- list; depPrefix = s"$idPrefix-${dep.sha1}"){

@libraryIdentification(dep, Some(cpe => s"$idPrefix-${dep.sha1}-suppression-cpe-${cpeHtmlId(cpe)}"), addLink = false, addButtons = addButtons) @for(s <- dep.maxCvssScore) { (@s × @dep.projects.size = @dep.ysdssScore) (vulns: @dep.vulnerabilities.size) } @dep.cpeIdentifiers.toSeq match { case Seq() => {} case cpeIds => { } }

@for(identifier <- dep.identifiers; cpe <- identifier.toCpeIdentifierOption ) {
@SuppressionXml.forCpe(dep, cpe)
}
@if(dep.descriptions.size > 1){
Multiple descriptions for this dependency!
} @for(descriptionParagraphs <- dep.parsedDescriptions){
@for(descriptionParagraphLines <- descriptionParagraphs){

@for(line <- descriptionParagraphLines) { @line
}

}
}

Evidence

@for(ev <- dep.dependencies.keySet.map(_.evidenceCollected).flatten){ }
confidence evidence type name source value
@ev.confidence @ev.evidenceType @ev.name @ev.source @ev.value

Affected projects (@dep.projects.size)

Vulnerabilities (@dep.vulnerabilities.size)

}