@@ -8,7 +8,7 @@ import { FrameWrapper } from '../wrapper/FrameWrapper';
88import { ModuleFederationWrapper } from '../wrapper/ModuleFederationWrapper' ;
99import { SsrWrapper } from '../wrapper/SsrWrapper' ;
1010import { ChaynsContext } from './ChaynsContext' ;
11- import { addModuleWrapper , moduleWrapper , removeModuleWrapper } from './moduleWrapper' ;
11+ import { addModuleWrapper , chaynsApis , moduleWrapper , removeModuleWrapper } from './moduleWrapper' ;
1212
1313const isServer = typeof window === 'undefined' ;
1414
@@ -28,6 +28,7 @@ export type ChaynsProviderProps = {
2828 renderedByServer ?: boolean ,
2929 isModule ?: boolean ,
3030 children ?: ReactNode ,
31+ chaynsApiId ?: string
3132}
3233
3334const ChaynsProvider : React . FC < ChaynsProviderProps > = ( {
@@ -37,8 +38,10 @@ const ChaynsProvider: React.FC<ChaynsProviderProps> = ({
3738 customFunctions,
3839 renderedByServer,
3940 isModule,
41+ chaynsApiId
4042} ) => {
4143 const customWrapper = useRef < IChaynsReact > ( null ! ) ;
44+ const idRef = useRef ( chaynsApiId ?? crypto ?. randomUUID ( ) ?? Math . random ( ) . toString ( ) ) ;
4245
4346 if ( ! customWrapper . current ) {
4447 if ( isModule ) {
@@ -63,6 +66,8 @@ const ChaynsProvider: React.FC<ChaynsProviderProps> = ({
6366 }
6467 }
6568 moduleWrapper . current = customWrapper . current ;
69+ chaynsApis [ idRef . current ] = customWrapper . current . functions ;
70+ customWrapper . current . chaynsApiId = idRef . current ;
6671 }
6772
6873 const [ isInitialized , setIsInitialized ] = useState < boolean > ( ! ! customWrapper . current ?. values ) ;
0 commit comments