Skip to content

Commit

Permalink
fix: requires chainId param on init
Browse files Browse the repository at this point in the history
  • Loading branch information
Gancho Radkov committed Apr 10, 2024
1 parent d55ff68 commit 7fa4d39
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 1 deletion.
2 changes: 2 additions & 0 deletions src/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ export class SingleEthereum extends ISingleEthereum {
public events: ISingleEthereum["events"] = new EventEmitter();
public engine: ISingleEthereum["engine"];
public metadata: ISingleEthereum["metadata"];
public chainId: number;

static async init(opts: SingleEthereumTypes.Options) {
const client = new SingleEthereum(opts);
Expand All @@ -24,6 +25,7 @@ export class SingleEthereum extends ISingleEthereum {
this.name = opts.name || CLIENT_CONTEXT;
this.core = opts.core;
this.logger = this.core.logger;
this.chainId = opts.chainId;
this.engine = new Engine(this);
}

Expand Down
4 changes: 3 additions & 1 deletion src/controllers/engine.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import {

export class Engine extends ISingleEthereumEngine {
public web3wallet: IWeb3Wallet;
public chainId?: number;
public chainId: number;
private pendingInternalRequests: {
id: number;
resolve: <T>(value?: T | PromiseLike<T>) => void;
Expand All @@ -30,11 +30,13 @@ export class Engine extends ISingleEthereumEngine {

constructor(client: ISingleEthereumEngine["client"]) {
super(client);
this.chainId = 1;
// initialized in init()
this.web3wallet = {} as IWeb3Wallet;
}

public init = async () => {
this.chainId = this.client.chainId;
this.web3wallet = await Web3Wallet.init({
core: this.client.core,
metadata: this.client.metadata,
Expand Down
2 changes: 2 additions & 0 deletions src/types/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ export declare namespace SingleEthereumTypes {
core: ICore;
metadata: Metadata;
name?: string;
chainId: number;
}

type Metadata = CoreTypes.Metadata;
Expand Down Expand Up @@ -95,6 +96,7 @@ export abstract class ISingleEthereum {
public abstract logger: Logger;
public abstract core: ICore;
public abstract metadata: SingleEthereumTypes.Metadata;
public abstract chainId: number;

constructor(public opts: SingleEthereumTypes.Options) {}

Expand Down
1 change: 1 addition & 0 deletions test/sign.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ describe("Sign Integration", () => {
core,
name: "wallet",
metadata: {} as any,
chainId: 1,
});

// first pair and approve session
Expand Down

0 comments on commit 7fa4d39

Please sign in to comment.