generate()

in packages/svg-mixer/lib/sprite.js [89:111]


  generate() {
    const { width, height, config, symbols } = this;

    let usagesTrees;
    if (config.usages) {
      usagesTrees = symbols.map(s => ({
        tag: 'use',
        attrs: {
          width: s.width,
          height: s.height,
          'xlink:href': `#${s.id}`,
          transform: `translate(0, ${calculateSymbolPosition(s, this).top})`
        }
      }));
    }

    return Promise.all(symbols.map(s => s.generate()))
      .then(symbolsTrees => generateSpriteTree({
        attrs: merge(config.attrs, { width, height }),
        defs: symbolsTrees,
        content: usagesTrees
      }));
  }