@xelis/sdk 0.10.9 → 0.10.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/rpc/websocket.js +9 -13
- package/dist/cjs/wallet/types.js +1 -7
- package/dist/cjs/xswd/relayer/app.js +62 -0
- package/dist/cjs/xswd/relayer/index.css +37 -0
- package/dist/cjs/xswd/relayer/index.js +48 -0
- package/dist/cjs/xswd/types.js +0 -7
- package/dist/esm/rpc/websocket.js +9 -13
- package/dist/esm/wallet/types.js +0 -6
- package/dist/esm/xswd/relayer/app.js +56 -0
- package/dist/esm/xswd/relayer/index.css +37 -0
- package/dist/esm/xswd/relayer/index.js +46 -0
- package/dist/esm/xswd/types.js +1 -6
- package/dist/types/wallet/types.d.ts +0 -13
- package/dist/types/xswd/relayer/app.d.ts +14 -0
- package/dist/types/xswd/relayer/index.d.ts +20 -0
- package/dist/types/xswd/types.d.ts +1 -7
- package/dist/types/xswd/websocket.d.ts +1 -1
- package/package.json +13 -5
|
@@ -259,25 +259,21 @@ var WSRPC = /** @class */ (function () {
|
|
|
259
259
|
var onMessage = function (msgEvent) {
|
|
260
260
|
if (typeof msgEvent.data === "string") {
|
|
261
261
|
var data = (0, parse_json_1.parseJSON)(msgEvent.data);
|
|
262
|
-
|
|
262
|
+
if (data.error && data.error.message) {
|
|
263
|
+
return reject(new Error(data.error.message));
|
|
264
|
+
}
|
|
263
265
|
if (Array.isArray(data) && data.length > 0 && data[0].id === id) {
|
|
264
266
|
//@ts-ignore
|
|
265
|
-
resolve(data);
|
|
266
|
-
valid = true;
|
|
267
|
+
return resolve(data);
|
|
267
268
|
}
|
|
268
|
-
|
|
269
|
-
resolve(data);
|
|
270
|
-
valid = true;
|
|
269
|
+
if (data.id === id) {
|
|
270
|
+
return resolve(data);
|
|
271
271
|
}
|
|
272
|
-
|
|
272
|
+
if (data.id === null && id === 0) {
|
|
273
273
|
// special case with xswd sending first call will return null id
|
|
274
|
-
resolve(data);
|
|
275
|
-
valid = true;
|
|
276
|
-
}
|
|
277
|
-
if (valid) {
|
|
278
|
-
clearTimeout(timeoutId);
|
|
279
|
-
_this.socket && _this.socket.removeEventListener("message", onMessage);
|
|
274
|
+
return resolve(data);
|
|
280
275
|
}
|
|
276
|
+
reject(new Error("invalid data"));
|
|
281
277
|
}
|
|
282
278
|
};
|
|
283
279
|
_this.socket.addEventListener("message", onMessage);
|
package/dist/cjs/wallet/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
-
exports.
|
|
3
|
+
exports.RPCEvent = exports.RPCMethod = exports.ElementType = exports.ValueType = exports.TxRole = void 0;
|
|
4
4
|
var TxRole;
|
|
5
5
|
(function (TxRole) {
|
|
6
6
|
TxRole["Sender"] = "sender";
|
|
@@ -78,9 +78,3 @@ var RPCEvent;
|
|
|
78
78
|
RPCEvent["Online"] = "online";
|
|
79
79
|
RPCEvent["Offline"] = "offline";
|
|
80
80
|
})(RPCEvent = exports.RPCEvent || (exports.RPCEvent = {}));
|
|
81
|
-
var Permission;
|
|
82
|
-
(function (Permission) {
|
|
83
|
-
Permission[Permission["Ask"] = 0] = "Ask";
|
|
84
|
-
Permission[Permission["AcceptAlways"] = 1] = "AcceptAlways";
|
|
85
|
-
Permission[Permission["DenyAlways"] = 2] = "DenyAlways";
|
|
86
|
-
})(Permission = exports.Permission || (exports.Permission = {}));
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.App = void 0;
|
|
7
|
+
var qrcode_1 = __importDefault(require("qrcode"));
|
|
8
|
+
var App = /** @class */ (function () {
|
|
9
|
+
function App(relayer) {
|
|
10
|
+
var _this = this;
|
|
11
|
+
this.relayer = relayer;
|
|
12
|
+
this.element = document.createElement("div");
|
|
13
|
+
this.element.classList.add("xelis-xswd-relayer");
|
|
14
|
+
this.contentElement = document.createElement("div");
|
|
15
|
+
this.contentElement.classList.add("xelis-xswd-relayer-content");
|
|
16
|
+
this.element.appendChild(this.contentElement);
|
|
17
|
+
this.loadingElement = document.createElement("div");
|
|
18
|
+
this.loadingElement.innerHTML = "\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.0001 12C20.0001 13.3811 19.6425 14.7386 18.9623 15.9405C18.282 17.1424 17.3022 18.1477 16.1182 18.8587C14.9341 19.5696 13.5862 19.9619 12.2056 19.9974C10.825 20.0328 9.45873 19.7103 8.23975 19.0612\" stroke=\"currentColor\" stroke-width=\"3.55556\" stroke-linecap=\"round\"/>\n </svg>\n ";
|
|
19
|
+
this.loadingElement.classList.add("xelis-xswd-relayer-loading");
|
|
20
|
+
this.errElement = document.createElement("div");
|
|
21
|
+
this.errElement.classList.add("xelis-xswd-relayer-error");
|
|
22
|
+
this.qrCodeElement = document.createElement("div");
|
|
23
|
+
this.qrCodeElement.classList.add("xelis-xswd-relayer-qrcode");
|
|
24
|
+
this.qrCodeElement.innerHTML = "\n <div>XSWD Relayer</div>\n <canvas></canvas>\n ";
|
|
25
|
+
this.element.addEventListener("click", function (e) {
|
|
26
|
+
// close the app if clicking outside
|
|
27
|
+
if (_this.element.isEqualNode(e.target)) {
|
|
28
|
+
_this.relayer.close();
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
this.relayer.props.parent.appendChild(this.element);
|
|
32
|
+
this.setLoading();
|
|
33
|
+
}
|
|
34
|
+
App.prototype.clear = function () {
|
|
35
|
+
this.loadingElement.remove();
|
|
36
|
+
this.errElement.remove();
|
|
37
|
+
this.qrCodeElement.remove();
|
|
38
|
+
};
|
|
39
|
+
App.prototype.setError = function (msg) {
|
|
40
|
+
this.clear();
|
|
41
|
+
this.errElement.innerHTML = "error: ".concat(msg);
|
|
42
|
+
this.contentElement.appendChild(this.errElement);
|
|
43
|
+
};
|
|
44
|
+
App.prototype.setLoading = function () {
|
|
45
|
+
this.clear();
|
|
46
|
+
this.contentElement.appendChild(this.loadingElement);
|
|
47
|
+
};
|
|
48
|
+
App.prototype.setQRCode = function (channelId) {
|
|
49
|
+
this.clear();
|
|
50
|
+
var canvas = this.qrCodeElement.querySelector("canvas");
|
|
51
|
+
var qrCodeData = JSON.stringify({
|
|
52
|
+
inner: {},
|
|
53
|
+
channel_id: channelId,
|
|
54
|
+
relayer: this.relayer.props.url,
|
|
55
|
+
encryption_mode: this.relayer.props.encryption_mode
|
|
56
|
+
});
|
|
57
|
+
qrcode_1["default"].toCanvas(canvas, qrCodeData);
|
|
58
|
+
this.contentElement.appendChild(this.qrCodeElement);
|
|
59
|
+
};
|
|
60
|
+
return App;
|
|
61
|
+
}());
|
|
62
|
+
exports.App = App;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.xelis-xswd-relayer {
|
|
2
|
+
position: fixed;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
bottom: 0;
|
|
6
|
+
right: 0;
|
|
7
|
+
background-color: rgba(0, 0, 0, 0.5);
|
|
8
|
+
backdrop-filter: blur(10px);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.xelis-xswd-relayer-content {
|
|
12
|
+
position: absolute;
|
|
13
|
+
top: 50%;
|
|
14
|
+
left: 50%;
|
|
15
|
+
translate: -50% -50%;
|
|
16
|
+
background-color: aquamarine;
|
|
17
|
+
filter: drop-shadow(0px 0px 25px black);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.xelis-xswd-relayer-error {}
|
|
21
|
+
|
|
22
|
+
.xelis-xswd-relayer-loading {
|
|
23
|
+
width: 50px;
|
|
24
|
+
height: 50px;
|
|
25
|
+
color: black;
|
|
26
|
+
animation: xelis-xswd-relayer-loading-animation .75s infinite;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@keyframes xelis-xswd-relayer-loading-animation {
|
|
30
|
+
100% {
|
|
31
|
+
rotate: 360deg;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.xelis-xswd-relayer-qrcode {}
|
|
36
|
+
|
|
37
|
+
.xelis-xswd-relayer-qrcode canvas {}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
var app_1 = require("./app");
|
|
4
|
+
var Relayer = /** @class */ (function () {
|
|
5
|
+
function Relayer(props) {
|
|
6
|
+
var _this = this;
|
|
7
|
+
this.onOpen = function (e) {
|
|
8
|
+
_this.message_timeout = window.setTimeout(function () {
|
|
9
|
+
_this.app.setError("timeout occured (did not receive any message)");
|
|
10
|
+
}, 3000);
|
|
11
|
+
};
|
|
12
|
+
this.onMessage = function (e) {
|
|
13
|
+
window.clearTimeout(_this.message_timeout);
|
|
14
|
+
try {
|
|
15
|
+
console.log(e);
|
|
16
|
+
var data = JSON.parse(e.data);
|
|
17
|
+
if (data.channel_id) {
|
|
18
|
+
_this.app.setQRCode(data.channel_id);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
_this.app.setError("channel id not found");
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
_this.app.setError("invalid data format");
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
this.onError = function (e) {
|
|
29
|
+
_this.app.setError("connection failed");
|
|
30
|
+
};
|
|
31
|
+
this.onClose = function (e) {
|
|
32
|
+
_this.app.setError("connection closed");
|
|
33
|
+
};
|
|
34
|
+
this.props = props;
|
|
35
|
+
this.app = new app_1.App(this);
|
|
36
|
+
this.ws = new WebSocket(this.props.url);
|
|
37
|
+
this.ws.addEventListener("open", this.onOpen);
|
|
38
|
+
this.ws.addEventListener("message", this.onMessage);
|
|
39
|
+
this.ws.addEventListener("error", this.onError);
|
|
40
|
+
this.ws.addEventListener("close", this.onClose);
|
|
41
|
+
}
|
|
42
|
+
Relayer.prototype.close = function () {
|
|
43
|
+
this.ws.close();
|
|
44
|
+
this.app.element.remove();
|
|
45
|
+
};
|
|
46
|
+
return Relayer;
|
|
47
|
+
}());
|
|
48
|
+
exports["default"] = Relayer;
|
package/dist/cjs/xswd/types.js
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
exports.__esModule = true;
|
|
3
|
-
exports.Permission = void 0;
|
|
4
|
-
var Permission;
|
|
5
|
-
(function (Permission) {
|
|
6
|
-
Permission[Permission["Ask"] = 0] = "Ask";
|
|
7
|
-
Permission[Permission["AcceptAlways"] = 1] = "AcceptAlways";
|
|
8
|
-
Permission[Permission["DenyAlways"] = 2] = "DenyAlways";
|
|
9
|
-
})(Permission = exports.Permission || (exports.Permission = {}));
|
|
@@ -253,25 +253,21 @@ var WSRPC = /** @class */ (function () {
|
|
|
253
253
|
var onMessage = function (msgEvent) {
|
|
254
254
|
if (typeof msgEvent.data === "string") {
|
|
255
255
|
var data = parseJSON(msgEvent.data);
|
|
256
|
-
|
|
256
|
+
if (data.error && data.error.message) {
|
|
257
|
+
return reject(new Error(data.error.message));
|
|
258
|
+
}
|
|
257
259
|
if (Array.isArray(data) && data.length > 0 && data[0].id === id) {
|
|
258
260
|
//@ts-ignore
|
|
259
|
-
resolve(data);
|
|
260
|
-
valid = true;
|
|
261
|
+
return resolve(data);
|
|
261
262
|
}
|
|
262
|
-
|
|
263
|
-
resolve(data);
|
|
264
|
-
valid = true;
|
|
263
|
+
if (data.id === id) {
|
|
264
|
+
return resolve(data);
|
|
265
265
|
}
|
|
266
|
-
|
|
266
|
+
if (data.id === null && id === 0) {
|
|
267
267
|
// special case with xswd sending first call will return null id
|
|
268
|
-
resolve(data);
|
|
269
|
-
valid = true;
|
|
270
|
-
}
|
|
271
|
-
if (valid) {
|
|
272
|
-
clearTimeout(timeoutId);
|
|
273
|
-
_this.socket && _this.socket.removeEventListener("message", onMessage);
|
|
268
|
+
return resolve(data);
|
|
274
269
|
}
|
|
270
|
+
reject(new Error("invalid data"));
|
|
275
271
|
}
|
|
276
272
|
};
|
|
277
273
|
_this.socket.addEventListener("message", onMessage);
|
package/dist/esm/wallet/types.js
CHANGED
|
@@ -75,9 +75,3 @@ export var RPCEvent;
|
|
|
75
75
|
RPCEvent["Online"] = "online";
|
|
76
76
|
RPCEvent["Offline"] = "offline";
|
|
77
77
|
})(RPCEvent || (RPCEvent = {}));
|
|
78
|
-
export var Permission;
|
|
79
|
-
(function (Permission) {
|
|
80
|
-
Permission[Permission["Ask"] = 0] = "Ask";
|
|
81
|
-
Permission[Permission["AcceptAlways"] = 1] = "AcceptAlways";
|
|
82
|
-
Permission[Permission["DenyAlways"] = 2] = "DenyAlways";
|
|
83
|
-
})(Permission || (Permission = {}));
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import QRCode from 'qrcode';
|
|
2
|
+
var App = /** @class */ (function () {
|
|
3
|
+
function App(relayer) {
|
|
4
|
+
var _this = this;
|
|
5
|
+
this.relayer = relayer;
|
|
6
|
+
this.element = document.createElement("div");
|
|
7
|
+
this.element.classList.add("xelis-xswd-relayer");
|
|
8
|
+
this.contentElement = document.createElement("div");
|
|
9
|
+
this.contentElement.classList.add("xelis-xswd-relayer-content");
|
|
10
|
+
this.element.appendChild(this.contentElement);
|
|
11
|
+
this.loadingElement = document.createElement("div");
|
|
12
|
+
this.loadingElement.innerHTML = "\n <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M20.0001 12C20.0001 13.3811 19.6425 14.7386 18.9623 15.9405C18.282 17.1424 17.3022 18.1477 16.1182 18.8587C14.9341 19.5696 13.5862 19.9619 12.2056 19.9974C10.825 20.0328 9.45873 19.7103 8.23975 19.0612\" stroke=\"currentColor\" stroke-width=\"3.55556\" stroke-linecap=\"round\"/>\n </svg>\n ";
|
|
13
|
+
this.loadingElement.classList.add("xelis-xswd-relayer-loading");
|
|
14
|
+
this.errElement = document.createElement("div");
|
|
15
|
+
this.errElement.classList.add("xelis-xswd-relayer-error");
|
|
16
|
+
this.qrCodeElement = document.createElement("div");
|
|
17
|
+
this.qrCodeElement.classList.add("xelis-xswd-relayer-qrcode");
|
|
18
|
+
this.qrCodeElement.innerHTML = "\n <div>XSWD Relayer</div>\n <canvas></canvas>\n ";
|
|
19
|
+
this.element.addEventListener("click", function (e) {
|
|
20
|
+
// close the app if clicking outside
|
|
21
|
+
if (_this.element.isEqualNode(e.target)) {
|
|
22
|
+
_this.relayer.close();
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
this.relayer.props.parent.appendChild(this.element);
|
|
26
|
+
this.setLoading();
|
|
27
|
+
}
|
|
28
|
+
App.prototype.clear = function () {
|
|
29
|
+
this.loadingElement.remove();
|
|
30
|
+
this.errElement.remove();
|
|
31
|
+
this.qrCodeElement.remove();
|
|
32
|
+
};
|
|
33
|
+
App.prototype.setError = function (msg) {
|
|
34
|
+
this.clear();
|
|
35
|
+
this.errElement.innerHTML = "error: ".concat(msg);
|
|
36
|
+
this.contentElement.appendChild(this.errElement);
|
|
37
|
+
};
|
|
38
|
+
App.prototype.setLoading = function () {
|
|
39
|
+
this.clear();
|
|
40
|
+
this.contentElement.appendChild(this.loadingElement);
|
|
41
|
+
};
|
|
42
|
+
App.prototype.setQRCode = function (channelId) {
|
|
43
|
+
this.clear();
|
|
44
|
+
var canvas = this.qrCodeElement.querySelector("canvas");
|
|
45
|
+
var qrCodeData = JSON.stringify({
|
|
46
|
+
inner: {},
|
|
47
|
+
channel_id: channelId,
|
|
48
|
+
relayer: this.relayer.props.url,
|
|
49
|
+
encryption_mode: this.relayer.props.encryption_mode
|
|
50
|
+
});
|
|
51
|
+
QRCode.toCanvas(canvas, qrCodeData);
|
|
52
|
+
this.contentElement.appendChild(this.qrCodeElement);
|
|
53
|
+
};
|
|
54
|
+
return App;
|
|
55
|
+
}());
|
|
56
|
+
export { App };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
.xelis-xswd-relayer {
|
|
2
|
+
position: fixed;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
bottom: 0;
|
|
6
|
+
right: 0;
|
|
7
|
+
background-color: rgba(0, 0, 0, 0.5);
|
|
8
|
+
backdrop-filter: blur(10px);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.xelis-xswd-relayer-content {
|
|
12
|
+
position: absolute;
|
|
13
|
+
top: 50%;
|
|
14
|
+
left: 50%;
|
|
15
|
+
translate: -50% -50%;
|
|
16
|
+
background-color: aquamarine;
|
|
17
|
+
filter: drop-shadow(0px 0px 25px black);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.xelis-xswd-relayer-error {}
|
|
21
|
+
|
|
22
|
+
.xelis-xswd-relayer-loading {
|
|
23
|
+
width: 50px;
|
|
24
|
+
height: 50px;
|
|
25
|
+
color: black;
|
|
26
|
+
animation: xelis-xswd-relayer-loading-animation .75s infinite;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@keyframes xelis-xswd-relayer-loading-animation {
|
|
30
|
+
100% {
|
|
31
|
+
rotate: 360deg;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.xelis-xswd-relayer-qrcode {}
|
|
36
|
+
|
|
37
|
+
.xelis-xswd-relayer-qrcode canvas {}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { App } from './app.js';
|
|
2
|
+
var Relayer = /** @class */ (function () {
|
|
3
|
+
function Relayer(props) {
|
|
4
|
+
var _this = this;
|
|
5
|
+
this.onOpen = function (e) {
|
|
6
|
+
_this.message_timeout = window.setTimeout(function () {
|
|
7
|
+
_this.app.setError("timeout occured (did not receive any message)");
|
|
8
|
+
}, 3000);
|
|
9
|
+
};
|
|
10
|
+
this.onMessage = function (e) {
|
|
11
|
+
window.clearTimeout(_this.message_timeout);
|
|
12
|
+
try {
|
|
13
|
+
console.log(e);
|
|
14
|
+
var data = JSON.parse(e.data);
|
|
15
|
+
if (data.channel_id) {
|
|
16
|
+
_this.app.setQRCode(data.channel_id);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
_this.app.setError("channel id not found");
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch (e) {
|
|
23
|
+
_this.app.setError("invalid data format");
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
this.onError = function (e) {
|
|
27
|
+
_this.app.setError("connection failed");
|
|
28
|
+
};
|
|
29
|
+
this.onClose = function (e) {
|
|
30
|
+
_this.app.setError("connection closed");
|
|
31
|
+
};
|
|
32
|
+
this.props = props;
|
|
33
|
+
this.app = new App(this);
|
|
34
|
+
this.ws = new WebSocket(this.props.url);
|
|
35
|
+
this.ws.addEventListener("open", this.onOpen);
|
|
36
|
+
this.ws.addEventListener("message", this.onMessage);
|
|
37
|
+
this.ws.addEventListener("error", this.onError);
|
|
38
|
+
this.ws.addEventListener("close", this.onClose);
|
|
39
|
+
}
|
|
40
|
+
Relayer.prototype.close = function () {
|
|
41
|
+
this.ws.close();
|
|
42
|
+
this.app.element.remove();
|
|
43
|
+
};
|
|
44
|
+
return Relayer;
|
|
45
|
+
}());
|
|
46
|
+
export default Relayer;
|
package/dist/esm/xswd/types.js
CHANGED
|
@@ -343,16 +343,3 @@ export declare enum RPCEvent {
|
|
|
343
343
|
Online = "online",
|
|
344
344
|
Offline = "offline"
|
|
345
345
|
}
|
|
346
|
-
export declare enum Permission {
|
|
347
|
-
Ask = 0,
|
|
348
|
-
AcceptAlways = 1,
|
|
349
|
-
DenyAlways = 2
|
|
350
|
-
}
|
|
351
|
-
export interface ApplicationData {
|
|
352
|
-
id: string;
|
|
353
|
-
name: string;
|
|
354
|
-
description: string;
|
|
355
|
-
url?: string;
|
|
356
|
-
permissions: Map<string, Permission>;
|
|
357
|
-
signature?: string;
|
|
358
|
-
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Relayer from './index';
|
|
2
|
+
export declare class App {
|
|
3
|
+
relayer: Relayer;
|
|
4
|
+
element: HTMLDivElement;
|
|
5
|
+
contentElement: HTMLDivElement;
|
|
6
|
+
qrCodeElement: HTMLDivElement;
|
|
7
|
+
loadingElement: HTMLDivElement;
|
|
8
|
+
errElement: HTMLDivElement;
|
|
9
|
+
constructor(relayer: Relayer);
|
|
10
|
+
clear(): void;
|
|
11
|
+
setError(msg: string): void;
|
|
12
|
+
setLoading(): void;
|
|
13
|
+
setQRCode(channelId: string): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { App } from './app';
|
|
2
|
+
export type RelayerEncryptionMode = null | "aes" | "chacha20poly1305";
|
|
3
|
+
export interface RelayerProps {
|
|
4
|
+
url: string;
|
|
5
|
+
encryption_mode: RelayerEncryptionMode;
|
|
6
|
+
parent: HTMLElement;
|
|
7
|
+
}
|
|
8
|
+
declare class Relayer {
|
|
9
|
+
ws: WebSocket;
|
|
10
|
+
app: App;
|
|
11
|
+
props: RelayerProps;
|
|
12
|
+
message_timeout?: number;
|
|
13
|
+
constructor(props: RelayerProps);
|
|
14
|
+
close(): void;
|
|
15
|
+
onOpen: (e: Event) => void;
|
|
16
|
+
onMessage: (e: MessageEvent) => void;
|
|
17
|
+
onError: (e: Event) => void;
|
|
18
|
+
onClose: (e: CloseEvent) => void;
|
|
19
|
+
}
|
|
20
|
+
export default Relayer;
|
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
export declare enum Permission {
|
|
2
|
-
Ask = 0,
|
|
3
|
-
AcceptAlways = 1,
|
|
4
|
-
DenyAlways = 2
|
|
5
|
-
}
|
|
6
1
|
export interface ApplicationData {
|
|
7
2
|
id: string;
|
|
8
3
|
name: string;
|
|
9
4
|
description: string;
|
|
10
5
|
url?: string;
|
|
11
|
-
permissions:
|
|
12
|
-
signature?: string;
|
|
6
|
+
permissions: string[];
|
|
13
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { WSRPC } from '../rpc/websocket';
|
|
2
|
-
import { ApplicationData } from '../wallet/types';
|
|
3
2
|
import { DaemonMethods } from '../daemon/websocket';
|
|
4
3
|
import { WalletMethods } from '../wallet/websocket';
|
|
4
|
+
import { ApplicationData } from './types';
|
|
5
5
|
export declare class WS extends WSRPC {
|
|
6
6
|
daemon: DaemonMethods;
|
|
7
7
|
wallet: WalletMethods;
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.10.
|
|
2
|
+
"version": "0.10.10",
|
|
3
3
|
"name": "@xelis/sdk",
|
|
4
4
|
"description": "Xelis software development kit for JS",
|
|
5
5
|
"exports": {
|
|
@@ -23,24 +23,32 @@
|
|
|
23
23
|
"test": "jest",
|
|
24
24
|
"compile": "tsc -b ./tsconfig.cjs.json ./tsconfig.esm.json ./tsconfig.types.json",
|
|
25
25
|
"fix-esm": "fix-esm-import-path ./dist/esm",
|
|
26
|
-
"clean": "
|
|
27
|
-
"
|
|
28
|
-
"
|
|
26
|
+
"clean": "rimraf ./dist",
|
|
27
|
+
"copy-css": "copyfiles -u 1 ./src/**/*.css ./dist/cjs && copyfiles -u 1 ./src/**/*.css ./dist/esm",
|
|
28
|
+
"build": "npm run clean && npm run compile && node create_esm_pkg.js && npm run fix-esm && npm run copy-css",
|
|
29
|
+
"prepublishOnly": "npm run build",
|
|
30
|
+
"publish-dev": "npm publish --tag beta",
|
|
31
|
+
"dev-relayer": "vite ./src/xswd/relayer/test"
|
|
29
32
|
},
|
|
30
33
|
"devDependencies": {
|
|
31
34
|
"@types/jest": "^29.4.0",
|
|
32
35
|
"@types/json-bigint": "^1.0.4",
|
|
36
|
+
"@types/qrcode": "^1.5.5",
|
|
33
37
|
"@types/react": "^18.2.23",
|
|
34
38
|
"@types/ws": "^8.5.4",
|
|
39
|
+
"copyfiles": "^2.4.1",
|
|
35
40
|
"fix-esm-import-path": "^1.10.1",
|
|
41
|
+
"rimraf": "^6.0.1",
|
|
36
42
|
"ts-jest": "^29.0.5",
|
|
37
|
-
"typescript": "^4.9.5"
|
|
43
|
+
"typescript": "^4.9.5",
|
|
44
|
+
"vite": "^7.0.5"
|
|
38
45
|
},
|
|
39
46
|
"dependencies": {
|
|
40
47
|
"await-to-js": "^3.0.0",
|
|
41
48
|
"isomorphic-ws": "^5.0.0",
|
|
42
49
|
"js-base64": "^3.7.6",
|
|
43
50
|
"json-bigint": "^1.0.0",
|
|
51
|
+
"qrcode": "^1.5.4",
|
|
44
52
|
"react": "^18.2.0",
|
|
45
53
|
"ws": "^8.12.1"
|
|
46
54
|
}
|