UNPKG

element-plus

Version:

A Component Library for Vue 3

1 lines 1.37 kB
{"version":3,"file":"global-node.mjs","names":[],"sources":["../../../../../packages/utils/vue/global-node.ts"],"sourcesContent":["import { isClient } from '../browser'\n\nconst globalNodes: HTMLElement[] = []\nlet target: HTMLElement | undefined = !isClient ? undefined : document.body\n\nexport function createGlobalNode(id?: string) {\n const el = document.createElement('div')\n if (id !== undefined) {\n el.setAttribute('id', id)\n }\n\n if (target) {\n target.appendChild(el)\n globalNodes.push(el)\n }\n\n return el\n}\n\nexport function removeGlobalNode(el: HTMLElement) {\n globalNodes.splice(globalNodes.indexOf(el), 1)\n el.remove()\n}\n\nexport function changeGlobalNodesTarget(el: HTMLElement) {\n if (el === target) return\n\n target = el\n globalNodes.forEach((el) => {\n if (target && !el.contains(target)) {\n target.appendChild(el)\n }\n })\n}\n"],"mappings":";;AAEA,MAAM,cAA6B,EAAE;AACrC,IAAI,SAAkC,CAAC,WAAW,KAAA,IAAY,SAAS;AAEvE,SAAgB,iBAAiB,IAAa;CAC5C,MAAM,KAAK,SAAS,cAAc,MAAM;CACxC,IAAI,OAAO,KAAA,GACT,GAAG,aAAa,MAAM,GAAG;CAG3B,IAAI,QAAQ;EACV,OAAO,YAAY,GAAG;EACtB,YAAY,KAAK,GAAG;;CAGtB,OAAO;;AAGT,SAAgB,iBAAiB,IAAiB;CAChD,YAAY,OAAO,YAAY,QAAQ,GAAG,EAAE,EAAE;CAC9C,GAAG,QAAQ;;AAGb,SAAgB,wBAAwB,IAAiB;CACvD,IAAI,OAAO,QAAQ;CAEnB,SAAS;CACT,YAAY,SAAS,OAAO;EAC1B,IAAI,UAAU,CAAC,GAAG,SAAS,OAAO,EAChC,OAAO,YAAY,GAAG;GAExB"}