@beraji/wallet-sdk
Version:
Beraji: Distributed Secret Sharing.
95 lines • 4.04 kB
JavaScript
;
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());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BAuth = exports.TELE_APPS = exports.RPCS = exports.MsgStatus = exports.TxStatus = void 0;
const axios_1 = __importDefault(require("axios"));
var TxStatus;
(function (TxStatus) {
TxStatus[TxStatus["Failed"] = -2] = "Failed";
TxStatus[TxStatus["Rejected"] = -1] = "Rejected";
TxStatus[TxStatus["Init"] = 0] = "Init";
TxStatus[TxStatus["Pending"] = 1] = "Pending";
TxStatus[TxStatus["Success"] = 2] = "Success";
})(TxStatus || (exports.TxStatus = TxStatus = {}));
var MsgStatus;
(function (MsgStatus) {
MsgStatus[MsgStatus["Rejected"] = -1] = "Rejected";
MsgStatus[MsgStatus["Init"] = 0] = "Init";
MsgStatus[MsgStatus["Signed"] = 1] = "Signed";
})(MsgStatus || (exports.MsgStatus = MsgStatus = {}));
exports.RPCS = {
local: 'http://localhost:8080',
test: 'https://beras-user.fly.dev',
prod: 'https://api.user.beraji.com',
};
exports.TELE_APPS = {
local: 'https://t.me/dev_beraji_bot/userapp',
test: 'https://t.me/dev_beraji_bot/userapp',
prod: 'https://t.me/dev_beraji_bot/userapp',
};
class BAuth {
constructor(params) {
this.net = params.net || 'prod';
}
get conPub() {
const client = axios_1.default.create({
baseURL: exports.RPCS[this.net],
});
client.interceptors.response.use((response) => response, (error) => {
var _a;
const err = ((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || error.message;
return Promise.reject(err);
});
return client;
}
get conAuth() {
const token = this.getToken();
const client = axios_1.default.create({
baseURL: exports.RPCS[this.net],
headers: { Authorization: `Bearer ${token}` },
});
client.interceptors.response.use((response) => response, (error) => {
var _a;
const err = ((_a = error === null || error === void 0 ? void 0 : error.response) === null || _a === void 0 ? void 0 : _a.data) || error.message;
return Promise.reject(err);
});
return client;
}
getToken() {
let token = this._token;
if (!token)
throw new Error('Token is not set, please sign in first');
if (token.startsWith('Bearer '))
token = token.replace('Bearer ', '');
return token;
}
setToken(token) {
this._token = token;
}
getAuthData(signer) {
return __awaiter(this, void 0, void 0, function* () {
const { data: { expired_at, message }, } = yield this.conPub.get(`public/api/v1/users/auth-message/${signer.address}`);
const signature = yield signer.signMessageEVM(message);
return { address: signer.address, expired_at, signature };
});
}
getSessionData(sessionId) {
return __awaiter(this, void 0, void 0, function* () {
const { data } = yield this.conPub.get(`public/api/v1/sessions/${sessionId}`, {});
return data;
});
}
}
exports.BAuth = BAuth;
//# sourceMappingURL=constants.js.map