| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- 'use strict';
 
- exports.name = 'removeDimensions';
 
- exports.type = 'perItem';
 
- exports.active = false;
 
- exports.description =
 
-   'removes width and height in presence of viewBox (opposite to removeViewBox, disable it first)';
 
- /**
 
-  * Remove width/height attributes and add the viewBox attribute if it's missing
 
-  *
 
-  * @example
 
-  * <svg width="100" height="50" />
 
-  *   ↓
 
-  * <svg viewBox="0 0 100 50" />
 
-  *
 
-  * @param {Object} item current iteration item
 
-  * @return {Boolean} if true, with and height will be filtered out
 
-  *
 
-  * @author Benny Schudel
 
-  */
 
- exports.fn = function (item) {
 
-   if (item.type === 'element' && item.name === 'svg') {
 
-     if (item.attributes.viewBox != null) {
 
-       delete item.attributes.width;
 
-       delete item.attributes.height;
 
-     } else if (
 
-       item.attributes.width != null &&
 
-       item.attributes.height != null &&
 
-       Number.isNaN(Number(item.attributes.width)) === false &&
 
-       Number.isNaN(Number(item.attributes.height)) === false
 
-     ) {
 
-       const width = Number(item.attributes.width);
 
-       const height = Number(item.attributes.height);
 
-       item.attributes.viewBox = `0 0 ${width} ${height}`;
 
-       delete item.attributes.width;
 
-       delete item.attributes.height;
 
-     }
 
-   }
 
- };
 
 
  |