@dynamic-labs/waas-sui 5.4.0 → 5.4.1

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,4 +1,16 @@
1
1
 
2
+ ### [5.4.1](https://github.com/dynamic-labs/dynamic-auth/compare/v5.4.0...v5.4.1) (2026-08-26)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * **webview-controller:** resolve which keychain key a session belongs to ([#12246](https://github.com/dynamic-labs/dynamic-auth/issues/12246)) ([3d110db](https://github.com/dynamic-labs/dynamic-auth/commit/3d110db831c6e9d82d07d86841f5c7733924b17e))
8
+ * **bitcoin:** forward the password through the BTC importPrivateKey override ([#12278](https://github.com/dynamic-labs/dynamic-auth/issues/12278)) ([21e1df3](https://github.com/dynamic-labs/dynamic-auth/commit/21e1df3e33e96e2efdb15ffa0fd29a441056202e))
9
+ * **react-native-extension:** recover 4.x expo-secure-store sessions on keychain miss ([#12254](https://github.com/dynamic-labs/dynamic-auth/issues/12254)) ([217e991](https://github.com/dynamic-labs/dynamic-auth/commit/217e991838f3073c12e2d2fab7a2e12830faad9e)), closes [#12092](https://github.com/dynamic-labs/dynamic-auth/issues/12092) [#12092](https://github.com/dynamic-labs/dynamic-auth/issues/12092) [#12092](https://github.com/dynamic-labs/dynamic-auth/issues/12092) [#12092](https://github.com/dynamic-labs/dynamic-auth/issues/12092) [#12242](https://github.com/dynamic-labs/dynamic-auth/issues/12242) [#12242](https://github.com/dynamic-labs/dynamic-auth/issues/12242)
10
+ * **transaction-card:** use walletConnector prop for network/fee instead of primaryWallet ([#12063](https://github.com/dynamic-labs/dynamic-auth/issues/12063)) ([81314d2](https://github.com/dynamic-labs/dynamic-auth/commit/81314d25fba4b20ab89631bc2d9ceeb9e2b6b2ac))
11
+ * **waas-svm:** instrument sponsorship retry attempts ([#12281](https://github.com/dynamic-labs/dynamic-auth/issues/12281)) ([7273a4b](https://github.com/dynamic-labs/dynamic-auth/commit/7273a4bc456cad512c0e9fbcd2abd66532a2f7df))
12
+ * **webview-controller:** recover 4.x secure-storage sessions and surface init failures ([#12242](https://github.com/dynamic-labs/dynamic-auth/issues/12242)) ([b51605c](https://github.com/dynamic-labs/dynamic-auth/commit/b51605cc9bdbb5d695173192c502a58d899bbbdd)), closes [#12094](https://github.com/dynamic-labs/dynamic-auth/issues/12094) [#12095](https://github.com/dynamic-labs/dynamic-auth/issues/12095) [#12098](https://github.com/dynamic-labs/dynamic-auth/issues/12098) [dynamic-labs/flutter-sdk#256](https://github.com/dynamic-labs/flutter-sdk/issues/256)
13
+
2
14
  ## [5.4.0](https://github.com/dynamic-labs/dynamic-auth/compare/v5.3.2...v5.4.0) (2026-08-25)
3
15
 
4
16
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "5.4.0";
6
+ var version = "5.4.1";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "5.4.0";
2
+ var version = "5.4.1";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/waas-sui",
3
- "version": "5.4.0",
3
+ "version": "5.4.1",
4
4
  "description": "A React SDK for implementing wallet web3 authentication and authorization to your website.",
5
5
  "author": "Dynamic Labs, Inc.",
6
6
  "license": "MIT",
@@ -24,15 +24,15 @@
24
24
  "@dynamic-labs-wallet/forward-mpc-client": "1.0.1",
25
25
  "@mysten/sui": "1.45.2",
26
26
  "@mysten/wallet-standard": "0.19.9",
27
- "@dynamic-labs/assert-package-version": "5.4.0",
28
- "@dynamic-labs/logger": "5.4.0",
29
- "@dynamic-labs/rpc-providers": "5.4.0",
30
- "@dynamic-labs/sui-core": "5.4.0",
31
- "@dynamic-labs/types": "5.4.0",
32
- "@dynamic-labs/utils": "5.4.0",
33
- "@dynamic-labs/waas": "5.4.0",
34
- "@dynamic-labs/wallet-book": "5.4.0",
35
- "@dynamic-labs/wallet-connector-core": "5.4.0"
27
+ "@dynamic-labs/assert-package-version": "5.4.1",
28
+ "@dynamic-labs/logger": "5.4.1",
29
+ "@dynamic-labs/rpc-providers": "5.4.1",
30
+ "@dynamic-labs/sui-core": "5.4.1",
31
+ "@dynamic-labs/types": "5.4.1",
32
+ "@dynamic-labs/utils": "5.4.1",
33
+ "@dynamic-labs/waas": "5.4.1",
34
+ "@dynamic-labs/wallet-book": "5.4.1",
35
+ "@dynamic-labs/wallet-connector-core": "5.4.1"
36
36
  },
37
37
  "peerDependencies": {}
38
38
  }
@@ -103,28 +103,6 @@ class DynamicWaasSuiConnector extends waas.withDynamicWaas(suiCore.SuiWalletConn
103
103
  }
104
104
  });
105
105
  }
106
- // Override importPrivateKey to use the proper type casting for SUI
107
- importPrivateKey(_a) {
108
- return _tslib.__awaiter(this, arguments, void 0, function* ({ privateKey, thresholdSignatureScheme = 'TWO_OF_TWO', publicAddressCheck, legacyWalletId, password, addressType, isRawScalarImport, }) {
109
- var _b, _c;
110
- const walletClient = yield this.getWaasWalletClient();
111
- const signedSessionId = yield ((_b = this.getSignedSessionId) === null || _b === void 0 ? void 0 : _b.call(this));
112
- if (!signedSessionId) {
113
- throw new utils.DynamicError('Signed session ID is required', 'signed_session_id_is_required');
114
- }
115
- yield walletClient.importPrivateKey({
116
- addressType,
117
- authToken: (_c = this.getAuthToken) === null || _c === void 0 ? void 0 : _c.call(this),
118
- isRawScalarImport,
119
- legacyWalletId,
120
- password,
121
- privateKey,
122
- publicAddressCheck,
123
- signedSessionId,
124
- thresholdSignatureScheme: thresholdSignatureScheme,
125
- });
126
- });
127
- }
128
106
  signMessage(message) {
129
107
  return _tslib.__awaiter(this, void 0, void 0, function* () {
130
108
  var _a, _b, _c, _d;
@@ -252,19 +230,18 @@ class DynamicWaasSuiConnector extends waas.withDynamicWaas(suiCore.SuiWalletConn
252
230
  });
253
231
  }
254
232
  // Chain-specific override for exportClientKeyshares - SUI needs to handle optional account address
255
- exportClientKeyshares(_a) {
233
+ exportClientKeyshares(params) {
256
234
  const _super = Object.create(null, {
257
235
  exportClientKeyshares: { get: () => super.exportClientKeyshares }
258
236
  });
259
- return _tslib.__awaiter(this, arguments, void 0, function* ({ accountAddress, password, }) {
260
- const targetAccountAddress = accountAddress || this.activeAccountAddress;
237
+ return _tslib.__awaiter(this, void 0, void 0, function* () {
238
+ const targetAccountAddress = params.accountAddress || this.activeAccountAddress;
261
239
  if (!targetAccountAddress) {
262
240
  throw new Error('Account address is required');
263
241
  }
264
- return _super.exportClientKeyshares.call(this, {
265
- accountAddress: targetAccountAddress,
266
- password,
267
- });
242
+ // Spread, so a field added to ExportClientKeysharesParams later still
243
+ // reaches the base instead of being silently dropped here.
244
+ return _super.exportClientKeyshares.call(this, Object.assign(Object.assign({}, params), { accountAddress: targetAccountAddress }));
268
245
  });
269
246
  }
270
247
  /** Function used to create transactions in the SDK interface */
@@ -6,7 +6,7 @@ import { SignedTransaction } from '@mysten/wallet-standard';
6
6
  import { MFAAction, TokenScope } from '@dynamic-labs/sdk-api-core';
7
7
  import { SuiWalletConnector, SuiWalletConnectorProps } from '@dynamic-labs/sui-core';
8
8
  import { IUITransaction } from '@dynamic-labs/types';
9
- import { IDynamicWaasConnector } from '@dynamic-labs/wallet-connector-core';
9
+ import { ExportClientKeysharesParams, IDynamicWaasConnector } from '@dynamic-labs/wallet-connector-core';
10
10
  import { WaasSuiWallet } from '../wallet/WaasSuiWallet';
11
11
  declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
12
12
  [x: string]: any;
@@ -69,12 +69,7 @@ declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
69
69
  getWaasWalletClient(traceContext?: import("dist/packages/waas/utils/instrumentation").TraceContext | undefined, { forceRebuild }?: {
70
70
  forceRebuild?: boolean | undefined;
71
71
  } | undefined): Promise<DynamicWalletClient>;
72
- createWalletAccount({ thresholdSignatureScheme, password, bitcoinConfig, businessAccountId, }?: {
73
- thresholdSignatureScheme?: string | undefined;
74
- password?: string | undefined;
75
- bitcoinConfig?: import("@dynamic-labs-wallet/browser-wallet-client").BitcoinConfig | undefined;
76
- businessAccountId?: string | undefined;
77
- } | undefined): Promise<{
72
+ createWalletAccount({ thresholdSignatureScheme, password, bitcoinConfig, businessAccountId, }?: import("@dynamic-labs/wallet-connector-core").CreateWalletAccountParams | undefined): Promise<{
78
73
  chainName: string;
79
74
  accountAddress: string;
80
75
  publicKeyHex: string;
@@ -94,15 +89,7 @@ declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
94
89
  }): Promise<{
95
90
  shareSetId: string;
96
91
  }>;
97
- importPrivateKey({ privateKey, thresholdSignatureScheme, publicAddressCheck, addressType, legacyWalletId, password, isRawScalarImport, }: {
98
- privateKey: string;
99
- thresholdSignatureScheme?: string | undefined;
100
- publicAddressCheck?: string | undefined;
101
- addressType?: string | undefined;
102
- legacyWalletId?: string | undefined;
103
- password?: string | undefined;
104
- isRawScalarImport?: boolean | undefined;
105
- }): Promise<void>;
92
+ importPrivateKey({ privateKey, thresholdSignatureScheme, publicAddressCheck, addressType, legacyWalletId, password, isRawScalarImport, }: import("@dynamic-labs/wallet-connector-core").ImportPrivateKeyParams): Promise<void>;
106
93
  migrateFromFireblocks({ deviceId, jwt, walletPassword, ncwStorage, expectedAddresses, coinTypes, password, }: {
107
94
  deviceId: string;
108
95
  jwt: string;
@@ -120,10 +107,7 @@ declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
120
107
  getExportHandler(): {
121
108
  clear: () => void;
122
109
  };
123
- exportClientKeyshares({ accountAddress, password, }: {
124
- accountAddress: string;
125
- password?: string | undefined;
126
- }): Promise<void>;
110
+ exportClientKeyshares({ accountAddress, password, }: ExportClientKeysharesParams): Promise<void>;
127
111
  runBackupLifecycle({ provider, accountAddress, password, performBackup, }: {
128
112
  provider: string;
129
113
  accountAddress: string;
@@ -139,11 +123,7 @@ declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
139
123
  };
140
124
  }) => Promise<void>;
141
125
  }): Promise<void>;
142
- backupKeySharesToGoogleDrive({ accountAddress, password, googleDriveAccessToken, }: {
143
- accountAddress: string;
144
- password?: string | undefined;
145
- googleDriveAccessToken?: string | undefined;
146
- }): Promise<void>;
126
+ backupKeySharesToGoogleDrive({ accountAddress, password, googleDriveAccessToken, }: import("@dynamic-labs/wallet-connector-core").BackupKeySharesToGoogleDriveParams): Promise<void>;
147
127
  exportClientKeysharesFromGoogleDrive({ accountAddress, password, }: {
148
128
  accountAddress: string;
149
129
  password?: string | undefined;
@@ -157,24 +137,13 @@ declare const DynamicWaasSuiConnector_base: (abstract new (...args: any[]) => {
157
137
  }): Promise<void>;
158
138
  hideICloudSignIn(): Promise<void>;
159
139
  isICloudAuthenticated(): Promise<boolean>;
160
- refreshWalletAccountShares({ accountAddress, password, }: {
161
- accountAddress: string;
162
- password?: string | undefined;
163
- }): Promise<void>;
164
- reshareWalletAccountShares({ accountAddress, thresholdSignatureScheme, password, }: {
165
- accountAddress: string;
166
- thresholdSignatureScheme: string;
167
- password?: string | undefined;
168
- }): Promise<void>;
140
+ refreshWalletAccountShares({ accountAddress, password, }: import("@dynamic-labs/wallet-connector-core").RefreshWalletAccountSharesParams): Promise<void>;
141
+ reshareWalletAccountShares({ accountAddress, thresholdSignatureScheme, password, }: import("@dynamic-labs/wallet-connector-core").ReshareWalletAccountSharesParams): Promise<void>;
169
142
  revokeDelegation({ accountAddress, password, }: {
170
143
  accountAddress: string;
171
144
  password?: string | undefined;
172
145
  }): Promise<void>;
173
- updatePassword({ accountAddress, existingPassword, newPassword, }: {
174
- accountAddress: string;
175
- existingPassword?: string | undefined;
176
- newPassword: string;
177
- }): Promise<void>;
146
+ updatePassword({ accountAddress, existingPassword, newPassword, }: import("@dynamic-labs/wallet-connector-core").UpdatePasswordParams): Promise<void>;
178
147
  setPassword({ accountAddress, newPassword, }: {
179
148
  accountAddress: string;
180
149
  newPassword: string;
@@ -248,16 +217,6 @@ export declare class DynamicWaasSuiConnector extends DynamicWaasSuiConnector_bas
248
217
  private setActiveAccountAddress;
249
218
  getActiveAccountAddress(): Promise<string | undefined>;
250
219
  validateActiveWallet(expectedAddress: string): Promise<void>;
251
- importPrivateKey({ privateKey, thresholdSignatureScheme, publicAddressCheck, legacyWalletId, password, addressType, isRawScalarImport, }: {
252
- privateKey: string;
253
- thresholdSignatureScheme?: string;
254
- publicAddressCheck?: string;
255
- legacyWalletId?: string;
256
- password?: string;
257
- addressType?: string;
258
- /** SUI is one of the ed25519 chains: `privateKey` may be a raw 32-byte scalar (hex). */
259
- isRawScalarImport?: boolean;
260
- }): Promise<void>;
261
220
  signMessage(message: string): Promise<string>;
262
221
  private createAndSignTransaction;
263
222
  signTransaction(transaction: Transaction): Promise<SignedTransaction>;
@@ -267,10 +226,7 @@ export declare class DynamicWaasSuiConnector extends DynamicWaasSuiConnector_bas
267
226
  accountAddress: string;
268
227
  }): Promise<DynamicWalletClient>;
269
228
  getWalletClient(): Promise<DynamicWalletClient | undefined>;
270
- exportClientKeyshares({ accountAddress, password, }: {
271
- accountAddress: string;
272
- password?: string;
273
- }): Promise<void>;
229
+ exportClientKeyshares(params: ExportClientKeysharesParams): Promise<void>;
274
230
  /** Function used to create transactions in the SDK interface */
275
231
  createUiTransaction(from: string): Promise<IUITransaction>;
276
232
  endSession(reason?: LogoutReason): Promise<void>;
@@ -99,28 +99,6 @@ class DynamicWaasSuiConnector extends withDynamicWaas(SuiWalletConnector) {
99
99
  }
100
100
  });
101
101
  }
102
- // Override importPrivateKey to use the proper type casting for SUI
103
- importPrivateKey(_a) {
104
- return __awaiter(this, arguments, void 0, function* ({ privateKey, thresholdSignatureScheme = 'TWO_OF_TWO', publicAddressCheck, legacyWalletId, password, addressType, isRawScalarImport, }) {
105
- var _b, _c;
106
- const walletClient = yield this.getWaasWalletClient();
107
- const signedSessionId = yield ((_b = this.getSignedSessionId) === null || _b === void 0 ? void 0 : _b.call(this));
108
- if (!signedSessionId) {
109
- throw new DynamicError('Signed session ID is required', 'signed_session_id_is_required');
110
- }
111
- yield walletClient.importPrivateKey({
112
- addressType,
113
- authToken: (_c = this.getAuthToken) === null || _c === void 0 ? void 0 : _c.call(this),
114
- isRawScalarImport,
115
- legacyWalletId,
116
- password,
117
- privateKey,
118
- publicAddressCheck,
119
- signedSessionId,
120
- thresholdSignatureScheme: thresholdSignatureScheme,
121
- });
122
- });
123
- }
124
102
  signMessage(message) {
125
103
  return __awaiter(this, void 0, void 0, function* () {
126
104
  var _a, _b, _c, _d;
@@ -248,19 +226,18 @@ class DynamicWaasSuiConnector extends withDynamicWaas(SuiWalletConnector) {
248
226
  });
249
227
  }
250
228
  // Chain-specific override for exportClientKeyshares - SUI needs to handle optional account address
251
- exportClientKeyshares(_a) {
229
+ exportClientKeyshares(params) {
252
230
  const _super = Object.create(null, {
253
231
  exportClientKeyshares: { get: () => super.exportClientKeyshares }
254
232
  });
255
- return __awaiter(this, arguments, void 0, function* ({ accountAddress, password, }) {
256
- const targetAccountAddress = accountAddress || this.activeAccountAddress;
233
+ return __awaiter(this, void 0, void 0, function* () {
234
+ const targetAccountAddress = params.accountAddress || this.activeAccountAddress;
257
235
  if (!targetAccountAddress) {
258
236
  throw new Error('Account address is required');
259
237
  }
260
- return _super.exportClientKeyshares.call(this, {
261
- accountAddress: targetAccountAddress,
262
- password,
263
- });
238
+ // Spread, so a field added to ExportClientKeysharesParams later still
239
+ // reaches the base instead of being silently dropped here.
240
+ return _super.exportClientKeyshares.call(this, Object.assign(Object.assign({}, params), { accountAddress: targetAccountAddress }));
264
241
  });
265
242
  }
266
243
  /** Function used to create transactions in the SDK interface */