@dynamic-labs/solana 3.5.0 → 3.6.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/CHANGELOG.md CHANGED
@@ -1,4 +1,24 @@
1
1
 
2
+ ## [3.6.0](https://github.com/dynamic-labs/DynamicAuth/compare/v3.5.1...v3.6.0) (2024-11-07)
3
+
4
+
5
+ ### Features
6
+
7
+ * Add a confirmation UI modal for signAllTransactions and signTransaction for Solana Embedded wallets. UI update to the embedded wallet confirmation UI modal.([#7381](https://github.com/dynamic-labs/DynamicAuth/issues/7381)) ([abac247](https://github.com/dynamic-labs/DynamicAuth/commit/abac247c53171dc05443ce20b4f152e5f25f27e5))
8
+
9
+
10
+ ### Bug Fixes
11
+
12
+ * confirmation modal popup after send balance flow ([#7382](https://github.com/dynamic-labs/DynamicAuth/issues/7382)) ([72d5848](https://github.com/dynamic-labs/DynamicAuth/commit/72d5848be2466879f2b3efbaf5c13885752513b0))
13
+ * network switch in global connectivity prevented publicClient call ([#7377](https://github.com/dynamic-labs/DynamicAuth/issues/7377)) ([a588497](https://github.com/dynamic-labs/DynamicAuth/commit/a5884978cbe3f875cef7560a004a0b127432ea9e))
14
+
15
+ ### [3.5.1](https://github.com/dynamic-labs/DynamicAuth/compare/v3.5.0...v3.5.1) (2024-11-05)
16
+
17
+
18
+ ### Features
19
+
20
+ * allow passing connection config to solana wallet connectors ([#7364](https://github.com/dynamic-labs/DynamicAuth/issues/7364)) ([5dd5176](https://github.com/dynamic-labs/DynamicAuth/commit/5dd5176e6f91d9771ce1d1af031ab1adb25f5b74))
21
+
2
22
  ## [3.5.0](https://github.com/dynamic-labs/DynamicAuth/compare/v3.4.6...v3.5.0) (2024-11-05)
3
23
 
4
24
 
package/package.cjs CHANGED
@@ -3,6 +3,6 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "3.5.0";
6
+ var version = "3.6.0";
7
7
 
8
8
  exports.version = version;
package/package.js CHANGED
@@ -1,4 +1,4 @@
1
1
  'use client'
2
- var version = "3.5.0";
2
+ var version = "3.6.0";
3
3
 
4
4
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/solana",
3
- "version": "3.5.0",
3
+ "version": "3.6.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
@@ -33,15 +33,15 @@
33
33
  "@wallet-standard/experimental-features": "0.1.1",
34
34
  "bs58": "5.0.0",
35
35
  "tweetnacl": "1.0.3",
36
- "@dynamic-labs/assert-package-version": "3.5.0",
37
- "@dynamic-labs/embedded-wallet-solana": "3.5.0",
38
- "@dynamic-labs/rpc-providers": "3.5.0",
36
+ "@dynamic-labs/assert-package-version": "3.6.0",
37
+ "@dynamic-labs/embedded-wallet-solana": "3.6.0",
38
+ "@dynamic-labs/rpc-providers": "3.6.0",
39
39
  "@dynamic-labs/sdk-api-core": "0.0.559",
40
- "@dynamic-labs/solana-core": "3.5.0",
41
- "@dynamic-labs/types": "3.5.0",
42
- "@dynamic-labs/utils": "3.5.0",
43
- "@dynamic-labs/wallet-book": "3.5.0",
44
- "@dynamic-labs/wallet-connector-core": "3.5.0"
40
+ "@dynamic-labs/solana-core": "3.6.0",
41
+ "@dynamic-labs/types": "3.6.0",
42
+ "@dynamic-labs/utils": "3.6.0",
43
+ "@dynamic-labs/wallet-book": "3.6.0",
44
+ "@dynamic-labs/wallet-connector-core": "3.6.0"
45
45
  },
46
46
  "peerDependencies": {}
47
47
  }
@@ -0,0 +1,21 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var embeddedWalletSolana = require('@dynamic-labs/embedded-wallet-solana');
7
+ var Phantom = require('./Phantom.cjs');
8
+ var fetchInjectedWalletConnectors = require('./injected/fetchInjectedWalletConnectors.cjs');
9
+ var UnknownInjected = require('./injected/UnknownInjected.cjs');
10
+ var FallbackSolanaConnector = require('./injected/FallbackSolanaConnector.cjs');
11
+
12
+ const SolanaWalletConnectors = (props) => [
13
+ ...fetchInjectedWalletConnectors.injectedWalletOverrides,
14
+ ...fetchInjectedWalletConnectors.fetchInjectedWalletConnectors(props),
15
+ ...embeddedWalletSolana.TurnkeySolanaWalletConnectors(props),
16
+ Phantom.Phantom,
17
+ UnknownInjected.UnknownInjected,
18
+ FallbackSolanaConnector.FallbackSolanaConnector,
19
+ ];
20
+
21
+ exports.SolanaWalletConnectors = SolanaWalletConnectors;
@@ -0,0 +1,2 @@
1
+ import { WalletConnectorConstructor } from '@dynamic-labs/wallet-connector-core';
2
+ export declare const SolanaWalletConnectors: (props: any) => WalletConnectorConstructor[];
@@ -0,0 +1,17 @@
1
+ 'use client'
2
+ import { TurnkeySolanaWalletConnectors } from '@dynamic-labs/embedded-wallet-solana';
3
+ import { Phantom } from './Phantom.js';
4
+ import { injectedWalletOverrides, fetchInjectedWalletConnectors } from './injected/fetchInjectedWalletConnectors.js';
5
+ import { UnknownInjected } from './injected/UnknownInjected.js';
6
+ import { FallbackSolanaConnector } from './injected/FallbackSolanaConnector.js';
7
+
8
+ const SolanaWalletConnectors = (props) => [
9
+ ...injectedWalletOverrides,
10
+ ...fetchInjectedWalletConnectors(props),
11
+ ...TurnkeySolanaWalletConnectors(props),
12
+ Phantom,
13
+ UnknownInjected,
14
+ FallbackSolanaConnector,
15
+ ];
16
+
17
+ export { SolanaWalletConnectors };
@@ -0,0 +1,26 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var SolanaWalletConnectors = require('../SolanaWalletConnectors.cjs');
7
+
8
+ /**
9
+ * Allows passing in Solana connection configuration to all wallet connectors.
10
+ */
11
+ const SolanaWalletConnectorsWithConfig = (connectionConfig) => {
12
+ // Idea here is to ensure that all wallet connectors are constructed with
13
+ // the client-provided connection configuration, so we "wrap" the constructors with it.
14
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
+ const classWithConfig = (className) => class extends className {
16
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
+ constructor(...args) {
18
+ const [opts] = args;
19
+ super(Object.assign(Object.assign({}, opts), { connectionConfig }));
20
+ }
21
+ };
22
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
+ return (props) => SolanaWalletConnectors.SolanaWalletConnectors(props).map(classWithConfig);
24
+ };
25
+
26
+ exports.SolanaWalletConnectorsWithConfig = SolanaWalletConnectorsWithConfig;
@@ -0,0 +1,6 @@
1
+ import { ConnectionConfig } from '@solana/web3.js';
2
+ import { WalletConnectorConstructor } from '@dynamic-labs/wallet-connector-core';
3
+ /**
4
+ * Allows passing in Solana connection configuration to all wallet connectors.
5
+ */
6
+ export declare const SolanaWalletConnectorsWithConfig: (connectionConfig: ConnectionConfig) => (props: any) => WalletConnectorConstructor[];
@@ -0,0 +1,22 @@
1
+ 'use client'
2
+ import { SolanaWalletConnectors } from '../SolanaWalletConnectors.js';
3
+
4
+ /**
5
+ * Allows passing in Solana connection configuration to all wallet connectors.
6
+ */
7
+ const SolanaWalletConnectorsWithConfig = (connectionConfig) => {
8
+ // Idea here is to ensure that all wallet connectors are constructed with
9
+ // the client-provided connection configuration, so we "wrap" the constructors with it.
10
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
+ const classWithConfig = (className) => class extends className {
12
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
13
+ constructor(...args) {
14
+ const [opts] = args;
15
+ super(Object.assign(Object.assign({}, opts), { connectionConfig }));
16
+ }
17
+ };
18
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
+ return (props) => SolanaWalletConnectors(props).map(classWithConfig);
20
+ };
21
+
22
+ export { SolanaWalletConnectorsWithConfig };
@@ -0,0 +1 @@
1
+ export * from './SolanaWalletConnectorsWithConfig';
package/src/index.cjs CHANGED
@@ -4,30 +4,17 @@
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var assertPackageVersion = require('@dynamic-labs/assert-package-version');
7
- var embeddedWalletSolana = require('@dynamic-labs/embedded-wallet-solana');
8
7
  var _package = require('../package.cjs');
9
- var Phantom = require('./Phantom.cjs');
10
- var fetchInjectedWalletConnectors = require('./injected/fetchInjectedWalletConnectors.cjs');
11
- var UnknownInjected = require('./injected/UnknownInjected.cjs');
12
- var FallbackSolanaConnector = require('./injected/FallbackSolanaConnector.cjs');
13
- var isSignedMessage = require('./utils/isSignedMessage.cjs');
14
- var isBackpackSolanaSigner = require('./utils/isBackpackSolanaSigner.cjs');
15
8
  var solanaCore = require('@dynamic-labs/solana-core');
16
9
  var InjectedWalletBase = require('./injected/InjectedWalletBase.cjs');
10
+ var SolanaWalletConnectors = require('./SolanaWalletConnectors.cjs');
11
+ var SolanaWalletConnectorsWithConfig = require('./SolanaWalletConnectorsWithConfig/SolanaWalletConnectorsWithConfig.cjs');
12
+ var isBackpackSolanaSigner = require('./utils/isBackpackSolanaSigner.cjs');
13
+ var isSignedMessage = require('./utils/isSignedMessage.cjs');
17
14
 
18
15
  /* eslint-disable @typescript-eslint/no-unused-vars */
19
16
  assertPackageVersion.assertPackageVersion('@dynamic-labs/solana', _package.version);
20
- const SolanaWalletConnectors = (props) => [
21
- ...fetchInjectedWalletConnectors.injectedWalletOverrides,
22
- ...fetchInjectedWalletConnectors.fetchInjectedWalletConnectors(props),
23
- ...embeddedWalletSolana.TurnkeySolanaWalletConnectors(props),
24
- Phantom.Phantom,
25
- UnknownInjected.UnknownInjected,
26
- FallbackSolanaConnector.FallbackSolanaConnector,
27
- ];
28
17
 
29
- exports.isSignedMessage = isSignedMessage.isSignedMessage;
30
- exports.isBackpackSolanaSigner = isBackpackSolanaSigner.isBackpackSolanaSigner;
31
18
  Object.defineProperty(exports, 'SolanaWalletConnector', {
32
19
  enumerable: true,
33
20
  get: function () { return solanaCore.SolanaWalletConnector; }
@@ -37,4 +24,7 @@ Object.defineProperty(exports, 'isSolanaWallet', {
37
24
  get: function () { return solanaCore.isSolanaWallet; }
38
25
  });
39
26
  exports.SolanaInjectedConnector = InjectedWalletBase.InjectedWalletBase;
40
- exports.SolanaWalletConnectors = SolanaWalletConnectors;
27
+ exports.SolanaWalletConnectors = SolanaWalletConnectors.SolanaWalletConnectors;
28
+ exports.SolanaWalletConnectorsWithConfig = SolanaWalletConnectorsWithConfig.SolanaWalletConnectorsWithConfig;
29
+ exports.isBackpackSolanaSigner = isBackpackSolanaSigner.isBackpackSolanaSigner;
30
+ exports.isSignedMessage = isSignedMessage.isSignedMessage;
package/src/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { Phantom } from './Phantom';
2
- export declare const SolanaWalletConnectors: (props: any) => (import("dist/packages/wallet-connector-core/src").WalletConnectorConstructor | typeof Phantom)[];
3
- export { isSignedMessage } from './utils/isSignedMessage';
4
- export { isBackpackSolanaSigner } from './utils/isBackpackSolanaSigner';
5
1
  export type { IEmbeddedWalletSolanaSigner } from '@dynamic-labs/embedded-wallet-solana';
6
2
  export { isSolanaWallet, SolanaWalletConnector, } from '@dynamic-labs/solana-core';
7
3
  export { InjectedWalletBase as SolanaInjectedConnector } from './injected/InjectedWalletBase';
4
+ export { SolanaWalletConnectors } from './SolanaWalletConnectors';
5
+ export { SolanaWalletConnectorsWithConfig } from './SolanaWalletConnectorsWithConfig';
6
+ export { isBackpackSolanaSigner } from './utils/isBackpackSolanaSigner';
7
+ export { isSignedMessage } from './utils/isSignedMessage';
package/src/index.js CHANGED
@@ -1,25 +1,12 @@
1
1
  'use client'
2
2
  import { assertPackageVersion } from '@dynamic-labs/assert-package-version';
3
- import { TurnkeySolanaWalletConnectors } from '@dynamic-labs/embedded-wallet-solana';
4
3
  import { version } from '../package.js';
5
- import { Phantom } from './Phantom.js';
6
- import { injectedWalletOverrides, fetchInjectedWalletConnectors } from './injected/fetchInjectedWalletConnectors.js';
7
- import { UnknownInjected } from './injected/UnknownInjected.js';
8
- import { FallbackSolanaConnector } from './injected/FallbackSolanaConnector.js';
9
- export { isSignedMessage } from './utils/isSignedMessage.js';
10
- export { isBackpackSolanaSigner } from './utils/isBackpackSolanaSigner.js';
11
4
  export { SolanaWalletConnector, isSolanaWallet } from '@dynamic-labs/solana-core';
12
5
  export { InjectedWalletBase as SolanaInjectedConnector } from './injected/InjectedWalletBase.js';
6
+ export { SolanaWalletConnectors } from './SolanaWalletConnectors.js';
7
+ export { SolanaWalletConnectorsWithConfig } from './SolanaWalletConnectorsWithConfig/SolanaWalletConnectorsWithConfig.js';
8
+ export { isBackpackSolanaSigner } from './utils/isBackpackSolanaSigner.js';
9
+ export { isSignedMessage } from './utils/isSignedMessage.js';
13
10
 
14
11
  /* eslint-disable @typescript-eslint/no-unused-vars */
15
12
  assertPackageVersion('@dynamic-labs/solana', version);
16
- const SolanaWalletConnectors = (props) => [
17
- ...injectedWalletOverrides,
18
- ...fetchInjectedWalletConnectors(props),
19
- ...TurnkeySolanaWalletConnectors(props),
20
- Phantom,
21
- UnknownInjected,
22
- FallbackSolanaConnector,
23
- ];
24
-
25
- export { SolanaWalletConnectors };
@@ -53,6 +53,8 @@ class InjectedWalletBase extends solanaCore.SolanaWalletConnector {
53
53
  from,
54
54
  onSubmit: (transaction) => _tslib.__awaiter(this, void 0, void 0, function* () {
55
55
  var _a;
56
+ if (!transaction)
57
+ return;
56
58
  const signer = yield this.getSigner();
57
59
  if (!signer)
58
60
  throw new Error('Signer not found');
@@ -72,7 +74,6 @@ class InjectedWalletBase extends solanaCore.SolanaWalletConnector {
72
74
  return (yield signer.signAndSendTransaction(transaction)).signature;
73
75
  }),
74
76
  });
75
- transaction.feeDeducted = true;
76
77
  return transaction;
77
78
  });
78
79
  }
@@ -49,6 +49,8 @@ class InjectedWalletBase extends SolanaWalletConnector {
49
49
  from,
50
50
  onSubmit: (transaction) => __awaiter(this, void 0, void 0, function* () {
51
51
  var _a;
52
+ if (!transaction)
53
+ return;
52
54
  const signer = yield this.getSigner();
53
55
  if (!signer)
54
56
  throw new Error('Signer not found');
@@ -68,7 +70,6 @@ class InjectedWalletBase extends SolanaWalletConnector {
68
70
  return (yield signer.signAndSendTransaction(transaction)).signature;
69
71
  }),
70
72
  });
71
- transaction.feeDeducted = true;
72
73
  return transaction;
73
74
  });
74
75
  }