| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | import BrowserSprite from 'svg-baker-runtime/src/browser-sprite';import domready from 'domready';const spriteNodeId = '__SVG_SPRITE_NODE__';const spriteGlobalVarName = '__SVG_SPRITE__';const isSpriteExists = !!window[spriteGlobalVarName];// eslint-disable-next-line import/no-mutable-exportslet sprite;if (isSpriteExists) {  sprite = window[spriteGlobalVarName];} else {  sprite = new BrowserSprite({    attrs: {      id: spriteNodeId,      'aria-hidden': 'true'    }  });  window[spriteGlobalVarName] = sprite;}const loadSprite = () => {  /**   * Check for page already contains sprite node   * If found - attach to and reuse it's content   * If not - render and mount the new sprite   */  const existing = document.getElementById(spriteNodeId);  if (existing) {    sprite.attach(existing);  } else {    sprite.mount(document.body, true);  }};if (document.body) {  loadSprite();} else {  domready(loadSprite);}export default sprite;
 |