Adds commitMutations function to reconcile.ts that processes fiber effects in correct order: removes (reverse), inserts+moves (left-to-right with insertBefore), updates (top-down). Integrates key-based reconciliation pipeline into render() via reconcileNode, resolveUNode, and createFiberForInsert.
28 lines
1.6 KiB
TypeScript
28 lines
1.6 KiB
TypeScript
export { UJSX as schema } from "./core/schema.js";
|
|
export type { UPrimitive, PropValue, UniversalProps, UElement, URoot, UNode, ComponentFn, UType, UComponent } from "./core/schema.js";
|
|
export { isUElement, isURoot, isUPrimitive } from "./core/schema.js";
|
|
|
|
export { h, createRoot, createComponent, Fragment, jsx, jsxs, jsxDEV } from "./core/h.js";
|
|
|
|
export { reactiveComponent, reactiveElement, ReactiveRoot } from "./core/reactive.js";
|
|
export { signal, computed, effect, batch } from "./core/reactive.js";
|
|
export type { Signal, ReadonlySignal, ReactiveNode } from "./core/reactive.js";
|
|
|
|
export { Context } from "./core/context.js";
|
|
export type { Density, Direction, RenderContext } from "./core/context.js";
|
|
|
|
export { createPubSubEmitter, proxyEventEmitter } from "./core/events.js";
|
|
export type { EventEnvelope, PubSubLike, UjsxEventMap, UjsxEnvelope } from "./core/events.js";
|
|
|
|
export { ValuePointer, selectNode, setNode } from "./core/pointer.js";
|
|
|
|
export { createRoot as createHostRoot } from "./host/config.js";
|
|
export type { HostConfig, Root } from "./host/config.js";
|
|
|
|
export type { Fiber, Effect } from "./host/fiber.js";
|
|
|
|
export { scheduleUpdate, flushUpdates, reconcileProps, commitEffects, commitMutations, wireSignalToFiber, resetUpdateQueue, reconcileChildren, longestIncreasingSubsequence } from "./host/reconcile.js";
|
|
export type { MatchedChild, ChildClassification, CommitContext } from "./host/reconcile.js";
|
|
|
|
export { TransformRegistry, childCtx, matchesSchema, ctx as transformCtx } from "./transform/registry.js";
|
|
export type { TransformContext, TransformFn, TransformRule } from "./transform/registry.js"; |