UNPKG

teleport-vue2

Version:
2 lines (1 loc) 2.51 kB
(function(e,o){typeof exports=="object"&&typeof module<"u"?o(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],o):(e=typeof globalThis<"u"?globalThis:e||self,o(e.TeleportVue2={},e.Vue))})(this,function(e,o){"use strict";function _defineProperty(e,o,n){return o=_toPropertyKey(o),o in e?Object.defineProperty(e,o,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[o]=n,e}function _toPropertyKey(e){var o=_toPrimitive(e,"string");return typeof o=="symbol"?o:o+""}function _toPrimitive(e,o){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var l=n.call(e,o||"default");if(typeof l!="object")return l;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(e)}var n=o.defineComponent({name:"Teleport",abstract:!0,props:{to:{type:[String,HTMLElement],required:!0},disabled:Boolean},data:function(){var t={teleported:!1,lastTo:"",rootEl:void 0,originalEl:void 0,dumb:document.createComment(" teleport ")};return Object.preventExtensions(t),t},methods:{onEnter:function(){var t,i;this.rootEl=this._vnode.elm,this.originalEl=this.teleported?(t=this.dumb)===null||t===void 0?void 0:t.parentNode:(i=this.rootEl)===null||i===void 0?void 0:i.parentNode,this.disabled?this.restore():this.telport()},restore:function(){var t;this.teleported&&(this.$vnode.elm=this.rootEl,this.teleported=!1,this.lastTo="",this.originalEl&&(this.rootEl&&this.originalEl.insertBefore(this.rootEl,this.dumb),(t=this.dumb.parentNode)===null||t===void 0||t.removeChild(this.dumb)))},telport:function(){if(!(!this.rootEl||!this.originalEl)){this.teleported||this.originalEl.insertBefore(this.dumb,this.rootEl),this.$vnode.elm=this.dumb,this.teleported=!0;var t;this.to!==this.lastTo&&(t=typeof this.to=="string"?document.querySelector(this.to):this.to),t&&(t.appendChild(this.rootEl),this.lastTo=this.to)}}},mounted:function(){this.onEnter()},updated:function(){this.onEnter()},beforeDestroy:function(){var t,i;(t=this.dumb.parentNode)===null||t===void 0||t.removeChild(this.dumb),(i=this.rootEl)===null||i===void 0||(i=i.parentNode)===null||i===void 0||i.removeChild(this.rootEl)},render:function(t){var i,d=(i=this.$slots.default)===null||i===void 0?void 0:i[0];return d}});function l(r,t,i,d,h,f,p,m){var a=typeof r=="function"?r.options:r;return{exports:r,options:a}}var u=l(n),s=u.exports;e.Teleport=s,e.default=s,Object.defineProperties(e,_defineProperty({__esModule:{value:!0}},Symbol.toStringTag,{value:"Module"}))});