getSlot,
} from './componentSlots'
import { hmrReload, hmrRerender } from './hmr'
+import { createElement } from './dom/node'
export { currentInstance } from '@vue/runtime-dom'
return createComponent(comp, rawProps, rawSlots, isSingleRoot, appContext)
}
- const el = document.createElement(comp)
+ const el = createElement(comp)
// mark single root
;(el as any).$root = isSingleRoot
} from '../component'
import { isForBlock } from '../apiCreateFor'
import { renderEffect } from '../renderEffect'
+import { createElement } from '../dom/node'
const positionMap = new WeakMap<TransitionBlock, DOMRect>()
const newPositionMap = new WeakMap<TransitionBlock, DOMRect>()
prevChildren.forEach(callPendingCbs)
prevChildren.forEach(child => {
- delete child.$transition!.disabled
+ child.$transition!.disabled = false
recordPosition(child)
})
const movedChildren = prevChildren.filter(applyTranslation)
const tag = props.tag
if (tag) {
- const container = document.createElement(tag)
+ const container = createElement(tag)
insert(slottedBlock, container)
// fallthrough attrs
if (instance!.hasFallthrough) {
+/*! #__NO_SIDE_EFFECTS__ */
+export function createElement(tagName: string): HTMLElement {
+ return document.createElement(tagName)
+}
+
/*! #__NO_SIDE_EFFECTS__ */
export function createTextNode(value = ''): Text {
return document.createTextNode(value)
currentHydrationNode,
isHydrating,
} from './hydration'
-import { child, createTextNode } from './node'
+import { child, createElement, createTextNode } from './node'
let t: HTMLTemplateElement
return createTextNode(html)
}
if (!node) {
- t = t || document.createElement('template')
+ t = t || createElement('template')
t.innerHTML = html
node = child(t.content)
}