|
1 | 1 | /** The module bootstraps a react app. */ |
2 | 2 |
|
3 | | -import { ReactElement, Component, StatefulComponent } from './types'; |
| 3 | +import { ReactElement, Component } from './types'; |
4 | 4 | import { runEffects } from './renderer-runtime'; |
5 | 5 | import { registerJobRunner, getScheduler } from './react-scheduler'; |
6 | 6 | import { instantiateComponent, mountComponent, updateComponent } from './component-lifecyles'; |
7 | 7 |
|
8 | 8 | let rootComponent: Component | null = null; |
9 | 9 |
|
10 | | -const patchComponentTreeInplace = ( |
11 | | - rootNode: Component, |
12 | | - updatedComponent: StatefulComponent, |
13 | | - oldDOMNode: HTMLElement, |
14 | | - newDOMNode: HTMLElement |
15 | | -): void => { |
16 | | - if (rootNode.type === 'functional') { |
17 | | - if (rootNode.renderedComponent === updatedComponent) { |
18 | | - rootNode.realDOMNode = newDOMNode; |
19 | | - } |
20 | | - patchComponentTreeInplace(rootNode.renderedComponent, updatedComponent, oldDOMNode, newDOMNode); |
21 | | - return; |
22 | | - } |
23 | | - for (let i = 0; i < rootNode.children.length; i += 1) { |
24 | | - const child = rootNode.children[i]; |
25 | | - if (child === updatedComponent) { |
26 | | - rootNode.realDOMNode.replaceChild(newDOMNode, oldDOMNode); |
27 | | - break; |
28 | | - } |
29 | | - } |
30 | | -}; |
31 | | - |
32 | 10 | registerJobRunner((job) => { |
33 | 11 | if (rootComponent === null) { |
34 | 12 | throw new Error(); |
|
0 commit comments