| 123456789101112131415161718192021222324252627282930313233343536373839 | 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 } });  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;
 |