penretem/addons/mitre.typ

16 lines
436 B
Typst

#let isUsed = state("mitreIsUsed", false)
#let mitreData = json("../extern/mitre-attack.json")
#let reference(name: str, id: str) = {
let elem = mitreData.find(d => d.name == name or d.id == id)
if elem == none {
panic("Referenced MITRE ATT&CK attack pattern, but it couldn't be found: id=" + str(id) + ", name=" + str(name))
}
text([
_#elem.name _ (#elem.id)#footnote(elem.url)
])
context(isUsed.update(true))
}