| 1234567891011121314151617181920212223242526272829303132 | 
							- const processor = require('posthtml-svg-mode');
 
- const renameId = require('posthtml-rename-id');
 
- const normalizeViewBox = require('./transformations/normalize-viewbox');
 
- const rasterToSVG = require('./transformations/raster-to-svg');
 
- const prefixStyleSelectors = require('./transformations/prefix-style-selectors');
 
- const svgToSymbol = require('./transformations/svg-to-symbol');
 
- /**
 
-  * @param {Object} options
 
-  * @param {string} [options.id]
 
-  * @param {string} options.content
 
-  * @param {FileRequest} options.request
 
-  * @return {Promise<PostHTMLProcessingResult>}
 
-  */
 
- function symbolFactory(options) {
 
-   const { id } = options;
 
-   const plugins = [];
 
-   // convert raster image to svg
 
-   const content = Buffer.isBuffer(options.content)
 
-     ? rasterToSVG(options.content)
 
-     : options.content;
 
-   plugins.push(normalizeViewBox());
 
-   plugins.push(prefixStyleSelectors(`#${id}`));
 
-   plugins.push(renameId(`${id}_[id]`));
 
-   plugins.push(svgToSymbol({ id }));
 
-   return processor(plugins).process(content);
 
- }
 
- module.exports = symbolFactory;
 
 
  |