@megaeth-labs/wallet-sdk 0.1.24 → 0.1.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +19 -8
- package/dist/index.d.cts +1 -3
- package/dist/index.d.ts +1 -3
- package/dist/index.js +19 -8
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -53,18 +53,29 @@ var events = {
|
|
|
53
53
|
|
|
54
54
|
// src/consts.ts
|
|
55
55
|
var WALLET_URL = "https://account.megaeth.com";
|
|
56
|
-
var LOCAL_WALLET_URL = "http://localhost:4000";
|
|
57
|
-
var LOCAL_HTTPS_WALLET_URL = "https://wallet.local:4000";
|
|
58
|
-
var STAGING_WALLET_URL = "https://account-git-staging-mega-eth.vercel.app";
|
|
59
56
|
var SANDBOX_WALLET_URL = "https://account-sandbox.megaeth.com";
|
|
60
57
|
|
|
61
58
|
// src/helpers.ts
|
|
59
|
+
var ALLOWED_DEV_UI_HOSTS = ["localhost", "wallet.local"];
|
|
60
|
+
var ALLOWED_DEV_UI_HOST_SUFFIXES = [".megaeth.com", "-mega-eth.vercel.app"];
|
|
61
|
+
var isAllowedDevUIUrl = (url) => {
|
|
62
|
+
let hostname;
|
|
63
|
+
try {
|
|
64
|
+
({ hostname } = new URL(url));
|
|
65
|
+
} catch {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
return ALLOWED_DEV_UI_HOSTS.includes(hostname) || ALLOWED_DEV_UI_HOST_SUFFIXES.some((suffix) => hostname.endsWith(suffix));
|
|
69
|
+
};
|
|
62
70
|
var getWalletUrl = (config) => {
|
|
63
71
|
let origin = WALLET_URL;
|
|
64
|
-
if (config.
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
72
|
+
if (config.devUIUrl) {
|
|
73
|
+
if (!isAllowedDevUIUrl(config.devUIUrl)) {
|
|
74
|
+
throw new Error(
|
|
75
|
+
`Invalid devUIUrl "${config.devUIUrl}": host must be localhost, wallet.local, a *.megaeth.com domain, or a *-mega-eth.vercel.app preview.`
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
origin = config.devUIUrl;
|
|
68
79
|
} else if (config.devMode) {
|
|
69
80
|
origin = SANDBOX_WALLET_URL;
|
|
70
81
|
}
|
|
@@ -322,11 +333,11 @@ var createIFrame = (url) => {
|
|
|
322
333
|
};
|
|
323
334
|
var initialise = async (config) => {
|
|
324
335
|
if (state_default.initialised) return;
|
|
325
|
-
state_default.initialised = true;
|
|
326
336
|
state_default.network = config?.network || "mainnet";
|
|
327
337
|
Logger.setLogLevel(config?.logging || "error");
|
|
328
338
|
Logger.debug("SDK", "Initialising...");
|
|
329
339
|
const { origin, uiUrl } = getWalletUrl(config);
|
|
340
|
+
state_default.initialised = true;
|
|
330
341
|
state_default.iframe = createIFrame(uiUrl);
|
|
331
342
|
const messenger = new Penpal.WindowMessenger({
|
|
332
343
|
remoteWindow: state_default.iframe.contentWindow,
|
package/dist/index.d.cts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
|
@@ -17,18 +17,29 @@ var events = {
|
|
|
17
17
|
|
|
18
18
|
// src/consts.ts
|
|
19
19
|
var WALLET_URL = "https://account.megaeth.com";
|
|
20
|
-
var LOCAL_WALLET_URL = "http://localhost:4000";
|
|
21
|
-
var LOCAL_HTTPS_WALLET_URL = "https://wallet.local:4000";
|
|
22
|
-
var STAGING_WALLET_URL = "https://account-git-staging-mega-eth.vercel.app";
|
|
23
20
|
var SANDBOX_WALLET_URL = "https://account-sandbox.megaeth.com";
|
|
24
21
|
|
|
25
22
|
// src/helpers.ts
|
|
23
|
+
var ALLOWED_DEV_UI_HOSTS = ["localhost", "wallet.local"];
|
|
24
|
+
var ALLOWED_DEV_UI_HOST_SUFFIXES = [".megaeth.com", "-mega-eth.vercel.app"];
|
|
25
|
+
var isAllowedDevUIUrl = (url) => {
|
|
26
|
+
let hostname;
|
|
27
|
+
try {
|
|
28
|
+
({ hostname } = new URL(url));
|
|
29
|
+
} catch {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
return ALLOWED_DEV_UI_HOSTS.includes(hostname) || ALLOWED_DEV_UI_HOST_SUFFIXES.some((suffix) => hostname.endsWith(suffix));
|
|
33
|
+
};
|
|
26
34
|
var getWalletUrl = (config) => {
|
|
27
35
|
let origin = WALLET_URL;
|
|
28
|
-
if (config.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
36
|
+
if (config.devUIUrl) {
|
|
37
|
+
if (!isAllowedDevUIUrl(config.devUIUrl)) {
|
|
38
|
+
throw new Error(
|
|
39
|
+
`Invalid devUIUrl "${config.devUIUrl}": host must be localhost, wallet.local, a *.megaeth.com domain, or a *-mega-eth.vercel.app preview.`
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
origin = config.devUIUrl;
|
|
32
43
|
} else if (config.devMode) {
|
|
33
44
|
origin = SANDBOX_WALLET_URL;
|
|
34
45
|
}
|
|
@@ -286,11 +297,11 @@ var createIFrame = (url) => {
|
|
|
286
297
|
};
|
|
287
298
|
var initialise = async (config) => {
|
|
288
299
|
if (state_default.initialised) return;
|
|
289
|
-
state_default.initialised = true;
|
|
290
300
|
state_default.network = config?.network || "mainnet";
|
|
291
301
|
Logger.setLogLevel(config?.logging || "error");
|
|
292
302
|
Logger.debug("SDK", "Initialising...");
|
|
293
303
|
const { origin, uiUrl } = getWalletUrl(config);
|
|
304
|
+
state_default.initialised = true;
|
|
294
305
|
state_default.iframe = createIFrame(uiUrl);
|
|
295
306
|
const messenger = new Penpal.WindowMessenger({
|
|
296
307
|
remoteWindow: state_default.iframe.contentWindow,
|