varaconnect
Version:
SDK to connect WalletConnect with Vara Network
41 lines (40 loc) • 1.49 kB
JavaScript
import { TypeRegistry } from "@polkadot/types";
import { CAIP_ID_MAP } from "../constants/constants";
export class VaraSigner {
constructor(client, session) {
this.id = 0;
this.signPayload = async (payload) => {
const chainId = CAIP_ID_MAP["vara"];
let request = {
topic: this.session.topic,
chainId,
request: {
id: 1,
jsonrpc: "2.0",
method: "polkadot_signTransaction",
params: { address: payload.address, transactionPayload: payload },
},
};
let { signature } = await this.client.request(request);
return { id: ++this.id, signature };
};
this.signRaw = async (raw) => {
const chainId = CAIP_ID_MAP["vara"];
let request = {
topic: this.session.topic,
chainId,
request: {
id: 1,
jsonrpc: "2.0",
method: "polkadot_signMessage",
params: { address: raw.address, message: raw.data },
},
};
let { signature } = await this.client.request(request);
return { id: ++this.id, signature };
};
this.client = client;
this.session = session;
this.registry = new TypeRegistry();
}
}