UNPKG

@beraji/wallet-sdk

Version:

Beraji: Distributed Secret Sharing.

63 lines 2.73 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.BDevice = void 0; const constants_1 = require("./constants"); const utils_1 = require("../utils"); const bwallet_1 = require("../bwallet"); class BDevice extends constants_1.BAuth { constructor(params) { super({ net: params.net }); this.signer = new bwallet_1.BWallet(params.divicePriv); } createSession(app_id) { return __awaiter(this, void 0, void 0, function* () { const authData = yield this.getAuthData(this.signer); const { data } = yield this.conPub.post('public/api/v1/sessions', { app_id, device_pub: authData.address, device_sig: authData.signature, expired_at: authData.expired_at, }); return data; }); } signInBySession() { return __awaiter(this, void 0, void 0, function* () { const authData = yield this.getAuthData(this.signer); const { data } = yield this.conPub.post('public/api/v1/users/signin-session', { device_pub: authData.address, device_sig: authData.signature, expired_at: authData.expired_at, }); return data; }); } waitSessionApproved() { return __awaiter(this, void 0, void 0, function* () { return (0, utils_1.waitTo)({ fn: () => this.getSessionData(this.signer.address), condition: (result) => result.session.status === 'active', timeout: 5 * 60 * 1000, intervalTime: 3000, }); }); } getLoginLink() { return __awaiter(this, void 0, void 0, function* () { const app = constants_1.TELE_APPS[this.net]; const startapp = `${new Date().getTime()}_login_${this.signer.address}`; return `${app}?startapp=${startapp}`; }); } } exports.BDevice = BDevice; //# sourceMappingURL=bdevice.js.map