99 useRef ,
1010} from 'react' ;
1111
12- import { ActiveViewContext , ViewModelsContext } from '../contexts' ;
12+ import { ActiveViewModelContext , ViewModelsContext } from '../contexts' ;
1313import { generateVMId } from '../utils' ;
1414import { AnyObject , Class , EmptyObject , Maybe } from '../utils/types' ;
1515import { AnyViewModel , ViewModel , ViewModelCreateConfig } from '../view-model' ;
@@ -96,15 +96,15 @@ export function withViewModel(
9696
9797 const idRef = useRef < string > ( '' ) ;
9898 const viewModels = useContext ( ViewModelsContext ) ;
99- const parentViewModelId = useContext ( ActiveViewContext ) || null ;
99+ const parentViewModel = useContext ( ActiveViewModelContext ) || null ;
100100
101101 if ( ! idRef . current ) {
102102 idRef . current =
103103 viewModels ?. generateViewModelId ( {
104104 ctx,
105105 id : config ?. id ,
106106 VM : Model ,
107- parentViewModelId,
107+ parentViewModelId : parentViewModel ?. id ,
108108 fallback : config ?. fallback ,
109109 instances,
110110 } ) ??
@@ -117,12 +117,12 @@ export function withViewModel(
117117 if ( ! instances . has ( id ) ) {
118118 const configCreate : ViewModelCreateConfig < any > = {
119119 id,
120- parentViewModelId,
120+ parentViewModelId : parentViewModel ?. id ,
121121 payload,
122122 VM : Model ,
123123 viewModels,
124124 parentViewModel :
125- ( parentViewModelId && instances . get ( parentViewModelId ) ) || null ,
125+ ( parentViewModel && instances . get ( parentViewModel ?. id ) ) || null ,
126126 fallback : config ?. fallback ,
127127 instances,
128128 ctx,
@@ -157,9 +157,9 @@ export function withViewModel(
157157
158158 if ( ( ! viewModels || viewModels . isAbleToRenderView ( id ) ) && instance ) {
159159 return (
160- < ActiveViewContext . Provider value = { id } >
160+ < ActiveViewModelContext . Provider value = { instance } >
161161 < Component { ...( componentProps as any ) } model = { instance } />
162- </ ActiveViewContext . Provider >
162+ </ ActiveViewModelContext . Provider >
163163 ) ;
164164 }
165165
0 commit comments