@@ -12,6 +12,7 @@ import { JsonRpcProvider } from "./json-rpc-provider";
12
12
// Exported Types
13
13
export type ExternalProvider = {
14
14
isMetaMask ?: boolean ;
15
+ isStatus ?: boolean ;
15
16
host ?: string ;
16
17
path ?: string ;
17
18
sendAsync ?: ( request : { method : string , params ?: Array < any > } , callback : ( error : any , response : any ) => void ) => void
@@ -29,7 +30,7 @@ function buildWeb3LegacyFetcher(provider: ExternalProvider, sendFunc: Web3Legacy
29
30
return function ( method : string , params : Array < any > ) : Promise < any > {
30
31
31
32
// Metamask complains about eth_sign (and on some versions hangs)
32
- if ( method == "eth_sign" && provider . isMetaMask ) {
33
+ if ( method == "eth_sign" && ( provider . isMetaMask || provider . isStatus ) ) {
33
34
// https://github.com/ethereum/go-ethereum/wiki/Management-APIs#personal_sign
34
35
method = "personal_sign" ;
35
36
params = [ params [ 1 ] , params [ 0 ] ] ;
@@ -64,7 +65,7 @@ function buildEip1193Fetcher(provider: ExternalProvider): JsonRpcFetchFunc {
64
65
if ( params == null ) { params = [ ] ; }
65
66
66
67
// Metamask complains about eth_sign (and on some versions hangs)
67
- if ( method == "eth_sign" && provider . isMetaMask ) {
68
+ if ( method == "eth_sign" && ( provider . isMetaMask || provider . isStatus ) ) {
68
69
// https://github.com/ethereum/go-ethereum/wiki/Management-APIs#personal_sign
69
70
method = "personal_sign" ;
70
71
params = [ params [ 1 ] , params [ 0 ] ] ;
0 commit comments