infinite-games-sdk 0.1.2 → 0.1.3
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.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +85 -61
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export interface LaunchParams {
|
|
|
12
12
|
signature: string;
|
|
13
13
|
chain: string;
|
|
14
14
|
gameType: string;
|
|
15
|
+
tenant: string;
|
|
15
16
|
}
|
|
16
17
|
export interface LaunchResult {
|
|
17
18
|
launchUrl: string;
|
|
@@ -64,6 +65,8 @@ export interface GameLauncherConfig {
|
|
|
64
65
|
gameType: string;
|
|
65
66
|
/** Default game origin URL (used when no token in URL) */
|
|
66
67
|
defaultOrigin: string;
|
|
68
|
+
/** Tenant */
|
|
69
|
+
tenant: string;
|
|
67
70
|
/** Optional local development origin */
|
|
68
71
|
localOrigin?: string;
|
|
69
72
|
/** Use local origin instead of production */
|
|
@@ -121,7 +124,7 @@ export declare function isOneTimeToken(token: string): boolean;
|
|
|
121
124
|
* UUIDs are 36 characters: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
|
122
125
|
*/
|
|
123
126
|
export declare function isTableId(token: string): boolean;
|
|
124
|
-
export type TokenType =
|
|
127
|
+
export type TokenType = "ott" | "table_id" | "expired_jwt" | "unknown";
|
|
125
128
|
/**
|
|
126
129
|
* Classify a URL token into its type.
|
|
127
130
|
* Useful for quick UI decisions before making network calls.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,qBAAa,SAAU,SAAQ,KAAK;IAClC,IAAI,SAAe;CACpB;AAMD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzE;AAOD,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ const react_1 = require("react");
|
|
|
19
19
|
class AuthError extends Error {
|
|
20
20
|
constructor() {
|
|
21
21
|
super(...arguments);
|
|
22
|
-
this.name =
|
|
22
|
+
this.name = "AuthError";
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
exports.AuthError = AuthError;
|
|
@@ -43,9 +43,9 @@ function fromBackendScale(amount, decimals) {
|
|
|
43
43
|
*/
|
|
44
44
|
function base64UrlDecode(input) {
|
|
45
45
|
// Convert base64url to standard base64
|
|
46
|
-
const base64 = input.replace(/-/g,
|
|
46
|
+
const base64 = input.replace(/-/g, "+").replace(/_/g, "/");
|
|
47
47
|
// Add padding if needed
|
|
48
|
-
const padded = base64 +
|
|
48
|
+
const padded = base64 + "=".repeat((4 - (base64.length % 4)) % 4);
|
|
49
49
|
return atob(padded);
|
|
50
50
|
}
|
|
51
51
|
/**
|
|
@@ -53,7 +53,7 @@ function base64UrlDecode(input) {
|
|
|
53
53
|
*/
|
|
54
54
|
function getTokenAudience(token) {
|
|
55
55
|
try {
|
|
56
|
-
const parts = token.split(
|
|
56
|
+
const parts = token.split(".");
|
|
57
57
|
if (parts.length < 2)
|
|
58
58
|
return null;
|
|
59
59
|
const payload = JSON.parse(base64UrlDecode(parts[1]));
|
|
@@ -67,9 +67,9 @@ function getTokenAudience(token) {
|
|
|
67
67
|
* Check if a token looks like a JWT (has 3 non-empty parts separated by dots).
|
|
68
68
|
*/
|
|
69
69
|
function looksLikeJwt(token) {
|
|
70
|
-
if (!token || typeof token !==
|
|
70
|
+
if (!token || typeof token !== "string")
|
|
71
71
|
return false;
|
|
72
|
-
const parts = token.split(
|
|
72
|
+
const parts = token.split(".");
|
|
73
73
|
return parts.length === 3 && parts.every((p) => p.length > 0);
|
|
74
74
|
}
|
|
75
75
|
/**
|
|
@@ -77,7 +77,7 @@ function looksLikeJwt(token) {
|
|
|
77
77
|
* OTTs have aud: "login" in their payload.
|
|
78
78
|
*/
|
|
79
79
|
function isOneTimeToken(token) {
|
|
80
|
-
return getTokenAudience(token) ===
|
|
80
|
+
return getTokenAudience(token) === "login";
|
|
81
81
|
}
|
|
82
82
|
/**
|
|
83
83
|
* Check if a token looks like a UUID (table_id format).
|
|
@@ -93,27 +93,27 @@ function isTableId(token) {
|
|
|
93
93
|
*/
|
|
94
94
|
function getTokenType(token) {
|
|
95
95
|
if (!token)
|
|
96
|
-
return
|
|
96
|
+
return "unknown";
|
|
97
97
|
if (isTableId(token))
|
|
98
|
-
return
|
|
98
|
+
return "table_id";
|
|
99
99
|
if (isOneTimeToken(token))
|
|
100
|
-
return
|
|
100
|
+
return "ott";
|
|
101
101
|
if (looksLikeJwt(token))
|
|
102
|
-
return
|
|
103
|
-
return
|
|
102
|
+
return "expired_jwt";
|
|
103
|
+
return "unknown";
|
|
104
104
|
}
|
|
105
105
|
// ============================================================================
|
|
106
106
|
// LAUNCHER UTILITIES
|
|
107
107
|
// ============================================================================
|
|
108
108
|
// Valid coin types per chain
|
|
109
109
|
exports.VALID_COINS = {
|
|
110
|
-
sui: [
|
|
111
|
-
solana: [
|
|
110
|
+
sui: ["sui/sui"],
|
|
111
|
+
solana: ["solana/sol"],
|
|
112
112
|
};
|
|
113
113
|
// Universal coin types valid for all chains
|
|
114
|
-
exports.UNIVERSAL_COINS = [
|
|
114
|
+
exports.UNIVERSAL_COINS = ["internal/usd"];
|
|
115
115
|
// Default coin type for all chains
|
|
116
|
-
exports.DEFAULT_COIN_TYPE =
|
|
116
|
+
exports.DEFAULT_COIN_TYPE = "internal/usd";
|
|
117
117
|
/** Get coin type: use URL param if compatible with chain, otherwise default */
|
|
118
118
|
function getCompatibleCoinType(chain, urlCoinType) {
|
|
119
119
|
if (!urlCoinType)
|
|
@@ -130,7 +130,7 @@ function getCompatibleCoinType(chain, urlCoinType) {
|
|
|
130
130
|
// ============================================================================
|
|
131
131
|
// SESSION CLIENT
|
|
132
132
|
// ============================================================================
|
|
133
|
-
const DEFAULT_SESSION_BASE_URL =
|
|
133
|
+
const DEFAULT_SESSION_BASE_URL = "https://sessiondev.infiniteedgers.com";
|
|
134
134
|
class SessionClient {
|
|
135
135
|
constructor(config = {}) {
|
|
136
136
|
this.baseUrl = config.baseUrl || DEFAULT_SESSION_BASE_URL;
|
|
@@ -144,38 +144,40 @@ class SessionClient {
|
|
|
144
144
|
*/
|
|
145
145
|
async getLaunchUrl(params) {
|
|
146
146
|
const response = await fetch(`${this.baseUrl}/api/get_launch_url`, {
|
|
147
|
-
method:
|
|
147
|
+
method: "POST",
|
|
148
148
|
headers: {
|
|
149
|
-
|
|
149
|
+
"Content-Type": "application/json",
|
|
150
150
|
},
|
|
151
151
|
body: JSON.stringify({
|
|
152
152
|
address: params.address,
|
|
153
153
|
signature: params.signature,
|
|
154
154
|
chain: params.chain,
|
|
155
155
|
gameType: params.gameType,
|
|
156
|
+
tenant: params.tenant,
|
|
156
157
|
}),
|
|
157
158
|
});
|
|
158
159
|
if (!response.ok) {
|
|
159
160
|
const errorText = await response.text();
|
|
160
|
-
throw new Error(errorText ||
|
|
161
|
+
throw new Error(errorText || "Failed to get launch URL");
|
|
161
162
|
}
|
|
162
163
|
const data = await response.json();
|
|
163
164
|
let launchUrl = (data.launchUrl ?? data.launch_url);
|
|
164
165
|
if (!launchUrl) {
|
|
165
|
-
throw new Error(
|
|
166
|
+
throw new Error("Missing launch URL in response");
|
|
166
167
|
}
|
|
167
168
|
// Normalize URL if missing protocol
|
|
168
|
-
if (launchUrl.startsWith(
|
|
169
|
+
if (launchUrl.startsWith("//")) {
|
|
169
170
|
launchUrl = `https:${launchUrl}`;
|
|
170
171
|
}
|
|
171
|
-
else if (!launchUrl.startsWith(
|
|
172
|
+
else if (!launchUrl.startsWith("http://") &&
|
|
173
|
+
!launchUrl.startsWith("https://")) {
|
|
172
174
|
launchUrl = `https://${launchUrl}`;
|
|
173
175
|
}
|
|
174
176
|
// Parse the launch URL to extract origin and token
|
|
175
177
|
const parsed = new URL(launchUrl);
|
|
176
|
-
const token = parsed.searchParams.get(
|
|
178
|
+
const token = parsed.searchParams.get("token");
|
|
177
179
|
if (!token) {
|
|
178
|
-
throw new Error(
|
|
180
|
+
throw new Error("Missing token in launch URL");
|
|
179
181
|
}
|
|
180
182
|
return {
|
|
181
183
|
launchUrl,
|
|
@@ -192,17 +194,17 @@ class SessionClient {
|
|
|
192
194
|
*/
|
|
193
195
|
async getSessionToken(oneTimeToken) {
|
|
194
196
|
const response = await fetch(`${this.baseUrl}/api/get_session_token`, {
|
|
195
|
-
method:
|
|
197
|
+
method: "POST",
|
|
196
198
|
headers: {
|
|
197
199
|
Authorization: `Bearer ${oneTimeToken}`,
|
|
198
200
|
},
|
|
199
201
|
});
|
|
200
202
|
if (response.status === 401) {
|
|
201
|
-
throw new AuthError(
|
|
203
|
+
throw new AuthError("Invalid or expired one-time token");
|
|
202
204
|
}
|
|
203
205
|
if (!response.ok) {
|
|
204
206
|
const errorText = await response.text();
|
|
205
|
-
throw new Error(errorText ||
|
|
207
|
+
throw new Error(errorText || "Failed to get session token");
|
|
206
208
|
}
|
|
207
209
|
const data = await response.json();
|
|
208
210
|
if (data.error) {
|
|
@@ -236,7 +238,7 @@ exports.SessionClient = SessionClient;
|
|
|
236
238
|
* ```
|
|
237
239
|
*/
|
|
238
240
|
async function initializeGame(options) {
|
|
239
|
-
const { token, coinType, sessionToken, createTable, getTableInfo, sessionConfig } = options;
|
|
241
|
+
const { token, coinType, sessionToken, createTable, getTableInfo, sessionConfig, } = options;
|
|
240
242
|
// Case 1: Token is a table_id - fetch table info
|
|
241
243
|
if (isTableId(token)) {
|
|
242
244
|
const info = await getTableInfo(token, sessionToken ?? null);
|
|
@@ -249,7 +251,7 @@ async function initializeGame(options) {
|
|
|
249
251
|
// Case 2: Token is a one-time token - exchange and create table
|
|
250
252
|
if (isOneTimeToken(token)) {
|
|
251
253
|
if (!coinType) {
|
|
252
|
-
throw new Error(
|
|
254
|
+
throw new Error("Missing coinType for new game");
|
|
253
255
|
}
|
|
254
256
|
const sessionClient = new SessionClient(sessionConfig);
|
|
255
257
|
const newSessionToken = await sessionClient.getSessionToken(token);
|
|
@@ -262,15 +264,15 @@ async function initializeGame(options) {
|
|
|
262
264
|
}
|
|
263
265
|
// Case 3: Token looks like a JWT but not OTT - likely expired/used
|
|
264
266
|
if (looksLikeJwt(token)) {
|
|
265
|
-
throw new AuthError(
|
|
267
|
+
throw new AuthError("This launch link has expired or was already used. Please launch the game again.");
|
|
266
268
|
}
|
|
267
269
|
// Case 4: Unknown token format
|
|
268
|
-
throw new Error(
|
|
270
|
+
throw new Error("Invalid token format");
|
|
269
271
|
}
|
|
270
272
|
// ============================================================================
|
|
271
273
|
// HISTORY CLIENT
|
|
272
274
|
// ============================================================================
|
|
273
|
-
const DEFAULT_HISTORY_BASE_URL =
|
|
275
|
+
const DEFAULT_HISTORY_BASE_URL = "historydev.infiniteedgers.com";
|
|
274
276
|
const DEFAULT_KEEP_ALIVE_INTERVAL_MS = 30000;
|
|
275
277
|
const DEFAULT_RECONNECT_DELAY_MS = 3000;
|
|
276
278
|
class HistoryClient {
|
|
@@ -295,7 +297,7 @@ class HistoryClient {
|
|
|
295
297
|
this.tableId = tableId;
|
|
296
298
|
this.coinType = coinType;
|
|
297
299
|
// Convert coin_type from "sui/sui" to "sui-sui" for URL
|
|
298
|
-
const coinTypeUrl = coinType.replace(
|
|
300
|
+
const coinTypeUrl = coinType.replace("/", "-");
|
|
299
301
|
const url = `wss://${this.config.baseUrl}/api/ws/${encodeURIComponent(tableId)}/${encodeURIComponent(coinTypeUrl)}`;
|
|
300
302
|
this.ws = new WebSocket(url);
|
|
301
303
|
this.ws.onopen = () => {
|
|
@@ -346,7 +348,7 @@ class HistoryClient {
|
|
|
346
348
|
this.keepAliveInterval = window.setInterval(() => {
|
|
347
349
|
if (this.ws && this.ws.readyState === WebSocket.OPEN) {
|
|
348
350
|
// Send plain 'ping' string - history service expects this format
|
|
349
|
-
this.ws.send(
|
|
351
|
+
this.ws.send("ping");
|
|
350
352
|
}
|
|
351
353
|
}, this.config.keepAliveIntervalMs);
|
|
352
354
|
}
|
|
@@ -400,7 +402,7 @@ function useHistoryClient(tableId, coinType, options = {}) {
|
|
|
400
402
|
}
|
|
401
403
|
}
|
|
402
404
|
catch (error) {
|
|
403
|
-
console.error(
|
|
405
|
+
console.error("[HistoryClient] Failed to parse WebSocket message:", error);
|
|
404
406
|
}
|
|
405
407
|
};
|
|
406
408
|
client.connect(tableId, coinType);
|
|
@@ -415,10 +417,10 @@ function useHistoryClient(tableId, coinType, options = {}) {
|
|
|
415
417
|
}
|
|
416
418
|
}, []);
|
|
417
419
|
const sendBetUpdate = (0, react_1.useCallback)((bets) => {
|
|
418
|
-
send({ type:
|
|
420
|
+
send({ type: "bet_update", ...bets });
|
|
419
421
|
}, [send]);
|
|
420
422
|
const sendGameReset = (0, react_1.useCallback)(() => {
|
|
421
|
-
send({ type:
|
|
423
|
+
send({ type: "game_reset" });
|
|
422
424
|
}, [send]);
|
|
423
425
|
const disconnect = (0, react_1.useCallback)(() => {
|
|
424
426
|
if (clientRef.current) {
|
|
@@ -434,8 +436,8 @@ function useHistoryClient(tableId, coinType, options = {}) {
|
|
|
434
436
|
};
|
|
435
437
|
}
|
|
436
438
|
function useGameLauncher(config, options) {
|
|
437
|
-
const { gameType, defaultOrigin, localOrigin, useLocal = false, tableCreatedMessageType, sessionConfig } = config;
|
|
438
|
-
const { wallet, getSignature, token: inputToken, coinType: inputCoinType, shareBaseUrl } = options;
|
|
439
|
+
const { gameType, defaultOrigin, tenant, localOrigin, useLocal = false, tableCreatedMessageType, sessionConfig, } = config;
|
|
440
|
+
const { wallet, getSignature, token: inputToken, coinType: inputCoinType, shareBaseUrl, } = options;
|
|
439
441
|
// Derive the message type from gameType if not provided
|
|
440
442
|
const tableCreatedType = tableCreatedMessageType ?? `${gameType}-table-created`;
|
|
441
443
|
const [iframeOrigin, setIframeOrigin] = (0, react_1.useState)(null);
|
|
@@ -464,6 +466,7 @@ function useGameLauncher(config, options) {
|
|
|
464
466
|
signature,
|
|
465
467
|
chain,
|
|
466
468
|
gameType,
|
|
469
|
+
tenant,
|
|
467
470
|
});
|
|
468
471
|
return { origin, token };
|
|
469
472
|
}, [getSignature, gameType]);
|
|
@@ -529,11 +532,11 @@ function useGameLauncher(config, options) {
|
|
|
529
532
|
setSessionToken(event.data.tableId);
|
|
530
533
|
setTableCoinType(event.data.coinType ?? null);
|
|
531
534
|
}
|
|
532
|
-
if (event.data?.type ===
|
|
535
|
+
if (event.data?.type === "table-info" && event.data.coinType) {
|
|
533
536
|
// Existing table loaded - update coinType state
|
|
534
537
|
setTableCoinType(event.data.coinType);
|
|
535
538
|
}
|
|
536
|
-
if (event.data?.type ===
|
|
539
|
+
if (event.data?.type === "iframe-height" && event.data.height) {
|
|
537
540
|
setIframeHeight(event.data.height);
|
|
538
541
|
}
|
|
539
542
|
// Handle auth request from iframe (for multiplayer join via shared URL)
|
|
@@ -549,7 +552,10 @@ function useGameLauncher(config, options) {
|
|
|
549
552
|
// Check if wallet is ready
|
|
550
553
|
if (!wallet.connected || !wallet.address || !wallet.chain) {
|
|
551
554
|
// Wallet not connected - store request for when wallet connects
|
|
552
|
-
pendingAuthRequest.current = {
|
|
555
|
+
pendingAuthRequest.current = {
|
|
556
|
+
tableId: event.data.tableId,
|
|
557
|
+
origin: requestOrigin,
|
|
558
|
+
};
|
|
553
559
|
return;
|
|
554
560
|
}
|
|
555
561
|
authRequestInProgress.current = true;
|
|
@@ -566,13 +572,13 @@ function useGameLauncher(config, options) {
|
|
|
566
572
|
console.error(`[SDK] Auth attempt ${attempt} failed:`, error);
|
|
567
573
|
if (attempt < MAX_RETRIES) {
|
|
568
574
|
// Retry after delay
|
|
569
|
-
await new Promise(resolve => setTimeout(resolve, RETRY_DELAY_MS * attempt));
|
|
575
|
+
await new Promise((resolve) => setTimeout(resolve, RETRY_DELAY_MS * attempt));
|
|
570
576
|
authRequestInProgress.current = false;
|
|
571
577
|
return attemptAuth(attempt + 1);
|
|
572
578
|
}
|
|
573
579
|
else {
|
|
574
580
|
// All retries exhausted - send no-auth
|
|
575
|
-
console.error(
|
|
581
|
+
console.error("[SDK] All auth retries exhausted, falling back to spectator mode");
|
|
576
582
|
pendingAuthRequest.current = null;
|
|
577
583
|
const iframe = document.querySelector(`iframe[src*="${iframeOrigin}"]`);
|
|
578
584
|
if (iframe?.contentWindow) {
|
|
@@ -587,9 +593,17 @@ function useGameLauncher(config, options) {
|
|
|
587
593
|
attemptAuth(1);
|
|
588
594
|
}
|
|
589
595
|
};
|
|
590
|
-
window.addEventListener(
|
|
591
|
-
return () => window.removeEventListener(
|
|
592
|
-
}, [
|
|
596
|
+
window.addEventListener("message", handleMessage);
|
|
597
|
+
return () => window.removeEventListener("message", handleMessage);
|
|
598
|
+
}, [
|
|
599
|
+
iframeOrigin,
|
|
600
|
+
tableCreatedType,
|
|
601
|
+
wallet.connected,
|
|
602
|
+
wallet.address,
|
|
603
|
+
wallet.chain,
|
|
604
|
+
launchGame,
|
|
605
|
+
gameType,
|
|
606
|
+
]);
|
|
593
607
|
// Process pending auth request when wallet connects (for requests that came in before wallet was ready)
|
|
594
608
|
(0, react_1.useEffect)(() => {
|
|
595
609
|
if (!wallet.connected || !wallet.address || !wallet.chain)
|
|
@@ -614,11 +628,11 @@ function useGameLauncher(config, options) {
|
|
|
614
628
|
catch (error) {
|
|
615
629
|
console.error(`[SDK] Deferred auth attempt ${attempt} failed:`, error);
|
|
616
630
|
if (attempt < MAX_RETRIES) {
|
|
617
|
-
await new Promise(resolve => setTimeout(resolve, RETRY_DELAY_MS * attempt));
|
|
631
|
+
await new Promise((resolve) => setTimeout(resolve, RETRY_DELAY_MS * attempt));
|
|
618
632
|
return attemptAuth(attempt + 1);
|
|
619
633
|
}
|
|
620
634
|
else {
|
|
621
|
-
console.error(
|
|
635
|
+
console.error("[SDK] All deferred auth retries exhausted");
|
|
622
636
|
const iframe = document.querySelector(`iframe[src*="${iframeOrigin}"]`);
|
|
623
637
|
if (iframe?.contentWindow) {
|
|
624
638
|
iframe.contentWindow.postMessage({ type: `${gameType}:no-auth` }, iframeOrigin ?? pending.origin);
|
|
@@ -630,7 +644,14 @@ function useGameLauncher(config, options) {
|
|
|
630
644
|
}
|
|
631
645
|
}
|
|
632
646
|
attemptAuth(1);
|
|
633
|
-
}, [
|
|
647
|
+
}, [
|
|
648
|
+
wallet.connected,
|
|
649
|
+
wallet.address,
|
|
650
|
+
wallet.chain,
|
|
651
|
+
launchGame,
|
|
652
|
+
gameType,
|
|
653
|
+
iframeOrigin,
|
|
654
|
+
]);
|
|
634
655
|
const retry = (0, react_1.useCallback)(() => {
|
|
635
656
|
launchInProgress.current = false;
|
|
636
657
|
initialIframeSrc.current = null; // Clear so we get fresh iframe src on retry
|
|
@@ -659,30 +680,33 @@ function useGameLauncher(config, options) {
|
|
|
659
680
|
}
|
|
660
681
|
}
|
|
661
682
|
try {
|
|
662
|
-
const url = new URL(
|
|
663
|
-
url.searchParams.set(
|
|
683
|
+
const url = new URL("/", iframeOrigin);
|
|
684
|
+
url.searchParams.set("token", sessionToken);
|
|
664
685
|
if (shareBaseUrl)
|
|
665
|
-
url.searchParams.set(
|
|
686
|
+
url.searchParams.set("shareBaseUrl", shareBaseUrl);
|
|
666
687
|
if (inputCoinType)
|
|
667
|
-
url.searchParams.set(
|
|
688
|
+
url.searchParams.set("coinType", inputCoinType);
|
|
668
689
|
const src = url.toString();
|
|
669
690
|
initialIframeSrc.current = src;
|
|
670
691
|
return src;
|
|
671
692
|
}
|
|
672
693
|
catch (e) {
|
|
673
694
|
// Invalid origin URL - this will be caught and surfaced via error state
|
|
674
|
-
console.error(
|
|
695
|
+
console.error("Invalid iframe origin:", iframeOrigin, e);
|
|
675
696
|
return null;
|
|
676
697
|
}
|
|
677
698
|
}, [iframeOrigin, sessionToken, inputCoinType]);
|
|
678
699
|
// Determine UI state
|
|
679
700
|
const showConnectPrompt = !inputToken && !wallet.connected;
|
|
680
701
|
// isPending: waiting for iframe to be ready (covers both fresh launch and token loading)
|
|
681
|
-
const isPending = !launchError &&
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
702
|
+
const isPending = !launchError &&
|
|
703
|
+
!iframeSrc &&
|
|
704
|
+
// Fresh launch: wallet connected, waiting to launch
|
|
705
|
+
((!inputToken &&
|
|
706
|
+
!!(wallet.address && wallet.connected && wallet.chain) &&
|
|
707
|
+
!sessionToken) ||
|
|
708
|
+
// Token provided: loading (instant but needs a render cycle)
|
|
709
|
+
(!!inputToken && !sessionToken));
|
|
686
710
|
// The table's coin type (set when table is created or loaded)
|
|
687
711
|
const coinType = tableCoinType;
|
|
688
712
|
return {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|