@multiversx/sdk-web-wallet-cross-window-provider 3.3.0-alpha.0 → 3.3.0-alpha.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/PopupConsent/PopupConsent.js +6 -1
- package/out/CrossWindowProvider/PopupConsent/PopupConsent.js.map +1 -1
- package/out/CrossWindowProvider/PopupConsent/tests/PopupConsent.test.d.ts +1 -0
- package/out/CrossWindowProvider/PopupConsent/tests/PopupConsent.test.js +22 -0
- package/out/CrossWindowProvider/PopupConsent/tests/PopupConsent.test.js.map +1 -0
- package/out/WindowManager/WindowManager.d.ts +7 -0
- package/out/WindowManager/WindowManager.js +37 -8
- package/out/WindowManager/WindowManager.js.map +1 -1
- package/out/WindowManager/tests/windowManager.test.js +71 -0
- package/out/WindowManager/tests/windowManager.test.js.map +1 -1
- package/package.json +5 -1
|
@@ -52,7 +52,7 @@ class PopupConsent extends HTMLElement {
|
|
|
52
52
|
<div class="content">
|
|
53
53
|
<div class="body">
|
|
54
54
|
<div class="title">Confirm on MultiversX Wallet</div>
|
|
55
|
-
<div class="subtitle"
|
|
55
|
+
<div class="subtitle"></div>
|
|
56
56
|
<div class="actions-container">
|
|
57
57
|
<button
|
|
58
58
|
class="button"
|
|
@@ -73,6 +73,11 @@ class PopupConsent extends HTMLElement {
|
|
|
73
73
|
</div>
|
|
74
74
|
</div>
|
|
75
75
|
`;
|
|
76
|
+
// Set as text, not HTML, so the URL can't inject markup
|
|
77
|
+
const subtitle = this.querySelector('.subtitle');
|
|
78
|
+
if (subtitle) {
|
|
79
|
+
subtitle.textContent = `Continue to ${this.walletUrl}`;
|
|
80
|
+
}
|
|
76
81
|
}
|
|
77
82
|
toggleEvents(action) {
|
|
78
83
|
[this.events.cancel, this.events.confirm].forEach((event) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupConsent.js","sourceRoot":"","sources":["../../../src/CrossWindowProvider/PopupConsent/PopupConsent.ts"],"names":[],"mappings":";;;AAAA,2CAAoD;AACpD,2CAAwC;AAGxC,MAAa,YAAa,SAAQ,WAAW;IAU3C;QACE,KAAK,EAAE,CAAC;QAVH,cAAS,GAAG,EAAE,CAAC;QACf,eAAU,GAAW,iCAAqB,CAAC;QAC3C,aAAQ,GAAG,GAAG,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1B,CAAC,CAAC;QACK,cAAS,GAAG,GAAG,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC,CAAC;QAaK,WAAM,GAAG;YACd,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU;YACrC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,SAAS;YACnC,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,UAAU;SACtC,CAAC;QAaM,mBAAc,GAAG,CAAC,IAAY,EAAE,EAAE;YACxC,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE;gBAClC,OAAO,EAAE,IAAI,EAAE,+CAA+C;gBAC9D,QAAQ,EAAE,IAAI,CAAC,mDAAmD;aACnE,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC;IAhCF,CAAC;IAED,wBAAwB,CAAC,IAAY,EAAE,QAAgB,EAAE,QAAgB;QACvE,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzB,IAAY,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC;YACzE,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAQO,kBAAkB,CAAC,EAAE,IAAI,EAAe;QAC9C,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM;gBACrB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO;gBACtB,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B;gBACE,MAAM;QACV,CAAC;IACH,CAAC;IAUD,MAAM;QACJ,IAAI,CAAC,SAAS,GAAG;;YAET,IAAA,qBAAS,EAAC,iCAAqB,CAAC;;mBAEzB,iCAAqB
|
|
1
|
+
{"version":3,"file":"PopupConsent.js","sourceRoot":"","sources":["../../../src/CrossWindowProvider/PopupConsent/PopupConsent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const constants_1 = require("../constants");
|
|
4
|
+
const PopupConsent_1 = require("../PopupConsent");
|
|
5
|
+
describe('PopupConsent', () => {
|
|
6
|
+
beforeAll(() => {
|
|
7
|
+
if (!customElements.get(constants_1.confirmationDialogTag)) {
|
|
8
|
+
customElements.define(constants_1.confirmationDialogTag, PopupConsent_1.PopupConsent);
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
it('should render the wallet URL as text, not HTML', () => {
|
|
12
|
+
var _a;
|
|
13
|
+
const walletUrl = '<img src="x" onerror="alert(1)">';
|
|
14
|
+
const popup = document.createElement(constants_1.confirmationDialogTag);
|
|
15
|
+
popup.walletUrl = walletUrl;
|
|
16
|
+
document.body.appendChild(popup);
|
|
17
|
+
expect(popup.querySelector('img')).toBeNull();
|
|
18
|
+
expect((_a = popup.querySelector('.subtitle')) === null || _a === void 0 ? void 0 : _a.textContent).toBe(`Continue to ${walletUrl}`);
|
|
19
|
+
popup.remove();
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=PopupConsent.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PopupConsent.test.js","sourceRoot":"","sources":["../../../../src/CrossWindowProvider/PopupConsent/tests/PopupConsent.test.ts"],"names":[],"mappings":";;AAAA,4CAAqD;AACrD,kDAA+C;AAE/C,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iCAAqB,CAAC,EAAE,CAAC;YAC/C,cAAc,CAAC,MAAM,CAAC,iCAAqB,EAAE,2BAAY,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;;QACxD,MAAM,SAAS,GAAG,kCAAkC,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,iCAAqB,CAAiB,CAAC;QAC5E,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAE5B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEjC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,CAAC,MAAA,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,0CAAE,WAAW,CAAC,CAAC,IAAI,CACxD,eAAe,SAAS,EAAE,CAC3B,CAAC;QAEF,KAAK,CAAC,MAAM,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -8,6 +8,7 @@ export declare class WindowManager {
|
|
|
8
8
|
isPopupBlocked: boolean;
|
|
9
9
|
private _isLoggingOut;
|
|
10
10
|
private activeListeners;
|
|
11
|
+
private handshakeChangeListener;
|
|
11
12
|
private static readonly SESSION_STORAGE_KEY;
|
|
12
13
|
constructor();
|
|
13
14
|
get walletUrl(): string;
|
|
@@ -20,6 +21,12 @@ export declare class WindowManager {
|
|
|
20
21
|
isWalletOpened(type?: WindowProviderRequestEnums): boolean;
|
|
21
22
|
openPopupConsent(): Promise<boolean>;
|
|
22
23
|
handshake(type: WindowProviderRequestEnums): Promise<boolean>;
|
|
24
|
+
/**
|
|
25
|
+
* A message is from the wallet only when it is posted by the wallet window
|
|
26
|
+
* this manager opened, from the wallet URL's origin. Matching the origin alone
|
|
27
|
+
* would also accept any other window or frame on the wallet's origin.
|
|
28
|
+
*/
|
|
29
|
+
private isFromWallet;
|
|
23
30
|
private addHandshakeChangeListener;
|
|
24
31
|
listenOnce<T extends WindowProviderResponseEnums>(action: T): Promise<{
|
|
25
32
|
type: T;
|
|
@@ -57,6 +57,7 @@ class WindowManager {
|
|
|
57
57
|
this.isPopupBlocked = false;
|
|
58
58
|
this._isLoggingOut = false;
|
|
59
59
|
this.activeListeners = new Map();
|
|
60
|
+
this.handshakeChangeListener = null;
|
|
60
61
|
(_a = constants_1.safeWindow.addEventListener) === null || _a === void 0 ? void 0 : _a.call(constants_1.safeWindow, 'beforeunload', () => {
|
|
61
62
|
this.closeWalletWindow();
|
|
62
63
|
});
|
|
@@ -174,24 +175,48 @@ class WindowManager {
|
|
|
174
175
|
return true;
|
|
175
176
|
});
|
|
176
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* A message is from the wallet only when it is posted by the wallet window
|
|
180
|
+
* this manager opened, from the wallet URL's origin. Matching the origin alone
|
|
181
|
+
* would also accept any other window or frame on the wallet's origin.
|
|
182
|
+
*/
|
|
183
|
+
isFromWallet(event, walletUrl) {
|
|
184
|
+
if (!this.walletWindow || event.source !== this.walletWindow) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
try {
|
|
188
|
+
return event.origin === new URL(walletUrl).origin;
|
|
189
|
+
}
|
|
190
|
+
catch (_a) {
|
|
191
|
+
return false;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
177
194
|
addHandshakeChangeListener() {
|
|
178
195
|
return __awaiter(this, void 0, void 0, function* () {
|
|
179
|
-
var _a;
|
|
180
|
-
|
|
196
|
+
var _a, _b;
|
|
197
|
+
// Keep a single listener: one is added per handshake, so without this they
|
|
198
|
+
// would pile up, each trusting the wallet URL that was set when it was added.
|
|
199
|
+
if (this.handshakeChangeListener) {
|
|
200
|
+
(_a = constants_1.safeWindow.removeEventListener) === null || _a === void 0 ? void 0 : _a.call(constants_1.safeWindow, 'message', this.handshakeChangeListener);
|
|
201
|
+
}
|
|
181
202
|
const eventHandler = (event) => {
|
|
182
203
|
var _a, _b;
|
|
183
204
|
try {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
if (!
|
|
205
|
+
// Checked against the current wallet URL, so a previously used wallet
|
|
206
|
+
// origin is no longer trusted after setWalletUrl()
|
|
207
|
+
if (!this.isFromWallet(event, this.walletUrl)) {
|
|
187
208
|
return;
|
|
188
209
|
}
|
|
210
|
+
const { type, payload } = event.data;
|
|
189
211
|
switch (type) {
|
|
190
212
|
case enums_1.WindowProviderResponseEnums.handshakeResponse:
|
|
191
213
|
if (payload === '') {
|
|
192
214
|
(_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
|
|
193
215
|
this.walletWindow = null;
|
|
194
216
|
(_b = constants_1.safeWindow.removeEventListener) === null || _b === void 0 ? void 0 : _b.call(constants_1.safeWindow, 'message', eventHandler);
|
|
217
|
+
if (this.handshakeChangeListener === eventHandler) {
|
|
218
|
+
this.handshakeChangeListener = null;
|
|
219
|
+
}
|
|
195
220
|
break;
|
|
196
221
|
}
|
|
197
222
|
// Save the current session and send it in later handshake requests
|
|
@@ -206,7 +231,8 @@ class WindowManager {
|
|
|
206
231
|
console.error('Handshake response error', e);
|
|
207
232
|
}
|
|
208
233
|
};
|
|
209
|
-
|
|
234
|
+
this.handshakeChangeListener = eventHandler;
|
|
235
|
+
(_b = constants_1.safeWindow.addEventListener) === null || _b === void 0 ? void 0 : _b.call(constants_1.safeWindow, 'message', eventHandler);
|
|
210
236
|
});
|
|
211
237
|
}
|
|
212
238
|
listenOnce(action) {
|
|
@@ -229,11 +255,14 @@ class WindowManager {
|
|
|
229
255
|
}
|
|
230
256
|
}
|
|
231
257
|
const eventHandler = (event) => {
|
|
258
|
+
// Checked against the wallet URL the request was sent to
|
|
259
|
+
if (!this.isFromWallet(event, walletUrl)) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
232
262
|
const { type, payload } = event.data;
|
|
233
|
-
const isWalletEvent = event.origin === new URL(walletUrl).origin;
|
|
234
263
|
const isCurrentAction = action === type ||
|
|
235
264
|
type === enums_1.WindowProviderResponseEnums.cancelResponse;
|
|
236
|
-
if (!isCurrentAction
|
|
265
|
+
if (!isCurrentAction) {
|
|
237
266
|
return;
|
|
238
267
|
}
|
|
239
268
|
constants_1.safeWindow.removeEventListener('message', eventHandler);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WindowManager.js","sourceRoot":"","sources":["../../src/WindowManager/WindowManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA2D;AAC3D,6EAAsF;AAEtF,oCAGkB;AAClB,sCAKmB;AAQnB,MAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"WindowManager.js","sourceRoot":"","sources":["../../src/WindowManager/WindowManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA2D;AAC3D,6EAAsF;AAEtF,oCAGkB;AAClB,sCAKmB;AAQnB,MAAa,aAAa;IAcxB;;QAbQ,aAAQ,GAAG,EAAE,CAAC;QACd,eAAU,GAAG,EAAE,CAAC;QACd,gBAAW,GAAG,KAAK,CAAC;QACvB,iBAAY,GAAkB,IAAI,CAAC;QACnC,mBAAc,GAAG,KAAK,CAAC;QACtB,kBAAa,GAAG,KAAK,CAAC;QAEtB,oBAAe,GACrB,IAAI,GAAG,EAAE,CAAC;QACJ,4BAAuB,GAC7B,IAAI,CAAC;QAIL,MAAA,sBAAU,CAAC,gBAAgB,uEAAG,cAAc,EAAE,GAAG,EAAE;YACjD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,sBAAU,CAAC,IAAI,GAAG,MAAA,sBAAU,CAAC,QAAQ,0CAAE,MAAM,CAAC;QAC9C,IAAI,CAAC,uBAAuB,EAAE,CAAC;IACjC,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEM,YAAY,CAAC,GAAW;QAC7B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,uBAAuB;;QAC7B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAA,sBAAU,CAAC,cAAc,0CAAE,OAAO,CACtD,aAAa,CAAC,mBAAmB,CAClC,CAAC;YACF,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;YAChC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,SAAiB;;QAC7C,IAAI,CAAC;YACH,MAAA,sBAAU,CAAC,cAAc,0CAAE,OAAO,CAChC,aAAa,CAAC,mBAAmB,EACjC,SAAS,CACV,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAEO,wBAAwB;;QAC9B,IAAI,CAAC;YACH,MAAA,sBAAU,CAAC,cAAc,0CAAE,UAAU,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,KAAK,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEK,IAAI;;YACR,IAAI,CAAC,WAAW,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC;YACjD,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;KAAA;IAED,SAAS;QACP,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEM,cAAc,CAAC,IAAiC;QACrD,OAAO,CACL,IAAI,KAAK,kCAA0B,CAAC,YAAY;YAChD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAC3B,CAAC;IACJ,CAAC;IAEY,gBAAgB;;YAC3B,IACE,OAAO,QAAQ,KAAK,WAAW;gBAC/B,OAAO,MAAM,KAAK,WAAW;gBAC7B,CAAC,IAAI,CAAC,cAAc,EACpB,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,MAAM,GACV,wDAAa,kDAAkD,GAAC,CAAC;YACnE,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;YAEzC,MAAM,cAAc,GAAG,sBAAU,CAAC,cAAc,CAAC;YACjD,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,iCAAqB,CAAC,EAAE,CAAC;gBACjE,cAAc,CAAC,MAAM,CAAC,iCAAqB,EAAE,YAAY,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAClC,iCAAqB,CACa,CAAC;YAErC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAEjC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAEjC,MAAM,oBAAoB,GAAY,MAAM,IAAI,OAAO,CACrD,CAAC,OAAO,EAAE,EAAE;gBACV,KAAK,CAAC,SAAS,GAAG,GAAG,EAAE;oBACrB,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnC,CAAC,CAAC;gBACF,KAAK,CAAC,QAAQ,GAAG,GAAG,EAAE;oBACpB,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnC,CAAC,CAAC;YACJ,CAAC,CACF,CAAC;YAEF,OAAO,oBAAoB,CAAC;QAC9B,CAAC;KAAA;IAEK,SAAS,CAAC,IAAgC;;;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAE3C,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAEzD,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBACzB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAE3D,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC1B,MAAM,IAAI,yBAAgB,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CACvC,mCAA2B,CAAC,iBAAiB,CAC9C,CAAC;YAEF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,oCAA2B,EAAE,CAAC;YAC1C,CAAC;YAED,MAAM,eAAe,GACnB,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YAEvD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,eAAe,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC1E,gFAAgF;YAChF,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE1C,MAAA,IAAI,CAAC,YAAY,0CAAE,WAAW,CAC5B;gBACE,IAAI,EAAE,kCAA0B,CAAC,wBAAwB;gBACzD,OAAO,EAAE,IAAI,CAAC,QAAQ;aACvB,EACD,IAAI,CAAC,SAAS,CACf,CAAC;YAEF,IAAI,CAAC,0BAA0B,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;;;OAIG;IACK,YAAY,CAAC,KAAmB,EAAE,SAAiB;QACzD,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QACpD,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEa,0BAA0B;;;YACtC,2EAA2E;YAC3E,8EAA8E;YAC9E,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBACjC,MAAA,sBAAU,CAAC,mBAAmB,uEAAG,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC5E,CAAC;YAED,MAAM,YAAY,GAAG,CACnB,KAAkD,EAClD,EAAE;;gBACF,IAAI,CAAC;oBACH,sEAAsE;oBACtE,mDAAmD;oBACnD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC9C,OAAO;oBACT,CAAC;oBAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;oBAErC,QAAQ,IAAI,EAAE,CAAC;wBACb,KAAK,mCAA2B,CAAC,iBAAiB;4BAChD,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;gCACnB,MAAA,IAAI,CAAC,YAAY,0CAAE,KAAK,EAAE,CAAC;gCAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gCACzB,MAAA,sBAAU,CAAC,mBAAmB,uEAAG,SAAS,EAAE,YAAY,CAAC,CAAC;gCAC1D,IAAI,IAAI,CAAC,uBAAuB,KAAK,YAAY,EAAE,CAAC;oCAClD,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;gCACtC,CAAC;gCACD,MAAM;4BACR,CAAC;4BAED,mEAAmE;4BACnE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gCAChC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;gCACxB,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;4BAC5C,CAAC;4BAED,MAAM;oBACV,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,CAAC,uBAAuB,GAAG,YAAY,CAAC;YAC5C,MAAA,sBAAU,CAAC,gBAAgB,uEAAG,SAAS,EAAE,YAAY,CAAC,CAAC;QACzD,CAAC;KAAA;IAEK,UAAU,CACd,MAAS;;YAKT,0EAA0E;YAC1E,kEAAkE;YAClE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;gBAEzD,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBACzB,MAAM,IAAI,mCAA0B,EAAE,CAAC;gBACzC,CAAC;YACH,CAAC;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAEjC,kDAAkD;gBAClD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBACrC,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACzD,IAAI,eAAe,EAAE,CAAC;wBACpB,sBAAU,CAAC,mBAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,CACnB,KAGE,EACF,EAAE;oBACF,yDAAyD;oBACzD,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;wBACzC,OAAO;oBACT,CAAC;oBAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;oBAErC,MAAM,eAAe,GACnB,MAAM,KAAK,IAAI;wBACf,IAAI,KAAK,mCAA2B,CAAC,cAAc,CAAC;oBAEtD,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,OAAO;oBACT,CAAC;oBAED,sBAAU,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;oBACxD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAEpC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC;gBAEF,sBAAU,CAAC,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBACrD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,eAAe;;YACnB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAC3C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtB,MAAM,IAAI,kCAAyB,EAAE,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAE1B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC;oBACrB,IAAI,EAAE,kCAA0B,CAAC,aAAa;oBAC9C,OAAO,EAAE,SAAS;iBACnB,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACtC,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBAChC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;gBAEzB,OAAO,IAAI,CAAC;YACd,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAC7B,CAAC;QACH,CAAC;KAAA;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEK,WAAW;6DAAuC,EACtD,IAAI,EACJ,OAAO,EACkB;;YACzB,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAE3B,MAAA,IAAI,CAAC,YAAY,0CAAE,WAAW,CAC5B;gBACE,IAAI;gBACJ,OAAO;aACR,EACD,IAAI,CAAC,SAAS,CACf,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,CAAC,CAAC;YAC1D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAEzB,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAEM,iBAAiB;;QACtB,MAAA,IAAI,CAAC,YAAY,0CAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEY,eAAe;;;YAC1B,IAAI,CAAC,YAAY;gBACf,MAAA,MAAA,sBAAU,CAAC,IAAI,uEAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,mCAAI,IAAI,CAAC;YAE5D,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,CAAC,cAAc,GAAG,CAAC,mBAAmB,CAAC;YAE3C,OAAO,mBAAmB,CAAC;QAC7B,CAAC;KAAA;;AApWH,sCAqWC;AAzVyB,iCAAmB,GAAG,sBAAsB,AAAzB,CAA0B"}
|
|
@@ -66,6 +66,77 @@ describe('WindowManager', () => {
|
|
|
66
66
|
windowManager.listenOnce(enums_1.WindowProviderResponseEnums.loginResponse);
|
|
67
67
|
expect(windowAddListenerSpy).toHaveBeenCalledTimes(2);
|
|
68
68
|
}));
|
|
69
|
+
const getMessageHandlers = (spy) => spy.mock.calls
|
|
70
|
+
.filter(([eventName]) => eventName === 'message')
|
|
71
|
+
.map(([, handler]) => handler);
|
|
72
|
+
// jsdom only accepts real windows as MessageEvent `source`, so set it directly
|
|
73
|
+
const messageEvent = (origin, data, source) => {
|
|
74
|
+
const event = new MessageEvent('message', { origin, data });
|
|
75
|
+
Object.defineProperty(event, 'source', { value: source });
|
|
76
|
+
return event;
|
|
77
|
+
};
|
|
78
|
+
const handshakeEvent = (origin, payload, source = walletWindowMock) => messageEvent(origin, { type: enums_1.WindowProviderResponseEnums.handshakeResponse, payload }, source);
|
|
79
|
+
it('should keep a single handshake change listener', () => {
|
|
80
|
+
const windowManager = new WindowManager_1.WindowManager();
|
|
81
|
+
windowManager.setWalletUrl('https://wallet.example.com');
|
|
82
|
+
windowManager.addHandshakeChangeListener();
|
|
83
|
+
windowManager.addHandshakeChangeListener();
|
|
84
|
+
const [first, second] = getMessageHandlers(windowAddListenerSpy);
|
|
85
|
+
expect(windowRemoveListenerSpy).toHaveBeenCalledWith('message', first);
|
|
86
|
+
expect(windowRemoveListenerSpy).not.toHaveBeenCalledWith('message', second);
|
|
87
|
+
});
|
|
88
|
+
it('should ignore handshake messages from a previous wallet origin', () => {
|
|
89
|
+
const windowManager = new WindowManager_1.WindowManager();
|
|
90
|
+
windowManager.setWalletUrl('https://old-wallet.example.com');
|
|
91
|
+
windowManager.addHandshakeChangeListener();
|
|
92
|
+
const [handler] = getMessageHandlers(windowAddListenerSpy);
|
|
93
|
+
windowManager.walletWindow = walletWindowMock;
|
|
94
|
+
windowManager.setWalletUrl('https://new-wallet.example.com');
|
|
95
|
+
handler(handshakeEvent('https://old-wallet.example.com', ''));
|
|
96
|
+
expect(walletWindowMock.close).not.toHaveBeenCalled();
|
|
97
|
+
expect(windowManager.walletWindow).not.toBeNull();
|
|
98
|
+
handler(handshakeEvent('https://new-wallet.example.com', ''));
|
|
99
|
+
expect(walletWindowMock.close).toHaveBeenCalledTimes(1);
|
|
100
|
+
expect(windowManager.walletWindow).toBeNull();
|
|
101
|
+
});
|
|
102
|
+
it('should ignore handshake messages from another window on the wallet origin', () => {
|
|
103
|
+
const windowManager = new WindowManager_1.WindowManager();
|
|
104
|
+
windowManager.setWalletUrl('https://wallet.example.com');
|
|
105
|
+
windowManager.walletWindow = walletWindowMock;
|
|
106
|
+
windowManager.addHandshakeChangeListener();
|
|
107
|
+
const [handler] = getMessageHandlers(windowAddListenerSpy);
|
|
108
|
+
handler(handshakeEvent('https://wallet.example.com', '', {}));
|
|
109
|
+
expect(walletWindowMock.close).not.toHaveBeenCalled();
|
|
110
|
+
expect(windowManager.walletWindow).not.toBeNull();
|
|
111
|
+
});
|
|
112
|
+
it('should resolve listenOnce only for messages from the wallet window', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
113
|
+
const windowManager = new WindowManager_1.WindowManager();
|
|
114
|
+
windowManager.setWalletUrl('https://wallet.example.com');
|
|
115
|
+
windowManager.walletWindow = walletWindowMock;
|
|
116
|
+
let resolved = false;
|
|
117
|
+
const response = windowManager
|
|
118
|
+
.listenOnce(enums_1.WindowProviderResponseEnums.loginResponse)
|
|
119
|
+
.then((result) => {
|
|
120
|
+
resolved = true;
|
|
121
|
+
return result;
|
|
122
|
+
});
|
|
123
|
+
const [handler] = getMessageHandlers(windowAddListenerSpy);
|
|
124
|
+
const data = {
|
|
125
|
+
type: enums_1.WindowProviderResponseEnums.loginResponse,
|
|
126
|
+
payload: { data: { address: 'erd1test', signature: 'sig' } }
|
|
127
|
+
};
|
|
128
|
+
// Same origin, different window
|
|
129
|
+
handler(messageEvent('https://wallet.example.com', data, {}));
|
|
130
|
+
// Wallet window, wrong origin
|
|
131
|
+
handler(messageEvent('https://different.example.com', data, walletWindowMock));
|
|
132
|
+
// Malformed data from another origin must not throw
|
|
133
|
+
expect(() => handler(messageEvent('https://different.example.com', null, {}))).not.toThrow();
|
|
134
|
+
// Let any resolution settle before checking
|
|
135
|
+
yield new Promise((resolve) => setTimeout(resolve, 0));
|
|
136
|
+
expect(resolved).toBe(false);
|
|
137
|
+
handler(messageEvent('https://wallet.example.com', data, walletWindowMock));
|
|
138
|
+
yield expect(response).resolves.toEqual(data);
|
|
139
|
+
}));
|
|
69
140
|
it('should call postMessage successfully', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
70
141
|
const windowManager = new WindowManager_1.WindowManager();
|
|
71
142
|
windowManager.postMessage({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"windowManager.test.js","sourceRoot":"","sources":["../../../src/WindowManager/tests/windowManager.test.ts"],"names":[],"mappings":"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"}
|
|
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": "3.3.0-alpha.
|
|
3
|
+
"version": "3.3.0-alpha.1",
|
|
4
4
|
"description": "Signing provider for dApps: Cross Window",
|
|
5
5
|
"main": "out/index.js",
|
|
6
6
|
"types": "out/index.d.ts",
|
|
@@ -19,6 +19,10 @@
|
|
|
19
19
|
},
|
|
20
20
|
"author": "MultiversX",
|
|
21
21
|
"license": "MIT",
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "git+https://github.com/multiversx/mx-sdk-js-web-wallet-cross-window-provider.git"
|
|
25
|
+
},
|
|
22
26
|
"devDependencies": {
|
|
23
27
|
"@multiversx/sdk-core": "^16.0.0",
|
|
24
28
|
"@types/jest": "^30.0.0",
|