22//! contract.
33
44use {
5- crate :: { BalancerV2Authorizer , BalancerV2Vault } ,
6- ethcontract:: { Bytes , H160 , common:: FunctionExt as _, errors:: MethodError , web3:: signing} ,
5+ crate :: { BalancerV2Vault , alloy:: BalancerV2Authorizer } ,
6+ alloy:: primitives:: Address ,
7+ ethcontract:: { Bytes , H160 , common:: FunctionExt as _, web3:: signing} ,
78} ;
89
910fn role_id ( target : H160 , function_name : & str ) -> Bytes < [ u8 ; 32 ] > {
@@ -23,19 +24,21 @@ fn role_id(target: H160, function_name: &str) -> Bytes<[u8; 32]> {
2324}
2425
2526pub async fn grant_required_roles (
26- authorizer : & BalancerV2Authorizer ,
27+ authorizer : & BalancerV2Authorizer :: Instance ,
2728 vault : H160 ,
2829 vault_relayer : H160 ,
29- ) -> Result < ( ) , MethodError > {
30+ ) -> Result < ( ) , alloy :: contract :: Error > {
3031 authorizer
31- . grant_roles (
32+ . grantRoles (
3233 vec ! [
33- role_id( vault, "manageUserBalance" ) ,
34- role_id( vault, "batchSwap" ) ,
34+ role_id( vault, "manageUserBalance" ) . 0 . into ( ) ,
35+ role_id( vault, "batchSwap" ) . 0 . into ( ) ,
3536 ] ,
36- vault_relayer,
37+ Address :: from ( vault_relayer. 0 ) ,
3738 )
3839 . send ( )
40+ . await ?
41+ . watch ( )
3942 . await ?;
4043 Ok ( ( ) )
4144}
0 commit comments