@@ -35,8 +35,8 @@ export function patch(internal, vnode, parentDom) {
35
35
36
36
if ( flags & TYPE_TEXT ) {
37
37
if ( vnode !== internal . props ) {
38
- // @ts -ignore We know that newVNode is string/number/bigint, and internal._dom is Text
39
- internal . _dom . data = vnode ;
38
+ // @ts -ignore We know that newVNode is string/number/bigint, and internal.data is Text
39
+ internal . data . data = vnode ;
40
40
internal . props = vnode ;
41
41
}
42
42
@@ -94,7 +94,7 @@ export function patch(internal, vnode, parentDom) {
94
94
let siblingDom =
95
95
( internal . flags & ( MODE_HYDRATE | MODE_SUSPENDED ) ) ===
96
96
( MODE_HYDRATE | MODE_SUSPENDED )
97
- ? internal . _dom
97
+ ? internal . data
98
98
: internal . flags & MODE_HYDRATE
99
99
? null
100
100
: getDomSibling ( internal ) ;
@@ -104,7 +104,12 @@ export function patch(internal, vnode, parentDom) {
104
104
patchChildren ( internal , renderResult , parentDom ) ;
105
105
}
106
106
107
- if ( internal . _commitCallbacks . length ) {
107
+ // TODO: for some reason lazy-hydration stops working as .data is assigned a DOM-node
108
+ // for Preact.lazy
109
+ if (
110
+ internal . data . _commitCallbacks &&
111
+ internal . data . _commitCallbacks . length
112
+ ) {
108
113
commitQueue . push ( internal ) ;
109
114
}
110
115
} catch ( e ) {
@@ -133,7 +138,7 @@ export function patch(internal, vnode, parentDom) {
133
138
* @param {import('../internal').VNode } vnode A VNode with props to compare and apply
134
139
*/
135
140
function patchElement ( internal , vnode ) {
136
- let dom = /** @type {import('../internal').PreactElement } */ ( internal . _dom ) ,
141
+ let dom = /** @type {import('../internal').PreactElement } */ ( internal . data ) ,
137
142
oldProps = internal . props ,
138
143
newProps = vnode . props ,
139
144
isSvg = internal . flags & MODE_SVG ,
@@ -244,10 +249,10 @@ function patchComponent(internal, newVNode) {
244
249
c . props = newProps ;
245
250
c . state = c . _nextState ;
246
251
internal . flags |= SKIP_CHILDREN ;
247
- for ( let i = 0 ; i < internal . _stateCallbacks . length ; i ++ ) {
248
- internal . _commitCallbacks . push ( internal . _stateCallbacks [ i ] ) ;
252
+ for ( let i = 0 ; i < internal . data . _stateCallbacks . length ; i ++ ) {
253
+ internal . data . _commitCallbacks . push ( internal . data . _stateCallbacks [ i ] ) ;
249
254
}
250
- internal . _stateCallbacks = [ ] ;
255
+ internal . data . _stateCallbacks = [ ] ;
251
256
return ;
252
257
}
253
258
@@ -269,10 +274,10 @@ function patchComponent(internal, newVNode) {
269
274
if ( renderHook ) renderHook ( internal ) ;
270
275
if ( ENABLE_CLASSES && internal . flags & TYPE_CLASS ) {
271
276
renderResult = c . render ( c . props , c . state , c . context ) ;
272
- for ( let i = 0 ; i < internal . _stateCallbacks . length ; i ++ ) {
273
- internal . _commitCallbacks . push ( internal . _stateCallbacks [ i ] ) ;
277
+ for ( let i = 0 ; i < internal . data . _stateCallbacks . length ; i ++ ) {
278
+ internal . data . _commitCallbacks . push ( internal . data . _stateCallbacks [ i ] ) ;
274
279
}
275
- internal . _stateCallbacks = [ ] ;
280
+ internal . data . _stateCallbacks = [ ] ;
276
281
// note: disable repeat render invocation for class components
277
282
break ;
278
283
} else {
@@ -297,7 +302,7 @@ function patchComponent(internal, newVNode) {
297
302
298
303
// Only schedule componentDidUpdate if the component successfully rendered
299
304
if ( c . componentDidUpdate != null ) {
300
- internal . _commitCallbacks . push ( ( ) => {
305
+ internal . data . _commitCallbacks . push ( ( ) => {
301
306
c . componentDidUpdate ( oldProps , oldState , snapshot ) ;
302
307
} ) ;
303
308
}
0 commit comments