All files / packages/tools/src/drawingSvg setAttributesIfNecessary.ts

100% Statements 7/7
100% Branches 6/6
100% Functions 2/2
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14  255x 1985x 1985x 1985x 410x 1575x 381x            
export function setAttributesIfNecessary(attributes, svgNode) {
  Object.keys(attributes).forEach((key) => {
    const currentValue = svgNode.getAttribute(key);
    const newValue = attributes[key];
    if (newValue === undefined || newValue === '') {
      svgNode.removeAttribute(key);
    } else if (currentValue !== newValue) {
      svgNode.setAttribute(key, newValue);
    }
  });
}
 
export default setAttributesIfNecessary;