The script is used to process the various SVG diagrams used in the vocabulary specification defined by the W3C Verifiable Credential Working Group. The reason for this script is a bug in draw.io in conjunction with links assigned to transparent shapes. The bug has been reported in a github issue; if the bug is taken care of in a later release of draw.io, then this script may become unnecessary.
Note however, that this script also includes an SVGO processing; if the script itself becomes moot, SVGO should still be used. The main reason is to convert the SVG file into a real rescaled graphics, by removing the explicit width and height values from the top level <svg>
element. Just for the records, here is the configuration of SVGO as used for the VC diagrams:
{
plugins: [
{
name: 'preset-default',
params: {
overrides: {
removeMetadata: false,
removeTitle: false,
removeDesc: false,
convertShapeToPath: false,
removeViewBox: false,
}
}
},
'removeDimensions'
],
js2svg: {
indent: 4,
pretty: true
}
}
This script, or SVGO, should be run on the diagram SVG files, as exported from draw.io, before incorporating them into the vocabulary definition files.