@dynamic-labs-sdk/client 1.31.2 → 1.33.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/dist/{apiClient-d2qJyIvx.native.esm.js → apiClient-4r7VAsLC.native.esm.js} +45 -12
- package/dist/apiClient-4r7VAsLC.native.esm.js.map +1 -0
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/core.cjs +79 -76
- package/dist/core.cjs.map +1 -1
- package/dist/core.esm.js +79 -78
- package/dist/core.esm.js.map +1 -1
- package/dist/core.native.esm.js +77 -76
- package/dist/core.native.esm.js.map +1 -1
- package/dist/errors/AmbiguousWalletChainError.d.ts +7 -9
- package/dist/errors/AmbiguousWalletChainError.d.ts.map +1 -1
- package/dist/errors/ConnectionUriHandlerMissingError.d.ts +10 -12
- package/dist/errors/ConnectionUriHandlerMissingError.d.ts.map +1 -1
- package/dist/errors/NoConnectionOptionAvailableError.d.ts +2 -2
- package/dist/errors/UnexpectedConsentResponseError.d.ts +7 -0
- package/dist/errors/UnexpectedConsentResponseError.d.ts.map +1 -0
- package/dist/errors/WalletBrowserRedirectHandlerMissingError.d.ts +39 -0
- package/dist/errors/WalletBrowserRedirectHandlerMissingError.d.ts.map +1 -0
- package/dist/errors/WalletOptionNotFoundError.d.ts +3 -3
- package/dist/exports/core.d.ts +2 -0
- package/dist/exports/core.d.ts.map +1 -1
- package/dist/exports/index.d.ts +7 -0
- package/dist/exports/index.d.ts.map +1 -1
- package/dist/exports/waas.d.ts +2 -1
- package/dist/exports/waas.d.ts.map +1 -1
- package/dist/{getNetworkProviderFromNetworkId-DF9kPibD.native.esm.js → getNetworkProviderFromNetworkId-BV229QF3.native.esm.js} +107 -14
- package/dist/getNetworkProviderFromNetworkId-BV229QF3.native.esm.js.map +1 -0
- package/dist/{getNetworkProviderFromNetworkId-D9nx6Od5.esm.js → getNetworkProviderFromNetworkId-D9oRzWA6.esm.js} +111 -18
- package/dist/getNetworkProviderFromNetworkId-D9oRzWA6.esm.js.map +1 -0
- package/dist/{getNetworkProviderFromNetworkId-DueBnAl6.cjs → getNetworkProviderFromNetworkId-DOrcvuFv.cjs} +111 -12
- package/dist/getNetworkProviderFromNetworkId-DOrcvuFv.cjs.map +1 -0
- package/dist/{getSignedSessionId-B5oxmSTs.cjs → getSignedSessionId-4qHh_BOh.cjs} +3 -3
- package/dist/{getSignedSessionId-B5oxmSTs.cjs.map → getSignedSessionId-4qHh_BOh.cjs.map} +1 -1
- package/dist/{getSignedSessionId-5q4uyZsv.native.esm.js → getSignedSessionId-Cd8CCp5d.native.esm.js} +3 -3
- package/dist/{getSignedSessionId-5q4uyZsv.native.esm.js.map → getSignedSessionId-Cd8CCp5d.native.esm.js.map} +1 -1
- package/dist/{getSignedSessionId-BKfQycNo.esm.js → getSignedSessionId-DA-MMsJm.esm.js} +3 -3
- package/dist/{getSignedSessionId-BKfQycNo.esm.js.map → getSignedSessionId-DA-MMsJm.esm.js.map} +1 -1
- package/dist/{getVerifiedCredentialForWalletAccount-Bx0HlvfW.cjs → getVerifiedCredentialForWalletAccount-Bw5q7QZn.cjs} +2 -2
- package/dist/{getVerifiedCredentialForWalletAccount-Bx0HlvfW.cjs.map → getVerifiedCredentialForWalletAccount-Bw5q7QZn.cjs.map} +1 -1
- package/dist/{getVerifiedCredentialForWalletAccount-_3MExyld.esm.js → getVerifiedCredentialForWalletAccount-Fr3bEKeU.esm.js} +2 -2
- package/dist/{getVerifiedCredentialForWalletAccount-_3MExyld.esm.js.map → getVerifiedCredentialForWalletAccount-Fr3bEKeU.esm.js.map} +1 -1
- package/dist/highLevelFunctions/connectWalletOption/connectWalletOption.d.ts +55 -0
- package/dist/highLevelFunctions/connectWalletOption/connectWalletOption.d.ts.map +1 -0
- package/dist/highLevelFunctions/connectWalletOption/connectWalletOption.types.d.ts +46 -0
- package/dist/highLevelFunctions/connectWalletOption/connectWalletOption.types.d.ts.map +1 -0
- package/dist/highLevelFunctions/connectWalletOption/index.d.ts +2 -0
- package/dist/highLevelFunctions/connectWalletOption/index.d.ts.map +1 -0
- package/dist/index.cjs +930 -815
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +925 -814
- package/dist/index.esm.js.map +1 -1
- package/dist/index.native.esm.js +923 -812
- package/dist/index.native.esm.js.map +1 -1
- package/dist/{isMfaRequiredForAction-BDmY2_Sj.esm.js → isMfaRequiredForAction-BdU62usM.esm.js} +3 -9
- package/dist/{isMfaRequiredForAction-BDmY2_Sj.esm.js.map → isMfaRequiredForAction-BdU62usM.esm.js.map} +1 -1
- package/dist/{isMfaRequiredForAction-BrRCSvEX.native.esm.js → isMfaRequiredForAction-DZfEkyIU.native.esm.js} +3 -9
- package/dist/{isMfaRequiredForAction-BrRCSvEX.native.esm.js.map → isMfaRequiredForAction-DZfEkyIU.native.esm.js.map} +1 -1
- package/dist/{isMfaRequiredForAction-DnKzPDZk.cjs → isMfaRequiredForAction-Djd-jkSl.cjs} +3 -9
- package/dist/{isMfaRequiredForAction-DnKzPDZk.cjs.map → isMfaRequiredForAction-Djd-jkSl.cjs.map} +1 -1
- package/dist/{isUserOnboardingComplete-D1-QluDm.esm.js → isUserOnboardingComplete-BEZOYohA.esm.js} +3 -3
- package/dist/{isUserOnboardingComplete-D1-QluDm.esm.js.map → isUserOnboardingComplete-BEZOYohA.esm.js.map} +1 -1
- package/dist/{isUserOnboardingComplete-7GzNYU2g.cjs → isUserOnboardingComplete-Bwvv6Urs.cjs} +3 -3
- package/dist/{isUserOnboardingComplete-7GzNYU2g.cjs.map → isUserOnboardingComplete-Bwvv6Urs.cjs.map} +1 -1
- package/dist/{isUserOnboardingComplete-BfMMBtkF.native.esm.js → isUserOnboardingComplete-CEUkAzCi.native.esm.js} +3 -3
- package/dist/{isUserOnboardingComplete-BfMMBtkF.native.esm.js.map → isUserOnboardingComplete-CEUkAzCi.native.esm.js.map} +1 -1
- package/dist/{logoutWithReason-C_T7KddM.cjs → logoutWithReason-B-ZF0VmN.cjs} +57 -18
- package/dist/logoutWithReason-B-ZF0VmN.cjs.map +1 -0
- package/dist/{logoutWithReason-3UICYir7.native.esm.js → logoutWithReason-DvnEa2Uv.native.esm.js} +3 -9
- package/dist/{logoutWithReason-3UICYir7.native.esm.js.map → logoutWithReason-DvnEa2Uv.native.esm.js.map} +1 -1
- package/dist/{logoutWithReason-CHyuBHdx.esm.js → logoutWithReason-I6vShLpA.esm.js} +46 -19
- package/dist/logoutWithReason-I6vShLpA.esm.js.map +1 -0
- package/dist/{migrateFromFireblocks-DJt9bktR.native.esm.js → migrateFromFireblocks-6I7lkraQ.native.esm.js} +2 -2
- package/dist/{migrateFromFireblocks-DJt9bktR.native.esm.js.map → migrateFromFireblocks-6I7lkraQ.native.esm.js.map} +1 -1
- package/dist/{migrateFromFireblocks-C9Kuke5V.cjs → migrateFromFireblocks-C23-24bK.cjs} +2 -2
- package/dist/{migrateFromFireblocks-C9Kuke5V.cjs.map → migrateFromFireblocks-C23-24bK.cjs.map} +1 -1
- package/dist/{migrateFromFireblocks-BMO3u6rO.esm.js → migrateFromFireblocks-Dtk6t8hN.esm.js} +2 -2
- package/dist/{migrateFromFireblocks-BMO3u6rO.esm.js.map → migrateFromFireblocks-Dtk6t8hN.esm.js.map} +1 -1
- package/dist/modules/funding/coinbase/getCoinbaseAccounts/getCoinbaseAccounts.d.ts +1 -1
- package/dist/modules/funding/coinbase/getCoinbaseBuyUrl/getCoinbaseBuyUrl.d.ts +1 -1
- package/dist/modules/funding/kraken/getKrakenAccounts/getKrakenAccounts.d.ts +1 -1
- package/dist/modules/funding/kraken/getKrakenWhitelistedAddresses/getKrakenWhitelistedAddresses.d.ts +1 -1
- package/dist/modules/sessionKeys/signBusinessAccountIntent/signBusinessAccountIntent.d.ts +95 -0
- package/dist/modules/sessionKeys/signBusinessAccountIntent/signBusinessAccountIntent.d.ts.map +1 -0
- package/dist/modules/waas/businessAccounts/addBusinessAccountMember/addBusinessAccountMember.d.ts +3 -1
- package/dist/modules/waas/businessAccounts/addBusinessAccountMember/addBusinessAccountMember.d.ts.map +1 -1
- package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/addBusinessAccountSigner.d.ts +15 -6
- package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/addBusinessAccountSigner.d.ts.map +1 -1
- package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/addWalletToBusinessAccount.d.ts +7 -3
- package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/addWalletToBusinessAccount.d.ts.map +1 -1
- package/dist/modules/waas/businessAccounts/businessAccounts.types.d.ts +115 -2
- package/dist/modules/waas/businessAccounts/businessAccounts.types.d.ts.map +1 -1
- package/dist/modules/waas/businessAccounts/isBusinessAccountActionRequired/index.d.ts +2 -0
- package/dist/modules/waas/businessAccounts/isBusinessAccountActionRequired/index.d.ts.map +1 -0
- package/dist/modules/waas/businessAccounts/isBusinessAccountActionRequired/isBusinessAccountActionRequired.d.ts +27 -0
- package/dist/modules/waas/businessAccounts/isBusinessAccountActionRequired/isBusinessAccountActionRequired.d.ts.map +1 -0
- package/dist/modules/waas/businessAccounts/updateBusinessAccountMemberRole/updateBusinessAccountMemberRole.d.ts +13 -6
- package/dist/modules/waas/businessAccounts/updateBusinessAccountMemberRole/updateBusinessAccountMemberRole.d.ts.map +1 -1
- package/dist/modules/waas/createWaasProvider/createWaasProvider.d.ts.map +1 -1
- package/dist/modules/waas/waas.types.d.ts +5 -2
- package/dist/modules/waas/waas.types.d.ts.map +1 -1
- package/dist/modules/walletOptionsCatalogue/buildWalletBookConnectionOptions/buildWalletBookConnectionOptions.d.ts +42 -0
- package/dist/modules/walletOptionsCatalogue/buildWalletBookConnectionOptions/buildWalletBookConnectionOptions.d.ts.map +1 -0
- package/dist/modules/walletOptionsCatalogue/buildWalletConnectOptions/buildWalletConnectOptions.d.ts +7 -1
- package/dist/modules/walletOptionsCatalogue/buildWalletConnectOptions/buildWalletConnectOptions.d.ts.map +1 -1
- package/dist/modules/walletOptionsCatalogue/buildWalletOption/buildWalletOption.d.ts.map +1 -1
- package/dist/modules/walletOptionsCatalogue/deriveSupportedChains/deriveSupportedChains.d.ts +27 -0
- package/dist/modules/walletOptionsCatalogue/deriveSupportedChains/deriveSupportedChains.d.ts.map +1 -0
- package/dist/modules/walletOptionsCatalogue/getWalletOptionsCatalogue/getWalletOptionsCatalogue.d.ts +4 -0
- package/dist/modules/walletOptionsCatalogue/getWalletOptionsCatalogue/getWalletOptionsCatalogue.d.ts.map +1 -1
- package/dist/modules/walletOptionsCatalogue/isWalletExtensionInstalled/index.d.ts +3 -0
- package/dist/modules/walletOptionsCatalogue/isWalletExtensionInstalled/index.d.ts.map +1 -0
- package/dist/modules/walletOptionsCatalogue/isWalletExtensionInstalled/isWalletExtensionInstalled.d.ts +35 -0
- package/dist/modules/walletOptionsCatalogue/isWalletExtensionInstalled/isWalletExtensionInstalled.d.ts.map +1 -0
- package/dist/modules/walletOptionsCatalogue/sortWalletOptions/sortWalletOptions.d.ts +1 -1
- package/dist/modules/walletOptionsCatalogue/walletOptionsCatalogue.types.d.ts +7 -0
- package/dist/modules/walletOptionsCatalogue/walletOptionsCatalogue.types.d.ts.map +1 -1
- package/dist/modules/wallets/connectWithUriConnectionOption/connectWithUriConnectionOption.d.ts +6 -5
- package/dist/modules/wallets/connectWithUriConnectionOption/connectWithUriConnectionOption.d.ts.map +1 -1
- package/dist/modules/wallets/redirectToInAppBrowser/redirectToInAppBrowser.d.ts +3 -3
- package/dist/modules/wallets/resolveWalletConnectionOption/resolveWalletConnectionOption.d.ts +2 -2
- package/dist/modules/wallets/resolveWalletConnectionOption/resolveWalletConnectionOption.d.ts.map +1 -1
- package/dist/modules/wallets/uriConnectionStarterRegistry/getUriConnectionStarterChains/getUriConnectionStarterChains.d.ts +27 -0
- package/dist/modules/wallets/uriConnectionStarterRegistry/getUriConnectionStarterChains/getUriConnectionStarterChains.d.ts.map +1 -0
- package/dist/modules/wallets/uriConnectionStarterRegistry/getUriConnectionStarterChains/index.d.ts +2 -0
- package/dist/modules/wallets/uriConnectionStarterRegistry/getUriConnectionStarterChains/index.d.ts.map +1 -0
- package/dist/modules/wallets/verifyMessageSignatureOwnership/verifyMessageSignatureOwnership.d.ts.map +1 -1
- package/dist/modules/wallets/walletConnectionHandlers.types.d.ts +62 -0
- package/dist/modules/wallets/walletConnectionHandlers.types.d.ts.map +1 -0
- package/dist/services/instrumentation/instrumentFunction/instrumentFunction.d.ts +6 -5
- package/dist/services/instrumentation/instrumentFunction/instrumentFunction.d.ts.map +1 -1
- package/dist/services/instrumentation/resolveInstrumentationCore/index.d.ts +2 -0
- package/dist/services/instrumentation/resolveInstrumentationCore/index.d.ts.map +1 -0
- package/dist/services/instrumentation/resolveInstrumentationCore/resolveInstrumentationCore.d.ts +19 -0
- package/dist/services/instrumentation/resolveInstrumentationCore/resolveInstrumentationCore.d.ts.map +1 -0
- package/dist/services/instrumentation/transports/createDynamicTransport/createDynamicTransport.d.ts +4 -3
- package/dist/services/instrumentation/transports/createDynamicTransport/createDynamicTransport.d.ts.map +1 -1
- package/dist/services/realtime/createRealtimeService/createRealtimeService.d.ts.map +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/dist/utils/getCurrentPageUrl/getCurrentPageUrl.d.ts +15 -0
- package/dist/utils/getCurrentPageUrl/getCurrentPageUrl.d.ts.map +1 -0
- package/dist/utils/getCurrentPageUrl/index.d.ts +2 -0
- package/dist/utils/getCurrentPageUrl/index.d.ts.map +1 -0
- package/dist/utils/isScreeningBlockedError/index.d.ts +2 -0
- package/dist/utils/isScreeningBlockedError/index.d.ts.map +1 -0
- package/dist/utils/isScreeningBlockedError/isScreeningBlockedError.d.ts +24 -0
- package/dist/utils/isScreeningBlockedError/isScreeningBlockedError.d.ts.map +1 -0
- package/dist/{waas-Bxsd0-HG.cjs → waas-C0IDCf3u.cjs} +81 -18
- package/dist/waas-C0IDCf3u.cjs.map +1 -0
- package/dist/{waas-9QajYGeK.native.esm.js → waas-DJeW02-Y.native.esm.js} +77 -20
- package/dist/waas-DJeW02-Y.native.esm.js.map +1 -0
- package/dist/{waas-T_dHXyI9.esm.js → waas-D_alZrtb.esm.js} +77 -20
- package/dist/waas-D_alZrtb.esm.js.map +1 -0
- package/dist/waas.cjs +5 -4
- package/dist/waas.esm.js +5 -5
- package/dist/waas.native.esm.js +5 -5
- package/dist/waasCore.cjs +8 -6
- package/dist/waasCore.cjs.map +1 -1
- package/dist/waasCore.esm.js +8 -6
- package/dist/waasCore.esm.js.map +1 -1
- package/dist/waasCore.native.esm.js +8 -6
- package/dist/waasCore.native.esm.js.map +1 -1
- package/package.json +5 -4
- package/dist/apiClient-d2qJyIvx.native.esm.js.map +0 -1
- package/dist/getNetworkProviderFromNetworkId-D9nx6Od5.esm.js.map +0 -1
- package/dist/getNetworkProviderFromNetworkId-DF9kPibD.native.esm.js.map +0 -1
- package/dist/getNetworkProviderFromNetworkId-DueBnAl6.cjs.map +0 -1
- package/dist/logoutWithReason-CHyuBHdx.esm.js.map +0 -1
- package/dist/logoutWithReason-C_T7KddM.cjs.map +0 -1
- package/dist/modules/walletOptionsCatalogue/hasInstalledProvider/hasInstalledProvider.d.ts +0 -18
- package/dist/modules/walletOptionsCatalogue/hasInstalledProvider/hasInstalledProvider.d.ts.map +0 -1
- package/dist/modules/wallets/connectWallet.types.d.ts +0 -35
- package/dist/modules/wallets/connectWallet.types.d.ts.map +0 -1
- package/dist/waas-9QajYGeK.native.esm.js.map +0 -1
- package/dist/waas-Bxsd0-HG.cjs.map +0 -1
- package/dist/waas-T_dHXyI9.esm.js.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
const require_logoutWithReason = require('./logoutWithReason-
|
|
2
|
-
const require_migrateFromFireblocks = require('./migrateFromFireblocks-
|
|
3
|
-
const require_waas = require('./waas-
|
|
4
|
-
const require_getNetworkProviderFromNetworkId = require('./getNetworkProviderFromNetworkId-
|
|
5
|
-
const require_getVerifiedCredentialForWalletAccount = require('./getVerifiedCredentialForWalletAccount-
|
|
6
|
-
const require_isUserOnboardingComplete = require('./isUserOnboardingComplete-
|
|
7
|
-
const require_isMfaRequiredForAction = require('./isMfaRequiredForAction-
|
|
1
|
+
const require_logoutWithReason = require('./logoutWithReason-B-ZF0VmN.cjs');
|
|
2
|
+
const require_migrateFromFireblocks = require('./migrateFromFireblocks-C23-24bK.cjs');
|
|
3
|
+
const require_waas = require('./waas-C0IDCf3u.cjs');
|
|
4
|
+
const require_getNetworkProviderFromNetworkId = require('./getNetworkProviderFromNetworkId-DOrcvuFv.cjs');
|
|
5
|
+
const require_getVerifiedCredentialForWalletAccount = require('./getVerifiedCredentialForWalletAccount-Bw5q7QZn.cjs');
|
|
6
|
+
const require_isUserOnboardingComplete = require('./isUserOnboardingComplete-Bwvv6Urs.cjs');
|
|
7
|
+
const require_isMfaRequiredForAction = require('./isMfaRequiredForAction-Djd-jkSl.cjs');
|
|
8
8
|
let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
|
|
9
9
|
let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
|
|
10
10
|
let zod_mini = require("zod/mini");
|
|
@@ -412,13 +412,7 @@ const __refreshUser_impl = refreshUser;
|
|
|
412
412
|
const __refreshUser_wrapped = require_logoutWithReason.instrumentFunction({
|
|
413
413
|
fn: __refreshUser_impl,
|
|
414
414
|
functionName: "refreshUser",
|
|
415
|
-
getCore:
|
|
416
|
-
try {
|
|
417
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
418
|
-
} catch {
|
|
419
|
-
return;
|
|
420
|
-
}
|
|
421
|
-
}
|
|
415
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
422
416
|
});
|
|
423
417
|
|
|
424
418
|
//#endregion
|
|
@@ -609,13 +603,7 @@ const __initializeClient_impl = initializeClient;
|
|
|
609
603
|
const __initializeClient_wrapped = require_logoutWithReason.instrumentFunction({
|
|
610
604
|
fn: __initializeClient_impl,
|
|
611
605
|
functionName: "initializeClient",
|
|
612
|
-
getCore:
|
|
613
|
-
try {
|
|
614
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
615
|
-
} catch {
|
|
616
|
-
return;
|
|
617
|
-
}
|
|
618
|
-
}
|
|
606
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
619
607
|
});
|
|
620
608
|
|
|
621
609
|
//#endregion
|
|
@@ -778,8 +766,9 @@ const LOGS_BASE_URL = "https://logs.dynamicauth.com/api/v1";
|
|
|
778
766
|
* synchronous tick are coalesced into one request, avoiding a round-trip per
|
|
779
767
|
* event.
|
|
780
768
|
*
|
|
781
|
-
* Fetch errors are swallowed to prevent an instrumentation
|
|
782
|
-
* triggering another instrumentation event and causing an
|
|
769
|
+
* Fetch and serialization errors are swallowed to prevent an instrumentation
|
|
770
|
+
* failure from triggering another instrumentation event and causing an
|
|
771
|
+
* infinite loop.
|
|
783
772
|
*
|
|
784
773
|
* Works in both browser and SSR environments — fetch is injected and
|
|
785
774
|
* queueMicrotask is available in Node.js >= 11.
|
|
@@ -793,11 +782,13 @@ const createDynamicTransport = (params) => {
|
|
|
793
782
|
const events = queue.splice(0);
|
|
794
783
|
if (events.length === 0) return;
|
|
795
784
|
const url = `${LOGS_BASE_URL}/${params.environmentId}`;
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
785
|
+
try {
|
|
786
|
+
params.fetch(url, {
|
|
787
|
+
body: JSON.stringify(events),
|
|
788
|
+
headers: { "Content-Type": "application/json" },
|
|
789
|
+
method: "POST"
|
|
790
|
+
}).catch(() => {});
|
|
791
|
+
} catch {}
|
|
801
792
|
};
|
|
802
793
|
return { log: (event) => {
|
|
803
794
|
queue.push(event);
|
|
@@ -1195,20 +1186,14 @@ const __createDynamicClient_impl = createDynamicClient;
|
|
|
1195
1186
|
const __createDynamicClient_wrapped = require_logoutWithReason.instrumentFunction({
|
|
1196
1187
|
fn: __createDynamicClient_impl,
|
|
1197
1188
|
functionName: "createDynamicClient",
|
|
1198
|
-
getCore:
|
|
1199
|
-
try {
|
|
1200
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
1201
|
-
} catch {
|
|
1202
|
-
return;
|
|
1203
|
-
}
|
|
1204
|
-
}
|
|
1189
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
1205
1190
|
});
|
|
1206
1191
|
|
|
1207
1192
|
//#endregion
|
|
1208
1193
|
//#region src/errors/AmbiguousWalletChainError.ts
|
|
1209
1194
|
/**
|
|
1210
1195
|
* Thrown when a wallet can be connected on more than one of the client's
|
|
1211
|
-
* enabled chains and no chain was passed to `
|
|
1196
|
+
* enabled chains and no chain was passed to `connectWalletOption`.
|
|
1212
1197
|
*
|
|
1213
1198
|
* Multi-chain wallets such as MetaMask or Phantom connect to a different
|
|
1214
1199
|
* account per chain, so the chain has to be an explicit choice rather than one
|
|
@@ -1216,15 +1201,13 @@ const __createDynamicClient_wrapped = require_logoutWithReason.instrumentFunctio
|
|
|
1216
1201
|
*
|
|
1217
1202
|
* @example
|
|
1218
1203
|
* ```ts
|
|
1219
|
-
*
|
|
1220
|
-
*
|
|
1221
|
-
*
|
|
1222
|
-
*
|
|
1223
|
-
*
|
|
1224
|
-
* }
|
|
1225
|
-
* }
|
|
1204
|
+
* // Throws, since Phantom connects on both SOL and EVM
|
|
1205
|
+
* await connectWalletOption({ walletKey: 'phantom' });
|
|
1206
|
+
*
|
|
1207
|
+
* // Connects the wallet's Solana account
|
|
1208
|
+
* await connectWalletOption({ chain: 'SOL', walletKey: 'phantom' });
|
|
1226
1209
|
* ```
|
|
1227
|
-
* @see
|
|
1210
|
+
* @see connectWalletOption
|
|
1228
1211
|
* @see getWalletOptionsCatalogue
|
|
1229
1212
|
*/
|
|
1230
1213
|
var AmbiguousWalletChainError = class extends require_logoutWithReason.BaseError {
|
|
@@ -1402,6 +1385,48 @@ var CoinbaseTravelRuleRequiredError = class extends require_logoutWithReason.Bas
|
|
|
1402
1385
|
}
|
|
1403
1386
|
};
|
|
1404
1387
|
|
|
1388
|
+
//#endregion
|
|
1389
|
+
//#region src/errors/ConnectionUriHandlerMissingError.ts
|
|
1390
|
+
/**
|
|
1391
|
+
* Thrown when the only connection path for a wallet is a URI pairing and no
|
|
1392
|
+
* `onConnectionUri` handler was passed to `connectWalletOption`.
|
|
1393
|
+
*
|
|
1394
|
+
* The pairing URI has to reach the user — as a QR code on desktop, or by opening
|
|
1395
|
+
* the wallet's deeplink on mobile — for the wallet to be able to
|
|
1396
|
+
* approve the connection.
|
|
1397
|
+
*
|
|
1398
|
+
* @example
|
|
1399
|
+
* ```ts
|
|
1400
|
+
* // Throws, since the wallet can only be reached through a URI pairing
|
|
1401
|
+
* await connectWalletOption({ walletKey: 'trust' });
|
|
1402
|
+
*
|
|
1403
|
+
* // Connects, once the user approves the pairing
|
|
1404
|
+
* await connectWalletOption({
|
|
1405
|
+
* onConnectionUri: ({ uri }) => renderQrCode(uri),
|
|
1406
|
+
* walletKey: 'trust',
|
|
1407
|
+
* });
|
|
1408
|
+
* ```
|
|
1409
|
+
* @see connectWalletOption
|
|
1410
|
+
* @see ConnectionUriHandlerParams
|
|
1411
|
+
*/
|
|
1412
|
+
var ConnectionUriHandlerMissingError = class extends require_logoutWithReason.BaseError {
|
|
1413
|
+
constructor({ chain, type, walletKey }) {
|
|
1414
|
+
super({
|
|
1415
|
+
cause: null,
|
|
1416
|
+
code: "connection_uri_handler_missing",
|
|
1417
|
+
docsUrl: null,
|
|
1418
|
+
metaMessages: [
|
|
1419
|
+
`Wallet key: ${walletKey}`,
|
|
1420
|
+
`Chain: ${chain}`,
|
|
1421
|
+
`URI connection type: ${type}`,
|
|
1422
|
+
"Pass onConnectionUri to render the pairing URI it hands you as a QR code, or to open it as a link on mobile."
|
|
1423
|
+
],
|
|
1424
|
+
name: "ConnectionUriHandlerMissingError",
|
|
1425
|
+
shortMessage: `Connecting to ${walletKey} requires a URI pairing, so the onConnectionUri param is required.`
|
|
1426
|
+
});
|
|
1427
|
+
}
|
|
1428
|
+
};
|
|
1429
|
+
|
|
1405
1430
|
//#endregion
|
|
1406
1431
|
//#region src/errors/DeeplinkConnectAndVerifyUnsupportedError.ts
|
|
1407
1432
|
var DeeplinkConnectAndVerifyUnsupportedError = class extends require_logoutWithReason.BaseError {
|
|
@@ -1656,14 +1681,14 @@ var NoAddressFoundError = class extends require_logoutWithReason.BaseError {
|
|
|
1656
1681
|
* @example
|
|
1657
1682
|
* ```ts
|
|
1658
1683
|
* try {
|
|
1659
|
-
* await
|
|
1684
|
+
* await connectWalletOption({ walletKey: 'rainbow' });
|
|
1660
1685
|
* } catch (error) {
|
|
1661
1686
|
* if (error instanceof NoConnectionOptionAvailableError) {
|
|
1662
1687
|
* promptWalletInstall(error.installationUrls);
|
|
1663
1688
|
* }
|
|
1664
1689
|
* }
|
|
1665
1690
|
* ```
|
|
1666
|
-
* @see
|
|
1691
|
+
* @see connectWalletOption
|
|
1667
1692
|
* @see getWalletOptionsCatalogue
|
|
1668
1693
|
*/
|
|
1669
1694
|
var NoConnectionOptionAvailableError = class extends require_logoutWithReason.BaseError {
|
|
@@ -1885,10 +1910,57 @@ var WalletAccountNotSelectedError = class extends require_logoutWithReason.BaseE
|
|
|
1885
1910
|
}
|
|
1886
1911
|
};
|
|
1887
1912
|
|
|
1913
|
+
//#endregion
|
|
1914
|
+
//#region src/errors/WalletBrowserRedirectHandlerMissingError.ts
|
|
1915
|
+
/**
|
|
1916
|
+
* Thrown when the connection option resolved for a wallet is its in-app
|
|
1917
|
+
* browser, no `handleWalletBrowserRedirect` handler was passed to
|
|
1918
|
+
* `connectWalletOption`, and there is no current page URL to redirect into
|
|
1919
|
+
* that browser — as on React Native and during server-side rendering.
|
|
1920
|
+
*
|
|
1921
|
+
* That path connects by reloading your app inside the wallet's own browser,
|
|
1922
|
+
* so it needs the URL of the page to reload.
|
|
1923
|
+
*
|
|
1924
|
+
* @example
|
|
1925
|
+
* ```ts
|
|
1926
|
+
* // Throws on React Native, where there is no page URL to reuse
|
|
1927
|
+
* await connectWalletOption({ walletKey: 'coinbase' });
|
|
1928
|
+
*
|
|
1929
|
+
* // Connects, redirecting into the wallet's browser
|
|
1930
|
+
* await connectWalletOption({
|
|
1931
|
+
* handleWalletBrowserRedirect: ({ chain, walletKey }) =>
|
|
1932
|
+
* redirectToInAppBrowser({
|
|
1933
|
+
* appUrl: 'https://mydapp.xyz/login',
|
|
1934
|
+
* chain,
|
|
1935
|
+
* walletKey,
|
|
1936
|
+
* }),
|
|
1937
|
+
* walletKey: 'coinbase',
|
|
1938
|
+
* });
|
|
1939
|
+
* ```
|
|
1940
|
+
* @see connectWalletOption
|
|
1941
|
+
* @see redirectToInAppBrowser
|
|
1942
|
+
*/
|
|
1943
|
+
var WalletBrowserRedirectHandlerMissingError = class extends require_logoutWithReason.BaseError {
|
|
1944
|
+
constructor({ chain, walletKey }) {
|
|
1945
|
+
super({
|
|
1946
|
+
cause: null,
|
|
1947
|
+
code: "wallet_browser_redirect_handler_missing",
|
|
1948
|
+
docsUrl: null,
|
|
1949
|
+
metaMessages: [
|
|
1950
|
+
`Wallet key: ${walletKey}`,
|
|
1951
|
+
`Chain: ${chain}`,
|
|
1952
|
+
"Pass handleWalletBrowserRedirect and call redirectToInAppBrowser from it with the URL of the page to reload inside the wallet's browser."
|
|
1953
|
+
],
|
|
1954
|
+
name: "WalletBrowserRedirectHandlerMissingError",
|
|
1955
|
+
shortMessage: `Connecting to ${walletKey} requires opening its in-app browser, so the handleWalletBrowserRedirect param is required where there is no page URL to redirect.`
|
|
1956
|
+
});
|
|
1957
|
+
}
|
|
1958
|
+
};
|
|
1959
|
+
|
|
1888
1960
|
//#endregion
|
|
1889
1961
|
//#region src/errors/WalletOptionNotFoundError.ts
|
|
1890
1962
|
/**
|
|
1891
|
-
* Thrown when `
|
|
1963
|
+
* Thrown when `connectWalletOption` is given a wallet key that no wallet option in
|
|
1892
1964
|
* the catalogue matches.
|
|
1893
1965
|
*
|
|
1894
1966
|
* A wallet is only surfaced for the chains this client has an extension for, so
|
|
@@ -1898,14 +1970,14 @@ var WalletAccountNotSelectedError = class extends require_logoutWithReason.BaseE
|
|
|
1898
1970
|
* @example
|
|
1899
1971
|
* ```ts
|
|
1900
1972
|
* try {
|
|
1901
|
-
* await
|
|
1973
|
+
* await connectWalletOption({ walletKey: 'metmask' });
|
|
1902
1974
|
* } catch (error) {
|
|
1903
1975
|
* if (error instanceof WalletOptionNotFoundError) {
|
|
1904
1976
|
* showUnknownWalletMessage();
|
|
1905
1977
|
* }
|
|
1906
1978
|
* }
|
|
1907
1979
|
* ```
|
|
1908
|
-
* @see
|
|
1980
|
+
* @see connectWalletOption
|
|
1909
1981
|
* @see getWalletOptionsCatalogue
|
|
1910
1982
|
*/
|
|
1911
1983
|
var WalletOptionNotFoundError = class extends require_logoutWithReason.BaseError {
|
|
@@ -2001,13 +2073,7 @@ const __checkStepUpAuth_impl = checkStepUpAuth;
|
|
|
2001
2073
|
const __checkStepUpAuth_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2002
2074
|
fn: __checkStepUpAuth_impl,
|
|
2003
2075
|
functionName: "checkStepUpAuth",
|
|
2004
|
-
getCore:
|
|
2005
|
-
try {
|
|
2006
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2007
|
-
} catch {
|
|
2008
|
-
return;
|
|
2009
|
-
}
|
|
2010
|
-
}
|
|
2076
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2011
2077
|
});
|
|
2012
2078
|
|
|
2013
2079
|
//#endregion
|
|
@@ -2047,13 +2113,7 @@ const __requestExternalAuthElevatedToken_impl = requestExternalAuthElevatedToken
|
|
|
2047
2113
|
const __requestExternalAuthElevatedToken_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2048
2114
|
fn: __requestExternalAuthElevatedToken_impl,
|
|
2049
2115
|
functionName: "requestExternalAuthElevatedToken",
|
|
2050
|
-
getCore:
|
|
2051
|
-
try {
|
|
2052
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2053
|
-
} catch {
|
|
2054
|
-
return;
|
|
2055
|
-
}
|
|
2056
|
-
}
|
|
2116
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2057
2117
|
});
|
|
2058
2118
|
|
|
2059
2119
|
//#endregion
|
|
@@ -2095,13 +2155,7 @@ const __signInWithExternalJwt_impl = signInWithExternalJwt;
|
|
|
2095
2155
|
const __signInWithExternalJwt_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2096
2156
|
fn: __signInWithExternalJwt_impl,
|
|
2097
2157
|
functionName: "signInWithExternalJwt",
|
|
2098
|
-
getCore:
|
|
2099
|
-
try {
|
|
2100
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2101
|
-
} catch {
|
|
2102
|
-
return;
|
|
2103
|
-
}
|
|
2104
|
-
}
|
|
2158
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2105
2159
|
});
|
|
2106
2160
|
|
|
2107
2161
|
//#endregion
|
|
@@ -2212,13 +2266,7 @@ const __deletePasskey_impl = deletePasskey;
|
|
|
2212
2266
|
const __deletePasskey_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2213
2267
|
fn: __deletePasskey_impl,
|
|
2214
2268
|
functionName: "deletePasskey",
|
|
2215
|
-
getCore:
|
|
2216
|
-
try {
|
|
2217
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2218
|
-
} catch {
|
|
2219
|
-
return;
|
|
2220
|
-
}
|
|
2221
|
-
}
|
|
2269
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2222
2270
|
});
|
|
2223
2271
|
|
|
2224
2272
|
//#endregion
|
|
@@ -2301,13 +2349,7 @@ const __registerPasskey_impl = registerPasskey;
|
|
|
2301
2349
|
const __registerPasskey_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2302
2350
|
fn: __registerPasskey_impl,
|
|
2303
2351
|
functionName: "registerPasskey",
|
|
2304
|
-
getCore:
|
|
2305
|
-
try {
|
|
2306
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2307
|
-
} catch {
|
|
2308
|
-
return;
|
|
2309
|
-
}
|
|
2310
|
-
}
|
|
2352
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2311
2353
|
});
|
|
2312
2354
|
|
|
2313
2355
|
//#endregion
|
|
@@ -2374,13 +2416,7 @@ const __signInWithPasskey_impl = signInWithPasskey;
|
|
|
2374
2416
|
const __signInWithPasskey_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2375
2417
|
fn: __signInWithPasskey_impl,
|
|
2376
2418
|
functionName: "signInWithPasskey",
|
|
2377
|
-
getCore:
|
|
2378
|
-
try {
|
|
2379
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2380
|
-
} catch {
|
|
2381
|
-
return;
|
|
2382
|
-
}
|
|
2383
|
-
}
|
|
2419
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2384
2420
|
});
|
|
2385
2421
|
|
|
2386
2422
|
//#endregion
|
|
@@ -2595,13 +2631,7 @@ const __signInWithSocialRedirect_impl = signInWithSocialRedirect;
|
|
|
2595
2631
|
const __signInWithSocialRedirect_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2596
2632
|
fn: __signInWithSocialRedirect_impl,
|
|
2597
2633
|
functionName: "signInWithSocialRedirect",
|
|
2598
|
-
getCore:
|
|
2599
|
-
try {
|
|
2600
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2601
|
-
} catch {
|
|
2602
|
-
return;
|
|
2603
|
-
}
|
|
2604
|
-
}
|
|
2634
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2605
2635
|
});
|
|
2606
2636
|
|
|
2607
2637
|
//#endregion
|
|
@@ -2626,13 +2656,7 @@ const __authenticateWithSocial_impl = authenticateWithSocial;
|
|
|
2626
2656
|
const __authenticateWithSocial_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2627
2657
|
fn: __authenticateWithSocial_impl,
|
|
2628
2658
|
functionName: "authenticateWithSocial",
|
|
2629
|
-
getCore:
|
|
2630
|
-
try {
|
|
2631
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2632
|
-
} catch {
|
|
2633
|
-
return;
|
|
2634
|
-
}
|
|
2635
|
-
}
|
|
2659
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2636
2660
|
});
|
|
2637
2661
|
|
|
2638
2662
|
//#endregion
|
|
@@ -2744,13 +2768,7 @@ const __processSocialCallback_impl = processSocialCallback;
|
|
|
2744
2768
|
const __processSocialCallback_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2745
2769
|
fn: __processSocialCallback_impl,
|
|
2746
2770
|
functionName: "processSocialCallback",
|
|
2747
|
-
getCore:
|
|
2748
|
-
try {
|
|
2749
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2750
|
-
} catch {
|
|
2751
|
-
return;
|
|
2752
|
-
}
|
|
2753
|
-
}
|
|
2771
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2754
2772
|
});
|
|
2755
2773
|
|
|
2756
2774
|
//#endregion
|
|
@@ -2811,13 +2829,7 @@ const __completeSocialRedirect_impl = completeSocialRedirect;
|
|
|
2811
2829
|
const __completeSocialRedirect_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2812
2830
|
fn: __completeSocialRedirect_impl,
|
|
2813
2831
|
functionName: "completeSocialRedirect",
|
|
2814
|
-
getCore:
|
|
2815
|
-
try {
|
|
2816
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2817
|
-
} catch {
|
|
2818
|
-
return;
|
|
2819
|
-
}
|
|
2820
|
-
}
|
|
2832
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2821
2833
|
});
|
|
2822
2834
|
|
|
2823
2835
|
//#endregion
|
|
@@ -2834,13 +2846,7 @@ const __completeSocialAuthentication_impl = completeSocialAuthentication;
|
|
|
2834
2846
|
const __completeSocialAuthentication_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2835
2847
|
fn: __completeSocialAuthentication_impl,
|
|
2836
2848
|
functionName: "completeSocialAuthentication",
|
|
2837
|
-
getCore:
|
|
2838
|
-
try {
|
|
2839
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2840
|
-
} catch {
|
|
2841
|
-
return;
|
|
2842
|
-
}
|
|
2843
|
-
}
|
|
2849
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2844
2850
|
});
|
|
2845
2851
|
|
|
2846
2852
|
//#endregion
|
|
@@ -2909,13 +2915,7 @@ const __signInWithSocialPopUp_impl = signInWithSocialPopUp;
|
|
|
2909
2915
|
const __signInWithSocialPopUp_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2910
2916
|
fn: __signInWithSocialPopUp_impl,
|
|
2911
2917
|
functionName: "signInWithSocialPopUp",
|
|
2912
|
-
getCore:
|
|
2913
|
-
try {
|
|
2914
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2915
|
-
} catch {
|
|
2916
|
-
return;
|
|
2917
|
-
}
|
|
2918
|
-
}
|
|
2918
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
2919
2919
|
});
|
|
2920
2920
|
|
|
2921
2921
|
//#endregion
|
|
@@ -2990,13 +2990,7 @@ const __unlinkSocialAccount_impl = unlinkSocialAccount;
|
|
|
2990
2990
|
const __unlinkSocialAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
2991
2991
|
fn: __unlinkSocialAccount_impl,
|
|
2992
2992
|
functionName: "unlinkSocialAccount",
|
|
2993
|
-
getCore:
|
|
2994
|
-
try {
|
|
2995
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
2996
|
-
} catch {
|
|
2997
|
-
return;
|
|
2998
|
-
}
|
|
2999
|
-
}
|
|
2993
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3000
2994
|
});
|
|
3001
2995
|
|
|
3002
2996
|
//#endregion
|
|
@@ -3253,13 +3247,7 @@ const __attachCheckoutTransactionSource_impl = attachCheckoutTransactionSource;
|
|
|
3253
3247
|
const __attachCheckoutTransactionSource_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3254
3248
|
fn: __attachCheckoutTransactionSource_impl,
|
|
3255
3249
|
functionName: "attachCheckoutTransactionSource",
|
|
3256
|
-
getCore:
|
|
3257
|
-
try {
|
|
3258
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3259
|
-
} catch {
|
|
3260
|
-
return;
|
|
3261
|
-
}
|
|
3262
|
-
}
|
|
3250
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3263
3251
|
});
|
|
3264
3252
|
|
|
3265
3253
|
//#endregion
|
|
@@ -3295,13 +3283,7 @@ const __broadcastCheckoutTransaction_impl = broadcastCheckoutTransaction;
|
|
|
3295
3283
|
const __broadcastCheckoutTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3296
3284
|
fn: __broadcastCheckoutTransaction_impl,
|
|
3297
3285
|
functionName: "broadcastCheckoutTransaction",
|
|
3298
|
-
getCore:
|
|
3299
|
-
try {
|
|
3300
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3301
|
-
} catch {
|
|
3302
|
-
return;
|
|
3303
|
-
}
|
|
3304
|
-
}
|
|
3286
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3305
3287
|
});
|
|
3306
3288
|
|
|
3307
3289
|
//#endregion
|
|
@@ -3334,13 +3316,7 @@ const __cancelCheckoutTransaction_impl = cancelCheckoutTransaction;
|
|
|
3334
3316
|
const __cancelCheckoutTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3335
3317
|
fn: __cancelCheckoutTransaction_impl,
|
|
3336
3318
|
functionName: "cancelCheckoutTransaction",
|
|
3337
|
-
getCore:
|
|
3338
|
-
try {
|
|
3339
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3340
|
-
} catch {
|
|
3341
|
-
return;
|
|
3342
|
-
}
|
|
3343
|
-
}
|
|
3319
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3344
3320
|
});
|
|
3345
3321
|
|
|
3346
3322
|
//#endregion
|
|
@@ -3392,13 +3368,7 @@ const __createCheckoutTransaction_impl = createCheckoutTransaction;
|
|
|
3392
3368
|
const __createCheckoutTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3393
3369
|
fn: __createCheckoutTransaction_impl,
|
|
3394
3370
|
functionName: "createCheckoutTransaction",
|
|
3395
|
-
getCore:
|
|
3396
|
-
try {
|
|
3397
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3398
|
-
} catch {
|
|
3399
|
-
return;
|
|
3400
|
-
}
|
|
3401
|
-
}
|
|
3371
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3402
3372
|
});
|
|
3403
3373
|
|
|
3404
3374
|
//#endregion
|
|
@@ -3486,13 +3456,7 @@ const __prepareCheckoutTransaction_impl = prepareCheckoutTransaction;
|
|
|
3486
3456
|
const __prepareCheckoutTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3487
3457
|
fn: __prepareCheckoutTransaction_impl,
|
|
3488
3458
|
functionName: "prepareCheckoutTransaction",
|
|
3489
|
-
getCore:
|
|
3490
|
-
try {
|
|
3491
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3492
|
-
} catch {
|
|
3493
|
-
return;
|
|
3494
|
-
}
|
|
3495
|
-
}
|
|
3459
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3496
3460
|
});
|
|
3497
3461
|
|
|
3498
3462
|
//#endregion
|
|
@@ -3590,13 +3554,7 @@ const __executeSwapTransaction_impl = executeSwapTransaction;
|
|
|
3590
3554
|
const __executeSwapTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3591
3555
|
fn: __executeSwapTransaction_impl,
|
|
3592
3556
|
functionName: "executeSwapTransaction",
|
|
3593
|
-
getCore:
|
|
3594
|
-
try {
|
|
3595
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3596
|
-
} catch {
|
|
3597
|
-
return;
|
|
3598
|
-
}
|
|
3599
|
-
}
|
|
3557
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3600
3558
|
});
|
|
3601
3559
|
|
|
3602
3560
|
//#endregion
|
|
@@ -3639,13 +3597,7 @@ const __submitCheckoutTransaction_impl = submitCheckoutTransaction;
|
|
|
3639
3597
|
const __submitCheckoutTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3640
3598
|
fn: __submitCheckoutTransaction_impl,
|
|
3641
3599
|
functionName: "submitCheckoutTransaction",
|
|
3642
|
-
getCore:
|
|
3643
|
-
try {
|
|
3644
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3645
|
-
} catch {
|
|
3646
|
-
return;
|
|
3647
|
-
}
|
|
3648
|
-
}
|
|
3600
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3649
3601
|
});
|
|
3650
3602
|
|
|
3651
3603
|
//#endregion
|
|
@@ -3768,13 +3720,7 @@ const __completeDeviceRegistration_impl = completeDeviceRegistration;
|
|
|
3768
3720
|
const __completeDeviceRegistration_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3769
3721
|
fn: __completeDeviceRegistration_impl,
|
|
3770
3722
|
functionName: "completeDeviceRegistration",
|
|
3771
|
-
getCore:
|
|
3772
|
-
try {
|
|
3773
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3774
|
-
} catch {
|
|
3775
|
-
return;
|
|
3776
|
-
}
|
|
3777
|
-
}
|
|
3723
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3778
3724
|
});
|
|
3779
3725
|
|
|
3780
3726
|
//#endregion
|
|
@@ -3851,13 +3797,7 @@ const __revokeAllRegisteredDevices_impl = revokeAllRegisteredDevices;
|
|
|
3851
3797
|
const __revokeAllRegisteredDevices_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3852
3798
|
fn: __revokeAllRegisteredDevices_impl,
|
|
3853
3799
|
functionName: "revokeAllRegisteredDevices",
|
|
3854
|
-
getCore:
|
|
3855
|
-
try {
|
|
3856
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3857
|
-
} catch {
|
|
3858
|
-
return;
|
|
3859
|
-
}
|
|
3860
|
-
}
|
|
3800
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3861
3801
|
});
|
|
3862
3802
|
|
|
3863
3803
|
//#endregion
|
|
@@ -3875,13 +3815,7 @@ const __revokeRegisteredDevice_impl = revokeRegisteredDevice;
|
|
|
3875
3815
|
const __revokeRegisteredDevice_wrapped = require_logoutWithReason.instrumentFunction({
|
|
3876
3816
|
fn: __revokeRegisteredDevice_impl,
|
|
3877
3817
|
functionName: "revokeRegisteredDevice",
|
|
3878
|
-
getCore:
|
|
3879
|
-
try {
|
|
3880
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
3881
|
-
} catch {
|
|
3882
|
-
return;
|
|
3883
|
-
}
|
|
3884
|
-
}
|
|
3818
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
3885
3819
|
});
|
|
3886
3820
|
|
|
3887
3821
|
//#endregion
|
|
@@ -4002,13 +3936,7 @@ const __attachFlowSource_impl = attachFlowSource;
|
|
|
4002
3936
|
const __attachFlowSource_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4003
3937
|
fn: __attachFlowSource_impl,
|
|
4004
3938
|
functionName: "attachFlowSource",
|
|
4005
|
-
getCore:
|
|
4006
|
-
try {
|
|
4007
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4008
|
-
} catch {
|
|
4009
|
-
return;
|
|
4010
|
-
}
|
|
4011
|
-
},
|
|
3939
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore,
|
|
4012
3940
|
selectors: attachFlowSourceInstrumentation
|
|
4013
3941
|
});
|
|
4014
3942
|
|
|
@@ -4073,13 +4001,7 @@ const __broadcastFlow_impl = broadcastFlow;
|
|
|
4073
4001
|
const __broadcastFlow_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4074
4002
|
fn: __broadcastFlow_impl,
|
|
4075
4003
|
functionName: "broadcastFlow",
|
|
4076
|
-
getCore:
|
|
4077
|
-
try {
|
|
4078
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4079
|
-
} catch {
|
|
4080
|
-
return;
|
|
4081
|
-
}
|
|
4082
|
-
},
|
|
4004
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore,
|
|
4083
4005
|
selectors: broadcastFlowInstrumentation
|
|
4084
4006
|
});
|
|
4085
4007
|
|
|
@@ -4132,13 +4054,7 @@ const __cancelFlow_impl = cancelFlow;
|
|
|
4132
4054
|
const __cancelFlow_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4133
4055
|
fn: __cancelFlow_impl,
|
|
4134
4056
|
functionName: "cancelFlow",
|
|
4135
|
-
getCore:
|
|
4136
|
-
try {
|
|
4137
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4138
|
-
} catch {
|
|
4139
|
-
return;
|
|
4140
|
-
}
|
|
4141
|
-
},
|
|
4057
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore,
|
|
4142
4058
|
selectors: cancelFlowInstrumentation
|
|
4143
4059
|
});
|
|
4144
4060
|
|
|
@@ -4255,13 +4171,7 @@ const __prepareFlowSigning_impl = prepareFlowSigning;
|
|
|
4255
4171
|
const __prepareFlowSigning_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4256
4172
|
fn: __prepareFlowSigning_impl,
|
|
4257
4173
|
functionName: "prepareFlowSigning",
|
|
4258
|
-
getCore:
|
|
4259
|
-
try {
|
|
4260
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4261
|
-
} catch {
|
|
4262
|
-
return;
|
|
4263
|
-
}
|
|
4264
|
-
},
|
|
4174
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore,
|
|
4265
4175
|
selectors: prepareFlowSigningInstrumentation
|
|
4266
4176
|
});
|
|
4267
4177
|
|
|
@@ -4320,13 +4230,7 @@ const __submitFlowTransaction_impl = submitFlowTransaction;
|
|
|
4320
4230
|
const __submitFlowTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4321
4231
|
fn: __submitFlowTransaction_impl,
|
|
4322
4232
|
functionName: "submitFlowTransaction",
|
|
4323
|
-
getCore:
|
|
4324
|
-
try {
|
|
4325
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4326
|
-
} catch {
|
|
4327
|
-
return;
|
|
4328
|
-
}
|
|
4329
|
-
},
|
|
4233
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore,
|
|
4330
4234
|
selectors: submitFlowTransactionInstrumentation
|
|
4331
4235
|
});
|
|
4332
4236
|
|
|
@@ -4668,13 +4572,7 @@ const __createCoinbaseOnrampOrder_impl = createCoinbaseOnrampOrder;
|
|
|
4668
4572
|
const __createCoinbaseOnrampOrder_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4669
4573
|
fn: __createCoinbaseOnrampOrder_impl,
|
|
4670
4574
|
functionName: "createCoinbaseOnrampOrder",
|
|
4671
|
-
getCore:
|
|
4672
|
-
try {
|
|
4673
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4674
|
-
} catch {
|
|
4675
|
-
return;
|
|
4676
|
-
}
|
|
4677
|
-
}
|
|
4575
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4678
4576
|
});
|
|
4679
4577
|
|
|
4680
4578
|
//#endregion
|
|
@@ -4713,7 +4611,7 @@ const assertChainName = (chainName) => {
|
|
|
4713
4611
|
* ```
|
|
4714
4612
|
* @see createCoinbaseExchangeTransfer
|
|
4715
4613
|
* @see GetCoinbaseAccountsParams
|
|
4716
|
-
* @
|
|
4614
|
+
* @instrumented
|
|
4717
4615
|
*/
|
|
4718
4616
|
const getCoinbaseAccounts = async (params, client = require_logoutWithReason.getDefaultClient()) => {
|
|
4719
4617
|
const core = require_logoutWithReason.getCore(client);
|
|
@@ -4729,6 +4627,12 @@ const getCoinbaseAccounts = async (params, client = require_logoutWithReason.get
|
|
|
4729
4627
|
networkId
|
|
4730
4628
|
});
|
|
4731
4629
|
};
|
|
4630
|
+
const __getCoinbaseAccounts_impl = getCoinbaseAccounts;
|
|
4631
|
+
const __getCoinbaseAccounts_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4632
|
+
fn: __getCoinbaseAccounts_impl,
|
|
4633
|
+
functionName: "getCoinbaseAccounts",
|
|
4634
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4635
|
+
});
|
|
4732
4636
|
|
|
4733
4637
|
//#endregion
|
|
4734
4638
|
//#region src/modules/funding/coinbase/getCoinbaseBuyUrl/getCoinbaseBuyUrl.ts
|
|
@@ -4738,7 +4642,7 @@ const getCoinbaseAccounts = async (params, client = require_logoutWithReason.get
|
|
|
4738
4642
|
* @param buyUrlParams CoinbaseOnrampGetBuyUrlRequest - The parameters for the buy URL.
|
|
4739
4643
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
4740
4644
|
* @returns an object containing the buy URL
|
|
4741
|
-
* @
|
|
4645
|
+
* @instrumented
|
|
4742
4646
|
*/
|
|
4743
4647
|
const getCoinbaseBuyUrl = async (buyUrlParams, client = require_logoutWithReason.getDefaultClient()) => {
|
|
4744
4648
|
const core = require_logoutWithReason.getCore(client);
|
|
@@ -4747,6 +4651,12 @@ const getCoinbaseBuyUrl = async (buyUrlParams, client = require_logoutWithReason
|
|
|
4747
4651
|
environmentId: core.environmentId
|
|
4748
4652
|
});
|
|
4749
4653
|
};
|
|
4654
|
+
const __getCoinbaseBuyUrl_impl = getCoinbaseBuyUrl;
|
|
4655
|
+
const __getCoinbaseBuyUrl_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4656
|
+
fn: __getCoinbaseBuyUrl_impl,
|
|
4657
|
+
functionName: "getCoinbaseBuyUrl",
|
|
4658
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4659
|
+
});
|
|
4750
4660
|
|
|
4751
4661
|
//#endregion
|
|
4752
4662
|
//#region src/modules/funding/cryptoDotCom/createCryptoDotComPayment/createCryptoDotComPayment.ts
|
|
@@ -4772,13 +4682,7 @@ const __createCryptoDotComPayment_impl = createCryptoDotComPayment;
|
|
|
4772
4682
|
const __createCryptoDotComPayment_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4773
4683
|
fn: __createCryptoDotComPayment_impl,
|
|
4774
4684
|
functionName: "createCryptoDotComPayment",
|
|
4775
|
-
getCore:
|
|
4776
|
-
try {
|
|
4777
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4778
|
-
} catch {
|
|
4779
|
-
return;
|
|
4780
|
-
}
|
|
4781
|
-
}
|
|
4685
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4782
4686
|
});
|
|
4783
4687
|
|
|
4784
4688
|
//#endregion
|
|
@@ -4811,7 +4715,7 @@ const createKrakenExchangeTransfer = async (transferParams, client = require_log
|
|
|
4811
4715
|
* @param [params] GetKrakenAccountsParams - Optional filters for the accounts.
|
|
4812
4716
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
4813
4717
|
* @returns Array of Kraken accounts with balances
|
|
4814
|
-
* @
|
|
4718
|
+
* @instrumented
|
|
4815
4719
|
*/
|
|
4816
4720
|
const getKrakenAccounts = async (params, client = require_logoutWithReason.getDefaultClient()) => {
|
|
4817
4721
|
const core = require_logoutWithReason.getCore(client);
|
|
@@ -4822,6 +4726,12 @@ const getKrakenAccounts = async (params, client = require_logoutWithReason.getDe
|
|
|
4822
4726
|
networkId: params?.networkId
|
|
4823
4727
|
});
|
|
4824
4728
|
};
|
|
4729
|
+
const __getKrakenAccounts_impl = getKrakenAccounts;
|
|
4730
|
+
const __getKrakenAccounts_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4731
|
+
fn: __getKrakenAccounts_impl,
|
|
4732
|
+
functionName: "getKrakenAccounts",
|
|
4733
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4734
|
+
});
|
|
4825
4735
|
|
|
4826
4736
|
//#endregion
|
|
4827
4737
|
//#region src/modules/funding/kraken/getKrakenWhitelistedAddresses/getKrakenWhitelistedAddresses.ts
|
|
@@ -4830,7 +4740,7 @@ const getKrakenAccounts = async (params, client = require_logoutWithReason.getDe
|
|
|
4830
4740
|
*
|
|
4831
4741
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
4832
4742
|
* @returns Transfer destinations response with whitelisted addresses
|
|
4833
|
-
* @
|
|
4743
|
+
* @instrumented
|
|
4834
4744
|
*/
|
|
4835
4745
|
const getKrakenWhitelistedAddresses = async (client = require_logoutWithReason.getDefaultClient()) => {
|
|
4836
4746
|
const core = require_logoutWithReason.getCore(client);
|
|
@@ -4839,6 +4749,12 @@ const getKrakenWhitelistedAddresses = async (client = require_logoutWithReason.g
|
|
|
4839
4749
|
exchangeKey: _dynamic_labs_sdk_api_core.ExchangeKeyEnum.Kraken
|
|
4840
4750
|
});
|
|
4841
4751
|
};
|
|
4752
|
+
const __getKrakenWhitelistedAddresses_impl = getKrakenWhitelistedAddresses;
|
|
4753
|
+
const __getKrakenWhitelistedAddresses_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4754
|
+
fn: __getKrakenWhitelistedAddresses_impl,
|
|
4755
|
+
functionName: "getKrakenWhitelistedAddresses",
|
|
4756
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4757
|
+
});
|
|
4842
4758
|
|
|
4843
4759
|
//#endregion
|
|
4844
4760
|
//#region src/modules/funding/moonpay/getMoonPayCurrencies/getMoonPayCurrencies.ts
|
|
@@ -4864,13 +4780,7 @@ const __getMoonPayCurrencies_impl = getMoonPayCurrencies;
|
|
|
4864
4780
|
const __getMoonPayCurrencies_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4865
4781
|
fn: __getMoonPayCurrencies_impl,
|
|
4866
4782
|
functionName: "getMoonPayCurrencies",
|
|
4867
|
-
getCore:
|
|
4868
|
-
try {
|
|
4869
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4870
|
-
} catch {
|
|
4871
|
-
return;
|
|
4872
|
-
}
|
|
4873
|
-
}
|
|
4783
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4874
4784
|
});
|
|
4875
4785
|
|
|
4876
4786
|
//#endregion
|
|
@@ -4940,13 +4850,7 @@ const __getMoonPayUrl_impl = getMoonPayUrl;
|
|
|
4940
4850
|
const __getMoonPayUrl_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4941
4851
|
fn: __getMoonPayUrl_impl,
|
|
4942
4852
|
functionName: "getMoonPayUrl",
|
|
4943
|
-
getCore:
|
|
4944
|
-
try {
|
|
4945
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4946
|
-
} catch {
|
|
4947
|
-
return;
|
|
4948
|
-
}
|
|
4949
|
-
}
|
|
4853
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
4950
4854
|
});
|
|
4951
4855
|
|
|
4952
4856
|
//#endregion
|
|
@@ -4990,13 +4894,7 @@ const __setInstrumentationEnabled_impl = setInstrumentationEnabled;
|
|
|
4990
4894
|
const __setInstrumentationEnabled_wrapped = require_logoutWithReason.instrumentFunction({
|
|
4991
4895
|
fn: __setInstrumentationEnabled_impl,
|
|
4992
4896
|
functionName: "setInstrumentationEnabled",
|
|
4993
|
-
getCore:
|
|
4994
|
-
try {
|
|
4995
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
4996
|
-
} catch {
|
|
4997
|
-
return;
|
|
4998
|
-
}
|
|
4999
|
-
}
|
|
4897
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5000
4898
|
});
|
|
5001
4899
|
|
|
5002
4900
|
//#endregion
|
|
@@ -5563,13 +5461,7 @@ const __updateUser_impl = updateUser;
|
|
|
5563
5461
|
const __updateUser_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5564
5462
|
fn: __updateUser_impl,
|
|
5565
5463
|
functionName: "updateUser",
|
|
5566
|
-
getCore:
|
|
5567
|
-
try {
|
|
5568
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5569
|
-
} catch {
|
|
5570
|
-
return;
|
|
5571
|
-
}
|
|
5572
|
-
}
|
|
5464
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5573
5465
|
});
|
|
5574
5466
|
|
|
5575
5467
|
//#endregion
|
|
@@ -5591,13 +5483,7 @@ const __acknowledgeRecoveryCodes_impl = acknowledgeRecoveryCodes;
|
|
|
5591
5483
|
const __acknowledgeRecoveryCodes_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5592
5484
|
fn: __acknowledgeRecoveryCodes_impl,
|
|
5593
5485
|
functionName: "acknowledgeRecoveryCodes",
|
|
5594
|
-
getCore:
|
|
5595
|
-
try {
|
|
5596
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5597
|
-
} catch {
|
|
5598
|
-
return;
|
|
5599
|
-
}
|
|
5600
|
-
}
|
|
5486
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5601
5487
|
});
|
|
5602
5488
|
|
|
5603
5489
|
//#endregion
|
|
@@ -5792,13 +5678,7 @@ const __createNewMfaRecoveryCodes_impl = createNewMfaRecoveryCodes;
|
|
|
5792
5678
|
const __createNewMfaRecoveryCodes_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5793
5679
|
fn: __createNewMfaRecoveryCodes_impl,
|
|
5794
5680
|
functionName: "createNewMfaRecoveryCodes",
|
|
5795
|
-
getCore:
|
|
5796
|
-
try {
|
|
5797
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5798
|
-
} catch {
|
|
5799
|
-
return;
|
|
5800
|
-
}
|
|
5801
|
-
}
|
|
5681
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5802
5682
|
});
|
|
5803
5683
|
|
|
5804
5684
|
//#endregion
|
|
@@ -5834,13 +5714,7 @@ const __deleteMfaDevice_impl = deleteMfaDevice;
|
|
|
5834
5714
|
const __deleteMfaDevice_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5835
5715
|
fn: __deleteMfaDevice_impl,
|
|
5836
5716
|
functionName: "deleteMfaDevice",
|
|
5837
|
-
getCore:
|
|
5838
|
-
try {
|
|
5839
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5840
|
-
} catch {
|
|
5841
|
-
return;
|
|
5842
|
-
}
|
|
5843
|
-
}
|
|
5717
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5844
5718
|
});
|
|
5845
5719
|
|
|
5846
5720
|
//#endregion
|
|
@@ -5901,13 +5775,7 @@ const __registerTotpMfaDevice_impl = registerTotpMfaDevice;
|
|
|
5901
5775
|
const __registerTotpMfaDevice_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5902
5776
|
fn: __registerTotpMfaDevice_impl,
|
|
5903
5777
|
functionName: "registerTotpMfaDevice",
|
|
5904
|
-
getCore:
|
|
5905
|
-
try {
|
|
5906
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5907
|
-
} catch {
|
|
5908
|
-
return;
|
|
5909
|
-
}
|
|
5910
|
-
}
|
|
5778
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5911
5779
|
});
|
|
5912
5780
|
|
|
5913
5781
|
//#endregion
|
|
@@ -5936,13 +5804,7 @@ const __setDefaultMfaDevice_impl = setDefaultMfaDevice;
|
|
|
5936
5804
|
const __setDefaultMfaDevice_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5937
5805
|
fn: __setDefaultMfaDevice_impl,
|
|
5938
5806
|
functionName: "setDefaultMfaDevice",
|
|
5939
|
-
getCore:
|
|
5940
|
-
try {
|
|
5941
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5942
|
-
} catch {
|
|
5943
|
-
return;
|
|
5944
|
-
}
|
|
5945
|
-
}
|
|
5807
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
5946
5808
|
});
|
|
5947
5809
|
|
|
5948
5810
|
//#endregion
|
|
@@ -5991,13 +5853,7 @@ const __sendEmailOTP_impl = sendEmailOTP;
|
|
|
5991
5853
|
const __sendEmailOTP_wrapped = require_logoutWithReason.instrumentFunction({
|
|
5992
5854
|
fn: __sendEmailOTP_impl,
|
|
5993
5855
|
functionName: "sendEmailOTP",
|
|
5994
|
-
getCore:
|
|
5995
|
-
try {
|
|
5996
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
5997
|
-
} catch {
|
|
5998
|
-
return;
|
|
5999
|
-
}
|
|
6000
|
-
}
|
|
5856
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
6001
5857
|
});
|
|
6002
5858
|
|
|
6003
5859
|
//#endregion
|
|
@@ -6969,13 +6825,7 @@ const __sendSmsOTP_impl = sendSmsOTP;
|
|
|
6969
6825
|
const __sendSmsOTP_wrapped = require_logoutWithReason.instrumentFunction({
|
|
6970
6826
|
fn: __sendSmsOTP_impl,
|
|
6971
6827
|
functionName: "sendSmsOTP",
|
|
6972
|
-
getCore:
|
|
6973
|
-
try {
|
|
6974
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
6975
|
-
} catch {
|
|
6976
|
-
return;
|
|
6977
|
-
}
|
|
6978
|
-
}
|
|
6828
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
6979
6829
|
});
|
|
6980
6830
|
|
|
6981
6831
|
//#endregion
|
|
@@ -7067,13 +6917,7 @@ const __verifyOTP_impl = verifyOTP;
|
|
|
7067
6917
|
const __verifyOTP_wrapped = require_logoutWithReason.instrumentFunction({
|
|
7068
6918
|
fn: __verifyOTP_impl,
|
|
7069
6919
|
functionName: "verifyOTP",
|
|
7070
|
-
getCore:
|
|
7071
|
-
try {
|
|
7072
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
7073
|
-
} catch {
|
|
7074
|
-
return;
|
|
7075
|
-
}
|
|
7076
|
-
}
|
|
6920
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
7077
6921
|
});
|
|
7078
6922
|
|
|
7079
6923
|
//#endregion
|
|
@@ -7211,13 +7055,7 @@ const __deleteUser_impl = deleteUser;
|
|
|
7211
7055
|
const __deleteUser_wrapped = require_logoutWithReason.instrumentFunction({
|
|
7212
7056
|
fn: __deleteUser_impl,
|
|
7213
7057
|
functionName: "deleteUser",
|
|
7214
|
-
getCore:
|
|
7215
|
-
try {
|
|
7216
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
7217
|
-
} catch {
|
|
7218
|
-
return;
|
|
7219
|
-
}
|
|
7220
|
-
}
|
|
7058
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
7221
7059
|
});
|
|
7222
7060
|
|
|
7223
7061
|
//#endregion
|
|
@@ -7360,13 +7198,7 @@ const __getGoogleDriveBackupReadiness_impl = getGoogleDriveBackupReadiness;
|
|
|
7360
7198
|
const __getGoogleDriveBackupReadiness_wrapped = require_logoutWithReason.instrumentFunction({
|
|
7361
7199
|
fn: __getGoogleDriveBackupReadiness_impl,
|
|
7362
7200
|
functionName: "getGoogleDriveBackupReadiness",
|
|
7363
|
-
getCore:
|
|
7364
|
-
try {
|
|
7365
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
7366
|
-
} catch {
|
|
7367
|
-
return;
|
|
7368
|
-
}
|
|
7369
|
-
}
|
|
7201
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
7370
7202
|
});
|
|
7371
7203
|
|
|
7372
7204
|
//#endregion
|
|
@@ -7618,90 +7450,6 @@ const getChainsFromWalletSchema = ({ wallet, walletKey }) => {
|
|
|
7618
7450
|
return Array.from(chains);
|
|
7619
7451
|
};
|
|
7620
7452
|
|
|
7621
|
-
//#endregion
|
|
7622
|
-
//#region src/modules/walletOptionsCatalogue/resolveWalletBookWalletOptionKey/resolveWalletBookWalletOptionKey.ts
|
|
7623
|
-
/**
|
|
7624
|
-
* Resolves which wallet option (group) a wallet book entry belongs to. Used
|
|
7625
|
-
* by the catalogue's wallet-book-driven transformers (URI deeplink,
|
|
7626
|
-
* `inAppBrowser`, `installation`) to bucket their emitted options.
|
|
7627
|
-
*
|
|
7628
|
-
* Wallet book entries inconsistently use `group` / `chainGroup` /
|
|
7629
|
-
* `walletGroup` for the same idea. The wallet key itself acts as the wallet
|
|
7630
|
-
* option key when no group field is set.
|
|
7631
|
-
*
|
|
7632
|
-
* @param params.wallet - The wallet entry.
|
|
7633
|
-
* @param params.walletKey - The wallet's key in `walletBook.wallets`.
|
|
7634
|
-
* @returns The wallet option key.
|
|
7635
|
-
* @notInstrumented
|
|
7636
|
-
*/
|
|
7637
|
-
const resolveWalletBookWalletOptionKey = ({ wallet, walletKey }) => wallet.group ?? wallet.chainGroup ?? wallet.walletGroup ?? walletKey;
|
|
7638
|
-
|
|
7639
|
-
//#endregion
|
|
7640
|
-
//#region src/modules/walletOptionsCatalogue/buildInAppBrowserOptions/getInAppBrowserUrl/getInAppBrowserUrl.ts
|
|
7641
|
-
/**
|
|
7642
|
-
* Returns the wallet's in-app browser URL template, preferring the v2
|
|
7643
|
-
* field. `inAppBrowser` is deprecated but some wallet book entries
|
|
7644
|
-
* still carry only the v1 value, so it acts as a fallback. Trailing
|
|
7645
|
-
* `?? undefined` collapses the schema's `string | null` typing down to
|
|
7646
|
-
* the `string | undefined` return contract.
|
|
7647
|
-
*
|
|
7648
|
-
* @param params.wallet - The wallet book wallet entry.
|
|
7649
|
-
* @returns The in-app browser URL, or `undefined` if neither field is set.
|
|
7650
|
-
* @notInstrumented
|
|
7651
|
-
*/
|
|
7652
|
-
const getInAppBrowserUrl = ({ wallet }) => wallet.mobile?.inAppBrowserV2 ?? wallet.mobile?.inAppBrowser ?? void 0;
|
|
7653
|
-
|
|
7654
|
-
//#endregion
|
|
7655
|
-
//#region src/modules/walletOptionsCatalogue/buildInAppBrowserOptions/buildInAppBrowserOptions.ts
|
|
7656
|
-
/**
|
|
7657
|
-
* Builds the `inAppBrowser` catalogue options from the wallet book. A wallet
|
|
7658
|
-
* qualifies when it exposes a mobile in-app-browser URL — typically a
|
|
7659
|
-
* `cb_url={{encodedDappURI}}`-style template the customer fills in with the
|
|
7660
|
-
* current page URL before opening.
|
|
7661
|
-
*
|
|
7662
|
-
* Reuses the generic `shouldFilterWallet` rules — embedded sign-in methods
|
|
7663
|
-
* and injected-only wallets are dropped — so the catalogue's notion of
|
|
7664
|
-
* "external wallet" stays consistent across option types.
|
|
7665
|
-
*
|
|
7666
|
-
* A wallet's in-app browser opens a single session, so it emits one option
|
|
7667
|
-
* tagged with the first chain it advertises that the client has an
|
|
7668
|
-
* extension for — a multi-chain wallet is still reachable when only one of
|
|
7669
|
-
* its chains is enabled.
|
|
7670
|
-
*
|
|
7671
|
-
* @param params.enabledChains - Chains the client has an extension for.
|
|
7672
|
-
* @param params.walletBook - The fetched wallet book.
|
|
7673
|
-
* @returns Tagged `inAppBrowser` options paired with their wallet option keys.
|
|
7674
|
-
* @notInstrumented
|
|
7675
|
-
*/
|
|
7676
|
-
const buildInAppBrowserOptions = ({ enabledChains, walletBook }) => {
|
|
7677
|
-
const result = [];
|
|
7678
|
-
for (const [walletKey, wallet] of Object.entries(walletBook.wallets)) {
|
|
7679
|
-
if (shouldFilterWallet({
|
|
7680
|
-
wallet,
|
|
7681
|
-
walletKey
|
|
7682
|
-
})) continue;
|
|
7683
|
-
const url = getInAppBrowserUrl({ wallet });
|
|
7684
|
-
if (!url) continue;
|
|
7685
|
-
const chain = getChainsFromWalletSchema({
|
|
7686
|
-
wallet,
|
|
7687
|
-
walletKey
|
|
7688
|
-
}).find((advertisedChain) => enabledChains.has(advertisedChain));
|
|
7689
|
-
if (!chain) continue;
|
|
7690
|
-
result.push({
|
|
7691
|
-
option: {
|
|
7692
|
-
chain,
|
|
7693
|
-
type: "inAppBrowser",
|
|
7694
|
-
url
|
|
7695
|
-
},
|
|
7696
|
-
walletOptionKey: resolveWalletBookWalletOptionKey({
|
|
7697
|
-
wallet,
|
|
7698
|
-
walletKey
|
|
7699
|
-
})
|
|
7700
|
-
});
|
|
7701
|
-
}
|
|
7702
|
-
return result;
|
|
7703
|
-
};
|
|
7704
|
-
|
|
7705
7453
|
//#endregion
|
|
7706
7454
|
//#region src/modules/walletOptionsCatalogue/buildInstallationUrls/buildInstallationUrls.ts
|
|
7707
7455
|
const PLAY_STORE_URL_TEMPLATE = "https://play.google.com/store/apps/details?id=";
|
|
@@ -7739,6 +7487,24 @@ const buildInstallationUrls = ({ wallet }) => {
|
|
|
7739
7487
|
};
|
|
7740
7488
|
};
|
|
7741
7489
|
|
|
7490
|
+
//#endregion
|
|
7491
|
+
//#region src/modules/walletOptionsCatalogue/resolveWalletBookWalletOptionKey/resolveWalletBookWalletOptionKey.ts
|
|
7492
|
+
/**
|
|
7493
|
+
* Resolves which wallet option (group) a wallet book entry belongs to. Used
|
|
7494
|
+
* by the catalogue's wallet-book-driven transformers (URI deeplink,
|
|
7495
|
+
* `inAppBrowser`, `installation`) to bucket their emitted options.
|
|
7496
|
+
*
|
|
7497
|
+
* Wallet book entries inconsistently use `group` / `chainGroup` /
|
|
7498
|
+
* `walletGroup` for the same idea. The wallet key itself acts as the wallet
|
|
7499
|
+
* option key when no group field is set.
|
|
7500
|
+
*
|
|
7501
|
+
* @param params.wallet - The wallet entry.
|
|
7502
|
+
* @param params.walletKey - The wallet's key in `walletBook.wallets`.
|
|
7503
|
+
* @returns The wallet option key.
|
|
7504
|
+
* @notInstrumented
|
|
7505
|
+
*/
|
|
7506
|
+
const resolveWalletBookWalletOptionKey = ({ wallet, walletKey }) => wallet.group ?? wallet.chainGroup ?? wallet.walletGroup ?? walletKey;
|
|
7507
|
+
|
|
7742
7508
|
//#endregion
|
|
7743
7509
|
//#region src/modules/walletOptionsCatalogue/buildInstallationUrlsByWalletOptionKey/buildInstallationUrlsByWalletOptionKey.ts
|
|
7744
7510
|
/**
|
|
@@ -7792,6 +7558,97 @@ const buildInstallationUrlsByWalletOptionKey = ({ enabledChains, walletBook }) =
|
|
|
7792
7558
|
return map;
|
|
7793
7559
|
};
|
|
7794
7560
|
|
|
7561
|
+
//#endregion
|
|
7562
|
+
//#region src/modules/wallets/uriConnectionStarterRegistry/getUriConnectionStarterChains/getUriConnectionStarterChains.ts
|
|
7563
|
+
/**
|
|
7564
|
+
* Returns the chains that have a URI connection starter registered for a
|
|
7565
|
+
* given URI protocol. An empty set means no chain extension can mint a
|
|
7566
|
+
* pairing URI for that protocol, so surfaces driven by it are not
|
|
7567
|
+
* reachable on this client.
|
|
7568
|
+
*
|
|
7569
|
+
* @example
|
|
7570
|
+
* ```ts
|
|
7571
|
+
* const chains = getUriConnectionStarterChains({ type: 'walletConnect' }, client);
|
|
7572
|
+
* ```
|
|
7573
|
+
*
|
|
7574
|
+
* @param params.type - The URI protocol to look up starters for.
|
|
7575
|
+
* @param client - The Dynamic client instance.
|
|
7576
|
+
* @returns The chains with a registered starter for the given protocol.
|
|
7577
|
+
* @see getUriConnectionStarterRegistry
|
|
7578
|
+
* @see UriConnectionType
|
|
7579
|
+
* @notInstrumented
|
|
7580
|
+
*/
|
|
7581
|
+
const getUriConnectionStarterChains = ({ type }, client) => {
|
|
7582
|
+
const starters = require_getNetworkProviderFromNetworkId.getUriConnectionStarterRegistry(client).getAll();
|
|
7583
|
+
return new Set(starters.filter((starter) => starter.type === type).map((starter) => starter.chain));
|
|
7584
|
+
};
|
|
7585
|
+
|
|
7586
|
+
//#endregion
|
|
7587
|
+
//#region src/modules/walletOptionsCatalogue/buildInAppBrowserOptions/getInAppBrowserUrl/getInAppBrowserUrl.ts
|
|
7588
|
+
/**
|
|
7589
|
+
* Returns the wallet's in-app browser URL template, preferring the v2
|
|
7590
|
+
* field. `inAppBrowser` is deprecated but some wallet book entries
|
|
7591
|
+
* still carry only the v1 value, so it acts as a fallback. Trailing
|
|
7592
|
+
* `?? undefined` collapses the schema's `string | null` typing down to
|
|
7593
|
+
* the `string | undefined` return contract.
|
|
7594
|
+
*
|
|
7595
|
+
* @param params.wallet - The wallet book wallet entry.
|
|
7596
|
+
* @returns The in-app browser URL, or `undefined` if neither field is set.
|
|
7597
|
+
* @notInstrumented
|
|
7598
|
+
*/
|
|
7599
|
+
const getInAppBrowserUrl = ({ wallet }) => wallet.mobile?.inAppBrowserV2 ?? wallet.mobile?.inAppBrowser ?? void 0;
|
|
7600
|
+
|
|
7601
|
+
//#endregion
|
|
7602
|
+
//#region src/modules/walletOptionsCatalogue/buildInAppBrowserOptions/buildInAppBrowserOptions.ts
|
|
7603
|
+
/**
|
|
7604
|
+
* Builds the `inAppBrowser` catalogue options from the wallet book. A wallet
|
|
7605
|
+
* qualifies when it exposes a mobile in-app-browser URL — typically a
|
|
7606
|
+
* `cb_url={{encodedDappURI}}`-style template the customer fills in with the
|
|
7607
|
+
* current page URL before opening.
|
|
7608
|
+
*
|
|
7609
|
+
* Reuses the generic `shouldFilterWallet` rules — embedded sign-in methods
|
|
7610
|
+
* and injected-only wallets are dropped — so the catalogue's notion of
|
|
7611
|
+
* "external wallet" stays consistent across option types.
|
|
7612
|
+
*
|
|
7613
|
+
* A wallet's in-app browser opens a single session, so it emits one option
|
|
7614
|
+
* tagged with the first chain it advertises that the client has an
|
|
7615
|
+
* extension for — a multi-chain wallet is still reachable when only one of
|
|
7616
|
+
* its chains is enabled.
|
|
7617
|
+
*
|
|
7618
|
+
* @param params.enabledChains - Chains the client has an extension for.
|
|
7619
|
+
* @param params.walletBook - The fetched wallet book.
|
|
7620
|
+
* @returns Tagged `inAppBrowser` options paired with their wallet option keys.
|
|
7621
|
+
* @notInstrumented
|
|
7622
|
+
*/
|
|
7623
|
+
const buildInAppBrowserOptions = ({ enabledChains, walletBook }) => {
|
|
7624
|
+
const result = [];
|
|
7625
|
+
for (const [walletKey, wallet] of Object.entries(walletBook.wallets)) {
|
|
7626
|
+
if (shouldFilterWallet({
|
|
7627
|
+
wallet,
|
|
7628
|
+
walletKey
|
|
7629
|
+
})) continue;
|
|
7630
|
+
const url = getInAppBrowserUrl({ wallet });
|
|
7631
|
+
if (!url) continue;
|
|
7632
|
+
const chain = getChainsFromWalletSchema({
|
|
7633
|
+
wallet,
|
|
7634
|
+
walletKey
|
|
7635
|
+
}).find((advertisedChain) => enabledChains.has(advertisedChain));
|
|
7636
|
+
if (!chain) continue;
|
|
7637
|
+
result.push({
|
|
7638
|
+
option: {
|
|
7639
|
+
chain,
|
|
7640
|
+
type: "inAppBrowser",
|
|
7641
|
+
url
|
|
7642
|
+
},
|
|
7643
|
+
walletOptionKey: resolveWalletBookWalletOptionKey({
|
|
7644
|
+
wallet,
|
|
7645
|
+
walletKey
|
|
7646
|
+
})
|
|
7647
|
+
});
|
|
7648
|
+
}
|
|
7649
|
+
return result;
|
|
7650
|
+
};
|
|
7651
|
+
|
|
7795
7652
|
//#endregion
|
|
7796
7653
|
//#region src/modules/legacyWalletBook/hasUsableDeeplink/hasUsableDeeplink.ts
|
|
7797
7654
|
/**
|
|
@@ -7875,13 +7732,6 @@ const buildMetaMaskSdkUriOptions = ({ walletBook }) => {
|
|
|
7875
7732
|
//#endregion
|
|
7876
7733
|
//#region src/modules/walletOptionsCatalogue/buildWalletConnectOptions/buildWalletConnectOptions.ts
|
|
7877
7734
|
/**
|
|
7878
|
-
* Chains Dynamic ships a WalletConnect extension for. Anything else a
|
|
7879
|
-
* wallet book entry advertises (Cosmos, BTC, …) gets filtered out — the
|
|
7880
|
-
* catalogue should not surface a chain the SDK has no `connectWithWalletConnect<Chain>`
|
|
7881
|
-
* primitive for.
|
|
7882
|
-
*/
|
|
7883
|
-
const WALLETCONNECT_SUPPORTED_CHAINS = new Set(["EVM", "SOL"]);
|
|
7884
|
-
/**
|
|
7885
7735
|
* Builds the `walletConnect`-discriminator catalogue options from a fetched
|
|
7886
7736
|
* wallet book. Applies the WalletConnect-specific eligibility filter
|
|
7887
7737
|
* (`shouldFilterWalletForWalletConnect`) so embedded wallets and entries
|
|
@@ -7895,11 +7745,15 @@ const WALLETCONNECT_SUPPORTED_CHAINS = new Set(["EVM", "SOL"]);
|
|
|
7895
7745
|
* discriminator via `excludedConnectionOptionTypes` doesn't accidentally
|
|
7896
7746
|
* gate the other.
|
|
7897
7747
|
*
|
|
7748
|
+
* Chains a wallet book entry advertises without a registered WalletConnect
|
|
7749
|
+
* starter are filtered out.
|
|
7750
|
+
*
|
|
7898
7751
|
* @param params.walletBook - The fetched wallet book.
|
|
7752
|
+
* @param params.walletConnectChains - Chains with a registered `walletConnect` URI connection starter.
|
|
7899
7753
|
* @returns Tagged `walletConnect` options paired with their wallet option keys.
|
|
7900
7754
|
* @notInstrumented
|
|
7901
7755
|
*/
|
|
7902
|
-
const buildWalletConnectOptions = ({ walletBook }) => {
|
|
7756
|
+
const buildWalletConnectOptions = ({ walletBook, walletConnectChains }) => {
|
|
7903
7757
|
const result = [];
|
|
7904
7758
|
for (const [walletKey, wallet] of Object.entries(walletBook.wallets)) {
|
|
7905
7759
|
if (shouldFilterWalletForWalletConnect({
|
|
@@ -7915,7 +7769,7 @@ const buildWalletConnectOptions = ({ walletBook }) => {
|
|
|
7915
7769
|
const chains = getChainsFromWalletSchema({
|
|
7916
7770
|
wallet,
|
|
7917
7771
|
walletKey
|
|
7918
|
-
}).filter((chain) =>
|
|
7772
|
+
}).filter((chain) => walletConnectChains.has(chain));
|
|
7919
7773
|
for (const chain of chains) result.push({
|
|
7920
7774
|
option: {
|
|
7921
7775
|
chain,
|
|
@@ -7931,6 +7785,108 @@ const buildWalletConnectOptions = ({ walletBook }) => {
|
|
|
7931
7785
|
return result;
|
|
7932
7786
|
};
|
|
7933
7787
|
|
|
7788
|
+
//#endregion
|
|
7789
|
+
//#region src/modules/walletOptionsCatalogue/filterConnectionOptionsByEnabledChains/filterConnectionOptionsByEnabledChains.ts
|
|
7790
|
+
/**
|
|
7791
|
+
* Drops options whose chain has no extension on this client. The wallet
|
|
7792
|
+
* book advertises every chain a wallet supports, so options derived from
|
|
7793
|
+
* it have to be narrowed to the chains the client can actually connect
|
|
7794
|
+
* on — otherwise the catalogue surfaces a connection the customer has no
|
|
7795
|
+
* primitive to drive.
|
|
7796
|
+
*
|
|
7797
|
+
* @param params.enabledChains - Chains the client has an extension for.
|
|
7798
|
+
* @param params.options - The tagged options to narrow.
|
|
7799
|
+
* @returns The options on enabled chains, in input order.
|
|
7800
|
+
* @example
|
|
7801
|
+
* ```typescript
|
|
7802
|
+
* filterConnectionOptionsByEnabledChains({
|
|
7803
|
+
* enabledChains: new Set(['EVM']),
|
|
7804
|
+
* options: [evmOption, solOption],
|
|
7805
|
+
* }); // [evmOption]
|
|
7806
|
+
* ```
|
|
7807
|
+
* @see {@link getEnabledChains} for how the enabled chains are derived.
|
|
7808
|
+
* @see {@link getWalletOptionsCatalogue} for the catalogue that applies this filter.
|
|
7809
|
+
* @notInstrumented
|
|
7810
|
+
*/
|
|
7811
|
+
const filterConnectionOptionsByEnabledChains = ({ enabledChains, options }) => options.filter(({ option }) => enabledChains.has(option.chain));
|
|
7812
|
+
|
|
7813
|
+
//#endregion
|
|
7814
|
+
//#region src/modules/walletOptionsCatalogue/buildWalletBookConnectionOptions/buildWalletBookConnectionOptions.ts
|
|
7815
|
+
/**
|
|
7816
|
+
* Builds every wallet-book-sourced connection option — WalletConnect,
|
|
7817
|
+
* MetaMask SDK URI and in-app browser — narrowed to the chains this client
|
|
7818
|
+
* has an extension for.
|
|
7819
|
+
*
|
|
7820
|
+
* Each URI-deeplink discriminator has its own builder with its own
|
|
7821
|
+
* eligibility filter (WalletConnect requires `sign_v2`; MetaMask SDK URI
|
|
7822
|
+
* does not), so excluding one discriminator never gates the other.
|
|
7823
|
+
*
|
|
7824
|
+
* WalletConnect options are emitted only on the chains with a registered
|
|
7825
|
+
* `walletConnect` URI connection starter.
|
|
7826
|
+
*
|
|
7827
|
+
* @example
|
|
7828
|
+
* ```ts
|
|
7829
|
+
* const options = buildWalletBookConnectionOptions(
|
|
7830
|
+
* { enabledChains, excludedConnectionOptionTypes: new Set(), walletBook },
|
|
7831
|
+
* client
|
|
7832
|
+
* );
|
|
7833
|
+
* ```
|
|
7834
|
+
*
|
|
7835
|
+
* @param params.enabledChains - Chains the client has an extension for.
|
|
7836
|
+
* @param params.excludedConnectionOptionTypes - Connection types to drop.
|
|
7837
|
+
* @param params.walletBook - The fetched wallet book.
|
|
7838
|
+
* @param client - The Dynamic client instance.
|
|
7839
|
+
* @returns Tagged wallet-book options paired with their wallet option keys.
|
|
7840
|
+
* @see getWalletOptionsCatalogue
|
|
7841
|
+
* @see filterConnectionOptionsByEnabledChains
|
|
7842
|
+
* @notInstrumented
|
|
7843
|
+
*/
|
|
7844
|
+
const buildWalletBookConnectionOptions = ({ enabledChains, excludedConnectionOptionTypes, walletBook }, client) => {
|
|
7845
|
+
const options = [];
|
|
7846
|
+
const walletConnectChains = getUriConnectionStarterChains({ type: "walletConnect" }, client);
|
|
7847
|
+
const hasWalletConnectStarter = walletConnectChains.size > 0;
|
|
7848
|
+
if (!excludedConnectionOptionTypes.has("walletConnect") && hasWalletConnectStarter) options.push(...buildWalletConnectOptions({
|
|
7849
|
+
walletBook,
|
|
7850
|
+
walletConnectChains
|
|
7851
|
+
}));
|
|
7852
|
+
if (!excludedConnectionOptionTypes.has("metamaskSdkUri")) options.push(...buildMetaMaskSdkUriOptions({ walletBook }));
|
|
7853
|
+
if (!excludedConnectionOptionTypes.has("inAppBrowser")) options.push(...buildInAppBrowserOptions({
|
|
7854
|
+
enabledChains,
|
|
7855
|
+
walletBook
|
|
7856
|
+
}));
|
|
7857
|
+
return filterConnectionOptionsByEnabledChains({
|
|
7858
|
+
enabledChains,
|
|
7859
|
+
options
|
|
7860
|
+
});
|
|
7861
|
+
};
|
|
7862
|
+
|
|
7863
|
+
//#endregion
|
|
7864
|
+
//#region src/modules/walletOptionsCatalogue/deriveSupportedChains/deriveSupportedChains.ts
|
|
7865
|
+
/**
|
|
7866
|
+
* Derives the chains a wallet option can be connected on from its connection
|
|
7867
|
+
* options, deduped and sorted alphabetically so the order is stable
|
|
7868
|
+
* regardless of how the connection options rank.
|
|
7869
|
+
*
|
|
7870
|
+
* Install-only wallet options have no connection options, so they support no
|
|
7871
|
+
* chain until the wallet is installed.
|
|
7872
|
+
*
|
|
7873
|
+
* @example
|
|
7874
|
+
* ```ts
|
|
7875
|
+
* const supportedChains = deriveSupportedChains({ connectionOptions });
|
|
7876
|
+
* ```
|
|
7877
|
+
*
|
|
7878
|
+
* @param params.connectionOptions - The wallet option's connection options.
|
|
7879
|
+
* @returns The chains supported by the wallet option.
|
|
7880
|
+
* @see buildWalletOption
|
|
7881
|
+
* @see WalletOption
|
|
7882
|
+
* @notInstrumented
|
|
7883
|
+
*/
|
|
7884
|
+
const deriveSupportedChains = ({ connectionOptions }) => {
|
|
7885
|
+
const chains = /* @__PURE__ */ new Set();
|
|
7886
|
+
for (const connectionOption of connectionOptions) chains.add(connectionOption.chain);
|
|
7887
|
+
return Array.from(chains).sort((a, b) => a.localeCompare(b));
|
|
7888
|
+
};
|
|
7889
|
+
|
|
7934
7890
|
//#endregion
|
|
7935
7891
|
//#region src/modules/walletOptionsCatalogue/buildWalletOption/buildWalletOption.ts
|
|
7936
7892
|
/**
|
|
@@ -7979,7 +7935,8 @@ const buildWalletOption = ({ connectionOptions, displayOverride, installationUrl
|
|
|
7979
7935
|
installationUrls,
|
|
7980
7936
|
key: walletOptionKey,
|
|
7981
7937
|
name: displayOverride?.name ?? group?.name ?? walletEntry?.name ?? walletOptionKey,
|
|
7982
|
-
primaryColor: group?.brand?.primaryColor ?? walletEntry?.brand?.primaryColor
|
|
7938
|
+
primaryColor: group?.brand?.primaryColor ?? walletEntry?.brand?.primaryColor,
|
|
7939
|
+
supportedChains: deriveSupportedChains({ connectionOptions })
|
|
7983
7940
|
};
|
|
7984
7941
|
};
|
|
7985
7942
|
|
|
@@ -8257,38 +8214,13 @@ const buildWithWalletProviderOptions = ({ entries, walletBook }, client) => {
|
|
|
8257
8214
|
const EXCLUDED_WALLET_OPTION_KEYS = new Set(["coinbase", "coinbasewallet"]);
|
|
8258
8215
|
|
|
8259
8216
|
//#endregion
|
|
8260
|
-
//#region src/modules/walletOptionsCatalogue/
|
|
8217
|
+
//#region src/modules/walletOptionsCatalogue/groupOptionsByWalletOption/groupOptionsByWalletOption.ts
|
|
8261
8218
|
/**
|
|
8262
|
-
*
|
|
8263
|
-
*
|
|
8264
|
-
*
|
|
8265
|
-
*
|
|
8266
|
-
*
|
|
8267
|
-
*
|
|
8268
|
-
* @param params.enabledChains - Chains the client has an extension for.
|
|
8269
|
-
* @param params.options - The tagged options to narrow.
|
|
8270
|
-
* @returns The options on enabled chains, in input order.
|
|
8271
|
-
* @example
|
|
8272
|
-
* ```typescript
|
|
8273
|
-
* filterConnectionOptionsByEnabledChains({
|
|
8274
|
-
* enabledChains: new Set(['EVM']),
|
|
8275
|
-
* options: [evmOption, solOption],
|
|
8276
|
-
* }); // [evmOption]
|
|
8277
|
-
* ```
|
|
8278
|
-
* @see {@link getEnabledChains} for how the enabled chains are derived.
|
|
8279
|
-
* @see {@link getWalletOptionsCatalogue} for the catalogue that applies this filter.
|
|
8280
|
-
* @notInstrumented
|
|
8281
|
-
*/
|
|
8282
|
-
const filterConnectionOptionsByEnabledChains = ({ enabledChains, options }) => options.filter(({ option }) => enabledChains.has(option.chain));
|
|
8283
|
-
|
|
8284
|
-
//#endregion
|
|
8285
|
-
//#region src/modules/walletOptionsCatalogue/groupOptionsByWalletOption/groupOptionsByWalletOption.ts
|
|
8286
|
-
/**
|
|
8287
|
-
* Buckets tagged connection options by their wallet option key. Preserves
|
|
8288
|
-
* first-seen order so that the caller's choice of
|
|
8289
|
-
* `walletOptionOrdering: 'relevance'` naturally inherits the upstream input
|
|
8290
|
-
* order (wallet book order for walletConnect/inAppBrowser/installation,
|
|
8291
|
-
* registry order for withWalletProvider).
|
|
8219
|
+
* Buckets tagged connection options by their wallet option key. Preserves
|
|
8220
|
+
* first-seen order so that the caller's choice of
|
|
8221
|
+
* `walletOptionOrdering: 'relevance'` naturally inherits the upstream input
|
|
8222
|
+
* order (wallet book order for walletConnect/inAppBrowser/installation,
|
|
8223
|
+
* registry order for withWalletProvider).
|
|
8292
8224
|
*
|
|
8293
8225
|
* Carries through the first-seen `displayOverride` per wallet option
|
|
8294
8226
|
* key, so the shell builder can apply provider-announced metadata on
|
|
@@ -8444,19 +8376,26 @@ const compareByRelevance = ({ a, b }) => {
|
|
|
8444
8376
|
const hasAnyConnectionOption = ({ walletOption }) => walletOption.connectionOptions.length > 0;
|
|
8445
8377
|
|
|
8446
8378
|
//#endregion
|
|
8447
|
-
//#region src/modules/walletOptionsCatalogue/
|
|
8379
|
+
//#region src/modules/walletOptionsCatalogue/isWalletExtensionInstalled/isWalletExtensionInstalled.ts
|
|
8448
8380
|
/**
|
|
8449
|
-
*
|
|
8450
|
-
*
|
|
8451
|
-
* Wallet Standard announcement, window injection, or an SDK-backed
|
|
8452
|
-
*
|
|
8453
|
-
* pre-sorted, so a registered provider always sits at index 0 when present.
|
|
8381
|
+
* Returns true when the wallet option has any `withWalletProvider` connection
|
|
8382
|
+
* option, meaning the wallet is available in the page through a browser
|
|
8383
|
+
* extension, Wallet Standard announcement, window injection, or an SDK-backed
|
|
8384
|
+
* provider registered by a chain extension.
|
|
8454
8385
|
*
|
|
8386
|
+
* @description Detects whether a wallet option is available through a provider
|
|
8387
|
+
* registered in the page.
|
|
8455
8388
|
* @param params.walletOption - The wallet option to inspect.
|
|
8456
|
-
* @returns True when
|
|
8389
|
+
* @returns True when the wallet is available in the page.
|
|
8390
|
+
* @example
|
|
8391
|
+
* ```ts
|
|
8392
|
+
* const isInstalled = isWalletExtensionInstalled({ walletOption });
|
|
8393
|
+
* ```
|
|
8394
|
+
* @see getWalletOptionsCatalogue
|
|
8395
|
+
* @see WalletOption
|
|
8457
8396
|
* @notInstrumented
|
|
8458
8397
|
*/
|
|
8459
|
-
const
|
|
8398
|
+
const isWalletExtensionInstalled = ({ walletOption }) => walletOption.connectionOptions.some(({ type }) => type === "withWalletProvider");
|
|
8460
8399
|
|
|
8461
8400
|
//#endregion
|
|
8462
8401
|
//#region src/modules/walletOptionsCatalogue/sortWalletOptions/sortWalletOptions.ts
|
|
@@ -8469,7 +8408,7 @@ const hasInstalledProvider = ({ walletOption }) => walletOption.connectionOption
|
|
|
8469
8408
|
* - `'relevance'` (default): bucket wallet options into three tiers, in
|
|
8470
8409
|
* this order:
|
|
8471
8410
|
* 1. **Installed provider** — user already has the wallet available
|
|
8472
|
-
* (`withWalletProvider`
|
|
8411
|
+
* (any `withWalletProvider` connection option).
|
|
8473
8412
|
* 2. **Connectable** — has at least one connection (URI deeplink
|
|
8474
8413
|
* or `inAppBrowser`) but no installed provider.
|
|
8475
8414
|
* 3. **Install-only** — no connection at all; only `installationUrls`.
|
|
@@ -8491,7 +8430,7 @@ const sortWalletOptions = ({ walletOptions, ordering }) => {
|
|
|
8491
8430
|
const installed = [];
|
|
8492
8431
|
const connectable = [];
|
|
8493
8432
|
const installOnly = [];
|
|
8494
|
-
for (const walletOption of walletOptions) if (
|
|
8433
|
+
for (const walletOption of walletOptions) if (isWalletExtensionInstalled({ walletOption })) installed.push(walletOption);
|
|
8495
8434
|
else if (hasAnyConnectionOption({ walletOption })) connectable.push(walletOption);
|
|
8496
8435
|
else installOnly.push(walletOption);
|
|
8497
8436
|
installed.sort((a, b) => compareByRelevance({
|
|
@@ -8529,6 +8468,10 @@ const EMPTY_WALLET_BOOK = {
|
|
|
8529
8468
|
* client has an extension for — a wallet is only surfaced on chains the
|
|
8530
8469
|
* customer can actually connect on.
|
|
8531
8470
|
*
|
|
8471
|
+
* WalletConnect surfaces require a registered `walletConnect` URI
|
|
8472
|
+
* connection starter, so they only appear once a chain extension that can
|
|
8473
|
+
* mint a WalletConnect URI is added to the client.
|
|
8474
|
+
*
|
|
8532
8475
|
* Pass `excludedConnectionOptionTypes` to drop specific connection types
|
|
8533
8476
|
* from the catalogue (e.g. `['inAppBrowser']` on desktop). Wallets whose
|
|
8534
8477
|
* only connection was an excluded type fall through to the install-only
|
|
@@ -8553,19 +8496,11 @@ const getWalletOptionsCatalogue = async (params = {}, client = require_logoutWit
|
|
|
8553
8496
|
walletBook
|
|
8554
8497
|
}, client));
|
|
8555
8498
|
}
|
|
8556
|
-
if (includeMobileOptions) {
|
|
8557
|
-
|
|
8558
|
-
|
|
8559
|
-
|
|
8560
|
-
|
|
8561
|
-
enabledChains,
|
|
8562
|
-
walletBook
|
|
8563
|
-
}));
|
|
8564
|
-
allConnectionOptions.push(...filterConnectionOptionsByEnabledChains({
|
|
8565
|
-
enabledChains,
|
|
8566
|
-
options: walletBookOptions
|
|
8567
|
-
}));
|
|
8568
|
-
}
|
|
8499
|
+
if (includeMobileOptions) allConnectionOptions.push(...buildWalletBookConnectionOptions({
|
|
8500
|
+
enabledChains,
|
|
8501
|
+
excludedConnectionOptionTypes,
|
|
8502
|
+
walletBook
|
|
8503
|
+
}, client));
|
|
8569
8504
|
const installationUrlsByKey = includeMobileOptions ? buildInstallationUrlsByWalletOptionKey({
|
|
8570
8505
|
enabledChains,
|
|
8571
8506
|
walletBook
|
|
@@ -8644,13 +8579,7 @@ const __confirmTransaction_impl = confirmTransaction;
|
|
|
8644
8579
|
const __confirmTransaction_wrapped = require_logoutWithReason.instrumentFunction({
|
|
8645
8580
|
fn: __confirmTransaction_impl,
|
|
8646
8581
|
functionName: "confirmTransaction",
|
|
8647
|
-
getCore:
|
|
8648
|
-
try {
|
|
8649
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
8650
|
-
} catch {
|
|
8651
|
-
return;
|
|
8652
|
-
}
|
|
8653
|
-
}
|
|
8582
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
8654
8583
|
});
|
|
8655
8584
|
|
|
8656
8585
|
//#endregion
|
|
@@ -8744,13 +8673,7 @@ const __connectWithWalletProvider_impl = connectWithWalletProvider;
|
|
|
8744
8673
|
const __connectWithWalletProvider_wrapped = require_logoutWithReason.instrumentFunction({
|
|
8745
8674
|
fn: __connectWithWalletProvider_impl,
|
|
8746
8675
|
functionName: "connectWithWalletProvider",
|
|
8747
|
-
getCore:
|
|
8748
|
-
try {
|
|
8749
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
8750
|
-
} catch {
|
|
8751
|
-
return;
|
|
8752
|
-
}
|
|
8753
|
-
}
|
|
8676
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
8754
8677
|
});
|
|
8755
8678
|
|
|
8756
8679
|
//#endregion
|
|
@@ -8879,13 +8802,7 @@ const __proveWalletAccountOwnership_impl = proveWalletAccountOwnership;
|
|
|
8879
8802
|
const __proveWalletAccountOwnership_wrapped = require_logoutWithReason.instrumentFunction({
|
|
8880
8803
|
fn: __proveWalletAccountOwnership_impl,
|
|
8881
8804
|
functionName: "proveWalletAccountOwnership",
|
|
8882
|
-
getCore:
|
|
8883
|
-
try {
|
|
8884
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
8885
|
-
} catch {
|
|
8886
|
-
return;
|
|
8887
|
-
}
|
|
8888
|
-
}
|
|
8805
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
8889
8806
|
});
|
|
8890
8807
|
|
|
8891
8808
|
//#endregion
|
|
@@ -8995,13 +8912,7 @@ const __verifyWalletAccount_impl = verifyWalletAccount;
|
|
|
8995
8912
|
const __verifyWalletAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
8996
8913
|
fn: __verifyWalletAccount_impl,
|
|
8997
8914
|
functionName: "verifyWalletAccount",
|
|
8998
|
-
getCore:
|
|
8999
|
-
try {
|
|
9000
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9001
|
-
} catch {
|
|
9002
|
-
return;
|
|
9003
|
-
}
|
|
9004
|
-
}
|
|
8915
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9005
8916
|
});
|
|
9006
8917
|
|
|
9007
8918
|
//#endregion
|
|
@@ -9033,46 +8944,479 @@ const isDeeplinkWalletProvider = ({ walletProvider }) => walletProvider.walletPr
|
|
|
9033
8944
|
*
|
|
9034
8945
|
* @example
|
|
9035
8946
|
* ```ts
|
|
9036
|
-
* const walletAccount = await connectAndVerifyWithWalletProvider({
|
|
9037
|
-
* walletProviderKey: 'metamaskevm',
|
|
8947
|
+
* const walletAccount = await connectAndVerifyWithWalletProvider({
|
|
8948
|
+
* walletProviderKey: 'metamaskevm',
|
|
8949
|
+
* });
|
|
8950
|
+
* console.log('Verified address:', walletAccount.address);
|
|
8951
|
+
* ```
|
|
8952
|
+
*
|
|
8953
|
+
* @param params.walletProviderKey - The unique key identifying the wallet provider to connect to.
|
|
8954
|
+
* @param [params.hardwareWalletVendor] - The hardware wallet vendor, if connecting via a hardware wallet (e.g. 'ledger').
|
|
8955
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
8956
|
+
* @returns A promise that resolves to the connected and verified wallet account.
|
|
8957
|
+
* @see connectWithWalletProvider
|
|
8958
|
+
* @see verifyWalletAccount
|
|
8959
|
+
* @instrumented
|
|
8960
|
+
*/
|
|
8961
|
+
const connectAndVerifyWithWalletProvider = async ({ walletProviderKey, hardwareWalletVendor }, client = require_logoutWithReason.getDefaultClient()) => {
|
|
8962
|
+
const walletProvider = require_getVerifiedCredentialForWalletAccount.getWalletProviderByKey({ walletProviderKey }, client);
|
|
8963
|
+
if (isMobile() && isDeeplinkWalletProvider({ walletProvider })) throw new DeeplinkConnectAndVerifyUnsupportedError({ walletProviderKey });
|
|
8964
|
+
const walletAccount = await __connectWithWalletProvider_wrapped({
|
|
8965
|
+
addToDynamicWalletAccounts: false,
|
|
8966
|
+
hardwareWalletVendor,
|
|
8967
|
+
walletProviderKey
|
|
8968
|
+
}, client);
|
|
8969
|
+
await __verifyWalletAccount_wrapped({ walletAccount }, client);
|
|
8970
|
+
require_getNetworkProviderFromNetworkId.createVisit({
|
|
8971
|
+
authMode: _dynamic_labs_sdk_api_core.AuthModeEnum.AndSign,
|
|
8972
|
+
walletAccount
|
|
8973
|
+
}, client);
|
|
8974
|
+
return walletAccount;
|
|
8975
|
+
};
|
|
8976
|
+
const __connectAndVerifyWithWalletProvider_impl = connectAndVerifyWithWalletProvider;
|
|
8977
|
+
const __connectAndVerifyWithWalletProvider_wrapped = require_logoutWithReason.instrumentFunction({
|
|
8978
|
+
fn: __connectAndVerifyWithWalletProvider_impl,
|
|
8979
|
+
functionName: "connectAndVerifyWithWalletProvider",
|
|
8980
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
8981
|
+
});
|
|
8982
|
+
|
|
8983
|
+
//#endregion
|
|
8984
|
+
//#region src/utils/appendConnectionUriToDeeplink/appendConnectionUriToDeeplink.ts
|
|
8985
|
+
/**
|
|
8986
|
+
* Appends a wallet connection URI to a deeplink URL.
|
|
8987
|
+
*
|
|
8988
|
+
* Generic across URI-deeplink connection options — works for both
|
|
8989
|
+
* WalletConnect pairing URIs and MetaMask SDK URIs. Determines the
|
|
8990
|
+
* appropriate query parameter separator based on whether the deeplink
|
|
8991
|
+
* already contains query parameters.
|
|
8992
|
+
*
|
|
8993
|
+
* @param params.deeplinkUrl - The base deeplink URL (e.g., `walletapp://wc` or `walletapp://wc?param=value`).
|
|
8994
|
+
* @param params.connectionUri - The connection URI to append.
|
|
8995
|
+
* @returns The deeplink URL with the connection URI appended as a query parameter.
|
|
8996
|
+
*
|
|
8997
|
+
* @example
|
|
8998
|
+
* ```ts
|
|
8999
|
+
* appendConnectionUriToDeeplink({ deeplinkUrl: 'walletapp://wc', connectionUri: 'wc:123-456' })
|
|
9000
|
+
* // Returns: 'walletapp://wc?uri=wc%3A123-456'
|
|
9001
|
+
*
|
|
9002
|
+
* appendConnectionUriToDeeplink({ deeplinkUrl: 'walletapp://wc?param=value', connectionUri: 'wc:123-456' })
|
|
9003
|
+
* // Returns: 'walletapp://wc?param=value&uri=wc%3A123-456'
|
|
9004
|
+
* ```
|
|
9005
|
+
* @notInstrumented
|
|
9006
|
+
*/
|
|
9007
|
+
const appendConnectionUriToDeeplink = ({ connectionUri, deeplinkUrl }) => {
|
|
9008
|
+
const url = new URL(deeplinkUrl);
|
|
9009
|
+
url.searchParams.set("uri", connectionUri);
|
|
9010
|
+
return url.href;
|
|
9011
|
+
};
|
|
9012
|
+
|
|
9013
|
+
//#endregion
|
|
9014
|
+
//#region src/utils/getPreferredWalletDeepLink/getPreferredWalletDeepLink.ts
|
|
9015
|
+
/**
|
|
9016
|
+
* Picks the most appropriate deep link variant for the current platform.
|
|
9017
|
+
*
|
|
9018
|
+
* Mobile (Android, iOS, tablets) prefers `native` because the OS treats
|
|
9019
|
+
* custom URL schemes as first-class app links and gives the wallet a faster
|
|
9020
|
+
* round-trip back to the dApp. Desktop prefers `universal` because browsers
|
|
9021
|
+
* cannot resolve mobile-only custom schemes and need an `https://` link
|
|
9022
|
+
* that opens the wallet's web flow.
|
|
9023
|
+
*
|
|
9024
|
+
* In either case, the alternative is used as a fallback when the preferred
|
|
9025
|
+
* variant is missing. Returns `undefined` only when both variants are
|
|
9026
|
+
* absent.
|
|
9027
|
+
*
|
|
9028
|
+
* @example
|
|
9029
|
+
* ```ts
|
|
9030
|
+
* const deepLink = getPreferredWalletDeepLink({
|
|
9031
|
+
* deeplinks: wallet.deeplinks,
|
|
9032
|
+
* });
|
|
9033
|
+
* ```
|
|
9034
|
+
*
|
|
9035
|
+
* @param params.deeplinks - The deep link variants for a wallet (typically `WalletConnectCatalogWallet.deeplinks`).
|
|
9036
|
+
* @returns The preferred deep link URL, or `undefined` if neither variant is available.
|
|
9037
|
+
* @see appendConnectionUriToDeeplink
|
|
9038
|
+
* @see getConnectionUriDeeplink
|
|
9039
|
+
* @notInstrumented
|
|
9040
|
+
*/
|
|
9041
|
+
const getPreferredWalletDeepLink = ({ deeplinks }) => {
|
|
9042
|
+
const { native, universal } = deeplinks;
|
|
9043
|
+
if (isMobile()) return native ?? universal;
|
|
9044
|
+
return universal ?? native;
|
|
9045
|
+
};
|
|
9046
|
+
|
|
9047
|
+
//#endregion
|
|
9048
|
+
//#region src/modules/wallets/connectWithUriConnectionOption/getConnectionUriDeeplink/getConnectionUriDeeplink.ts
|
|
9049
|
+
/**
|
|
9050
|
+
* Builds the single deeplink that hands a pairing URI to the wallet, picking
|
|
9051
|
+
* the shape the URI's protocol expects.
|
|
9052
|
+
*
|
|
9053
|
+
* A WalletConnect URI travels as the `uri` query parameter of the wallet's own
|
|
9054
|
+
* deeplink, whereas the MetaMask SDK mints a launch link that already targets
|
|
9055
|
+
* MetaMask, so it is handed over untouched.
|
|
9056
|
+
*
|
|
9057
|
+
* @example
|
|
9058
|
+
* ```ts
|
|
9059
|
+
* const deeplink = getConnectionUriDeeplink({
|
|
9060
|
+
* deeplinks: connectionOption.deeplinks,
|
|
9061
|
+
* type: connectionOption.type,
|
|
9062
|
+
* uri,
|
|
9063
|
+
* });
|
|
9064
|
+
* ```
|
|
9065
|
+
*
|
|
9066
|
+
* @param params.deeplinks - The wallet's deeplink variants, as carried by the wallet book.
|
|
9067
|
+
* @param params.type - The URI connection type that minted the URI.
|
|
9068
|
+
* @param params.uri - The pairing URI.
|
|
9069
|
+
* @returns The deeplink to open, or `undefined` when the wallet publishes no deeplink to carry the URI.
|
|
9070
|
+
* @see getPreferredWalletDeepLink
|
|
9071
|
+
* @see appendConnectionUriToDeeplink
|
|
9072
|
+
* @notInstrumented
|
|
9073
|
+
*/
|
|
9074
|
+
const getConnectionUriDeeplink = ({ deeplinks, type, uri }) => {
|
|
9075
|
+
if (type === "metamaskSdkUri") return uri;
|
|
9076
|
+
const deeplinkUrl = getPreferredWalletDeepLink({ deeplinks });
|
|
9077
|
+
if (!deeplinkUrl) return;
|
|
9078
|
+
return appendConnectionUriToDeeplink({
|
|
9079
|
+
connectionUri: uri,
|
|
9080
|
+
deeplinkUrl
|
|
9081
|
+
});
|
|
9082
|
+
};
|
|
9083
|
+
|
|
9084
|
+
//#endregion
|
|
9085
|
+
//#region src/modules/wallets/connectWithUriConnectionOption/connectWithUriConnectionOption.ts
|
|
9086
|
+
/**
|
|
9087
|
+
* Connects to a wallet through a URI pairing and returns the connected wallet
|
|
9088
|
+
* account.
|
|
9089
|
+
*
|
|
9090
|
+
* Mints the pairing URI with the starter the chain extension registered for
|
|
9091
|
+
* the option's chain and URI type, hands it to `onConnectionUri` as the
|
|
9092
|
+
* wallet's deeplink carrying the pairing so the customer can render a QR code
|
|
9093
|
+
* or open the wallet app, then waits for the user to approve the pairing on
|
|
9094
|
+
* the wallet side.
|
|
9095
|
+
*
|
|
9096
|
+
* The handler is awaited, so an async handler that fails to open the wallet
|
|
9097
|
+
* rejects the connection rather than letting the pairing resolve into an
|
|
9098
|
+
* account nobody asked for.
|
|
9099
|
+
*
|
|
9100
|
+
* @example
|
|
9101
|
+
* ```ts
|
|
9102
|
+
* const walletAccount = await connectWithUriConnectionOption(
|
|
9103
|
+
* {
|
|
9104
|
+
* addToDynamicWalletAccounts: true,
|
|
9105
|
+
* connectionOption,
|
|
9106
|
+
* onConnectionUri: ({ uri }) => renderQrCode(uri),
|
|
9107
|
+
* walletKey: 'trust',
|
|
9108
|
+
* },
|
|
9109
|
+
* client
|
|
9110
|
+
* );
|
|
9111
|
+
* ```
|
|
9112
|
+
*
|
|
9113
|
+
* @param params.addToDynamicWalletAccounts - Whether the connected wallet account should be added to the client's wallet accounts.
|
|
9114
|
+
* @param params.connectionOption - The URI deeplink connection option to drive.
|
|
9115
|
+
* @param params.onConnectionUri - Called with the pairing URI once it is minted. Awaited before the approval is waited on.
|
|
9116
|
+
* @param params.walletKey - The wallet being connected, keyed as in the wallet options catalogue.
|
|
9117
|
+
* @param client - The Dynamic client instance.
|
|
9118
|
+
* @returns A promise that resolves to the connected wallet account.
|
|
9119
|
+
* @throws ConnectionUriHandlerMissingError If no onConnectionUri handler was passed.
|
|
9120
|
+
* @throws NoConnectionOptionAvailableError If no URI connection starter is registered for the option's chain and type.
|
|
9121
|
+
* @throws NoAddressFoundError If the pairing was approved but no address was shared with your app.
|
|
9122
|
+
* @see getUriConnectionStarterRegistry
|
|
9123
|
+
* @see getWalletOptionsCatalogue
|
|
9124
|
+
* @notInstrumented
|
|
9125
|
+
*/
|
|
9126
|
+
const connectWithUriConnectionOption = async ({ addToDynamicWalletAccounts, connectionOption, onConnectionUri, walletKey }, client) => {
|
|
9127
|
+
const { chain, deeplinks, type } = connectionOption;
|
|
9128
|
+
if (!onConnectionUri) throw new ConnectionUriHandlerMissingError({
|
|
9129
|
+
chain,
|
|
9130
|
+
type,
|
|
9131
|
+
walletKey
|
|
9132
|
+
});
|
|
9133
|
+
const starter = require_getNetworkProviderFromNetworkId.getUriConnectionStarterRegistry(client).get({
|
|
9134
|
+
chain,
|
|
9135
|
+
type
|
|
9136
|
+
});
|
|
9137
|
+
if (!starter) throw new NoConnectionOptionAvailableError({
|
|
9138
|
+
chain,
|
|
9139
|
+
walletKey
|
|
9140
|
+
});
|
|
9141
|
+
const { approval, uri } = await starter.start({ addToDynamicWalletAccounts });
|
|
9142
|
+
const walletAccountsPromise = approval();
|
|
9143
|
+
walletAccountsPromise.catch(() => void 0);
|
|
9144
|
+
await onConnectionUri({ uri: getConnectionUriDeeplink({
|
|
9145
|
+
deeplinks,
|
|
9146
|
+
type,
|
|
9147
|
+
uri
|
|
9148
|
+
}) ?? uri });
|
|
9149
|
+
const { walletAccounts } = await walletAccountsPromise;
|
|
9150
|
+
const [walletAccount] = walletAccounts;
|
|
9151
|
+
if (!walletAccount) throw new NoAddressFoundError();
|
|
9152
|
+
return walletAccount;
|
|
9153
|
+
};
|
|
9154
|
+
|
|
9155
|
+
//#endregion
|
|
9156
|
+
//#region src/utils/buildInAppBrowserUrl/buildInAppBrowserUrl.ts
|
|
9157
|
+
/**
|
|
9158
|
+
* Placeholder the wallet book leaves in in-app-browser URLs for the app URL
|
|
9159
|
+
* the wallet should open.
|
|
9160
|
+
*/
|
|
9161
|
+
const DAPP_URL_PLACEHOLDER = "{{encodedDappURI}}";
|
|
9162
|
+
/**
|
|
9163
|
+
* Fills a wallet's in-app-browser URL template with the app URL to open.
|
|
9164
|
+
*
|
|
9165
|
+
* Wallet book entries carry the entry point as a template (e.g.
|
|
9166
|
+
* `https://go.base.app/dapp?cb_url={{encodedDappURI}}`), so the URL is only
|
|
9167
|
+
* usable once every occurrence of the placeholder is substituted in,
|
|
9168
|
+
* percent-encoded. Templates without the placeholder are returned untouched —
|
|
9169
|
+
* some wallets open a fixed landing page.
|
|
9170
|
+
*
|
|
9171
|
+
* @example
|
|
9172
|
+
* ```ts
|
|
9173
|
+
* buildInAppBrowserUrl({
|
|
9174
|
+
* appUrl: 'https://myapp.xyz/login',
|
|
9175
|
+
* inAppBrowserUrl: 'https://go.base.app/dapp?cb_url={{encodedDappURI}}',
|
|
9176
|
+
* });
|
|
9177
|
+
* // Returns: 'https://go.base.app/dapp?cb_url=https%3A%2F%2Fmyapp.xyz%2Flogin'
|
|
9178
|
+
* ```
|
|
9179
|
+
*
|
|
9180
|
+
* @param params.appUrl - The URL of your app for the wallet's browser to open.
|
|
9181
|
+
* @param params.inAppBrowserUrl - The wallet's in-app-browser URL template.
|
|
9182
|
+
* @returns The in-app-browser URL to open.
|
|
9183
|
+
* @see redirectToInAppBrowser
|
|
9184
|
+
* @see getWalletOptionsCatalogue
|
|
9185
|
+
* @notInstrumented
|
|
9186
|
+
*/
|
|
9187
|
+
const buildInAppBrowserUrl = ({ appUrl, inAppBrowserUrl }) => inAppBrowserUrl.replaceAll(DAPP_URL_PLACEHOLDER, encodeURIComponent(appUrl));
|
|
9188
|
+
|
|
9189
|
+
//#endregion
|
|
9190
|
+
//#region src/modules/wallets/redirectToInAppBrowser/redirectToInAppBrowser.ts
|
|
9191
|
+
/**
|
|
9192
|
+
* Leaves your app for a wallet's in-app browser, which reloads `appUrl`
|
|
9193
|
+
* inside it.
|
|
9194
|
+
*
|
|
9195
|
+
* Call this from `handleWalletBrowserRedirect` with the URL of the page the
|
|
9196
|
+
* wallet should reload. The wallet's in-app-browser entry point is read from
|
|
9197
|
+
* the wallet options catalogue, so you only need the wallet's key. The wallet
|
|
9198
|
+
* is only injected on that reload, so the connection is made on the next page
|
|
9199
|
+
* load rather than in the current one.
|
|
9200
|
+
*
|
|
9201
|
+
* @example
|
|
9202
|
+
* ```ts
|
|
9203
|
+
* await connectWalletOption({
|
|
9204
|
+
* handleWalletBrowserRedirect: ({ chain, walletKey }) =>
|
|
9205
|
+
* redirectToInAppBrowser({ appUrl: window.location.href, chain, walletKey }),
|
|
9206
|
+
* walletKey: 'coinbase',
|
|
9207
|
+
* });
|
|
9208
|
+
* ```
|
|
9209
|
+
*
|
|
9210
|
+
* @param params.appUrl - The URL of your app for the wallet's browser to open.
|
|
9211
|
+
* @param params.walletKey - The wallet to open, keyed as in the wallet options catalogue.
|
|
9212
|
+
* @param [params.chain] - The chain to open the wallet's browser for. Required only when the wallet exposes an in-app browser on more than one enabled chain.
|
|
9213
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
9214
|
+
* @returns A promise that resolves once the redirect is triggered.
|
|
9215
|
+
* @throws WalletOptionNotFoundError If no wallet option matches the key.
|
|
9216
|
+
* @throws NoConnectionOptionAvailableError If the wallet exposes no in-app browser on the requested chain.
|
|
9217
|
+
* @throws AmbiguousWalletChainError If the wallet exposes an in-app browser on more than one chain and no chain was passed.
|
|
9218
|
+
* @throws UnsafeDeeplinkUrlError If the wallet's in-app-browser URL has a scheme that can execute script.
|
|
9219
|
+
* @see connectWalletOption
|
|
9220
|
+
* @see WalletBrowserRedirectHandlerParams
|
|
9221
|
+
* @instrumented
|
|
9222
|
+
*/
|
|
9223
|
+
const redirectToInAppBrowser = async ({ appUrl, chain, walletKey }, client = require_logoutWithReason.getDefaultClient()) => {
|
|
9224
|
+
const walletOption = (await getWalletOptionsCatalogue({ includeMobileOptions: true }, client)).find(({ key }) => key === walletKey);
|
|
9225
|
+
if (!walletOption) throw new WalletOptionNotFoundError({ walletKey });
|
|
9226
|
+
const inAppBrowserOptions = walletOption.connectionOptions.filter((option) => option.type === "inAppBrowser" && (!chain || option.chain === chain));
|
|
9227
|
+
if (inAppBrowserOptions.length === 0) throw new NoConnectionOptionAvailableError({
|
|
9228
|
+
chain,
|
|
9229
|
+
installationUrls: walletOption.installationUrls,
|
|
9230
|
+
walletKey
|
|
9231
|
+
});
|
|
9232
|
+
const availableChains = [...new Set(inAppBrowserOptions.map((option) => option.chain))];
|
|
9233
|
+
if (!chain && availableChains.length > 1) throw new AmbiguousWalletChainError({
|
|
9234
|
+
chains: availableChains,
|
|
9235
|
+
walletKey
|
|
9236
|
+
});
|
|
9237
|
+
const [inAppBrowserOption] = inAppBrowserOptions;
|
|
9238
|
+
const urlToOpen = buildInAppBrowserUrl({
|
|
9239
|
+
appUrl,
|
|
9240
|
+
inAppBrowserUrl: inAppBrowserOption.url
|
|
9241
|
+
});
|
|
9242
|
+
require_getNetworkProviderFromNetworkId.assertSafeDeeplinkUrl(urlToOpen);
|
|
9243
|
+
await require_logoutWithReason.getCore(client).openDeeplink(urlToOpen);
|
|
9244
|
+
};
|
|
9245
|
+
const __redirectToInAppBrowser_impl = redirectToInAppBrowser;
|
|
9246
|
+
const __redirectToInAppBrowser_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9247
|
+
fn: __redirectToInAppBrowser_impl,
|
|
9248
|
+
functionName: "redirectToInAppBrowser",
|
|
9249
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9250
|
+
});
|
|
9251
|
+
|
|
9252
|
+
//#endregion
|
|
9253
|
+
//#region src/modules/wallets/resolveWalletConnectionOption/resolveWalletConnectionOption.ts
|
|
9254
|
+
/**
|
|
9255
|
+
* Picks the connection option `connectWalletOption` should drive for a wallet.
|
|
9256
|
+
*
|
|
9257
|
+
* Reads the wallet options catalogue, keeps the options this client can
|
|
9258
|
+
* actually drive — a registered wallet provider, an in-app-browser entry, or
|
|
9259
|
+
* a URI pairing whose starter a chain extension has registered — and returns
|
|
9260
|
+
* the best one by the catalogue's ordering.
|
|
9261
|
+
*
|
|
9262
|
+
* @example
|
|
9263
|
+
* ```ts
|
|
9264
|
+
* const connectionOption = await resolveWalletConnectionOption(
|
|
9265
|
+
* { walletKey: 'metamask' },
|
|
9266
|
+
* client
|
|
9267
|
+
* );
|
|
9268
|
+
* ```
|
|
9269
|
+
*
|
|
9270
|
+
* @param params.walletKey - The wallet to connect, keyed as in the wallet options catalogue.
|
|
9271
|
+
* @param [params.chain] - The chain to connect on. Required only when the wallet resolves on more than one enabled chain.
|
|
9272
|
+
* @param client - The Dynamic client instance.
|
|
9273
|
+
* @returns A promise that resolves to the connection option to drive.
|
|
9274
|
+
* @throws WalletOptionNotFoundError If no wallet option matches the key.
|
|
9275
|
+
* @throws AmbiguousWalletChainError If the wallet resolves on more than one chain and no chain was passed.
|
|
9276
|
+
* @throws NoConnectionOptionAvailableError If the wallet has no connection option this client can drive on the requested chain.
|
|
9277
|
+
* @see connectWalletOption
|
|
9278
|
+
* @see getWalletOptionsCatalogue
|
|
9279
|
+
* @notInstrumented
|
|
9280
|
+
*/
|
|
9281
|
+
const resolveWalletConnectionOption = async ({ walletKey, chain }, client) => {
|
|
9282
|
+
const walletOption = (await getWalletOptionsCatalogue({ includeMobileOptions: true }, client)).find(({ key }) => key === walletKey);
|
|
9283
|
+
if (!walletOption) throw new WalletOptionNotFoundError({ walletKey });
|
|
9284
|
+
const uriConnectionStarterRegistry = require_getNetworkProviderFromNetworkId.getUriConnectionStarterRegistry(client);
|
|
9285
|
+
const availableOptions = walletOption.connectionOptions.filter((option) => !chain || option.chain === chain).filter((option) => {
|
|
9286
|
+
if (option.type !== "walletConnect" && option.type !== "metamaskSdkUri") return true;
|
|
9287
|
+
const starter = uriConnectionStarterRegistry.get({
|
|
9288
|
+
chain: option.chain,
|
|
9289
|
+
type: option.type
|
|
9290
|
+
});
|
|
9291
|
+
return Boolean(starter);
|
|
9292
|
+
});
|
|
9293
|
+
if (availableOptions.length === 0) throw new NoConnectionOptionAvailableError({
|
|
9294
|
+
chain,
|
|
9295
|
+
installationUrls: walletOption.installationUrls,
|
|
9296
|
+
walletKey
|
|
9297
|
+
});
|
|
9298
|
+
const availableChains = [...new Set(availableOptions.map((option) => option.chain))];
|
|
9299
|
+
if (!chain && availableChains.length > 1) throw new AmbiguousWalletChainError({
|
|
9300
|
+
chains: availableChains,
|
|
9301
|
+
walletKey
|
|
9302
|
+
});
|
|
9303
|
+
const [connectionOption] = availableOptions;
|
|
9304
|
+
return connectionOption;
|
|
9305
|
+
};
|
|
9306
|
+
|
|
9307
|
+
//#endregion
|
|
9308
|
+
//#region src/utils/getCurrentPageUrl/getCurrentPageUrl.ts
|
|
9309
|
+
/**
|
|
9310
|
+
* Returns the URL of the page the app is running in.
|
|
9311
|
+
*
|
|
9312
|
+
* @example
|
|
9313
|
+
* ```ts
|
|
9314
|
+
* const appUrl = getCurrentPageUrl() ?? 'https://mydapp.xyz';
|
|
9315
|
+
* ```
|
|
9316
|
+
*
|
|
9317
|
+
* @returns The current page URL, or null where there is no page to read it from, such as on React Native and during server-side rendering.
|
|
9318
|
+
* @see isServerSideRendering
|
|
9319
|
+
* @see redirectToInAppBrowser
|
|
9320
|
+
* @notInstrumented
|
|
9321
|
+
*/
|
|
9322
|
+
const getCurrentPageUrl = () => {
|
|
9323
|
+
if (typeof window === "undefined") return null;
|
|
9324
|
+
const href = window.location?.href;
|
|
9325
|
+
if (typeof href !== "string") return null;
|
|
9326
|
+
return href;
|
|
9327
|
+
};
|
|
9328
|
+
|
|
9329
|
+
//#endregion
|
|
9330
|
+
//#region src/highLevelFunctions/connectWalletOption/connectWalletOption.ts
|
|
9331
|
+
/**
|
|
9332
|
+
* Connects to an external wallet by its wallet options catalogue key and
|
|
9333
|
+
* returns the connected wallet account.
|
|
9334
|
+
*
|
|
9335
|
+
* Picks the connection path for the wallet so the customer does not have to:
|
|
9336
|
+
* a registered wallet provider when the user has the wallet installed,
|
|
9337
|
+
* otherwise a URI pairing (WalletConnect or the MetaMask SDK), with the
|
|
9338
|
+
* pairing URI handed to `onConnectionUri` while the returned promise waits for
|
|
9339
|
+
* the user to approve on the wallet side.
|
|
9340
|
+
*
|
|
9341
|
+
* Wallets that can only be reached through their own in-app browser — no
|
|
9342
|
+
* extension, no URI pairing — resolve to a redirect instead: the wallet and
|
|
9343
|
+
* chain are handed to `handleWalletBrowserRedirect`, which leaves for that
|
|
9344
|
+
* browser with `redirectToInAppBrowser`. Without that handler, the current
|
|
9345
|
+
* page is redirected into the wallet's browser directly, so the handler is
|
|
9346
|
+
* only needed to pick a different page to come back to, or where there is no
|
|
9347
|
+
* page URL to reuse (React Native, server-side rendering). The returned
|
|
9348
|
+
* promise never settles either way, since the connection completes on the
|
|
9349
|
+
* next page load inside the wallet's browser.
|
|
9350
|
+
*
|
|
9351
|
+
* Note: This function does not verify the wallet account — use
|
|
9352
|
+
* `verifyWalletAccount` afterwards to link it to the user.
|
|
9353
|
+
*
|
|
9354
|
+
* @example
|
|
9355
|
+
* ```ts
|
|
9356
|
+
* const walletAccount = await connectWalletOption({
|
|
9357
|
+
* handleWalletBrowserRedirect: ({ chain, walletKey }) =>
|
|
9358
|
+
* redirectToInAppBrowser({ appUrl: 'https://mydapp.xyz', chain, walletKey }),
|
|
9359
|
+
* onConnectionUri: ({ uri }) => renderQrCode(uri),
|
|
9360
|
+
* walletKey: 'metamask',
|
|
9038
9361
|
* });
|
|
9039
|
-
* console.log(
|
|
9362
|
+
* console.log(walletAccount.address);
|
|
9040
9363
|
* ```
|
|
9041
9364
|
*
|
|
9042
|
-
* @param params.
|
|
9043
|
-
* @param [params.
|
|
9365
|
+
* @param params.walletKey - The wallet to connect, keyed as in the wallet options catalogue (e.g. 'metamask', 'phantom').
|
|
9366
|
+
* @param [params.chain] - The chain to connect on. Required only when the wallet resolves on more than one enabled chain.
|
|
9367
|
+
* @param [params.onConnectionUri] - Called with the pairing URI when the connection runs through a URI pairing.
|
|
9368
|
+
* @param [params.handleWalletBrowserRedirect] - Called with the wallet and chain when the wallet can only be connected through its own in-app browser. Defaults to redirecting the current page into that browser.
|
|
9044
9369
|
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
9045
|
-
* @returns A promise that resolves to the connected
|
|
9046
|
-
* @
|
|
9370
|
+
* @returns A promise that resolves to the connected wallet account, or that never settles on the in-app-browser path.
|
|
9371
|
+
* @throws WalletOptionNotFoundError If no wallet option matches the key.
|
|
9372
|
+
* @throws AmbiguousWalletChainError If the wallet resolves on more than one chain and no chain was passed.
|
|
9373
|
+
* @throws NoConnectionOptionAvailableError If the wallet has no connection option this client can drive on the requested chain.
|
|
9374
|
+
* @throws ConnectionUriHandlerMissingError If the wallet resolves to a URI pairing and no onConnectionUri handler was passed.
|
|
9375
|
+
* @throws WalletBrowserRedirectHandlerMissingError If the wallet resolves to its in-app browser, no handleWalletBrowserRedirect handler was passed, and there is no current page URL to redirect.
|
|
9376
|
+
* @throws UnsafeDeeplinkUrlError If the wallet's in-app-browser URL has a scheme that can execute script.
|
|
9047
9377
|
* @see verifyWalletAccount
|
|
9378
|
+
* @see redirectToInAppBrowser
|
|
9379
|
+
* @see getWalletOptionsCatalogue
|
|
9048
9380
|
* @instrumented
|
|
9049
9381
|
*/
|
|
9050
|
-
const
|
|
9051
|
-
const
|
|
9052
|
-
|
|
9053
|
-
|
|
9054
|
-
addToDynamicWalletAccounts: false,
|
|
9055
|
-
hardwareWalletVendor,
|
|
9056
|
-
walletProviderKey
|
|
9057
|
-
}, client);
|
|
9058
|
-
await __verifyWalletAccount_wrapped({ walletAccount }, client);
|
|
9059
|
-
require_getNetworkProviderFromNetworkId.createVisit({
|
|
9060
|
-
authMode: _dynamic_labs_sdk_api_core.AuthModeEnum.AndSign,
|
|
9061
|
-
walletAccount
|
|
9382
|
+
const connectWalletOption = async ({ walletKey, chain, handleWalletBrowserRedirect, onConnectionUri }, client = require_logoutWithReason.getDefaultClient()) => {
|
|
9383
|
+
const connectionOption = await resolveWalletConnectionOption({
|
|
9384
|
+
chain,
|
|
9385
|
+
walletKey
|
|
9062
9386
|
}, client);
|
|
9063
|
-
return
|
|
9064
|
-
|
|
9065
|
-
const
|
|
9066
|
-
|
|
9067
|
-
|
|
9068
|
-
|
|
9069
|
-
|
|
9070
|
-
|
|
9071
|
-
|
|
9072
|
-
|
|
9073
|
-
|
|
9387
|
+
if (connectionOption.type === "withWalletProvider") return __connectWithWalletProvider_wrapped({ walletProviderKey: connectionOption.walletProviderKey }, client);
|
|
9388
|
+
if (connectionOption.type === "inAppBrowser") {
|
|
9389
|
+
const { chain: inAppBrowserChain } = connectionOption;
|
|
9390
|
+
if (handleWalletBrowserRedirect) handleWalletBrowserRedirect({
|
|
9391
|
+
chain: inAppBrowserChain,
|
|
9392
|
+
walletKey
|
|
9393
|
+
});
|
|
9394
|
+
else {
|
|
9395
|
+
const currentPageUrl = getCurrentPageUrl();
|
|
9396
|
+
if (!currentPageUrl) throw new WalletBrowserRedirectHandlerMissingError({
|
|
9397
|
+
chain: inAppBrowserChain,
|
|
9398
|
+
walletKey
|
|
9399
|
+
});
|
|
9400
|
+
await __redirectToInAppBrowser_wrapped({
|
|
9401
|
+
appUrl: currentPageUrl,
|
|
9402
|
+
chain: inAppBrowserChain,
|
|
9403
|
+
walletKey
|
|
9404
|
+
}, client);
|
|
9074
9405
|
}
|
|
9406
|
+
return new Promise(() => void 0);
|
|
9075
9407
|
}
|
|
9408
|
+
return connectWithUriConnectionOption({
|
|
9409
|
+
addToDynamicWalletAccounts: true,
|
|
9410
|
+
connectionOption,
|
|
9411
|
+
onConnectionUri,
|
|
9412
|
+
walletKey
|
|
9413
|
+
}, client);
|
|
9414
|
+
};
|
|
9415
|
+
const __connectWalletOption_impl = connectWalletOption;
|
|
9416
|
+
const __connectWalletOption_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9417
|
+
fn: __connectWalletOption_impl,
|
|
9418
|
+
functionName: "connectWalletOption",
|
|
9419
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9076
9420
|
});
|
|
9077
9421
|
|
|
9078
9422
|
//#endregion
|
|
@@ -9294,13 +9638,7 @@ const __addNetwork_impl = addNetwork;
|
|
|
9294
9638
|
const __addNetwork_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9295
9639
|
fn: __addNetwork_impl,
|
|
9296
9640
|
functionName: "addNetwork",
|
|
9297
|
-
getCore:
|
|
9298
|
-
try {
|
|
9299
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9300
|
-
} catch {
|
|
9301
|
-
return;
|
|
9302
|
-
}
|
|
9303
|
-
}
|
|
9641
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9304
9642
|
});
|
|
9305
9643
|
|
|
9306
9644
|
//#endregion
|
|
@@ -9502,13 +9840,7 @@ const __switchActiveNetwork_impl = switchActiveNetwork;
|
|
|
9502
9840
|
const __switchActiveNetwork_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9503
9841
|
fn: __switchActiveNetwork_impl,
|
|
9504
9842
|
functionName: "switchActiveNetwork",
|
|
9505
|
-
getCore:
|
|
9506
|
-
try {
|
|
9507
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9508
|
-
} catch {
|
|
9509
|
-
return;
|
|
9510
|
-
}
|
|
9511
|
-
}
|
|
9843
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9512
9844
|
});
|
|
9513
9845
|
|
|
9514
9846
|
//#endregion
|
|
@@ -9601,13 +9933,7 @@ const __setSelectedWalletAccount_impl = setSelectedWalletAccount;
|
|
|
9601
9933
|
const __setSelectedWalletAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9602
9934
|
fn: __setSelectedWalletAccount_impl,
|
|
9603
9935
|
functionName: "setSelectedWalletAccount",
|
|
9604
|
-
getCore:
|
|
9605
|
-
try {
|
|
9606
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9607
|
-
} catch {
|
|
9608
|
-
return;
|
|
9609
|
-
}
|
|
9610
|
-
}
|
|
9936
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9611
9937
|
});
|
|
9612
9938
|
|
|
9613
9939
|
//#endregion
|
|
@@ -9663,116 +9989,7 @@ const __selectPrimaryWalletAccount_impl = selectPrimaryWalletAccount;
|
|
|
9663
9989
|
const __selectPrimaryWalletAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9664
9990
|
fn: __selectPrimaryWalletAccount_impl,
|
|
9665
9991
|
functionName: "selectPrimaryWalletAccount",
|
|
9666
|
-
getCore:
|
|
9667
|
-
try {
|
|
9668
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9669
|
-
} catch {
|
|
9670
|
-
return;
|
|
9671
|
-
}
|
|
9672
|
-
}
|
|
9673
|
-
});
|
|
9674
|
-
|
|
9675
|
-
//#endregion
|
|
9676
|
-
//#region src/utils/buildInAppBrowserUrl/buildInAppBrowserUrl.ts
|
|
9677
|
-
/**
|
|
9678
|
-
* Placeholder the wallet book leaves in in-app-browser URLs for the app URL
|
|
9679
|
-
* the wallet should open.
|
|
9680
|
-
*/
|
|
9681
|
-
const DAPP_URL_PLACEHOLDER = "{{encodedDappURI}}";
|
|
9682
|
-
/**
|
|
9683
|
-
* Fills a wallet's in-app-browser URL template with the app URL to open.
|
|
9684
|
-
*
|
|
9685
|
-
* Wallet book entries carry the entry point as a template (e.g.
|
|
9686
|
-
* `https://go.base.app/dapp?cb_url={{encodedDappURI}}`), so the URL is only
|
|
9687
|
-
* usable once every occurrence of the placeholder is substituted in,
|
|
9688
|
-
* percent-encoded. Templates without the placeholder are returned untouched —
|
|
9689
|
-
* some wallets open a fixed landing page.
|
|
9690
|
-
*
|
|
9691
|
-
* @example
|
|
9692
|
-
* ```ts
|
|
9693
|
-
* buildInAppBrowserUrl({
|
|
9694
|
-
* appUrl: 'https://myapp.xyz/login',
|
|
9695
|
-
* inAppBrowserUrl: 'https://go.base.app/dapp?cb_url={{encodedDappURI}}',
|
|
9696
|
-
* });
|
|
9697
|
-
* // Returns: 'https://go.base.app/dapp?cb_url=https%3A%2F%2Fmyapp.xyz%2Flogin'
|
|
9698
|
-
* ```
|
|
9699
|
-
*
|
|
9700
|
-
* @param params.appUrl - The URL of your app for the wallet's browser to open.
|
|
9701
|
-
* @param params.inAppBrowserUrl - The wallet's in-app-browser URL template.
|
|
9702
|
-
* @returns The in-app-browser URL to open.
|
|
9703
|
-
* @see redirectToInAppBrowser
|
|
9704
|
-
* @see getWalletOptionsCatalogue
|
|
9705
|
-
* @notInstrumented
|
|
9706
|
-
*/
|
|
9707
|
-
const buildInAppBrowserUrl = ({ appUrl, inAppBrowserUrl }) => inAppBrowserUrl.replaceAll(DAPP_URL_PLACEHOLDER, encodeURIComponent(appUrl));
|
|
9708
|
-
|
|
9709
|
-
//#endregion
|
|
9710
|
-
//#region src/modules/wallets/redirectToInAppBrowser/redirectToInAppBrowser.ts
|
|
9711
|
-
/**
|
|
9712
|
-
* Leaves your app for a wallet's in-app browser, which reloads `appUrl`
|
|
9713
|
-
* inside it.
|
|
9714
|
-
*
|
|
9715
|
-
* Call this from `handleWalletBrowserRedirect` with the URL of the page the
|
|
9716
|
-
* wallet should reload. The wallet's in-app-browser entry point is read from
|
|
9717
|
-
* the wallet options catalogue, so you only need the wallet's key. The wallet
|
|
9718
|
-
* is only injected on that reload, so the connection is made on the next page
|
|
9719
|
-
* load rather than in the current one.
|
|
9720
|
-
*
|
|
9721
|
-
* @example
|
|
9722
|
-
* ```ts
|
|
9723
|
-
* await connectWallet({
|
|
9724
|
-
* handleWalletBrowserRedirect: ({ chain, walletKey }) =>
|
|
9725
|
-
* redirectToInAppBrowser({ appUrl: window.location.href, chain, walletKey }),
|
|
9726
|
-
* walletKey: 'coinbase',
|
|
9727
|
-
* });
|
|
9728
|
-
* ```
|
|
9729
|
-
*
|
|
9730
|
-
* @param params.appUrl - The URL of your app for the wallet's browser to open.
|
|
9731
|
-
* @param params.walletKey - The wallet to open, keyed as in the wallet options catalogue.
|
|
9732
|
-
* @param [params.chain] - The chain to open the wallet's browser for. Required only when the wallet exposes an in-app browser on more than one enabled chain.
|
|
9733
|
-
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
9734
|
-
* @returns A promise that resolves once the redirect is triggered.
|
|
9735
|
-
* @throws WalletOptionNotFoundError If no wallet option matches the key.
|
|
9736
|
-
* @throws NoConnectionOptionAvailableError If the wallet exposes no in-app browser on the requested chain.
|
|
9737
|
-
* @throws AmbiguousWalletChainError If the wallet exposes an in-app browser on more than one chain and no chain was passed.
|
|
9738
|
-
* @throws UnsafeDeeplinkUrlError If the wallet's in-app-browser URL has a scheme that can execute script.
|
|
9739
|
-
* @see connectWallet
|
|
9740
|
-
* @see WalletBrowserRedirectHandlerParams
|
|
9741
|
-
* @instrumented
|
|
9742
|
-
*/
|
|
9743
|
-
const redirectToInAppBrowser = async ({ appUrl, chain, walletKey }, client = require_logoutWithReason.getDefaultClient()) => {
|
|
9744
|
-
const walletOption = (await getWalletOptionsCatalogue({ includeMobileOptions: true }, client)).find(({ key }) => key === walletKey);
|
|
9745
|
-
if (!walletOption) throw new WalletOptionNotFoundError({ walletKey });
|
|
9746
|
-
const inAppBrowserOptions = walletOption.connectionOptions.filter((option) => option.type === "inAppBrowser" && (!chain || option.chain === chain));
|
|
9747
|
-
if (inAppBrowserOptions.length === 0) throw new NoConnectionOptionAvailableError({
|
|
9748
|
-
chain,
|
|
9749
|
-
installationUrls: walletOption.installationUrls,
|
|
9750
|
-
walletKey
|
|
9751
|
-
});
|
|
9752
|
-
const availableChains = [...new Set(inAppBrowserOptions.map((option) => option.chain))];
|
|
9753
|
-
if (!chain && availableChains.length > 1) throw new AmbiguousWalletChainError({
|
|
9754
|
-
chains: availableChains,
|
|
9755
|
-
walletKey
|
|
9756
|
-
});
|
|
9757
|
-
const [inAppBrowserOption] = inAppBrowserOptions;
|
|
9758
|
-
const urlToOpen = buildInAppBrowserUrl({
|
|
9759
|
-
appUrl,
|
|
9760
|
-
inAppBrowserUrl: inAppBrowserOption.url
|
|
9761
|
-
});
|
|
9762
|
-
require_getNetworkProviderFromNetworkId.assertSafeDeeplinkUrl(urlToOpen);
|
|
9763
|
-
await require_logoutWithReason.getCore(client).openDeeplink(urlToOpen);
|
|
9764
|
-
};
|
|
9765
|
-
const __redirectToInAppBrowser_impl = redirectToInAppBrowser;
|
|
9766
|
-
const __redirectToInAppBrowser_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9767
|
-
fn: __redirectToInAppBrowser_impl,
|
|
9768
|
-
functionName: "redirectToInAppBrowser",
|
|
9769
|
-
getCore: () => {
|
|
9770
|
-
try {
|
|
9771
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9772
|
-
} catch {
|
|
9773
|
-
return;
|
|
9774
|
-
}
|
|
9775
|
-
}
|
|
9992
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9776
9993
|
});
|
|
9777
9994
|
|
|
9778
9995
|
//#endregion
|
|
@@ -9845,13 +10062,7 @@ const __removeWalletAccount_impl = removeWalletAccount;
|
|
|
9845
10062
|
const __removeWalletAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9846
10063
|
fn: __removeWalletAccount_impl,
|
|
9847
10064
|
functionName: "removeWalletAccount",
|
|
9848
|
-
getCore:
|
|
9849
|
-
try {
|
|
9850
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9851
|
-
} catch {
|
|
9852
|
-
return;
|
|
9853
|
-
}
|
|
9854
|
-
}
|
|
10065
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9855
10066
|
});
|
|
9856
10067
|
|
|
9857
10068
|
//#endregion
|
|
@@ -9892,13 +10103,7 @@ const __signMessage_impl = signMessage;
|
|
|
9892
10103
|
const __signMessage_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9893
10104
|
fn: __signMessage_impl,
|
|
9894
10105
|
functionName: "signMessage",
|
|
9895
|
-
getCore:
|
|
9896
|
-
try {
|
|
9897
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9898
|
-
} catch {
|
|
9899
|
-
return;
|
|
9900
|
-
}
|
|
9901
|
-
}
|
|
10106
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9902
10107
|
});
|
|
9903
10108
|
|
|
9904
10109
|
//#endregion
|
|
@@ -9944,13 +10149,7 @@ const __transferAmount_impl = transferAmount;
|
|
|
9944
10149
|
const __transferAmount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9945
10150
|
fn: __transferAmount_impl,
|
|
9946
10151
|
functionName: "transferAmount",
|
|
9947
|
-
getCore:
|
|
9948
|
-
try {
|
|
9949
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9950
|
-
} catch {
|
|
9951
|
-
return;
|
|
9952
|
-
}
|
|
9953
|
-
}
|
|
10152
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9954
10153
|
});
|
|
9955
10154
|
|
|
9956
10155
|
//#endregion
|
|
@@ -9988,13 +10187,7 @@ const __transferWalletAccount_impl = transferWalletAccount;
|
|
|
9988
10187
|
const __transferWalletAccount_wrapped = require_logoutWithReason.instrumentFunction({
|
|
9989
10188
|
fn: __transferWalletAccount_impl,
|
|
9990
10189
|
functionName: "transferWalletAccount",
|
|
9991
|
-
getCore:
|
|
9992
|
-
try {
|
|
9993
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
9994
|
-
} catch {
|
|
9995
|
-
return;
|
|
9996
|
-
}
|
|
9997
|
-
}
|
|
10190
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
9998
10191
|
});
|
|
9999
10192
|
|
|
10000
10193
|
//#endregion
|
|
@@ -10137,13 +10330,7 @@ const __claimYieldRewards_impl = claimYieldRewards;
|
|
|
10137
10330
|
const __claimYieldRewards_wrapped = require_logoutWithReason.instrumentFunction({
|
|
10138
10331
|
fn: __claimYieldRewards_impl,
|
|
10139
10332
|
functionName: "claimYieldRewards",
|
|
10140
|
-
getCore:
|
|
10141
|
-
try {
|
|
10142
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
10143
|
-
} catch {
|
|
10144
|
-
return;
|
|
10145
|
-
}
|
|
10146
|
-
}
|
|
10333
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
10147
10334
|
});
|
|
10148
10335
|
|
|
10149
10336
|
//#endregion
|
|
@@ -10195,13 +10382,7 @@ const __depositToYieldVault_impl = depositToYieldVault;
|
|
|
10195
10382
|
const __depositToYieldVault_wrapped = require_logoutWithReason.instrumentFunction({
|
|
10196
10383
|
fn: __depositToYieldVault_impl,
|
|
10197
10384
|
functionName: "depositToYieldVault",
|
|
10198
|
-
getCore:
|
|
10199
|
-
try {
|
|
10200
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
10201
|
-
} catch {
|
|
10202
|
-
return;
|
|
10203
|
-
}
|
|
10204
|
-
}
|
|
10385
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
10205
10386
|
});
|
|
10206
10387
|
|
|
10207
10388
|
//#endregion
|
|
@@ -10367,79 +10548,9 @@ const __withdrawFromYieldVault_impl = withdrawFromYieldVault;
|
|
|
10367
10548
|
const __withdrawFromYieldVault_wrapped = require_logoutWithReason.instrumentFunction({
|
|
10368
10549
|
fn: __withdrawFromYieldVault_impl,
|
|
10369
10550
|
functionName: "withdrawFromYieldVault",
|
|
10370
|
-
getCore:
|
|
10371
|
-
try {
|
|
10372
|
-
return require_logoutWithReason.getCore(require_logoutWithReason.getDefaultClient());
|
|
10373
|
-
} catch {
|
|
10374
|
-
return;
|
|
10375
|
-
}
|
|
10376
|
-
}
|
|
10551
|
+
getCore: require_logoutWithReason.resolveInstrumentationCore
|
|
10377
10552
|
});
|
|
10378
10553
|
|
|
10379
|
-
//#endregion
|
|
10380
|
-
//#region src/utils/appendConnectionUriToDeeplink/appendConnectionUriToDeeplink.ts
|
|
10381
|
-
/**
|
|
10382
|
-
* Appends a wallet connection URI to a deeplink URL.
|
|
10383
|
-
*
|
|
10384
|
-
* Generic across URI-deeplink connection options — works for both
|
|
10385
|
-
* WalletConnect pairing URIs and MetaMask SDK URIs. Determines the
|
|
10386
|
-
* appropriate query parameter separator based on whether the deeplink
|
|
10387
|
-
* already contains query parameters.
|
|
10388
|
-
*
|
|
10389
|
-
* @param params.deeplinkUrl - The base deeplink URL (e.g., `walletapp://wc` or `walletapp://wc?param=value`).
|
|
10390
|
-
* @param params.connectionUri - The connection URI to append.
|
|
10391
|
-
* @returns The deeplink URL with the connection URI appended as a query parameter.
|
|
10392
|
-
*
|
|
10393
|
-
* @example
|
|
10394
|
-
* ```ts
|
|
10395
|
-
* appendConnectionUriToDeeplink({ deeplinkUrl: 'walletapp://wc', connectionUri: 'wc:123-456' })
|
|
10396
|
-
* // Returns: 'walletapp://wc?uri=wc%3A123-456'
|
|
10397
|
-
*
|
|
10398
|
-
* appendConnectionUriToDeeplink({ deeplinkUrl: 'walletapp://wc?param=value', connectionUri: 'wc:123-456' })
|
|
10399
|
-
* // Returns: 'walletapp://wc?param=value&uri=wc%3A123-456'
|
|
10400
|
-
* ```
|
|
10401
|
-
* @notInstrumented
|
|
10402
|
-
*/
|
|
10403
|
-
const appendConnectionUriToDeeplink = ({ connectionUri, deeplinkUrl }) => {
|
|
10404
|
-
const url = new URL(deeplinkUrl);
|
|
10405
|
-
url.searchParams.set("uri", connectionUri);
|
|
10406
|
-
return url.href;
|
|
10407
|
-
};
|
|
10408
|
-
|
|
10409
|
-
//#endregion
|
|
10410
|
-
//#region src/utils/getPreferredWalletDeepLink/getPreferredWalletDeepLink.ts
|
|
10411
|
-
/**
|
|
10412
|
-
* Picks the most appropriate deep link variant for the current platform.
|
|
10413
|
-
*
|
|
10414
|
-
* Mobile (Android, iOS, tablets) prefers `native` because the OS treats
|
|
10415
|
-
* custom URL schemes as first-class app links and gives the wallet a faster
|
|
10416
|
-
* round-trip back to the dApp. Desktop prefers `universal` because browsers
|
|
10417
|
-
* cannot resolve mobile-only custom schemes and need an `https://` link
|
|
10418
|
-
* that opens the wallet's web flow.
|
|
10419
|
-
*
|
|
10420
|
-
* In either case, the alternative is used as a fallback when the preferred
|
|
10421
|
-
* variant is missing. Returns `undefined` only when both variants are
|
|
10422
|
-
* absent.
|
|
10423
|
-
*
|
|
10424
|
-
* @example
|
|
10425
|
-
* ```ts
|
|
10426
|
-
* const deepLink = getPreferredWalletDeepLink({
|
|
10427
|
-
* deeplinks: wallet.deeplinks,
|
|
10428
|
-
* });
|
|
10429
|
-
* ```
|
|
10430
|
-
*
|
|
10431
|
-
* @param params.deeplinks - The deep link variants for a wallet (typically `WalletConnectCatalogWallet.deeplinks`).
|
|
10432
|
-
* @returns The preferred deep link URL, or `undefined` if neither variant is available.
|
|
10433
|
-
* @see appendConnectionUriToDeeplink
|
|
10434
|
-
* @see getConnectionUriDeeplink
|
|
10435
|
-
* @notInstrumented
|
|
10436
|
-
*/
|
|
10437
|
-
const getPreferredWalletDeepLink = ({ deeplinks }) => {
|
|
10438
|
-
const { native, universal } = deeplinks;
|
|
10439
|
-
if (isMobile()) return native ?? universal;
|
|
10440
|
-
return universal ?? native;
|
|
10441
|
-
};
|
|
10442
|
-
|
|
10443
10554
|
//#endregion
|
|
10444
10555
|
//#region src/utils/parseUserAgent/parseUserAgent.ts
|
|
10445
10556
|
const browserMatchers = [
|
|
@@ -10533,6 +10644,7 @@ exports.CoinbaseTransferMfaFailedError = CoinbaseTransferMfaFailedError;
|
|
|
10533
10644
|
exports.CoinbaseTransferMfaRequiredError = CoinbaseTransferMfaRequiredError;
|
|
10534
10645
|
exports.CoinbaseTravelRuleFieldName = CoinbaseTravelRuleFieldName;
|
|
10535
10646
|
exports.CoinbaseTravelRuleRequiredError = CoinbaseTravelRuleRequiredError;
|
|
10647
|
+
exports.ConnectionUriHandlerMissingError = ConnectionUriHandlerMissingError;
|
|
10536
10648
|
exports.DeeplinkConnectAndVerifyUnsupportedError = DeeplinkConnectAndVerifyUnsupportedError;
|
|
10537
10649
|
exports.DeviceRegistrationIdentityMismatchError = DeviceRegistrationIdentityMismatchError;
|
|
10538
10650
|
exports.FeeEstimationFailedError = FeeEstimationFailedError;
|
|
@@ -10582,6 +10694,7 @@ exports.WaasRbacStaleRetryUnsafeError = require_isUserOnboardingComplete.WaasRba
|
|
|
10582
10694
|
exports.WalletAccountAlreadyVerifiedError = WalletAccountAlreadyVerifiedError;
|
|
10583
10695
|
exports.WalletAccountNotSelectedError = WalletAccountNotSelectedError;
|
|
10584
10696
|
exports.WalletAlreadyLinkedToAnotherUserError = require_getNetworkProviderFromNetworkId.WalletAlreadyLinkedToAnotherUserError;
|
|
10697
|
+
exports.WalletBrowserRedirectHandlerMissingError = WalletBrowserRedirectHandlerMissingError;
|
|
10585
10698
|
exports.WalletOptionNotFoundError = WalletOptionNotFoundError;
|
|
10586
10699
|
exports.WalletProviderMethodUnavailableError = WalletProviderMethodUnavailableError;
|
|
10587
10700
|
exports.WalletScreeningBlockedError = require_getNetworkProviderFromNetworkId.WalletScreeningBlockedError;
|
|
@@ -10612,6 +10725,7 @@ exports.completeSocialAuthentication = __completeSocialAuthentication_wrapped;
|
|
|
10612
10725
|
exports.completeSocialRedirect = __completeSocialRedirect_wrapped;
|
|
10613
10726
|
exports.confirmTransaction = __confirmTransaction_wrapped;
|
|
10614
10727
|
exports.connectAndVerifyWithWalletProvider = __connectAndVerifyWithWalletProvider_wrapped;
|
|
10728
|
+
exports.connectWalletOption = __connectWalletOption_wrapped;
|
|
10615
10729
|
exports.connectWithWalletProvider = __connectWithWalletProvider_wrapped;
|
|
10616
10730
|
exports.consumeMfaToken = require_isMfaRequiredForAction.__consumeMfaToken_wrapped;
|
|
10617
10731
|
exports.createCheckoutTransaction = __createCheckoutTransaction_wrapped;
|
|
@@ -10641,8 +10755,8 @@ exports.getBalances = getBalances;
|
|
|
10641
10755
|
exports.getCaptchaSettings = getCaptchaSettings;
|
|
10642
10756
|
exports.getCheckoutTransaction = getCheckoutTransaction;
|
|
10643
10757
|
exports.getCheckoutTransactionQuote = getCheckoutTransactionQuote;
|
|
10644
|
-
exports.getCoinbaseAccounts =
|
|
10645
|
-
exports.getCoinbaseBuyUrl =
|
|
10758
|
+
exports.getCoinbaseAccounts = __getCoinbaseAccounts_wrapped;
|
|
10759
|
+
exports.getCoinbaseBuyUrl = __getCoinbaseBuyUrl_wrapped;
|
|
10646
10760
|
exports.getConnectedAddresses = getConnectedAddresses;
|
|
10647
10761
|
exports.getDefaultClient = require_logoutWithReason.getDefaultClient;
|
|
10648
10762
|
exports.getDeviceRegistrationTokenFromUrl = getDeviceRegistrationTokenFromUrl;
|
|
@@ -10651,8 +10765,8 @@ exports.getFlow = getFlow;
|
|
|
10651
10765
|
exports.getFlowQuote = getFlowQuote;
|
|
10652
10766
|
exports.getGoogleDriveBackupReadiness = __getGoogleDriveBackupReadiness_wrapped;
|
|
10653
10767
|
exports.getInstallationLinkForCurrentPlatform = getInstallationLinkForCurrentPlatform;
|
|
10654
|
-
exports.getKrakenAccounts =
|
|
10655
|
-
exports.getKrakenWhitelistedAddresses =
|
|
10768
|
+
exports.getKrakenAccounts = __getKrakenAccounts_wrapped;
|
|
10769
|
+
exports.getKrakenWhitelistedAddresses = __getKrakenWhitelistedAddresses_wrapped;
|
|
10656
10770
|
exports.getMfaDevices = getMfaDevices;
|
|
10657
10771
|
exports.getMfaMethods = require_isMfaRequiredForAction.getMfaMethods;
|
|
10658
10772
|
exports.getMfaRecoveryCodes = getMfaRecoveryCodes;
|
|
@@ -10702,6 +10816,7 @@ exports.isSignedIn = require_logoutWithReason.isSignedIn;
|
|
|
10702
10816
|
exports.isUserMissingMfaAuth = require_logoutWithReason.isUserMissingMfaAuth;
|
|
10703
10817
|
exports.isUserOnboardingComplete = require_isUserOnboardingComplete.isUserOnboardingComplete;
|
|
10704
10818
|
exports.isWalletAccountVerified = isWalletAccountVerified;
|
|
10819
|
+
exports.isWalletExtensionInstalled = isWalletExtensionInstalled;
|
|
10705
10820
|
exports.listYieldVaults = listYieldVaults;
|
|
10706
10821
|
exports.logout = logout;
|
|
10707
10822
|
exports.matchWalletProvidersToCatalogGroup = matchWalletProvidersToCatalogGroup;
|