UNPKG

eosplayer

Version:

eosplayer is the glue layer of eosjs, which is packaged based on eosjs and provides better usability for the application layer. It can be used on browsers already installed scatter or in Dapp wallets.

113 lines 5.07 kB
'use strict'; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { 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) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); var libs_1 = require("../types/libs"); var symEosClient = Symbol('sym::EosClient'); var symGetIdentity = Symbol('sym::GetIdentity'); /** * EOSProvider - defined the MUST interfaces of a player * @author kinghand@foxmail.com */ var EOSProvider = /** @class */ (function () { function EOSProvider() { this.field = {}; } Object.defineProperty(EOSProvider.prototype, "eosClient", { /** * get or create scatter * @return {eosAPI} */ get: function () { if (this.field[symEosClient]) { return this.field[symEosClient]; } else { throw new Error("method not yet implemented: this interface should be implement by the specific class."); } }, enumerable: true, configurable: true }); /** * getIdentity of cur scatter user * @return {Promise<{IIdentity}>} */ EOSProvider.prototype.getIdentity = function () { return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) { if (this.field[symGetIdentity]) { return [2 /*return*/, this.field[symGetIdentity]]; } else { throw new Error("method not yet implemented: this interface should be implement by the specific class."); } return [2 /*return*/]; }); }); }; /** * get auth structure from identity * @return {Object} - { authorization : [ 'name@authority' ] } */ EOSProvider.prototype.getAuth = function () { return __awaiter(this, void 0, void 0, function () { var identity; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4 /*yield*/, this.getIdentity()]; case 1: identity = _a.sent(); return [2 /*return*/, { authorization: [identity.name + "@" + identity.authority], }]; } }); }); }; EOSProvider.prototype.initFromConf = function (conf, account) { if (conf) { var eos_1 = libs_1.Eos(conf); this.field[symEosClient] = function () { return eos_1; }; } if (account) { this.field[symGetIdentity] = account; } }; return EOSProvider; }()); exports.default = EOSProvider; //# sourceMappingURL=eosProvider.js.map