32 lines
727 B
TypeScript
32 lines
727 B
TypeScript
// vnode flags
|
|
export const enum VNodeFlags {
|
|
ELEMENT_HTML = 1,
|
|
ELEMENT_SVG = 1 << 1,
|
|
ELEMENT = ELEMENT_HTML | ELEMENT_SVG,
|
|
|
|
COMPONENT_UNKNOWN = 1 << 2,
|
|
COMPONENT_STATEFUL = 1 << 3,
|
|
COMPONENT_FUNCTIONAL = 1 << 4,
|
|
COMPONENT_ASYNC = 1 << 5,
|
|
COMPONENT = COMPONENT_UNKNOWN |
|
|
COMPONENT_STATEFUL |
|
|
COMPONENT_FUNCTIONAL |
|
|
COMPONENT_ASYNC,
|
|
|
|
TEXT = 1 << 6,
|
|
FRAGMENT = 1 << 7,
|
|
PORTAL = 1 << 8
|
|
}
|
|
|
|
export const enum ChildrenFlags {
|
|
UNKNOWN_CHILDREN = 0,
|
|
NO_CHILDREN = 1,
|
|
SINGLE_VNODE = 1 << 1,
|
|
KEYED_VNODES = 1 << 2,
|
|
NONE_KEYED_VNODES = 1 << 3,
|
|
STABLE_SLOTS = 1 << 4,
|
|
DYNAMIC_SLOTS = 1 << 5,
|
|
HAS_SLOTS = STABLE_SLOTS | DYNAMIC_SLOTS,
|
|
MULTIPLE_VNODES = KEYED_VNODES | NONE_KEYED_VNODES
|
|
}
|