@dynamic-labs/wallet-connector-core 5.0.0-rc.0 → 5.0.0-rc.2

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/CHANGELOG.md CHANGED
@@ -1,5 +1,78 @@
1
1
 
2
- ## [5.0.0-rc.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.91.6...v5.0.0-rc.0) (2026-07-05)
2
+ ## [5.0.0-rc.2](https://github.com/dynamic-labs/dynamic-auth/compare/v5.0.0-rc.1...v5.0.0-rc.2) (2026-07-17)
3
+
4
+ ## [5.0.0-rc.1](https://github.com/dynamic-labs/dynamic-auth/compare/v5.0.0-rc.0...v5.0.0-rc.1) (2026-07-17)
5
+
6
+
7
+ ### ⚠ BREAKING CHANGES
8
+
9
+ * move legacy embedded wallet to waas upgrade flow to new legacy-embedded-wallet-migration package (#11841)
10
+ * drop default injection of legacy embedded wallet connectors (#11833)
11
+ * remove legacy embedded wallet support (#11979)
12
+ * throw when legacy embedded wallet is detected without migration provider (#11855)
13
+ * remove deprecated eclipse package (#11831)
14
+ * remove deprecated functions and props (#11832)
15
+
16
+
17
+ ### [4.92.4](https://github.com/dynamic-labs/dynamic-auth/compare/v4.92.3...v4.92.4) (2026-07-16)
18
+
19
+
20
+ ### Features
21
+
22
+ * **bitcoin:** per-network address switching and dust-limit send validation [v4] ([#11970](https://github.com/dynamic-labs/dynamic-auth/issues/11970)) ([76a4a9a](https://github.com/dynamic-labs/dynamic-auth/commit/76a4a9a5025d78798ebd1beffe6c0af59d2d029a)), closes [#11896](https://github.com/dynamic-labs/dynamic-auth/issues/11896) [#11800](https://github.com/dynamic-labs/dynamic-auth/issues/11800)
23
+ * **midnight:** per-network addresses in deposit and wallet info views [v4] ([#11949](https://github.com/dynamic-labs/dynamic-auth/issues/11949)) ([978446a](https://github.com/dynamic-labs/dynamic-auth/commit/978446aca8546eb038ba9ed3be0503d10594ee15))
24
+ * **midnight:** resolve wallet address per selected network [v4] ([#11948](https://github.com/dynamic-labs/dynamic-auth/issues/11948)) ([d6f858c](https://github.com/dynamic-labs/dynamic-auth/commit/d6f858c5e35defda7ed73cf97b3fdbe5ed9d131d))
25
+ * set useMetamaskSdk to true by default ([#11926](https://github.com/dynamic-labs/dynamic-auth/issues/11926)) ([75b5a4a](https://github.com/dynamic-labs/dynamic-auth/commit/75b5a4a0fe8b1a375afce145c0b8bdc3ce761117))
26
+
27
+
28
+ ### Bug Fixes
29
+
30
+ * **midnight:** align per-network code with the final main iteration [v4] ([#11971](https://github.com/dynamic-labs/dynamic-auth/issues/11971)) ([3ef3ba8](https://github.com/dynamic-labs/dynamic-auth/commit/3ef3ba8c090dfd9e4286b4e51bf350ea5e6feac7))
31
+ * settle social sign-in when captcha is backed out or oauth popup never responds (v4) ([#11956](https://github.com/dynamic-labs/dynamic-auth/issues/11956)) ([ad49477](https://github.com/dynamic-labs/dynamic-auth/commit/ad49477f2acf61a154bb79cbe26b24f803cdb0e2))
32
+ * validate that private key is not empty before upgrading to WaaS ([#11952](https://github.com/dynamic-labs/dynamic-auth/issues/11952)) ([21dfb83](https://github.com/dynamic-labs/dynamic-auth/commit/21dfb83cb29e42b335bc94a0cdd2062cf14a262a))
33
+
34
+ ### [4.92.3](https://github.com/dynamic-labs/dynamic-auth/compare/v4.92.2...v4.92.3) (2026-07-10)
35
+
36
+
37
+ ### Bug Fixes
38
+
39
+ * **sdk-react-core:** fix deterministic 'Wallet not found' crash in embedded wallet export (v4) ([#11906](https://github.com/dynamic-labs/dynamic-auth/issues/11906)) ([913ef23](https://github.com/dynamic-labs/dynamic-auth/commit/913ef236b26245488e1cd5db7e874601b65ff0a2)), closes [#11905](https://github.com/dynamic-labs/dynamic-auth/issues/11905) [#11729](https://github.com/dynamic-labs/dynamic-auth/issues/11729)
40
+
41
+ ### [4.92.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.92.1...v4.92.2) (2026-07-09)
42
+
43
+
44
+ ### Bug Fixes
45
+
46
+ * engage captcha during step-up OTP re-auth ([#11879](https://github.com/dynamic-labs/dynamic-auth/issues/11879)) ([585460a](https://github.com/dynamic-labs/dynamic-auth/commit/585460a8976803a8ed0aad16a4a00047bd6c115a))
47
+ * **waas:** gate v1 wallet upgrade on recovery for email-only wallets ([#11897](https://github.com/dynamic-labs/dynamic-auth/issues/11897)) ([5a6f0c6](https://github.com/dynamic-labs/dynamic-auth/commit/5a6f0c6bf3120e59cf502004d09fae56f193e977))
48
+
49
+ ### [4.92.1](https://github.com/dynamic-labs/dynamic-auth/compare/v4.92.0...v4.92.1) (2026-07-09)
50
+
51
+
52
+ ### Bug Fixes
53
+
54
+ * **ethereum:** fire in-app-browser redirect on sign for injected EVM wallets that use in-app-browser experience ([#11888](https://github.com/dynamic-labs/dynamic-auth/issues/11888)) ([5116d91](https://github.com/dynamic-labs/dynamic-auth/commit/5116d91ab2c71000a490d72c5d278549d4d8ae9a))
55
+ * **sdk-react-core:** show clear message for Phantom redirect signing failures (v4 backport) ([#11886](https://github.com/dynamic-labs/dynamic-auth/issues/11886)) ([60ac897](https://github.com/dynamic-labs/dynamic-auth/commit/60ac897ba81f7758ccd7a05f97b619785e1f50a7))
56
+ * **social:** use redirect strategy for step-up OAuth on mobile [V4 backport] ([#11881](https://github.com/dynamic-labs/dynamic-auth/issues/11881)) ([42a202e](https://github.com/dynamic-labs/dynamic-auth/commit/42a202e6255de8db73df02eff37c0b10b24fef1a))
57
+ * **solana:** fire in-app-browser redirect on sign and wallet switch ([#11871](https://github.com/dynamic-labs/dynamic-auth/issues/11871)) ([4e2d6b7](https://github.com/dynamic-labs/dynamic-auth/commit/4e2d6b7ac8fdef5bf7c62b8a726ecaef1c6210ec))
58
+ * **solana:** resolve Phantom/Backpack provider collision and Backpack >=0.10.x connect hangs ([#11856](https://github.com/dynamic-labs/dynamic-auth/issues/11856)) ([#11882](https://github.com/dynamic-labs/dynamic-auth/issues/11882)) ([5784aff](https://github.com/dynamic-labs/dynamic-auth/commit/5784aff9641bbc85445fb466f3ab1d6a14331e73))
59
+
60
+ ## [4.92.0](https://github.com/dynamic-labs/dynamic-auth/compare/v4.91.6...v4.92.0) (2026-07-08)
61
+
62
+
63
+ ### Features
64
+
65
+ * **captcha:** add Cloudflare Turnstile provider support alongside hCaptcha (v4) ([#11798](https://github.com/dynamic-labs/dynamic-auth/issues/11798)) ([114c770](https://github.com/dynamic-labs/dynamic-auth/commit/114c7702e900d8dedeebe7be867de35d11a93f31))
66
+
67
+
68
+ ### Bug Fixes
69
+
70
+ * **ethereum-aa:** resolve kernel client config per wallet (v4) ([#11870](https://github.com/dynamic-labs/dynamic-auth/issues/11870)) ([1b66d79](https://github.com/dynamic-labs/dynamic-auth/commit/1b66d79b4a32b4b6de433b7536bc46e6719224c6))
71
+ * **iframe-setup:** block dangerous URL schemes and verify sender in OPEN_URL ([#11819](https://github.com/dynamic-labs/dynamic-auth/issues/11819)) ([329b27e](https://github.com/dynamic-labs/dynamic-auth/commit/329b27e9fac825916ab227ec8cf93dc343898923))
72
+ * improve social OAuth error messages ([#11837](https://github.com/dynamic-labs/dynamic-auth/issues/11837)) ([8e57c06](https://github.com/dynamic-labs/dynamic-auth/commit/8e57c067c5a89111a32a12fb82e190cf6c46ad67))
73
+ * **react-native-extension:** reject path traversal in downloadFile fileName ([#11816](https://github.com/dynamic-labs/dynamic-auth/issues/11816)) ([9367a56](https://github.com/dynamic-labs/dynamic-auth/commit/9367a56b6daa853d7f7e7f5534261bc68825b239))
74
+ * **sdk-react-core:** display exactly the bytes signed in personal_sign preview ([#11818](https://github.com/dynamic-labs/dynamic-auth/issues/11818)) ([30b9382](https://github.com/dynamic-labs/dynamic-auth/commit/30b93829122f00060cb484aef09a03294c03f651))
75
+
3
76
 
4
77
  ### [4.91.6](https://github.com/dynamic-labs/dynamic-auth/compare/v4.91.5...v4.91.6) (2026-07-03)
5
78
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "5.0.0-rc.0";
6
+ var version = "5.0.0-rc.2";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "5.0.0-rc.0";
2
+ var version = "5.0.0-rc.2";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/wallet-connector-core",
3
- "version": "5.0.0-rc.0",
3
+ "version": "5.0.0-rc.2",
4
4
  "description": "Core package for utilities and types for handling multiple wallet/chain support Dynamic SDK",
5
5
  "author": "Dynamic Labs, Inc.",
6
6
  "license": "MIT",
@@ -18,16 +18,16 @@
18
18
  },
19
19
  "homepage": "https://www.dynamic.xyz/",
20
20
  "dependencies": {
21
- "@dynamic-labs-sdk/client": "1.12.1",
22
- "@dynamic-labs/sdk-api-core": "0.0.1046",
23
- "@dynamic-labs-wallet/browser-wallet-client": "1.0.48",
24
- "@dynamic-labs-wallet/forward-mpc-client": "0.12.0",
25
- "@dynamic-labs/assert-package-version": "5.0.0-rc.0",
26
- "@dynamic-labs/logger": "5.0.0-rc.0",
27
- "@dynamic-labs/rpc-providers": "5.0.0-rc.0",
28
- "@dynamic-labs/types": "5.0.0-rc.0",
29
- "@dynamic-labs/utils": "5.0.0-rc.0",
30
- "@dynamic-labs/wallet-book": "5.0.0-rc.0",
21
+ "@dynamic-labs-sdk/client": "1.18.0",
22
+ "@dynamic-labs/sdk-api-core": "0.0.1082",
23
+ "@dynamic-labs-wallet/browser-wallet-client": "1.0.70",
24
+ "@dynamic-labs-wallet/forward-mpc-client": "1.0.1",
25
+ "@dynamic-labs/assert-package-version": "5.0.0-rc.2",
26
+ "@dynamic-labs/logger": "5.0.0-rc.2",
27
+ "@dynamic-labs/rpc-providers": "5.0.0-rc.2",
28
+ "@dynamic-labs/types": "5.0.0-rc.2",
29
+ "@dynamic-labs/utils": "5.0.0-rc.2",
30
+ "@dynamic-labs/wallet-book": "5.0.0-rc.2",
31
31
  "eventemitter3": "5.0.1"
32
32
  },
33
33
  "peerDependencies": {}
package/src/index.cjs CHANGED
@@ -25,6 +25,7 @@ var isBloctoConnector = require('./utils/isBloctoConnector/isBloctoConnector.cjs
25
25
  var isPasskeyWalletConnector = require('./utils/isPasskeyWalletConnector/isPasskeyWalletConnector.cjs');
26
26
  var isAccountAbstractionConnector = require('./utils/isAccountAbstractionConnector/isAccountAbstractionConnector.cjs');
27
27
  var isBitcoinConnector = require('./utils/isBitcoinConnector/isBitcoinConnector.cjs');
28
+ var getMidnightNetworkTag = require('./utils/getMidnightNetworkTag/getMidnightNetworkTag.cjs');
28
29
  var isMidnightConnector = require('./utils/isMidnightConnector/isMidnightConnector.cjs');
29
30
  var isMidnightWallet = require('./utils/isMidnightWallet/isMidnightWallet.cjs');
30
31
  var isHardwareWalletConnector = require('./utils/isHardwareWalletConnector/isHardwareWalletConnector.cjs');
@@ -76,6 +77,7 @@ exports.isBloctoConnector = isBloctoConnector.isBloctoConnector;
76
77
  exports.isPasskeyWalletConnector = isPasskeyWalletConnector.isPasskeyWalletConnector;
77
78
  exports.isAccountAbstractionConnector = isAccountAbstractionConnector.isAccountAbstractionConnector;
78
79
  exports.isBitcoinConnector = isBitcoinConnector.isBitcoinConnector;
80
+ exports.getMidnightNetworkTag = getMidnightNetworkTag.getMidnightNetworkTag;
79
81
  exports.isMidnightConnector = isMidnightConnector.isMidnightConnector;
80
82
  exports.isMidnightWallet = isMidnightWallet.isMidnightWallet;
81
83
  exports.isHardwareWalletConnector = isHardwareWalletConnector.isHardwareWalletConnector;
package/src/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export { walletConnectorEvents, type ProviderReadyEventProps } from './events';
2
2
  export { type Attestation, type AuthenticatorRecoveryHandler, type AuthenticatorType, type BitcoinSignPsbtRequest, type BitcoinSignPsbtRequestSignature, type BitcoinSignPsbtResponse, type ExportHandler, type IAccountAbstractionWalletConnector, type IBitcoinWalletConnector, type IEmailOTPWalletConnector, type IEmailWalletConnector, type IHardwareWalletConnector, type IPasskeyWalletConnector, type IPhantomRedirectConnector, type IPhantomRedirectConnectorWithEvents, type ISendBalanceWalletConnector, type ISessionKeyCompatibleWalletConnector, type ISMSWalletConnector, type ITurnkeyWalletConnector, type ITurnkeyWalletConnectorStamper, type IWalletConnectConnector, type IZeroDevConnector, type Eip7702SignedAuthorization, type RecoveryEmailParams, type RecoveryWebAuthnAttestation, type SignAllTransactionsListener, type SignAndSendTransactionListener, type SignMessageListener, type SignTransactionListener, type WebAuthnAttestation, type IEthereumConnector, type IPublicClient, type ISolanaConnection, type IDynamicWaasConnector, type GetWalletPasswordFn, } from './interfaces';
3
3
  export type { AccountChangeEventHandler, ChainChangeEventHandler, DisconnectEventHandler, WalletConnectorCore, WalletMetadata, WalletDeepLinks, WalletDownloadLinks, WalletLimitations, WalletLinks, } from './types';
4
- export { addHexPrefix, bufferToHex, connectorRequiresDisconnectionForNewConnection, eventListenerHandlers, getChainInfo, getChainInfoWithOverrides, getDeepLink, getMobileExperience, getRpcUrlForChain, getWalletConnectorByKey, isAccountAbstractionConnector, isBitcoinConnector, isMidnightConnector, isMidnightWallet, type IMidnightWallet, type IMidnightWalletConnector, type MidnightFormattedBalances, isBloctoConnector, isEmailOTPWalletConnector, isEmailWalletConnector, isEmbeddedConnector, isHardwareWalletConnector, isHex, isMagicConnector, isPasskeyWalletConnector, isPhantomRedirectConnector, isSameAddress, isSendBalanceWalletConnector, isSessionKeyCompatibleWallet, isSessionKeyCompatibleWalletConnector, isSocialWalletConnector, isTurnkeyWalletConnector, isWalletConnectConnector, isConnectorMethodSupported, isConnectorEventSupported, getWalletProvider, getWalletMetadataFromWalletBook, getWalletLinks, logger, performPlatformSpecificConnectionMethod, ProviderLookup, setChainInfoOverrides, shouldLowercaseAddress, utf8ToHex, convertWalletToBaseWallet, convertWalletToBaseWalletPartial, type ChainDisplayOverrides, type DeepLinkVariant, type ProviderCondition, isDynamicWaasConnector, } from './utils';
4
+ export { addHexPrefix, bufferToHex, connectorRequiresDisconnectionForNewConnection, eventListenerHandlers, getChainInfo, getChainInfoWithOverrides, getDeepLink, getMobileExperience, getRpcUrlForChain, getWalletConnectorByKey, isAccountAbstractionConnector, isBitcoinConnector, getMidnightNetworkTag, isMidnightConnector, isMidnightWallet, type IMidnightWallet, type IMidnightWalletConnector, type MidnightFormattedBalances, isBloctoConnector, isEmailOTPWalletConnector, isEmailWalletConnector, isEmbeddedConnector, isHardwareWalletConnector, isHex, isMagicConnector, isPasskeyWalletConnector, isPhantomRedirectConnector, isSameAddress, isSendBalanceWalletConnector, isSessionKeyCompatibleWallet, isSessionKeyCompatibleWalletConnector, isSocialWalletConnector, isTurnkeyWalletConnector, isWalletConnectConnector, isConnectorMethodSupported, isConnectorEventSupported, getWalletProvider, getWalletMetadataFromWalletBook, getWalletLinks, logger, performPlatformSpecificConnectionMethod, ProviderLookup, setChainInfoOverrides, shouldLowercaseAddress, utf8ToHex, convertWalletToBaseWallet, convertWalletToBaseWalletPartial, type ChainDisplayOverrides, type DeepLinkVariant, type ProviderCondition, isDynamicWaasConnector, } from './utils';
5
5
  export { Wallet, type WalletConstructor, type WalletProps } from './Wallet';
6
6
  export { Chains, socialProviders, WalletConnectorBase, type Chain, type ChainInfo, type GetAddressOpts, type InternalWalletConnector, type NameServiceData, type PayloadParams, type SocialProvider, type WalletConnector, type WalletConnectorConstructor, type WalletConnectorEventTypes, type WalletConnectorExtension, type WalletConnectorsMethod, } from './WalletConnectorBase';
7
7
  export { WalletBookSingleton } from './WalletBookSingleton';
package/src/index.js CHANGED
@@ -21,6 +21,7 @@ export { isBloctoConnector } from './utils/isBloctoConnector/isBloctoConnector.j
21
21
  export { isPasskeyWalletConnector } from './utils/isPasskeyWalletConnector/isPasskeyWalletConnector.js';
22
22
  export { isAccountAbstractionConnector } from './utils/isAccountAbstractionConnector/isAccountAbstractionConnector.js';
23
23
  export { isBitcoinConnector } from './utils/isBitcoinConnector/isBitcoinConnector.js';
24
+ export { getMidnightNetworkTag } from './utils/getMidnightNetworkTag/getMidnightNetworkTag.js';
24
25
  export { isMidnightConnector } from './utils/isMidnightConnector/isMidnightConnector.js';
25
26
  export { isMidnightWallet } from './utils/isMidnightWallet/isMidnightWallet.js';
26
27
  export { isHardwareWalletConnector } from './utils/isHardwareWalletConnector/isHardwareWalletConnector.js';
@@ -1,4 +1,4 @@
1
- import { GetWalletResponse, MigrateFromFireblocksResponse, WalletRecoveryState } from '@dynamic-labs-wallet/browser-wallet-client';
1
+ import { GetWalletResponse, WalletRecoveryState } from '@dynamic-labs-wallet/browser-wallet-client';
2
2
  import { MFAAction, SignMessageContext, TokenScope } from '@dynamic-labs/sdk-api-core';
3
3
  import { WalletConnectorBase } from '..';
4
4
  interface GetMfaTokenFunction {
@@ -26,11 +26,26 @@ export interface IDynamicWaasConnector extends WalletConnectorBase {
26
26
  addressType?: string;
27
27
  network?: string;
28
28
  };
29
+ businessAccountId?: string;
29
30
  }): Promise<{
30
31
  accountAddress: string;
31
32
  publicKeyHex: string;
32
33
  rawPublicKey: string | Uint8Array | undefined;
33
34
  }>;
35
+ addSignerViaReshare(options: {
36
+ accountAddress: string;
37
+ walletId?: string;
38
+ businessAccountId: string;
39
+ targetSignerIdentity: {
40
+ userId?: string;
41
+ identifier?: string;
42
+ identifierType?: string;
43
+ };
44
+ signerType?: 'endUser' | 'server';
45
+ password?: string;
46
+ }): Promise<{
47
+ shareSetId: string;
48
+ }>;
34
49
  importPrivateKey({ privateKey, chainName, thresholdSignatureScheme, publicAddressCheck, addressType, legacyWalletId, password, }: {
35
50
  privateKey: string;
36
51
  chainName: string;
@@ -48,7 +63,7 @@ export interface IDynamicWaasConnector extends WalletConnectorBase {
48
63
  expectedAddresses: Record<string, string>;
49
64
  coinTypes?: Record<string, number>;
50
65
  password?: string;
51
- }): Promise<MigrateFromFireblocksResponse>;
66
+ }): Promise<Record<string, unknown>>;
52
67
  exportPrivateKey({ accountAddress, displayContainer, }: {
53
68
  accountAddress: string;
54
69
  displayContainer?: HTMLIFrameElement;
@@ -117,8 +132,9 @@ export interface IDynamicWaasConnector extends WalletConnectorBase {
117
132
  getWalletRecoveryState({ accountAddress, }: {
118
133
  accountAddress: string;
119
134
  }): Promise<WalletRecoveryState>;
120
- signRawMessage({ accountAddress, message, password, }: {
135
+ signRawMessage({ accountAddress, context, message, password, }: {
121
136
  accountAddress: string;
137
+ context?: SignMessageContext;
122
138
  message: string;
123
139
  password?: string;
124
140
  }): Promise<string>;
@@ -0,0 +1,23 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ /**
7
+ * Resolves the Midnight network tag ('mainnet' | 'preview') used to select the
8
+ * matching per-network additional address.
9
+ *
10
+ * Thin delegate: the connector owns network selection
11
+ * (`IMidnightWalletConnector.getSelectedMidnightNetwork`). Connectors that
12
+ * predate per-network support (or non-Midnight connectors) resolve to
13
+ * 'preview' — Midnight's legacy default network.
14
+ *
15
+ * @param connector - The (Midnight) wallet connector
16
+ * @returns 'mainnet' | 'preview'
17
+ */
18
+ const getMidnightNetworkTag = (connector) => {
19
+ var _a, _b;
20
+ return (_b = (_a = connector === null || connector === void 0 ? void 0 : connector.getSelectedMidnightNetwork) === null || _a === void 0 ? void 0 : _a.call(connector)) !== null && _b !== void 0 ? _b : 'preview';
21
+ };
22
+
23
+ exports.getMidnightNetworkTag = getMidnightNetworkTag;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Resolves the Midnight network tag ('mainnet' | 'preview') used to select the
3
+ * matching per-network additional address.
4
+ *
5
+ * Thin delegate: the connector owns network selection
6
+ * (`IMidnightWalletConnector.getSelectedMidnightNetwork`). Connectors that
7
+ * predate per-network support (or non-Midnight connectors) resolve to
8
+ * 'preview' — Midnight's legacy default network.
9
+ *
10
+ * @param connector - The (Midnight) wallet connector
11
+ * @returns 'mainnet' | 'preview'
12
+ */
13
+ export declare const getMidnightNetworkTag: (connector: unknown) => 'mainnet' | 'preview';
@@ -0,0 +1,19 @@
1
+ 'use client'
2
+ /**
3
+ * Resolves the Midnight network tag ('mainnet' | 'preview') used to select the
4
+ * matching per-network additional address.
5
+ *
6
+ * Thin delegate: the connector owns network selection
7
+ * (`IMidnightWalletConnector.getSelectedMidnightNetwork`). Connectors that
8
+ * predate per-network support (or non-Midnight connectors) resolve to
9
+ * 'preview' — Midnight's legacy default network.
10
+ *
11
+ * @param connector - The (Midnight) wallet connector
12
+ * @returns 'mainnet' | 'preview'
13
+ */
14
+ const getMidnightNetworkTag = (connector) => {
15
+ var _a, _b;
16
+ return (_b = (_a = connector === null || connector === void 0 ? void 0 : connector.getSelectedMidnightNetwork) === null || _a === void 0 ? void 0 : _a.call(connector)) !== null && _b !== void 0 ? _b : 'preview';
17
+ };
18
+
19
+ export { getMidnightNetworkTag };
@@ -0,0 +1 @@
1
+ export { getMidnightNetworkTag } from './getMidnightNetworkTag';
@@ -16,6 +16,7 @@ export * from './isBloctoConnector';
16
16
  export * from './isPasskeyWalletConnector';
17
17
  export * from './isAccountAbstractionConnector';
18
18
  export * from './isBitcoinConnector';
19
+ export * from './getMidnightNetworkTag';
19
20
  export * from './isMidnightConnector';
20
21
  export * from './isMidnightWallet';
21
22
  export * from './isHardwareWalletConnector';
@@ -6,6 +6,14 @@ import type { WalletConnector } from '../..';
6
6
  */
7
7
  export type IMidnightWalletConnector = WalletConnector & {
8
8
  midnightNetworks: GenericNetwork[];
9
+ /**
10
+ * Resolves the connector's currently selected network to the Midnight
11
+ * network tag used on per-network addresses and wallet-client calls.
12
+ * Optional: connectors that predate per-network support don't implement it,
13
+ * and callers should treat its absence as 'preview' (Midnight's legacy
14
+ * default network).
15
+ */
16
+ getSelectedMidnightNetwork?: () => 'preview' | 'mainnet';
9
17
  };
10
18
  /**
11
19
  * Type guard to check if a connector is a Midnight wallet connector.