@multiversx/sdk-web-wallet-cross-window-provider 0.0.39 → 0.1.1
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/out/CrossWindowProvider/CrossWindowProvider.d.ts +2 -2
- package/out/CrossWindowProvider/CrossWindowProvider.js +17 -17
- package/out/CrossWindowProvider/CrossWindowProvider.js.map +1 -1
- package/out/WindowManager/WindowManager.d.ts +2 -1
- package/out/WindowManager/WindowManager.js +16 -16
- package/out/WindowManager/WindowManager.js.map +1 -1
- package/out/WindowManager/tests/windowManager.test.js +4 -4
- package/out/WindowManager/tests/windowManager.test.js.map +1 -1
- package/package.json +4 -1
- package/out/constants.d.ts +0 -7
- package/out/constants.js +0 -16
- package/out/constants.js.map +0 -1
- package/out/types.d.ts +0 -114
- package/out/types.js +0 -34
- package/out/types.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SignableMessage, Transaction } from '@multiversx/sdk-core';
|
|
2
|
-
import { CrossWindowProviderRequestEnums } from '
|
|
2
|
+
import { CrossWindowProviderRequestEnums } from '@multiversx/sdk-dapp-utils/out/enums/crossWindowProviderEnums';
|
|
3
3
|
interface ICrossWindowWalletAccount {
|
|
4
4
|
address: string;
|
|
5
5
|
signature?: string;
|
|
@@ -32,7 +32,7 @@ export declare class CrossWindowProvider {
|
|
|
32
32
|
signTransactions(transactions: Transaction[]): Promise<Transaction[]>;
|
|
33
33
|
guardTransactions(transactions: Transaction[]): Promise<Transaction[]>;
|
|
34
34
|
signMessage(message: SignableMessage): Promise<SignableMessage>;
|
|
35
|
-
cancelAction(): Promise<import("
|
|
35
|
+
cancelAction(): Promise<import("@multiversx/sdk-dapp-utils/out/types/crossWindowProviderTypes").PostMessageReturnType<CrossWindowProviderRequestEnums.cancelAction>> | undefined;
|
|
36
36
|
protected openPopupConsent(): Promise<boolean>;
|
|
37
37
|
}
|
|
38
38
|
export {};
|
|
@@ -11,9 +11,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.CrossWindowProvider = void 0;
|
|
13
13
|
const sdk_core_1 = require("@multiversx/sdk-core");
|
|
14
|
-
const
|
|
14
|
+
const crossWindowProviderConstants_1 = require("@multiversx/sdk-dapp-utils/out/constants/crossWindowProviderConstants");
|
|
15
|
+
const crossWindowProviderEnums_1 = require("@multiversx/sdk-dapp-utils/out/enums/crossWindowProviderEnums");
|
|
15
16
|
const errors_1 = require("../errors");
|
|
16
|
-
const types_1 = require("../types");
|
|
17
17
|
const WindowManager_1 = require("../WindowManager");
|
|
18
18
|
const PopupConsent_1 = require("./PopupConsent");
|
|
19
19
|
class CrossWindowProvider {
|
|
@@ -77,7 +77,7 @@ class CrossWindowProvider {
|
|
|
77
77
|
throw new errors_1.ErrCouldNotLogin();
|
|
78
78
|
}
|
|
79
79
|
const { payload: { data, error } } = yield this.windowManager.postMessage({
|
|
80
|
-
type:
|
|
80
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.loginRequest,
|
|
81
81
|
payload: {
|
|
82
82
|
token: this.accessToken
|
|
83
83
|
}
|
|
@@ -145,13 +145,13 @@ class CrossWindowProvider {
|
|
|
145
145
|
throw new errors_1.ErrTransactionCancelled();
|
|
146
146
|
}
|
|
147
147
|
const { type, payload: { data: signedPlainTransactions, error } } = yield this.windowManager.postMessage({
|
|
148
|
-
type:
|
|
148
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.signTransactionsRequest,
|
|
149
149
|
payload: transactions.map((tx) => tx.toPlainObject())
|
|
150
150
|
});
|
|
151
151
|
if (error || !signedPlainTransactions) {
|
|
152
152
|
throw new errors_1.ErrCouldNotSignTransactions();
|
|
153
153
|
}
|
|
154
|
-
if (type ===
|
|
154
|
+
if (type === crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.cancelResponse) {
|
|
155
155
|
throw new errors_1.ErrTransactionCancelled();
|
|
156
156
|
}
|
|
157
157
|
const hasTransactions = (signedPlainTransactions === null || signedPlainTransactions === void 0 ? void 0 : signedPlainTransactions.length) > 0;
|
|
@@ -169,13 +169,13 @@ class CrossWindowProvider {
|
|
|
169
169
|
throw new errors_1.ErrTransactionCancelled();
|
|
170
170
|
}
|
|
171
171
|
const { type, payload: { data: signedPlainTransactions, error } } = yield this.windowManager.postMessage({
|
|
172
|
-
type:
|
|
172
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.guardTransactionsRequest,
|
|
173
173
|
payload: transactions.map((tx) => tx.toPlainObject())
|
|
174
174
|
});
|
|
175
175
|
if (error || !signedPlainTransactions) {
|
|
176
176
|
throw new errors_1.ErrCouldNotSignTransactions();
|
|
177
177
|
}
|
|
178
|
-
if (type ===
|
|
178
|
+
if (type === crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.cancelResponse) {
|
|
179
179
|
throw new errors_1.ErrTransactionCancelled();
|
|
180
180
|
}
|
|
181
181
|
const hasTransactions = (signedPlainTransactions === null || signedPlainTransactions === void 0 ? void 0 : signedPlainTransactions.length) > 0;
|
|
@@ -193,7 +193,7 @@ class CrossWindowProvider {
|
|
|
193
193
|
throw new errors_1.ErrCouldNotSignMessage();
|
|
194
194
|
}
|
|
195
195
|
const { payload: { data, error } } = yield this.windowManager.postMessage({
|
|
196
|
-
type:
|
|
196
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.signMessageRequest,
|
|
197
197
|
payload: {
|
|
198
198
|
message: message.message.toString()
|
|
199
199
|
}
|
|
@@ -202,7 +202,7 @@ class CrossWindowProvider {
|
|
|
202
202
|
throw new errors_1.ErrCouldNotSignMessage();
|
|
203
203
|
}
|
|
204
204
|
const { status, signature } = data;
|
|
205
|
-
if (status !==
|
|
205
|
+
if (status !== crossWindowProviderEnums_1.SignMessageStatusEnum.signed) {
|
|
206
206
|
throw new errors_1.ErrCouldNotSignMessage();
|
|
207
207
|
}
|
|
208
208
|
message.applySignature(Buffer.from(String(signature), 'hex'));
|
|
@@ -211,12 +211,12 @@ class CrossWindowProvider {
|
|
|
211
211
|
}
|
|
212
212
|
cancelAction() {
|
|
213
213
|
var _a, _b;
|
|
214
|
-
const isWalletOpened = (_a = this.windowManager) === null || _a === void 0 ? void 0 : _a.isWalletOpened(
|
|
214
|
+
const isWalletOpened = (_a = this.windowManager) === null || _a === void 0 ? void 0 : _a.isWalletOpened(crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.cancelAction);
|
|
215
215
|
if (!isWalletOpened) {
|
|
216
216
|
return;
|
|
217
217
|
}
|
|
218
218
|
return (_b = this.windowManager) === null || _b === void 0 ? void 0 : _b.postMessage({
|
|
219
|
-
type:
|
|
219
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.cancelAction,
|
|
220
220
|
payload: undefined
|
|
221
221
|
});
|
|
222
222
|
}
|
|
@@ -224,24 +224,24 @@ class CrossWindowProvider {
|
|
|
224
224
|
var _a, _b, _c;
|
|
225
225
|
return __awaiter(this, void 0, void 0, function* () {
|
|
226
226
|
require('./PopupConsent');
|
|
227
|
-
const dialog = (_a =
|
|
228
|
-
const document =
|
|
227
|
+
const dialog = (_a = crossWindowProviderConstants_1.safeWindow.document) === null || _a === void 0 ? void 0 : _a.createElement('div');
|
|
228
|
+
const document = crossWindowProviderConstants_1.safeWindow.document;
|
|
229
229
|
if (!this._shouldShowConsentPopup || !document || !dialog) {
|
|
230
230
|
return true;
|
|
231
231
|
}
|
|
232
|
-
const popup = (_b =
|
|
232
|
+
const popup = (_b = crossWindowProviderConstants_1.safeWindow.document) === null || _b === void 0 ? void 0 : _b.createElement(PopupConsent_1.confirmationDialogTag);
|
|
233
233
|
popup.walletUrl = this.windowManager.walletUrl;
|
|
234
|
-
(_c =
|
|
234
|
+
(_c = crossWindowProviderConstants_1.safeWindow.document) === null || _c === void 0 ? void 0 : _c.body.appendChild(popup);
|
|
235
235
|
const popupConsentResponse = yield new Promise((resolve) => {
|
|
236
236
|
popup.onConfirm = () => {
|
|
237
237
|
var _a;
|
|
238
238
|
resolve(true);
|
|
239
|
-
(_a =
|
|
239
|
+
(_a = crossWindowProviderConstants_1.safeWindow.document) === null || _a === void 0 ? void 0 : _a.body.removeChild(popup);
|
|
240
240
|
};
|
|
241
241
|
popup.onCancel = () => {
|
|
242
242
|
var _a;
|
|
243
243
|
resolve(false);
|
|
244
|
-
(_a =
|
|
244
|
+
(_a = crossWindowProviderConstants_1.safeWindow.document) === null || _a === void 0 ? void 0 : _a.body.removeChild(popup);
|
|
245
245
|
};
|
|
246
246
|
});
|
|
247
247
|
this._shouldShowConsentPopup = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrossWindowProvider.js","sourceRoot":"","sources":["../../src/CrossWindowProvider/CrossWindowProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mDAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"CrossWindowProvider.js","sourceRoot":"","sources":["../../src/CrossWindowProvider/CrossWindowProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { CrossWindowProviderRequestEnums, CrossWindowProviderResponseEnums
|
|
1
|
+
import { CrossWindowProviderRequestEnums, CrossWindowProviderResponseEnums } from '@multiversx/sdk-dapp-utils/out/enums/crossWindowProviderEnums';
|
|
2
|
+
import { PostMessageParamsType, PostMessageReturnType, ReplyWithPostMessagePayloadType } from '@multiversx/sdk-dapp-utils/out/types/crossWindowProviderTypes';
|
|
2
3
|
export declare class WindowManager {
|
|
3
4
|
private _walletUrl;
|
|
4
5
|
private initialized;
|
|
@@ -10,20 +10,20 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.WindowManager = void 0;
|
|
13
|
-
const
|
|
13
|
+
const crossWindowProviderConstants_1 = require("@multiversx/sdk-dapp-utils/out/constants/crossWindowProviderConstants");
|
|
14
|
+
const crossWindowProviderEnums_1 = require("@multiversx/sdk-dapp-utils/out/enums/crossWindowProviderEnums");
|
|
14
15
|
const errors_1 = require("../errors");
|
|
15
|
-
const types_1 = require("../types");
|
|
16
16
|
class WindowManager {
|
|
17
17
|
constructor() {
|
|
18
18
|
var _a, _b;
|
|
19
19
|
this._walletUrl = '';
|
|
20
20
|
this.initialized = false;
|
|
21
21
|
this.walletWindow = null;
|
|
22
|
-
(_a =
|
|
22
|
+
(_a = crossWindowProviderConstants_1.safeWindow.addEventListener) === null || _a === void 0 ? void 0 : _a.call(crossWindowProviderConstants_1.safeWindow, 'beforeunload', () => {
|
|
23
23
|
var _a;
|
|
24
24
|
(_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
|
|
25
25
|
});
|
|
26
|
-
|
|
26
|
+
crossWindowProviderConstants_1.safeWindow.name = (_b = crossWindowProviderConstants_1.safeWindow.location) === null || _b === void 0 ? void 0 : _b.origin;
|
|
27
27
|
WindowManager._instance = this; // TODO: remove singleton
|
|
28
28
|
}
|
|
29
29
|
get walletUrl() {
|
|
@@ -43,7 +43,7 @@ class WindowManager {
|
|
|
43
43
|
});
|
|
44
44
|
}
|
|
45
45
|
isWalletOpened(type) {
|
|
46
|
-
return (type ===
|
|
46
|
+
return (type === crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.cancelAction &&
|
|
47
47
|
Boolean(this.walletWindow));
|
|
48
48
|
}
|
|
49
49
|
handshake(type) {
|
|
@@ -55,13 +55,13 @@ class WindowManager {
|
|
|
55
55
|
}
|
|
56
56
|
(_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
|
|
57
57
|
this.walletWindow =
|
|
58
|
-
(_c = (_b =
|
|
59
|
-
const { payload: isWalletReady } = yield this.listenOnce(
|
|
58
|
+
(_c = (_b = crossWindowProviderConstants_1.safeWindow.open) === null || _b === void 0 ? void 0 : _b.call(crossWindowProviderConstants_1.safeWindow, this.walletUrl, this.walletUrl)) !== null && _c !== void 0 ? _c : null;
|
|
59
|
+
const { payload: isWalletReady } = yield this.listenOnce(crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.handshakeResponse);
|
|
60
60
|
if (!isWalletReady) {
|
|
61
61
|
throw new errors_1.ErrCannotEstablishHandshake();
|
|
62
62
|
}
|
|
63
63
|
(_d = this.walletWindow) === null || _d === void 0 ? void 0 : _d.postMessage({
|
|
64
|
-
type:
|
|
64
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.finalizeHandshakeRequest
|
|
65
65
|
}, this.walletUrl);
|
|
66
66
|
this.addHandshakeChangeListener();
|
|
67
67
|
return true;
|
|
@@ -80,18 +80,18 @@ class WindowManager {
|
|
|
80
80
|
return;
|
|
81
81
|
}
|
|
82
82
|
switch (type) {
|
|
83
|
-
case
|
|
83
|
+
case crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.handshakeResponse:
|
|
84
84
|
if (payload === false) {
|
|
85
85
|
(_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
|
|
86
86
|
this.walletWindow = null;
|
|
87
|
-
(_b =
|
|
87
|
+
(_b = crossWindowProviderConstants_1.safeWindow.removeEventListener) === null || _b === void 0 ? void 0 : _b.call(crossWindowProviderConstants_1.safeWindow, 'message', eventHandler);
|
|
88
88
|
}
|
|
89
89
|
break;
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
catch (_c) { }
|
|
93
93
|
};
|
|
94
|
-
(_a =
|
|
94
|
+
(_a = crossWindowProviderConstants_1.safeWindow.addEventListener) === null || _a === void 0 ? void 0 : _a.call(crossWindowProviderConstants_1.safeWindow, 'message', eventHandler);
|
|
95
95
|
});
|
|
96
96
|
}
|
|
97
97
|
listenOnce(action) {
|
|
@@ -102,17 +102,17 @@ class WindowManager {
|
|
|
102
102
|
return yield new Promise((resolve) => {
|
|
103
103
|
var _a;
|
|
104
104
|
const walletUrl = this.walletUrl;
|
|
105
|
-
(_a =
|
|
105
|
+
(_a = crossWindowProviderConstants_1.safeWindow.addEventListener) === null || _a === void 0 ? void 0 : _a.call(crossWindowProviderConstants_1.safeWindow, 'message', function eventHandler(event) {
|
|
106
106
|
var _a;
|
|
107
107
|
return __awaiter(this, void 0, void 0, function* () {
|
|
108
108
|
const { type, payload } = event.data;
|
|
109
109
|
const isWalletEvent = event.origin === new URL(walletUrl).origin;
|
|
110
110
|
const isCurrentAction = action === type ||
|
|
111
|
-
type ===
|
|
111
|
+
type === crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.cancelResponse;
|
|
112
112
|
if (!isCurrentAction || !isWalletEvent) {
|
|
113
113
|
return;
|
|
114
114
|
}
|
|
115
|
-
(_a =
|
|
115
|
+
(_a = crossWindowProviderConstants_1.safeWindow.removeEventListener) === null || _a === void 0 ? void 0 : _a.call(crossWindowProviderConstants_1.safeWindow, 'message', eventHandler);
|
|
116
116
|
resolve({ type, payload });
|
|
117
117
|
});
|
|
118
118
|
});
|
|
@@ -125,7 +125,7 @@ class WindowManager {
|
|
|
125
125
|
throw new errors_1.ErrProviderNotInitialized();
|
|
126
126
|
}
|
|
127
127
|
yield this.postMessage({
|
|
128
|
-
type:
|
|
128
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.logoutRequest,
|
|
129
129
|
payload: undefined
|
|
130
130
|
});
|
|
131
131
|
return true;
|
|
@@ -142,7 +142,7 @@ class WindowManager {
|
|
|
142
142
|
type,
|
|
143
143
|
payload
|
|
144
144
|
}, this.walletUrl);
|
|
145
|
-
const data = yield this.listenOnce(
|
|
145
|
+
const data = yield this.listenOnce(crossWindowProviderConstants_1.responseTypeMap[type]);
|
|
146
146
|
(_b = this.walletWindow) === null || _b === void 0 ? void 0 : _b.close();
|
|
147
147
|
return data;
|
|
148
148
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WindowManager.js","sourceRoot":"","sources":["../../src/WindowManager/WindowManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"WindowManager.js","sourceRoot":"","sources":["../../src/WindowManager/WindowManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const crossWindowProviderEnums_1 = require("@multiversx/sdk-dapp-utils/out/enums/crossWindowProviderEnums");
|
|
12
13
|
const test_utils_1 = require("../../test-utils");
|
|
13
|
-
const types_1 = require("../../types");
|
|
14
14
|
const WindowManager_1 = require("../WindowManager");
|
|
15
15
|
describe('WindowManager', () => {
|
|
16
16
|
let windowOpenSpy;
|
|
@@ -50,7 +50,7 @@ describe('WindowManager', () => {
|
|
|
50
50
|
}));
|
|
51
51
|
it('should call handshake successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
52
52
|
const windowManager = WindowManager_1.WindowManager.getInstance();
|
|
53
|
-
windowManager.handshake(
|
|
53
|
+
windowManager.handshake(crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.loginRequest);
|
|
54
54
|
expect(windowAddListenerSpy).toHaveBeenCalledTimes(1);
|
|
55
55
|
expect(windowOpenSpy).toHaveBeenCalledTimes(1);
|
|
56
56
|
expect(windowCloseSpy).toHaveBeenCalledTimes(0);
|
|
@@ -64,13 +64,13 @@ describe('WindowManager', () => {
|
|
|
64
64
|
}));
|
|
65
65
|
it('should call add event listener successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
66
66
|
const windowManager = WindowManager_1.WindowManager.getInstance();
|
|
67
|
-
windowManager.listenOnce(
|
|
67
|
+
windowManager.listenOnce(crossWindowProviderEnums_1.CrossWindowProviderResponseEnums.loginResponse);
|
|
68
68
|
expect(windowAddListenerSpy).toHaveBeenCalledTimes(1);
|
|
69
69
|
}));
|
|
70
70
|
it('should call postMessage successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
71
71
|
const windowManager = WindowManager_1.WindowManager.getInstance();
|
|
72
72
|
windowManager.postMessage({
|
|
73
|
-
type:
|
|
73
|
+
type: crossWindowProviderEnums_1.CrossWindowProviderRequestEnums.loginRequest,
|
|
74
74
|
payload: {
|
|
75
75
|
token: 'token'
|
|
76
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowManager.test.js","sourceRoot":"","sources":["../../../src/WindowManager/tests/windowManager.test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"windowManager.test.js","sourceRoot":"","sources":["../../../src/WindowManager/tests/windowManager.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiversx/sdk-web-wallet-cross-window-provider",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Signing provider for dApps: Cross Window",
|
|
5
5
|
"main": "out/index.js",
|
|
6
6
|
"types": "out/index.d.js",
|
|
@@ -20,6 +20,8 @@
|
|
|
20
20
|
"author": "MultiversX",
|
|
21
21
|
"license": "GPL-3.0-or-later",
|
|
22
22
|
"devDependencies": {
|
|
23
|
+
"@multiversx/sdk-core": ">= 12.18.0",
|
|
24
|
+
"@multiversx/sdk-dapp-utils": ">= 0.0.1",
|
|
23
25
|
"@types/node": "18.19.0",
|
|
24
26
|
"@typescript-eslint/eslint-plugin": "5.0.0",
|
|
25
27
|
"@typescript-eslint/parser": "5.14.0",
|
|
@@ -40,6 +42,7 @@
|
|
|
40
42
|
},
|
|
41
43
|
"peerDependencies": {
|
|
42
44
|
"@multiversx/sdk-core": ">= 12.18.0",
|
|
45
|
+
"@multiversx/sdk-dapp-utils": ">= 0.0.1",
|
|
43
46
|
"lit": ">=3.1.2"
|
|
44
47
|
},
|
|
45
48
|
"dependencies": {
|
package/out/constants.d.ts
DELETED
package/out/constants.js
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.safeWindow = exports.responseTypeMap = void 0;
|
|
4
|
-
const types_1 = require("./types");
|
|
5
|
-
exports.responseTypeMap = {
|
|
6
|
-
[types_1.CrossWindowProviderRequestEnums.signTransactionsRequest]: types_1.CrossWindowProviderResponseEnums.signTransactionsResponse,
|
|
7
|
-
[types_1.CrossWindowProviderRequestEnums.guardTransactionsRequest]: types_1.CrossWindowProviderResponseEnums.guardTransactionsResponse,
|
|
8
|
-
[types_1.CrossWindowProviderRequestEnums.signMessageRequest]: types_1.CrossWindowProviderResponseEnums.signMessageResponse,
|
|
9
|
-
[types_1.CrossWindowProviderRequestEnums.loginRequest]: types_1.CrossWindowProviderResponseEnums.loginResponse,
|
|
10
|
-
[types_1.CrossWindowProviderRequestEnums.logoutRequest]: types_1.CrossWindowProviderResponseEnums.disconnectResponse,
|
|
11
|
-
[types_1.CrossWindowProviderRequestEnums.cancelAction]: types_1.CrossWindowProviderResponseEnums.cancelResponse,
|
|
12
|
-
[types_1.CrossWindowProviderRequestEnums.finalizeHandshakeRequest]: types_1.CrossWindowProviderResponseEnums.noneResponse,
|
|
13
|
-
[types_1.CrossWindowProviderRequestEnums.finalizeResetStateRequest]: types_1.CrossWindowProviderResponseEnums.resetStateResponse
|
|
14
|
-
};
|
|
15
|
-
exports.safeWindow = typeof window !== 'undefined' ? window : {};
|
|
16
|
-
//# sourceMappingURL=constants.js.map
|
package/out/constants.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,mCAIiB;AAEJ,QAAA,eAAe,GAAoB;IAC9C,CAAC,uCAA+B,CAAC,uBAAuB,CAAC,EACvD,wCAAgC,CAAC,wBAAwB;IAC3D,CAAC,uCAA+B,CAAC,wBAAwB,CAAC,EACxD,wCAAgC,CAAC,yBAAyB;IAC5D,CAAC,uCAA+B,CAAC,kBAAkB,CAAC,EAClD,wCAAgC,CAAC,mBAAmB;IACtD,CAAC,uCAA+B,CAAC,YAAY,CAAC,EAC5C,wCAAgC,CAAC,aAAa;IAChD,CAAC,uCAA+B,CAAC,aAAa,CAAC,EAC7C,wCAAgC,CAAC,kBAAkB;IACrD,CAAC,uCAA+B,CAAC,YAAY,CAAC,EAC5C,wCAAgC,CAAC,cAAc;IACjD,CAAC,uCAA+B,CAAC,wBAAwB,CAAC,EACxD,wCAAgC,CAAC,YAAY;IAC/C,CAAC,uCAA+B,CAAC,yBAAyB,CAAC,EACzD,wCAAgC,CAAC,kBAAkB;CACtD,CAAC;AAMW,QAAA,UAAU,GACrB,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAE,EAAqB,CAAC"}
|
package/out/types.d.ts
DELETED
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import type { IPlainTransactionObject } from '@multiversx/sdk-core';
|
|
2
|
-
export declare enum CrossWindowProviderRequestEnums {
|
|
3
|
-
signTransactionsRequest = "SIGN_TRANSACTIONS_REQUEST",
|
|
4
|
-
guardTransactionsRequest = "GUARD_TRANSACTIONS_REQUEST",
|
|
5
|
-
signMessageRequest = "SIGN_MESSAGE_REQUEST",
|
|
6
|
-
loginRequest = "LOGIN_REQUEST",
|
|
7
|
-
logoutRequest = "LOGOUT_REQUEST",
|
|
8
|
-
cancelAction = "CANCEL_ACTION_REQUEST",
|
|
9
|
-
finalizeHandshakeRequest = "FINALIZE_HANDSHAKE_REQUEST",
|
|
10
|
-
finalizeResetStateRequest = "FINALIZE_RESET_STATE_REQUEST"
|
|
11
|
-
}
|
|
12
|
-
export declare enum CrossWindowProviderResponseEnums {
|
|
13
|
-
handshakeResponse = "HANDSHAKE_RESPONSE",
|
|
14
|
-
guardTransactionsResponse = "GUARD_TRANSACTIONS_RESPONSE",
|
|
15
|
-
loginResponse = "LOGIN_RESPONSE",
|
|
16
|
-
disconnectResponse = "DISCONNECT_RESPONSE",
|
|
17
|
-
cancelResponse = "CANCEL_RESPONSE",
|
|
18
|
-
signTransactionsResponse = "SIGN_TRANSACTIONS_RESPONSE",
|
|
19
|
-
signMessageResponse = "SIGN_MESSAGE_RESPONSE",
|
|
20
|
-
noneResponse = "NONE_RESPONSE",
|
|
21
|
-
resetStateResponse = "RESET_STATE_RESPONSE"
|
|
22
|
-
}
|
|
23
|
-
export declare enum SignMessageStatusEnum {
|
|
24
|
-
pending = "pending",
|
|
25
|
-
failed = "failed",
|
|
26
|
-
signed = "signed",
|
|
27
|
-
cancelled = "cancelled"
|
|
28
|
-
}
|
|
29
|
-
export type ReplyWithPostMessageObjectType = {
|
|
30
|
-
[CrossWindowProviderResponseEnums.handshakeResponse]: boolean;
|
|
31
|
-
[CrossWindowProviderResponseEnums.loginResponse]: {
|
|
32
|
-
address: string;
|
|
33
|
-
accessToken?: string;
|
|
34
|
-
/**
|
|
35
|
-
* used in De-Fi wallet extension as wallet name
|
|
36
|
-
* */
|
|
37
|
-
name?: string;
|
|
38
|
-
signature?: string;
|
|
39
|
-
/**
|
|
40
|
-
* contract address for alternate multisig login
|
|
41
|
-
* */
|
|
42
|
-
multisig?: string;
|
|
43
|
-
/**
|
|
44
|
-
* custom address for alternate login
|
|
45
|
-
* */
|
|
46
|
-
impersonate?: string;
|
|
47
|
-
};
|
|
48
|
-
[CrossWindowProviderResponseEnums.disconnectResponse]: boolean;
|
|
49
|
-
[CrossWindowProviderResponseEnums.cancelResponse]: {
|
|
50
|
-
address: string;
|
|
51
|
-
};
|
|
52
|
-
[CrossWindowProviderResponseEnums.signTransactionsResponse]: IPlainTransactionObject[];
|
|
53
|
-
[CrossWindowProviderResponseEnums.guardTransactionsResponse]: IPlainTransactionObject[];
|
|
54
|
-
[CrossWindowProviderResponseEnums.signMessageResponse]: {
|
|
55
|
-
signature?: string;
|
|
56
|
-
status: SignMessageStatusEnum;
|
|
57
|
-
};
|
|
58
|
-
[CrossWindowProviderResponseEnums.noneResponse]: null;
|
|
59
|
-
[CrossWindowProviderResponseEnums.resetStateResponse]: boolean;
|
|
60
|
-
};
|
|
61
|
-
export type ReplyWithPostMessagePayloadType<K extends keyof ReplyWithPostMessageObjectType> = {
|
|
62
|
-
data?: ReplyWithPostMessageObjectType[K];
|
|
63
|
-
error?: string;
|
|
64
|
-
};
|
|
65
|
-
export type ReplyWithPostMessageType = {
|
|
66
|
-
[K in keyof ReplyWithPostMessageObjectType]: {
|
|
67
|
-
type: K;
|
|
68
|
-
payload: ReplyWithPostMessagePayloadType<K>;
|
|
69
|
-
};
|
|
70
|
-
}[keyof ReplyWithPostMessageObjectType];
|
|
71
|
-
export type ResponseTypeMap = {
|
|
72
|
-
[CrossWindowProviderRequestEnums.signTransactionsRequest]: CrossWindowProviderResponseEnums.signTransactionsResponse;
|
|
73
|
-
[CrossWindowProviderRequestEnums.signMessageRequest]: CrossWindowProviderResponseEnums.signMessageResponse;
|
|
74
|
-
[CrossWindowProviderRequestEnums.loginRequest]: CrossWindowProviderResponseEnums.loginResponse;
|
|
75
|
-
[CrossWindowProviderRequestEnums.logoutRequest]: CrossWindowProviderResponseEnums.disconnectResponse;
|
|
76
|
-
[CrossWindowProviderRequestEnums.guardTransactionsRequest]: CrossWindowProviderResponseEnums.guardTransactionsResponse;
|
|
77
|
-
[CrossWindowProviderRequestEnums.cancelAction]: CrossWindowProviderResponseEnums.cancelResponse;
|
|
78
|
-
[CrossWindowProviderRequestEnums.finalizeHandshakeRequest]: CrossWindowProviderResponseEnums.noneResponse;
|
|
79
|
-
[CrossWindowProviderRequestEnums.finalizeResetStateRequest]: CrossWindowProviderResponseEnums.resetStateResponse;
|
|
80
|
-
};
|
|
81
|
-
export type RequestPayloadType = {
|
|
82
|
-
[CrossWindowProviderRequestEnums.loginRequest]: {
|
|
83
|
-
token: string | undefined;
|
|
84
|
-
};
|
|
85
|
-
[CrossWindowProviderRequestEnums.logoutRequest]: undefined;
|
|
86
|
-
[CrossWindowProviderRequestEnums.signTransactionsRequest]: IPlainTransactionObject[];
|
|
87
|
-
[CrossWindowProviderRequestEnums.guardTransactionsRequest]: IPlainTransactionObject[];
|
|
88
|
-
[CrossWindowProviderRequestEnums.signMessageRequest]: {
|
|
89
|
-
message: string;
|
|
90
|
-
};
|
|
91
|
-
[CrossWindowProviderRequestEnums.cancelAction]: undefined;
|
|
92
|
-
[CrossWindowProviderRequestEnums.finalizeHandshakeRequest]: undefined;
|
|
93
|
-
[CrossWindowProviderRequestEnums.finalizeResetStateRequest]: undefined;
|
|
94
|
-
};
|
|
95
|
-
export type RequestMessageType = {
|
|
96
|
-
[K in keyof RequestPayloadType]: {
|
|
97
|
-
type: K;
|
|
98
|
-
payload: RequestPayloadType[K];
|
|
99
|
-
};
|
|
100
|
-
}[keyof RequestPayloadType];
|
|
101
|
-
export type ReplyWithPostMessageEventType = {
|
|
102
|
-
[K in keyof ReplyWithPostMessageObjectType]: {
|
|
103
|
-
type: CrossWindowProviderResponseEnums;
|
|
104
|
-
payload: ReplyWithPostMessageObjectType[K];
|
|
105
|
-
};
|
|
106
|
-
}[keyof ReplyWithPostMessageObjectType];
|
|
107
|
-
export interface PostMessageParamsType<T extends CrossWindowProviderRequestEnums> {
|
|
108
|
-
type: T;
|
|
109
|
-
payload: RequestPayloadType[keyof RequestPayloadType];
|
|
110
|
-
}
|
|
111
|
-
export interface PostMessageReturnType<T extends CrossWindowProviderRequestEnums> {
|
|
112
|
-
type: ResponseTypeMap[T] | CrossWindowProviderResponseEnums.cancelResponse;
|
|
113
|
-
payload: ReplyWithPostMessagePayloadType<ResponseTypeMap[T]>;
|
|
114
|
-
}
|
package/out/types.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SignMessageStatusEnum = exports.CrossWindowProviderResponseEnums = exports.CrossWindowProviderRequestEnums = void 0;
|
|
4
|
-
var CrossWindowProviderRequestEnums;
|
|
5
|
-
(function (CrossWindowProviderRequestEnums) {
|
|
6
|
-
CrossWindowProviderRequestEnums["signTransactionsRequest"] = "SIGN_TRANSACTIONS_REQUEST";
|
|
7
|
-
CrossWindowProviderRequestEnums["guardTransactionsRequest"] = "GUARD_TRANSACTIONS_REQUEST";
|
|
8
|
-
CrossWindowProviderRequestEnums["signMessageRequest"] = "SIGN_MESSAGE_REQUEST";
|
|
9
|
-
CrossWindowProviderRequestEnums["loginRequest"] = "LOGIN_REQUEST";
|
|
10
|
-
CrossWindowProviderRequestEnums["logoutRequest"] = "LOGOUT_REQUEST";
|
|
11
|
-
CrossWindowProviderRequestEnums["cancelAction"] = "CANCEL_ACTION_REQUEST";
|
|
12
|
-
CrossWindowProviderRequestEnums["finalizeHandshakeRequest"] = "FINALIZE_HANDSHAKE_REQUEST";
|
|
13
|
-
CrossWindowProviderRequestEnums["finalizeResetStateRequest"] = "FINALIZE_RESET_STATE_REQUEST";
|
|
14
|
-
})(CrossWindowProviderRequestEnums = exports.CrossWindowProviderRequestEnums || (exports.CrossWindowProviderRequestEnums = {}));
|
|
15
|
-
var CrossWindowProviderResponseEnums;
|
|
16
|
-
(function (CrossWindowProviderResponseEnums) {
|
|
17
|
-
CrossWindowProviderResponseEnums["handshakeResponse"] = "HANDSHAKE_RESPONSE";
|
|
18
|
-
CrossWindowProviderResponseEnums["guardTransactionsResponse"] = "GUARD_TRANSACTIONS_RESPONSE";
|
|
19
|
-
CrossWindowProviderResponseEnums["loginResponse"] = "LOGIN_RESPONSE";
|
|
20
|
-
CrossWindowProviderResponseEnums["disconnectResponse"] = "DISCONNECT_RESPONSE";
|
|
21
|
-
CrossWindowProviderResponseEnums["cancelResponse"] = "CANCEL_RESPONSE";
|
|
22
|
-
CrossWindowProviderResponseEnums["signTransactionsResponse"] = "SIGN_TRANSACTIONS_RESPONSE";
|
|
23
|
-
CrossWindowProviderResponseEnums["signMessageResponse"] = "SIGN_MESSAGE_RESPONSE";
|
|
24
|
-
CrossWindowProviderResponseEnums["noneResponse"] = "NONE_RESPONSE";
|
|
25
|
-
CrossWindowProviderResponseEnums["resetStateResponse"] = "RESET_STATE_RESPONSE";
|
|
26
|
-
})(CrossWindowProviderResponseEnums = exports.CrossWindowProviderResponseEnums || (exports.CrossWindowProviderResponseEnums = {}));
|
|
27
|
-
var SignMessageStatusEnum;
|
|
28
|
-
(function (SignMessageStatusEnum) {
|
|
29
|
-
SignMessageStatusEnum["pending"] = "pending";
|
|
30
|
-
SignMessageStatusEnum["failed"] = "failed";
|
|
31
|
-
SignMessageStatusEnum["signed"] = "signed";
|
|
32
|
-
SignMessageStatusEnum["cancelled"] = "cancelled";
|
|
33
|
-
})(SignMessageStatusEnum = exports.SignMessageStatusEnum || (exports.SignMessageStatusEnum = {}));
|
|
34
|
-
//# sourceMappingURL=types.js.map
|
package/out/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,+BASX;AATD,WAAY,+BAA+B;IACzC,wFAAqD,CAAA;IACrD,0FAAuD,CAAA;IACvD,8EAA2C,CAAA;IAC3C,iEAA8B,CAAA;IAC9B,mEAAgC,CAAA;IAChC,yEAAsC,CAAA;IACtC,0FAAuD,CAAA;IACvD,6FAA0D,CAAA;AAC5D,CAAC,EATW,+BAA+B,GAA/B,uCAA+B,KAA/B,uCAA+B,QAS1C;AAED,IAAY,gCAUX;AAVD,WAAY,gCAAgC;IAC1C,4EAAwC,CAAA;IACxC,6FAAyD,CAAA;IACzD,oEAAgC,CAAA;IAChC,8EAA0C,CAAA;IAC1C,sEAAkC,CAAA;IAClC,2FAAuD,CAAA;IACvD,iFAA6C,CAAA;IAC7C,kEAA8B,CAAA;IAC9B,+EAA2C,CAAA;AAC7C,CAAC,EAVW,gCAAgC,GAAhC,wCAAgC,KAAhC,wCAAgC,QAU3C;AAED,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,0CAAiB,CAAA;IACjB,0CAAiB,CAAA;IACjB,gDAAuB,CAAA;AACzB,CAAC,EALW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAKhC"}
|