@multiversx/sdk-web-wallet-cross-window-provider 0.0.5 → 0.0.6

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.
@@ -0,0 +1,26 @@
1
+ import { CrossWindowProviderRequestEnums, CrossWindowProviderResponseEnums, ReplyWithPostMessageType, ResponseTypeMap } from './types';
2
+ export declare class WindowManager {
3
+ private walletUrl;
4
+ private initialized;
5
+ private static _instance;
6
+ walletWindow: Window | null;
7
+ constructor();
8
+ static getInstance(): WindowManager;
9
+ setWalletUrl(url: string): WindowManager;
10
+ init(): Promise<boolean>;
11
+ handshake(): Promise<boolean>;
12
+ private addHandshakeChangeListener;
13
+ listenOnce<T extends CrossWindowProviderResponseEnums>(action: T): Promise<{
14
+ type: T;
15
+ payload: ReplyWithPostMessageType<T>['payload'];
16
+ }>;
17
+ closeConnection(): Promise<boolean>;
18
+ isInitialized(): boolean;
19
+ postMessage<T extends CrossWindowProviderRequestEnums>({ type, payload }: {
20
+ type: T;
21
+ payload: string;
22
+ }): Promise<{
23
+ type: ResponseTypeMap[T] | CrossWindowProviderResponseEnums.cancelResponse;
24
+ payload: ReplyWithPostMessageType<ResponseTypeMap[T]>['payload'];
25
+ }>;
26
+ }
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WindowManager = void 0;
13
+ const constants_1 = require("./constants");
14
+ const errors_1 = require("./errors");
15
+ const types_1 = require("./types");
16
+ class WindowManager {
17
+ constructor() {
18
+ this.walletUrl = '';
19
+ this.initialized = false;
20
+ this.walletWindow = null;
21
+ window.addEventListener('beforeunload', () => {
22
+ var _a;
23
+ (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
24
+ });
25
+ window.name = window.name = constants_1.DAPP_WINDOW_NAME;
26
+ WindowManager._instance = this; // TODO: remove singleton
27
+ }
28
+ static getInstance() {
29
+ return WindowManager._instance;
30
+ }
31
+ setWalletUrl(url) {
32
+ this.walletUrl = url;
33
+ return WindowManager._instance;
34
+ }
35
+ init() {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ window.name = constants_1.DAPP_WINDOW_NAME;
38
+ this.initialized = true;
39
+ return this.initialized;
40
+ });
41
+ }
42
+ handshake() {
43
+ var _a;
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
46
+ this.walletWindow = window.open(this.walletUrl, this.walletUrl);
47
+ const { payload } = yield this.listenOnce(types_1.CrossWindowProviderResponseEnums.handshakeResponse);
48
+ if (!payload) {
49
+ throw new errors_1.ErrCannotEstablishHandshake();
50
+ }
51
+ this.addHandshakeChangeListener();
52
+ return true;
53
+ });
54
+ }
55
+ addHandshakeChangeListener() {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ const walletUrl = this.walletUrl;
58
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
59
+ const self = this;
60
+ window.addEventListener('message', function eventHandler(event) {
61
+ var _a;
62
+ try {
63
+ const { type, payload } = event.data;
64
+ const isWalletEvent = event.origin === new URL(walletUrl).origin;
65
+ if (isWalletEvent &&
66
+ type === types_1.CrossWindowProviderResponseEnums.handshakeResponse) {
67
+ if (payload === false) {
68
+ (_a = self.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
69
+ self.walletWindow = null;
70
+ window.removeEventListener('message', eventHandler);
71
+ }
72
+ }
73
+ }
74
+ catch (_b) { }
75
+ });
76
+ });
77
+ }
78
+ listenOnce(action) {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ if (!this.walletWindow) {
81
+ throw new errors_1.ErrWalletWindowNotInstantiated();
82
+ }
83
+ return yield new Promise((resolve) => {
84
+ const walletUrl = this.walletUrl;
85
+ window.addEventListener('message', function eventHandler(event) {
86
+ return __awaiter(this, void 0, void 0, function* () {
87
+ const { type, payload } = event.data;
88
+ const isWalletEvent = event.origin === new URL(walletUrl).origin;
89
+ const isCurrentAction = action === type ||
90
+ type === types_1.CrossWindowProviderResponseEnums.cancelResponse; // TODO: check if this is needed
91
+ if (!isCurrentAction) {
92
+ return;
93
+ }
94
+ if (isWalletEvent) {
95
+ window.removeEventListener('message', eventHandler);
96
+ resolve({ type, payload });
97
+ }
98
+ });
99
+ });
100
+ });
101
+ });
102
+ }
103
+ closeConnection() {
104
+ var _a;
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ if (!this.initialized) {
107
+ throw new errors_1.ErrProviderNotInitialized();
108
+ }
109
+ yield this.handshake();
110
+ (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
111
+ return true;
112
+ });
113
+ }
114
+ isInitialized() {
115
+ return this.initialized;
116
+ }
117
+ postMessage({ type, payload }) {
118
+ var _a, _b;
119
+ return __awaiter(this, void 0, void 0, function* () {
120
+ yield this.handshake();
121
+ (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.postMessage({
122
+ type,
123
+ payload
124
+ }, this.walletUrl);
125
+ const data = yield this.listenOnce(constants_1.responseTypeMap[type]);
126
+ (_b = this.walletWindow) === null || _b === void 0 ? void 0 : _b.close();
127
+ return data;
128
+ });
129
+ }
130
+ }
131
+ exports.WindowManager = WindowManager;
132
+ WindowManager._instance = new WindowManager();
133
+ //# sourceMappingURL=WindowManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WindowManager.js","sourceRoot":"","sources":["../src/WindowManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { ResponseTypeMap } from './types';
2
+ export declare const responseTypeMap: ResponseTypeMap;
3
+ export declare const DAPP_WINDOW_NAME: string;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DAPP_WINDOW_NAME = 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.signMessageRequest]: types_1.CrossWindowProviderResponseEnums.signMessageResponse,
8
+ [types_1.CrossWindowProviderRequestEnums.loginRequest]: types_1.CrossWindowProviderResponseEnums.loginResponse,
9
+ [types_1.CrossWindowProviderRequestEnums.logoutRequest]: types_1.CrossWindowProviderResponseEnums.disconnectResponse,
10
+ [types_1.CrossWindowProviderRequestEnums.cancelAction]: types_1.CrossWindowProviderResponseEnums.cancelResponse
11
+ };
12
+ exports.DAPP_WINDOW_NAME = window.location.origin;
13
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
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,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;CAClD,CAAC;AAEW,QAAA,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC"}
@@ -1,28 +1,21 @@
1
1
  import { SignableMessage, Transaction } from '@multiversx/sdk-core';
2
- import { CrossWindowProviderResponseEnums } from './types';
3
2
  interface ICrossWindowWalletAccount {
4
3
  address: string;
5
- name?: string;
6
4
  signature?: string;
7
5
  }
8
- export declare const DAPP_WINDOW_NAME: string;
9
6
  export declare class CrossWindowProvider {
10
- private walletUrl;
11
7
  account: ICrossWindowWalletAccount;
12
8
  private initialized;
9
+ private windowManager;
13
10
  private static _instance;
14
- walletWindow: Window | null;
15
- private handshakeEstablished;
16
11
  private accessToken;
17
12
  private constructor();
13
+ private ensureConnected;
14
+ private disconnect;
18
15
  static getInstance(): CrossWindowProvider;
19
16
  setAddress(address: string): CrossWindowProvider;
20
17
  setWalletUrl(url: string): CrossWindowProvider;
21
18
  init(): Promise<boolean>;
22
- handshake(): Promise<boolean>;
23
- private addHandshakeChangeListener;
24
- listenOnce(action: CrossWindowProviderResponseEnums): Promise<any>;
25
- private connectWallet;
26
19
  login(options?: {
27
20
  token?: string;
28
21
  }): Promise<{
@@ -30,12 +23,10 @@ export declare class CrossWindowProvider {
30
23
  signature: string | undefined;
31
24
  }>;
32
25
  logout(): Promise<boolean>;
33
- private disconnect;
34
26
  getAddress(): Promise<string>;
35
27
  isInitialized(): boolean;
36
28
  isConnected(): Promise<boolean>;
37
29
  signTransaction(transaction: Transaction): Promise<Transaction>;
38
- private ensureConnected;
39
30
  signTransactions(transactions: Transaction[]): Promise<Transaction[]>;
40
31
  signMessage(message: SignableMessage): Promise<SignableMessage>;
41
32
  cancelAction(): void;
@@ -9,30 +9,31 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.CrossWindowProvider = exports.DAPP_WINDOW_NAME = void 0;
12
+ exports.CrossWindowProvider = void 0;
13
13
  const sdk_core_1 = require("@multiversx/sdk-core");
14
14
  const errors_1 = require("./errors");
15
15
  const helpers_1 = require("./helpers");
16
16
  const types_1 = require("./types");
17
- exports.DAPP_WINDOW_NAME = window.location.origin;
17
+ const WindowManager_1 = require("./WindowManager");
18
18
  class CrossWindowProvider {
19
19
  constructor() {
20
- this.walletUrl = '';
21
20
  this.account = { address: '' };
22
21
  this.initialized = false;
23
- this.walletWindow = null;
24
- this.handshakeEstablished = false;
25
22
  this.accessToken = undefined;
26
23
  if (CrossWindowProvider._instance) {
27
24
  throw new errors_1.ErrInstantiationFailed();
28
25
  }
29
- window.addEventListener('beforeunload', () => {
30
- var _a;
31
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
32
- });
33
- window.name = window.name = exports.DAPP_WINDOW_NAME;
26
+ this.windowManager = WindowManager_1.WindowManager.getInstance();
34
27
  CrossWindowProvider._instance = this;
35
28
  }
29
+ ensureConnected() {
30
+ if (!this.account.address) {
31
+ throw new errors_1.ErrAccountNotConnected();
32
+ }
33
+ }
34
+ disconnect() {
35
+ this.account = { address: '' };
36
+ }
36
37
  static getInstance() {
37
38
  return CrossWindowProvider._instance;
38
39
  }
@@ -41,132 +42,62 @@ class CrossWindowProvider {
41
42
  return CrossWindowProvider._instance;
42
43
  }
43
44
  setWalletUrl(url) {
44
- this.walletUrl = url;
45
+ this.windowManager.setWalletUrl(url);
45
46
  return CrossWindowProvider._instance;
46
47
  }
47
48
  init() {
48
49
  return __awaiter(this, void 0, void 0, function* () {
49
- window.name = exports.DAPP_WINDOW_NAME;
50
- this.initialized = true;
50
+ this.initialized = yield this.windowManager.init();
51
51
  return this.initialized;
52
52
  });
53
53
  }
54
- handshake() {
54
+ login(options = {}) {
55
55
  return __awaiter(this, void 0, void 0, function* () {
56
- this.walletWindow = window.open(this.walletUrl, this.walletUrl);
57
- const { payload } = yield this.listenOnce(types_1.CrossWindowProviderResponseEnums.handshakeResponse);
58
- if (!payload) {
59
- throw new errors_1.ErrCannotEstablishHandshake();
56
+ if (!this.initialized) {
57
+ throw new errors_1.ErrProviderNotInitialized();
60
58
  }
61
- this.addHandshakeChangeListener();
62
- this.handshakeEstablished = true;
63
- return true;
64
- });
65
- }
66
- addHandshakeChangeListener() {
67
- return __awaiter(this, void 0, void 0, function* () {
68
- const walletUrl = this.walletUrl;
69
- // eslint-disable-next-line @typescript-eslint/no-this-alias
70
- const self = this;
71
- window.addEventListener('message', function eventHandler(event) {
72
- var _a;
73
- try {
74
- const { type, payload } = event.data;
75
- const isWalletEvent = event.origin === new URL(walletUrl).origin;
76
- if (isWalletEvent && type === types_1.CrossWindowProviderResponseEnums.handshakeResponse) {
77
- if (payload === false) {
78
- (_a = self.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
79
- self.handshakeEstablished = false;
80
- self.walletWindow = null;
81
- window.removeEventListener('message', eventHandler);
82
- }
83
- }
84
- }
85
- catch (_b) { }
86
- });
87
- });
88
- }
89
- listenOnce(action) {
90
- return __awaiter(this, void 0, void 0, function* () {
91
- if (!this.walletWindow) {
92
- throw new errors_1.ErrWalletWindowNotInstantiated();
59
+ const isRelogin = yield this.isConnected();
60
+ if (isRelogin) {
61
+ const { address, signature } = this.account;
62
+ return {
63
+ address,
64
+ signature
65
+ };
93
66
  }
94
- const self = this;
95
- return yield new Promise((resolve) => {
96
- const walletUrl = this.walletUrl;
97
- window.addEventListener('message', function eventHandler(event) {
98
- return __awaiter(this, void 0, void 0, function* () {
99
- const { type, payload } = event.data;
100
- const isWalletEvent = event.origin === new URL(walletUrl).origin;
101
- const isCurrentAction = action === type || type === types_1.CrossWindowProviderResponseEnums.cancelResponse;
102
- const isRelogin = yield self.isConnected();
103
- if ((isRelogin && type === 'connect') || !isCurrentAction) {
104
- return;
105
- }
106
- if (isWalletEvent) {
107
- window.removeEventListener('message', eventHandler);
108
- resolve({ type, payload });
109
- }
110
- });
111
- });
112
- });
113
- });
114
- }
115
- connectWallet() {
116
- var _a;
117
- return __awaiter(this, void 0, void 0, function* () {
67
+ this.accessToken = options.token;
118
68
  const payloadQueryString = helpers_1.buildWalletQueryString({
119
69
  params: {
120
70
  token: this.accessToken
121
71
  }
122
72
  });
123
- const isRelogin = yield this.isConnected();
124
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.postMessage({
73
+ const { payload: { address, signature } } = yield this.windowManager.postMessage({
125
74
  type: types_1.CrossWindowProviderRequestEnums.loginRequest,
126
- payload: { queryString: payloadQueryString }
127
- }, this.walletUrl);
128
- if (!isRelogin) {
129
- const { payload: { address, signature } } = yield this.listenOnce(types_1.CrossWindowProviderResponseEnums.loginResponse);
130
- this.account.address = address;
131
- this.account.signature = signature;
132
- }
133
- });
134
- }
135
- login(options = {}) {
136
- var _a;
137
- return __awaiter(this, void 0, void 0, function* () {
138
- if (!this.initialized) {
139
- throw new errors_1.ErrProviderNotInitialized();
140
- }
141
- this.accessToken = options.token;
142
- yield this.handshake();
143
- yield this.connectWallet();
144
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
75
+ payload: { queryString: payloadQueryString } // TODO: needs to change to plain qyerystirng
76
+ });
77
+ this.account.address = address;
78
+ this.account.signature = signature;
145
79
  return { address: this.account.address, signature: this.account.signature };
146
80
  });
147
81
  }
148
82
  logout() {
149
- var _a;
150
83
  return __awaiter(this, void 0, void 0, function* () {
151
84
  if (!this.initialized) {
152
85
  throw new errors_1.ErrProviderNotInitialized();
153
86
  }
154
87
  this.ensureConnected();
155
- yield this.handshake();
156
88
  this.disconnect();
157
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.close();
158
- return true;
89
+ const connectionClosed = yield this.windowManager.closeConnection();
90
+ // TODO: postMessage to wallet to logout
91
+ return connectionClosed;
159
92
  });
160
93
  }
161
- disconnect() {
162
- this.account = { address: '' };
163
- }
164
94
  getAddress() {
95
+ var _a, _b;
165
96
  return __awaiter(this, void 0, void 0, function* () {
166
97
  if (!this.initialized) {
167
98
  throw new errors_1.ErrProviderNotInitialized();
168
99
  }
169
- return this.account ? this.account.address : '';
100
+ return (_b = (_a = this.account) === null || _a === void 0 ? void 0 : _a.address) !== null && _b !== void 0 ? _b : '';
170
101
  });
171
102
  }
172
103
  isInitialized() {
@@ -187,25 +118,19 @@ class CrossWindowProvider {
187
118
  return signedTransactions[0];
188
119
  });
189
120
  }
190
- ensureConnected() {
191
- if (!this.account.address) {
192
- throw new errors_1.ErrAccountNotConnected();
193
- }
194
- }
195
121
  signTransactions(transactions) {
196
- var _a, _b;
197
122
  return __awaiter(this, void 0, void 0, function* () {
198
123
  this.ensureConnected();
199
- yield this.handshake();
200
- yield this.connectWallet();
201
124
  const payloadQueryString = helpers_1.buildTransactionsQueryString(transactions);
202
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.postMessage({ type: types_1.CrossWindowProviderRequestEnums.signTransactionsRequest, payload: payloadQueryString }, this.walletUrl);
203
- const { type, payload: signedPlainTransactions } = yield this.listenOnce(types_1.CrossWindowProviderResponseEnums.signTransactionsResponse);
204
- (_b = this.walletWindow) === null || _b === void 0 ? void 0 : _b.close();
125
+ const { type, payload: signedPlainTransactions } = yield this.windowManager.postMessage({
126
+ type: types_1.CrossWindowProviderRequestEnums.signTransactionsRequest,
127
+ payload: payloadQueryString
128
+ });
205
129
  if (type === types_1.CrossWindowProviderResponseEnums.cancelResponse) {
206
- throw new errors_1.ErrTransactionCAncelled();
130
+ throw new errors_1.ErrTransactionCancelled();
207
131
  }
208
- if (!signedPlainTransactions || !signedPlainTransactions.length) {
132
+ const hasTransactions = (signedPlainTransactions === null || signedPlainTransactions === void 0 ? void 0 : signedPlainTransactions.length) > 0;
133
+ if (!hasTransactions) {
209
134
  throw new errors_1.ErrCouldNotSignTransaction();
210
135
  }
211
136
  const signedTransactions = signedPlainTransactions.map((tx) => {
@@ -216,29 +141,30 @@ class CrossWindowProvider {
216
141
  });
217
142
  }
218
143
  signMessage(message) {
219
- var _a, _b;
220
144
  return __awaiter(this, void 0, void 0, function* () {
221
145
  this.ensureConnected();
222
- yield this.handshake();
223
- yield this.connectWallet();
224
146
  const payloadQueryString = helpers_1.buildWalletQueryString({
225
147
  params: {
226
148
  message: message.message.toString()
227
149
  }
228
150
  });
229
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.postMessage({ type: types_1.CrossWindowProviderRequestEnums.signMessageRequest, payload: payloadQueryString }, this.walletUrl);
230
- const { payload: { status, signature } } = yield this.listenOnce(types_1.CrossWindowProviderResponseEnums.signMessageResponse);
231
- (_b = this.walletWindow) === null || _b === void 0 ? void 0 : _b.close();
151
+ const { payload: { status, signature } } = yield this.windowManager.postMessage({
152
+ type: types_1.CrossWindowProviderRequestEnums.signMessageRequest,
153
+ payload: payloadQueryString
154
+ });
232
155
  if (status !== types_1.SignMessageStatusEnum.signed) {
233
156
  throw new errors_1.ErrCouldNotSignMessage();
234
157
  }
235
- message.applySignature(Buffer.from(signature, 'hex'));
158
+ message.applySignature(Buffer.from(String(signature), 'hex'));
236
159
  return message;
237
160
  });
238
161
  }
239
162
  cancelAction() {
240
163
  var _a;
241
- (_a = this.walletWindow) === null || _a === void 0 ? void 0 : _a.postMessage({ type: types_1.CrossWindowProviderRequestEnums.cancelAction }, this.walletUrl);
164
+ (_a = this.windowManager) === null || _a === void 0 ? void 0 : _a.postMessage({
165
+ type: types_1.CrossWindowProviderRequestEnums.cancelAction,
166
+ payload: ''
167
+ });
242
168
  }
243
169
  }
244
170
  exports.CrossWindowProvider = CrossWindowProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"crossWindowProvider.js","sourceRoot":"","sources":["../src/crossWindowProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crossWindowProvider.js","sourceRoot":"","sources":["../src/crossWindowProvider.ts"],"names":[],"mappings":"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"}
package/out/errors.d.ts CHANGED
@@ -23,7 +23,7 @@ export declare class ErrWalletWindowNotInstantiated extends Err {
23
23
  export declare class ErrProviderNotInitialized extends Err {
24
24
  constructor();
25
25
  }
26
- export declare class ErrTransactionCAncelled extends Err {
26
+ export declare class ErrTransactionCancelled extends Err {
27
27
  constructor();
28
28
  }
29
29
  export declare class ErrCouldNotSignTransaction extends Err {
package/out/errors.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ErrCouldNotSignMessage = exports.ErrCouldNotSignTransaction = exports.ErrTransactionCAncelled = exports.ErrProviderNotInitialized = exports.ErrWalletWindowNotInstantiated = exports.ErrInstantiationFailed = exports.ErrCannotEstablishHandshake = exports.ErrAccountNotConnected = exports.ErrCannotSignSingleTransaction = exports.Err = void 0;
3
+ exports.ErrCouldNotSignMessage = exports.ErrCouldNotSignTransaction = exports.ErrTransactionCancelled = exports.ErrProviderNotInitialized = exports.ErrWalletWindowNotInstantiated = exports.ErrInstantiationFailed = exports.ErrCannotEstablishHandshake = exports.ErrAccountNotConnected = exports.ErrCannotSignSingleTransaction = exports.Err = void 0;
4
4
  /**
5
5
  * The base class for exceptions (errors).
6
6
  */
@@ -48,12 +48,12 @@ class ErrProviderNotInitialized extends Err {
48
48
  }
49
49
  }
50
50
  exports.ErrProviderNotInitialized = ErrProviderNotInitialized;
51
- class ErrTransactionCAncelled extends Err {
51
+ class ErrTransactionCancelled extends Err {
52
52
  constructor() {
53
53
  super('Transaction canceled.');
54
54
  }
55
55
  }
56
- exports.ErrTransactionCAncelled = ErrTransactionCAncelled;
56
+ exports.ErrTransactionCancelled = ErrTransactionCancelled;
57
57
  class ErrCouldNotSignTransaction extends Err {
58
58
  constructor() {
59
59
  super('Could not sign transactions');
package/out/errors.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,GAAI,SAAQ,KAAK;IAG5B,YAAmB,OAAe,EAAE,KAAa;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QAHjB,UAAK,GAAsB,SAAS,CAAC;QAInC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAPD,kBAOC;AAED,MAAa,8BAA+B,SAAQ,GAAG;IACrD;QACE,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC3C,CAAC;CACF;AAJD,wEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACrC,CAAC;CACF;AAJD,wDAIC;AAGD,MAAa,2BAA4B,SAAQ,GAAG;IAClD;QACE,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC9C,CAAC;CACF;AAJD,kEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CAAC,oFAAoF,CAAC,CAAC;IAC9F,CAAC;CACF;AAJD,wDAIC;AAED,MAAa,8BAA+B,SAAQ,GAAG;IACrD;QACE,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC7C,CAAC;CACF;AAJD,wEAIC;AAGD,MAAa,yBAA0B,SAAQ,GAAG;IAChD;QACE,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC9E,CAAC;CACF;AAJD,8DAIC;AAGD,MAAa,uBAAwB,SAAQ,GAAG;IAC9C;QACE,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,CAAC;CACF;AAJD,0DAIC;AAED,MAAa,0BAA2B,SAAQ,GAAG;IACjD;QACE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACvC,CAAC;CACF;AAJD,gEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAClC,CAAC;CACF;AAJD,wDAIC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,GAAI,SAAQ,KAAK;IAG5B,YAAmB,OAAe,EAAE,KAAa;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;QAHjB,UAAK,GAAsB,SAAS,CAAC;QAInC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAPD,kBAOC;AAED,MAAa,8BAA+B,SAAQ,GAAG;IACrD;QACE,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC3C,CAAC;CACF;AAJD,wEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CAAC,2BAA2B,CAAC,CAAC;IACrC,CAAC;CACF;AAJD,wDAIC;AAED,MAAa,2BAA4B,SAAQ,GAAG;IAClD;QACE,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC9C,CAAC;CACF;AAJD,kEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CACH,oFAAoF,CACrF,CAAC;IACJ,CAAC;CACF;AAND,wDAMC;AAED,MAAa,8BAA+B,SAAQ,GAAG;IACrD;QACE,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC7C,CAAC;CACF;AAJD,wEAIC;AAED,MAAa,yBAA0B,SAAQ,GAAG;IAChD;QACE,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC9E,CAAC;CACF;AAJD,8DAIC;AAED,MAAa,uBAAwB,SAAQ,GAAG;IAC9C;QACE,KAAK,CAAC,uBAAuB,CAAC,CAAC;IACjC,CAAC;CACF;AAJD,0DAIC;AAED,MAAa,0BAA2B,SAAQ,GAAG;IACjD;QACE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACvC,CAAC;CACF;AAJD,gEAIC;AAED,MAAa,sBAAuB,SAAQ,GAAG;IAC7C;QACE,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAClC,CAAC;CACF;AAJD,wDAIC"}
@@ -1,2 +1,2 @@
1
- import { Transaction } from "@multiversx/sdk-core/out";
1
+ import { Transaction } from '@multiversx/sdk-core/out';
2
2
  export declare const buildTransactionsQueryString: (transactions: Transaction[]) => string;
@@ -2,6 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildTransactionsQueryString = void 0;
4
4
  const buildWalletQueryString_1 = require("./buildWalletQueryString");
5
+ const prepareWalletTransaction = (transaction) => {
6
+ const plainTransaction = transaction.toPlainObject();
7
+ // We adjust the data field, in order to make it compatible with what the web wallet expects.
8
+ if (plainTransaction.data) {
9
+ plainTransaction.data = Buffer.from(plainTransaction.data, 'base64').toString();
10
+ if (plainTransaction.receiverUsername) {
11
+ plainTransaction.receiverUsername = Buffer.from(plainTransaction.receiverUsername, 'base64').toString();
12
+ }
13
+ if (plainTransaction.senderUsername) {
14
+ plainTransaction.senderUsername = Buffer.from(plainTransaction.senderUsername, 'base64').toString();
15
+ }
16
+ // The web wallet expects the data field to be a string, even if it's empty (early 2023).
17
+ plainTransaction.data = plainTransaction.data || '';
18
+ }
19
+ return plainTransaction;
20
+ };
5
21
  const buildTransactionsQueryString = (transactions) => {
6
22
  const jsonToSend = {};
7
23
  transactions.map((tx) => {
@@ -15,24 +31,8 @@ const buildTransactionsQueryString = (transactions) => {
15
31
  }
16
32
  });
17
33
  return buildWalletQueryString_1.buildWalletQueryString({
18
- params: jsonToSend,
34
+ params: jsonToSend
19
35
  });
20
36
  };
21
37
  exports.buildTransactionsQueryString = buildTransactionsQueryString;
22
- const prepareWalletTransaction = (transaction) => {
23
- const plainTransaction = transaction.toPlainObject();
24
- // We adjust the data field, in order to make it compatible with what the web wallet expects.
25
- if (plainTransaction.data) {
26
- plainTransaction.data = Buffer.from(plainTransaction.data, "base64").toString();
27
- if (plainTransaction.receiverUsername) {
28
- plainTransaction.receiverUsername = Buffer.from(plainTransaction.receiverUsername, "base64").toString();
29
- }
30
- if (plainTransaction.senderUsername) {
31
- plainTransaction.senderUsername = Buffer.from(plainTransaction.senderUsername, "base64").toString();
32
- }
33
- // The web wallet expects the data field to be a string, even if it's empty (early 2023).
34
- plainTransaction.data = plainTransaction.data || "";
35
- }
36
- return plainTransaction;
37
- };
38
38
  //# sourceMappingURL=buildTransactionsQueryString.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildTransactionsQueryString.js","sourceRoot":"","sources":["../../src/helpers/buildTransactionsQueryString.ts"],"names":[],"mappings":";;;AACA,qEAAkE;AAE3D,MAAM,4BAA4B,GAAG,CACxC,YAA2B,EACnB,EAAE;IACV,MAAM,UAAU,GAAQ,EAAE,CAAC;IAC3B,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IACE,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC9B,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,EAClC;gBACA,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;aACzB;YAED,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SAC1C;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,+CAAsB,CAAC;QAC5B,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;AACL,CAAC,CAAC;AArBS,QAAA,4BAA4B,gCAqBrC;AAEF,MAAM,wBAAwB,GAAG,CAAC,WAAwB,EAAO,EAAE;IACjE,MAAM,gBAAgB,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;IAErD,6FAA6F;IAC7F,IAAI,gBAAgB,CAAC,IAAI,EAAE;QACzB,gBAAgB,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CACjC,gBAAgB,CAAC,IAAI,EACrB,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;QAEb,IAAI,gBAAgB,CAAC,gBAAgB,EAAE;YACrC,gBAAgB,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAC7C,gBAAgB,CAAC,gBAAgB,EACjC,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;SACd;QAED,IAAI,gBAAgB,CAAC,cAAc,EAAE;YACnC,gBAAgB,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,CAC3C,gBAAgB,CAAC,cAAc,EAC/B,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;SACd;QACD,yFAAyF;QACzF,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,IAAI,EAAE,CAAC;KACrD;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC"}
1
+ {"version":3,"file":"buildTransactionsQueryString.js","sourceRoot":"","sources":["../../src/helpers/buildTransactionsQueryString.ts"],"names":[],"mappings":";;;AACA,qEAAkE;AAElE,MAAM,wBAAwB,GAAG,CAAC,WAAwB,EAAO,EAAE;IACjE,MAAM,gBAAgB,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;IAErD,6FAA6F;IAC7F,IAAI,gBAAgB,CAAC,IAAI,EAAE;QACzB,gBAAgB,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CACjC,gBAAgB,CAAC,IAAI,EACrB,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;QAEb,IAAI,gBAAgB,CAAC,gBAAgB,EAAE;YACrC,gBAAgB,CAAC,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAC7C,gBAAgB,CAAC,gBAAgB,EACjC,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;SACd;QAED,IAAI,gBAAgB,CAAC,cAAc,EAAE;YACnC,gBAAgB,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI,CAC3C,gBAAgB,CAAC,cAAc,EAC/B,QAAQ,CACT,CAAC,QAAQ,EAAE,CAAC;SACd;QACD,yFAAyF;QACzF,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,IAAI,EAAE,CAAC;KACrD;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEK,MAAM,4BAA4B,GAAG,CAC1C,YAA2B,EACnB,EAAE;IACV,MAAM,UAAU,GAAQ,EAAE,CAAC;IAC3B,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACtB,MAAM,OAAO,GAAG,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAC7C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IACE,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC9B,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,EAClC;gBACA,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;aACzB;YAED,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SAC1C;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,+CAAsB,CAAC;QAC5B,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;AACL,CAAC,CAAC;AArBW,QAAA,4BAA4B,gCAqBvC"}
package/out/types.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { IPlainTransactionObject } from '@multiversx/sdk-core';
1
2
  export declare enum CrossWindowProviderRequestEnums {
2
3
  signTransactionsRequest = "SIGN_TRANSACTIONS_REQUEST",
3
4
  signMessageRequest = "SIGN_MESSAGE_REQUEST",
@@ -6,14 +7,47 @@ export declare enum CrossWindowProviderRequestEnums {
6
7
  cancelAction = "CANCEL_ACTION_REQUEST"
7
8
  }
8
9
  export declare enum CrossWindowProviderResponseEnums {
9
- signTransactionsResponse = "SIGN_TRANSACTIONS_RESPONSE",
10
- signMessageResponse = "SIGN_MESSAGE_RESPONSE",
11
- loginResponse = "LOGIN_RESPONSE",
12
10
  handshakeResponse = "HANDSHAKE_RESPONSE",
13
- cancelResponse = "CANCEL_RESPONSE",
11
+ loginResponse = "LOGIN_RESPONSE",
14
12
  disconnectResponse = "DISCONNECT_RESPONSE",
13
+ cancelResponse = "CANCEL_RESPONSE",
14
+ signTransactionsResponse = "SIGN_TRANSACTIONS_RESPONSE",
15
+ signMessageResponse = "SIGN_MESSAGE_RESPONSE",
15
16
  noneResponse = "NONE_RESPONSE"
16
17
  }
17
18
  export declare enum SignMessageStatusEnum {
18
- signed = "signed"
19
+ pending = "pending",
20
+ failed = "failed",
21
+ signed = "signed",
22
+ cancelled = "cancelled"
19
23
  }
24
+ declare type ReplyWithPostMessageObjectType = {
25
+ [CrossWindowProviderResponseEnums.handshakeResponse]: boolean;
26
+ [CrossWindowProviderResponseEnums.loginResponse]: {
27
+ address: string;
28
+ name?: string;
29
+ signature?: string;
30
+ };
31
+ [CrossWindowProviderResponseEnums.disconnectResponse]: null;
32
+ [CrossWindowProviderResponseEnums.cancelResponse]: {
33
+ address: string;
34
+ };
35
+ [CrossWindowProviderResponseEnums.signTransactionsResponse]: IPlainTransactionObject[];
36
+ [CrossWindowProviderResponseEnums.signMessageResponse]: {
37
+ signature?: string;
38
+ status: SignMessageStatusEnum;
39
+ };
40
+ [CrossWindowProviderResponseEnums.noneResponse]: null;
41
+ };
42
+ export declare type ReplyWithPostMessageType<T extends CrossWindowProviderResponseEnums> = {
43
+ type: T;
44
+ payload: ReplyWithPostMessageObjectType[T];
45
+ };
46
+ export declare type ResponseTypeMap = {
47
+ [CrossWindowProviderRequestEnums.signTransactionsRequest]: CrossWindowProviderResponseEnums.signTransactionsResponse;
48
+ [CrossWindowProviderRequestEnums.signMessageRequest]: CrossWindowProviderResponseEnums.signMessageResponse;
49
+ [CrossWindowProviderRequestEnums.loginRequest]: CrossWindowProviderResponseEnums.loginResponse;
50
+ [CrossWindowProviderRequestEnums.logoutRequest]: CrossWindowProviderResponseEnums.disconnectResponse;
51
+ [CrossWindowProviderRequestEnums.cancelAction]: CrossWindowProviderResponseEnums.cancelResponse;
52
+ };
53
+ export {};
package/out/types.js CHANGED
@@ -11,16 +11,19 @@ var CrossWindowProviderRequestEnums;
11
11
  })(CrossWindowProviderRequestEnums = exports.CrossWindowProviderRequestEnums || (exports.CrossWindowProviderRequestEnums = {}));
12
12
  var CrossWindowProviderResponseEnums;
13
13
  (function (CrossWindowProviderResponseEnums) {
14
- CrossWindowProviderResponseEnums["signTransactionsResponse"] = "SIGN_TRANSACTIONS_RESPONSE";
15
- CrossWindowProviderResponseEnums["signMessageResponse"] = "SIGN_MESSAGE_RESPONSE";
16
- CrossWindowProviderResponseEnums["loginResponse"] = "LOGIN_RESPONSE";
17
14
  CrossWindowProviderResponseEnums["handshakeResponse"] = "HANDSHAKE_RESPONSE";
18
- CrossWindowProviderResponseEnums["cancelResponse"] = "CANCEL_RESPONSE";
15
+ CrossWindowProviderResponseEnums["loginResponse"] = "LOGIN_RESPONSE";
19
16
  CrossWindowProviderResponseEnums["disconnectResponse"] = "DISCONNECT_RESPONSE";
17
+ CrossWindowProviderResponseEnums["cancelResponse"] = "CANCEL_RESPONSE";
18
+ CrossWindowProviderResponseEnums["signTransactionsResponse"] = "SIGN_TRANSACTIONS_RESPONSE";
19
+ CrossWindowProviderResponseEnums["signMessageResponse"] = "SIGN_MESSAGE_RESPONSE";
20
20
  CrossWindowProviderResponseEnums["noneResponse"] = "NONE_RESPONSE";
21
21
  })(CrossWindowProviderResponseEnums = exports.CrossWindowProviderResponseEnums || (exports.CrossWindowProviderResponseEnums = {}));
22
22
  var SignMessageStatusEnum;
23
23
  (function (SignMessageStatusEnum) {
24
+ SignMessageStatusEnum["pending"] = "pending";
25
+ SignMessageStatusEnum["failed"] = "failed";
24
26
  SignMessageStatusEnum["signed"] = "signed";
27
+ SignMessageStatusEnum["cancelled"] = "cancelled";
25
28
  })(SignMessageStatusEnum = exports.SignMessageStatusEnum || (exports.SignMessageStatusEnum = {}));
26
29
  //# sourceMappingURL=types.js.map
package/out/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAAA,IAAY,+BAMT;AANH,WAAY,+BAA+B;IACvC,wFAAqD,CAAA;IACrD,8EAA2C,CAAA;IAC3C,iEAA8B,CAAA;IAC9B,mEAAgC,CAAA;IAChC,yEAAsC,CAAA;AACxC,CAAC,EANS,+BAA+B,GAA/B,uCAA+B,KAA/B,uCAA+B,QAMxC;AAED,IAAY,gCAQX;AARD,WAAY,gCAAgC;IAC1C,2FAAuD,CAAA;IACvD,iFAA6C,CAAA;IAC7C,oEAAgC,CAAA;IAChC,4EAAwC,CAAA;IACxC,sEAAkC,CAAA;IAClC,8EAA0C,CAAA;IAC1C,kEAA8B,CAAA;AAChC,CAAC,EARW,gCAAgC,GAAhC,wCAAgC,KAAhC,wCAAgC,QAQ3C;AAED,IAAY,qBAEX;AAFD,WAAY,qBAAqB;IAC/B,0CAAgB,CAAA;AAClB,CAAC,EAFW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAEhC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,+BAMX;AAND,WAAY,+BAA+B;IACzC,wFAAqD,CAAA;IACrD,8EAA2C,CAAA;IAC3C,iEAA8B,CAAA;IAC9B,mEAAgC,CAAA;IAChC,yEAAsC,CAAA;AACxC,CAAC,EANW,+BAA+B,GAA/B,uCAA+B,KAA/B,uCAA+B,QAM1C;AAED,IAAY,gCAQX;AARD,WAAY,gCAAgC;IAC1C,4EAAwC,CAAA;IACxC,oEAAgC,CAAA;IAChC,8EAA0C,CAAA;IAC1C,sEAAkC,CAAA;IAClC,2FAAuD,CAAA;IACvD,iFAA6C,CAAA;IAC7C,kEAA8B,CAAA;AAChC,CAAC,EARW,gCAAgC,GAAhC,wCAAgC,KAAhC,wCAAgC,QAQ3C;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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@multiversx/sdk-web-wallet-cross-window-provider",
3
- "version": "0.0.5",
3
+ "version": "0.0.6",
4
4
  "description": "Signing provider for dApps: Cross Window",
5
5
  "main": "out/index.js",
6
6
  "types": "out/index.d.js",