{"version":3,"file":"global-node.mjs","sources":["../../../src/utils/vue/global-node.ts"],"sourcesContent":["import { isClient } from '@vueuse/core';\r\n\r\nconst globalNodes: HTMLElement[] = [];\r\nlet target: HTMLElement = !isClient ? (undefined as any) : document.body;\r\n\r\nexport function createGlobalNode(id?: string) {\r\n  const el = document.createElement('div');\r\n  if (id !== undefined) {\r\n    el.setAttribute('id', id);\r\n  }\r\n\r\n  target.appendChild(el);\r\n  globalNodes.push(el);\r\n\r\n  return el;\r\n}\r\n\r\nexport function removeGlobalNode(el: HTMLElement) {\r\n  globalNodes.splice(globalNodes.indexOf(el), 1);\r\n  el.remove();\r\n}\r\n\r\nexport function changeGlobalNodesTarget(el: HTMLElement) {\r\n  if (el === target) return;\r\n\r\n  target = el;\r\n  globalNodes.forEach((el) => {\r\n    if (el.contains(target) === false) {\r\n      target.appendChild(el);\r\n    }\r\n  });\r\n}\r\n"],"names":["el"],"mappings":";;AAEA,MAAM,cAA6B,EAAC,CAAA;AACpC,IAAI,MAAsB,GAAA,CAAC,QAAY,GAAA,KAAA,CAAA,GAAoB,QAAS,CAAA,IAAA,CAAA;AAE7D,SAAS,iBAAiB,EAAa,EAAA;AAC5C,EAAM,MAAA,EAAA,GAAK,QAAS,CAAA,aAAA,CAAc,KAAK,CAAA,CAAA;AACvC,EAAA,IAAI,OAAO,KAAW,CAAA,EAAA;AACpB,IAAG,EAAA,CAAA,YAAA,CAAa,MAAM,EAAE,CAAA,CAAA;AAAA,GAC1B;AAEA,EAAA,MAAA,CAAO,YAAY,EAAE,CAAA,CAAA;AACrB,EAAA,WAAA,CAAY,KAAK,EAAE,CAAA,CAAA;AAEnB,EAAO,OAAA,EAAA,CAAA;AACT,CAAA;AAEO,SAAS,iBAAiB,EAAiB,EAAA;AAChD,EAAA,WAAA,CAAY,MAAO,CAAA,WAAA,CAAY,OAAQ,CAAA,EAAE,GAAG,CAAC,CAAA,CAAA;AAC7C,EAAA,EAAA,CAAG,MAAO,EAAA,CAAA;AACZ,CAAA;AAEO,SAAS,wBAAwB,EAAiB,EAAA;AACvD,EAAA,IAAI,EAAO,KAAA,MAAA;AAAQ,IAAA,OAAA;AAEnB,EAAS,MAAA,GAAA,EAAA,CAAA;AACT,EAAY,WAAA,CAAA,OAAA,CAAQ,CAACA,GAAO,KAAA;AAC1B,IAAA,IAAIA,GAAG,CAAA,QAAA,CAAS,MAAM,CAAA,KAAM,KAAO,EAAA;AACjC,MAAA,MAAA,CAAO,YAAYA,GAAE,CAAA,CAAA;AAAA,KACvB;AAAA,GACD,CAAA,CAAA;AACH;;;;"}