@dynamic-labs/webview-messages 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/webview-messages",
3
- "version": "5.0.0-rc.0",
3
+ "version": "5.0.0-rc.2",
4
4
  "description": "A package to define messages for the webview-controller",
5
5
  "author": "Dynamic Labs, Inc.",
6
6
  "license": "MIT",
@@ -18,16 +18,16 @@
18
18
  "./package.json": "./package.json"
19
19
  },
20
20
  "dependencies": {
21
- "@dynamic-labs/ethereum-gasless-core": "5.0.0-rc.0",
22
- "@dynamic-labs/sdk-api-core": "0.0.1046",
23
- "@dynamic-labs-sdk/client": "1.12.1",
24
- "@dynamic-labs/assert-package-version": "5.0.0-rc.0",
25
- "@dynamic-labs/locale": "5.0.0-rc.0",
26
- "@dynamic-labs/logger": "5.0.0-rc.0",
27
- "@dynamic-labs/message-transport": "5.0.0-rc.0",
28
- "@dynamic-labs/types": "5.0.0-rc.0",
29
- "@dynamic-labs/wallet-connector-core": "5.0.0-rc.0",
30
- "@dynamic-labs/webauthn": "5.0.0-rc.0"
21
+ "@dynamic-labs/ethereum-gasless-core": "5.0.0-rc.2",
22
+ "@dynamic-labs/sdk-api-core": "0.0.1082",
23
+ "@dynamic-labs-sdk/client": "1.18.0",
24
+ "@dynamic-labs/assert-package-version": "5.0.0-rc.2",
25
+ "@dynamic-labs/locale": "5.0.0-rc.2",
26
+ "@dynamic-labs/logger": "5.0.0-rc.2",
27
+ "@dynamic-labs/message-transport": "5.0.0-rc.2",
28
+ "@dynamic-labs/types": "5.0.0-rc.2",
29
+ "@dynamic-labs/wallet-connector-core": "5.0.0-rc.2",
30
+ "@dynamic-labs/webauthn": "5.0.0-rc.2"
31
31
  },
32
32
  "peerDependencies": {}
33
33
  }
@@ -6,12 +6,42 @@ export type CreateEmbeddedWalletArgs = {
6
6
  chains?: (keyof typeof EmbeddedWalletChainEnum)[];
7
7
  password?: string;
8
8
  };
9
+ export type UpgradeToDynamicWaasArgs = {
10
+ /** The exported private key of the legacy wallet being upgraded. */
11
+ privateKey: string;
12
+ /**
13
+ * The id of the legacy wallet to upgrade. Defaults to the first legacy
14
+ * wallet that still needs migration when omitted.
15
+ */
16
+ walletId?: string;
17
+ /** Optional password used to encrypt the new WaaS wallet key shares. */
18
+ password?: string;
19
+ };
20
+ /**
21
+ * Serializable descriptor of a legacy Turnkey embedded wallet that still needs
22
+ * to be migrated to Dynamic WaaS. Surfaced to native consumers so a headless
23
+ * migration UI can list the wallets to upgrade without access to the
24
+ * webview-side `useLegacyWalletsToMigrate` hook.
25
+ */
26
+ export type LegacyWalletToMigrate = {
27
+ id: string;
28
+ address: string;
29
+ chain: string;
30
+ };
9
31
  export type EmbeddedWalletsModuleState = {
10
32
  hasWallet: boolean;
33
+ /** Legacy Turnkey wallets on the current user that still need migration. */
34
+ legacyWalletsToMigrate: LegacyWalletToMigrate[];
11
35
  };
12
36
  export type EmbeddedWalletsModuleMessages = {
13
37
  getWallet: () => Promise<BaseWallet | null>;
14
38
  createWallet: (args?: CreateEmbeddedWalletArgs) => Promise<BaseWallet | BaseWallet[]>;
39
+ /**
40
+ * Programmatically upgrades a legacy Turnkey embedded wallet to a Dynamic
41
+ * WaaS wallet without opening the migration modal — the no-UI (headless)
42
+ * counterpart of `ui.wallets.promptUpgradeToDynamicWaasFlow`.
43
+ */
44
+ upgradeToDynamicWaas: (args: UpgradeToDynamicWaasArgs) => Promise<void>;
15
45
  embeddedWalletCreated: (verifiedCredential: JwtVerifiedCredential | null) => void;
16
46
  embeddedWalletRevealSuccess: (wallet: BaseWallet) => void;
17
47
  embeddedWalletRevealFailure: (error: SerializedError) => void;
@@ -60,11 +60,23 @@ export type ClientManifest = {
60
60
  deviceRegistrationModal?: {
61
61
  enabled: boolean;
62
62
  };
63
+ /**
64
+ * Controls the legacy embedded wallet migration modal behavior.
65
+ * When set to { autoOpen: false }, the SDK will not automatically open the
66
+ * forced migration modal when a legacy Turnkey wallet is detected on a
67
+ * project whose default wallet version is V3. Headless consumers that build
68
+ * their own migration UI (and call
69
+ * `client.wallets.embedded.upgradeToDynamicWaas`) should disable it.
70
+ * @default { autoOpen: true }
71
+ */
72
+ legacyWalletMigrationModal?: {
73
+ autoOpen: boolean;
74
+ };
63
75
  /**
64
76
  * If true, use MetaMask SDK for MetaMask connections.
65
- * If false or undefined, use WalletConnect for MetaMask connections.
77
+ * If false, use WalletConnect for MetaMask connections.
66
78
  * Only applies to mobile platforms (react-native, flutter, swift).
67
- * @default false
79
+ * @default true
68
80
  */
69
81
  useMetamaskSdk?: boolean;
70
82
  /**
@@ -1,3 +1,4 @@
1
+ import { SignMessageContext } from '@dynamic-labs/sdk-api-core';
1
2
  export type ImportPrivateKeyArgs = {
2
3
  chain?: string;
3
4
  privateKey: string;
@@ -41,6 +42,13 @@ export type SignRawMessageArgs = {
41
42
  accountAddress: string;
42
43
  message: string;
43
44
  password?: string;
45
+ /**
46
+ * Sign context forwarded to the MPC relay policy engine (e.g. the
47
+ * transaction or user operation the raw digest was derived from, or the
48
+ * chain-agnostic `rawSign` pre-image descriptor). Required by environments
49
+ * whose signing policy rejects context-less raw signs.
50
+ */
51
+ context?: SignMessageContext;
44
52
  };
45
53
  export type UnlockWalletArgs = {
46
54
  accountAddress: string;