/* .BaseTransition */

/* .BaseTransitionPropsValidators */

/* .EffectScope */

/* .Fragment */

/* .ReactiveEffect */

/* .Static */

/* .callWithAsyncErrorHandling */

/* .computed */

/* .createHydrationRenderer */

/* .createRenderer */

/* .createVNode */

/* .defineComponent */

/* .getCurrentInstance */

/* .getCurrentScope */

/* .getTransitionRawChildren */

/* .isProxy */

/* .isReactive */

/* .isRef */

/* .isShallow */

/* .markRaw */

/* .nextTick */

/* .onMounted */

/* .onUnmounted */

/* .onUpdated */

/* .pauseTracking */

/* .proxyRefs */

/* .reactive */

/* .ref */

/* .resetTracking */

/* .resolveTransitionHooks */

/* .setTransitionHooks */

/* .shallowReactive */

/* .toRaw */

/* .track */

/* .trigger */

/* .useTransitionState */

/* .watchPostEffect */

/* @__PURE__ */

/* APP_INIT */

/* APP_UNMOUNT */

/* COLLECTION */

/* COMMENT */

/* COMMON */

/* COMPONENT_ADDED */

/* COMPONENT_EMIT */

/* COMPONENT_REMOVED */

/* COMPONENT_UPDATED */

/* CONTEXT */

/* DATA */

/* ELEMENT */

/* INVALID */

/* OTHER */

/* PROPS */

/* SETUP */

/* TEXT */

/* binding */

/* cancelled */

/* detached */

/* do not include inferred name to avoid breaking existing code */

/* do not throw in dev if user provided error component */

/* harmony export */

/* harmony import */

/* hydrating */

/* isAbsent */

/* isBlock */

/* isBlock: prevent a block from tracking itself */

/* mergeRef: true */

/* prepend */

/* reexport safe */

/* shallow */

/* shouldCast */

/* shouldCastTrue */

/* treat default function as factory */

/* unused harmony exports ITERATE_KEY, deferredComputed, enableTracking */

/* we know it doesn't need it */

/**
     * @internal
     */

/**
   * @internal
   */

/**
   * This should only be called on non-detached scopes
   * @internal
   */

/**
   * resolve inner component definition (handle possible async component)
   */

/***/

//  get moved around. Make sure all root level vnodes inherit el.

// #1153: fast path should not be taken for non-stable (v-for) fragments

// #2078 in the case of <component :is="vnode" ref="extra"/>

// #2080 if the stable fragment has a key, it's a <template v-for> that may

// #2134 or if it's a component root, it may also get moved around

// #2715 the previous fragment could've been a BAILed one as a result

// #3666, avoid reference pollution when reusing vnode

// #4096 array checkboxes need to be deep traversed

// #8326: extend call and options.name access are considered side-effects

// (#4815)

// - #1942 if hmr is enabled with sfc component

// - In the case of a Fragment, we need to provide the actual parent

// - In the case of a component, it could contain anything.

// - In the case of different nodes, there is going to be a replacement

// - vite#872 non-sfc component used by sfc component

// <option>s.

// <select multiple> value need to be deep traversed

// As long as the user only uses trusted templates, this is safe.

// In order to make Suspense tree-shakable, we need to avoid importing it

// In other cases, the parent container is not actually used so we

// Marker for special handling inside the renderer. We are not using a ===

// Move PURE marker to new line to workaround compiler discarding it

// Reason: innerHTML.

// Static content here can only come from compiled templates.

// These should technically only be non-null on mounted VNodes. However,

// __UNSAFE__

// a server-rendered async wrapper is already in resolved state

// also exclude jsdom

// also try camelCase event handler (#2249)

// always force full diff in dev

// anchor may have changed if it's in a fragment

// anchor will not be used if this is hydration, so only need to

// and converted to camelCase (#955)

// and it will never need to change.

// appear

// as the component is being moved.

// assets

// avoid a block node from tracking itself

// browser environment to avoid the timer handle stalling test runner exit

// by Rollup, so we have to wrap it in a pure-annotated IIFE.

// check directly on KeepAlive in the renderer, because importing it directly

// check instance[type] first which is resolved for options API

// component doesn't need to update, it needs to persist the instance on to

// component may have been moved before resolve.

// component nodes also should always be patched, because even if the

// consider the comment placeholder case.

// css module (injected by vue-loader)

// custom elements may use _value internally

// directly in the renderer. The renderer checks for the __isSuspense flag

// due to type annotation

// emit

// enter

// existing patch flag to be reliable and need to add the FULL_PROPS flag.

// fallback tree will not have suspense context

// fast paths only.

// first

// for camelCase

// for kebab-case

// global properties

// global registration

// handle late devtools injection - only do this if we are in an actual

// has current parent block

// if the vnode is cloned with extra props, we can no longer assume its

// if the vnode itself already has a ref, cloneVNode will need to merge

// if this is not a hydration, instance.subTree will be the comment

// inheritAttrs

// internals.

// it's possible the original props was passed in as kebab-case

// iterable protocol

// iterator protocol

// just pass the block element here to avoid a DOM parentNode call.

// key attached in the `createSlots` helper, respect that

// last

// leave

// lifecycle

// lifecycle hooks

// local registration

// local resolved assets

// no suspense so unmount hooks fire now

// not using enums here because it results in computed properties

// note: preserve flag for fragments since they use the flag for children

// note: we are moving the render call into an async callback,

// objects

// of renderSlot() with no valid children

// of the Fragment itself so it can move its children.

// oldVNode may be an errored async setup() component inside Suspense

// on a vnode's type and calls the `process` method, passing in renderer

// only cache other properties when instance has declared (thus stable)

// parent may have changed if it's in a teleport

// pass undefined as the old value when it's changed for the first time

// placeholder.

// post-create lifecycle registrations are noops during SSR (except for serverPrefetch)

// presence of a patch flag indicates this node needs patching on updates.

// props

// props default value

// provide / inject

// prune post-render after `current` has been updated

// public API

// remove the component if it wasn't buffered

// resolveDynamicModel expects an uppercase tag name, but vnode.type is lowercase

// resolved props and emits options

// set initial checked on mount to wait for true-value/false-value

// set value in mounted & updated because <select> relies on its children

// set value on mounted so it's after min/max for type="range"

// slot content array of a dynamic conditional slot may have a branch

// some envs mock window but not fully

// state

// suspense related

// the EVENTS flag is only for hydration and if it is the only flag, the

// the leading comma is intentional so empty string "" is also included

// the next vnode so that it can be properly unmounted later.

// the refs so the single vnode can be set on multiple refs

// them since them being non-null during a mount doesn't affect the logic as

// they *should* be copied for kept-alive vnodes. So we just always copy

// they will simply be overwritten.

// to be immediately set

// to be set immediately

// undefined = never times out

// vnode should not be considered dynamic due to handler caching.

// watch

// which also requires the correct parent container

// which means it won't track dependencies - but it's ok because

// which will not have a mounted element

// will be set synchronously right after creation

// would prevent it from being tree-shaken.
