@@ -42,6 +42,7 @@ class AccountAbstractionProvider extends BaseProvider<AccountAbstractionProvider
4242
4343 constructor ( { config, state } : { config : AccountAbstractionProviderConfig ; state ?: AccountAbstractionProviderState } ) {
4444 super ( { config, state } ) ;
45+ this . update ( { chainId : config . chain . chainId } ) ;
4546 }
4647
4748 get smartAccount ( ) : SmartAccount | null {
@@ -63,10 +64,10 @@ class AccountAbstractionProvider extends BaseProvider<AccountAbstractionProvider
6364 public static getProviderInstance = async (
6465 params : AccountAbstractionProviderConfig & { eoaProvider : IProvider }
6566 ) : Promise < AccountAbstractionProvider > => {
66- const providerFactory = new AccountAbstractionProvider ( { config : params } ) ;
67- await providerFactory . setupProvider ( params . eoaProvider ) ;
68- providerFactory . update ( { eoaProvider : params . eoaProvider } ) ;
69- return providerFactory ;
67+ const providerInstance = new AccountAbstractionProvider ( { config : params } ) ;
68+ await providerInstance . setupProvider ( params . eoaProvider ) ;
69+ providerInstance . update ( { eoaProvider : params . eoaProvider } ) ;
70+ return providerInstance ;
7071 } ;
7172
7273 public async enable ( ) : Promise < string [ ] > {
@@ -145,8 +146,10 @@ class AccountAbstractionProvider extends BaseProvider<AccountAbstractionProvider
145146 engine . push ( eoaMiddleware ) ;
146147 const provider = providerFromEngine ( engine ) ;
147148 this . updateProviderEngineProxy ( provider ) ;
148- eoaProvider . once ( "chainChanged" , ( ) => {
149+ eoaProvider . once ( "chainChanged" , ( chainId ) => {
150+ this . update ( { chainId } ) ;
149151 this . setupChainSwitchMiddleware ( ) ;
152+ this . emit ( "chainChanged" , chainId ) ;
150153 } ) ;
151154 }
152155
0 commit comments