| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 'use strict';exports.type = 'perItem';exports.active = true;exports.description = 'removes empty <text> elements';exports.params = {    text: true,    tspan: true,    tref: true};/** * Remove empty Text elements. * * @see http://www.w3.org/TR/SVG/text.html * * @example * Remove empty text element: * <text/> * * Remove empty tspan element: * <tspan/> * * Remove tref with empty xlink:href attribute: * <tref xlink:href=""/> * * @param {Object} item current iteration item * @param {Object} params plugin params * @return {Boolean} if false, item will be filtered out * * @author Kir Belevich */exports.fn = function(item, params) {    // Remove empty text element    if (        params.text &&        item.isElem('text') &&        item.isEmpty()    ) return false;    // Remove empty tspan element    if (        params.tspan &&        item.isElem('tspan') &&        item.isEmpty()    ) return false;    // Remove tref with empty xlink:href attribute    if (        params.tref &&        item.isElem('tref') &&        !item.hasAttrLocal('href')    ) return false;};
 |