{"version":3,"file":"dom.mjs","sources":["../../../../src/utils/dom.ts"],"sourcesContent":["import { isServer } from './ssr'\n\n/**\n * Create and append to head provided styles or update if exists.\n *\n * @param id - used to identify block for removal etc\n * @param getStyles - closure to get styles\n */\nexport const addOrUpdateStyleElement = (id: string, getStyles: () => string): void => {\n  if (isServer()) {\n    return\n  }\n\n  let stylesElement = document.getElementById(id)\n\n  if (stylesElement) {\n    stylesElement.innerHTML = getStyles()\n  } else {\n    stylesElement = document.createElement('style')\n    stylesElement.setAttribute('type', 'text/css')\n    stylesElement.setAttribute('id', id)\n    stylesElement.innerHTML = getStyles()\n    document.head.append(stylesElement)\n  }\n}\n\nexport const removeStyleElement = (id: string): void => {\n  document.getElementById(id)?.remove()\n}\n"],"names":[],"mappings":";AAQa,MAAA,0BAA0B,CAAC,IAAY,cAAkC;AACpF,MAAI,YAAY;AACd;AAAA,EACF;AAEI,MAAA,gBAAgB,SAAS,eAAe,EAAE;AAE9C,MAAI,eAAe;AACjB,kBAAc,YAAY;EAAU,OAC/B;AACW,oBAAA,SAAS,cAAc,OAAO;AAChC,kBAAA,aAAa,QAAQ,UAAU;AAC/B,kBAAA,aAAa,MAAM,EAAE;AACnC,kBAAc,YAAY;AACjB,aAAA,KAAK,OAAO,aAAa;AAAA,EACpC;AACF;AAEa,MAAA,qBAAqB,CAAC,OAAqB;;AAC7C,iBAAA,eAAe,EAAE,MAAjB,mBAAoB;AAC/B;"}