import { ApiPromise, HttpProvider } from '@polkadot/api'
const httpProvider = new HttpProvider('https://rpc.polkadot.io');
const api = await ApiPromise({ provider: httpProvider });
// Wait until we are ready and connected
await api.isReady;
const blockNumber = await api.rpc.chain.getHeader()
const blockHash = await api.rpc.chain.getBlockHash(blockNumber.number.toHex())
// create SignerPayload
const signerPayload = api.createType('SignerPayload', {
genesisHash: api.genesisHash,
runtimeVersion: api.runtimeVersion,
version: api.extrinsicVersion,
blockHash: blockHash,
blockNumber: blockNumber.number,
era: api.createType('ExtrinsicEra', {
current: blockNumber.number,
period: 50
}),
nonce,
address: to,
method: api.tx.balances.transfer(to, amount).method,
});
const sigHash = signerPayload.toRaw().data
const transactionJson = {
coinType: DcentWebConnector.coinType.POLKADOT,
sigHash: sigHash,
path: `m/44'/354'/0'/0/0`,
decimals, // 12
fee,
symbol: 'DOT',
}
var result
try {
result = await DcentWebConnector.getPolKadotSignedTransaction(transactionJson);
} catch (e) {
console.log(e)
result = e
}