@moon-x/react-sdk 0.2.0 → 0.4.0
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/README.md +10 -28
- package/dist/{chunk-73TEXNFX.js → chunk-4YS67FSE.js} +0 -1
- package/dist/{chunk-MYWXMCMO.mjs → chunk-RFAKWGRF.mjs} +0 -1
- package/dist/{chunk-7BCQAHO6.mjs → chunk-Y6HSLN2H.mjs} +3 -6
- package/dist/{chunk-CDSNBPXB.js → chunk-YFGHPPR5.js} +3 -6
- package/dist/{ethereum-DobH9IQl.d.mts → ethereum-CGSlkQOw.d.mts} +3 -9
- package/dist/{ethereum-BRGKpUFH.d.ts → ethereum-CWhbeptv.d.ts} +3 -9
- package/dist/index.d.mts +11 -27
- package/dist/index.d.ts +11 -27
- package/dist/index.js +3179 -2972
- package/dist/index.mjs +835 -605
- package/dist/{solana-CzXRbze_.d.mts → solana-Cr7r3wi8.d.mts} +0 -3
- package/dist/{solana-D7BgQ4c0.d.ts → solana-nUvZo4Zp.d.ts} +0 -3
- package/dist/wallets/ethereum.d.mts +1 -1
- package/dist/wallets/ethereum.d.ts +1 -1
- package/dist/wallets/ethereum.js +15 -15
- package/dist/wallets/ethereum.mjs +1 -1
- package/dist/wallets/solana.d.mts +1 -1
- package/dist/wallets/solana.d.ts +1 -1
- package/dist/wallets/solana.js +11 -11
- package/dist/wallets/solana.mjs +1 -1
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -389,11 +389,11 @@ function _ts_generator(thisArg, body) {
|
|
|
389
389
|
};
|
|
390
390
|
}
|
|
391
391
|
}
|
|
392
|
-
import { ethereum_exports } from "./chunk-
|
|
393
|
-
import { solana_exports } from "./chunk-
|
|
392
|
+
import { ethereum_exports } from "./chunk-Y6HSLN2H.mjs";
|
|
393
|
+
import { solana_exports } from "./chunk-RFAKWGRF.mjs";
|
|
394
394
|
import { AuthContext, useAuthSDK } from "./chunk-PCEN5CH6.mjs";
|
|
395
395
|
// src/index.ts
|
|
396
|
-
import { useAddPasskey, useLoginWithEmail, usePasskeyStatus, useRegisterPasskey, useRemovePasskey, useUser } from "@moon-x/core/react";
|
|
396
|
+
import { useAddPasskey, useEphemeralSigner, useLoginWithEmail, usePasskeyStatus, useRegisterPasskey, useRemovePasskey, useUser } from "@moon-x/core/react";
|
|
397
397
|
// src/hooks/use-attach-oauth.ts
|
|
398
398
|
import { useCallback, useState } from "react";
|
|
399
399
|
// src/hooks/use-oauth-completion.ts
|
|
@@ -850,7 +850,7 @@ var useMoonKey = function useMoonKey() {
|
|
|
850
850
|
};
|
|
851
851
|
};
|
|
852
852
|
// src/components/auth-provider.tsx
|
|
853
|
-
import { getIframeOrigin as getIframeOrigin2, getIframeUrl as getIframeUrl3, PostMessageClient as PostMessageClient10, PostMessageMethod as
|
|
853
|
+
import { getIframeOrigin as getIframeOrigin2, getIframeUrl as getIframeUrl3, PostMessageClient as PostMessageClient10, PostMessageMethod as PostMessageMethod28, PostMessageType as PostMessageType29 } from "@moon-x/core/utils";
|
|
854
854
|
import { useCallback as useCallback11, useEffect as useEffect34, useMemo as useMemo4, useRef as useRef18, useState as useState51 } from "react";
|
|
855
855
|
import { createPortal as createPortal2 } from "react-dom";
|
|
856
856
|
// src/hooks/use-close-iframe.ts
|
|
@@ -1112,13 +1112,12 @@ var idTokenStorage = {
|
|
|
1112
1112
|
import { sanitizeUserData, verifyIdToken } from "@moon-x/core/lib";
|
|
1113
1113
|
// src/sdk/create-sdk-instance.ts
|
|
1114
1114
|
import { PostMessageMethod as PostMessageMethod8, PostMessageType as PostMessageType9 } from "@moon-x/core/utils";
|
|
1115
|
-
import {
|
|
1116
|
-
import { assertPasskeyInParent as assertPasskeyInParent3 } from "@moon-x/core/sdk";
|
|
1115
|
+
import { flattenPresenceTokens as flattenPresenceTokens3, getInternalPresenceTokens as getInternalPresenceTokens3 } from "@moon-x/core/sdk";
|
|
1117
1116
|
import { createIframeTransport as createIframeTransport5, createWebAuthnPasskey as createWebAuthnPasskey4 } from "@moon-x/core/web";
|
|
1118
1117
|
// src/sdk/sdk-ethereum-methods.ts
|
|
1119
1118
|
import { PostMessageMethod as PostMessageMethod4, PostMessageType as PostMessageType5 } from "@moon-x/core/utils";
|
|
1120
|
-
import { serializeEthereumTransaction
|
|
1121
|
-
import {
|
|
1119
|
+
import { serializeEthereumTransaction } from "@moon-x/core/lib";
|
|
1120
|
+
import { flattenPresenceTokens, getHeadlessEthereumMethods, getInternalPresenceTokens } from "@moon-x/core/sdk";
|
|
1122
1121
|
import { createIframeTransport, createWebAuthnPasskey } from "@moon-x/core/web";
|
|
1123
1122
|
// src/sdk/register-one-shot.ts
|
|
1124
1123
|
import { PostMessageServer as PostMessageServer4 } from "@moon-x/core/utils";
|
|
@@ -1137,6 +1136,10 @@ var registerOneShot = function registerOneShot(type, method, handler) {
|
|
|
1137
1136
|
});
|
|
1138
1137
|
};
|
|
1139
1138
|
// src/sdk/sdk-ethereum-methods.ts
|
|
1139
|
+
var SCOPES_SIGN = [
|
|
1140
|
+
"keyshare_read",
|
|
1141
|
+
"sign"
|
|
1142
|
+
];
|
|
1140
1143
|
var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIsReady, iframeRef, setCurrentFlow, setFlowData, setStartFlow) {
|
|
1141
1144
|
var transport = createIframeTransport({
|
|
1142
1145
|
getContentWindow: function getContentWindow() {
|
|
@@ -1153,7 +1156,8 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1153
1156
|
var headless = getHeadlessEthereumMethods({
|
|
1154
1157
|
transport: transport,
|
|
1155
1158
|
passkey: passkey,
|
|
1156
|
-
publishableKey: publishableKey
|
|
1159
|
+
publishableKey: publishableKey,
|
|
1160
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : ""
|
|
1157
1161
|
});
|
|
1158
1162
|
return _object_spread_props(_object_spread({}, headless), {
|
|
1159
1163
|
// *WithUI variants stay here — they orchestrate parent React state
|
|
@@ -1164,45 +1168,62 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1164
1168
|
// (not before they've seen what they're authorizing).
|
|
1165
1169
|
signEthereumMessageWithUI: function signEthereumMessageWithUI(params) {
|
|
1166
1170
|
return _async_to_generator(function() {
|
|
1171
|
+
var _iframeRef_current, onAssertPasskey;
|
|
1167
1172
|
return _ts_generator(this, function(_state) {
|
|
1173
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
1174
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
1175
|
+
return _async_to_generator(function() {
|
|
1176
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
1177
|
+
return _ts_generator(this, function(_state) {
|
|
1178
|
+
switch(_state.label){
|
|
1179
|
+
case 0:
|
|
1180
|
+
return [
|
|
1181
|
+
4,
|
|
1182
|
+
getInternalPresenceTokens({
|
|
1183
|
+
transport: transport,
|
|
1184
|
+
passkey: passkey,
|
|
1185
|
+
publishableKey: publishableKey,
|
|
1186
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1187
|
+
scopes: SCOPES_SIGN
|
|
1188
|
+
})
|
|
1189
|
+
];
|
|
1190
|
+
case 1:
|
|
1191
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
1192
|
+
return [
|
|
1193
|
+
2,
|
|
1194
|
+
{
|
|
1195
|
+
userHandleB64url: userHandleB64url,
|
|
1196
|
+
credentialIdB64url: credentialIdB64url,
|
|
1197
|
+
presenceTokens: flattenPresenceTokens({
|
|
1198
|
+
tokens: tokens,
|
|
1199
|
+
userHandleB64url: userHandleB64url,
|
|
1200
|
+
credentialIdB64url: credentialIdB64url
|
|
1201
|
+
})
|
|
1202
|
+
}
|
|
1203
|
+
];
|
|
1204
|
+
}
|
|
1205
|
+
});
|
|
1206
|
+
})();
|
|
1207
|
+
};
|
|
1168
1208
|
return [
|
|
1169
1209
|
2,
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
return assertPasskeyInParent({
|
|
1177
|
-
transport: transport,
|
|
1178
|
-
passkey: passkey,
|
|
1179
|
-
publishableKey: publishableKey,
|
|
1180
|
-
requireFreshAssertion: params.requireFreshAssertion
|
|
1181
|
-
});
|
|
1182
|
-
};
|
|
1183
|
-
return [
|
|
1184
|
-
2,
|
|
1185
|
-
new Promise(function(resolve, reject) {
|
|
1186
|
-
var _params_options;
|
|
1187
|
-
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_MESSAGE, function(payload) {
|
|
1188
|
-
var _payload_signature;
|
|
1189
|
-
if (payload.success) resolve({
|
|
1190
|
-
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : ""
|
|
1191
|
-
});
|
|
1192
|
-
else reject(new Error(payload.error || "Sign message failed"));
|
|
1193
|
-
});
|
|
1194
|
-
setCurrentFlow("sign-message");
|
|
1195
|
-
setFlowData({
|
|
1196
|
-
message: params.message,
|
|
1197
|
-
wallet: params.wallet,
|
|
1198
|
-
uiOptions: (_params_options = params.options) === null || _params_options === void 0 ? void 0 : _params_options.uiOptions,
|
|
1199
|
-
onAssertPasskey: onAssertPasskey
|
|
1200
|
-
});
|
|
1201
|
-
setStartFlow(true);
|
|
1202
|
-
})
|
|
1203
|
-
];
|
|
1210
|
+
new Promise(function(resolve, reject) {
|
|
1211
|
+
var _params_options;
|
|
1212
|
+
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_MESSAGE, function(payload) {
|
|
1213
|
+
var _payload_signature;
|
|
1214
|
+
if (payload.success) resolve({
|
|
1215
|
+
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : ""
|
|
1204
1216
|
});
|
|
1205
|
-
|
|
1217
|
+
else reject(new Error(payload.error || "Sign message failed"));
|
|
1218
|
+
});
|
|
1219
|
+
setCurrentFlow("sign-message");
|
|
1220
|
+
setFlowData({
|
|
1221
|
+
message: params.message,
|
|
1222
|
+
wallet: params.wallet,
|
|
1223
|
+
uiOptions: (_params_options = params.options) === null || _params_options === void 0 ? void 0 : _params_options.uiOptions,
|
|
1224
|
+
onAssertPasskey: onAssertPasskey
|
|
1225
|
+
});
|
|
1226
|
+
setStartFlow(true);
|
|
1206
1227
|
})
|
|
1207
1228
|
];
|
|
1208
1229
|
});
|
|
@@ -1210,46 +1231,63 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1210
1231
|
},
|
|
1211
1232
|
signEthereumTransactionWithUI: function signEthereumTransactionWithUI(params) {
|
|
1212
1233
|
return _async_to_generator(function() {
|
|
1234
|
+
var _iframeRef_current, onAssertPasskey;
|
|
1213
1235
|
return _ts_generator(this, function(_state) {
|
|
1236
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
1237
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
1238
|
+
return _async_to_generator(function() {
|
|
1239
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
1240
|
+
return _ts_generator(this, function(_state) {
|
|
1241
|
+
switch(_state.label){
|
|
1242
|
+
case 0:
|
|
1243
|
+
return [
|
|
1244
|
+
4,
|
|
1245
|
+
getInternalPresenceTokens({
|
|
1246
|
+
transport: transport,
|
|
1247
|
+
passkey: passkey,
|
|
1248
|
+
publishableKey: publishableKey,
|
|
1249
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1250
|
+
scopes: SCOPES_SIGN
|
|
1251
|
+
})
|
|
1252
|
+
];
|
|
1253
|
+
case 1:
|
|
1254
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
1255
|
+
return [
|
|
1256
|
+
2,
|
|
1257
|
+
{
|
|
1258
|
+
userHandleB64url: userHandleB64url,
|
|
1259
|
+
credentialIdB64url: credentialIdB64url,
|
|
1260
|
+
presenceTokens: flattenPresenceTokens({
|
|
1261
|
+
tokens: tokens,
|
|
1262
|
+
userHandleB64url: userHandleB64url,
|
|
1263
|
+
credentialIdB64url: credentialIdB64url
|
|
1264
|
+
})
|
|
1265
|
+
}
|
|
1266
|
+
];
|
|
1267
|
+
}
|
|
1268
|
+
});
|
|
1269
|
+
})();
|
|
1270
|
+
};
|
|
1214
1271
|
return [
|
|
1215
1272
|
2,
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
var
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
transport: transport,
|
|
1224
|
-
passkey: passkey,
|
|
1225
|
-
publishableKey: publishableKey,
|
|
1226
|
-
requireFreshAssertion: params.requireFreshAssertion
|
|
1227
|
-
});
|
|
1228
|
-
};
|
|
1229
|
-
return [
|
|
1230
|
-
2,
|
|
1231
|
-
new Promise(function(resolve, reject) {
|
|
1232
|
-
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_TRANSACTION, function(payload) {
|
|
1233
|
-
var _payload_signature;
|
|
1234
|
-
if (payload.success) resolve({
|
|
1235
|
-
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : "",
|
|
1236
|
-
serializedSigned: payload.serializedSigned,
|
|
1237
|
-
hash: payload.hash
|
|
1238
|
-
});
|
|
1239
|
-
else reject(new Error(payload.error || "Sign transaction failed"));
|
|
1240
|
-
});
|
|
1241
|
-
setCurrentFlow("sign-transaction");
|
|
1242
|
-
setFlowData({
|
|
1243
|
-
serializedTransaction: params.transaction,
|
|
1244
|
-
wallet: params.wallet,
|
|
1245
|
-
options: params.options,
|
|
1246
|
-
onAssertPasskey: onAssertPasskey
|
|
1247
|
-
});
|
|
1248
|
-
setStartFlow(true);
|
|
1249
|
-
})
|
|
1250
|
-
];
|
|
1273
|
+
new Promise(function(resolve, reject) {
|
|
1274
|
+
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_TRANSACTION, function(payload) {
|
|
1275
|
+
var _payload_signature;
|
|
1276
|
+
if (payload.success) resolve({
|
|
1277
|
+
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : "",
|
|
1278
|
+
serializedSigned: payload.serializedSigned,
|
|
1279
|
+
hash: payload.hash
|
|
1251
1280
|
});
|
|
1252
|
-
|
|
1281
|
+
else reject(new Error(payload.error || "Sign transaction failed"));
|
|
1282
|
+
});
|
|
1283
|
+
setCurrentFlow("sign-transaction");
|
|
1284
|
+
setFlowData({
|
|
1285
|
+
serializedTransaction: params.transaction,
|
|
1286
|
+
wallet: params.wallet,
|
|
1287
|
+
options: params.options,
|
|
1288
|
+
onAssertPasskey: onAssertPasskey
|
|
1289
|
+
});
|
|
1290
|
+
setStartFlow(true);
|
|
1253
1291
|
})
|
|
1254
1292
|
];
|
|
1255
1293
|
});
|
|
@@ -1257,47 +1295,64 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1257
1295
|
},
|
|
1258
1296
|
signEthereumTypedDataWithUI: function signEthereumTypedDataWithUI(params) {
|
|
1259
1297
|
return _async_to_generator(function() {
|
|
1298
|
+
var _iframeRef_current, onAssertPasskey;
|
|
1260
1299
|
return _ts_generator(this, function(_state) {
|
|
1300
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
1301
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
1302
|
+
return _async_to_generator(function() {
|
|
1303
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
1304
|
+
return _ts_generator(this, function(_state) {
|
|
1305
|
+
switch(_state.label){
|
|
1306
|
+
case 0:
|
|
1307
|
+
return [
|
|
1308
|
+
4,
|
|
1309
|
+
getInternalPresenceTokens({
|
|
1310
|
+
transport: transport,
|
|
1311
|
+
passkey: passkey,
|
|
1312
|
+
publishableKey: publishableKey,
|
|
1313
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1314
|
+
scopes: SCOPES_SIGN
|
|
1315
|
+
})
|
|
1316
|
+
];
|
|
1317
|
+
case 1:
|
|
1318
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
1319
|
+
return [
|
|
1320
|
+
2,
|
|
1321
|
+
{
|
|
1322
|
+
userHandleB64url: userHandleB64url,
|
|
1323
|
+
credentialIdB64url: credentialIdB64url,
|
|
1324
|
+
presenceTokens: flattenPresenceTokens({
|
|
1325
|
+
tokens: tokens,
|
|
1326
|
+
userHandleB64url: userHandleB64url,
|
|
1327
|
+
credentialIdB64url: credentialIdB64url
|
|
1328
|
+
})
|
|
1329
|
+
}
|
|
1330
|
+
];
|
|
1331
|
+
}
|
|
1332
|
+
});
|
|
1333
|
+
})();
|
|
1334
|
+
};
|
|
1261
1335
|
return [
|
|
1262
1336
|
2,
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
var
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
onAssertPasskey = function onAssertPasskey() {
|
|
1269
|
-
return assertPasskeyInParent({
|
|
1270
|
-
transport: transport,
|
|
1271
|
-
passkey: passkey,
|
|
1272
|
-
publishableKey: publishableKey,
|
|
1273
|
-
requireFreshAssertion: params.requireFreshAssertion
|
|
1274
|
-
});
|
|
1275
|
-
};
|
|
1276
|
-
return [
|
|
1277
|
-
2,
|
|
1278
|
-
new Promise(function(resolve, reject) {
|
|
1279
|
-
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_TYPED_DATA, function(payload) {
|
|
1280
|
-
var _payload_signature;
|
|
1281
|
-
if (payload.success) resolve({
|
|
1282
|
-
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : ""
|
|
1283
|
-
});
|
|
1284
|
-
else reject(new Error(payload.error || "Sign typed data failed"));
|
|
1285
|
-
});
|
|
1286
|
-
setCurrentFlow("sign-typed-data");
|
|
1287
|
-
setFlowData({
|
|
1288
|
-
domain: params.domain,
|
|
1289
|
-
types: params.types,
|
|
1290
|
-
primaryType: params.primaryType,
|
|
1291
|
-
message: params.message,
|
|
1292
|
-
wallet: params.wallet,
|
|
1293
|
-
options: params.options,
|
|
1294
|
-
onAssertPasskey: onAssertPasskey
|
|
1295
|
-
});
|
|
1296
|
-
setStartFlow(true);
|
|
1297
|
-
})
|
|
1298
|
-
];
|
|
1337
|
+
new Promise(function(resolve, reject) {
|
|
1338
|
+
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_TYPED_DATA, function(payload) {
|
|
1339
|
+
var _payload_signature;
|
|
1340
|
+
if (payload.success) resolve({
|
|
1341
|
+
signature: (_payload_signature = payload.signature) !== null && _payload_signature !== void 0 ? _payload_signature : ""
|
|
1299
1342
|
});
|
|
1300
|
-
|
|
1343
|
+
else reject(new Error(payload.error || "Sign typed data failed"));
|
|
1344
|
+
});
|
|
1345
|
+
setCurrentFlow("sign-typed-data");
|
|
1346
|
+
setFlowData({
|
|
1347
|
+
domain: params.domain,
|
|
1348
|
+
types: params.types,
|
|
1349
|
+
primaryType: params.primaryType,
|
|
1350
|
+
message: params.message,
|
|
1351
|
+
wallet: params.wallet,
|
|
1352
|
+
options: params.options,
|
|
1353
|
+
onAssertPasskey: onAssertPasskey
|
|
1354
|
+
});
|
|
1355
|
+
setStartFlow(true);
|
|
1301
1356
|
})
|
|
1302
1357
|
];
|
|
1303
1358
|
});
|
|
@@ -1305,44 +1360,61 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1305
1360
|
},
|
|
1306
1361
|
signEthereum7702AuthorizationWithUI: function signEthereum7702AuthorizationWithUI(params) {
|
|
1307
1362
|
return _async_to_generator(function() {
|
|
1363
|
+
var _iframeRef_current, onAssertPasskey;
|
|
1308
1364
|
return _ts_generator(this, function(_state) {
|
|
1365
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
1366
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
1367
|
+
return _async_to_generator(function() {
|
|
1368
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
1369
|
+
return _ts_generator(this, function(_state) {
|
|
1370
|
+
switch(_state.label){
|
|
1371
|
+
case 0:
|
|
1372
|
+
return [
|
|
1373
|
+
4,
|
|
1374
|
+
getInternalPresenceTokens({
|
|
1375
|
+
transport: transport,
|
|
1376
|
+
passkey: passkey,
|
|
1377
|
+
publishableKey: publishableKey,
|
|
1378
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1379
|
+
scopes: SCOPES_SIGN
|
|
1380
|
+
})
|
|
1381
|
+
];
|
|
1382
|
+
case 1:
|
|
1383
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
1384
|
+
return [
|
|
1385
|
+
2,
|
|
1386
|
+
{
|
|
1387
|
+
userHandleB64url: userHandleB64url,
|
|
1388
|
+
credentialIdB64url: credentialIdB64url,
|
|
1389
|
+
presenceTokens: flattenPresenceTokens({
|
|
1390
|
+
tokens: tokens,
|
|
1391
|
+
userHandleB64url: userHandleB64url,
|
|
1392
|
+
credentialIdB64url: credentialIdB64url
|
|
1393
|
+
})
|
|
1394
|
+
}
|
|
1395
|
+
];
|
|
1396
|
+
}
|
|
1397
|
+
});
|
|
1398
|
+
})();
|
|
1399
|
+
};
|
|
1309
1400
|
return [
|
|
1310
1401
|
2,
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_7702_AUTHORIZATION, function(payload) {
|
|
1328
|
-
if (payload.success) resolve(payload);
|
|
1329
|
-
else reject(new Error(payload.error || "Sign EIP-7702 authorization failed"));
|
|
1330
|
-
});
|
|
1331
|
-
setCurrentFlow("sign-7702-authorization");
|
|
1332
|
-
setFlowData({
|
|
1333
|
-
contractAddress: params.contractAddress,
|
|
1334
|
-
chainId: params.chainId,
|
|
1335
|
-
nonce: params.nonce,
|
|
1336
|
-
executor: params.executor,
|
|
1337
|
-
wallet: params.wallet,
|
|
1338
|
-
options: params.options,
|
|
1339
|
-
onAssertPasskey: onAssertPasskey
|
|
1340
|
-
});
|
|
1341
|
-
setStartFlow(true);
|
|
1342
|
-
})
|
|
1343
|
-
];
|
|
1344
|
-
});
|
|
1345
|
-
})();
|
|
1402
|
+
new Promise(function(resolve, reject) {
|
|
1403
|
+
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SIGN_7702_AUTHORIZATION, function(payload) {
|
|
1404
|
+
if (payload.success) resolve(payload);
|
|
1405
|
+
else reject(new Error(payload.error || "Sign EIP-7702 authorization failed"));
|
|
1406
|
+
});
|
|
1407
|
+
setCurrentFlow("sign-7702-authorization");
|
|
1408
|
+
setFlowData({
|
|
1409
|
+
contractAddress: params.contractAddress,
|
|
1410
|
+
chainId: params.chainId,
|
|
1411
|
+
nonce: params.nonce,
|
|
1412
|
+
executor: params.executor,
|
|
1413
|
+
wallet: params.wallet,
|
|
1414
|
+
options: params.options,
|
|
1415
|
+
onAssertPasskey: onAssertPasskey
|
|
1416
|
+
});
|
|
1417
|
+
setStartFlow(true);
|
|
1346
1418
|
})
|
|
1347
1419
|
];
|
|
1348
1420
|
});
|
|
@@ -1350,60 +1422,77 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1350
1422
|
},
|
|
1351
1423
|
sendEthereumTransactionWithUI: function sendEthereumTransactionWithUI(params) {
|
|
1352
1424
|
return _async_to_generator(function() {
|
|
1425
|
+
var _iframeRef_current, onAssertPasskey, serializedTransaction;
|
|
1353
1426
|
return _ts_generator(this, function(_state) {
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
|
|
1406
|
-
|
|
1427
|
+
switch(_state.label){
|
|
1428
|
+
case 0:
|
|
1429
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
1430
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
1431
|
+
return _async_to_generator(function() {
|
|
1432
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
1433
|
+
return _ts_generator(this, function(_state) {
|
|
1434
|
+
switch(_state.label){
|
|
1435
|
+
case 0:
|
|
1436
|
+
return [
|
|
1437
|
+
4,
|
|
1438
|
+
getInternalPresenceTokens({
|
|
1439
|
+
transport: transport,
|
|
1440
|
+
passkey: passkey,
|
|
1441
|
+
publishableKey: publishableKey,
|
|
1442
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1443
|
+
scopes: SCOPES_SIGN
|
|
1444
|
+
})
|
|
1445
|
+
];
|
|
1446
|
+
case 1:
|
|
1447
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
1448
|
+
return [
|
|
1449
|
+
2,
|
|
1450
|
+
{
|
|
1451
|
+
userHandleB64url: userHandleB64url,
|
|
1452
|
+
credentialIdB64url: credentialIdB64url,
|
|
1453
|
+
presenceTokens: flattenPresenceTokens({
|
|
1454
|
+
tokens: tokens,
|
|
1455
|
+
userHandleB64url: userHandleB64url,
|
|
1456
|
+
credentialIdB64url: credentialIdB64url
|
|
1457
|
+
})
|
|
1458
|
+
}
|
|
1459
|
+
];
|
|
1460
|
+
}
|
|
1461
|
+
});
|
|
1462
|
+
})();
|
|
1463
|
+
};
|
|
1464
|
+
return [
|
|
1465
|
+
4,
|
|
1466
|
+
serializeEthereumTransaction(params.transaction)
|
|
1467
|
+
];
|
|
1468
|
+
case 1:
|
|
1469
|
+
serializedTransaction = _state.sent();
|
|
1470
|
+
return [
|
|
1471
|
+
2,
|
|
1472
|
+
new Promise(function(resolve, reject) {
|
|
1473
|
+
var _params_options;
|
|
1474
|
+
registerOneShot(PostMessageType5.WALLET, PostMessageMethod4.SEND_TRANSACTION, function(payload) {
|
|
1475
|
+
var _payload_hash;
|
|
1476
|
+
if (payload.success) resolve({
|
|
1477
|
+
hash: (_payload_hash = payload.hash) !== null && _payload_hash !== void 0 ? _payload_hash : ""
|
|
1478
|
+
});
|
|
1479
|
+
else if (payload.cancelled) reject(new Error("User cancelled transaction"));
|
|
1480
|
+
else reject(new Error(payload.error || "Send transaction failed"));
|
|
1481
|
+
});
|
|
1482
|
+
setCurrentFlow("send-ethereum-transaction");
|
|
1483
|
+
setFlowData({
|
|
1484
|
+
transaction: params.transaction,
|
|
1485
|
+
serializedTransaction: serializedTransaction,
|
|
1486
|
+
wallet: params.wallet,
|
|
1487
|
+
options: params.options,
|
|
1488
|
+
rpcUrl: params.rpcUrl,
|
|
1489
|
+
network: (_params_options = params.options) === null || _params_options === void 0 ? void 0 : _params_options.network,
|
|
1490
|
+
onAssertPasskey: onAssertPasskey
|
|
1491
|
+
});
|
|
1492
|
+
setStartFlow(true);
|
|
1493
|
+
})
|
|
1494
|
+
];
|
|
1495
|
+
}
|
|
1407
1496
|
});
|
|
1408
1497
|
})();
|
|
1409
1498
|
}
|
|
@@ -1411,7 +1500,6 @@ var getEthereumSDKMethods = function getEthereumSDKMethods(publishableKey, getIs
|
|
|
1411
1500
|
};
|
|
1412
1501
|
// src/sdk/sdk-methods.ts
|
|
1413
1502
|
import { PostMessageMethod as PostMessageMethod6, PostMessageType as PostMessageType7 } from "@moon-x/core/utils";
|
|
1414
|
-
import { clearParentAssertCache } from "@moon-x/core/lib";
|
|
1415
1503
|
import { getHeadlessGeneralMethods, getPresenceToken as headlessGetPresenceToken } from "@moon-x/core/sdk";
|
|
1416
1504
|
import { createIframeTransport as createIframeTransport3, createLocalStorageKv, createWebAuthnPasskey as createWebAuthnPasskey2 } from "@moon-x/core/web";
|
|
1417
1505
|
import { authState as authState2 } from "@moon-x/core/lib";
|
|
@@ -1797,6 +1885,10 @@ var getSDKMethods = function getSDKMethods(publishableKey, isMounted, getIsReady
|
|
|
1797
1885
|
passkey: passkey,
|
|
1798
1886
|
storage: storage,
|
|
1799
1887
|
publishableKey: publishableKey,
|
|
1888
|
+
// window is defined in the browser context where this hook runs.
|
|
1889
|
+
// SSR rendering never reaches the factory because the SDK is gated
|
|
1890
|
+
// on the MoonKeyProvider's `useEffect`-mounted lifecycle.
|
|
1891
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
1800
1892
|
setIsAuthenticated: setIsAuthenticated,
|
|
1801
1893
|
setUser: setUser
|
|
1802
1894
|
});
|
|
@@ -1839,7 +1931,6 @@ var getSDKMethods = function getSDKMethods(publishableKey, isMounted, getIsReady
|
|
|
1839
1931
|
case 2:
|
|
1840
1932
|
result = _state.sent();
|
|
1841
1933
|
authState2.clear();
|
|
1842
|
-
clearParentAssertCache();
|
|
1843
1934
|
idTokenStorage.remove();
|
|
1844
1935
|
setFlowData(null);
|
|
1845
1936
|
setCurrentFlow("landing");
|
|
@@ -2095,9 +2186,13 @@ var getPasskeyMethods = function getPasskeyMethods(param) {
|
|
|
2095
2186
|
};
|
|
2096
2187
|
// src/sdk/sdk-solana-methods.ts
|
|
2097
2188
|
import { PostMessageMethod as PostMessageMethod7, PostMessageType as PostMessageType8 } from "@moon-x/core/utils";
|
|
2098
|
-
import { bs58ToBytes
|
|
2099
|
-
import {
|
|
2189
|
+
import { bs58ToBytes } from "@moon-x/core/lib";
|
|
2190
|
+
import { flattenPresenceTokens as flattenPresenceTokens2, getHeadlessSolanaMethods, getInternalPresenceTokens as getInternalPresenceTokens2 } from "@moon-x/core/sdk";
|
|
2100
2191
|
import { createIframeTransport as createIframeTransport4, createWebAuthnPasskey as createWebAuthnPasskey3 } from "@moon-x/core/web";
|
|
2192
|
+
var SCOPES_SIGN2 = [
|
|
2193
|
+
"keyshare_read",
|
|
2194
|
+
"sign"
|
|
2195
|
+
];
|
|
2101
2196
|
var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsReady, iframeRef, setCurrentFlow, setFlowData, setStartFlow) {
|
|
2102
2197
|
var transport = createIframeTransport4({
|
|
2103
2198
|
getContentWindow: function getContentWindow() {
|
|
@@ -2114,7 +2209,8 @@ var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsRead
|
|
|
2114
2209
|
var headless = getHeadlessSolanaMethods({
|
|
2115
2210
|
transport: transport,
|
|
2116
2211
|
passkey: passkey,
|
|
2117
|
-
publishableKey: publishableKey
|
|
2212
|
+
publishableKey: publishableKey,
|
|
2213
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : ""
|
|
2118
2214
|
});
|
|
2119
2215
|
return _object_spread_props(_object_spread({}, headless), {
|
|
2120
2216
|
// WithUI variants — drive the auth-flow-renderer modal. Result
|
|
@@ -2122,72 +2218,89 @@ var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsRead
|
|
|
2122
2218
|
// SolanaSign*Result's typed Uint8Array.
|
|
2123
2219
|
signSolanaMessageWithUI: function signSolanaMessageWithUI(params) {
|
|
2124
2220
|
return _async_to_generator(function() {
|
|
2221
|
+
var _iframeRef_current, onAssertPasskey;
|
|
2125
2222
|
return _ts_generator(this, function(_state) {
|
|
2223
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
2224
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
2225
|
+
return _async_to_generator(function() {
|
|
2226
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
2227
|
+
return _ts_generator(this, function(_state) {
|
|
2228
|
+
switch(_state.label){
|
|
2229
|
+
case 0:
|
|
2230
|
+
return [
|
|
2231
|
+
4,
|
|
2232
|
+
getInternalPresenceTokens2({
|
|
2233
|
+
transport: transport,
|
|
2234
|
+
passkey: passkey,
|
|
2235
|
+
publishableKey: publishableKey,
|
|
2236
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
2237
|
+
scopes: SCOPES_SIGN2
|
|
2238
|
+
})
|
|
2239
|
+
];
|
|
2240
|
+
case 1:
|
|
2241
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
2242
|
+
return [
|
|
2243
|
+
2,
|
|
2244
|
+
{
|
|
2245
|
+
userHandleB64url: userHandleB64url,
|
|
2246
|
+
credentialIdB64url: credentialIdB64url,
|
|
2247
|
+
presenceTokens: flattenPresenceTokens2({
|
|
2248
|
+
tokens: tokens,
|
|
2249
|
+
userHandleB64url: userHandleB64url,
|
|
2250
|
+
credentialIdB64url: credentialIdB64url
|
|
2251
|
+
})
|
|
2252
|
+
}
|
|
2253
|
+
];
|
|
2254
|
+
}
|
|
2255
|
+
});
|
|
2256
|
+
})();
|
|
2257
|
+
};
|
|
2126
2258
|
return [
|
|
2127
2259
|
2,
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
return
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
return [
|
|
2173
|
-
2
|
|
2174
|
-
];
|
|
2175
|
-
}
|
|
2176
|
-
});
|
|
2177
|
-
})();
|
|
2178
|
-
});
|
|
2179
|
-
setCurrentFlow("sign-message");
|
|
2180
|
-
setFlowData({
|
|
2181
|
-
message: params.message,
|
|
2182
|
-
wallet: params.wallet,
|
|
2183
|
-
uiOptions: (_params_options = params.options) === null || _params_options === void 0 ? void 0 : _params_options.uiOptions,
|
|
2184
|
-
onAssertPasskey: onAssertPasskey
|
|
2185
|
-
});
|
|
2186
|
-
setStartFlow(true);
|
|
2187
|
-
})
|
|
2188
|
-
];
|
|
2189
|
-
});
|
|
2190
|
-
})();
|
|
2260
|
+
new Promise(function(resolve, reject) {
|
|
2261
|
+
var _params_options;
|
|
2262
|
+
registerOneShot(PostMessageType8.WALLET, PostMessageMethod7.SIGN_MESSAGE, function(payload) {
|
|
2263
|
+
return _async_to_generator(function() {
|
|
2264
|
+
var _tmp;
|
|
2265
|
+
return _ts_generator(this, function(_state) {
|
|
2266
|
+
switch(_state.label){
|
|
2267
|
+
case 0:
|
|
2268
|
+
if (!payload.success) return [
|
|
2269
|
+
3,
|
|
2270
|
+
2
|
|
2271
|
+
];
|
|
2272
|
+
_tmp = {};
|
|
2273
|
+
return [
|
|
2274
|
+
4,
|
|
2275
|
+
bs58ToBytes(payload.signature)
|
|
2276
|
+
];
|
|
2277
|
+
case 1:
|
|
2278
|
+
resolve.apply(void 0, [
|
|
2279
|
+
(_tmp.signature = _state.sent(), _tmp)
|
|
2280
|
+
]);
|
|
2281
|
+
return [
|
|
2282
|
+
3,
|
|
2283
|
+
3
|
|
2284
|
+
];
|
|
2285
|
+
case 2:
|
|
2286
|
+
reject(new Error(payload.error || "Sign message failed"));
|
|
2287
|
+
_state.label = 3;
|
|
2288
|
+
case 3:
|
|
2289
|
+
return [
|
|
2290
|
+
2
|
|
2291
|
+
];
|
|
2292
|
+
}
|
|
2293
|
+
});
|
|
2294
|
+
})();
|
|
2295
|
+
});
|
|
2296
|
+
setCurrentFlow("sign-message");
|
|
2297
|
+
setFlowData({
|
|
2298
|
+
message: params.message,
|
|
2299
|
+
wallet: params.wallet,
|
|
2300
|
+
uiOptions: (_params_options = params.options) === null || _params_options === void 0 ? void 0 : _params_options.uiOptions,
|
|
2301
|
+
onAssertPasskey: onAssertPasskey
|
|
2302
|
+
});
|
|
2303
|
+
setStartFlow(true);
|
|
2191
2304
|
})
|
|
2192
2305
|
];
|
|
2193
2306
|
});
|
|
@@ -2195,71 +2308,88 @@ var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsRead
|
|
|
2195
2308
|
},
|
|
2196
2309
|
signSolanaTransactionWithUI: function signSolanaTransactionWithUI(params) {
|
|
2197
2310
|
return _async_to_generator(function() {
|
|
2311
|
+
var _iframeRef_current, onAssertPasskey;
|
|
2198
2312
|
return _ts_generator(this, function(_state) {
|
|
2313
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
2314
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
2315
|
+
return _async_to_generator(function() {
|
|
2316
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
2317
|
+
return _ts_generator(this, function(_state) {
|
|
2318
|
+
switch(_state.label){
|
|
2319
|
+
case 0:
|
|
2320
|
+
return [
|
|
2321
|
+
4,
|
|
2322
|
+
getInternalPresenceTokens2({
|
|
2323
|
+
transport: transport,
|
|
2324
|
+
passkey: passkey,
|
|
2325
|
+
publishableKey: publishableKey,
|
|
2326
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
2327
|
+
scopes: SCOPES_SIGN2
|
|
2328
|
+
})
|
|
2329
|
+
];
|
|
2330
|
+
case 1:
|
|
2331
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
2332
|
+
return [
|
|
2333
|
+
2,
|
|
2334
|
+
{
|
|
2335
|
+
userHandleB64url: userHandleB64url,
|
|
2336
|
+
credentialIdB64url: credentialIdB64url,
|
|
2337
|
+
presenceTokens: flattenPresenceTokens2({
|
|
2338
|
+
tokens: tokens,
|
|
2339
|
+
userHandleB64url: userHandleB64url,
|
|
2340
|
+
credentialIdB64url: credentialIdB64url
|
|
2341
|
+
})
|
|
2342
|
+
}
|
|
2343
|
+
];
|
|
2344
|
+
}
|
|
2345
|
+
});
|
|
2346
|
+
})();
|
|
2347
|
+
};
|
|
2199
2348
|
return [
|
|
2200
2349
|
2,
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
|
|
2218
|
-
|
|
2219
|
-
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
return [
|
|
2245
|
-
2
|
|
2246
|
-
];
|
|
2247
|
-
}
|
|
2248
|
-
});
|
|
2249
|
-
})();
|
|
2250
|
-
});
|
|
2251
|
-
setCurrentFlow("sign-transaction");
|
|
2252
|
-
setFlowData({
|
|
2253
|
-
serializedTransaction: params.transaction,
|
|
2254
|
-
wallet: params.wallet,
|
|
2255
|
-
options: params.options,
|
|
2256
|
-
onAssertPasskey: onAssertPasskey
|
|
2257
|
-
});
|
|
2258
|
-
setStartFlow(true);
|
|
2259
|
-
})
|
|
2260
|
-
];
|
|
2261
|
-
});
|
|
2262
|
-
})();
|
|
2350
|
+
new Promise(function(resolve, reject) {
|
|
2351
|
+
registerOneShot(PostMessageType8.WALLET, PostMessageMethod7.SIGN_TRANSACTION, function(payload) {
|
|
2352
|
+
return _async_to_generator(function() {
|
|
2353
|
+
var _tmp;
|
|
2354
|
+
return _ts_generator(this, function(_state) {
|
|
2355
|
+
switch(_state.label){
|
|
2356
|
+
case 0:
|
|
2357
|
+
if (!payload.success) return [
|
|
2358
|
+
3,
|
|
2359
|
+
2
|
|
2360
|
+
];
|
|
2361
|
+
_tmp = {};
|
|
2362
|
+
return [
|
|
2363
|
+
4,
|
|
2364
|
+
bs58ToBytes(payload.signedTransaction)
|
|
2365
|
+
];
|
|
2366
|
+
case 1:
|
|
2367
|
+
resolve.apply(void 0, [
|
|
2368
|
+
(_tmp.signedTransaction = _state.sent(), _tmp)
|
|
2369
|
+
]);
|
|
2370
|
+
return [
|
|
2371
|
+
3,
|
|
2372
|
+
3
|
|
2373
|
+
];
|
|
2374
|
+
case 2:
|
|
2375
|
+
reject(new Error(payload.error || "Sign transaction failed"));
|
|
2376
|
+
_state.label = 3;
|
|
2377
|
+
case 3:
|
|
2378
|
+
return [
|
|
2379
|
+
2
|
|
2380
|
+
];
|
|
2381
|
+
}
|
|
2382
|
+
});
|
|
2383
|
+
})();
|
|
2384
|
+
});
|
|
2385
|
+
setCurrentFlow("sign-transaction");
|
|
2386
|
+
setFlowData({
|
|
2387
|
+
serializedTransaction: params.transaction,
|
|
2388
|
+
wallet: params.wallet,
|
|
2389
|
+
options: params.options,
|
|
2390
|
+
onAssertPasskey: onAssertPasskey
|
|
2391
|
+
});
|
|
2392
|
+
setStartFlow(true);
|
|
2263
2393
|
})
|
|
2264
2394
|
];
|
|
2265
2395
|
});
|
|
@@ -2267,73 +2397,90 @@ var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsRead
|
|
|
2267
2397
|
},
|
|
2268
2398
|
sendSolanaTransactionWithUI: function sendSolanaTransactionWithUI(params) {
|
|
2269
2399
|
return _async_to_generator(function() {
|
|
2400
|
+
var _iframeRef_current, onAssertPasskey;
|
|
2270
2401
|
return _ts_generator(this, function(_state) {
|
|
2402
|
+
if (!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) throw new Error("SDK not ready");
|
|
2403
|
+
onAssertPasskey = function onAssertPasskey() {
|
|
2404
|
+
return _async_to_generator(function() {
|
|
2405
|
+
var _ref, userHandleB64url, credentialIdB64url, tokens;
|
|
2406
|
+
return _ts_generator(this, function(_state) {
|
|
2407
|
+
switch(_state.label){
|
|
2408
|
+
case 0:
|
|
2409
|
+
return [
|
|
2410
|
+
4,
|
|
2411
|
+
getInternalPresenceTokens2({
|
|
2412
|
+
transport: transport,
|
|
2413
|
+
passkey: passkey,
|
|
2414
|
+
publishableKey: publishableKey,
|
|
2415
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
2416
|
+
scopes: SCOPES_SIGN2
|
|
2417
|
+
})
|
|
2418
|
+
];
|
|
2419
|
+
case 1:
|
|
2420
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
2421
|
+
return [
|
|
2422
|
+
2,
|
|
2423
|
+
{
|
|
2424
|
+
userHandleB64url: userHandleB64url,
|
|
2425
|
+
credentialIdB64url: credentialIdB64url,
|
|
2426
|
+
presenceTokens: flattenPresenceTokens2({
|
|
2427
|
+
tokens: tokens,
|
|
2428
|
+
userHandleB64url: userHandleB64url,
|
|
2429
|
+
credentialIdB64url: credentialIdB64url
|
|
2430
|
+
})
|
|
2431
|
+
}
|
|
2432
|
+
];
|
|
2433
|
+
}
|
|
2434
|
+
});
|
|
2435
|
+
})();
|
|
2436
|
+
};
|
|
2271
2437
|
return [
|
|
2272
2438
|
2,
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
];
|
|
2319
|
-
}
|
|
2320
|
-
});
|
|
2321
|
-
})();
|
|
2322
|
-
});
|
|
2323
|
-
setCurrentFlow("send-transaction");
|
|
2324
|
-
setFlowData({
|
|
2325
|
-
serializedTransaction: params.transaction,
|
|
2326
|
-
walletAddress: params.wallet.public_address,
|
|
2327
|
-
rpcUrl: params.rpcUrl,
|
|
2328
|
-
wallet: params.wallet,
|
|
2329
|
-
options: params.options,
|
|
2330
|
-
onAssertPasskey: onAssertPasskey
|
|
2331
|
-
});
|
|
2332
|
-
setStartFlow(true);
|
|
2333
|
-
})
|
|
2334
|
-
];
|
|
2335
|
-
});
|
|
2336
|
-
})();
|
|
2439
|
+
new Promise(function(resolve, reject) {
|
|
2440
|
+
registerOneShot(PostMessageType8.WALLET, PostMessageMethod7.SEND_TRANSACTION, function(payload) {
|
|
2441
|
+
return _async_to_generator(function() {
|
|
2442
|
+
var _tmp;
|
|
2443
|
+
return _ts_generator(this, function(_state) {
|
|
2444
|
+
switch(_state.label){
|
|
2445
|
+
case 0:
|
|
2446
|
+
if (!payload.success) return [
|
|
2447
|
+
3,
|
|
2448
|
+
2
|
|
2449
|
+
];
|
|
2450
|
+
_tmp = {};
|
|
2451
|
+
return [
|
|
2452
|
+
4,
|
|
2453
|
+
bs58ToBytes(payload.signature)
|
|
2454
|
+
];
|
|
2455
|
+
case 1:
|
|
2456
|
+
resolve.apply(void 0, [
|
|
2457
|
+
(_tmp.signature = _state.sent(), _tmp)
|
|
2458
|
+
]);
|
|
2459
|
+
return [
|
|
2460
|
+
3,
|
|
2461
|
+
3
|
|
2462
|
+
];
|
|
2463
|
+
case 2:
|
|
2464
|
+
reject(new Error(payload.error || "Send transaction failed"));
|
|
2465
|
+
_state.label = 3;
|
|
2466
|
+
case 3:
|
|
2467
|
+
return [
|
|
2468
|
+
2
|
|
2469
|
+
];
|
|
2470
|
+
}
|
|
2471
|
+
});
|
|
2472
|
+
})();
|
|
2473
|
+
});
|
|
2474
|
+
setCurrentFlow("send-transaction");
|
|
2475
|
+
setFlowData({
|
|
2476
|
+
serializedTransaction: params.transaction,
|
|
2477
|
+
walletAddress: params.wallet.public_address,
|
|
2478
|
+
rpcUrl: params.rpcUrl,
|
|
2479
|
+
wallet: params.wallet,
|
|
2480
|
+
options: params.options,
|
|
2481
|
+
onAssertPasskey: onAssertPasskey
|
|
2482
|
+
});
|
|
2483
|
+
setStartFlow(true);
|
|
2337
2484
|
})
|
|
2338
2485
|
];
|
|
2339
2486
|
});
|
|
@@ -2342,6 +2489,10 @@ var getSolanaSDKMethods = function getSolanaSDKMethods(publishableKey, getIsRead
|
|
|
2342
2489
|
});
|
|
2343
2490
|
};
|
|
2344
2491
|
// src/sdk/create-sdk-instance.ts
|
|
2492
|
+
var IMPORT_KEY_SCOPES = [
|
|
2493
|
+
"dek_bootstrap",
|
|
2494
|
+
"keyshare_write"
|
|
2495
|
+
];
|
|
2345
2496
|
var createSDKInstance = function createSDKInstance(publishableKey, isMounted, isReady, flowState, iframeRef, onError, onClose, setFlowState, setStartFlow, setCurrentFlow, setFlowData, authProviderConfig, getCurrentIsReady, setIsAuthenticated, setUser, closeCallbacksRef, getStartFlow, setAppearance, refreshUser) {
|
|
2346
2497
|
var currentSuccessCallback = null;
|
|
2347
2498
|
var currentErrorCallback = null;
|
|
@@ -2469,100 +2620,103 @@ var createSDKInstance = function createSDKInstance(publishableKey, isMounted, is
|
|
|
2469
2620
|
// Override getSDKMethods' importKey to support both headless and UI
|
|
2470
2621
|
// modes. With a key provided, we forward straight to the iframe and
|
|
2471
2622
|
// never open the modal. Without a key, we open the ImportWallet flow
|
|
2472
|
-
// and
|
|
2623
|
+
// and let it run its own assert-on-CTA ceremony — minting tokens
|
|
2624
|
+
// here would mean the 30s single-use JWTs expire while the user
|
|
2625
|
+
// sits on the modal.
|
|
2473
2626
|
//
|
|
2474
2627
|
// Return shape MUST be { wallet: PublicWallet } to match the headless
|
|
2475
2628
|
// contract in @moon-x/core/sdk/headless-general.ts → importKey. The
|
|
2476
2629
|
// wrapper in wallets/ethereum.ts and wallets/solana.ts does
|
|
2477
2630
|
// `result.wallet`, so a bare PublicWallet here causes downstream
|
|
2478
2631
|
// `wallet.public_address` accesses to throw on undefined.
|
|
2479
|
-
importKey: function importKey(walletType, key
|
|
2480
|
-
|
|
2481
|
-
|
|
2482
|
-
return
|
|
2483
|
-
|
|
2484
|
-
|
|
2485
|
-
|
|
2486
|
-
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
|
-
|
|
2490
|
-
|
|
2491
|
-
|
|
2492
|
-
|
|
2493
|
-
|
|
2494
|
-
|
|
2495
|
-
|
|
2496
|
-
|
|
2497
|
-
|
|
2498
|
-
|
|
2499
|
-
|
|
2500
|
-
|
|
2501
|
-
|
|
2502
|
-
|
|
2503
|
-
|
|
2504
|
-
|
|
2505
|
-
|
|
2506
|
-
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
2518
|
-
|
|
2519
|
-
|
|
2520
|
-
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
userHandleB64url: userHandleB64url,
|
|
2526
|
-
credentialIdB64url: credentialIdB64url
|
|
2527
|
-
})
|
|
2528
|
-
];
|
|
2529
|
-
case 2:
|
|
2530
|
-
wallet = _state.sent();
|
|
2531
|
-
return [
|
|
2532
|
-
2,
|
|
2533
|
-
{
|
|
2534
|
-
wallet: wallet
|
|
2535
|
-
}
|
|
2536
|
-
];
|
|
2537
|
-
case 3:
|
|
2538
|
-
setCurrentFlow("import-key");
|
|
2539
|
-
setFlowData({
|
|
2632
|
+
importKey: function importKey(walletType, key) {
|
|
2633
|
+
return _async_to_generator(function() {
|
|
2634
|
+
var _iframeRef_current, transport, _ref, userHandleB64url, credentialIdB64url, tokens, presenceTokens, client, wallet;
|
|
2635
|
+
return _ts_generator(this, function(_state) {
|
|
2636
|
+
switch(_state.label){
|
|
2637
|
+
case 0:
|
|
2638
|
+
if (!isMounted) throw new Error("SDK not ready");
|
|
2639
|
+
if (!getCurrentIsReady() || !((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow)) {
|
|
2640
|
+
throw new Error("SDK not ready");
|
|
2641
|
+
}
|
|
2642
|
+
if (!(key !== void 0)) return [
|
|
2643
|
+
3,
|
|
2644
|
+
3
|
|
2645
|
+
];
|
|
2646
|
+
transport = createIframeTransport5({
|
|
2647
|
+
getContentWindow: function getContentWindow() {
|
|
2648
|
+
var _ref;
|
|
2649
|
+
var _iframeRef_current;
|
|
2650
|
+
return (_ref = (_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow) !== null && _ref !== void 0 ? _ref : null;
|
|
2651
|
+
},
|
|
2652
|
+
isReady: function isReady() {
|
|
2653
|
+
var _iframeRef_current;
|
|
2654
|
+
return !!((_iframeRef_current = iframeRef.current) === null || _iframeRef_current === void 0 ? void 0 : _iframeRef_current.contentWindow);
|
|
2655
|
+
}
|
|
2656
|
+
});
|
|
2657
|
+
return [
|
|
2658
|
+
4,
|
|
2659
|
+
getInternalPresenceTokens3({
|
|
2660
|
+
transport: transport,
|
|
2661
|
+
passkey: createWebAuthnPasskey4(),
|
|
2662
|
+
publishableKey: publishableKey,
|
|
2663
|
+
relyingPartyOrigin: typeof window !== "undefined" ? window.location.origin : "",
|
|
2664
|
+
scopes: IMPORT_KEY_SCOPES
|
|
2665
|
+
})
|
|
2666
|
+
];
|
|
2667
|
+
case 1:
|
|
2668
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
2669
|
+
presenceTokens = flattenPresenceTokens3({
|
|
2670
|
+
tokens: tokens,
|
|
2671
|
+
userHandleB64url: userHandleB64url,
|
|
2672
|
+
credentialIdB64url: credentialIdB64url
|
|
2673
|
+
});
|
|
2674
|
+
client = createPostMessageClient(iframeRef.current.contentWindow, publishableKey);
|
|
2675
|
+
return [
|
|
2676
|
+
4,
|
|
2677
|
+
client.send(PostMessageType9.WALLET, PostMessageMethod8.IMPORT_KEY, {
|
|
2540
2678
|
walletType: walletType,
|
|
2679
|
+
key: key,
|
|
2680
|
+
publishableKey: publishableKey,
|
|
2541
2681
|
userHandleB64url: userHandleB64url,
|
|
2542
|
-
credentialIdB64url: credentialIdB64url
|
|
2543
|
-
|
|
2544
|
-
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
|
-
|
|
2548
|
-
|
|
2549
|
-
|
|
2550
|
-
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2555
|
-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
|
|
2682
|
+
credentialIdB64url: credentialIdB64url,
|
|
2683
|
+
presenceTokens: presenceTokens
|
|
2684
|
+
})
|
|
2685
|
+
];
|
|
2686
|
+
case 2:
|
|
2687
|
+
wallet = _state.sent();
|
|
2688
|
+
return [
|
|
2689
|
+
2,
|
|
2690
|
+
{
|
|
2691
|
+
wallet: wallet
|
|
2692
|
+
}
|
|
2693
|
+
];
|
|
2694
|
+
case 3:
|
|
2695
|
+
setCurrentFlow("import-key");
|
|
2696
|
+
setFlowData({
|
|
2697
|
+
walletType: walletType
|
|
2698
|
+
});
|
|
2699
|
+
setStartFlow(true);
|
|
2700
|
+
return [
|
|
2701
|
+
2,
|
|
2702
|
+
new Promise(function(resolve, reject) {
|
|
2703
|
+
currentSuccessCallback = function(data) {
|
|
2704
|
+
currentSuccessCallback = null;
|
|
2705
|
+
currentErrorCallback = null;
|
|
2706
|
+
resolve({
|
|
2707
|
+
wallet: data
|
|
2708
|
+
});
|
|
2709
|
+
};
|
|
2710
|
+
currentErrorCallback = function(error) {
|
|
2711
|
+
currentSuccessCallback = null;
|
|
2712
|
+
currentErrorCallback = null;
|
|
2713
|
+
reject(error);
|
|
2714
|
+
};
|
|
2715
|
+
})
|
|
2716
|
+
];
|
|
2717
|
+
}
|
|
2718
|
+
});
|
|
2719
|
+
})();
|
|
2566
2720
|
}
|
|
2567
2721
|
}), getSolanaSDKMethods(publishableKey, getCurrentIsReady, iframeRef, setCurrentFlow, setFlowData, setStartFlow), getEthereumSDKMethods(publishableKey, getCurrentIsReady, iframeRef, setCurrentFlow, setFlowData, setStartFlow));
|
|
2568
2722
|
};
|
|
@@ -2634,7 +2788,7 @@ var getWalletErrorMessage = function getWalletErrorMessage(errorResponse) {
|
|
|
2634
2788
|
};
|
|
2635
2789
|
// src/components/flows/add-passkey/add-passkey.tsx
|
|
2636
2790
|
import { PostMessageMethod as PostMessageMethod11, PostMessageType as PostMessageType12 } from "@moon-x/core/utils";
|
|
2637
|
-
import {
|
|
2791
|
+
import { flattenPresenceTokens as flattenPresenceTokens4, getInternalPresenceTokens as getInternalPresenceTokens4 } from "@moon-x/core/sdk";
|
|
2638
2792
|
import { createWebAuthnPasskey as createWebAuthnPasskey5 } from "@moon-x/core/web";
|
|
2639
2793
|
import { startRegistration } from "@simplewebauthn/browser";
|
|
2640
2794
|
import { CheckCircle2, Fingerprint, KeyRound, Plus } from "lucide-react";
|
|
@@ -3817,6 +3971,10 @@ function DetailRow(param) {
|
|
|
3817
3971
|
}
|
|
3818
3972
|
// src/components/flows/add-passkey/add-passkey.tsx
|
|
3819
3973
|
import { jsx as jsx16, jsxs as jsxs10 } from "react/jsx-runtime";
|
|
3974
|
+
var ADD_PASSKEY_SCOPES = [
|
|
3975
|
+
"passkey_enroll",
|
|
3976
|
+
"wrap_add"
|
|
3977
|
+
];
|
|
3820
3978
|
var SUCCESS_AUTO_CLOSE_MS = 3e3;
|
|
3821
3979
|
var generateUserIdB64url = function generateUserIdB64url() {
|
|
3822
3980
|
var bytes = crypto.getRandomValues(new Uint8Array(32));
|
|
@@ -3863,7 +4021,7 @@ var AddPasskey = function AddPasskey(param) {
|
|
|
3863
4021
|
};
|
|
3864
4022
|
var handleUnlock = function handleUnlock() {
|
|
3865
4023
|
return _async_to_generator(function() {
|
|
3866
|
-
var _ref, userHandleB64url, credentialIdB64url, error;
|
|
4024
|
+
var _dekInfo_allow_credential_ids_b64url, transport, dekInfo, allowList, _ref, userHandleB64url, credentialIdB64url, tokens, error;
|
|
3867
4025
|
return _ts_generator(this, function(_state) {
|
|
3868
4026
|
switch(_state.label){
|
|
3869
4027
|
case 0:
|
|
@@ -3873,32 +4031,50 @@ var AddPasskey = function AddPasskey(param) {
|
|
|
3873
4031
|
case 1:
|
|
3874
4032
|
_state.trys.push([
|
|
3875
4033
|
1,
|
|
3876
|
-
|
|
4034
|
+
4,
|
|
3877
4035
|
,
|
|
3878
|
-
|
|
4036
|
+
5
|
|
3879
4037
|
]);
|
|
4038
|
+
transport = getIframeTransport();
|
|
3880
4039
|
return [
|
|
3881
4040
|
4,
|
|
3882
|
-
|
|
3883
|
-
|
|
4041
|
+
transport.send(PostMessageType12.AUTH, PostMessageMethod11.GET_DEK_INFO, {
|
|
4042
|
+
publishableKey: publishableKey
|
|
4043
|
+
})
|
|
4044
|
+
];
|
|
4045
|
+
case 2:
|
|
4046
|
+
dekInfo = _state.sent();
|
|
4047
|
+
allowList = (_dekInfo_allow_credential_ids_b64url = dekInfo.allow_credential_ids_b64url) !== null && _dekInfo_allow_credential_ids_b64url !== void 0 ? _dekInfo_allow_credential_ids_b64url : [];
|
|
4048
|
+
return [
|
|
4049
|
+
4,
|
|
4050
|
+
getInternalPresenceTokens4({
|
|
4051
|
+
transport: transport,
|
|
3884
4052
|
passkey: createWebAuthnPasskey5(),
|
|
3885
4053
|
publishableKey: publishableKey,
|
|
3886
|
-
|
|
3887
|
-
|
|
4054
|
+
relyingPartyOrigin: window.location.origin,
|
|
4055
|
+
scopes: ADD_PASSKEY_SCOPES
|
|
3888
4056
|
})
|
|
3889
4057
|
];
|
|
3890
|
-
case
|
|
3891
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
4058
|
+
case 3:
|
|
4059
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
4060
|
+
if (!allowList.includes(credentialIdB64url)) {
|
|
4061
|
+
throw new Error("unknown_passkey_for_this_account");
|
|
4062
|
+
}
|
|
3892
4063
|
unlockResult.current = {
|
|
3893
4064
|
userHandleB64url: userHandleB64url,
|
|
3894
|
-
credentialIdB64url: credentialIdB64url
|
|
4065
|
+
credentialIdB64url: credentialIdB64url,
|
|
4066
|
+
presenceTokens: flattenPresenceTokens4({
|
|
4067
|
+
tokens: tokens,
|
|
4068
|
+
userHandleB64url: userHandleB64url,
|
|
4069
|
+
credentialIdB64url: credentialIdB64url
|
|
4070
|
+
})
|
|
3895
4071
|
};
|
|
3896
4072
|
setStep("enroll-prompt");
|
|
3897
4073
|
return [
|
|
3898
4074
|
3,
|
|
3899
|
-
|
|
4075
|
+
5
|
|
3900
4076
|
];
|
|
3901
|
-
case
|
|
4077
|
+
case 4:
|
|
3902
4078
|
error = _state.sent();
|
|
3903
4079
|
setStep("error");
|
|
3904
4080
|
if (_instanceof(error, Error)) {
|
|
@@ -3914,9 +4090,9 @@ var AddPasskey = function AddPasskey(param) {
|
|
|
3914
4090
|
}
|
|
3915
4091
|
return [
|
|
3916
4092
|
3,
|
|
3917
|
-
|
|
4093
|
+
5
|
|
3918
4094
|
];
|
|
3919
|
-
case
|
|
4095
|
+
case 5:
|
|
3920
4096
|
return [
|
|
3921
4097
|
2
|
|
3922
4098
|
];
|
|
@@ -3986,7 +4162,11 @@ var AddPasskey = function AddPasskey(param) {
|
|
|
3986
4162
|
publishableKey: publishableKey,
|
|
3987
4163
|
relyingPartyOrigin: window.location.origin,
|
|
3988
4164
|
token: beginResult.token,
|
|
3989
|
-
credential: newCredential
|
|
4165
|
+
credential: newCredential,
|
|
4166
|
+
// passkey_enroll token from the unlock assertion. Server's
|
|
4167
|
+
// RequirePresenceUnlessFirstCredential middleware enforces
|
|
4168
|
+
// presence on second-and-onwards enrollments.
|
|
4169
|
+
presenceTokens: unlockResult.current.presenceTokens
|
|
3990
4170
|
})
|
|
3991
4171
|
];
|
|
3992
4172
|
case 4:
|
|
@@ -3999,7 +4179,11 @@ var AddPasskey = function AddPasskey(param) {
|
|
|
3999
4179
|
unlockUserHandleB64url: unlockResult.current.userHandleB64url,
|
|
4000
4180
|
unlockCredentialIdB64url: unlockResult.current.credentialIdB64url,
|
|
4001
4181
|
newUserHandleB64url: newUserHandleB64url,
|
|
4002
|
-
newCredentialIdB64url: newCredentialIdB64url
|
|
4182
|
+
newCredentialIdB64url: newCredentialIdB64url,
|
|
4183
|
+
// wrap_add token from the unlock assertion. Single-use; once
|
|
4184
|
+
// /auth/wallet/wraps POST consumes it, replay is rejected by
|
|
4185
|
+
// the jti burn table.
|
|
4186
|
+
presenceTokens: unlockResult.current.presenceTokens
|
|
4003
4187
|
})
|
|
4004
4188
|
];
|
|
4005
4189
|
case 5:
|
|
@@ -5361,12 +5545,15 @@ var EmailOtpVerifyFlow = function EmailOtpVerifyFlow(param) {
|
|
|
5361
5545
|
}
|
|
5362
5546
|
};
|
|
5363
5547
|
// src/components/flows/export-key/export-key.tsx
|
|
5364
|
-
import { getIframeUrl as getIframeUrl2 } from "@moon-x/core/utils";
|
|
5365
|
-
import {
|
|
5548
|
+
import { getIframeUrl as getIframeUrl2, PostMessageMethod as PostMessageMethod14, PostMessageType as PostMessageType15 } from "@moon-x/core/utils";
|
|
5549
|
+
import { flattenPresenceTokens as flattenPresenceTokens5, getInternalPresenceTokens as getInternalPresenceTokens5 } from "@moon-x/core/sdk";
|
|
5366
5550
|
import { createWebAuthnPasskey as createWebAuthnPasskey6 } from "@moon-x/core/web";
|
|
5367
5551
|
import { KeyRound as KeyRound2, ShieldOff, X } from "lucide-react";
|
|
5368
5552
|
import { useEffect as useEffect11, useRef as useRef6, useState as useState15 } from "react";
|
|
5369
5553
|
import { Fragment as Fragment4, jsx as jsx22, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
5554
|
+
var EXPORT_KEY_SCOPES = [
|
|
5555
|
+
"keyshare_read"
|
|
5556
|
+
];
|
|
5370
5557
|
var ExportKey = function ExportKey(param) {
|
|
5371
5558
|
var uiConfig = param.uiConfig, walletId = param.walletId, publishableKey = param.publishableKey, walletType = param.walletType, onCancel = param.onCancel, propsIsDark = param.isDark, propsAppConfig = param.appConfig, config = param.config;
|
|
5372
5559
|
var _ref;
|
|
@@ -5480,7 +5667,7 @@ var ExportKey = function ExportKey(param) {
|
|
|
5480
5667
|
}
|
|
5481
5668
|
return themeVars;
|
|
5482
5669
|
};
|
|
5483
|
-
var getfinalIframeUrl = function getfinalIframeUrl(entropyType2, userHandleB64url, credentialIdB64url) {
|
|
5670
|
+
var getfinalIframeUrl = function getfinalIframeUrl(entropyType2, userHandleB64url, credentialIdB64url, keyshareReadToken) {
|
|
5484
5671
|
var baseUrl = getIframeUrl2("/export-key");
|
|
5485
5672
|
var url = new URL(baseUrl);
|
|
5486
5673
|
url.searchParams.append("publishableKey", publishableKey);
|
|
@@ -5490,6 +5677,7 @@ var ExportKey = function ExportKey(param) {
|
|
|
5490
5677
|
url.searchParams.append("displayMode", isDark ? "dark" : "light");
|
|
5491
5678
|
url.searchParams.append("user_handle_b64url", userHandleB64url);
|
|
5492
5679
|
url.searchParams.append("credential_id_b64url", credentialIdB64url);
|
|
5680
|
+
url.searchParams.append("keyshare_read_token", keyshareReadToken);
|
|
5493
5681
|
var themeVars = buildThemeParams();
|
|
5494
5682
|
if (Object.keys(themeVars).length > 0) {
|
|
5495
5683
|
url.searchParams.append("theme", JSON.stringify(themeVars));
|
|
@@ -5543,7 +5731,7 @@ var ExportKey = function ExportKey(param) {
|
|
|
5543
5731
|
};
|
|
5544
5732
|
var handleReveal = function handleReveal() {
|
|
5545
5733
|
return _async_to_generator(function() {
|
|
5546
|
-
var _ref, userHandleB64url, credentialIdB64url, err, msg;
|
|
5734
|
+
var _dekInfo_allow_credential_ids_b64url, transport, dekInfo, allowList, _ref, userHandleB64url, credentialIdB64url, tokens, flat, err, msg;
|
|
5547
5735
|
return _ts_generator(this, function(_state) {
|
|
5548
5736
|
switch(_state.label){
|
|
5549
5737
|
case 0:
|
|
@@ -5553,41 +5741,59 @@ var ExportKey = function ExportKey(param) {
|
|
|
5553
5741
|
case 1:
|
|
5554
5742
|
_state.trys.push([
|
|
5555
5743
|
1,
|
|
5556
|
-
3,
|
|
5557
5744
|
4,
|
|
5558
|
-
5
|
|
5745
|
+
5,
|
|
5746
|
+
6
|
|
5559
5747
|
]);
|
|
5748
|
+
transport = getIframeTransport();
|
|
5560
5749
|
return [
|
|
5561
5750
|
4,
|
|
5562
|
-
|
|
5563
|
-
|
|
5751
|
+
transport.send(PostMessageType15.AUTH, PostMessageMethod14.GET_DEK_INFO, {
|
|
5752
|
+
publishableKey: publishableKey
|
|
5753
|
+
})
|
|
5754
|
+
];
|
|
5755
|
+
case 2:
|
|
5756
|
+
dekInfo = _state.sent();
|
|
5757
|
+
allowList = (_dekInfo_allow_credential_ids_b64url = dekInfo.allow_credential_ids_b64url) !== null && _dekInfo_allow_credential_ids_b64url !== void 0 ? _dekInfo_allow_credential_ids_b64url : [];
|
|
5758
|
+
return [
|
|
5759
|
+
4,
|
|
5760
|
+
getInternalPresenceTokens5({
|
|
5761
|
+
transport: transport,
|
|
5564
5762
|
passkey: createWebAuthnPasskey6(),
|
|
5565
5763
|
publishableKey: publishableKey,
|
|
5566
|
-
|
|
5567
|
-
|
|
5764
|
+
relyingPartyOrigin: window.location.origin,
|
|
5765
|
+
scopes: EXPORT_KEY_SCOPES
|
|
5568
5766
|
})
|
|
5569
5767
|
];
|
|
5570
|
-
case
|
|
5571
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
5572
|
-
|
|
5768
|
+
case 3:
|
|
5769
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, tokens = _ref.tokens;
|
|
5770
|
+
if (!allowList.includes(credentialIdB64url)) {
|
|
5771
|
+
throw new Error("unknown_passkey_for_this_account");
|
|
5772
|
+
}
|
|
5773
|
+
flat = flattenPresenceTokens5({
|
|
5774
|
+
tokens: tokens,
|
|
5775
|
+
userHandleB64url: userHandleB64url,
|
|
5776
|
+
credentialIdB64url: credentialIdB64url
|
|
5777
|
+
});
|
|
5778
|
+
setIframeUrl(getfinalIframeUrl("private_key", userHandleB64url, credentialIdB64url, flat.keyshare_read));
|
|
5573
5779
|
return [
|
|
5574
5780
|
3,
|
|
5575
|
-
|
|
5781
|
+
6
|
|
5576
5782
|
];
|
|
5577
|
-
case
|
|
5783
|
+
case 4:
|
|
5578
5784
|
err = _state.sent();
|
|
5579
5785
|
msg = _instanceof(err, Error) ? err.name === "NotAllowedError" ? "Passkey prompt was cancelled. Click Reveal Key to retry." : err.message === "passkey_required" ? "Enroll a passkey first." : err.message === "user_handle_missing" ? "Your authenticator didn't return a user handle. Pick a different passkey." : err.message === "unknown_passkey_for_this_account" ? "That passkey isn't recognized for your account on this device. It may belong to a different account. Try again and pick one of your registered passkeys." : err.message : "Couldn't unlock the export.";
|
|
5580
5786
|
setRevealError(msg);
|
|
5581
5787
|
return [
|
|
5582
5788
|
3,
|
|
5583
|
-
|
|
5789
|
+
6
|
|
5584
5790
|
];
|
|
5585
|
-
case
|
|
5791
|
+
case 5:
|
|
5586
5792
|
setIsRevealing(false);
|
|
5587
5793
|
return [
|
|
5588
5794
|
7
|
|
5589
5795
|
];
|
|
5590
|
-
case
|
|
5796
|
+
case 6:
|
|
5591
5797
|
return [
|
|
5592
5798
|
2
|
|
5593
5799
|
];
|
|
@@ -7041,12 +7247,18 @@ var FundingFlow = function FundingFlow(param) {
|
|
|
7041
7247
|
return null;
|
|
7042
7248
|
};
|
|
7043
7249
|
// src/components/flows/import-wallet/import-wallet.tsx
|
|
7044
|
-
import { PostMessageMethod as
|
|
7250
|
+
import { PostMessageMethod as PostMessageMethod15, PostMessageType as PostMessageType16 } from "@moon-x/core";
|
|
7251
|
+
import { flattenPresenceTokens as flattenPresenceTokens6, getInternalPresenceTokens as getInternalPresenceTokens6 } from "@moon-x/core/sdk";
|
|
7252
|
+
import { createWebAuthnPasskey as createWebAuthnPasskey7 } from "@moon-x/core/web";
|
|
7045
7253
|
import { CheckCircle2 as CheckCircle23, X as X5 } from "lucide-react";
|
|
7046
7254
|
import { useState as useState21 } from "react";
|
|
7047
7255
|
import { jsx as jsx32, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
7256
|
+
var IMPORT_KEY_SCOPES2 = [
|
|
7257
|
+
"dek_bootstrap",
|
|
7258
|
+
"keyshare_write"
|
|
7259
|
+
];
|
|
7048
7260
|
var ImportWallet = function ImportWallet(param) {
|
|
7049
|
-
var publishableKey = param.publishableKey, walletType = param.walletType, uiConfig = param.uiConfig,
|
|
7261
|
+
var publishableKey = param.publishableKey, walletType = param.walletType, uiConfig = param.uiConfig, onComplete = param.onComplete, onCancel = param.onCancel, propsIsDark = param.isDark, config = param.config;
|
|
7050
7262
|
var _ref, _ref1, _ref2, _ref3, _ref4, _ref5;
|
|
7051
7263
|
var _config_config, _config_config_appearance, _config_config1, _config_config_appearance1, _config_config2, _config_config3, _config_config4;
|
|
7052
7264
|
var t = useTranslation().t;
|
|
@@ -7063,7 +7275,7 @@ var ImportWallet = function ImportWallet(param) {
|
|
|
7063
7275
|
var successText = (_ref5 = uiConfig === null || uiConfig === void 0 ? void 0 : uiConfig.successText) !== null && _ref5 !== void 0 ? _ref5 : "Wallet imported";
|
|
7064
7276
|
var handleSubmit = function handleSubmit() {
|
|
7065
7277
|
return _async_to_generator(function() {
|
|
7066
|
-
var trimmed, _ref, client, response, wallet, err, raw, friendly;
|
|
7278
|
+
var trimmed, _ref, client, _ref1, userHandleB64url, credentialIdB64url, tokens, presenceTokens, response, wallet, err, raw, friendly;
|
|
7067
7279
|
return _ts_generator(this, function(_state) {
|
|
7068
7280
|
switch(_state.label){
|
|
7069
7281
|
case 0:
|
|
@@ -7080,9 +7292,9 @@ var ImportWallet = function ImportWallet(param) {
|
|
|
7080
7292
|
case 1:
|
|
7081
7293
|
_state.trys.push([
|
|
7082
7294
|
1,
|
|
7083
|
-
3,
|
|
7084
7295
|
4,
|
|
7085
|
-
5
|
|
7296
|
+
5,
|
|
7297
|
+
6
|
|
7086
7298
|
]);
|
|
7087
7299
|
client = getIframeClient(publishableKey);
|
|
7088
7300
|
if (!client) {
|
|
@@ -7093,17 +7305,33 @@ var ImportWallet = function ImportWallet(param) {
|
|
|
7093
7305
|
}
|
|
7094
7306
|
return [
|
|
7095
7307
|
4,
|
|
7096
|
-
|
|
7308
|
+
getInternalPresenceTokens6({
|
|
7309
|
+
transport: getIframeTransport(),
|
|
7310
|
+
passkey: createWebAuthnPasskey7(),
|
|
7311
|
+
publishableKey: publishableKey,
|
|
7312
|
+
relyingPartyOrigin: window.location.origin,
|
|
7313
|
+
scopes: IMPORT_KEY_SCOPES2
|
|
7314
|
+
})
|
|
7315
|
+
];
|
|
7316
|
+
case 2:
|
|
7317
|
+
_ref1 = _state.sent(), userHandleB64url = _ref1.userHandleB64url, credentialIdB64url = _ref1.credentialIdB64url, tokens = _ref1.tokens;
|
|
7318
|
+
presenceTokens = flattenPresenceTokens6({
|
|
7319
|
+
tokens: tokens,
|
|
7320
|
+
userHandleB64url: userHandleB64url,
|
|
7321
|
+
credentialIdB64url: credentialIdB64url
|
|
7322
|
+
});
|
|
7323
|
+
return [
|
|
7324
|
+
4,
|
|
7325
|
+
client.send(PostMessageType16.WALLET, PostMessageMethod15.IMPORT_KEY, {
|
|
7097
7326
|
walletType: walletType,
|
|
7098
7327
|
key: trimmed,
|
|
7099
7328
|
publishableKey: publishableKey,
|
|
7100
|
-
// Parent-asserted passkey userHandle — see ImportWalletProps
|
|
7101
|
-
// for context.
|
|
7102
7329
|
userHandleB64url: userHandleB64url,
|
|
7103
|
-
credentialIdB64url: credentialIdB64url
|
|
7330
|
+
credentialIdB64url: credentialIdB64url,
|
|
7331
|
+
presenceTokens: presenceTokens
|
|
7104
7332
|
})
|
|
7105
7333
|
];
|
|
7106
|
-
case
|
|
7334
|
+
case 3:
|
|
7107
7335
|
response = _state.sent();
|
|
7108
7336
|
wallet = (_ref = response === null || response === void 0 ? void 0 : response.data) !== null && _ref !== void 0 ? _ref : response;
|
|
7109
7337
|
if (!wallet || !wallet.public_address) {
|
|
@@ -7117,23 +7345,23 @@ var ImportWallet = function ImportWallet(param) {
|
|
|
7117
7345
|
onComplete(wallet);
|
|
7118
7346
|
return [
|
|
7119
7347
|
3,
|
|
7120
|
-
|
|
7348
|
+
6
|
|
7121
7349
|
];
|
|
7122
|
-
case
|
|
7350
|
+
case 4:
|
|
7123
7351
|
err = _state.sent();
|
|
7124
7352
|
raw = _instanceof(err, Error) ? err.message : String(err);
|
|
7125
7353
|
friendly = raw === "passkey_required" ? "A passkey is required before importing a wallet. Register one first." : raw;
|
|
7126
7354
|
setErrorMessage(friendly);
|
|
7127
7355
|
return [
|
|
7128
7356
|
3,
|
|
7129
|
-
|
|
7357
|
+
6
|
|
7130
7358
|
];
|
|
7131
|
-
case
|
|
7359
|
+
case 5:
|
|
7132
7360
|
setSubmitting(false);
|
|
7133
7361
|
return [
|
|
7134
7362
|
7
|
|
7135
7363
|
];
|
|
7136
|
-
case
|
|
7364
|
+
case 6:
|
|
7137
7365
|
return [
|
|
7138
7366
|
2
|
|
7139
7367
|
];
|
|
@@ -7250,7 +7478,7 @@ var ImportWallet = function ImportWallet(param) {
|
|
|
7250
7478
|
});
|
|
7251
7479
|
};
|
|
7252
7480
|
// src/components/flows/login-landing/login-landing.tsx
|
|
7253
|
-
import { PostMessageMethod as
|
|
7481
|
+
import { PostMessageMethod as PostMessageMethod18, PostMessageType as PostMessageType19 } from "@moon-x/core/utils";
|
|
7254
7482
|
import React16 from "react";
|
|
7255
7483
|
// src/components/social/social-login-button.tsx
|
|
7256
7484
|
import { useState as useState22 } from "react";
|
|
@@ -8317,7 +8545,7 @@ var useWalletConnect = function useWalletConnect(param) {
|
|
|
8317
8545
|
// src/components/wallet-connect/components/browser-extension-ui.tsx
|
|
8318
8546
|
import { useEffect as useEffect16, useRef as useRef9, useState as useState26 } from "react";
|
|
8319
8547
|
// src/internal/use-ethereum-wallet.ts
|
|
8320
|
-
import { PostMessageClient as PostMessageClient2, PostMessageMethod as
|
|
8548
|
+
import { PostMessageClient as PostMessageClient2, PostMessageMethod as PostMessageMethod16, PostMessageType as PostMessageType17 } from "@moon-x/core/utils";
|
|
8321
8549
|
import { useCallback as useCallback8, useState as useState25 } from "react";
|
|
8322
8550
|
import { createManualSiweMessage } from "@moon-x/core/lib";
|
|
8323
8551
|
var parseChainId = function parseChainId(chainId) {
|
|
@@ -8445,7 +8673,7 @@ var useEthereumWallet = function useEthereumWallet(param) {
|
|
|
8445
8673
|
]);
|
|
8446
8674
|
return [
|
|
8447
8675
|
4,
|
|
8448
|
-
client.send(
|
|
8676
|
+
client.send(PostMessageType17.EXTERNAL_WALLET, PostMessageMethod16.WALLET_REGISTRATION_NONCE, {
|
|
8449
8677
|
publishableKey: publishableKey,
|
|
8450
8678
|
publicAddress: walletAddress,
|
|
8451
8679
|
walletType: "ethereum",
|
|
@@ -8522,7 +8750,7 @@ var useEthereumWallet = function useEthereumWallet(param) {
|
|
|
8522
8750
|
case 10:
|
|
8523
8751
|
return [
|
|
8524
8752
|
4,
|
|
8525
|
-
client.send(
|
|
8753
|
+
client.send(PostMessageType17.EXTERNAL_WALLET, PostMessageMethod16.VERIFY_SIWE_WALLET_REGISTRATION, {
|
|
8526
8754
|
publishableKey: publishableKey,
|
|
8527
8755
|
publicAddress: walletAddress,
|
|
8528
8756
|
walletType: "ethereum",
|
|
@@ -8539,7 +8767,7 @@ var useEthereumWallet = function useEthereumWallet(param) {
|
|
|
8539
8767
|
];
|
|
8540
8768
|
}
|
|
8541
8769
|
parentClient = new PostMessageClient2(window.parent, "*");
|
|
8542
|
-
parentClient.sendOneWay(
|
|
8770
|
+
parentClient.sendOneWay(PostMessageType17.EXTERNAL_WALLET, "WALLET_CONNECTED", _object_spread({}, verifyResult.sessionData));
|
|
8543
8771
|
onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(verifyResult.sessionData);
|
|
8544
8772
|
return [
|
|
8545
8773
|
3,
|
|
@@ -8615,7 +8843,7 @@ var useEthereumWallet = function useEthereumWallet(param) {
|
|
|
8615
8843
|
]);
|
|
8616
8844
|
return [
|
|
8617
8845
|
4,
|
|
8618
|
-
client.send(
|
|
8846
|
+
client.send(PostMessageType17.EXTERNAL_WALLET, PostMessageMethod16.WALLET_REGISTRATION_NONCE, {
|
|
8619
8847
|
publishableKey: publishableKey,
|
|
8620
8848
|
publicAddress: walletAddress,
|
|
8621
8849
|
walletType: "ethereum",
|
|
@@ -8692,7 +8920,7 @@ var useEthereumWallet = function useEthereumWallet(param) {
|
|
|
8692
8920
|
case 10:
|
|
8693
8921
|
return [
|
|
8694
8922
|
4,
|
|
8695
|
-
client.send(
|
|
8923
|
+
client.send(PostMessageType17.EXTERNAL_WALLET, PostMessageMethod16.VERIFY_SIWE_WALLET_REGISTRATION, {
|
|
8696
8924
|
publishableKey: publishableKey,
|
|
8697
8925
|
publicAddress: walletAddress,
|
|
8698
8926
|
walletType: "ethereum",
|
|
@@ -10804,7 +11032,7 @@ var NetworkSelection = function NetworkSelection(param) {
|
|
|
10804
11032
|
// src/components/flows/wallets-flow/solana-connection-ui.tsx
|
|
10805
11033
|
import { useEffect as useEffect20, useRef as useRef12, useState as useState34 } from "react";
|
|
10806
11034
|
// src/internal/use-solana-wallet.ts
|
|
10807
|
-
import { PostMessageClient as PostMessageClient3, PostMessageMethod as
|
|
11035
|
+
import { PostMessageClient as PostMessageClient3, PostMessageMethod as PostMessageMethod17, PostMessageType as PostMessageType18 } from "@moon-x/core/utils";
|
|
10808
11036
|
import { useCallback as useCallback10, useState as useState33 } from "react";
|
|
10809
11037
|
import { SiwsMessage } from "@moon-x/core/lib";
|
|
10810
11038
|
var useSolanaWallet = function useSolanaWallet(param) {
|
|
@@ -10903,7 +11131,7 @@ var useSolanaWallet = function useSolanaWallet(param) {
|
|
|
10903
11131
|
]);
|
|
10904
11132
|
return [
|
|
10905
11133
|
4,
|
|
10906
|
-
client.send(
|
|
11134
|
+
client.send(PostMessageType18.EXTERNAL_WALLET, PostMessageMethod17.WALLET_REGISTRATION_NONCE, {
|
|
10907
11135
|
publishableKey: publishableKey,
|
|
10908
11136
|
publicAddress: walletAddress,
|
|
10909
11137
|
walletType: "solana",
|
|
@@ -10955,7 +11183,7 @@ var useSolanaWallet = function useSolanaWallet(param) {
|
|
|
10955
11183
|
encodedSignature = bs58.default.encode(signatureResponse);
|
|
10956
11184
|
return [
|
|
10957
11185
|
4,
|
|
10958
|
-
client.send(
|
|
11186
|
+
client.send(PostMessageType18.EXTERNAL_WALLET, PostMessageMethod17.VERIFY_SIWE_WALLET_REGISTRATION, {
|
|
10959
11187
|
publishableKey: publishableKey,
|
|
10960
11188
|
publicAddress: walletAddress,
|
|
10961
11189
|
walletType: "solana",
|
|
@@ -11040,7 +11268,7 @@ var useSolanaWallet = function useSolanaWallet(param) {
|
|
|
11040
11268
|
]);
|
|
11041
11269
|
return [
|
|
11042
11270
|
4,
|
|
11043
|
-
client.send(
|
|
11271
|
+
client.send(PostMessageType18.EXTERNAL_WALLET, PostMessageMethod17.WALLET_REGISTRATION_NONCE, {
|
|
11044
11272
|
publishableKey: publishableKey,
|
|
11045
11273
|
publicAddress: walletAddress,
|
|
11046
11274
|
walletType: "solana",
|
|
@@ -11092,7 +11320,7 @@ var useSolanaWallet = function useSolanaWallet(param) {
|
|
|
11092
11320
|
encodedSignature = bs58.default.encode(signatureResponse);
|
|
11093
11321
|
return [
|
|
11094
11322
|
4,
|
|
11095
|
-
client.send(
|
|
11323
|
+
client.send(PostMessageType18.EXTERNAL_WALLET, PostMessageMethod17.VERIFY_SIWE_WALLET_REGISTRATION, {
|
|
11096
11324
|
publishableKey: publishableKey,
|
|
11097
11325
|
publicAddress: walletAddress,
|
|
11098
11326
|
walletType: "solana",
|
|
@@ -11109,7 +11337,7 @@ var useSolanaWallet = function useSolanaWallet(param) {
|
|
|
11109
11337
|
];
|
|
11110
11338
|
}
|
|
11111
11339
|
parentClient = new PostMessageClient3(window.parent, "*");
|
|
11112
|
-
parentClient.sendOneWay(
|
|
11340
|
+
parentClient.sendOneWay(PostMessageType18.EXTERNAL_WALLET, "WALLET_CONNECTED", _object_spread({}, verifyResult.sessionData));
|
|
11113
11341
|
onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(verifyResult.sessionData);
|
|
11114
11342
|
return [
|
|
11115
11343
|
3,
|
|
@@ -12249,7 +12477,7 @@ var LoginLanding = function LoginLanding(param) {
|
|
|
12249
12477
|
]);
|
|
12250
12478
|
return [
|
|
12251
12479
|
4,
|
|
12252
|
-
client.send(
|
|
12480
|
+
client.send(PostMessageType19.AUTH, PostMessageMethod18.START_OAUTH, {
|
|
12253
12481
|
publishableKey: config === null || config === void 0 ? void 0 : config.publishableKey,
|
|
12254
12482
|
provider: provider,
|
|
12255
12483
|
login_redirect_url: window.location.href
|
|
@@ -12508,7 +12736,7 @@ var OAuth = function OAuth(param) {
|
|
|
12508
12736
|
});
|
|
12509
12737
|
};
|
|
12510
12738
|
// src/components/flows/passkey-enroll/passkey-enroll.tsx
|
|
12511
|
-
import { PostMessageMethod as
|
|
12739
|
+
import { PostMessageMethod as PostMessageMethod19, PostMessageType as PostMessageType20 } from "@moon-x/core/utils";
|
|
12512
12740
|
import { startRegistration as startRegistration2 } from "@simplewebauthn/browser";
|
|
12513
12741
|
import { CheckCircle2 as CheckCircle24, CloudCog, Fingerprint as Fingerprint2, ShieldCheck } from "lucide-react";
|
|
12514
12742
|
import { useEffect as useEffect23, useRef as useRef13, useState as useState37 } from "react";
|
|
@@ -12591,7 +12819,7 @@ var PasskeyEnroll = function PasskeyEnroll(param) {
|
|
|
12591
12819
|
]);
|
|
12592
12820
|
return [
|
|
12593
12821
|
4,
|
|
12594
|
-
client.send(
|
|
12822
|
+
client.send(PostMessageType20.AUTH, PostMessageMethod19.PASSKEY_REGISTER_BEGIN, {
|
|
12595
12823
|
publishableKey: publishableKey,
|
|
12596
12824
|
// Full origin (scheme + host + non-default port). Backend
|
|
12597
12825
|
// pulls the host out for the suffix check against the
|
|
@@ -12692,7 +12920,7 @@ var PasskeyEnroll = function PasskeyEnroll(param) {
|
|
|
12692
12920
|
credential = _state.sent();
|
|
12693
12921
|
return [
|
|
12694
12922
|
4,
|
|
12695
|
-
client.send(
|
|
12923
|
+
client.send(PostMessageType20.AUTH, PostMessageMethod19.PASSKEY_REGISTER_VERIFY, {
|
|
12696
12924
|
publishableKey: publishableKey,
|
|
12697
12925
|
// Must match the value sent at register/begin so the backend
|
|
12698
12926
|
// rebuilds the same RP config the cryptographic verification
|
|
@@ -12899,10 +13127,10 @@ var PasskeyEnroll = function PasskeyEnroll(param) {
|
|
|
12899
13127
|
});
|
|
12900
13128
|
};
|
|
12901
13129
|
// src/components/flows/send-ethereum-transaction-flow/send-ethereum-transaction-flow.tsx
|
|
12902
|
-
import { PostMessageClient as PostMessageClient4, PostMessageMethod as
|
|
13130
|
+
import { PostMessageClient as PostMessageClient4, PostMessageMethod as PostMessageMethod21, PostMessageType as PostMessageType22 } from "@moon-x/core/utils";
|
|
12903
13131
|
import { useState as useState40 } from "react";
|
|
12904
13132
|
// src/components/flows/send-ethereum-transaction-flow/send-ethereum-transaction.tsx
|
|
12905
|
-
import { PostMessageMethod as
|
|
13133
|
+
import { PostMessageMethod as PostMessageMethod20, PostMessageType as PostMessageType21 } from "@moon-x/core/utils";
|
|
12906
13134
|
import { ListCheck, X as X11, XCircle as XCircle2 } from "lucide-react";
|
|
12907
13135
|
import { useEffect as useEffect24, useState as useState38 } from "react";
|
|
12908
13136
|
import { jsx as jsx54, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
@@ -12936,7 +13164,7 @@ var SendEthereumTransaction = function SendEthereumTransaction(param) {
|
|
|
12936
13164
|
]);
|
|
12937
13165
|
return [
|
|
12938
13166
|
4,
|
|
12939
|
-
client.send(
|
|
13167
|
+
client.send(PostMessageType21.WALLET, PostMessageMethod20.GET_CONFIRM_ETHEREUM_TRANSACTION, {
|
|
12940
13168
|
transaction: transaction,
|
|
12941
13169
|
walletAddress: wallet === null || wallet === void 0 ? void 0 : wallet.public_address,
|
|
12942
13170
|
rpcUrl: rpcUrl,
|
|
@@ -13692,7 +13920,7 @@ var SendEthereumTransactionFlow = function SendEthereumTransactionFlow(param) {
|
|
|
13692
13920
|
};
|
|
13693
13921
|
var handleSend = function handleSend() {
|
|
13694
13922
|
return _async_to_generator(function() {
|
|
13695
|
-
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, signed, broadcastResponse, broadcast, hash, parentClient, error;
|
|
13923
|
+
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, signed, broadcastResponse, broadcast, hash, parentClient, error;
|
|
13696
13924
|
return _ts_generator(this, function(_state) {
|
|
13697
13925
|
switch(_state.label){
|
|
13698
13926
|
case 0:
|
|
@@ -13715,16 +13943,17 @@ var SendEthereumTransactionFlow = function SendEthereumTransactionFlow(param) {
|
|
|
13715
13943
|
onAssertPasskey()
|
|
13716
13944
|
];
|
|
13717
13945
|
case 1:
|
|
13718
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
13946
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
13719
13947
|
return [
|
|
13720
13948
|
4,
|
|
13721
|
-
client.send(
|
|
13949
|
+
client.send(PostMessageType22.WALLET, PostMessageMethod21.SIGN_TRANSACTION, {
|
|
13722
13950
|
publishableKey: publishableKey,
|
|
13723
13951
|
serializedTransaction: sendTransactionRequest.serializedTransaction,
|
|
13724
13952
|
wallet: wallet,
|
|
13725
13953
|
options: options,
|
|
13726
13954
|
userHandleB64url: userHandleB64url,
|
|
13727
|
-
credentialIdB64url: credentialIdB64url
|
|
13955
|
+
credentialIdB64url: credentialIdB64url,
|
|
13956
|
+
presenceTokens: presenceTokens
|
|
13728
13957
|
})
|
|
13729
13958
|
];
|
|
13730
13959
|
case 2:
|
|
@@ -13766,7 +13995,7 @@ var SendEthereumTransactionFlow = function SendEthereumTransactionFlow(param) {
|
|
|
13766
13995
|
setCurrentStep("success");
|
|
13767
13996
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
13768
13997
|
parentClient = new PostMessageClient4(window.parent, "*");
|
|
13769
|
-
parentClient.sendOneWay(
|
|
13998
|
+
parentClient.sendOneWay(PostMessageType22.WALLET, PostMessageMethod21.SEND_TRANSACTION, {
|
|
13770
13999
|
success: true,
|
|
13771
14000
|
signature: signed.signature,
|
|
13772
14001
|
transactionHash: hash,
|
|
@@ -13811,7 +14040,7 @@ var SendEthereumTransactionFlow = function SendEthereumTransactionFlow(param) {
|
|
|
13811
14040
|
setIsSending(false);
|
|
13812
14041
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
13813
14042
|
var parentClient = new PostMessageClient4(window.parent, "*");
|
|
13814
|
-
parentClient.sendOneWay(
|
|
14043
|
+
parentClient.sendOneWay(PostMessageType22.WALLET, PostMessageMethod21.SEND_TRANSACTION, {
|
|
13815
14044
|
success: false,
|
|
13816
14045
|
cancelled: true,
|
|
13817
14046
|
error: "User cancelled transaction"
|
|
@@ -13876,10 +14105,10 @@ var SendEthereumTransactionFlow = function SendEthereumTransactionFlow(param) {
|
|
|
13876
14105
|
}
|
|
13877
14106
|
};
|
|
13878
14107
|
// src/components/flows/send-transaction-flow/send-transaction-flow.tsx
|
|
13879
|
-
import { PostMessageClient as PostMessageClient5, PostMessageMethod as
|
|
14108
|
+
import { PostMessageClient as PostMessageClient5, PostMessageMethod as PostMessageMethod23, PostMessageType as PostMessageType24 } from "@moon-x/core/utils";
|
|
13880
14109
|
import { useState as useState43 } from "react";
|
|
13881
14110
|
// src/components/flows/send-transaction-flow/send-transaction.tsx
|
|
13882
|
-
import { PostMessageMethod as
|
|
14111
|
+
import { PostMessageMethod as PostMessageMethod22, PostMessageType as PostMessageType23 } from "@moon-x/core/utils";
|
|
13883
14112
|
import { ListCheck as ListCheck2, X as X14, XCircle as XCircle4 } from "lucide-react";
|
|
13884
14113
|
import { useEffect as useEffect26, useState as useState41 } from "react";
|
|
13885
14114
|
import { getTransferInfoFromInstructions } from "@moon-x/core/lib";
|
|
@@ -13914,7 +14143,7 @@ var SendTransaction = function SendTransaction(param) {
|
|
|
13914
14143
|
]);
|
|
13915
14144
|
return [
|
|
13916
14145
|
4,
|
|
13917
|
-
client.send(
|
|
14146
|
+
client.send(PostMessageType23.WALLET, PostMessageMethod22.GET_CONFIRM_TRANSACTION, {
|
|
13918
14147
|
encodedMessage: encodedMessage,
|
|
13919
14148
|
walletAddress: walletAddress,
|
|
13920
14149
|
transaction: transaction,
|
|
@@ -14677,7 +14906,7 @@ var SendTransactionFlow = function SendTransactionFlow(param) {
|
|
|
14677
14906
|
};
|
|
14678
14907
|
var handleSign = function handleSign() {
|
|
14679
14908
|
return _async_to_generator(function() {
|
|
14680
|
-
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, signed, bs58, transactionBytes, base64Transaction, broadcastResponse, broadcast, parentClient, error;
|
|
14909
|
+
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, signed, bs58, transactionBytes, base64Transaction, broadcastResponse, broadcast, parentClient, error;
|
|
14681
14910
|
return _ts_generator(this, function(_state) {
|
|
14682
14911
|
switch(_state.label){
|
|
14683
14912
|
case 0:
|
|
@@ -14698,15 +14927,16 @@ var SendTransactionFlow = function SendTransactionFlow(param) {
|
|
|
14698
14927
|
onAssertPasskey()
|
|
14699
14928
|
];
|
|
14700
14929
|
case 1:
|
|
14701
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
14930
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
14702
14931
|
return [
|
|
14703
14932
|
4,
|
|
14704
|
-
client.send(
|
|
14933
|
+
client.send(PostMessageType24.WALLET, PostMessageMethod23.SIGN_TRANSACTION, {
|
|
14705
14934
|
publishableKey: publishableKey,
|
|
14706
14935
|
serializedTransaction: sendTransactionRequest.transaction,
|
|
14707
14936
|
wallet: wallet,
|
|
14708
14937
|
userHandleB64url: userHandleB64url,
|
|
14709
|
-
credentialIdB64url: credentialIdB64url
|
|
14938
|
+
credentialIdB64url: credentialIdB64url,
|
|
14939
|
+
presenceTokens: presenceTokens
|
|
14710
14940
|
})
|
|
14711
14941
|
];
|
|
14712
14942
|
case 2:
|
|
@@ -14759,7 +14989,7 @@ var SendTransactionFlow = function SendTransactionFlow(param) {
|
|
|
14759
14989
|
setCurrentStep("success");
|
|
14760
14990
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
14761
14991
|
parentClient = new PostMessageClient5(window.parent, "*");
|
|
14762
|
-
parentClient.sendOneWay(
|
|
14992
|
+
parentClient.sendOneWay(PostMessageType24.WALLET, PostMessageMethod23.SEND_TRANSACTION, {
|
|
14763
14993
|
success: true,
|
|
14764
14994
|
signature: signed.signature,
|
|
14765
14995
|
signedTransaction: signed.signedTransaction,
|
|
@@ -14864,7 +15094,7 @@ var SendTransactionFlow = function SendTransactionFlow(param) {
|
|
|
14864
15094
|
}
|
|
14865
15095
|
};
|
|
14866
15096
|
// src/components/flows/sign-7702-authorization/sign-7702-authorization.tsx
|
|
14867
|
-
import { PostMessageClient as PostMessageClient6, PostMessageMethod as
|
|
15097
|
+
import { PostMessageClient as PostMessageClient6, PostMessageMethod as PostMessageMethod24, PostMessageType as PostMessageType25 } from "@moon-x/core/utils";
|
|
14868
15098
|
import { Check as Check2, Copy as Copy2, X as X17, XCircle as XCircle6 } from "lucide-react";
|
|
14869
15099
|
import { useEffect as useEffect28, useRef as useRef14, useState as useState44 } from "react";
|
|
14870
15100
|
import { Fragment as Fragment11, jsx as jsx64, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
@@ -14954,7 +15184,7 @@ var Sign7702Authorization = function Sign7702Authorization(param) {
|
|
|
14954
15184
|
};
|
|
14955
15185
|
var handleSign = function handleSign() {
|
|
14956
15186
|
return _async_to_generator(function() {
|
|
14957
|
-
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, result, parentClient, error;
|
|
15187
|
+
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, result, parentClient, error;
|
|
14958
15188
|
return _ts_generator(this, function(_state) {
|
|
14959
15189
|
switch(_state.label){
|
|
14960
15190
|
case 0:
|
|
@@ -14980,10 +15210,10 @@ var Sign7702Authorization = function Sign7702Authorization(param) {
|
|
|
14980
15210
|
onAssertPasskey()
|
|
14981
15211
|
];
|
|
14982
15212
|
case 2:
|
|
14983
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
15213
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
14984
15214
|
return [
|
|
14985
15215
|
4,
|
|
14986
|
-
client.send(
|
|
15216
|
+
client.send(PostMessageType25.WALLET, PostMessageMethod24.SIGN_7702_AUTHORIZATION, {
|
|
14987
15217
|
contractAddress: contractAddress,
|
|
14988
15218
|
chainId: chainId,
|
|
14989
15219
|
nonce: nonce,
|
|
@@ -14992,7 +15222,8 @@ var Sign7702Authorization = function Sign7702Authorization(param) {
|
|
|
14992
15222
|
options: options,
|
|
14993
15223
|
wallet: wallet,
|
|
14994
15224
|
userHandleB64url: userHandleB64url,
|
|
14995
|
-
credentialIdB64url: credentialIdB64url
|
|
15225
|
+
credentialIdB64url: credentialIdB64url,
|
|
15226
|
+
presenceTokens: presenceTokens
|
|
14996
15227
|
})
|
|
14997
15228
|
];
|
|
14998
15229
|
case 3:
|
|
@@ -15001,7 +15232,7 @@ var Sign7702Authorization = function Sign7702Authorization(param) {
|
|
|
15001
15232
|
setIsSigning(false);
|
|
15002
15233
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
15003
15234
|
parentClient = new PostMessageClient6(window.parent, "*");
|
|
15004
|
-
parentClient.sendOneWay(
|
|
15235
|
+
parentClient.sendOneWay(PostMessageType25.WALLET, PostMessageMethod24.SIGN_7702_AUTHORIZATION, _object_spread({
|
|
15005
15236
|
success: true
|
|
15006
15237
|
}, result));
|
|
15007
15238
|
}
|
|
@@ -15191,7 +15422,7 @@ var Sign7702Authorization = function Sign7702Authorization(param) {
|
|
|
15191
15422
|
};
|
|
15192
15423
|
var sign_7702_authorization_default = Sign7702Authorization;
|
|
15193
15424
|
// src/components/flows/sign-message-flow/sign-message.tsx
|
|
15194
|
-
import { PostMessageClient as PostMessageClient7, PostMessageMethod as
|
|
15425
|
+
import { PostMessageClient as PostMessageClient7, PostMessageMethod as PostMessageMethod25, PostMessageType as PostMessageType26 } from "@moon-x/core";
|
|
15195
15426
|
import { Check as Check3, Copy as Copy3, X as X18, XCircle as XCircle7 } from "lucide-react";
|
|
15196
15427
|
import { useRef as useRef15, useState as useState45 } from "react";
|
|
15197
15428
|
import { Fragment as Fragment12, jsx as jsx65, jsxs as jsxs53 } from "react/jsx-runtime";
|
|
@@ -15309,7 +15540,7 @@ var SignMessage = function SignMessage(param) {
|
|
|
15309
15540
|
};
|
|
15310
15541
|
var handleSign = function handleSign() {
|
|
15311
15542
|
return _async_to_generator(function() {
|
|
15312
|
-
var client, _ref, userHandleB64url, credentialIdB64url, result, processedResponse, parentClient, error;
|
|
15543
|
+
var client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, result, processedResponse, parentClient, error;
|
|
15313
15544
|
return _ts_generator(this, function(_state) {
|
|
15314
15545
|
switch(_state.label){
|
|
15315
15546
|
case 0:
|
|
@@ -15335,16 +15566,17 @@ var SignMessage = function SignMessage(param) {
|
|
|
15335
15566
|
onAssertPasskey()
|
|
15336
15567
|
];
|
|
15337
15568
|
case 2:
|
|
15338
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
15569
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
15339
15570
|
return [
|
|
15340
15571
|
4,
|
|
15341
|
-
client.send(
|
|
15572
|
+
client.send(PostMessageType26.WALLET, PostMessageMethod25.SIGN_MESSAGE, {
|
|
15342
15573
|
message: message,
|
|
15343
15574
|
publishableKey: publishableKey,
|
|
15344
15575
|
uiOptions: uiOptions,
|
|
15345
15576
|
wallet: wallet,
|
|
15346
15577
|
userHandleB64url: userHandleB64url,
|
|
15347
|
-
credentialIdB64url: credentialIdB64url
|
|
15578
|
+
credentialIdB64url: credentialIdB64url,
|
|
15579
|
+
presenceTokens: presenceTokens
|
|
15348
15580
|
})
|
|
15349
15581
|
];
|
|
15350
15582
|
case 3:
|
|
@@ -15359,7 +15591,7 @@ var SignMessage = function SignMessage(param) {
|
|
|
15359
15591
|
processedResponse = _state.sent();
|
|
15360
15592
|
if (uiOptions === null || uiOptions === void 0 ? void 0 : uiOptions.showWalletUI) {
|
|
15361
15593
|
parentClient = new PostMessageClient7(window.parent, "*");
|
|
15362
|
-
parentClient.sendOneWay(
|
|
15594
|
+
parentClient.sendOneWay(PostMessageType26.WALLET, PostMessageMethod25.SIGN_MESSAGE, {
|
|
15363
15595
|
success: true,
|
|
15364
15596
|
signature: result.signature
|
|
15365
15597
|
});
|
|
@@ -15547,7 +15779,7 @@ var SignMessage = function SignMessage(param) {
|
|
|
15547
15779
|
});
|
|
15548
15780
|
};
|
|
15549
15781
|
// src/components/flows/sign-transaction-flow/sign-transaction.tsx
|
|
15550
|
-
import { PostMessageClient as PostMessageClient8, PostMessageMethod as
|
|
15782
|
+
import { PostMessageClient as PostMessageClient8, PostMessageMethod as PostMessageMethod26, PostMessageType as PostMessageType27 } from "@moon-x/core/utils";
|
|
15551
15783
|
import { Check as Check4, ChevronRight, Copy as Copy4, X as X19, XCircle as XCircle8 } from "lucide-react";
|
|
15552
15784
|
import { useEffect as useEffect29, useRef as useRef16, useState as useState46 } from "react";
|
|
15553
15785
|
import { parseTransaction } from "viem";
|
|
@@ -15636,7 +15868,7 @@ var SignTransaction = function SignTransaction(param) {
|
|
|
15636
15868
|
};
|
|
15637
15869
|
var handleSign = function handleSign() {
|
|
15638
15870
|
return _async_to_generator(function() {
|
|
15639
|
-
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, result, parentClient, error;
|
|
15871
|
+
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, result, parentClient, error;
|
|
15640
15872
|
return _ts_generator(this, function(_state) {
|
|
15641
15873
|
switch(_state.label){
|
|
15642
15874
|
case 0:
|
|
@@ -15662,10 +15894,10 @@ var SignTransaction = function SignTransaction(param) {
|
|
|
15662
15894
|
onAssertPasskey()
|
|
15663
15895
|
];
|
|
15664
15896
|
case 2:
|
|
15665
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
15897
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
15666
15898
|
return [
|
|
15667
15899
|
4,
|
|
15668
|
-
client.send(
|
|
15900
|
+
client.send(PostMessageType27.WALLET, PostMessageMethod26.SIGN_TRANSACTION, {
|
|
15669
15901
|
serializedTransaction: serializedTransaction,
|
|
15670
15902
|
publishableKey: publishableKey,
|
|
15671
15903
|
options: options,
|
|
@@ -15673,7 +15905,8 @@ var SignTransaction = function SignTransaction(param) {
|
|
|
15673
15905
|
// Parent-asserted passkey userHandle — see sign-message.tsx
|
|
15674
15906
|
// for context.
|
|
15675
15907
|
userHandleB64url: userHandleB64url,
|
|
15676
|
-
credentialIdB64url: credentialIdB64url
|
|
15908
|
+
credentialIdB64url: credentialIdB64url,
|
|
15909
|
+
presenceTokens: presenceTokens
|
|
15677
15910
|
})
|
|
15678
15911
|
];
|
|
15679
15912
|
case 3:
|
|
@@ -15682,7 +15915,7 @@ var SignTransaction = function SignTransaction(param) {
|
|
|
15682
15915
|
setIsSigning(false);
|
|
15683
15916
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
15684
15917
|
parentClient = new PostMessageClient8(window.parent, "*");
|
|
15685
|
-
parentClient.sendOneWay(
|
|
15918
|
+
parentClient.sendOneWay(PostMessageType27.WALLET, PostMessageMethod26.SIGN_TRANSACTION, _object_spread({
|
|
15686
15919
|
success: true
|
|
15687
15920
|
}, result));
|
|
15688
15921
|
}
|
|
@@ -15883,7 +16116,7 @@ var SignTransaction = function SignTransaction(param) {
|
|
|
15883
16116
|
});
|
|
15884
16117
|
};
|
|
15885
16118
|
// src/components/flows/sign-typed-data/sign-typed-data.tsx
|
|
15886
|
-
import { PostMessageClient as PostMessageClient9, PostMessageMethod as
|
|
16119
|
+
import { PostMessageClient as PostMessageClient9, PostMessageMethod as PostMessageMethod27, PostMessageType as PostMessageType28 } from "@moon-x/core/utils";
|
|
15887
16120
|
import { Check as Check5, ChevronRight as ChevronRight2, Copy as Copy5, X as X20, XCircle as XCircle9 } from "lucide-react";
|
|
15888
16121
|
import { useEffect as useEffect30, useRef as useRef17, useState as useState47 } from "react";
|
|
15889
16122
|
import { Fragment as Fragment14, jsx as jsx67, jsxs as jsxs55 } from "react/jsx-runtime";
|
|
@@ -15977,7 +16210,7 @@ var SignTypedData = function SignTypedData(param) {
|
|
|
15977
16210
|
};
|
|
15978
16211
|
var handleSign = function handleSign() {
|
|
15979
16212
|
return _async_to_generator(function() {
|
|
15980
|
-
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, result, parentClient, error;
|
|
16213
|
+
var _options_uiOptions, client, _ref, userHandleB64url, credentialIdB64url, presenceTokens, result, parentClient, error;
|
|
15981
16214
|
return _ts_generator(this, function(_state) {
|
|
15982
16215
|
switch(_state.label){
|
|
15983
16216
|
case 0:
|
|
@@ -16003,10 +16236,10 @@ var SignTypedData = function SignTypedData(param) {
|
|
|
16003
16236
|
onAssertPasskey()
|
|
16004
16237
|
];
|
|
16005
16238
|
case 2:
|
|
16006
|
-
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url;
|
|
16239
|
+
_ref = _state.sent(), userHandleB64url = _ref.userHandleB64url, credentialIdB64url = _ref.credentialIdB64url, presenceTokens = _ref.presenceTokens;
|
|
16007
16240
|
return [
|
|
16008
16241
|
4,
|
|
16009
|
-
client.send(
|
|
16242
|
+
client.send(PostMessageType28.WALLET, PostMessageMethod27.SIGN_TYPED_DATA, {
|
|
16010
16243
|
domain: domain,
|
|
16011
16244
|
types: types,
|
|
16012
16245
|
primaryType: primaryType,
|
|
@@ -16015,7 +16248,8 @@ var SignTypedData = function SignTypedData(param) {
|
|
|
16015
16248
|
options: options,
|
|
16016
16249
|
wallet: wallet,
|
|
16017
16250
|
userHandleB64url: userHandleB64url,
|
|
16018
|
-
credentialIdB64url: credentialIdB64url
|
|
16251
|
+
credentialIdB64url: credentialIdB64url,
|
|
16252
|
+
presenceTokens: presenceTokens
|
|
16019
16253
|
})
|
|
16020
16254
|
];
|
|
16021
16255
|
case 3:
|
|
@@ -16024,7 +16258,7 @@ var SignTypedData = function SignTypedData(param) {
|
|
|
16024
16258
|
setIsSigning(false);
|
|
16025
16259
|
if (options === null || options === void 0 ? void 0 : (_options_uiOptions = options.uiOptions) === null || _options_uiOptions === void 0 ? void 0 : _options_uiOptions.showWalletUI) {
|
|
16026
16260
|
parentClient = new PostMessageClient9(window.parent, "*");
|
|
16027
|
-
parentClient.sendOneWay(
|
|
16261
|
+
parentClient.sendOneWay(PostMessageType28.WALLET, PostMessageMethod27.SIGN_TYPED_DATA, {
|
|
16028
16262
|
success: true,
|
|
16029
16263
|
signature: result.signature
|
|
16030
16264
|
});
|
|
@@ -17151,8 +17385,6 @@ var AuthFlowRenderer = function AuthFlowRenderer(param) {
|
|
|
17151
17385
|
return /* @__PURE__ */ jsx71(ImportWallet, {
|
|
17152
17386
|
publishableKey: authConfig.publishableKey,
|
|
17153
17387
|
walletType: walletType1,
|
|
17154
|
-
userHandleB64url: flowData === null || flowData === void 0 ? void 0 : flowData.userHandleB64url,
|
|
17155
|
-
credentialIdB64url: flowData === null || flowData === void 0 ? void 0 : flowData.credentialIdB64url,
|
|
17156
17388
|
onComplete: function onComplete(wallet) {
|
|
17157
17389
|
var _sdkInstance_getCurrentSuccessCallback;
|
|
17158
17390
|
var successCallback = sdkInstance === null || sdkInstance === void 0 ? void 0 : (_sdkInstance_getCurrentSuccessCallback = sdkInstance.getCurrentSuccessCallback) === null || _sdkInstance_getCurrentSuccessCallback === void 0 ? void 0 : _sdkInstance_getCurrentSuccessCallback.call(sdkInstance);
|
|
@@ -17512,7 +17744,7 @@ var AuthProvider = function AuthProvider(param) {
|
|
|
17512
17744
|
client = createPostMessageClient(iframeRef.current.contentWindow, publishableKey);
|
|
17513
17745
|
return [
|
|
17514
17746
|
4,
|
|
17515
|
-
client.send(
|
|
17747
|
+
client.send(PostMessageType29.AUTH, PostMessageMethod28.IS_AUTHENTICATED, {
|
|
17516
17748
|
publishableKey: publishableKey
|
|
17517
17749
|
})
|
|
17518
17750
|
];
|
|
@@ -17526,7 +17758,7 @@ var AuthProvider = function AuthProvider(param) {
|
|
|
17526
17758
|
];
|
|
17527
17759
|
return [
|
|
17528
17760
|
4,
|
|
17529
|
-
client.send(
|
|
17761
|
+
client.send(PostMessageType29.AUTH, PostMessageMethod28.GET_USER, {
|
|
17530
17762
|
publishableKey: publishableKey
|
|
17531
17763
|
})
|
|
17532
17764
|
];
|
|
@@ -17639,7 +17871,7 @@ var AuthProvider = function AuthProvider(param) {
|
|
|
17639
17871
|
if (!isMounted) return;
|
|
17640
17872
|
var handleReadyMessage = function handleReadyMessage(event) {
|
|
17641
17873
|
var _event_data = event.data, type = _event_data.type, method = _event_data.method;
|
|
17642
|
-
if (type ===
|
|
17874
|
+
if (type === PostMessageType29.INIT && method === PostMessageMethod28.READY) {
|
|
17643
17875
|
setIsIframeReady(true);
|
|
17644
17876
|
}
|
|
17645
17877
|
};
|
|
@@ -17675,7 +17907,7 @@ var AuthProvider = function AuthProvider(param) {
|
|
|
17675
17907
|
client = new PostMessageClient10(iframeRef.current.contentWindow, iframeOrigin);
|
|
17676
17908
|
return [
|
|
17677
17909
|
4,
|
|
17678
|
-
client.send(
|
|
17910
|
+
client.send(PostMessageType29.AUTH, PostMessageMethod28.IS_AUTHENTICATED, {
|
|
17679
17911
|
publishableKey: publishableKey
|
|
17680
17912
|
})
|
|
17681
17913
|
];
|
|
@@ -17689,7 +17921,7 @@ var AuthProvider = function AuthProvider(param) {
|
|
|
17689
17921
|
];
|
|
17690
17922
|
return [
|
|
17691
17923
|
4,
|
|
17692
|
-
client.send(
|
|
17924
|
+
client.send(PostMessageType29.AUTH, PostMessageMethod28.GET_USER, {
|
|
17693
17925
|
publishableKey: publishableKey
|
|
17694
17926
|
})
|
|
17695
17927
|
];
|
|
@@ -18064,7 +18296,7 @@ import { jsx as jsx73 } from "react/jsx-runtime";
|
|
|
18064
18296
|
import { useContext as useContext4 } from "react";
|
|
18065
18297
|
// src/provider.tsx
|
|
18066
18298
|
import { createContext, useContext as useContext5, useEffect as useEffect36, useMemo as useMemo5, useRef as useRef19, useState as useState52 } from "react";
|
|
18067
|
-
import {
|
|
18299
|
+
import { validateChainConfig } from "@moon-x/core/lib";
|
|
18068
18300
|
// src/wallets/walletconnect-client.ts
|
|
18069
18301
|
var setWalletConnectClient = function setWalletConnectClient(client) {
|
|
18070
18302
|
if (typeof window !== "undefined") {
|
|
@@ -18080,15 +18312,13 @@ var WalletConnectContext = createContext({
|
|
|
18080
18312
|
var MoonKeyContext = createContext(null);
|
|
18081
18313
|
var MoonKeyProvider = function MoonKeyProvider(param) {
|
|
18082
18314
|
var publishableKey = param.publishableKey, embeddableId = param.embeddableId, config = param.config, children = param.children;
|
|
18083
|
-
var
|
|
18084
|
-
var _config_security, _config_walletConnect, _config_emailConfig, _config_emailConfig1, _config_emailConfig2, _config_emailConfig3, _config_emailConfig4;
|
|
18315
|
+
var _config_walletConnect, _config_emailConfig, _config_emailConfig1, _config_emailConfig2, _config_emailConfig3, _config_emailConfig4;
|
|
18085
18316
|
if ((config === null || config === void 0 ? void 0 : config.defaultChain) || (config === null || config === void 0 ? void 0 : config.supportedChains)) {
|
|
18086
18317
|
validateChainConfig({
|
|
18087
18318
|
defaultChain: config.defaultChain,
|
|
18088
18319
|
supportedChains: config.supportedChains
|
|
18089
18320
|
});
|
|
18090
18321
|
}
|
|
18091
|
-
setAssertCacheTtlMs((_ref = config === null || config === void 0 ? void 0 : (_config_security = config.security) === null || _config_security === void 0 ? void 0 : _config_security.assertionCacheTtlMs) !== null && _ref !== void 0 ? _ref : 0);
|
|
18092
18322
|
var _useState52 = _sliced_to_array(useState52(null), 2), walletConnectClient = _useState52[0], setWalletConnectClient2 = _useState52[1];
|
|
18093
18323
|
var _useState521 = _sliced_to_array(useState52(false), 2), isInitializing = _useState521[0], setIsInitializing = _useState521[1];
|
|
18094
18324
|
var initializationAttempted = useRef19(false);
|
|
@@ -18270,4 +18500,4 @@ var getReconnectionInfo = function getReconnectionInfo(error) {
|
|
|
18270
18500
|
import { estimateEvmGas, estimateEvmGasReserve, getChainById, getDefaultChain, getEvmGasPrice, getEvmMaxPriorityFeePerGas, getEvmNonce, getRpcUrl, isChainSupported, setChainRpcUrl, validateChainConfig as validateChainConfig2 } from "@moon-x/core/lib";
|
|
18271
18501
|
import { Network } from "@moon-x/core/types";
|
|
18272
18502
|
import { arbitrum, arbitrumSepolia, avalanche, avalancheFuji, base, baseSepolia, bsc, bscTestnet, goerli, holesky, mainnet, optimism, optimismSepolia, polygon, polygonAmoy, sepolia } from "viem/chains";
|
|
18273
|
-
export { MoonKeyProvider, Network, SessionExpiredError, SessionNotFoundError, arbitrum, arbitrumSepolia, avalanche, avalancheFuji, base, baseSepolia, bsc, bscTestnet, estimateEvmGas, estimateEvmGasReserve, ethereum_exports as ethereum, getChainById, getDefaultChain, getEvmGasPrice, getEvmMaxPriorityFeePerGas, getEvmNonce, getReconnectionInfo, getRpcUrl, goerli, holesky, isChainSupported, mainnet, optimism, optimismSepolia, polygon, polygonAmoy, requiresReconnection, sepolia, setChainRpcUrl, solana_exports as solana, useAddPasskey, useAttachOAuth, useConnectWallet, useDetachOAuth, useLoginWithEmail, useLoginWithOAuth, useMoonKey, useOAuthCompletion, usePasskeyStatus, useRegisterPasskey, useRemovePasskey, useUser, validateChainConfig2 as validateChainConfig };
|
|
18503
|
+
export { MoonKeyProvider, Network, SessionExpiredError, SessionNotFoundError, arbitrum, arbitrumSepolia, avalanche, avalancheFuji, base, baseSepolia, bsc, bscTestnet, estimateEvmGas, estimateEvmGasReserve, ethereum_exports as ethereum, getChainById, getDefaultChain, getEvmGasPrice, getEvmMaxPriorityFeePerGas, getEvmNonce, getReconnectionInfo, getRpcUrl, goerli, holesky, isChainSupported, mainnet, optimism, optimismSepolia, polygon, polygonAmoy, requiresReconnection, sepolia, setChainRpcUrl, solana_exports as solana, useAddPasskey, useAttachOAuth, useConnectWallet, useDetachOAuth, useEphemeralSigner, useLoginWithEmail, useLoginWithOAuth, useMoonKey, useOAuthCompletion, usePasskeyStatus, useRegisterPasskey, useRemovePasskey, useUser, validateChainConfig2 as validateChainConfig };
|