@reckona/mreact-compat 0.0.66 → 0.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/class-component.js.map +1 -1
  2. package/dist/context.js.map +1 -1
  3. package/dist/devtools.js.map +1 -1
  4. package/dist/dom-children.js.map +1 -1
  5. package/dist/dom-props.js.map +1 -1
  6. package/dist/element.js.map +1 -1
  7. package/dist/event-listeners.js.map +1 -1
  8. package/dist/event-priority.js.map +1 -1
  9. package/dist/event-replay.js.map +1 -1
  10. package/dist/event-types.js.map +1 -1
  11. package/dist/events.js.map +1 -1
  12. package/dist/fiber-child.js.map +1 -1
  13. package/dist/fiber-commit.js.map +1 -1
  14. package/dist/fiber-flags.js.map +1 -1
  15. package/dist/fiber-host.js.map +1 -1
  16. package/dist/fiber-lanes.js.map +1 -1
  17. package/dist/fiber-reconciler.js.map +1 -1
  18. package/dist/fiber-scheduler.js.map +1 -1
  19. package/dist/fiber-work-loop.js.map +1 -1
  20. package/dist/fiber.js.map +1 -1
  21. package/dist/flight-decoder.js.map +1 -1
  22. package/dist/flight-element-builder.js.map +1 -1
  23. package/dist/flight-parser.js.map +1 -1
  24. package/dist/flight-protocol.js.map +1 -1
  25. package/dist/flight-types.js.map +1 -1
  26. package/dist/flight.js.map +1 -1
  27. package/dist/hooks.js.map +1 -1
  28. package/dist/hydration.js.map +1 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/internal.js.map +1 -1
  31. package/dist/jsx-dev-runtime.js.map +1 -1
  32. package/dist/jsx-runtime.js.map +1 -1
  33. package/dist/prop-comparison.js.map +1 -1
  34. package/dist/reconcile-types.js.map +1 -1
  35. package/dist/reconciler.js.map +1 -1
  36. package/dist/render.js.map +1 -1
  37. package/dist/root.js.map +1 -1
  38. package/dist/scheduler.js.map +1 -1
  39. package/dist/suspense.js.map +1 -1
  40. package/dist/thenable.js.map +1 -1
  41. package/dist/url-safety.js.map +1 -1
  42. package/package.json +4 -3
  43. package/src/class-component.ts +386 -0
  44. package/src/context.ts +140 -0
  45. package/src/devtools.ts +1275 -0
  46. package/src/dom-children.ts +34 -0
  47. package/src/dom-props.ts +408 -0
  48. package/src/element.ts +317 -0
  49. package/src/event-listeners.ts +27 -0
  50. package/src/event-priority.ts +1 -0
  51. package/src/event-replay.ts +154 -0
  52. package/src/event-types.ts +18 -0
  53. package/src/events.ts +384 -0
  54. package/src/fiber-child.ts +364 -0
  55. package/src/fiber-commit.ts +83 -0
  56. package/src/fiber-flags.ts +21 -0
  57. package/src/fiber-host.ts +1564 -0
  58. package/src/fiber-lanes.ts +99 -0
  59. package/src/fiber-reconciler.ts +639 -0
  60. package/src/fiber-scheduler.ts +435 -0
  61. package/src/fiber-work-loop.ts +224 -0
  62. package/src/fiber.ts +148 -0
  63. package/src/flight-decoder.ts +205 -0
  64. package/src/flight-element-builder.ts +110 -0
  65. package/src/flight-parser.ts +698 -0
  66. package/src/flight-protocol.ts +71 -0
  67. package/src/flight-types.ts +148 -0
  68. package/src/flight.ts +162 -0
  69. package/src/hooks.ts +1940 -0
  70. package/src/hydration.ts +314 -0
  71. package/src/index.ts +95 -0
  72. package/src/internal.ts +7 -0
  73. package/src/jsx-dev-runtime.ts +40 -0
  74. package/src/jsx-runtime.ts +119 -0
  75. package/src/prop-comparison.ts +50 -0
  76. package/src/reconcile-types.ts +26 -0
  77. package/src/reconciler.ts +692 -0
  78. package/src/render.ts +29 -0
  79. package/src/root.ts +493 -0
  80. package/src/scheduler.ts +157 -0
  81. package/src/suspense.ts +317 -0
  82. package/src/thenable.ts +7 -0
  83. package/src/url-safety.ts +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-child.js","sourceRoot":"","sources":["../src/fiber-child.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber-child.js","sourceRoot":"","sources":["../src/fiber-child.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ERROR_BOUNDARY_TYPE,\n FORWARD_REF_TYPE,\n Fragment,\n LAZY_TYPE,\n MEMO_TYPE,\n STRICT_MODE_TYPE,\n Suspense,\n SuspenseList,\n isReactCompatElement,\n isReactCompatPortal,\n type ReactCompatElement,\n type ReactCompatNode,\n} from \"./element.js\";\nimport {\n isReactCompatConsumer,\n isReactCompatProvider,\n} from \"./context.js\";\nimport { isClassComponentType } from \"./class-component.js\";\nimport { ChildDeletion, Placement, Ref, Update } from \"./fiber-flags.js\";\nimport { createFiber, createWorkInProgress, type Fiber } from \"./fiber.js\";\nimport { getPendingProps } from \"./prop-comparison.js\";\n\nexport function reconcileChildFibers(\n parent: Fiber,\n currentFirstChild: Fiber | undefined,\n newChildren: ReactCompatNode,\n): Fiber | undefined {\n const children = normalizeChildren(newChildren);\n const keyed = collectKeyedChildren(currentFirstChild);\n const oldIndexes = collectChildIndexes(currentFirstChild);\n const used = new Set<Fiber>();\n let currentUnkeyed = currentFirstChild;\n let lastPlacedIndex = 0;\n let first: Fiber | undefined;\n let previous: Fiber | undefined;\n\n for (const child of children) {\n const key = getNodeKey(child);\n const matchedCurrent =\n key === undefined ? findNextUnkeyedChild(currentUnkeyed) : keyed.get(key);\n const fiber = reconcileSingleChild(parent, matchedCurrent, child, key);\n\n if (key === undefined) {\n currentUnkeyed = matchedCurrent?.sibling ?? currentUnkeyed?.sibling;\n }\n\n if (fiber === undefined) {\n if (matchedCurrent !== undefined) {\n used.add(matchedCurrent);\n markChildForDeletion(parent, matchedCurrent);\n }\n continue;\n }\n\n if (matchedCurrent !== undefined) {\n used.add(matchedCurrent);\n\n if (fiber.alternate === matchedCurrent) {\n const oldIndex = oldIndexes.get(matchedCurrent) ?? 0;\n if (oldIndex < lastPlacedIndex) {\n fiber.flags |= Placement;\n } else {\n lastPlacedIndex = oldIndex;\n }\n } else {\n markChildForDeletion(parent, matchedCurrent);\n }\n }\n\n fiber.lanes |= parent.lanes;\n fiber.return = parent;\n fiber.sibling = undefined;\n\n if (first === undefined) {\n first = fiber;\n } else if (previous !== undefined) {\n previous.sibling = fiber;\n }\n\n previous = fiber;\n }\n\n markRemainingChildrenForDeletion(parent, currentFirstChild, used);\n parent.child = first;\n return first;\n}\n\nfunction reconcileSingleChild(\n parent: Fiber,\n current: Fiber | undefined,\n child: ReactCompatNode,\n key: string | undefined,\n): Fiber | undefined {\n if (child === null || child === undefined || typeof child === \"boolean\") {\n return undefined;\n }\n\n if (typeof child === \"string\" || typeof child === \"number\") {\n if (current?.tag === \"host-text\") {\n const fiber = createWorkInProgress(current, String(child));\n markUpdateEffectIfChanged(fiber, current);\n return fiber;\n }\n\n const fiber = createFiber(\"host-text\", String(child), key);\n fiber.flags |= Placement;\n fiber.return = parent;\n return fiber;\n }\n\n if (Array.isArray(child)) {\n if (current?.tag === \"fragment\") {\n const fiber = createWorkInProgress(current, child);\n markUpdateEffectIfChanged(fiber, current);\n return fiber;\n }\n\n const fiber = createFiber(\"fragment\", child, key);\n fiber.flags |= Placement;\n fiber.return = parent;\n return fiber;\n }\n\n if (isReactCompatPortal(child)) {\n if (current?.tag === \"portal\" && current.stateNode === child.container) {\n const fiber = createWorkInProgress(current, child.children);\n markUpdateEffectIfChanged(fiber, current);\n return fiber;\n }\n\n const fiber = createFiber(\"portal\", child.children, key);\n fiber.stateNode = child.container;\n fiber.flags |= Placement;\n fiber.return = parent;\n return fiber;\n }\n\n if (!isReactCompatElement(child)) {\n return undefined;\n }\n\n if (current !== undefined && canReuseElementFiber(current, child)) {\n const fiber = createWorkInProgress(current, getPendingProps(child));\n markUpdateEffectIfChanged(fiber, current);\n markRefEffectIfChanged(fiber, current);\n return fiber;\n }\n\n const fiber = createElementFiber(child, key);\n fiber.flags |= Placement;\n fiber.return = parent;\n return fiber;\n}\n\nfunction canReuseElementFiber(\n current: Fiber,\n element: ReactCompatElement,\n): boolean {\n if (current.type !== element.type) {\n return false;\n }\n\n if (typeof element.type === \"string\") {\n return current.tag === \"host-component\";\n }\n\n if (element.type === Fragment) {\n return current.tag === \"fragment\";\n }\n\n return current.tag !== \"host-component\" && current.tag !== \"host-text\";\n}\n\nfunction createElementFiber(\n element: ReactCompatElement,\n key: string | undefined,\n): Fiber {\n const tag =\n typeof element.type === \"string\"\n ? \"host-component\"\n : element.type === Fragment\n ? \"fragment\"\n : element.type === Suspense\n ? \"suspense\"\n : element.type === SuspenseList\n ? \"suspense-list\"\n : element.type === STRICT_MODE_TYPE\n ? \"strict-mode\"\n : element.type === ERROR_BOUNDARY_TYPE\n ? \"error-boundary\"\n : isLazyType(element.type)\n ? \"lazy\"\n : isReactCompatProvider(element.type)\n ? \"context-provider\"\n : isReactCompatConsumer(element.type)\n ? \"context-consumer\"\n : isForwardRefType(element.type)\n ? \"forward-ref\"\n : isMemoType(element.type)\n ? \"memo\"\n : isClassComponentType(element.type)\n ? \"class-component\"\n : \"function-component\";\n const fiber = createFiber(tag, getPendingProps(element), key);\n fiber.type = element.type;\n return fiber;\n}\n\nfunction isForwardRefType(value: unknown): boolean {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === FORWARD_REF_TYPE\n );\n}\n\nfunction isMemoType(value: unknown): boolean {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === MEMO_TYPE\n );\n}\n\nfunction isLazyType(value: unknown): boolean {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === LAZY_TYPE\n );\n}\n\nfunction markChildForDeletion(parent: Fiber, child: Fiber): void {\n parent.flags |= ChildDeletion;\n parent.deletions = parent.deletions ?? [];\n if (parent.deletions.includes(child)) {\n return;\n }\n parent.deletions.push(child);\n}\n\nfunction collectKeyedChildren(\n firstChild: Fiber | undefined,\n): Map<string, Fiber> {\n const keyed = new Map<string, Fiber>();\n let cursor = firstChild;\n\n while (cursor !== undefined) {\n if (cursor.key !== undefined) {\n keyed.set(cursor.key, cursor);\n }\n\n cursor = cursor.sibling;\n }\n\n return keyed;\n}\n\nfunction collectChildIndexes(\n firstChild: Fiber | undefined,\n): Map<Fiber, number> {\n const indexes = new Map<Fiber, number>();\n let cursor = firstChild;\n let index = 0;\n\n while (cursor !== undefined) {\n indexes.set(cursor, index);\n cursor = cursor.sibling;\n index += 1;\n }\n\n return indexes;\n}\n\nfunction findNextUnkeyedChild(firstChild: Fiber | undefined): Fiber | undefined {\n let cursor = firstChild;\n\n while (cursor !== undefined && cursor.key !== undefined) {\n cursor = cursor.sibling;\n }\n\n return cursor;\n}\n\nfunction markRemainingChildrenForDeletion(\n parent: Fiber,\n firstChild: Fiber | undefined,\n used: Set<Fiber>,\n): void {\n let cursor = firstChild;\n\n while (cursor !== undefined) {\n if (!used.has(cursor)) {\n markChildForDeletion(parent, cursor);\n }\n\n cursor = cursor.sibling;\n }\n}\n\nfunction normalizeChildren(node: ReactCompatNode): ReactCompatNode[] {\n if (node === null || node === undefined || typeof node === \"boolean\") {\n return [];\n }\n\n return Array.isArray(node) ? node : [node];\n}\n\nfunction getNodeKey(node: ReactCompatNode): string | undefined {\n return isReactCompatElement(node) && node.key !== null ? node.key : undefined;\n}\n\nfunction markUpdateEffectIfChanged(fiber: Fiber, current: Fiber): void {\n const previousProps =\n current.memoizedProps === undefined\n ? current.pendingProps\n : current.memoizedProps;\n\n if (!arePropsEqual(previousProps, fiber.pendingProps)) {\n fiber.flags |= Update;\n }\n}\n\nfunction markRefEffectIfChanged(fiber: Fiber, current: Fiber): void {\n if (\n getRef(current.memoizedProps ?? current.pendingProps) !==\n getRef(fiber.pendingProps)\n ) {\n fiber.flags |= Ref;\n }\n}\n\nfunction getRef(props: unknown): unknown {\n return typeof props === \"object\" && props !== null\n ? (props as { ref?: unknown }).ref\n : undefined;\n}\n\nfunction arePropsEqual(left: unknown, right: unknown): boolean {\n if (Object.is(left, right)) {\n return true;\n }\n\n if (\n typeof left !== \"object\" ||\n left === null ||\n typeof right !== \"object\" ||\n right === null\n ) {\n return false;\n }\n\n const leftRecord = left as Record<string, unknown>;\n const rightRecord = right as Record<string, unknown>;\n const leftKeys = Object.keys(leftRecord);\n const rightKeys = Object.keys(rightRecord);\n\n if (leftKeys.length !== rightKeys.length) {\n return false;\n }\n\n return leftKeys.every((key) => Object.is(leftRecord[key], rightRecord[key]));\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-commit.js","sourceRoot":"","sources":["../src/fiber-commit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAQpD,MAAM,UAAU,eAAe,CAC7B,IAAe,EACf,UAAyB,EAAE;IAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IAEvC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO;IACT,CAAC;IAED,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/C,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;IAC/D,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,6BAA6B,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAe,EAAE,IAAW;IACtD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAW,CAAC;IAEpC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAwB,EACxB,OAAqB,IAAI,GAAG,EAAE;IAE9B,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QAEhC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACvD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,CAE3C,CAAC;IAEd,OAAO,KAAK,EAAE,GAAG,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;QAC/D,GAA4B,CAAC,OAAO,GAAG,IAAI,CAAC;IAC/C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"fiber-commit.js","sourceRoot":"","sources":["../src/fiber-commit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAQpD,MAAM,UAAU,eAAe,CAC7B,IAAe,EACf,UAAyB,EAAE;IAE3B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IAEvC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO;IACT,CAAC;IAED,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/C,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;IAC5B,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAC9B,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;IAC/D,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,6BAA6B,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAe,EAAE,IAAW;IACtD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAW,CAAC;IAEpC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAwB,EACxB,OAAqB,IAAI,GAAG,EAAE;IAE9B,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QAEhC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACvD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,CAE3C,CAAC;IAEd,OAAO,KAAK,EAAE,GAAG,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE,CAAC;QAC9B,GAAG,CAAC,IAAI,CAAC,CAAC;QACV,OAAO;IACT,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;QAC/D,GAA4B,CAAC,OAAO,GAAG,IAAI,CAAC;IAC/C,CAAC;AACH,CAAC","sourcesContent":["import type { Fiber, FiberRoot } from \"./fiber.js\";\nimport { commitHostFiberRoot } from \"./fiber-host.js\";\nimport { markRootFinished } from \"./fiber-lanes.js\";\nimport type { RenderOptions } from \"./hydration.js\";\n\ninterface RefRecord {\n ref: unknown;\n node: unknown;\n}\n\nexport function commitFiberRoot(\n root: FiberRoot,\n options: RenderOptions = {},\n): void {\n const finishedWork = root.finishedWork;\n\n if (finishedWork === undefined) {\n return;\n }\n\n cleanupDeletedRefs(root.current, finishedWork);\n commitHostFiberRoot(root, finishedWork, options);\n root.current = finishedWork;\n root.current.stateNode = root;\n markRootFinished(root, finishedWork.lanes);\n root.callbackPriority = root.pendingLanes & -root.pendingLanes;\n root.finishedWork = undefined;\n root.workInProgress = undefined;\n root.workInProgressRootRenderLanes = 0;\n}\n\nfunction cleanupDeletedRefs(previous: Fiber, next: Fiber): void {\n const nextRefs = new Set<unknown>();\n\n collectRefRecords(next, nextRefs);\n\n for (const record of collectRefRecords(previous)) {\n if (!nextRefs.has(record.ref)) {\n detachRef(record.ref);\n }\n }\n}\n\nfunction collectRefRecords(\n fiber: Fiber | undefined,\n refs: Set<unknown> = new Set(),\n): RefRecord[] {\n const records: RefRecord[] = [];\n let cursor = fiber;\n\n while (cursor !== undefined) {\n const ref = getFiberRef(cursor);\n\n if (ref !== undefined && ref !== null) {\n refs.add(ref);\n records.push({ ref, node: cursor.stateNode });\n }\n\n records.push(...collectRefRecords(cursor.child, refs));\n cursor = cursor.sibling;\n }\n\n return records;\n}\n\nfunction getFiberRef(fiber: Fiber): unknown {\n const props = (fiber.memoizedProps ?? fiber.pendingProps) as\n | { ref?: unknown }\n | undefined;\n\n return props?.ref;\n}\n\nfunction detachRef(ref: unknown): void {\n if (typeof ref === \"function\") {\n ref(null);\n return;\n }\n\n if (typeof ref === \"object\" && ref !== null && \"current\" in ref) {\n (ref as { current: unknown }).current = null;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-flags.js","sourceRoot":"","sources":["../src/fiber-flags.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC;AACzB,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC1B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;AAE7B,MAAM,UAAU,UAAU,CAAC,IAAW,EAAE,KAAY;IAClD,OAAO,IAAI,GAAG,KAAK,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAY,EAAE,IAAW;IACpD,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,OAAO,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"fiber-flags.js","sourceRoot":"","sources":["../src/fiber-flags.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC;AACzB,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC;AAC/B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAI,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC1B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;AAE7B,MAAM,UAAU,UAAU,CAAC,IAAW,EAAE,KAAY;IAClD,OAAO,IAAI,GAAG,KAAK,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAY,EAAE,IAAW;IACpD,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,OAAO,CAAC;AACpC,CAAC","sourcesContent":["export type Flags = number;\n\nexport const NoFlags = 0;\nexport const Placement = 1 << 0;\nexport const Update = 1 << 1;\nexport const Deletion = 1 << 2;\nexport const ChildDeletion = 1 << 3;\nexport const Ref = 1 << 4;\nexport const Visibility = 1 << 5;\nexport const Hydrating = 1 << 6;\nexport const DidCapture = 1 << 7;\nexport const Passive = 1 << 8;\nexport const Layout = 1 << 9;\n\nexport function mergeFlags(left: Flags, right: Flags): Flags {\n return left | right;\n}\n\nexport function includesFlag(flags: Flags, flag: Flags): boolean {\n return (flags & flag) !== NoFlags;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-host.js","sourceRoot":"","sources":["../src/fiber-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber-host.js","sourceRoot":"","sources":["../src/fiber-host.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Activity,\n ERROR_BOUNDARY_TYPE,\n FORWARD_REF_TYPE,\n Fragment,\n LAZY_TYPE,\n MEMO_TYPE,\n Profiler,\n STRICT_MODE_TYPE,\n Suspense,\n SuspenseList,\n type ReactCompatElement,\n type ReactCompatPortal,\n isReactCompatElement,\n isReactCompatPortal,\n type ReactCompatNode,\n} from \"./element.js\";\nimport {\n isReactCompatConsumer,\n isReactCompatProvider,\n renderWithContextProvider,\n useContext,\n} from \"./context.js\";\nimport { applyPostChildFormProps, applyProps } from \"./dom-props.js\";\nimport { syncChildNodes, syncScopedChildNodes } from \"./dom-children.js\";\nimport { setLogicalEventParent } from \"./events.js\";\nimport { createFiber, createWorkInProgress, type Fiber, type FiberRoot } from \"./fiber.js\";\nimport {\n renderWithRootRuntime,\n renderWithProfiler,\n renderWithStrictMode,\n restoreRuntimeSnapshot,\n takeRuntimeSnapshot,\n getDevToolsHookState,\n type RootRuntime,\n} from \"./hooks.js\";\nimport { isThenable } from \"./thenable.js\";\nimport {\n isClassComponentType,\n recoverClassComponentError,\n renderClassComponentWithRuntime,\n} from \"./class-component.js\";\nimport { areMemoPropsEqual, getPendingProps } from \"./prop-comparison.js\";\nimport {\n reportElementTextMismatch,\n reportExtraHydrationNodes,\n reportHydrationNodeTypeMismatch,\n reportMissingHydrationNode,\n reportReactSuspenseServerError,\n reportRecoverable,\n type HydrationScope,\n type RenderOptions,\n withHydrationComponentStack,\n} from \"./hydration.js\";\n\ninterface MemoFiberState {\n props: Record<string, unknown>;\n instanceKeys: string[];\n}\n\ninterface SuspenseFiberState {\n didSuspend: boolean;\n}\n\ninterface FiberHydrationOptions extends RenderOptions {\n previousNodes?: readonly Node[];\n resumeId?: string;\n consumeResumeMarkers?: boolean;\n}\n\ninterface FiberReconcileResult {\n fiber: Fiber | undefined;\n consumed: number;\n}\n\ninterface ReactSuspenseBoundary {\n previousNodes?: Node[];\n consumed: number;\n serverError?: {\n message: string;\n componentStack?: string;\n };\n}\n\nlet suspensePrimaryRenderDepth = 0;\n\nexport function canRenderHostFiber(node: ReactCompatNode): boolean {\n if (\n node === null ||\n node === undefined ||\n typeof node === \"boolean\" ||\n typeof node === \"string\" ||\n typeof node === \"number\"\n ) {\n return true;\n }\n\n if (Array.isArray(node)) {\n return node.every(canRenderHostFiber);\n }\n\n if (isReactCompatPortal(node)) {\n return canRenderHostFiber(node.children);\n }\n\n if (!isReactCompatElement(node)) {\n return false;\n }\n\n if (\n node.type === Fragment ||\n node.type === Profiler ||\n node.type === STRICT_MODE_TYPE\n ) {\n return canRenderHostFiber(node.props.children as ReactCompatNode);\n }\n\n if (node.type === Activity) {\n return (node.props as { mode?: unknown }).mode === \"hidden\"\n ? true\n : canRenderHostFiber(node.props.children as ReactCompatNode);\n }\n\n if (node.type === Suspense || node.type === SuspenseList) {\n return true;\n }\n\n if (node.type === ERROR_BOUNDARY_TYPE) {\n return true;\n }\n\n if (isReactCompatProvider(node.type)) {\n return canRenderHostFiber(node.props.children as ReactCompatNode);\n }\n\n if (isReactCompatConsumer(node.type)) {\n return true;\n }\n\n if (isForwardRefType(node.type)) {\n return true;\n }\n\n if (isMemoType(node.type)) {\n return true;\n }\n\n if (isLazyType(node.type)) {\n return true;\n }\n\n if (isClassComponentType(node.type)) {\n return true;\n }\n\n return (\n typeof node.type === \"string\" &&\n canRenderHostFiber(node.props.children as ReactCompatNode)\n ) || isFunctionComponentType(node.type);\n}\n\nexport function renderHostFiberRoot(\n root: FiberRoot,\n element: ReactCompatNode,\n runtime?: RootRuntime,\n options: FiberHydrationOptions = {},\n): Fiber {\n const workInProgress = createWorkInProgress(root.current, { children: element });\n const result = reconcileHostChild(\n workInProgress,\n root.current.child,\n element,\n runtime,\n options.previousNodes === undefined ? \"0\" : \"\",\n options,\n );\n workInProgress.child = result.fiber;\n workInProgress.memoizedProps = { children: element };\n return workInProgress;\n}\n\nexport function renderHydratingHostFiberRoot(\n root: FiberRoot,\n element: ReactCompatNode,\n runtime: RootRuntime,\n scope: HydrationScope,\n options: FiberHydrationOptions = {},\n): Fiber {\n root.hydrationState = {\n parent: scope.parent,\n nextHydratableNode: scope.previousNodes[0] ?? null,\n before: scope.before,\n after: scope.after,\n ...(options.resumeId === undefined ? {} : { resumeId: options.resumeId }),\n };\n return renderHostFiberRoot(root, element, runtime, {\n ...options,\n previousNodes: scope.previousNodes,\n });\n}\n\nexport function commitHostFiberRoot(\n root: FiberRoot,\n finishedWork: Fiber,\n options: RenderOptions = {},\n): void {\n const nodes = commitHostChildren(finishedWork.child, root.container, root.container, \"0\", options);\n syncChildNodes(root.container, nodes);\n}\n\nexport function commitHydratingHostFiberRoot(\n root: FiberRoot,\n finishedWork: Fiber,\n scope: HydrationScope,\n options: FiberHydrationOptions = {},\n): void {\n const eventRoot = root.container;\n const nodes = commitHostChildren(finishedWork.child, scope.parent, eventRoot, \"\", options);\n syncScopedChildNodes(scope.parent, scope.before, scope.after, nodes);\n\n if (options.consumeResumeMarkers === true) {\n scope.before?.parentNode?.removeChild(scope.before);\n scope.after?.parentNode?.removeChild(scope.after);\n }\n}\n\nfunction reconcileHostChild(\n parent: Fiber,\n currentFirstChild: Fiber | undefined,\n node: ReactCompatNode,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n const children = normalizeChildren(node);\n const existingByKey = collectExistingKeyedFibers(currentFirstChild);\n let currentUnkeyed = currentFirstChild;\n let first: Fiber | undefined;\n let previous: Fiber | undefined;\n let consumed = 0;\n\n children.forEach((child, index) => {\n const key = getNodeKey(child);\n const matchedCurrent =\n key === undefined ? currentUnkeyed : existingByKey.get(key);\n const previousNodes =\n options.previousNodes === undefined\n ? undefined\n : options.previousNodes.slice(consumed);\n const result = createHostFiber(\n parent,\n matchedCurrent,\n child,\n key,\n runtime,\n joinPath(path, getNodePathSegment(child, index)),\n previousNodes === undefined ? options : { ...options, previousNodes },\n );\n const fiber = result.fiber;\n\n if (fiber === undefined) {\n return;\n }\n\n if (key === undefined) {\n currentUnkeyed = currentUnkeyed?.sibling;\n }\n consumed += result.consumed;\n\n if (first === undefined) {\n first = fiber;\n } else if (previous !== undefined) {\n previous.sibling = fiber;\n }\n\n fiber.return = parent;\n fiber.sibling = undefined;\n fiber.pendingProps = getPendingProps(child);\n if (\n fiber.tag !== \"memo\" &&\n fiber.tag !== \"function-component\" &&\n fiber.tag !== \"forward-ref\" &&\n fiber.tag !== \"profiler\" &&\n fiber.tag !== \"suspense\" &&\n fiber.tag !== \"suspense-list\"\n && fiber.memoizedState === undefined\n ) {\n fiber.memoizedState = index;\n }\n previous = fiber;\n });\n\n return { fiber: first, consumed };\n}\n\nfunction createHostFiber(\n parent: Fiber,\n current: Fiber | undefined,\n node: ReactCompatNode,\n key: string | undefined,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n if (node === null || node === undefined || typeof node === \"boolean\") {\n return { fiber: undefined, consumed: 0 };\n }\n\n if (typeof node === \"string\" || typeof node === \"number\") {\n const existing = options.previousNodes?.[0];\n const fiber =\n current?.tag === \"host-text\"\n ? createWorkInProgress(current, String(node))\n : createFiber(\"host-text\", String(node), key);\n if (existing === undefined && options.previousNodes !== undefined) {\n reportMissingHydrationNode(options, path);\n } else if (existing !== undefined && !(existing instanceof Text)) {\n reportHydrationNodeTypeMismatch(options, path, \"text\", existing);\n }\n fiber.stateNode =\n existing instanceof Text\n ? existing\n : current?.tag === \"host-text\" && current.stateNode instanceof Text\n ? current.stateNode\n : document.createTextNode(\"\");\n\n if (existing instanceof Text && existing.data !== String(node)) {\n reportRecoverable(\n options,\n \"text\",\n path,\n new Error(\"Hydration text mismatch.\"),\n );\n }\n\n return { fiber, consumed: existing instanceof Text ? 1 : 0 };\n }\n\n if (Array.isArray(node)) {\n const fiber =\n current?.tag === \"fragment\"\n ? createWorkInProgress(current, node)\n : createFiber(\"fragment\", node, key);\n const childResult = reconcileHostChild(\n fiber,\n current?.child,\n node,\n runtime,\n path,\n options,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (!isReactCompatElement(node)) {\n if (isReactCompatPortal(node)) {\n return createPortalFiber(parent, current, node, key, runtime, path, options);\n }\n\n return { fiber: undefined, consumed: 0 };\n }\n\n if (node.type === Fragment) {\n const fiber =\n current?.tag === \"fragment\"\n ? createWorkInProgress(current, node.props.children)\n : createFiber(\"fragment\", node.props.children, key);\n const childResult = reconcileHostChild(\n fiber,\n current?.child,\n node.props.children as ReactCompatNode,\n runtime,\n `${path}.f`,\n options,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (node.type === Activity) {\n const children =\n (node.props as { mode?: unknown }).mode === \"hidden\"\n ? null\n : node.props.children;\n const fiber =\n current?.tag === \"fragment\"\n ? createWorkInProgress(current, children)\n : createFiber(\"fragment\", children, key);\n fiber.type = node.type;\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"fragment\" ? current.child : undefined,\n children as ReactCompatNode,\n runtime,\n `${path}.activity`,\n options,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (node.type === Profiler) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const fiber =\n current?.tag === \"profiler\" && current.type === node.type\n ? createWorkInProgress(current, node.props)\n : createFiber(\"profiler\", node.props, key);\n fiber.type = node.type;\n const childResult = renderWithProfiler(\n runtime,\n `${path}.profiler`,\n node.props,\n () =>\n reconcileHostChild(\n fiber,\n current?.tag === \"profiler\" ? current.child : undefined,\n node.props.children as ReactCompatNode,\n runtime,\n `${path}.profiler`,\n options,\n ),\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (node.type === STRICT_MODE_TYPE) {\n return createStrictModeFiber(current, node, key, runtime, path, options);\n }\n\n if (node.type === Suspense) {\n return createSuspenseFiber(current, node, key, runtime, path, options);\n }\n\n if (node.type === SuspenseList) {\n return createSuspenseListFiber(current, node, key, runtime, path, options);\n }\n\n if (node.type === ERROR_BOUNDARY_TYPE) {\n const fiber =\n current?.tag === \"error-boundary\"\n ? createWorkInProgress(current, node.props)\n : createFiber(\"error-boundary\", node.props, key);\n fiber.type = node.type;\n\n try {\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"error-boundary\" ? current.child : undefined,\n node.props.children as ReactCompatNode,\n runtime,\n `${path}.eb`,\n options,\n );\n fiber.child = childResult.fiber;\n } catch (error) {\n if (isThenable(error)) {\n throw error;\n }\n\n const normalizedError =\n error instanceof Error ? error : new Error(String(error));\n const onError = node.props.onError;\n\n if (typeof onError === \"function\") {\n (onError as (error: Error) => void)(normalizedError);\n }\n\n const fallback = node.props.fallback;\n const fallbackNode =\n typeof fallback === \"function\"\n ? (fallback as (error: Error) => ReactCompatNode)(normalizedError)\n : null;\n const fallbackResult = reconcileHostChild(\n fiber,\n current?.tag === \"error-boundary\" ? current.child : undefined,\n fallbackNode,\n runtime,\n `${path}.eb.fallback`,\n options,\n );\n fiber.child = fallbackResult.fiber;\n }\n return { fiber, consumed: options.previousNodes?.length ?? 0 };\n }\n\n if (isReactCompatProvider(node.type)) {\n const fiber =\n current?.tag === \"context-provider\" && current.type === node.type\n ? createWorkInProgress(current, node.props)\n : createFiber(\"context-provider\", node.props, key);\n fiber.type = node.type;\n const childResult = renderWithContextProvider(node.type, node.props.value, () =>\n reconcileHostChild(\n fiber,\n current?.tag === \"context-provider\" ? current.child : undefined,\n node.props.children as ReactCompatNode,\n runtime,\n `${path}.provider`,\n options,\n ),\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (isReactCompatConsumer(node.type)) {\n const fiber =\n current?.tag === \"context-consumer\" && current.type === node.type\n ? createWorkInProgress(current, node.props)\n : createFiber(\"context-consumer\", node.props, key);\n fiber.type = node.type;\n const children = node.props.children;\n const render =\n typeof children === \"function\"\n ? (children as (value: unknown) => ReactCompatNode)\n : () => null;\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"context-consumer\" ? current.child : undefined,\n render(useContext(node.type.context)),\n runtime,\n `${path}.consumer`,\n options,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (isForwardRefType(node.type)) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const forwardRefType = node.type;\n const fiber =\n current?.tag === \"forward-ref\" && current.type === forwardRefType\n ? createWorkInProgress(current, node.props)\n : createFiber(\"forward-ref\", node.props, key);\n fiber.type = forwardRefType;\n const rendered = renderWithRootRuntime(runtime, path, () =>\n forwardRefType.render(node.props, node.ref),\n );\n fiber.memoizedState = getDevToolsHookState(runtime, path);\n const childOptions = withHydrationComponentStack(\n options,\n getComponentName(forwardRefType.render),\n );\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"forward-ref\" ? current.child : undefined,\n rendered,\n runtime,\n `${path}.forwardRef`,\n childOptions,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (isMemoType(node.type)) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const memoType = node.type;\n const memoPath = `${path}.memo`;\n const previousMemoState =\n current?.tag === \"memo\"\n ? (current.memoizedState as MemoFiberState | undefined)\n : undefined;\n const fiber =\n current?.tag === \"memo\" && current.type === memoType\n ? createWorkInProgress(current, node.props)\n : createFiber(\"memo\", node.props, key);\n fiber.type = memoType;\n\n if (\n previousMemoState !== undefined &&\n !hasDirtyInstance(runtime, previousMemoState.instanceKeys) &&\n areMemoPropsEqual(memoType, previousMemoState.props, node.props)\n ) {\n markActiveInstanceKeys(runtime, previousMemoState.instanceKeys);\n fiber.child = current?.child;\n fiber.memoizedState = previousMemoState;\n return { fiber, consumed: options.previousNodes?.length ?? 0 };\n }\n\n const renderedElement: ReactCompatElement = {\n ...node,\n type: memoType.type,\n };\n const childResult = createHostFiber(\n fiber,\n current?.tag === \"memo\" ? current.child : undefined,\n renderedElement,\n key,\n runtime,\n memoPath,\n options,\n );\n fiber.child = childResult.fiber;\n fiber.memoizedState = {\n props: { ...node.props },\n instanceKeys: collectInstanceKeys(runtime, memoPath),\n };\n return { fiber, consumed: childResult.consumed };\n }\n\n if (isLazyType(node.type)) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const lazyType = node.type;\n const fiber =\n current?.tag === \"lazy\" && current.type === lazyType\n ? createWorkInProgress(current, node.props)\n : createFiber(\"lazy\", node.props, key);\n fiber.type = lazyType;\n\n if (lazyType.status === \"resolved\" && lazyType.resolved !== undefined) {\n const renderedElement: ReactCompatElement = {\n ...node,\n type: lazyType.resolved,\n };\n const childResult = createHostFiber(\n fiber,\n current?.tag === \"lazy\" ? current.child : undefined,\n renderedElement,\n key,\n runtime,\n `${path}.lazy`,\n options,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (lazyType.status === \"rejected\") {\n throw lazyType.error;\n }\n\n if (lazyType.status === \"uninitialized\") {\n lazyType.status = \"pending\";\n lazyType.promise = lazyType\n .load()\n .then((module) => {\n lazyType.status = \"resolved\";\n lazyType.resolved = module.default;\n runtime.rerender();\n })\n .catch((error: unknown) => {\n lazyType.status = \"rejected\";\n lazyType.error = error;\n runtime.rerender();\n });\n }\n\n if (suspensePrimaryRenderDepth > 0) {\n throw lazyType.promise;\n }\n\n fiber.child = undefined;\n return { fiber, consumed: 0 };\n }\n\n if (isClassComponentType(node.type)) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const classType = node.type;\n const fiber =\n current?.tag === \"class-component\" && current.type === classType\n ? createWorkInProgress(current, node.props)\n : createFiber(\"class-component\", node.props, key);\n fiber.type = classType;\n const rendered = renderClassComponentWithRuntime(\n classType,\n node.props,\n runtime,\n path,\n );\n applyRef(node.ref, rendered.kind === \"skip\" ? current?.stateNode : rendered.instance);\n\n if (rendered.kind === \"skip\") {\n fiber.child = current?.child;\n return { fiber, consumed: options.previousNodes?.length ?? 0 };\n }\n\n const childOptions = withHydrationComponentStack(\n options,\n getComponentName(classType),\n );\n\n try {\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"class-component\" ? current.child : undefined,\n rendered.node,\n runtime,\n `${path}.class`,\n childOptions,\n );\n fiber.child = childResult.fiber;\n fiber.stateNode = rendered.instance;\n } catch (error) {\n const fallbackNode = recoverClassComponentError(\n rendered.type,\n rendered.instance,\n error,\n );\n\n if (fallbackNode === undefined) {\n throw error;\n }\n\n const fallbackResult = reconcileHostChild(\n fiber,\n current?.tag === \"class-component\" ? current.child : undefined,\n fallbackNode,\n runtime,\n `${path}.class.fallback`,\n childOptions,\n );\n fiber.child = fallbackResult.fiber;\n }\n return { fiber, consumed: options.previousNodes?.length ?? 0 };\n }\n\n if (isFunctionComponentType(node.type)) {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const fiber =\n current?.tag === \"function-component\" && current.type === node.type\n ? createWorkInProgress(current, node.props)\n : createFiber(\"function-component\", node.props, key);\n fiber.type = node.type;\n const rendered = renderWithRootRuntime(runtime, path, () =>\n (node.type as (props: Record<string, unknown>) => ReactCompatNode)(node.props),\n );\n fiber.memoizedState = getDevToolsHookState(runtime, path);\n const childOptions = withHydrationComponentStack(\n options,\n getComponentName(node.type as Function),\n );\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"function-component\" ? current.child : undefined,\n rendered,\n runtime,\n `${path}.0`,\n childOptions,\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n }\n\n if (typeof node.type !== \"string\") {\n return { fiber: undefined, consumed: 0 };\n }\n\n const fiber =\n current?.tag === \"host-component\" && current.type === node.type\n ? createWorkInProgress(current, node.props)\n : createFiber(\"host-component\", node.props, key);\n const existing = options.previousNodes?.[0];\n const existingElement = existing instanceof HTMLElement ? existing : undefined;\n const tagMatches =\n existingElement !== undefined &&\n existingElement.tagName.toLowerCase() === node.type;\n\n if (existing === undefined && options.previousNodes !== undefined) {\n reportMissingHydrationNode(options, path);\n } else if (existing !== undefined && !(existing instanceof HTMLElement)) {\n reportHydrationNodeTypeMismatch(options, path, `<${node.type}>`, existing);\n }\n\n if (existingElement !== undefined && !tagMatches) {\n reportRecoverable(\n options,\n \"tag\",\n path,\n new Error(\n `Hydration tag mismatch: expected <${node.type}> but found <${existingElement.tagName.toLowerCase()}>.`,\n ),\n );\n reportElementTextMismatch(options, `${path}.c`, existingElement, node.props.children);\n }\n\n fiber.type = node.type;\n fiber.stateNode =\n tagMatches\n ? existingElement\n : current?.tag === \"host-component\" &&\n current.type === node.type &&\n current.stateNode instanceof HTMLElement\n ? current.stateNode\n : document.createElement(node.type);\n fiber.hydrateExisting = tagMatches && options.previousNodes !== undefined;\n const previousChildNodes =\n tagMatches && existingElement !== undefined\n ? Array.from(existingElement.childNodes)\n : undefined;\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"host-component\" ? current.child : undefined,\n node.props.children as ReactCompatNode,\n runtime,\n `${path}.c`,\n previousChildNodes === undefined\n ? options\n : { ...options, previousNodes: previousChildNodes },\n );\n fiber.child = childResult.fiber;\n if (previousChildNodes !== undefined) {\n reportExtraHydrationNodes(options, `${path}.c`, previousChildNodes, childResult.consumed);\n }\n parent.child ??= fiber;\n return { fiber, consumed: existing === undefined ? 0 : 1 };\n}\n\nfunction isFunctionComponentType(value: unknown): value is (\n props: Record<string, unknown>,\n) => ReactCompatNode {\n return (\n typeof value === \"function\" &&\n typeof (value as { prototype?: { render?: unknown } }).prototype?.render !==\n \"function\"\n );\n}\n\nfunction commitHostChildren(\n fiber: Fiber | undefined,\n parent: ParentNode,\n eventRoot: Element,\n path: string,\n options: RenderOptions = {},\n): Node[] {\n const nodes: Node[] = [];\n let cursor = fiber;\n let index = 0;\n\n while (cursor !== undefined) {\n nodes.push(...commitHostFiber(cursor, parent, eventRoot, joinPath(path, String(index)), options));\n cursor = cursor.sibling;\n index += 1;\n }\n\n return nodes;\n}\n\nfunction commitHostFiber(\n fiber: Fiber,\n parent: ParentNode,\n eventRoot: Element,\n path: string,\n options: RenderOptions = {},\n): Node[] {\n if (fiber.tag === \"host-text\") {\n const text = fiber.stateNode;\n\n if (!(text instanceof Text)) {\n return [];\n }\n\n text.data = String(fiber.pendingProps);\n fiber.memoizedProps = fiber.pendingProps;\n return [text];\n }\n\n if (fiber.tag === \"host-component\") {\n const element = fiber.stateNode;\n\n if (!(element instanceof HTMLElement)) {\n return [];\n }\n\n applyProps(element, fiber.pendingProps as Record<string, unknown>, path, {\n ...options,\n eventRoot,\n preserveHydrationAttributes: fiber.hydrateExisting,\n });\n applyRef((fiber.pendingProps as { ref?: unknown }).ref, element);\n const childNodes = commitHostChildren(fiber.child, element, eventRoot, `${path}.c`, options);\n syncChildNodes(element, childNodes);\n applyPostChildFormProps(element, fiber.pendingProps as Record<string, unknown>);\n fiber.memoizedProps = fiber.pendingProps;\n return [element];\n }\n\n if (fiber.tag === \"fragment\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.f`, options);\n }\n\n if (fiber.tag === \"profiler\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.profiler`, options);\n }\n\n if (fiber.tag === \"strict-mode\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.strict`, options);\n }\n\n if (fiber.tag === \"suspense\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.s`, options);\n }\n\n if (fiber.tag === \"suspense-list\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.sl`, options);\n }\n\n if (fiber.tag === \"context-provider\" || fiber.tag === \"context-consumer\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.ctx`, options);\n }\n\n if (fiber.tag === \"function-component\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.fc`, options);\n }\n\n if (fiber.tag === \"forward-ref\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.fr`, options);\n }\n\n if (fiber.tag === \"memo\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.memo`, options);\n }\n\n if (fiber.tag === \"lazy\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.lazy`, options);\n }\n\n if (fiber.tag === \"error-boundary\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.eb`, options);\n }\n\n if (fiber.tag === \"class-component\") {\n fiber.memoizedProps = fiber.pendingProps;\n return commitHostChildren(fiber.child, parent, eventRoot, `${path}.class`, options);\n }\n\n if (fiber.tag === \"portal\") {\n const container = fiber.stateNode;\n\n if (!(container instanceof Element)) {\n return [];\n }\n\n setLogicalEventParent(container, parent);\n const childNodes = commitHostChildren(\n fiber.child,\n container,\n container,\n `${path}.portal`,\n options,\n );\n syncChildNodes(container, childNodes);\n fiber.memoizedProps = fiber.pendingProps;\n return [];\n }\n\n return [];\n}\n\nfunction createSuspenseFiber(\n current: Fiber | undefined,\n element: ReactCompatElement,\n key: string | undefined,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const boundary = findReactSuspenseBoundary(options.previousNodes ?? []);\n if (boundary?.serverError !== undefined) {\n reportReactSuspenseServerError(\n options,\n path,\n boundary.serverError.message,\n boundary.serverError.componentStack,\n );\n }\n const { previousNodes: _previousNodes, ...optionsWithoutPreviousNodes } = options;\n const boundaryOptions =\n boundary === undefined\n ? options\n : boundary.serverError === undefined\n ? boundary.previousNodes === undefined\n ? optionsWithoutPreviousNodes\n : { ...options, previousNodes: boundary.previousNodes }\n : optionsWithoutPreviousNodes;\n const fiber =\n current?.tag === \"suspense\" && current.type === element.type\n ? createWorkInProgress(current, element.props)\n : createFiber(\"suspense\", element.props, key);\n fiber.type = element.type;\n\n try {\n suspensePrimaryRenderDepth += 1;\n let childResult: FiberReconcileResult;\n\n try {\n childResult = reconcileHostChild(\n fiber,\n current?.tag === \"suspense\" ? current.child : undefined,\n element.props.children as ReactCompatNode,\n runtime,\n `${path}.s`,\n boundaryOptions,\n );\n } finally {\n suspensePrimaryRenderDepth -= 1;\n }\n\n fiber.child = childResult.fiber;\n fiber.memoizedState = { didSuspend: false } satisfies SuspenseFiberState;\n } catch (error) {\n if (!isThenable(error)) {\n throw error;\n }\n\n error.then(\n () => runtime.rerender(),\n () => runtime.rerender(),\n );\n const fallbackResult = reconcileHostChild(\n fiber,\n current?.tag === \"suspense\" ? current.child : undefined,\n element.props.fallback as ReactCompatNode,\n runtime,\n `${path}.fallback`,\n boundaryOptions,\n );\n fiber.child = fallbackResult.fiber;\n fiber.memoizedState = { didSuspend: true } satisfies SuspenseFiberState;\n }\n\n return {\n fiber,\n consumed: boundary?.consumed ?? options.previousNodes?.length ?? 0,\n };\n}\n\nfunction createStrictModeFiber(\n current: Fiber | undefined,\n element: ReactCompatElement,\n key: string | undefined,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const fiber =\n current?.tag === \"strict-mode\" && current.type === element.type\n ? createWorkInProgress(current, element.props)\n : createFiber(\"strict-mode\", element.props, key);\n fiber.type = element.type;\n const snapshot = takeRuntimeSnapshot(runtime);\n\n try {\n createHostFiber(\n fiber,\n undefined,\n element.props.children as ReactCompatNode,\n undefined,\n runtime,\n `${path}.strict.preview`,\n options.previousNodes === undefined\n ? options\n : { ...options, previousNodes: [] },\n );\n } finally {\n restoreRuntimeSnapshot(runtime, snapshot);\n }\n\n const childResult = renderWithStrictMode(\n runtime,\n () =>\n reconcileHostChild(\n fiber,\n current?.tag === \"strict-mode\" ? current.child : undefined,\n element.props.children as ReactCompatNode,\n runtime,\n `${path}.strict`,\n options,\n ),\n );\n fiber.child = childResult.fiber;\n return { fiber, consumed: childResult.consumed };\n}\n\nfunction createSuspenseListFiber(\n current: Fiber | undefined,\n element: ReactCompatElement,\n key: string | undefined,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n const fiber =\n current?.tag === \"suspense-list\" && current.type === element.type\n ? createWorkInProgress(current, element.props)\n : createFiber(\"suspense-list\", element.props, key);\n fiber.type = element.type;\n const children = normalizeChildren(element.props.children as ReactCompatNode);\n const revealOrder = element.props.revealOrder;\n\n if (revealOrder === \"forwards\") {\n const childResult = reconcileSuspenseListForwards(\n fiber,\n current?.tag === \"suspense-list\" ? current.child : undefined,\n children,\n runtime,\n path,\n options,\n );\n fiber.child = childResult.fiber;\n fiber.memoizedState = {\n didSuspend: hasSuspendedChild(fiber.child),\n } satisfies SuspenseFiberState;\n return { fiber, consumed: childResult.consumed };\n } else if (revealOrder === \"backwards\") {\n const childResult = reconcileSuspenseListBackwards(\n fiber,\n current?.tag === \"suspense-list\" ? current.child : undefined,\n children,\n runtime,\n path,\n options,\n );\n fiber.child = childResult.fiber;\n fiber.memoizedState = {\n didSuspend: hasSuspendedChild(fiber.child),\n } satisfies SuspenseFiberState;\n return { fiber, consumed: childResult.consumed };\n } else {\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"suspense-list\" ? current.child : undefined,\n children,\n runtime,\n `${path}.sl`,\n options,\n );\n fiber.child = childResult.fiber;\n fiber.memoizedState = {\n didSuspend: hasSuspendedChild(fiber.child),\n } satisfies SuspenseFiberState;\n return { fiber, consumed: childResult.consumed };\n }\n}\n\nfunction reconcileSuspenseListForwards(\n parent: Fiber,\n currentFirstChild: Fiber | undefined,\n children: readonly ReactCompatNode[],\n runtime: RootRuntime,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n let first: Fiber | undefined;\n let previous: Fiber | undefined;\n let consumed = 0;\n const currentByKey = collectExistingKeyedFibers(currentFirstChild);\n let currentUnkeyed = currentFirstChild;\n\n for (const [index, child] of children.entries()) {\n const key = getNodeKey(child);\n const current = key === undefined ? currentUnkeyed : currentByKey.get(key);\n const childOptions =\n options.previousNodes === undefined\n ? options\n : { ...options, previousNodes: options.previousNodes.slice(consumed) };\n const result = createHostFiber(\n parent,\n current,\n child,\n key,\n runtime,\n `${path}.sl.${getNodePathSegment(child, index)}`,\n childOptions,\n );\n const fiber = result.fiber;\n\n if (key === undefined) {\n currentUnkeyed = currentUnkeyed?.sibling;\n }\n consumed += result.consumed;\n\n if (fiber === undefined) {\n continue;\n }\n\n fiber.return = parent;\n fiber.sibling = undefined;\n\n if (first === undefined) {\n first = fiber;\n } else if (previous !== undefined) {\n previous.sibling = fiber;\n }\n\n previous = fiber;\n\n if (isSuspendedSuspenseFiber(fiber)) {\n break;\n }\n }\n\n return { fiber: first, consumed };\n}\n\nfunction reconcileSuspenseListBackwards(\n parent: Fiber,\n currentFirstChild: Fiber | undefined,\n children: readonly ReactCompatNode[],\n runtime: RootRuntime,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n const fibers: Fiber[] = [];\n const currentByKey = collectExistingKeyedFibers(currentFirstChild);\n let consumed = 0;\n\n for (let index = children.length - 1; index >= 0; index -= 1) {\n const child = children[index] as ReactCompatNode;\n const key = getNodeKey(child);\n const result = createHostFiber(\n parent,\n key === undefined ? undefined : currentByKey.get(key),\n child,\n key,\n runtime,\n `${path}.sl.${getNodePathSegment(child, index)}`,\n options.previousNodes === undefined\n ? options\n : { ...options, previousNodes: options.previousNodes.slice(consumed) },\n );\n const fiber = result.fiber;\n consumed += result.consumed;\n\n if (fiber === undefined) {\n continue;\n }\n\n fiber.return = parent;\n fiber.sibling = undefined;\n fibers.unshift(fiber);\n\n if (isSuspendedSuspenseFiber(fiber)) {\n break;\n }\n }\n\n return { fiber: linkFiberSiblings(fibers), consumed };\n}\n\nfunction linkFiberSiblings(fibers: readonly Fiber[]): Fiber | undefined {\n let previous: Fiber | undefined;\n\n for (const fiber of fibers) {\n if (previous !== undefined) {\n previous.sibling = fiber;\n }\n previous = fiber;\n }\n\n return fibers[0];\n}\n\nfunction hasSuspendedChild(fiber: Fiber | undefined): boolean {\n let cursor = fiber;\n\n while (cursor !== undefined) {\n if (isSuspendedSuspenseFiber(cursor)) {\n return true;\n }\n\n cursor = cursor.sibling;\n }\n\n return false;\n}\n\nfunction isSuspendedSuspenseFiber(fiber: Fiber): boolean {\n return (\n fiber.tag === \"suspense\" &&\n (fiber.memoizedState as SuspenseFiberState | undefined)?.didSuspend === true\n );\n}\n\nfunction findReactSuspenseBoundary(\n previousNodes: readonly Node[],\n): ReactSuspenseBoundary | undefined {\n const startIndex = previousNodes.findIndex(isReactSuspenseStartComment);\n\n if (startIndex < 0) {\n return undefined;\n }\n\n let depth = 0;\n\n for (let index = startIndex; index < previousNodes.length; index += 1) {\n const node = previousNodes[index];\n\n if (isReactSuspenseStartComment(node)) {\n depth += 1;\n continue;\n }\n\n if (isReactSuspenseEndComment(node)) {\n depth -= 1;\n\n if (depth === 0) {\n const start = previousNodes[startIndex] as Comment;\n const boundaryNodes = previousNodes.slice(startIndex + 1, index);\n const boundary: ReactSuspenseBoundary = {\n consumed: index - startIndex + 1,\n ...readReactSuspenseServerError(start, boundaryNodes),\n };\n\n if (!isReactSuspenseErrorStartComment(start)) {\n boundary.previousNodes = isReactSuspensePendingStartComment(start)\n ? removeReactSuspensePendingTemplate(boundaryNodes)\n : boundaryNodes;\n }\n\n return boundary;\n }\n }\n }\n\n return undefined;\n}\n\nfunction isReactSuspenseStartComment(node: Node | undefined): node is Comment {\n return node instanceof Comment && reactSuspenseStartComments.has(node.data);\n}\n\nfunction isReactSuspensePendingStartComment(node: Comment): boolean {\n return node.data === \"$?\" || node.data === \"$!\";\n}\n\nfunction isReactSuspenseErrorStartComment(node: Comment): boolean {\n return node.data === \"$!\";\n}\n\nfunction isReactSuspenseEndComment(node: Node | undefined): node is Comment {\n return node instanceof Comment && node.data === \"/$\";\n}\n\nfunction removeReactSuspensePendingTemplate(nodes: readonly Node[]): Node[] {\n const [firstNode, ...remainingNodes] = nodes;\n\n return firstNode instanceof HTMLTemplateElement\n ? remainingNodes\n : [...nodes];\n}\n\nconst reactSuspenseStartComments = new Set([\"$\", \"$?\", \"$!\"]);\n\nfunction readReactSuspenseServerError(\n start: Comment,\n boundaryNodes: readonly Node[],\n): { serverError: { message: string; componentStack?: string } } | {} {\n if (start.data !== \"$!\") {\n return {};\n }\n\n const template = boundaryNodes[0];\n const message =\n template instanceof HTMLTemplateElement\n ? template.getAttribute(\"data-msg\")\n : null;\n const componentStack =\n template instanceof HTMLTemplateElement\n ? template.getAttribute(\"data-stck\")\n : null;\n\n return {\n serverError: {\n message: message ?? \"React Suspense server rendering error.\",\n ...(componentStack === null ? {} : { componentStack }),\n },\n };\n}\n\nfunction createPortalFiber(\n parent: Fiber,\n current: Fiber | undefined,\n portal: ReactCompatPortal,\n key: string | undefined,\n runtime: RootRuntime | undefined,\n path: string,\n options: FiberHydrationOptions = {},\n): FiberReconcileResult {\n if (runtime === undefined) {\n return { fiber: undefined, consumed: 0 };\n }\n\n runtime.portalContainers.add(portal.container);\n const fiber =\n current?.tag === \"portal\" && current.stateNode === portal.container\n ? createWorkInProgress(current, portal.children)\n : createFiber(\"portal\", portal.children, key);\n fiber.stateNode = portal.container;\n const childResult = reconcileHostChild(\n fiber,\n current?.tag === \"portal\" ? current.child : undefined,\n portal.children,\n runtime,\n `${path}.portal`,\n options,\n );\n fiber.child = childResult.fiber;\n fiber.return = parent;\n return { fiber, consumed: childResult.consumed };\n}\n\nfunction normalizeChildren(node: ReactCompatNode): ReactCompatNode[] {\n if (node === null || node === undefined || typeof node === \"boolean\") {\n return [];\n }\n\n return Array.isArray(node) ? node : [node];\n}\n\nfunction collectExistingKeyedFibers(\n firstChild: Fiber | undefined,\n): Map<string, Fiber> {\n const keyed = new Map<string, Fiber>();\n let cursor = firstChild;\n\n while (cursor !== undefined) {\n if (cursor.key !== undefined) {\n keyed.set(cursor.key, cursor);\n }\n\n cursor = cursor.sibling;\n }\n\n return keyed;\n}\n\nfunction getNodeKey(node: ReactCompatNode): string | undefined {\n return isReactCompatElement(node) && node.key !== null ? node.key : undefined;\n}\n\nfunction getNodePathSegment(node: ReactCompatNode, index: number): string {\n const key = getNodeKey(node);\n return key === undefined ? String(index) : `k:${key}`;\n}\n\nfunction getComponentName(component: Function): string {\n return component.name === \"\" ? \"Anonymous\" : component.name;\n}\n\nfunction joinPath(path: string, segment: string): string {\n return path === \"\" ? segment : `${path}.${segment}`;\n}\n\nfunction isForwardRefType(\n value: unknown,\n): value is {\n $$typeof: typeof FORWARD_REF_TYPE;\n render: (props: Record<string, unknown>, ref: unknown) => ReactCompatNode;\n} {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === FORWARD_REF_TYPE\n );\n}\n\nfunction isMemoType(\n value: unknown,\n): value is {\n $$typeof: typeof MEMO_TYPE;\n type: ReactCompatElement[\"type\"];\n compare?: (\n previous: Record<string, unknown>,\n next: Record<string, unknown>,\n ) => boolean;\n} {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === MEMO_TYPE\n );\n}\n\nfunction isLazyType(\n value: unknown,\n): value is {\n $$typeof: typeof LAZY_TYPE;\n load: () => Promise<{ default: ReactCompatElement[\"type\"] }>;\n status: \"uninitialized\" | \"pending\" | \"resolved\" | \"rejected\";\n promise?: Promise<void>;\n resolved?: ReactCompatElement[\"type\"];\n error?: unknown;\n} {\n return (\n typeof value === \"object\" &&\n value !== null &&\n (value as { $$typeof?: unknown }).$$typeof === LAZY_TYPE\n );\n}\n\nfunction collectInstanceKeys(runtime: RootRuntime, prefix: string): string[] {\n return Array.from(runtime.instances.keys()).filter(\n (key) => key === prefix || key.startsWith(`${prefix}.`),\n );\n}\n\nfunction markActiveInstanceKeys(runtime: RootRuntime, keys: readonly string[]): void {\n for (const key of keys) {\n runtime.activeInstanceKeys?.add(key);\n }\n}\n\nfunction hasDirtyInstance(runtime: RootRuntime, keys: readonly string[]): boolean {\n return keys.some(\n (key) =>\n (runtime.instances.get(key) as { dirty?: boolean } | undefined)?.dirty === true,\n );\n}\n\nfunction applyRef(ref: unknown, node: unknown): void {\n if (typeof ref === \"function\") {\n ref(node);\n return;\n }\n\n if (typeof ref === \"object\" && ref !== null && \"current\" in ref) {\n (ref as { current: unknown }).current = node;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-lanes.js","sourceRoot":"","sources":["../src/fiber-lanes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber-lanes.js","sourceRoot":"","sources":["../src/fiber-lanes.ts"],"names":[],"mappings":"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","sourcesContent":["export type Lane = number;\nexport type Lanes = number;\n\nexport const NoLane = 0;\nexport const NoLanes = 0;\nexport const SyncLane = 1 << 0;\nexport const DiscreteEventLane = 1 << 1;\nexport const HydrationLane = 1 << 2;\nexport const ContinuousEventLane = 1 << 3;\nexport const TransitionLane = 1 << 4;\nexport const IdleLane = 1 << 5;\n\ninterface LaneRoot {\n pendingLanes: Lanes;\n suspendedLanes: Lanes;\n pingedLanes: Lanes;\n expiredLanes: Lanes;\n entangledLanes: Lanes;\n}\n\nexport function mergeLanes(left: Lanes, right: Lanes): Lanes {\n return left | right;\n}\n\nexport function includesLane(lanes: Lanes, lane: Lane): boolean {\n return (lanes & lane) !== NoLane;\n}\n\nexport function removeLanes(lanes: Lanes, lanesToRemove: Lanes): Lanes {\n return lanes & ~lanesToRemove;\n}\n\nexport function getHighestPriorityLane(lanes: Lanes): Lane {\n return lanes & -lanes;\n}\n\nexport function getNextLanes(root: LaneRoot): Lanes {\n const pending = root.pendingLanes;\n\n if (pending === NoLanes) {\n return NoLanes;\n }\n\n const expired = pending & root.expiredLanes;\n if (expired !== NoLanes) {\n return includeEntangledLanes(root, getHighestPriorityLane(expired));\n }\n\n const pinged = pending & root.pingedLanes;\n if (pinged !== NoLanes) {\n return includeEntangledLanes(root, getHighestPriorityLane(pinged));\n }\n\n const unblocked = pending & ~root.suspendedLanes;\n if (unblocked !== NoLanes) {\n return includeEntangledLanes(root, getHighestPriorityLane(unblocked));\n }\n\n return NoLanes;\n}\n\nexport function markRootUpdated(root: LaneRoot, lanes: Lanes): void {\n root.pendingLanes |= lanes;\n root.suspendedLanes &= ~lanes;\n root.pingedLanes &= ~lanes;\n}\n\nexport function markRootSuspended(root: LaneRoot, lanes: Lanes): void {\n root.suspendedLanes |= lanes;\n root.pingedLanes &= ~lanes;\n}\n\nexport function markRootPinged(root: LaneRoot, lanes: Lanes): void {\n root.pingedLanes |= lanes & root.suspendedLanes;\n}\n\nexport function markRootExpired(root: LaneRoot, lanes: Lanes): void {\n root.expiredLanes |= lanes & root.pendingLanes;\n}\n\nexport function markRootEntangled(root: LaneRoot, lanes: Lanes): void {\n root.entangledLanes |= lanes;\n}\n\nexport function markRootFinished(root: LaneRoot, lanes: Lanes): void {\n root.pendingLanes &= ~lanes;\n root.suspendedLanes &= ~lanes;\n root.pingedLanes &= ~lanes;\n root.expiredLanes &= ~lanes;\n root.entangledLanes &= ~lanes;\n}\n\nfunction includeEntangledLanes(root: LaneRoot, lanes: Lanes): Lanes {\n if ((lanes & root.entangledLanes) === NoLanes) {\n return lanes;\n }\n\n return lanes | (root.entangledLanes & root.pendingLanes);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-reconciler.js","sourceRoot":"","sources":["../src/fiber-reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber-reconciler.js","sourceRoot":"","sources":["../src/fiber-reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,QAAQ,EACR,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,oBAAoB,GAIrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,UAAU,GAEX,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAA8B,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,oBAAoB,GAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAWzD,MAAM,UAAU,iBAAiB,CAC/B,IAAe,EACf,IAAW;IAEX,IAAI,IAAuB,CAAC;IAE5B,IAAI,CAAC;QACH,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAW;IACnC,IAAI,IAAI,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAI,IAAI,CAAC,YAA+C;aACnE,QAAQ,CAAC;QACZ,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,QAA2B,CAC5B,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,gBAAgB,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAI,IAAI,CAAC,YAA+C;aACnE,QAAQ,CAAC;QACZ,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,QAA2B,CAC5B,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QAC5B,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,IAAI,CAAC,YAA+B,CACrC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,aAAa,EAAE,CAAC;QAC/B,qBAAqB,CAClB,IAAI,CAAC,YAA+C,CAAC,QAAQ,CAC/D,CAAC;QACF,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACpB,IAAI,CAAC,YAA+C,CAAC,QAAQ,CAC/D,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,oBAAoB,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAuC,CAAC,CAAC;QACzE,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,aAAa,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,YAAuC,CAAC;QAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QAC5D,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,aAEzB,CAAC;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,YAAuC,CAAC;QAE/D,IACE,IAAI,CAAC,SAAS,KAAK,SAAS;YAC5B,aAAa,KAAK,SAAS;YAC3B,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,EACtD,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CACzC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,kBAAkB,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,YAGlB,CAAC;QACF,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG;YACnB,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,MAAM,EAAE,IAAI;SACuB,CAAC;QACtC,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,kBAAkB,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,YAElB,CAAC;QACF,MAAM,MAAM,GACV,OAAO,KAAK,CAAC,QAAQ,KAAK,UAAU;YAClC,CAAC,CAAE,KAAK,CAAC,QAAgD;YACzD,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;QACjB,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,iBAAiB,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACtE,OAAO,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAE3B,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACtE,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACrB,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAuC,CAAC,CAC/E,CAAC;QACJ,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACnC,MAAM,QAAQ,CAAC,KAAK,CAAC;QACvB,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;YACxC,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC;YAC5B,QAAQ,CAAC,OAAO,GAAG,QAAQ;iBACxB,IAAI,EAAE;iBACN,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC7B,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YACrC,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC7B,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;YACzB,CAAC,CAAC,CAAC;QACP,CAAC;QAED,MAAM,QAAQ,CAAC,OAAO,CAAC;IACzB,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtD,IAAI,CAAC,aAAa,GAAG,EAAE,UAAU,EAAE,KAAK,EAA+B,CAAC;QACxE,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACpB,IAAI,CAAC,YAA+C,CAAC,QAAQ,CAC/D,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC/D,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACpB,IAAI,CAAC,YAA+C,CAAC,QAAQ,CAC/D,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,gBAAgB,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACvE,OAAO,oBAAoB,CACzB,IAAI,EACJ,IAAI,CAAC,SAAS,EAAE,KAAK,EACpB,IAAI,CAAC,YAA+C,CAAC,QAAQ,CAC/D,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAqB;IAClD,IACE,IAAI,KAAK,IAAI;QACb,IAAI,KAAK,SAAS;QAClB,OAAO,IAAI,KAAK,SAAS;QACzB,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,KAAK,QAAQ,EACxB,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;YACzB,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO;IACT,CAAC;IAED,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAgC,CAAC,CAAC;QACtE,qBAAqB,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IAED,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,qBAAqB,CACnB,IAAI,CAAC,IAAI,CAAC,MAAM,CACd,IAAI,CAAC,KAAgC,EACpC,IAAI,CAAC,KAA2B,CAAC,GAAG,IAAI,IAAI,CAC9C,CACF,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IAED,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,CAAC,IAA2D,CAAC;QACnF,qBAAqB,CACnB,SAAS,CAAC,IAAI,CAAC,KAAgC,CAAC,CACjD,CAAC;QACF,OAAO;IACT,CAAC;IAED,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,QAA2B,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAW;IACtC,IAAI,IAAI,CAAC,GAAG,KAAK,kBAAkB,EAAE,CAAC;QACpC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,gBAAgB,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAE/B,IAAI,CAAC,SAAS;YACZ,OAAO,EAAE,GAAG,KAAK,gBAAgB;gBACjC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;gBAC1B,OAAO,CAAC,SAAS,YAAY,WAAW;gBACtC,CAAC,CAAC,OAAO,CAAC,SAAS;gBACnB,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,OAAO;IACT,CAAC;IAED,IAAI,IAAI,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAE/B,IAAI,CAAC,SAAS;YACZ,OAAO,EAAE,GAAG,KAAK,WAAW,IAAI,OAAO,CAAC,SAAS,YAAY,IAAI;gBAC/D,CAAC,CAAC,OAAO,CAAC,SAAS;gBACnB,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAuB;IAC3D,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IAED,IAAI,MAAM,GAAsB,IAAI,CAAC;IAErC,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5B,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAe,EACf,aAAoB;IAEpB,IAAI,IAAI,GAAsB,aAAa,CAAC;IAE5C,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;QAC1B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAEhC,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAW;IAC5C,IAAI,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACrC,IAAI,UAAU,GAAG,OAAO,CAAC;IACzB,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IAEvB,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC3B,YAAY,IAAI,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC;QACjD,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/E,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAqB;IAC5D,IACE,IAAI,KAAK,IAAI;QACb,IAAI,KAAK,SAAS;QAClB,OAAO,IAAI,KAAK,SAAS;QACzB,OAAO,IAAI,KAAK,QAAQ;QACxB,OAAO,IAAI,KAAK,QAAQ,EACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IACE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;QAC7B,IAAI,CAAC,IAAI,KAAK,QAAQ;QACtB,IAAI,CAAC,IAAI,KAAK,gBAAgB,EAC9B,CAAC;QACD,OAAO,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,QAA2B,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACtC,OAAO,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,QAA2B,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,OAAO,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,QAA2B,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC;IACnD,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1B,OAAO,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,CACL,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC;QAClC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QACrB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,IAAW;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,aAAsD,CAAC;IAE1E,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,EAAE,CAAC;QAC3B,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;IACvB,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAa;IAEb,OAAO,OAAO,IAAI,KAAK,UAAU,CAAC;AACpC,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAa;IAKb,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA+B,CAAC,QAAQ,KAAK,gBAAgB,CAC/D,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,IAAa;IAEb,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA+B,CAAC,QAAQ,KAAK,SAAS,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,IAAa;IAEb,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA+B,CAAC,QAAQ,KAAK,SAAS,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,mCAAmC,CAAC,IAAa;IACxD,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,QAAQ;QACjB,uBAAuB,CAAC,IAAI,CAAC;QAC7B,gBAAgB,CAAC,IAAI,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC;QAChB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CACrE,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAe,EACf,MAAa,EACb,WAAoB;IAEpB,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;IAE7B,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC3D,OAAO,uBAAuB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,GAAG,KAAK,gBAAgB,EAAE,CAAC;YAClE,OAAO,oBAAoB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC3D,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,GAAG,KAAK,iBAAiB,EAAE,CAAC;YACnE,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAExE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,MAAM,WAAW,CAAC;AACpB,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAW,EACX,IAAwB;IAExB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAuC,CAAC;IAC/D,MAAM,eAAe,GACnB,IAAI,CAAC,SAAS,EAAE,SAAS,YAAY,IAAI;QACvC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS;QAC1B,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,QAAQ,GAAG,eAAe,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IAEvC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAE1B,IACE,IAAI,CAAC,SAAS,KAAK,SAAS;QAC5B,QAAQ,CAAC,qBAAqB,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,KAAK,KAAK,EAChE,CAAC;QACD,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAC;IAC3B,OAAO,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,yBAAyB,CAChC,IAAe,EACf,QAAe,EACf,WAAoB;IAEpB,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAA+C,CAAC;IAE1E,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC7E,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC;IAC7B,MAAM,KAAK,GAAG,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,KAAK,CAAC,CAAC;IAErE,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxD,QAAQ,CAAC,KAAK,GAAG;YACf,GAAG,QAAQ,CAAC,KAAK;YACjB,GAAG,YAAY;SAChB,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5D,QAAQ,CAAC,KAAK,GAAG,oBAAoB,CACnC,QAAQ,EACR,QAAQ,CAAC,SAAS,EAAE,KAAK,EACzB,QAAQ,CAAC,MAAM,EAAE,CAClB,CAAC;IACF,OAAO,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAwB,EACxB,QAAgC;IAEhC,OAAO,CACL,OAAO,IAAI,CAAC,wBAAwB,KAAK,UAAU;QACnD,OAAO,QAAQ,CAAC,iBAAiB,KAAK,UAAU,CACjD,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAe,EACf,QAAe;IAEf,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC;IAC7B,QAAQ,CAAC,aAAa,GAAG,EAAE,UAAU,EAAE,IAAI,EAA+B,CAAC;IAC3E,QAAQ,CAAC,KAAK,GAAG,oBAAoB,CACnC,QAAQ,EACR,QAAQ,CAAC,SAAS,EAAE,KAAK,EACxB,QAAQ,CAAC,YAA+C,CAAC,QAAQ,CACnE,CAAC;IACF,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IACvC,OAAO,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAe,EACf,QAAe,EACf,WAAoB;IAEpB,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtC,QAAQ,CAAC,KAAK,IAAI,UAAU,CAAC;IAC7B,MAAM,KAAK,GAAG,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1F,MAAM,KAAK,GAAG,QAAQ,CAAC,YAGtB,CAAC;IAEF,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QACvC,KAAK,CAAC,OAAkC,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GACZ,OAAO,KAAK,CAAC,QAAQ,KAAK,UAAU;QAClC,CAAC,CAAE,KAAK,CAAC,QAA8C,CAAC,KAAK,CAAC;QAC9D,CAAC,CAAC,IAAI,CAAC;IACX,QAAQ,CAAC,KAAK,GAAG,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrF,OAAO,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAe;IACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAE/B,IAAI,MAAM,EAAE,GAAG,KAAK,eAAe,EAAE,CAAC;QACpC,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAI,MAAM,CAAC,YAA0C,CAAC,WAAW,CAAC;IAEnF,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;QAC/B,QAAQ,CAAC,OAAO,GAAG,SAAS,CAAC;IAC/B,CAAC;SAAM,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;QACvC,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;IAC1B,CAAC;AACH,CAAC","sourcesContent":["import {\n ERROR_BOUNDARY_TYPE,\n FORWARD_REF_TYPE,\n Fragment,\n LAZY_TYPE,\n MEMO_TYPE,\n STRICT_MODE_TYPE,\n Suspense,\n SuspenseList,\n createElement,\n isReactCompatElement,\n type LazyType,\n type MemoType,\n type ReactCompatNode,\n} from \"./element.js\";\nimport {\n isReactCompatConsumer,\n isReactCompatProvider,\n popContextProvider,\n pushContextProvider,\n useContext,\n type ReactCompatProvider,\n} from \"./context.js\";\nimport { reconcileChildFibers } from \"./fiber-child.js\";\nimport { type Fiber, type FiberRoot } from \"./fiber.js\";\nimport { DidCapture } from \"./fiber-flags.js\";\nimport { mergeLanes, NoLanes } from \"./fiber-lanes.js\";\nimport { isThenable } from \"./thenable.js\";\nimport {\n isClassComponentType,\n type ClassComponentInstance,\n type ClassComponentType,\n} from \"./class-component.js\";\nimport { areMemoPropsEqual } from \"./prop-comparison.js\";\n\ninterface ContextProviderFiberState {\n provider: ReactCompatProvider<unknown>;\n pushed: boolean;\n}\n\ninterface SuspenseFiberState {\n didSuspend: boolean;\n}\n\nexport function performUnitOfWork(\n root: FiberRoot,\n unit: Fiber,\n): Fiber | undefined {\n let next: Fiber | undefined;\n\n try {\n next = beginWork(unit);\n } catch (error) {\n return captureThrownValue(root, unit, error);\n }\n\n if (next !== undefined) {\n return next;\n }\n\n return completeUnitOfWork(root, unit);\n}\n\nexport function beginWork(unit: Fiber): Fiber | undefined {\n if (unit.tag === \"host-root\") {\n const children = (unit.pendingProps as { children?: ReactCompatNode })\n .children;\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n children as ReactCompatNode,\n );\n }\n\n if (unit.tag === \"host-component\") {\n const children = (unit.pendingProps as { children?: ReactCompatNode })\n .children;\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n children as ReactCompatNode,\n );\n }\n\n if (unit.tag === \"fragment\") {\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n unit.pendingProps as ReactCompatNode,\n );\n }\n\n if (unit.tag === \"strict-mode\") {\n previewStrictModeNode(\n (unit.pendingProps as { children?: ReactCompatNode }).children,\n );\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n (unit.pendingProps as { children?: ReactCompatNode }).children,\n );\n }\n\n if (unit.tag === \"function-component\" && isFunctionComponentType(unit.type)) {\n const children = unit.type(unit.pendingProps as Record<string, unknown>);\n return reconcileChildFibers(unit, unit.alternate?.child, children);\n }\n\n if (unit.tag === \"forward-ref\" && isForwardRefType(unit.type)) {\n const props = unit.pendingProps as Record<string, unknown>;\n const children = unit.type.render(props, props.ref ?? null);\n return reconcileChildFibers(unit, unit.alternate?.child, children);\n }\n\n if (unit.tag === \"memo\" && isMemoType(unit.type)) {\n const previousProps = unit.alternate?.memoizedProps as\n | Record<string, unknown>\n | undefined;\n const nextProps = unit.pendingProps as Record<string, unknown>;\n\n if (\n unit.alternate !== undefined &&\n previousProps !== undefined &&\n areMemoPropsEqual(unit.type, previousProps, nextProps)\n ) {\n unit.child = unit.alternate.child;\n return undefined;\n }\n\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n createElement(unit.type.type, nextProps),\n );\n }\n\n if (unit.tag === \"context-provider\" && isReactCompatProvider(unit.type)) {\n const props = unit.pendingProps as {\n value: unknown;\n children?: ReactCompatNode;\n };\n pushContextProvider(unit.type, props.value);\n unit.memoizedState = {\n provider: unit.type,\n pushed: true,\n } satisfies ContextProviderFiberState;\n return reconcileChildFibers(unit, unit.alternate?.child, props.children);\n }\n\n if (unit.tag === \"context-consumer\" && isReactCompatConsumer(unit.type)) {\n const props = unit.pendingProps as {\n children?: unknown;\n };\n const render =\n typeof props.children === \"function\"\n ? (props.children as (value: unknown) => ReactCompatNode)\n : () => null;\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n render(useContext(unit.type.context)),\n );\n }\n\n if (unit.tag === \"class-component\" && isClassComponentType(unit.type)) {\n return beginClassComponent(unit, unit.type);\n }\n\n if (unit.tag === \"lazy\" && isLazyType(unit.type)) {\n const lazyType = unit.type;\n\n if (lazyType.status === \"resolved\" && lazyType.resolved !== undefined) {\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n createElement(lazyType.resolved, unit.pendingProps as Record<string, unknown>),\n );\n }\n\n if (lazyType.status === \"rejected\") {\n throw lazyType.error;\n }\n\n if (lazyType.status === \"uninitialized\") {\n lazyType.status = \"pending\";\n lazyType.promise = lazyType\n .load()\n .then((module) => {\n lazyType.status = \"resolved\";\n lazyType.resolved = module.default;\n })\n .catch((error: unknown) => {\n lazyType.status = \"rejected\";\n lazyType.error = error;\n });\n }\n\n throw lazyType.promise;\n }\n\n if (unit.tag === \"suspense\" && unit.type === Suspense) {\n unit.memoizedState = { didSuspend: false } satisfies SuspenseFiberState;\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n (unit.pendingProps as { children?: ReactCompatNode }).children,\n );\n }\n\n if (unit.tag === \"suspense-list\" && unit.type === SuspenseList) {\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n (unit.pendingProps as { children?: ReactCompatNode }).children,\n );\n }\n\n if (unit.tag === \"error-boundary\" && unit.type === ERROR_BOUNDARY_TYPE) {\n return reconcileChildFibers(\n unit,\n unit.alternate?.child,\n (unit.pendingProps as { children?: ReactCompatNode }).children,\n );\n }\n\n return undefined;\n}\n\nfunction previewStrictModeNode(node: ReactCompatNode): void {\n if (\n node === null ||\n node === undefined ||\n typeof node === \"boolean\" ||\n typeof node === \"string\" ||\n typeof node === \"number\"\n ) {\n return;\n }\n\n if (Array.isArray(node)) {\n for (const child of node) {\n previewStrictModeNode(child);\n }\n return;\n }\n\n if (!isReactCompatElement(node)) {\n return;\n }\n\n if (isClassComponentType(node.type)) {\n const instance = new node.type(node.props as Record<string, unknown>);\n previewStrictModeNode(instance.render());\n return;\n }\n\n if (isForwardRefType(node.type)) {\n previewStrictModeNode(\n node.type.render(\n node.props as Record<string, unknown>,\n (node.props as { ref?: unknown }).ref ?? null,\n ),\n );\n return;\n }\n\n if (isMemoType(node.type)) {\n previewStrictModeNode(createElement(node.type.type, node.props));\n return;\n }\n\n if (typeof node.type === \"function\") {\n const component = node.type as (props: Record<string, unknown>) => ReactCompatNode;\n previewStrictModeNode(\n component(node.props as Record<string, unknown>),\n );\n return;\n }\n\n previewStrictModeNode(node.props.children as ReactCompatNode);\n}\n\nexport function completeWork(unit: Fiber): void {\n if (unit.tag === \"context-provider\") {\n popPushedContextProvider(unit);\n }\n\n if (unit.tag === \"host-component\") {\n const current = unit.alternate;\n\n unit.stateNode =\n current?.tag === \"host-component\" &&\n current.type === unit.type &&\n current.stateNode instanceof HTMLElement\n ? current.stateNode\n : document.createElement(String(unit.type));\n return;\n }\n\n if (unit.tag === \"host-text\") {\n const current = unit.alternate;\n\n unit.stateNode =\n current?.tag === \"host-text\" && current.stateNode instanceof Text\n ? current.stateNode\n : document.createTextNode(\"\");\n }\n}\n\nexport function cleanupUnfinishedWork(unit: Fiber | undefined): void {\n if (unit === undefined) {\n return;\n }\n\n let cursor: Fiber | undefined = unit;\n\n while (cursor !== undefined) {\n cleanupUnfinishedWork(cursor.child);\n popPushedContextProvider(cursor);\n cursor = cursor.sibling;\n }\n}\n\nfunction completeUnitOfWork(\n root: FiberRoot,\n completedWork: Fiber,\n): Fiber | undefined {\n let unit: Fiber | undefined = completedWork;\n\n while (unit !== undefined) {\n completeWork(unit);\n bubbleCompletedProperties(unit);\n\n if (unit.sibling !== undefined) {\n return unit.sibling;\n }\n\n if (unit.return === undefined) {\n unit.memoizedProps = unit.pendingProps;\n root.finishedWork = unit;\n return undefined;\n }\n\n unit.memoizedProps = unit.pendingProps;\n unit = unit.return;\n }\n\n return undefined;\n}\n\nfunction bubbleCompletedProperties(unit: Fiber): void {\n let subtreeFlags = unit.subtreeFlags;\n let childLanes = NoLanes;\n let child = unit.child;\n\n while (child !== undefined) {\n subtreeFlags |= child.subtreeFlags | child.flags;\n childLanes = mergeLanes(childLanes, mergeLanes(child.lanes, child.childLanes));\n child.return = unit;\n child = child.sibling;\n }\n\n unit.subtreeFlags = subtreeFlags;\n unit.childLanes = childLanes;\n}\n\nexport function canReconcileConcurrently(node: ReactCompatNode): boolean {\n if (\n node === null ||\n node === undefined ||\n typeof node === \"boolean\" ||\n typeof node === \"string\" ||\n typeof node === \"number\"\n ) {\n return true;\n }\n\n if (Array.isArray(node)) {\n return node.every(canReconcileConcurrently);\n }\n\n if (!isReactCompatElement(node)) {\n return false;\n }\n\n if (\n typeof node.type === \"string\" ||\n node.type === Fragment ||\n node.type === STRICT_MODE_TYPE\n ) {\n return canReconcileConcurrently(node.props.children as ReactCompatNode);\n }\n\n if (node.type === Suspense || node.type === SuspenseList) {\n return true;\n }\n\n if (node.type === ERROR_BOUNDARY_TYPE) {\n return canReconcileConcurrently(node.props.children as ReactCompatNode);\n }\n\n if (isReactCompatProvider(node.type)) {\n return canReconcileConcurrently(node.props.children as ReactCompatNode);\n }\n\n if (isReactCompatConsumer(node.type)) {\n return typeof node.props.children === \"function\";\n }\n\n if (isMemoType(node.type)) {\n return canReconcileElementTypeConcurrently(node.type.type);\n }\n\n return (\n isFunctionComponentType(node.type) ||\n isForwardRefType(node.type) ||\n isLazyType(node.type) ||\n isClassComponentType(node.type)\n );\n}\n\nfunction popPushedContextProvider(unit: Fiber): void {\n const state = unit.memoizedState as ContextProviderFiberState | undefined;\n\n if (state?.pushed === true) {\n popContextProvider(state.provider);\n state.pushed = false;\n }\n}\n\nfunction isFunctionComponentType(\n type: unknown,\n): type is (props: Record<string, unknown>) => ReactCompatNode {\n return typeof type === \"function\";\n}\n\nfunction isForwardRefType(\n type: unknown,\n): type is {\n $$typeof: typeof FORWARD_REF_TYPE;\n render: (props: Record<string, unknown>, ref: unknown) => ReactCompatNode;\n} {\n return (\n typeof type === \"object\" &&\n type !== null &&\n (type as { $$typeof?: unknown }).$$typeof === FORWARD_REF_TYPE\n );\n}\n\nfunction isMemoType(\n type: unknown,\n): type is MemoType<Record<string, unknown>> {\n return (\n typeof type === \"object\" &&\n type !== null &&\n (type as { $$typeof?: unknown }).$$typeof === MEMO_TYPE\n );\n}\n\nfunction isLazyType(\n type: unknown,\n): type is LazyType<Record<string, unknown>> {\n return (\n typeof type === \"object\" &&\n type !== null &&\n (type as { $$typeof?: unknown }).$$typeof === LAZY_TYPE\n );\n}\n\nfunction canReconcileElementTypeConcurrently(type: unknown): boolean {\n return (\n typeof type === \"string\" ||\n type === Fragment ||\n isFunctionComponentType(type) ||\n isForwardRefType(type) ||\n isLazyType(type) ||\n (isMemoType(type) && canReconcileElementTypeConcurrently(type.type))\n );\n}\n\nfunction captureThrownValue(\n root: FiberRoot,\n source: Fiber,\n thrownValue: unknown,\n): Fiber | undefined {\n let boundary = source.return;\n\n while (boundary !== undefined) {\n if (isThenable(thrownValue) && boundary.tag === \"suspense\") {\n return captureSuspenseBoundary(root, boundary);\n }\n\n if (!isThenable(thrownValue) && boundary.tag === \"error-boundary\") {\n return captureErrorBoundary(root, boundary, thrownValue);\n }\n\n if (!isThenable(thrownValue) && boundary.tag === \"class-component\") {\n const captured = captureClassErrorBoundary(root, boundary, thrownValue);\n\n if (captured !== undefined) {\n return captured;\n }\n }\n\n boundary = boundary.return;\n }\n\n throw thrownValue;\n}\n\nfunction beginClassComponent(\n unit: Fiber,\n type: ClassComponentType,\n): Fiber | undefined {\n const nextProps = unit.pendingProps as Record<string, unknown>;\n const currentInstance =\n unit.alternate?.stateNode instanceof type\n ? unit.alternate.stateNode\n : undefined;\n const instance = currentInstance ?? new type(nextProps);\n const nextState = instance.state ?? {};\n\n unit.stateNode = instance;\n\n if (\n unit.alternate !== undefined &&\n instance.shouldComponentUpdate?.(nextProps, nextState) === false\n ) {\n instance.props = nextProps;\n unit.child = unit.alternate.child;\n return undefined;\n }\n\n instance.props = nextProps;\n return reconcileChildFibers(unit, unit.alternate?.child, instance.render());\n}\n\nfunction captureClassErrorBoundary(\n root: FiberRoot,\n boundary: Fiber,\n thrownValue: unknown,\n): Fiber | undefined {\n if (!isClassComponentType(boundary.type)) {\n return undefined;\n }\n\n const instance = boundary.stateNode as ClassComponentInstance | undefined;\n\n if (instance === undefined || !isClassErrorBoundary(boundary.type, instance)) {\n return undefined;\n }\n\n cleanupUnfinishedWork(boundary.child);\n boundary.flags |= DidCapture;\n const error = thrownValue instanceof Error ? thrownValue : new Error(String(thrownValue));\n const derivedState = boundary.type.getDerivedStateFromError?.(error);\n\n if (derivedState !== undefined && derivedState !== null) {\n instance.state = {\n ...instance.state,\n ...derivedState,\n };\n }\n\n instance.componentDidCatch?.(error, { componentStack: \"\" });\n boundary.child = reconcileChildFibers(\n boundary,\n boundary.alternate?.child,\n instance.render(),\n );\n return boundary.child ?? completeUnitOfWork(root, boundary);\n}\n\nfunction isClassErrorBoundary(\n type: ClassComponentType,\n instance: ClassComponentInstance,\n): boolean {\n return (\n typeof type.getDerivedStateFromError === \"function\" ||\n typeof instance.componentDidCatch === \"function\"\n );\n}\n\nfunction captureSuspenseBoundary(\n root: FiberRoot,\n boundary: Fiber,\n): Fiber | undefined {\n cleanupUnfinishedWork(boundary.child);\n boundary.flags |= DidCapture;\n boundary.memoizedState = { didSuspend: true } satisfies SuspenseFiberState;\n boundary.child = reconcileChildFibers(\n boundary,\n boundary.alternate?.child,\n (boundary.pendingProps as { fallback?: ReactCompatNode }).fallback,\n );\n applySuspenseListRevealOrder(boundary);\n return boundary.child ?? completeUnitOfWork(root, boundary);\n}\n\nfunction captureErrorBoundary(\n root: FiberRoot,\n boundary: Fiber,\n thrownValue: unknown,\n): Fiber | undefined {\n cleanupUnfinishedWork(boundary.child);\n boundary.flags |= DidCapture;\n const error = thrownValue instanceof Error ? thrownValue : new Error(String(thrownValue));\n const props = boundary.pendingProps as {\n fallback?: unknown;\n onError?: unknown;\n };\n\n if (typeof props.onError === \"function\") {\n (props.onError as (error: Error) => void)(error);\n }\n\n const fallback =\n typeof props.fallback === \"function\"\n ? (props.fallback as (error: Error) => ReactCompatNode)(error)\n : null;\n boundary.child = reconcileChildFibers(boundary, boundary.alternate?.child, fallback);\n return boundary.child ?? completeUnitOfWork(root, boundary);\n}\n\nfunction applySuspenseListRevealOrder(boundary: Fiber): void {\n const parent = boundary.return;\n\n if (parent?.tag !== \"suspense-list\") {\n return;\n }\n\n const revealOrder = (parent.pendingProps as { revealOrder?: unknown }).revealOrder;\n\n if (revealOrder === \"forwards\") {\n boundary.sibling = undefined;\n } else if (revealOrder === \"backwards\") {\n parent.child = boundary;\n }\n}\n"]}