@crossmint/wallets-sdk 0.5.2 → 0.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.
Files changed (92) hide show
  1. package/dist/api/client.cjs +1 -1
  2. package/dist/api/client.d.cts +6 -2
  3. package/dist/api/client.d.ts +6 -2
  4. package/dist/api/client.js +1 -1
  5. package/dist/api/gen/types.gen.d.cts +35 -0
  6. package/dist/api/gen/types.gen.d.ts +35 -0
  7. package/dist/api/index.cjs +1 -1
  8. package/dist/api/index.d.cts +1 -1
  9. package/dist/api/index.d.ts +1 -1
  10. package/dist/api/index.js +1 -1
  11. package/dist/api/types.d.cts +4 -1
  12. package/dist/api/types.d.ts +4 -1
  13. package/dist/{chunk-D67AZHCX.cjs → chunk-22NLCTH3.cjs} +1 -1
  14. package/dist/chunk-3LGWGGCM.js +1 -0
  15. package/dist/chunk-62C33UL4.cjs +1 -0
  16. package/dist/chunk-7K5B5Q3Y.cjs +1 -0
  17. package/dist/chunk-BUI2QYUC.js +1 -0
  18. package/dist/chunk-DGPUMPXP.cjs +1 -0
  19. package/dist/chunk-DNWDTJR6.cjs +1 -0
  20. package/dist/{chunk-SYBJ7MT3.js → chunk-EFRCLQXM.js} +1 -1
  21. package/dist/{chunk-FEHPDTLM.js → chunk-NVRT2CJB.js} +1 -1
  22. package/dist/{chunk-NOQASYSI.cjs → chunk-P6OETJSN.cjs} +1 -1
  23. package/dist/{chunk-B62JJITC.cjs → chunk-PQH5C2OM.cjs} +1 -1
  24. package/dist/{chunk-THYR3NRL.js → chunk-QWYYZW5W.js} +1 -1
  25. package/dist/{chunk-USEBBJLH.cjs → chunk-RWMILVIE.cjs} +1 -1
  26. package/dist/{chunk-O3UGYUNV.js → chunk-VORKK52Z.js} +1 -1
  27. package/dist/chunk-W5FFWAOI.js +1 -0
  28. package/dist/{chunk-7QMIL57Y.cjs → chunk-WBLNMQR2.cjs} +1 -1
  29. package/dist/chunk-YLMKJ56K.js +1 -0
  30. package/dist/chunk-ZJL3PQCL.js +1 -0
  31. package/dist/evm/index.cjs +1 -1
  32. package/dist/evm/index.d.cts +1 -1
  33. package/dist/evm/index.d.ts +1 -1
  34. package/dist/evm/index.js +1 -1
  35. package/dist/evm/types/wallet.d.cts +32 -41
  36. package/dist/evm/types/wallet.d.ts +32 -41
  37. package/dist/evm/wallet.cjs +1 -1
  38. package/dist/evm/wallet.d.cts +71 -21
  39. package/dist/evm/wallet.d.ts +71 -21
  40. package/dist/evm/wallet.js +1 -1
  41. package/dist/index.cjs +1 -1
  42. package/dist/index.d.cts +5 -5
  43. package/dist/index.d.ts +5 -5
  44. package/dist/index.js +1 -1
  45. package/dist/{options-DGElO-xR.d.cts → options-BfWQ7h7d.d.cts} +19 -30
  46. package/dist/{options-DmcWBOpe.d.ts → options-Dwn6w8Ar.d.ts} +19 -30
  47. package/dist/sdk.cjs +1 -1
  48. package/dist/sdk.d.cts +1 -1
  49. package/dist/sdk.d.ts +1 -1
  50. package/dist/sdk.js +1 -1
  51. package/dist/services/types.d.cts +1 -2
  52. package/dist/services/types.d.ts +1 -2
  53. package/dist/services/wallet-factory.cjs +1 -1
  54. package/dist/services/wallet-factory.d.cts +1 -1
  55. package/dist/services/wallet-factory.d.ts +1 -1
  56. package/dist/services/wallet-factory.js +1 -1
  57. package/dist/solana/index.cjs +1 -1
  58. package/dist/solana/index.d.cts +2 -2
  59. package/dist/solana/index.d.ts +2 -2
  60. package/dist/solana/index.js +1 -1
  61. package/dist/solana/services/approvals-service.cjs +1 -1
  62. package/dist/solana/services/approvals-service.d.cts +2 -2
  63. package/dist/solana/services/approvals-service.d.ts +2 -2
  64. package/dist/solana/services/approvals-service.js +1 -1
  65. package/dist/solana/services/delegated-signers-service.cjs +1 -1
  66. package/dist/solana/services/delegated-signers-service.d.cts +2 -2
  67. package/dist/solana/services/delegated-signers-service.d.ts +2 -2
  68. package/dist/solana/services/delegated-signers-service.js +1 -1
  69. package/dist/solana/services/transactions-service.cjs +1 -1
  70. package/dist/solana/services/transactions-service.d.cts +1 -1
  71. package/dist/solana/services/transactions-service.d.ts +1 -1
  72. package/dist/solana/services/transactions-service.js +1 -1
  73. package/dist/solana/types/wallet.d.cts +18 -10
  74. package/dist/solana/types/wallet.d.ts +18 -10
  75. package/dist/solana/wallet.cjs +1 -1
  76. package/dist/solana/wallet.d.cts +2 -2
  77. package/dist/solana/wallet.d.ts +2 -2
  78. package/dist/solana/wallet.js +1 -1
  79. package/dist/utils/constants.cjs +1 -1
  80. package/dist/utils/constants.js +1 -1
  81. package/dist/utils/options.d.cts +1 -1
  82. package/dist/utils/options.d.ts +1 -1
  83. package/package.json +4 -4
  84. package/dist/chunk-7IGI7P26.js +0 -1
  85. package/dist/chunk-C4BKKX7I.cjs +0 -1
  86. package/dist/chunk-CKCQ2NTZ.js +0 -1
  87. package/dist/chunk-EOV2V3ZM.cjs +0 -1
  88. package/dist/chunk-FK6GUFCI.js +0 -1
  89. package/dist/chunk-RB66U3DD.cjs +0 -1
  90. package/dist/chunk-RF3DRJOH.js +0 -1
  91. package/dist/chunk-RNRZUJGI.js +0 -1
  92. package/dist/chunk-RWCX6PZU.cjs +0 -1
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkUSEBBJLHcjs = require('../chunk-USEBBJLH.cjs');require('../chunk-NOQASYSI.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.ApiClient = _chunkUSEBBJLHcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkRWMILVIEcjs = require('../chunk-RWMILVIE.cjs');require('../chunk-P6OETJSN.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.ApiClient = _chunkRWMILVIEcjs.a;
@@ -17,14 +17,18 @@ declare class ApiClient extends CrossmintApiClient {
17
17
  approveSignature(walletLocator: WalletLocator, signatureId: string, params: ApproveSignatureParams): Promise<ApproveSignatureResponse>;
18
18
  getSignature(walletLocator: EvmWalletLocator, signatureId: string): Promise<GetSignatureResponse>;
19
19
  getTransactions(walletLocator: WalletLocator): Promise<GetTransactionsResponse>;
20
- unstable_getNfts(chain: string, walletLocator: WalletLocator, perPage: number, page: number): Promise<GetNftsResponse>;
20
+ unstable_getNfts(params: {
21
+ walletLocator: WalletLocator;
22
+ perPage: number;
23
+ page: number;
24
+ chain: string;
25
+ }): Promise<GetNftsResponse>;
21
26
  getBalance(walletLocator: WalletLocator, params: {
22
27
  chains?: string[];
23
28
  tokens: string[];
24
29
  }): Promise<GetBalanceResponse>;
25
30
  registerSigner(walletLocator: WalletLocator, params: RegisterSignerParams): Promise<RegisterSignerResponse>;
26
31
  getSigner(walletLocator: WalletLocator, signer: string): Promise<GetSignerResponse>;
27
- getDelegatedSigners(walletLocator: WalletLocator): Promise<GetSignerResponse[]>;
28
32
  get isServerSide(): boolean;
29
33
  get environment(): _crossmint_common_sdk_base.APIKeyEnvironmentPrefix;
30
34
  private get headers();
@@ -17,14 +17,18 @@ declare class ApiClient extends CrossmintApiClient {
17
17
  approveSignature(walletLocator: WalletLocator, signatureId: string, params: ApproveSignatureParams): Promise<ApproveSignatureResponse>;
18
18
  getSignature(walletLocator: EvmWalletLocator, signatureId: string): Promise<GetSignatureResponse>;
19
19
  getTransactions(walletLocator: WalletLocator): Promise<GetTransactionsResponse>;
20
- unstable_getNfts(chain: string, walletLocator: WalletLocator, perPage: number, page: number): Promise<GetNftsResponse>;
20
+ unstable_getNfts(params: {
21
+ walletLocator: WalletLocator;
22
+ perPage: number;
23
+ page: number;
24
+ chain: string;
25
+ }): Promise<GetNftsResponse>;
21
26
  getBalance(walletLocator: WalletLocator, params: {
22
27
  chains?: string[];
23
28
  tokens: string[];
24
29
  }): Promise<GetBalanceResponse>;
25
30
  registerSigner(walletLocator: WalletLocator, params: RegisterSignerParams): Promise<RegisterSignerResponse>;
26
31
  getSigner(walletLocator: WalletLocator, signer: string): Promise<GetSignerResponse>;
27
- getDelegatedSigners(walletLocator: WalletLocator): Promise<GetSignerResponse[]>;
28
32
  get isServerSide(): boolean;
29
33
  get environment(): _crossmint_common_sdk_base.APIKeyEnvironmentPrefix;
30
34
  private get headers();
@@ -1 +1 @@
1
- import{a}from"../chunk-RF3DRJOH.js";import"../chunk-THYR3NRL.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{a as ApiClient};
1
+ import{a}from"../chunk-3LGWGGCM.js";import"../chunk-QWYYZW5W.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{a as ApiClient};
@@ -2655,6 +2655,41 @@ type WalletV1Alpha2ResponseDto = {
2655
2655
  */
2656
2656
  locator: string;
2657
2657
  };
2658
+ /**
2659
+ * Optional array of additional signers for the wallet
2660
+ */
2661
+ delegatedSigners?: Array<{
2662
+ /**
2663
+ * Specifies the type of Solana signer being used, describing the method of key management and transaction signing.
2664
+ */
2665
+ type: 'solana-keypair' | 'solana-fireblocks-custodial';
2666
+ /**
2667
+ * The locator of the signer
2668
+ */
2669
+ locator: string;
2670
+ /**
2671
+ * The transaction for the signer
2672
+ */
2673
+ transaction: {
2674
+ onChain?: {
2675
+ transaction?: string;
2676
+ lastValidBlockHeight?: number;
2677
+ };
2678
+ id?: string;
2679
+ status?: string;
2680
+ approvals?: {
2681
+ required?: number;
2682
+ pending?: Array<{
2683
+ signer?: string;
2684
+ message?: string;
2685
+ }>;
2686
+ submitted?: Array<{
2687
+ [key: string]: unknown;
2688
+ }>;
2689
+ };
2690
+ createdAt?: string;
2691
+ };
2692
+ }>;
2658
2693
  };
2659
2694
  /**
2660
2695
  * The onchain address of the wallet
@@ -2655,6 +2655,41 @@ type WalletV1Alpha2ResponseDto = {
2655
2655
  */
2656
2656
  locator: string;
2657
2657
  };
2658
+ /**
2659
+ * Optional array of additional signers for the wallet
2660
+ */
2661
+ delegatedSigners?: Array<{
2662
+ /**
2663
+ * Specifies the type of Solana signer being used, describing the method of key management and transaction signing.
2664
+ */
2665
+ type: 'solana-keypair' | 'solana-fireblocks-custodial';
2666
+ /**
2667
+ * The locator of the signer
2668
+ */
2669
+ locator: string;
2670
+ /**
2671
+ * The transaction for the signer
2672
+ */
2673
+ transaction: {
2674
+ onChain?: {
2675
+ transaction?: string;
2676
+ lastValidBlockHeight?: number;
2677
+ };
2678
+ id?: string;
2679
+ status?: string;
2680
+ approvals?: {
2681
+ required?: number;
2682
+ pending?: Array<{
2683
+ signer?: string;
2684
+ message?: string;
2685
+ }>;
2686
+ submitted?: Array<{
2687
+ [key: string]: unknown;
2688
+ }>;
2689
+ };
2690
+ createdAt?: string;
2691
+ };
2692
+ }>;
2658
2693
  };
2659
2694
  /**
2660
2695
  * The onchain address of the wallet
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var _chunkUSEBBJLHcjs = require('../chunk-USEBBJLH.cjs');require('../chunk-ECAM5KTH.cjs');require('../chunk-NOQASYSI.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.ApiClient = _chunkUSEBBJLHcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var _chunkRWMILVIEcjs = require('../chunk-RWMILVIE.cjs');require('../chunk-ECAM5KTH.cjs');require('../chunk-P6OETJSN.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.ApiClient = _chunkRWMILVIEcjs.a;
@@ -1,5 +1,5 @@
1
1
  export { ApiClient } from './client.cjs';
2
- export { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, EvmWalletLocator, GetBalanceResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletLocator } from './types.cjs';
2
+ export { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, DelegatedSigner, EvmWalletLocator, GetBalanceResponse, GetDelegatedSignersResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletBalance, WalletLocator } from './types.cjs';
3
3
  import '@crossmint/common-sdk-base';
4
4
  import 'viem';
5
5
  import './gen/types.gen.cjs';
@@ -1,5 +1,5 @@
1
1
  export { ApiClient } from './client.js';
2
- export { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, EvmWalletLocator, GetBalanceResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletLocator } from './types.js';
2
+ export { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, DelegatedSigner, EvmWalletLocator, GetBalanceResponse, GetDelegatedSignersResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletBalance, WalletLocator } from './types.js';
3
3
  import '@crossmint/common-sdk-base';
4
4
  import 'viem';
5
5
  import './gen/types.gen.js';
package/dist/api/index.js CHANGED
@@ -1 +1 @@
1
- import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-RF3DRJOH.js";import"../chunk-KBJA7JDT.js";import"../chunk-THYR3NRL.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{a as ApiClient};
1
+ import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-3LGWGGCM.js";import"../chunk-KBJA7JDT.js";import"../chunk-QWYYZW5W.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{a as ApiClient};
@@ -19,13 +19,16 @@ type GetSignatureResponse = WalletsV1Alpha2SignatureResponseDto | WalletsV1Contr
19
19
  type GetTransactionsResponse = WalletsV1Alpha2TransactionsResponseDto | WalletsV1ControllerGetTransactionsWithoutChain4Error;
20
20
  type GetNftsResponse = Nftevm | Nftsol | FetchContentFromWalletError;
21
21
  type GetBalanceResponse = WalletBalanceResponseDto | BalanceControllerGetBalanceForLocator2Error;
22
+ type WalletBalance = WalletBalanceResponseDto;
22
23
  type RegisterSignerParams = CreateSignerInputDto;
23
24
  type RegisterSignerResponse = DelegatedSignerDto | WalletsV1ControllerCreateDelegatedSigner4Error;
24
25
  type GetSignerResponse = DelegatedSignerDto | WalletsV1ControllerGetDelegatedSigner4Error;
26
+ type GetDelegatedSignersResponse = Array<DelegatedSignerDto> | WalletsV1ControllerGetDelegatedSigner4Error;
27
+ type DelegatedSigner = DelegatedSignerDto;
25
28
  type WalletType = CreateWalletDto["type"];
26
29
  type EvmWalletLocator = `me:${WalletType}` | Address;
27
30
  type SolanaAddress = string;
28
31
  type SolanaWalletLocator = `me:${WalletType}` | SolanaAddress;
29
32
  type WalletLocator = EvmWalletLocator | SolanaWalletLocator;
30
33
 
31
- export type { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, EvmWalletLocator, GetBalanceResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletLocator };
34
+ export type { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, DelegatedSigner, EvmWalletLocator, GetBalanceResponse, GetDelegatedSignersResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletBalance, WalletLocator };
@@ -19,13 +19,16 @@ type GetSignatureResponse = WalletsV1Alpha2SignatureResponseDto | WalletsV1Contr
19
19
  type GetTransactionsResponse = WalletsV1Alpha2TransactionsResponseDto | WalletsV1ControllerGetTransactionsWithoutChain4Error;
20
20
  type GetNftsResponse = Nftevm | Nftsol | FetchContentFromWalletError;
21
21
  type GetBalanceResponse = WalletBalanceResponseDto | BalanceControllerGetBalanceForLocator2Error;
22
+ type WalletBalance = WalletBalanceResponseDto;
22
23
  type RegisterSignerParams = CreateSignerInputDto;
23
24
  type RegisterSignerResponse = DelegatedSignerDto | WalletsV1ControllerCreateDelegatedSigner4Error;
24
25
  type GetSignerResponse = DelegatedSignerDto | WalletsV1ControllerGetDelegatedSigner4Error;
26
+ type GetDelegatedSignersResponse = Array<DelegatedSignerDto> | WalletsV1ControllerGetDelegatedSigner4Error;
27
+ type DelegatedSigner = DelegatedSignerDto;
25
28
  type WalletType = CreateWalletDto["type"];
26
29
  type EvmWalletLocator = `me:${WalletType}` | Address;
27
30
  type SolanaAddress = string;
28
31
  type SolanaWalletLocator = `me:${WalletType}` | SolanaAddress;
29
32
  type WalletLocator = EvmWalletLocator | SolanaWalletLocator;
30
33
 
31
- export type { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, EvmWalletLocator, GetBalanceResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletLocator };
34
+ export type { ApproveSignatureParams, ApproveSignatureResponse, ApproveTransactionParams, ApproveTransactionResponse, CreateSignatureParams, CreateSignatureResponse, CreateTransactionParams, CreateTransactionResponse, CreateTransactionSuccessResponse, CreateWalletParams, CreateWalletResponse, DelegatedSigner, EvmWalletLocator, GetBalanceResponse, GetDelegatedSignersResponse, GetNftsResponse, GetSignatureResponse, GetSignerResponse, GetTransactionResponse, GetTransactionsResponse, GetWalletResponse, GetWalletSuccessResponse, RegisterSignerParams, RegisterSignerResponse, SolanaWalletLocator, WalletBalance, WalletLocator };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkB62JJITCcjs = require('./chunk-B62JJITC.cjs');var _chunkDANM4IBFcjs = require('./chunk-DANM4IBF.cjs');var _chunkNOQASYSIcjs = require('./chunk-NOQASYSI.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var A=class{constructor(t,r,n=new (0, _chunkB62JJITCcjs.a)(t,r),a={}){this.walletLocator=t;this.apiClient=r;this.approvalsService=n;this.callbacks=a}createSignAndConfirm(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a,s,o,e;yield(s=(a=this.callbacks).onTransactionStart)==null?void 0:s.call(a,t.transaction);let r=yield this.create(t);yield this.approveTransaction(r.id,[...t.signer!=null?[t.signer]:[],...t.additionalSigners||[]]);let n=yield this.waitForTransaction(r.id);return yield(e=(o=this.callbacks).onTransactionComplete)==null?void 0:e.call(o,t.transaction),n})}getTransactions(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.apiClient.getTransactions(this.walletLocator)})}approveTransaction(t,r){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a;let n=yield this.apiClient.getTransaction(this.walletLocator,t);if(n.error)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(n));n.status==="awaiting-approval"&&(yield this.approvalsService.approve(n,((a=n.approvals)==null?void 0:a.pending)||[],r))})}create(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let{transaction:r,signer:n,additionalSigners:a}=t,s=_chunkCK4JCQY6cjs.a.call(void 0, _chunkCK4JCQY6cjs.a.call(void 0, {transaction:_bs582.default.encode(r.serialize())},n?{signer:n.address}:{}),a?{additionalSigners:a.map(e=>e.address)}:{}),o=yield this.apiClient.createTransaction(this.walletLocator,{params:s});if(o.error)throw new (0, _chunkCT2UGJELcjs.q)(JSON.stringify(o));return o})}waitForTransaction(t,r=6e4){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var o,e,w,d,g,S,h,T;let n=Date.now(),a;do{if(Date.now()-n>r){let i=new (0, _chunkCT2UGJELcjs.s)("Transaction confirmation timeout");throw yield(e=(o=this.callbacks).onTransactionFail)==null?void 0:e.call(o,i),i}if(a=yield this.apiClient.getTransaction(this.walletLocator,t),a.error)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(a));yield _chunkDANM4IBFcjs.a.call(void 0, _chunkNOQASYSIcjs.e)}while(a.status==="pending");if(a.status==="failed"){let i=new (0, _chunkCT2UGJELcjs.t)(`Transaction sending failed: ${JSON.stringify(a.error)}`);throw yield(d=(w=this.callbacks).onTransactionFail)==null?void 0:d.call(w,i),i}if(a.status==="awaiting-approval"){let i=new (0, _chunkCT2UGJELcjs.u)("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(S=(g=this.callbacks).onTransactionFail)==null?void 0:S.call(g,i),i}let s=a.onChain.txId;if(s==null){let i=new (0, _chunkCT2UGJELcjs.v)("Transaction hash not found on transaction response");throw yield(T=(h=this.callbacks).onTransactionFail)==null?void 0:T.call(h,i),i}return s})}};exports.a = A;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkPQH5C2OMcjs = require('./chunk-PQH5C2OM.cjs');var _chunkDANM4IBFcjs = require('./chunk-DANM4IBF.cjs');var _chunkP6OETJSNcjs = require('./chunk-P6OETJSN.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var A=class{constructor(t,r,n=new (0, _chunkPQH5C2OMcjs.a)(t,r),a={}){this.walletLocator=t;this.apiClient=r;this.approvalsService=n;this.callbacks=a}createSignAndConfirm(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a,s,o,e;yield(s=(a=this.callbacks).onTransactionStart)==null?void 0:s.call(a,t.transaction);let r=yield this.create(t);yield this.approveTransaction(r.id,[...t.signer!=null?[t.signer]:[],...t.additionalSigners||[]]);let n=yield this.waitForTransaction(r.id);return yield(e=(o=this.callbacks).onTransactionComplete)==null?void 0:e.call(o,t.transaction),n})}getTransactions(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.apiClient.getTransactions(this.walletLocator)})}approveTransaction(t,r){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a;let n=yield this.apiClient.getTransaction(this.walletLocator,t);if(n.error)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(n));n.status==="awaiting-approval"&&(yield this.approvalsService.approve(n,((a=n.approvals)==null?void 0:a.pending)||[],r))})}create(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let{transaction:r,signer:n,additionalSigners:a}=t,s=_chunkCK4JCQY6cjs.a.call(void 0, _chunkCK4JCQY6cjs.a.call(void 0, {transaction:_bs582.default.encode(r.serialize())},n?{signer:n.address}:{}),a?{additionalSigners:a.map(e=>e.address)}:{}),o=yield this.apiClient.createTransaction(this.walletLocator,{params:s});if(o.error)throw new (0, _chunkCT2UGJELcjs.q)(JSON.stringify(o));return o})}waitForTransaction(t,r=6e4){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var o,e,w,d,g,S,h,T;let n=Date.now(),a;do{if(Date.now()-n>r){let i=new (0, _chunkCT2UGJELcjs.s)("Transaction confirmation timeout");throw yield(e=(o=this.callbacks).onTransactionFail)==null?void 0:e.call(o,i),i}if(a=yield this.apiClient.getTransaction(this.walletLocator,t),a.error)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(a));yield _chunkDANM4IBFcjs.a.call(void 0, _chunkP6OETJSNcjs.e)}while(a.status==="pending");if(a.status==="failed"){let i=new (0, _chunkCT2UGJELcjs.t)(`Transaction sending failed: ${JSON.stringify(a.error)}`);throw yield(d=(w=this.callbacks).onTransactionFail)==null?void 0:d.call(w,i),i}if(a.status==="awaiting-approval"){let i=new (0, _chunkCT2UGJELcjs.u)("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(S=(g=this.callbacks).onTransactionFail)==null?void 0:S.call(g,i),i}let s=a.onChain.txId;if(s==null){let i=new (0, _chunkCT2UGJELcjs.v)("Transaction hash not found on transaction response");throw yield(T=(h=this.callbacks).onTransactionFail)==null?void 0:T.call(h,i),i}return s})}};exports.a = A;
@@ -0,0 +1 @@
1
+ import{b as n,c as i}from"./chunk-QWYYZW5W.js";import{a as o}from"./chunk-7ENJXL4H.js";import{c as r}from"./chunk-22GIA4MK.js";import{APIKeyUsageOrigin as h,CrossmintApiClient as g}from"@crossmint/common-sdk-base";var p=class extends g{constructor(e,s){super(e,{internalConfig:{sdkMetadata:{name:i,version:n}}});this.appId=s;this.apiPrefix="api/2022-06-09/wallets"}createWallet(e){return r(this,null,function*(){let s=this.isServerSide?`${this.apiPrefix}`:`${this.apiPrefix}/me`;return(yield this.post(s,{body:JSON.stringify(e),headers:this.headers})).json()})}getWallet(e){return r(this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()})}createTransaction(e,s){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveTransaction(e,s,t){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getTransaction(e,s){return r(this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveSignature(e,s,t){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getSignature(e,s){return r(this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return r(this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}unstable_getNfts(e){return r(this,null,function*(){let s=new URLSearchParams;s.append("page",e.page.toString()),s.append("perPage",e.perPage.toString());let t=`${e.chain}:${e.walletLocator}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return r(this,null,function*(){let t=new URLSearchParams;return s.chains&&s.chains.forEach(c=>t.append("chains",c)),t.append("tokens",s.tokens.join(",")),(yield this.get(`api/v1-alpha2/wallets/${e}/balances?${t.toString()}`,{headers:this.headers})).json()})}registerSigner(e,s){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signers`,{body:JSON.stringify(s),headers:this.headers})).json()})}getSigner(e,s){return r(this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signers/${s}`,{headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===h.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new o("Invalid API key");return this.parsedAPIKey.environment}get headers(){let e={"Content-Type":"application/json"};return this.appId&&(e["X-App-Identifier"]=this.appId),e}};export{p as a};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkDNWDTJR6cjs = require('./chunk-DNWDTJR6.cjs');var _chunk22NLCTH3cjs = require('./chunk-22NLCTH3.cjs');var _chunk6XOH62PVcjs = require('./chunk-6XOH62PV.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var o=class{constructor(e,a,i,t){this.apiClient=e;this.publicKey=a;this.client=i;this.callbacks=t;this.transactionsService=new (0, _chunk22NLCTH3cjs.a)(this.walletLocator,this.apiClient),this.delegatedSignerService=new (0, _chunkDNWDTJR6cjs.a)(this.walletLocator,this.transactionsService,e)}get address(){return this.publicKey.toBase58()}getBalances(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let a=yield this.apiClient.getBalance(this.address,{tokens:e.tokens});if("error"in a)throw new Error(`Failed to get balances: ${JSON.stringify(a.error)}`);return a})}getTransactions(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.transactionsService.getTransactions()})}unstable_getNfts(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a;return yield this.apiClient.unstable_getNfts({walletLocator:(a=e.locator)!=null?a:this.walletLocator,perPage:e.perPage,page:e.page,chain:"solana"})})}get walletLocator(){return this.apiClient.isServerSide?this.address:"me:solana-smart-wallet"}},g= exports.b =class extends o{constructor(e,a,i,t,u){super(e,a,t,u),this.adminSigner=_chunk6XOH62PVcjs.d.call(void 0, i)}sendTransaction(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var t;let a=this.getEffectiveTransactionSigner(e.delegatedSigner),i=(t=e.additionalSigners)==null?void 0:t.map(_chunk6XOH62PVcjs.a);return yield this.transactionsService.createSignAndConfirm({transaction:e.transaction,signer:a,additionalSigners:i})})}addDelegatedSigner(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.delegatedSignerService.registerDelegatedSigner(e,_chunk6XOH62PVcjs.c.call(void 0, this.adminSigner)?this.adminSigner:void 0)})}getDelegatedSigners(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.delegatedSignerService.getDelegatedSigners()})}getEffectiveTransactionSigner(e){return e==null?_chunk6XOH62PVcjs.c.call(void 0, this.adminSigner)?this.adminSigner:void 0:_chunk6XOH62PVcjs.a.call(void 0, e)}},p= exports.c =class extends o{sendTransaction(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a;return yield this.transactionsService.createSignAndConfirm({transaction:e.transaction,additionalSigners:(a=e.additionalSigners)==null?void 0:a.map(_chunk6XOH62PVcjs.a)})})}};exports.a = o; exports.b = g; exports.c = p;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk6DTBGTSScjs = require('./chunk-6DTBGTSS.cjs');var _chunkJFUBHJ2Ccjs = require('./chunk-JFUBHJ2C.cjs');var _chunkDANM4IBFcjs = require('./chunk-DANM4IBF.cjs');var _chunkP6OETJSNcjs = require('./chunk-P6OETJSN.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _ox = require('ox');var _viem = require('viem');var H=class{constructor(t,a,e,n){this.address=t;this.apiClient=a;this.adminSigner=e;this.callbacks=n}getBalances(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let a=yield this.apiClient.getBalance(this.address,{chains:[t.chain],tokens:t.tokens});if("error"in a)throw new Error(`Failed to get balances: ${JSON.stringify(a.error)}`);return a})}getTransactions(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let t=yield this.apiClient.getTransactions(this.walletLocator);if("error"in t)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(t));return t.transactions.filter(a=>a.walletType==="evm-smart-wallet")})}unstable_getNfts(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.apiClient.unstable_getNfts(_chunkCK4JCQY6cjs.b.call(void 0, _chunkCK4JCQY6cjs.a.call(void 0, {},t),{walletLocator:this.walletLocator}))})}getNonce(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var n;return yield this.getViemClient({chain:t.chain,transport:t==null?void 0:t.transport}).readContract({abi:_chunk6DTBGTSScjs.a,address:_chunkP6OETJSNcjs.d,functionName:"getNonce",args:[this.address,(n=t==null?void 0:t.key)!=null?n:BigInt(0)]})})}signMessage(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var r;let a=yield this.createSignature(t),e=a.id,n=((r=a.approvals)==null?void 0:r.pending)||[],i=yield this.approveSignature(n,e);return yield this.waitForSignature(e),i})}signTypedData(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var r;let a=yield this.createTypedDataSignature(t),e=a.id,n=((r=a.approvals)==null?void 0:r.pending)||[],i=yield this.approveSignature(n,e);return yield this.waitForSignature(e),i})}sendTransaction(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var n,i,r;yield(i=(n=this.callbacks)==null?void 0:n.onTransactionStart)==null?void 0:i.call(n,t);let a=yield this.createTransaction(t),e=a.id;return yield this.approveTransaction(((r=a.approvals)==null?void 0:r.pending)||[],e),yield this.waitForTransaction(e)})}getViemClient(t){var a;return _viem.createPublicClient.call(void 0, {transport:(a=t.transport)!=null?a:_viem.http.call(void 0, ),chain:_chunkJFUBHJ2Ccjs.c.call(void 0, t.chain)})}get walletLocator(){return this.apiClient.isServerSide?this.address:"me:evm-smart-wallet"}get signerLocator(){return this.adminSigner.locator}signWithAdminSigner(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){switch(this.adminSigner.type){case"evm-passkey":{if(this.adminSigner.signingCallback)return this.adminSigner.signingCallback(t);let{metadata:a,signature:e}=yield _ox.WebAuthnP256.sign({credentialId:this.adminSigner.id,challenge:t});return{signature:_viem.concat.call(void 0, [`0x${e.r.toString(16)}`,`0x${e.s.toString(16)}`]),metadata:a}}case"evm-keypair":{let a=this.adminSigner.address;if(this.adminSigner.signer.type==="viem_v2"){let e=this.adminSigner.signer.account;if(!e.signMessage)throw new (0, _chunkCT2UGJELcjs.n)("Account does not support signMessage");return{signature:yield e.signMessage({message:{raw:t}})}}else return{signature:yield this.adminSigner.signer.provider.request({method:"personal_sign",params:[t,a]})}}}})}createTransaction(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var e;let a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:this.signerLocator,chain:t.chain,calls:[{to:t.to,value:t.value?t.value.toString():"0",data:(e=t.data)!=null?e:"0x"}]}});if("error"in a)throw new (0, _chunkCT2UGJELcjs.q)(JSON.stringify(a));return a})}approveTransaction(t,a){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var l,g;let e=t.find(p=>p.signer===this.signerLocator);if(!e){let p=new (0, _chunkCT2UGJELcjs.i)(`Signer ${this.signerLocator} not found in pending approvals`);throw yield(g=(l=this.callbacks)==null?void 0:l.onTransactionFail)==null?void 0:g.call(l,p),p}let n=e.message,{signature:i,metadata:r}=yield this.signWithAdminSigner(n),c=yield this.apiClient.approveTransaction(this.walletLocator,a,{approvals:[_chunkCK4JCQY6cjs.a.call(void 0, {signer:this.signerLocator,signature:this.adminSigner.type==="evm-passkey"?{r:i.slice(0,66),s:`0x${i.slice(66)}`}:i},r&&{metadata:r})]});if("error"in c)throw new (0, _chunkCT2UGJELcjs.w)(JSON.stringify(c))})}waitForTransaction(t,a=6e4){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var r,c,l,g,p,h,d,T;let e=Date.now(),n;do{if(Date.now()-e>a){let o=new (0, _chunkCT2UGJELcjs.s)("Transaction confirmation timeout");throw yield(c=(r=this.callbacks).onTransactionFail)==null?void 0:c.call(r,o),o}if(n=yield this.apiClient.getTransaction(this.walletLocator,t),"error"in n)throw new (0, _chunkCT2UGJELcjs.r)(JSON.stringify(n));yield _chunkDANM4IBFcjs.a.call(void 0, _chunkP6OETJSNcjs.e)}while(n.status==="pending");if(n.status==="failed"){let o=new (0, _chunkCT2UGJELcjs.t)(`Transaction sending failed: ${JSON.stringify(n.error)}`);throw yield(g=(l=this.callbacks).onTransactionFail)==null?void 0:g.call(l,o),o}if(n.status==="awaiting-approval"){let o=new (0, _chunkCT2UGJELcjs.u)("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(h=(p=this.callbacks).onTransactionFail)==null?void 0:h.call(p,o),o}let i=n.onChain.txId;if(i==null){let o=new (0, _chunkCT2UGJELcjs.v)("Transaction hash not found on transaction response");throw yield(T=(d=this.callbacks).onTransactionFail)==null?void 0:T.call(d,o),o}return i})}createSignature(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){if(typeof t.message!="string")throw new (0, _chunkCT2UGJELcjs.j)("Message must be a string");let a=yield this.apiClient.createSignature(this.walletLocator,{type:"evm-message",params:{message:t.message,signer:this.signerLocator,chain:t.chain}});if("error"in a)throw new (0, _chunkCT2UGJELcjs.o)(JSON.stringify(a));return a})}createTypedDataSignature(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let{domain:a,message:e,primaryType:n,types:i,chain:r}=t;if(!a||!e||!i||!r)throw new (0, _chunkCT2UGJELcjs.k)("Invalid typed data");let{name:c,version:l,chainId:g,verifyingContract:p,salt:h}=a;if(!c||!l||!g||!p)throw new (0, _chunkCT2UGJELcjs.k)("Invalid typed data domain");let d=yield this.apiClient.createSignature(this.walletLocator,{type:"evm-typed-data",params:{typedData:{domain:{name:c,version:l,chainId:Number(g),verifyingContract:p,salt:h},message:e,primaryType:n,types:i},signer:this.signerLocator,chain:r,isSmartWalletSignature:!1}});if("error"in d)throw new (0, _chunkCT2UGJELcjs.o)(JSON.stringify(d));return d})}approveSignature(t,a){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let e=t.find(c=>c.signer===this.signerLocator);if(!e)throw new (0, _chunkCT2UGJELcjs.i)(`Signer ${this.signerLocator} not found in pending approvals`);let n=e.message,{signature:i,metadata:r}=yield this.signWithAdminSigner(n);if(i===void 0)throw new (0, _chunkCT2UGJELcjs.l)("Signature not available");return yield this.apiClient.approveSignature(this.walletLocator,a,{approvals:[{signer:this.signerLocator,signature:this.adminSigner.type==="evm-passkey"?{r:i.slice(0,66),s:`0x${i.slice(66)}`}:i,metadata:r}]}),i})}waitForSignature(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let a=null;do if(yield _chunkDANM4IBFcjs.a.call(void 0, _chunkP6OETJSNcjs.e),a=yield this.apiClient.getSignature(this.walletLocator,t),"error"in a)throw new (0, _chunkCT2UGJELcjs.p)(JSON.stringify(a));while(a===null||a.status==="pending");if(a.status==="failed")throw new (0, _chunkCT2UGJELcjs.m)("Signature signing failed")})}};exports.a = H;
@@ -0,0 +1 @@
1
+ import{a as d}from"./chunk-YLMKJ56K.js";import{a as S}from"./chunk-VORKK52Z.js";import{a as r,c as s,d as c}from"./chunk-6W35AARC.js";import{c as n}from"./chunk-22GIA4MK.js";var o=class{constructor(e,a,i,t){this.apiClient=e;this.publicKey=a;this.client=i;this.callbacks=t;this.transactionsService=new S(this.walletLocator,this.apiClient),this.delegatedSignerService=new d(this.walletLocator,this.transactionsService,e)}get address(){return this.publicKey.toBase58()}getBalances(e){return n(this,null,function*(){let a=yield this.apiClient.getBalance(this.address,{tokens:e.tokens});if("error"in a)throw new Error(`Failed to get balances: ${JSON.stringify(a.error)}`);return a})}getTransactions(){return n(this,null,function*(){return yield this.transactionsService.getTransactions()})}unstable_getNfts(e){return n(this,null,function*(){var a;return yield this.apiClient.unstable_getNfts({walletLocator:(a=e.locator)!=null?a:this.walletLocator,perPage:e.perPage,page:e.page,chain:"solana"})})}get walletLocator(){return this.apiClient.isServerSide?this.address:"me:solana-smart-wallet"}},g=class extends o{constructor(e,a,i,t,u){super(e,a,t,u),this.adminSigner=c(i)}sendTransaction(e){return n(this,null,function*(){var t;let a=this.getEffectiveTransactionSigner(e.delegatedSigner),i=(t=e.additionalSigners)==null?void 0:t.map(r);return yield this.transactionsService.createSignAndConfirm({transaction:e.transaction,signer:a,additionalSigners:i})})}addDelegatedSigner(e){return n(this,null,function*(){return yield this.delegatedSignerService.registerDelegatedSigner(e,s(this.adminSigner)?this.adminSigner:void 0)})}getDelegatedSigners(){return n(this,null,function*(){return yield this.delegatedSignerService.getDelegatedSigners()})}getEffectiveTransactionSigner(e){return e==null?s(this.adminSigner)?this.adminSigner:void 0:r(e)}},p=class extends o{sendTransaction(e){return n(this,null,function*(){var a;return yield this.transactionsService.createSignAndConfirm({transaction:e.transaction,additionalSigners:(a=e.additionalSigners)==null?void 0:a.map(r)})})}};export{o as a,g as b,p as c};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVDYYOSPRcjs = require('./chunk-VDYYOSPR.cjs');var _chunk62C33UL4cjs = require('./chunk-62C33UL4.cjs');var _chunk6XOH62PVcjs = require('./chunk-6XOH62PV.cjs');var _chunkXKXW2FNYcjs = require('./chunk-XKXW2FNY.cjs');var _chunk7K5B5Q3Ycjs = require('./chunk-7K5B5Q3Y.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _web3js = require('@solana/web3.js');var v=class{constructor(l){this.apiClient=l}getOrCreateWallet(l,s,a){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var t,i,p,r;try{let e=yield this.getOrCreateWalletInternal(l,s,a);if("error"in e)throw new (0, _chunkCT2UGJELcjs.f)(JSON.stringify(e));let n=this.createWalletInstance(l,e,s,a);return yield(i=(t=a==null?void 0:a.experimental_callbacks)==null?void 0:t.onWalletCreationComplete)==null?void 0:i.call(t,n),n}catch(e){throw yield(r=(p=a==null?void 0:a.experimental_callbacks)==null?void 0:p.onWalletCreationFail)==null?void 0:r.call(p,e),e}})}getWallet(l,s,a,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let i=this.apiClient.isServerSide?l:`me:${s}`,p=yield this.apiClient.getWallet(i);if("error"in p)throw new (0, _chunkCT2UGJELcjs.d)(JSON.stringify(p));return this.createWalletInstance(s,p,a,t)})}getOrCreateWalletInternal(l,s,a){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var i,p;let t=this.apiClient.isServerSide?null:yield this.apiClient.getWallet(`me:${l}`);if(t&&!("error"in t))return t;if(yield(p=(i=a==null?void 0:a.experimental_callbacks)==null?void 0:i.onWalletCreationStart)==null?void 0:p.call(i),l==="evm-smart-wallet"){let{adminSigner:r,linkedUser:e}=s,n=r.type==="evm-keypair"?r:yield _chunkXKXW2FNYcjs.b.call(void 0, r.name,r.creationCallback);return yield this.apiClient.createWallet({type:"evm-smart-wallet",config:{adminSigner:n},linkedUser:e})}else if(l==="solana-smart-wallet"){let{adminSigner:r,linkedUser:e}=s;return yield this.apiClient.createWallet({type:"solana-smart-wallet",config:{adminSigner:r!=null?(()=>{let n=_chunk6XOH62PVcjs.d.call(void 0, r);return n.type==="solana-keypair"?{type:n.type,address:n.address}:{type:n.type}})():void 0},linkedUser:e})}else if(l==="solana-mpc-wallet"){let{linkedUser:r}=s;return yield this.apiClient.createWallet({type:"solana-mpc-wallet",linkedUser:r})}else throw new (0, _chunkCT2UGJELcjs.c)(`Wallet type ${l} not supported`)})}createWalletInstance(l,s,a,t){switch(this.assertCorrectWalletType(s,l),this.checkWalletConfig(s,a),l){case"evm-smart-wallet":let i=a;return this.createEvmWalletInstance(l,s,i,t);case"solana-smart-wallet":case"solana-mpc-wallet":let r=a;return this.createSolanaWalletInstance(l,s,r,t);default:throw new (0, _chunkCT2UGJELcjs.c)(`Wallet type ${l} not supported`)}}createEvmWalletInstance(l,s,a,t){var i;switch(l){case"evm-smart-wallet":{let{adminSigner:p}=a,r=s,e=new (0, _chunk7K5B5Q3Ycjs.a)(r.address,this.apiClient,_chunkXKXW2FNYcjs.a.call(void 0, p,r),(i=t==null?void 0:t.experimental_callbacks)!=null?i:{});return{getBalances:e.getBalances.bind(e),getTransactions:e.getTransactions.bind(e),unstable_getNfts:e.unstable_getNfts.bind(e),signMessage:e.signMessage.bind(e),sendTransaction:e.sendTransaction.bind(e),address:e.address,getViemClient:e.getViemClient.bind(e),getNonce:e.getNonce.bind(e),signTypedData:e.signTypedData.bind(e)}}}}createSolanaWalletInstance(l,s,a,t){var p,r;let i=s;switch(l){case"solana-smart-wallet":{let{adminSigner:e}=a,n=new (0, _chunk62C33UL4cjs.b)(this.apiClient,new (0, _web3js.PublicKey)(i.address),e!=null?e:{type:"solana-fireblocks-custodial"},_chunkVDYYOSPRcjs.a.call(void 0, this.apiClient.environment),(p=t==null?void 0:t.experimental_callbacks)!=null?p:{});return{getDelegatedSigners:n.getDelegatedSigners.bind(n),addDelegatedSigner:n.addDelegatedSigner.bind(n),getBalances:n.getBalances.bind(n),unstable_getNfts:n.unstable_getNfts.bind(n),sendTransaction:n.sendTransaction.bind(n),getTransactions:n.getTransactions.bind(n),address:n.address,publicKey:n.publicKey,adminSigner:n.adminSigner}}case"solana-mpc-wallet":{let e=new (0, _chunk62C33UL4cjs.c)(this.apiClient,new (0, _web3js.PublicKey)(i.address),_chunkVDYYOSPRcjs.a.call(void 0, this.apiClient.environment),(r=t==null?void 0:t.experimental_callbacks)!=null?r:{});return{sendTransaction:e.sendTransaction.bind(e),getBalances:e.getBalances.bind(e),unstable_getNfts:e.unstable_getNfts.bind(e),getTransactions:e.getTransactions.bind(e),address:e.address,publicKey:e.publicKey}}}}checkWalletConfig(l,s){switch(l.type){case"evm-smart-wallet":case"solana-smart-wallet":{let{adminSigner:a}=s;if(a===void 0)return;let t=l.config.adminSigner;if(t.type!==a.type)throw new (0, _chunkCT2UGJELcjs.e)(`Invalid admin signer type: expected "${a.type}", got "${t.type}"`);switch(t.type){case"evm-keypair":case"solana-keypair":{if(a.type!=="evm-keypair"&&a.type!=="solana-keypair")throw new (0, _chunkCT2UGJELcjs.e)(`Invalid admin signer type: expected "${a.type}", got "${t.type}"`);if(t.address!==a.address)throw new (0, _chunkCT2UGJELcjs.e)(`Invalid admin signer address: expected "${t.address}", got "${a.address}"`)}}}}}assertCorrectWalletType(l,s){if("error"in l)throw new (0, _chunkCT2UGJELcjs.f)(`Unable to init wallet: ${JSON.stringify(l)}`);if(l.type!==s)throw new (0, _chunkCT2UGJELcjs.g)("Invalid wallet type")}};exports.a = v;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var s=class{constructor(t,e,r){this.walletLocator=t;this.transactionsService=e;this.apiClient=r}registerDelegatedSigner(t,e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let a=(yield this.apiClient.registerSigner(this.walletLocator,{signer:t})).transaction.id;return yield this.transactionsService.approveTransaction(a,e?[e]:[]),yield this.transactionsService.waitForTransaction(a),this.getDelegatedSigner(t)})}getDelegatedSigner(t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return yield this.apiClient.getSigner(this.walletLocator,t)})}getDelegatedSigners(){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var r,a;let t=yield this.apiClient.getWallet(this.walletLocator);if("error"in t)throw new (0, _chunkCT2UGJELcjs.d)(JSON.stringify(t));if(t.type!=="solana-smart-wallet")throw new (0, _chunkCT2UGJELcjs.c)(`Wallet type ${t.type} not supported`);return(a=(r=t.config)==null?void 0:r.delegatedSigners)!=null?a:[]})}};exports.a = s;
@@ -1 +1 @@
1
- import{i as p,w as s,x as c}from"./chunk-7ENJXL4H.js";import{c as l}from"./chunk-22GIA4MK.js";import d from"bs58";import{PublicKey as h,VersionedTransaction as v}from"@solana/web3.js";var u=class{constructor(e,r){this.walletLocator=e;this.apiClient=r}approve(e,r,t){return l(this,null,function*(){if(e.walletType!=="solana-smart-wallet"&&e.walletType!=="solana-mpc-wallet")throw new Error(`Unsupported wallet type: ${e.walletType}`);let i=yield Promise.all(r.map(a=>l(this,null,function*(){let o=t.find(m=>a.signer.includes(m.address));if(o==null)throw new p(`Signer ${a.signer} is required for the transaction but was not found in the signer list`);let g=d.decode(e.onChain.transaction),w=v.deserialize(g),y=yield o.signTransaction(w),f=new h(o.address);return{signature:this.retrieveValidSignature(y,f),signer:a.signer}}))),n=yield this.apiClient.approveTransaction(this.walletLocator,e.id,{approvals:i});if(n.error)throw new s(JSON.stringify(n));if(n.status==="awaiting-approval")throw new c("Still has pending approvals, please submit all approvals");return n})}retrieveValidSignature(e,r){let t=e.message.staticAccountKeys.findIndex(a=>a.equals(r));if(t===-1)throw new s("Wallet public key not found in transaction signers");let i=e.signatures[t];if(i==null)throw new s("No valid signature found in the transaction");let n=new Uint8Array(Object.values(i));return d.encode(n)}};export{u as a};
1
+ import{i as p,w as s,x as c}from"./chunk-7ENJXL4H.js";import{c as l}from"./chunk-22GIA4MK.js";import u from"bs58";import{PublicKey as v,VersionedTransaction as h}from"@solana/web3.js";var d=class{constructor(e,r){this.walletLocator=e;this.apiClient=r}approve(e,r,t){return l(this,null,function*(){if(e.walletType!=="solana-smart-wallet"&&e.walletType!=="solana-mpc-wallet")throw new Error(`Unsupported wallet type: ${e.walletType}`);let i=yield Promise.all(r.map(a=>l(this,null,function*(){let o=t.find(m=>a.signer.includes(m.address));if(o==null)throw new p(`Signer ${a.signer} is required for the transaction but was not found in the signer list`);let g=u.decode(e.onChain.transaction),w=h.deserialize(g),y=yield o.signTransaction(w),f=new v(o.address);return{signature:this.retrieveValidSignature(y,f),signer:a.signer}}))),n=yield this.apiClient.approveTransaction(this.walletLocator,e.id,{approvals:i});if(n.error)throw new s(JSON.stringify(n));if(n.status==="awaiting-approval")throw new c("Still has pending approvals, please submit all approvals");return n})}retrieveValidSignature(e,r){let t=e.message.staticAccountKeys.findIndex(a=>a.equals(r));if(t===-1)throw new s("Wallet public key not found in transaction signers");let i=e.signatures[t];if(i==null)throw new s("No valid signature found in the transaction");let n=new Uint8Array(Object.values(i));return u.encode(n)}};export{d as a};
@@ -1 +1 @@
1
- import{a as o}from"./chunk-FK6GUFCI.js";import{a as r}from"./chunk-RF3DRJOH.js";import{createCrossmint as y}from"@crossmint/common-sdk-base";var a=class s{constructor(t){let e=new r(t);this.walletFactory=new o(e)}static from(t){return new s(t)}getOrCreateWallet(t,e,l){return this.walletFactory.getOrCreateWallet(t,e,l)}getWallet(t,e,l,p){return this.walletFactory.getWallet(t,e,l,p)}};export{y as a,a as b};
1
+ import{a as o}from"./chunk-W5FFWAOI.js";import{a as r}from"./chunk-3LGWGGCM.js";import{createCrossmint as y}from"@crossmint/common-sdk-base";var a=class s{constructor(t){let e=new r(t);this.walletFactory=new o(e)}static from(t){return new s(t)}getOrCreateWallet(t,e,l){return this.walletFactory.getOrCreateWallet(t,e,l)}getWallet(t,e,l,p){return this.walletFactory.getWallet(t,e,l,p)}};export{y as a,a as b};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.5.2";var p="WALLETS_SDK",d= exports.b =t,c= exports.c =s,a= exports.d ="0x0000000071727de22e5e9d8baf0edac6f37da032",r= exports.e =1e3;exports.a = p; exports.b = d; exports.c = c; exports.d = a; exports.e = r;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.6.0";var p="WALLETS_SDK",d= exports.b =t,c= exports.c =s,a= exports.d ="0x0000000071727de22e5e9d8baf0edac6f37da032",r= exports.e =1e3;exports.a = p; exports.b = d; exports.c = c; exports.d = a; exports.e = r;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var _web3js = require('@solana/web3.js');var u=class{constructor(e,r){this.walletLocator=e;this.apiClient=r}approve(e,r,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){if(e.walletType!=="solana-smart-wallet"&&e.walletType!=="solana-mpc-wallet")throw new Error(`Unsupported wallet type: ${e.walletType}`);let i=yield Promise.all(r.map(a=>_chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let o=t.find(m=>a.signer.includes(m.address));if(o==null)throw new (0, _chunkCT2UGJELcjs.i)(`Signer ${a.signer} is required for the transaction but was not found in the signer list`);let g=_bs582.default.decode(e.onChain.transaction),w=_web3js.VersionedTransaction.deserialize(g),y=yield o.signTransaction(w),f=new (0, _web3js.PublicKey)(o.address);return{signature:this.retrieveValidSignature(y,f),signer:a.signer}}))),n=yield this.apiClient.approveTransaction(this.walletLocator,e.id,{approvals:i});if(n.error)throw new (0, _chunkCT2UGJELcjs.w)(JSON.stringify(n));if(n.status==="awaiting-approval")throw new (0, _chunkCT2UGJELcjs.x)("Still has pending approvals, please submit all approvals");return n})}retrieveValidSignature(e,r){let t=e.message.staticAccountKeys.findIndex(a=>a.equals(r));if(t===-1)throw new (0, _chunkCT2UGJELcjs.w)("Wallet public key not found in transaction signers");let i=e.signatures[t];if(i==null)throw new (0, _chunkCT2UGJELcjs.w)("No valid signature found in the transaction");let n=new Uint8Array(Object.values(i));return _bs582.default.encode(n)}};exports.a = u;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var _web3js = require('@solana/web3.js');var d=class{constructor(e,r){this.walletLocator=e;this.apiClient=r}approve(e,r,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){if(e.walletType!=="solana-smart-wallet"&&e.walletType!=="solana-mpc-wallet")throw new Error(`Unsupported wallet type: ${e.walletType}`);let i=yield Promise.all(r.map(a=>_chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let o=t.find(m=>a.signer.includes(m.address));if(o==null)throw new (0, _chunkCT2UGJELcjs.i)(`Signer ${a.signer} is required for the transaction but was not found in the signer list`);let g=_bs582.default.decode(e.onChain.transaction),w=_web3js.VersionedTransaction.deserialize(g),y=yield o.signTransaction(w),f=new (0, _web3js.PublicKey)(o.address);return{signature:this.retrieveValidSignature(y,f),signer:a.signer}}))),n=yield this.apiClient.approveTransaction(this.walletLocator,e.id,{approvals:i});if(n.error)throw new (0, _chunkCT2UGJELcjs.w)(JSON.stringify(n));if(n.status==="awaiting-approval")throw new (0, _chunkCT2UGJELcjs.x)("Still has pending approvals, please submit all approvals");return n})}retrieveValidSignature(e,r){let t=e.message.staticAccountKeys.findIndex(a=>a.equals(r));if(t===-1)throw new (0, _chunkCT2UGJELcjs.w)("Wallet public key not found in transaction signers");let i=e.signatures[t];if(i==null)throw new (0, _chunkCT2UGJELcjs.w)("No valid signature found in the transaction");let n=new Uint8Array(Object.values(i));return _bs582.default.encode(n)}};exports.a = d;
@@ -1 +1 @@
1
- var s="@crossmint/wallets-sdk",t="0.5.2";var d="WALLETS_SDK",c=t,a=s,r="0x0000000071727de22e5e9d8baf0edac6f37da032",m=1e3;export{d as a,c as b,a as c,r as d,m as e};
1
+ var s="@crossmint/wallets-sdk",t="0.6.0";var d="WALLETS_SDK",c=t,a=s,r="0x0000000071727de22e5e9d8baf0edac6f37da032",m=1e3;export{d as a,c as b,a as c,r as d,m as e};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkNOQASYSIcjs = require('./chunk-NOQASYSI.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var h=class extends _commonsdkbase.CrossmintApiClient{constructor(e,s){super(e,{internalConfig:{sdkMetadata:{name:_chunkNOQASYSIcjs.c,version:_chunkNOQASYSIcjs.b}}});this.appId=s;this.apiPrefix="api/2022-06-09/wallets"}createWallet(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let s=this.isServerSide?`${this.apiPrefix}`:`${this.apiPrefix}/me`;return(yield this.post(s,{body:JSON.stringify(e),headers:this.headers})).json()})}getWallet(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()})}createTransaction(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveTransaction(e,s,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getTransaction(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveSignature(e,s,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getSignature(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}unstable_getNfts(e,s,t,n){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let a=new URLSearchParams;a.append("page",n.toString()),a.append("perPage",t.toString());let i=`${e}:${s}`;return(yield this.get(`${this.apiPrefix}/${i}/nfts?${a.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let t=new URLSearchParams;return s.chains&&s.chains.forEach(a=>t.append("chains",a)),t.append("tokens",s.tokens.join(",")),(yield this.get(`api/v1-alpha2/wallets/${e}/balances?${t.toString()}`,{headers:this.headers})).json()})}registerSigner(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signers`,{body:JSON.stringify(s),headers:this.headers})).json()})}getSigner(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signers/${s}`,{headers:this.headers})).json()})}getDelegatedSigners(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){var a,i;return(i=(a=(yield(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()).config)==null?void 0:a.delegatedSigners)!=null?i:[]})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkCT2UGJELcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get headers(){let e={"Content-Type":"application/json"};return this.appId&&(e["X-App-Identifier"]=this.appId),e}};exports.a = h;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkP6OETJSNcjs = require('./chunk-P6OETJSN.cjs');var _chunkCT2UGJELcjs = require('./chunk-CT2UGJEL.cjs');var _chunkCK4JCQY6cjs = require('./chunk-CK4JCQY6.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var p=class extends _commonsdkbase.CrossmintApiClient{constructor(e,s){super(e,{internalConfig:{sdkMetadata:{name:_chunkP6OETJSNcjs.c,version:_chunkP6OETJSNcjs.b}}});this.appId=s;this.apiPrefix="api/2022-06-09/wallets"}createWallet(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let s=this.isServerSide?`${this.apiPrefix}`:`${this.apiPrefix}/me`;return(yield this.post(s,{body:JSON.stringify(e),headers:this.headers})).json()})}getWallet(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()})}createTransaction(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveTransaction(e,s,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getTransaction(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures`,{body:JSON.stringify(s),headers:this.headers})).json()})}approveSignature(e,s,t){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signatures/${s}/approvals`,{body:JSON.stringify(t),headers:this.headers})).json()})}getSignature(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}unstable_getNfts(e){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let s=new URLSearchParams;s.append("page",e.page.toString()),s.append("perPage",e.perPage.toString());let t=`${e.chain}:${e.walletLocator}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){let t=new URLSearchParams;return s.chains&&s.chains.forEach(c=>t.append("chains",c)),t.append("tokens",s.tokens.join(",")),(yield this.get(`api/v1-alpha2/wallets/${e}/balances?${t.toString()}`,{headers:this.headers})).json()})}registerSigner(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signers`,{body:JSON.stringify(s),headers:this.headers})).json()})}getSigner(e,s){return _chunkCK4JCQY6cjs.c.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signers/${s}`,{headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkCT2UGJELcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get headers(){let e={"Content-Type":"application/json"};return this.appId&&(e["X-App-Identifier"]=this.appId),e}};exports.a = p;
@@ -1 +1 @@
1
- import{a as N}from"./chunk-SYBJ7MT3.js";import{a as b}from"./chunk-LX6WD7J6.js";import{e as f}from"./chunk-THYR3NRL.js";import{q as m,r as p,s as u,t as v,u as C,v as y}from"./chunk-7ENJXL4H.js";import{a as l,c}from"./chunk-22GIA4MK.js";import k from"bs58";var A=class{constructor(t,r,n=new N(t,r),a={}){this.walletLocator=t;this.apiClient=r;this.approvalsService=n;this.callbacks=a}createSignAndConfirm(t){return c(this,null,function*(){var a,s,o,e;yield(s=(a=this.callbacks).onTransactionStart)==null?void 0:s.call(a,t.transaction);let r=yield this.create(t);yield this.approveTransaction(r.id,[...t.signer!=null?[t.signer]:[],...t.additionalSigners||[]]);let n=yield this.waitForTransaction(r.id);return yield(e=(o=this.callbacks).onTransactionComplete)==null?void 0:e.call(o,t.transaction),n})}getTransactions(){return c(this,null,function*(){return yield this.apiClient.getTransactions(this.walletLocator)})}approveTransaction(t,r){return c(this,null,function*(){var a;let n=yield this.apiClient.getTransaction(this.walletLocator,t);if(n.error)throw new p(JSON.stringify(n));n.status==="awaiting-approval"&&(yield this.approvalsService.approve(n,((a=n.approvals)==null?void 0:a.pending)||[],r))})}create(t){return c(this,null,function*(){let{transaction:r,signer:n,additionalSigners:a}=t,s=l(l({transaction:k.encode(r.serialize())},n?{signer:n.address}:{}),a?{additionalSigners:a.map(e=>e.address)}:{}),o=yield this.apiClient.createTransaction(this.walletLocator,{params:s});if(o.error)throw new m(JSON.stringify(o));return o})}waitForTransaction(t,r=6e4){return c(this,null,function*(){var o,e,w,d,g,S,h,T;let n=Date.now(),a;do{if(Date.now()-n>r){let i=new u("Transaction confirmation timeout");throw yield(e=(o=this.callbacks).onTransactionFail)==null?void 0:e.call(o,i),i}if(a=yield this.apiClient.getTransaction(this.walletLocator,t),a.error)throw new p(JSON.stringify(a));yield b(f)}while(a.status==="pending");if(a.status==="failed"){let i=new v(`Transaction sending failed: ${JSON.stringify(a.error)}`);throw yield(d=(w=this.callbacks).onTransactionFail)==null?void 0:d.call(w,i),i}if(a.status==="awaiting-approval"){let i=new C("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(S=(g=this.callbacks).onTransactionFail)==null?void 0:S.call(g,i),i}let s=a.onChain.txId;if(s==null){let i=new y("Transaction hash not found on transaction response");throw yield(T=(h=this.callbacks).onTransactionFail)==null?void 0:T.call(h,i),i}return s})}};export{A as a};
1
+ import{a as N}from"./chunk-EFRCLQXM.js";import{a as b}from"./chunk-LX6WD7J6.js";import{e as f}from"./chunk-QWYYZW5W.js";import{q as m,r as p,s as u,t as v,u as C,v as y}from"./chunk-7ENJXL4H.js";import{a as l,c}from"./chunk-22GIA4MK.js";import k from"bs58";var A=class{constructor(t,r,n=new N(t,r),a={}){this.walletLocator=t;this.apiClient=r;this.approvalsService=n;this.callbacks=a}createSignAndConfirm(t){return c(this,null,function*(){var a,s,o,e;yield(s=(a=this.callbacks).onTransactionStart)==null?void 0:s.call(a,t.transaction);let r=yield this.create(t);yield this.approveTransaction(r.id,[...t.signer!=null?[t.signer]:[],...t.additionalSigners||[]]);let n=yield this.waitForTransaction(r.id);return yield(e=(o=this.callbacks).onTransactionComplete)==null?void 0:e.call(o,t.transaction),n})}getTransactions(){return c(this,null,function*(){return yield this.apiClient.getTransactions(this.walletLocator)})}approveTransaction(t,r){return c(this,null,function*(){var a;let n=yield this.apiClient.getTransaction(this.walletLocator,t);if(n.error)throw new p(JSON.stringify(n));n.status==="awaiting-approval"&&(yield this.approvalsService.approve(n,((a=n.approvals)==null?void 0:a.pending)||[],r))})}create(t){return c(this,null,function*(){let{transaction:r,signer:n,additionalSigners:a}=t,s=l(l({transaction:k.encode(r.serialize())},n?{signer:n.address}:{}),a?{additionalSigners:a.map(e=>e.address)}:{}),o=yield this.apiClient.createTransaction(this.walletLocator,{params:s});if(o.error)throw new m(JSON.stringify(o));return o})}waitForTransaction(t,r=6e4){return c(this,null,function*(){var o,e,w,d,g,S,h,T;let n=Date.now(),a;do{if(Date.now()-n>r){let i=new u("Transaction confirmation timeout");throw yield(e=(o=this.callbacks).onTransactionFail)==null?void 0:e.call(o,i),i}if(a=yield this.apiClient.getTransaction(this.walletLocator,t),a.error)throw new p(JSON.stringify(a));yield b(f)}while(a.status==="pending");if(a.status==="failed"){let i=new v(`Transaction sending failed: ${JSON.stringify(a.error)}`);throw yield(d=(w=this.callbacks).onTransactionFail)==null?void 0:d.call(w,i),i}if(a.status==="awaiting-approval"){let i=new C("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(S=(g=this.callbacks).onTransactionFail)==null?void 0:S.call(g,i),i}let s=a.onChain.txId;if(s==null){let i=new y("Transaction hash not found on transaction response");throw yield(T=(h=this.callbacks).onTransactionFail)==null?void 0:T.call(h,i),i}return s})}};export{A as a};
@@ -0,0 +1 @@
1
+ import{a as d}from"./chunk-OKXV3IAA.js";import{b as f,c as u}from"./chunk-BUI2QYUC.js";import{d as S}from"./chunk-6W35AARC.js";import{a as g,b as w}from"./chunk-7WRWCJJ6.js";import{a as C}from"./chunk-ZJL3PQCL.js";import{c as W,d as m,e as c,f as y,g as T}from"./chunk-7ENJXL4H.js";import{c as o}from"./chunk-22GIA4MK.js";import{PublicKey as b}from"@solana/web3.js";var v=class{constructor(l){this.apiClient=l}getOrCreateWallet(l,s,a){return o(this,null,function*(){var t,i,p,r;try{let e=yield this.getOrCreateWalletInternal(l,s,a);if("error"in e)throw new y(JSON.stringify(e));let n=this.createWalletInstance(l,e,s,a);return yield(i=(t=a==null?void 0:a.experimental_callbacks)==null?void 0:t.onWalletCreationComplete)==null?void 0:i.call(t,n),n}catch(e){throw yield(r=(p=a==null?void 0:a.experimental_callbacks)==null?void 0:p.onWalletCreationFail)==null?void 0:r.call(p,e),e}})}getWallet(l,s,a,t){return o(this,null,function*(){let i=this.apiClient.isServerSide?l:`me:${s}`,p=yield this.apiClient.getWallet(i);if("error"in p)throw new m(JSON.stringify(p));return this.createWalletInstance(s,p,a,t)})}getOrCreateWalletInternal(l,s,a){return o(this,null,function*(){var i,p;let t=this.apiClient.isServerSide?null:yield this.apiClient.getWallet(`me:${l}`);if(t&&!("error"in t))return t;if(yield(p=(i=a==null?void 0:a.experimental_callbacks)==null?void 0:i.onWalletCreationStart)==null?void 0:p.call(i),l==="evm-smart-wallet"){let{adminSigner:r,linkedUser:e}=s,n=r.type==="evm-keypair"?r:yield w(r.name,r.creationCallback);return yield this.apiClient.createWallet({type:"evm-smart-wallet",config:{adminSigner:n},linkedUser:e})}else if(l==="solana-smart-wallet"){let{adminSigner:r,linkedUser:e}=s;return yield this.apiClient.createWallet({type:"solana-smart-wallet",config:{adminSigner:r!=null?(()=>{let n=S(r);return n.type==="solana-keypair"?{type:n.type,address:n.address}:{type:n.type}})():void 0},linkedUser:e})}else if(l==="solana-mpc-wallet"){let{linkedUser:r}=s;return yield this.apiClient.createWallet({type:"solana-mpc-wallet",linkedUser:r})}else throw new W(`Wallet type ${l} not supported`)})}createWalletInstance(l,s,a,t){switch(this.assertCorrectWalletType(s,l),this.checkWalletConfig(s,a),l){case"evm-smart-wallet":let i=a;return this.createEvmWalletInstance(l,s,i,t);case"solana-smart-wallet":case"solana-mpc-wallet":let r=a;return this.createSolanaWalletInstance(l,s,r,t);default:throw new W(`Wallet type ${l} not supported`)}}createEvmWalletInstance(l,s,a,t){var i;switch(l){case"evm-smart-wallet":{let{adminSigner:p}=a,r=s,e=new C(r.address,this.apiClient,g(p,r),(i=t==null?void 0:t.experimental_callbacks)!=null?i:{});return{getBalances:e.getBalances.bind(e),getTransactions:e.getTransactions.bind(e),unstable_getNfts:e.unstable_getNfts.bind(e),signMessage:e.signMessage.bind(e),sendTransaction:e.sendTransaction.bind(e),address:e.address,getViemClient:e.getViemClient.bind(e),getNonce:e.getNonce.bind(e),signTypedData:e.signTypedData.bind(e)}}}}createSolanaWalletInstance(l,s,a,t){var p,r;let i=s;switch(l){case"solana-smart-wallet":{let{adminSigner:e}=a,n=new f(this.apiClient,new b(i.address),e!=null?e:{type:"solana-fireblocks-custodial"},d(this.apiClient.environment),(p=t==null?void 0:t.experimental_callbacks)!=null?p:{});return{getDelegatedSigners:n.getDelegatedSigners.bind(n),addDelegatedSigner:n.addDelegatedSigner.bind(n),getBalances:n.getBalances.bind(n),unstable_getNfts:n.unstable_getNfts.bind(n),sendTransaction:n.sendTransaction.bind(n),getTransactions:n.getTransactions.bind(n),address:n.address,publicKey:n.publicKey,adminSigner:n.adminSigner}}case"solana-mpc-wallet":{let e=new u(this.apiClient,new b(i.address),d(this.apiClient.environment),(r=t==null?void 0:t.experimental_callbacks)!=null?r:{});return{sendTransaction:e.sendTransaction.bind(e),getBalances:e.getBalances.bind(e),unstable_getNfts:e.unstable_getNfts.bind(e),getTransactions:e.getTransactions.bind(e),address:e.address,publicKey:e.publicKey}}}}checkWalletConfig(l,s){switch(l.type){case"evm-smart-wallet":case"solana-smart-wallet":{let{adminSigner:a}=s;if(a===void 0)return;let t=l.config.adminSigner;if(t.type!==a.type)throw new c(`Invalid admin signer type: expected "${a.type}", got "${t.type}"`);switch(t.type){case"evm-keypair":case"solana-keypair":{if(a.type!=="evm-keypair"&&a.type!=="solana-keypair")throw new c(`Invalid admin signer type: expected "${a.type}", got "${t.type}"`);if(t.address!==a.address)throw new c(`Invalid admin signer address: expected "${t.address}", got "${a.address}"`)}}}}}assertCorrectWalletType(l,s){if("error"in l)throw new y(`Unable to init wallet: ${JSON.stringify(l)}`);if(l.type!==s)throw new T("Invalid wallet type")}};export{v as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC4BKKX7Icjs = require('./chunk-C4BKKX7I.cjs');var _chunkUSEBBJLHcjs = require('./chunk-USEBBJLH.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var a=class s{constructor(t){let e=new (0, _chunkUSEBBJLHcjs.a)(t);this.walletFactory=new (0, _chunkC4BKKX7Icjs.a)(e)}static from(t){return new s(t)}getOrCreateWallet(t,e,l){return this.walletFactory.getOrCreateWallet(t,e,l)}getWallet(t,e,l,p){return this.walletFactory.getWallet(t,e,l,p)}};exports.a = _commonsdkbase.createCrossmint; exports.b = a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkDGPUMPXPcjs = require('./chunk-DGPUMPXP.cjs');var _chunkRWMILVIEcjs = require('./chunk-RWMILVIE.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var a=class s{constructor(t){let e=new (0, _chunkRWMILVIEcjs.a)(t);this.walletFactory=new (0, _chunkDGPUMPXPcjs.a)(e)}static from(t){return new s(t)}getOrCreateWallet(t,e,l){return this.walletFactory.getOrCreateWallet(t,e,l)}getWallet(t,e,l,p){return this.walletFactory.getWallet(t,e,l,p)}};exports.a = _commonsdkbase.createCrossmint; exports.b = a;
@@ -0,0 +1 @@
1
+ import{c as n,d as o}from"./chunk-7ENJXL4H.js";import{c as i}from"./chunk-22GIA4MK.js";var s=class{constructor(t,e,r){this.walletLocator=t;this.transactionsService=e;this.apiClient=r}registerDelegatedSigner(t,e){return i(this,null,function*(){let a=(yield this.apiClient.registerSigner(this.walletLocator,{signer:t})).transaction.id;return yield this.transactionsService.approveTransaction(a,e?[e]:[]),yield this.transactionsService.waitForTransaction(a),this.getDelegatedSigner(t)})}getDelegatedSigner(t){return i(this,null,function*(){return yield this.apiClient.getSigner(this.walletLocator,t)})}getDelegatedSigners(){return i(this,null,function*(){var r,a;let t=yield this.apiClient.getWallet(this.walletLocator);if("error"in t)throw new o(JSON.stringify(t));if(t.type!=="solana-smart-wallet")throw new n(`Wallet type ${t.type} not supported`);return(a=(r=t.config)==null?void 0:r.delegatedSigners)!=null?a:[]})}};export{s as a};
@@ -0,0 +1 @@
1
+ import{a as I}from"./chunk-HKY6CBZC.js";import{c as F}from"./chunk-DGSYBCLX.js";import{a as v}from"./chunk-LX6WD7J6.js";import{d as b,e as w}from"./chunk-QWYYZW5W.js";import{i as y,j as E,k as m,l as D,m as A,n as N,o as S,p as k,q as L,r as f,s as M,t as P,u as x,v as R,w as W}from"./chunk-7ENJXL4H.js";import{a as u,b as C,c as s}from"./chunk-22GIA4MK.js";import{WebAuthnP256 as V}from"ox";import{http as O,createPublicClient as J,concat as _}from"viem";var H=class{constructor(t,a,e,n){this.address=t;this.apiClient=a;this.adminSigner=e;this.callbacks=n}getBalances(t){return s(this,null,function*(){let a=yield this.apiClient.getBalance(this.address,{chains:[t.chain],tokens:t.tokens});if("error"in a)throw new Error(`Failed to get balances: ${JSON.stringify(a.error)}`);return a})}getTransactions(){return s(this,null,function*(){let t=yield this.apiClient.getTransactions(this.walletLocator);if("error"in t)throw new f(JSON.stringify(t));return t.transactions.filter(a=>a.walletType==="evm-smart-wallet")})}unstable_getNfts(t){return s(this,null,function*(){return yield this.apiClient.unstable_getNfts(C(u({},t),{walletLocator:this.walletLocator}))})}getNonce(t){return s(this,null,function*(){var n;return yield this.getViemClient({chain:t.chain,transport:t==null?void 0:t.transport}).readContract({abi:I,address:b,functionName:"getNonce",args:[this.address,(n=t==null?void 0:t.key)!=null?n:BigInt(0)]})})}signMessage(t){return s(this,null,function*(){var r;let a=yield this.createSignature(t),e=a.id,n=((r=a.approvals)==null?void 0:r.pending)||[],i=yield this.approveSignature(n,e);return yield this.waitForSignature(e),i})}signTypedData(t){return s(this,null,function*(){var r;let a=yield this.createTypedDataSignature(t),e=a.id,n=((r=a.approvals)==null?void 0:r.pending)||[],i=yield this.approveSignature(n,e);return yield this.waitForSignature(e),i})}sendTransaction(t){return s(this,null,function*(){var n,i,r;yield(i=(n=this.callbacks)==null?void 0:n.onTransactionStart)==null?void 0:i.call(n,t);let a=yield this.createTransaction(t),e=a.id;return yield this.approveTransaction(((r=a.approvals)==null?void 0:r.pending)||[],e),yield this.waitForTransaction(e)})}getViemClient(t){var a;return J({transport:(a=t.transport)!=null?a:O(),chain:F(t.chain)})}get walletLocator(){return this.apiClient.isServerSide?this.address:"me:evm-smart-wallet"}get signerLocator(){return this.adminSigner.locator}signWithAdminSigner(t){return s(this,null,function*(){switch(this.adminSigner.type){case"evm-passkey":{if(this.adminSigner.signingCallback)return this.adminSigner.signingCallback(t);let{metadata:a,signature:e}=yield V.sign({credentialId:this.adminSigner.id,challenge:t});return{signature:_([`0x${e.r.toString(16)}`,`0x${e.s.toString(16)}`]),metadata:a}}case"evm-keypair":{let a=this.adminSigner.address;if(this.adminSigner.signer.type==="viem_v2"){let e=this.adminSigner.signer.account;if(!e.signMessage)throw new N("Account does not support signMessage");return{signature:yield e.signMessage({message:{raw:t}})}}else return{signature:yield this.adminSigner.signer.provider.request({method:"personal_sign",params:[t,a]})}}}})}createTransaction(t){return s(this,null,function*(){var e;let a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:this.signerLocator,chain:t.chain,calls:[{to:t.to,value:t.value?t.value.toString():"0",data:(e=t.data)!=null?e:"0x"}]}});if("error"in a)throw new L(JSON.stringify(a));return a})}approveTransaction(t,a){return s(this,null,function*(){var l,g;let e=t.find(p=>p.signer===this.signerLocator);if(!e){let p=new y(`Signer ${this.signerLocator} not found in pending approvals`);throw yield(g=(l=this.callbacks)==null?void 0:l.onTransactionFail)==null?void 0:g.call(l,p),p}let n=e.message,{signature:i,metadata:r}=yield this.signWithAdminSigner(n),c=yield this.apiClient.approveTransaction(this.walletLocator,a,{approvals:[u({signer:this.signerLocator,signature:this.adminSigner.type==="evm-passkey"?{r:i.slice(0,66),s:`0x${i.slice(66)}`}:i},r&&{metadata:r})]});if("error"in c)throw new W(JSON.stringify(c))})}waitForTransaction(t,a=6e4){return s(this,null,function*(){var r,c,l,g,p,h,d,T;let e=Date.now(),n;do{if(Date.now()-e>a){let o=new M("Transaction confirmation timeout");throw yield(c=(r=this.callbacks).onTransactionFail)==null?void 0:c.call(r,o),o}if(n=yield this.apiClient.getTransaction(this.walletLocator,t),"error"in n)throw new f(JSON.stringify(n));yield v(w)}while(n.status==="pending");if(n.status==="failed"){let o=new P(`Transaction sending failed: ${JSON.stringify(n.error)}`);throw yield(g=(l=this.callbacks).onTransactionFail)==null?void 0:g.call(l,o),o}if(n.status==="awaiting-approval"){let o=new x("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");throw yield(h=(p=this.callbacks).onTransactionFail)==null?void 0:h.call(p,o),o}let i=n.onChain.txId;if(i==null){let o=new R("Transaction hash not found on transaction response");throw yield(T=(d=this.callbacks).onTransactionFail)==null?void 0:T.call(d,o),o}return i})}createSignature(t){return s(this,null,function*(){if(typeof t.message!="string")throw new E("Message must be a string");let a=yield this.apiClient.createSignature(this.walletLocator,{type:"evm-message",params:{message:t.message,signer:this.signerLocator,chain:t.chain}});if("error"in a)throw new S(JSON.stringify(a));return a})}createTypedDataSignature(t){return s(this,null,function*(){let{domain:a,message:e,primaryType:n,types:i,chain:r}=t;if(!a||!e||!i||!r)throw new m("Invalid typed data");let{name:c,version:l,chainId:g,verifyingContract:p,salt:h}=a;if(!c||!l||!g||!p)throw new m("Invalid typed data domain");let d=yield this.apiClient.createSignature(this.walletLocator,{type:"evm-typed-data",params:{typedData:{domain:{name:c,version:l,chainId:Number(g),verifyingContract:p,salt:h},message:e,primaryType:n,types:i},signer:this.signerLocator,chain:r,isSmartWalletSignature:!1}});if("error"in d)throw new S(JSON.stringify(d));return d})}approveSignature(t,a){return s(this,null,function*(){let e=t.find(c=>c.signer===this.signerLocator);if(!e)throw new y(`Signer ${this.signerLocator} not found in pending approvals`);let n=e.message,{signature:i,metadata:r}=yield this.signWithAdminSigner(n);if(i===void 0)throw new D("Signature not available");return yield this.apiClient.approveSignature(this.walletLocator,a,{approvals:[{signer:this.signerLocator,signature:this.adminSigner.type==="evm-passkey"?{r:i.slice(0,66),s:`0x${i.slice(66)}`}:i,metadata:r}]}),i})}waitForSignature(t){return s(this,null,function*(){let a=null;do if(yield v(w),a=yield this.apiClient.getSignature(this.walletLocator,t),"error"in a)throw new k(JSON.stringify(a));while(a===null||a.status==="pending");if(a.status==="failed")throw new A("Signature signing failed")})}};export{H as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C2WL57HT.cjs');var _chunkRWCX6PZUcjs = require('../chunk-RWCX6PZU.cjs');require('../chunk-6DTBGTSS.cjs');var _chunkJFUBHJ2Ccjs = require('../chunk-JFUBHJ2C.cjs');require('../chunk-F2XDGZCB.cjs');require('../chunk-MFUN74KH.cjs');require('../chunk-DANM4IBF.cjs');require('../chunk-NOQASYSI.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.EVMSmartWalletImpl = _chunkRWCX6PZUcjs.a; exports.isMainnetChain = _chunkJFUBHJ2Ccjs.b; exports.isTestnetChain = _chunkJFUBHJ2Ccjs.a; exports.toViemChain = _chunkJFUBHJ2Ccjs.c;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-C2WL57HT.cjs');var _chunk7K5B5Q3Ycjs = require('../chunk-7K5B5Q3Y.cjs');require('../chunk-6DTBGTSS.cjs');var _chunkJFUBHJ2Ccjs = require('../chunk-JFUBHJ2C.cjs');require('../chunk-F2XDGZCB.cjs');require('../chunk-MFUN74KH.cjs');require('../chunk-DANM4IBF.cjs');require('../chunk-P6OETJSN.cjs');require('../chunk-CT2UGJEL.cjs');require('../chunk-CK4JCQY6.cjs');exports.EVMSmartWalletImpl = _chunk7K5B5Q3Ycjs.a; exports.isMainnetChain = _chunkJFUBHJ2Ccjs.b; exports.isTestnetChain = _chunkJFUBHJ2Ccjs.a; exports.toViemChain = _chunkJFUBHJ2Ccjs.c;
@@ -7,7 +7,7 @@ import '@crossmint/common-sdk-base';
7
7
  import '../api/types.cjs';
8
8
  import 'viem';
9
9
  import '../api/gen/types.gen.cjs';
10
- import '../options-DGElO-xR.cjs';
10
+ import '../options-BfWQ7h7d.cjs';
11
11
  import '../solana/tokens.cjs';
12
12
  import '../solana/types/signers.cjs';
13
13
  import '@solana/web3.js';
@@ -7,7 +7,7 @@ import '@crossmint/common-sdk-base';
7
7
  import '../api/types.js';
8
8
  import 'viem';
9
9
  import '../api/gen/types.gen.js';
10
- import '../options-DmcWBOpe.js';
10
+ import '../options-Dwn6w8Ar.js';
11
11
  import '../solana/tokens.js';
12
12
  import '../solana/types/signers.js';
13
13
  import '@solana/web3.js';
package/dist/evm/index.js CHANGED
@@ -1 +1 @@
1
- import"../chunk-CGHMCYX6.js";import{a as d}from"../chunk-CKCQ2NTZ.js";import"../chunk-HKY6CBZC.js";import{a,b,c}from"../chunk-DGSYBCLX.js";import"../chunk-SILEK5O4.js";import"../chunk-KVFFSUF4.js";import"../chunk-LX6WD7J6.js";import"../chunk-THYR3NRL.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{d as EVMSmartWalletImpl,b as isMainnetChain,a as isTestnetChain,c as toViemChain};
1
+ import"../chunk-CGHMCYX6.js";import{a as d}from"../chunk-ZJL3PQCL.js";import"../chunk-HKY6CBZC.js";import{a,b,c}from"../chunk-DGSYBCLX.js";import"../chunk-SILEK5O4.js";import"../chunk-KVFFSUF4.js";import"../chunk-LX6WD7J6.js";import"../chunk-QWYYZW5W.js";import"../chunk-7ENJXL4H.js";import"../chunk-22GIA4MK.js";export{d as EVMSmartWalletImpl,b as isMainnetChain,a as isTestnetChain,c as toViemChain};
@@ -1,53 +1,44 @@
1
- import { Address, PublicClient, HttpTransport, Hex, SignableMessage, TypedData, TypedDataDefinition } from 'viem';
1
+ import { Address, SignableMessage, Hex, HttpTransport, PublicClient, TypedData, TypedDataDefinition } from 'viem';
2
2
  import { GetBalanceResponse, GetTransactionsResponse, GetNftsResponse } from '../../api/types.cjs';
3
3
  import { EVMSmartWalletChain } from '../chains/index.cjs';
4
4
  import '../../api/gen/types.gen.cjs';
5
5
 
6
- interface EVMSmartWallet extends ViemWallet {
7
- getBalances(tokens: Address[]): Promise<GetBalanceResponse>;
6
+ interface EVMSmartWallet {
7
+ address: Address;
8
+ getBalances(params: {
9
+ chain: EVMSmartWalletChain;
10
+ tokens: Address[];
11
+ }): Promise<GetBalanceResponse>;
8
12
  getTransactions(): Promise<GetTransactionsResponse>;
9
- unstable_getNfts(perPage: number, page: number, chain: string, locator?: string): Promise<GetNftsResponse>;
10
- chain: EVMSmartWalletChain;
11
- publicClient: PublicClient<HttpTransport>;
13
+ unstable_getNfts(params: {
14
+ perPage: number;
15
+ page: number;
16
+ chain: EVMSmartWalletChain;
17
+ locator?: string;
18
+ }): Promise<GetNftsResponse>;
19
+ signMessage(params: {
20
+ message: SignableMessage;
21
+ chain: EVMSmartWalletChain;
22
+ }): Promise<Hex>;
23
+ sendTransaction(params: TransactionInput): Promise<Hex>;
24
+ getViemClient(params: {
25
+ chain: EVMSmartWalletChain;
26
+ transport?: HttpTransport;
27
+ }): PublicClient<HttpTransport>;
28
+ getNonce(params: {
29
+ chain: EVMSmartWalletChain;
30
+ key?: bigint | undefined;
31
+ transport?: HttpTransport;
32
+ }): Promise<bigint>;
33
+ signTypedData<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(params: TypedDataDefinition<typedData, primaryType> & {
34
+ chain: EVMSmartWalletChain;
35
+ }): Promise<Hex>;
12
36
  }
13
37
  interface TransactionInput {
14
38
  to: Address;
39
+ chain: EVMSmartWalletChain;
15
40
  data?: Hex;
16
41
  value?: bigint;
17
42
  }
18
- interface ViemWallet {
19
- /**
20
- * The wallet address
21
- */
22
- address: Address;
23
- /**
24
- * Get the wallet nonce
25
- * @param parameters - The parameters
26
- * @returns The nonce
27
- */
28
- getNonce?: ((parameters?: {
29
- key?: bigint | undefined;
30
- } | undefined) => Promise<bigint>) | undefined;
31
- /**
32
- * Sign a message
33
- * @param parameters - The parameters
34
- * @returns The signature
35
- */
36
- signMessage: (parameters: {
37
- message: SignableMessage;
38
- }) => Promise<Hex>;
39
- /**
40
- * Sign a typed data
41
- * @param parameters - The parameters
42
- * @returns The signature
43
- */
44
- signTypedData: <const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: TypedDataDefinition<typedData, primaryType>) => Promise<Hex>;
45
- /**
46
- * Sign and submit a transaction
47
- * @param parameters - The transaction parameters
48
- * @returns The transaction hash
49
- */
50
- sendTransaction: (parameters: TransactionInput) => Promise<Hex>;
51
- }
52
43
 
53
- export type { EVMSmartWallet, TransactionInput, ViemWallet };
44
+ export type { EVMSmartWallet, TransactionInput };