Added provider property to Web3Provider (#641).
This commit is contained in:
parent
494381a628
commit
1d4f90a958
@ -28,7 +28,7 @@ utils.defineProperty(Web3Signer, "onchange", {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
export class Web3Provider extends JsonRpcProvider {
|
export class Web3Provider extends JsonRpcProvider {
|
||||||
readonly _web3Provider: AsyncSendable;
|
readonly provider: AsyncSendable;
|
||||||
private _sendAsync: (request: any, callback: (error: any, response: any) => void) => void;
|
private _sendAsync: (request: any, callback: (error: any, response: any) => void) => void;
|
||||||
|
|
||||||
constructor(web3Provider: AsyncSendable, network?: Networkish) {
|
constructor(web3Provider: AsyncSendable, network?: Networkish) {
|
||||||
@ -49,20 +49,20 @@ export class Web3Provider extends JsonRpcProvider {
|
|||||||
logger.throwArgumentError("invalid web3Provider", "web3Provider", web3Provider);
|
logger.throwArgumentError("invalid web3Provider", "web3Provider", web3Provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
defineReadOnly(this, "_web3Provider", web3Provider);
|
defineReadOnly(this, "provider", web3Provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
send(method: string, params: any): Promise<any> {
|
send(method: string, params: any): Promise<any> {
|
||||||
|
|
||||||
// Metamask complains about eth_sign (and on some versions hangs)
|
// Metamask complains about eth_sign (and on some versions hangs)
|
||||||
if (method == "eth_sign" && this._web3Provider.isMetaMask) {
|
if (method == "eth_sign" && this.provider.isMetaMask) {
|
||||||
// https://github.com/ethereum/go-ethereum/wiki/Management-APIs#personal_sign
|
// https://github.com/ethereum/go-ethereum/wiki/Management-APIs#personal_sign
|
||||||
method = "personal_sign";
|
method = "personal_sign";
|
||||||
params = [ params[1], params[0] ];
|
params = [ params[1], params[0] ];
|
||||||
}
|
}
|
||||||
|
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
let request = {
|
const request = {
|
||||||
method: method,
|
method: method,
|
||||||
params: params,
|
params: params,
|
||||||
id: 42,
|
id: 42,
|
||||||
@ -77,7 +77,7 @@ export class Web3Provider extends JsonRpcProvider {
|
|||||||
|
|
||||||
if (result.error) {
|
if (result.error) {
|
||||||
// @TODO: not any
|
// @TODO: not any
|
||||||
let error: any = new Error(result.error.message);
|
const error: any = new Error(result.error.message);
|
||||||
error.code = result.error.code;
|
error.code = result.error.code;
|
||||||
error.data = result.error.data;
|
error.data = result.error.data;
|
||||||
reject(error);
|
reject(error);
|
||||||
|
Loading…
Reference in New Issue
Block a user