2019-11-02 10:54:01 +08:00
|
|
|
import {
|
2020-01-24 04:05:38 +08:00
|
|
|
type CreateAppFunction,
|
2019-11-02 10:54:01 +08:00
|
|
|
type RootRenderFunction,
|
2023-12-26 19:39:47 +08:00
|
|
|
type VNode,
|
2019-11-02 10:54:01 +08:00
|
|
|
createRenderer,
|
|
|
|
} from '@vue/runtime-core'
|
2020-03-23 23:08:22 +08:00
|
|
|
import { type TestElement, nodeOps } from './nodeOps'
|
2019-06-20 21:28:37 +08:00
|
|
|
import { patchProp } from './patchProp'
|
2019-08-27 06:08:56 +08:00
|
|
|
import { serializeInner } from './serialize'
|
2020-06-11 04:54:23 +08:00
|
|
|
import { extend } from '@vue/shared'
|
2018-10-02 01:15:07 +08:00
|
|
|
|
2020-06-11 04:54:23 +08:00
|
|
|
const { render: baseRender, createApp: baseCreateApp } = createRenderer(
|
|
|
|
extend({ patchProp }, nodeOps),
|
|
|
|
)
|
2019-09-03 04:09:34 +08:00
|
|
|
|
2020-03-23 23:08:22 +08:00
|
|
|
export const render = baseRender as RootRenderFunction<TestElement>
|
2020-01-24 04:05:38 +08:00
|
|
|
export const createApp = baseCreateApp as CreateAppFunction<TestElement>
|
2018-10-18 05:36:34 +08:00
|
|
|
|
2019-08-27 06:08:56 +08:00
|
|
|
// convenience for one-off render validations
|
2024-09-10 16:46:19 +08:00
|
|
|
export function renderToString(vnode: VNode): string {
|
2019-08-27 06:08:56 +08:00
|
|
|
const root = nodeOps.createElement('div')
|
|
|
|
render(vnode, root)
|
|
|
|
return serializeInner(root)
|
|
|
|
}
|
|
|
|
|
|
|
|
export * from './triggerEvent'
|
|
|
|
export * from './serialize'
|
2018-10-02 01:15:07 +08:00
|
|
|
export * from './nodeOps'
|
2018-10-27 03:44:50 +08:00
|
|
|
export * from '@vue/runtime-core'
|