on master help sign in
bridge/src/lib/invite.js
38 lines 1.1 kB history raw
1import * as wg from './walletgen';
3import JSZip from 'jszip';
4import saveAs from 'file-saver';
6export async function generateWallet(point, boot) {
7 const ticket = await wg.makeTicket(point);
8 const wallet = await wg.generateWallet(point, ticket, boot);
9 return wallet;
12//TODO should be moved to lib/walletgen
13export async function downloadWallet(paperWallets, keyfile, keyfilename) {
14 if (paperWallets.length === 1) {
15 const zip = new JSZip();
17 const wallet = paperWallets[0];
18 const ship = wallet.wallet.meta.patp.replace('~', '');
19 const zipName = `${ship}-passport`;
20 const folder = zip.folder(zipName);
22 wallet.frames.forEach(frame => {
23 const filename = `${ship}-${frame.givenName}.png`;
24 folder.file(filename, frame.image);
25 });
27 if (keyfile && keyfilename) {
28 folder.file(keyfilename, keyfile);
29 }
31 await zip.generateAsync({ type: 'blob' }).then(content => {
32 saveAs(content, `${zipName}.zip`);
33 // resolve(true);
34 });
35 } else {
36 console.error('downloadWallet() can only download 1 wallet at a time.');
37 }