@terra-money/terra.js
Advanced tools
Comparing version 0.4.19-beta.0 to 0.4.19-beta.1
@@ -14,9 +14,30 @@ import { Msg } from '../core/Msg'; | ||
} | ||
/** | ||
* Extension class is for communicating between page and extension | ||
*/ | ||
export declare class Extension { | ||
static instance: Extension; | ||
private inpageStream; | ||
/** | ||
* Using singleton pattern, hence every instanciation will return same value | ||
*/ | ||
constructor(); | ||
private generateId; | ||
get isAvailable(): boolean; | ||
/** | ||
* Indicates the Station Extension is installed and availble | ||
*/ | ||
isAvailable(): Promise<boolean>; | ||
/** | ||
* low level function for sending message to extension. | ||
* Do not use this function unless you know what you are doing. | ||
*/ | ||
send(data: SendData): void; | ||
/** | ||
* Listen to events from the Extension. | ||
* You will receive an event after calling connect, sign, or post. | ||
* payload structures are described on each function in @return section. | ||
* | ||
* @param name name of event | ||
* @param callback will be called when `name` event emits | ||
*/ | ||
on(name: string, callback: (payload: any) => void): void; | ||
@@ -26,4 +47,4 @@ /** | ||
* | ||
* @returns {string} name 'onConnect' | ||
* @returns {AccAddress} payload Terra account address | ||
* @return {string} name 'onConnect' | ||
* @return {AccAddress} payload Terra account address | ||
*/ | ||
@@ -30,0 +51,0 @@ connect(): number; |
@@ -13,6 +13,47 @@ "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()); | ||
}); | ||
}; | ||
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 }); | ||
exports.Extension = void 0; | ||
// Singleton class for communicating between page and extension | ||
/** | ||
* Extension class is for communicating between page and extension | ||
*/ | ||
var Extension = /** @class */ (function () { | ||
/** | ||
* Using singleton pattern, hence every instanciation will return same value | ||
*/ | ||
function Extension() { | ||
@@ -32,14 +73,47 @@ if (Extension.instance) { | ||
}; | ||
Object.defineProperty(Extension.prototype, "isAvailable", { | ||
get: function () { | ||
return this.inpageStream._init; | ||
}, | ||
enumerable: false, | ||
configurable: true | ||
}); | ||
// low level function for sending message to extension. | ||
// Do not use this function unless you know what you are doing. | ||
/** | ||
* Indicates the Station Extension is installed and availble | ||
*/ | ||
Extension.prototype.isAvailable = function () { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var _a, _init, _sync, startTime; | ||
return __generator(this, function (_b) { | ||
switch (_b.label) { | ||
case 0: | ||
_a = this.inpageStream, _init = _a._init, _sync = _a._sync; | ||
// Early exit if possible. | ||
if (_init || _sync) { | ||
return [2 /*return*/, true]; | ||
} | ||
startTime = Date.now(); | ||
_b.label = 1; | ||
case 1: | ||
if (!(Date.now() - startTime < 1500)) return [3 /*break*/, 3]; | ||
if (_init || _sync) { | ||
return [2 /*return*/, true]; | ||
} | ||
return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 150); })]; | ||
case 2: | ||
_b.sent(); | ||
return [3 /*break*/, 1]; | ||
case 3: return [2 /*return*/, false]; | ||
} | ||
}); | ||
}); | ||
}; | ||
/** | ||
* low level function for sending message to extension. | ||
* Do not use this function unless you know what you are doing. | ||
*/ | ||
Extension.prototype.send = function (data) { | ||
this.inpageStream.write(data); | ||
}; | ||
/** | ||
* Listen to events from the Extension. | ||
* You will receive an event after calling connect, sign, or post. | ||
* payload structures are described on each function in @return section. | ||
* | ||
* @param name name of event | ||
* @param callback will be called when `name` event emits | ||
*/ | ||
Extension.prototype.on = function (name, callback) { | ||
@@ -53,4 +127,4 @@ this.inpageStream.on('data', function (data) { | ||
* | ||
* @returns {string} name 'onConnect' | ||
* @returns {AccAddress} payload Terra account address | ||
* @return {string} name 'onConnect' | ||
* @return {AccAddress} payload Terra account address | ||
*/ | ||
@@ -57,0 +131,0 @@ Extension.prototype.connect = function () { |
{ | ||
"version": "0.4.19-beta.0", | ||
"version": "0.4.19-beta.1", | ||
"license": "MIT", | ||
@@ -4,0 +4,0 @@ "main": "dist/index.js", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
4832385
16321