@crossmint/wallets-sdk 1.15.0 → 1.16.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 (156) hide show
  1. package/dist/api/__tests__/test-utils.cjs +1 -1
  2. package/dist/api/__tests__/test-utils.js +1 -1
  3. package/dist/api/client.cjs +1 -1
  4. package/dist/api/client.js +1 -1
  5. package/dist/api/gen/types.gen.d.cts +66 -22
  6. package/dist/api/gen/types.gen.d.ts +66 -22
  7. package/dist/api/index.cjs +1 -1
  8. package/dist/api/index.js +1 -1
  9. package/dist/chains/adapters/evm.cjs +1 -1
  10. package/dist/chains/adapters/evm.js +1 -1
  11. package/dist/chains/adapters/solana.cjs +1 -1
  12. package/dist/chains/adapters/solana.js +1 -1
  13. package/dist/chains/adapters/stellar.cjs +1 -1
  14. package/dist/chains/adapters/stellar.js +1 -1
  15. package/dist/chains/chain-adapter.cjs +1 -1
  16. package/dist/chains/chain-adapter.js +1 -1
  17. package/dist/chains/chains.cjs +1 -1
  18. package/dist/chains/chains.d.cts +2 -2
  19. package/dist/chains/chains.d.ts +2 -2
  20. package/dist/chains/chains.js +1 -1
  21. package/dist/chains/definitions/arc.cjs +1 -0
  22. package/dist/chains/definitions/arc.d.cts +44 -0
  23. package/dist/chains/definitions/arc.d.ts +44 -0
  24. package/dist/chains/definitions/arc.js +1 -0
  25. package/dist/chains/definitions/celoSepolia.cjs +1 -0
  26. package/dist/chains/definitions/celoSepolia.d.cts +44 -0
  27. package/dist/chains/definitions/celoSepolia.d.ts +44 -0
  28. package/dist/chains/definitions/celoSepolia.js +1 -0
  29. package/dist/chains/definitions/robinhoodChain.cjs +1 -0
  30. package/dist/chains/definitions/robinhoodChain.d.cts +44 -0
  31. package/dist/chains/definitions/robinhoodChain.d.ts +44 -0
  32. package/dist/chains/definitions/robinhoodChain.js +1 -0
  33. package/dist/chains/definitions/robinhoodChainTestnet.cjs +1 -0
  34. package/dist/chains/definitions/robinhoodChainTestnet.d.cts +44 -0
  35. package/dist/chains/definitions/robinhoodChainTestnet.d.ts +44 -0
  36. package/dist/chains/definitions/robinhoodChainTestnet.js +1 -0
  37. package/dist/{chunk-I76IKSS4.js → chunk-24CGMAY3.js} +1 -1
  38. package/dist/{chunk-MXY4ZKZJ.cjs → chunk-2G4Y25AJ.cjs} +1 -1
  39. package/dist/{chunk-P22QL24A.js → chunk-4KOHNUNP.js} +1 -1
  40. package/dist/{chunk-N3HRM33G.cjs → chunk-4R2UUYLC.cjs} +1 -1
  41. package/dist/{chunk-CEP5E7JG.cjs → chunk-53VKI7FJ.cjs} +1 -1
  42. package/dist/{chunk-YFRKZGZ4.js → chunk-5IC6BHP5.js} +1 -1
  43. package/dist/{chunk-YJLJ2IHS.cjs → chunk-5L5MJAFS.cjs} +1 -1
  44. package/dist/{chunk-2VMMA4Y6.cjs → chunk-5SREMYFJ.cjs} +1 -1
  45. package/dist/{chunk-6OUANX4J.js → chunk-62EHAJRH.js} +1 -1
  46. package/dist/{chunk-QP5JU7UO.cjs → chunk-62XSK3ZX.cjs} +1 -1
  47. package/dist/{chunk-3L3U3TID.cjs → chunk-63VNTHGQ.cjs} +1 -1
  48. package/dist/{chunk-MFCNJSCL.js → chunk-66IZJXGV.js} +1 -1
  49. package/dist/{chunk-NYGW4HYK.js → chunk-6T4GBLXY.js} +1 -1
  50. package/dist/{chunk-OVUX5RFT.js → chunk-7CUHY3S4.js} +1 -1
  51. package/dist/{chunk-JMVDYHTG.cjs → chunk-7HOXBHKP.cjs} +1 -1
  52. package/dist/{chunk-S6MOVJXB.js → chunk-A7DA5DSE.js} +1 -1
  53. package/dist/chunk-AUO6R32H.cjs +1 -0
  54. package/dist/{chunk-JNGPW247.js → chunk-AZAIXRGS.js} +1 -1
  55. package/dist/chunk-BHHXVRU6.cjs +1 -0
  56. package/dist/{chunk-WEWCIFFY.js → chunk-BHSOWQOR.js} +1 -1
  57. package/dist/{chunk-IZVYNUFO.cjs → chunk-BJC5DQQ3.cjs} +1 -1
  58. package/dist/{chunk-EH75GTUJ.js → chunk-BKN5HSDC.js} +1 -1
  59. package/dist/{chunk-K55HJTOE.js → chunk-BL7A7ROX.js} +1 -1
  60. package/dist/chunk-C6E6WC4P.js +1 -0
  61. package/dist/chunk-CGQCRDG7.js +1 -0
  62. package/dist/{chunk-Q3JQUVKI.js → chunk-CXWFJGKI.js} +1 -1
  63. package/dist/{chunk-VPDZLVMK.cjs → chunk-D2QNNQ26.cjs} +1 -1
  64. package/dist/chunk-D5IIHIEW.cjs +1 -0
  65. package/dist/{chunk-GAACIEE2.cjs → chunk-DB3TFNM2.cjs} +1 -1
  66. package/dist/{chunk-BEGVH4DX.js → chunk-FBOM4U3X.js} +1 -1
  67. package/dist/chunk-FUZ2TPGD.js +1 -0
  68. package/dist/{chunk-W7IPXUD5.cjs → chunk-IU7J7IPE.cjs} +1 -1
  69. package/dist/{chunk-RMILQMLJ.cjs → chunk-JAWHGOGP.cjs} +1 -1
  70. package/dist/{chunk-4IIZO5PI.cjs → chunk-KQFRFHM4.cjs} +1 -1
  71. package/dist/{chunk-4I5SLLAX.cjs → chunk-KVMPBMNG.cjs} +1 -1
  72. package/dist/{chunk-L7RATGRO.js → chunk-LUUUKDHQ.js} +1 -1
  73. package/dist/chunk-NMUHOXYI.js +1 -0
  74. package/dist/{chunk-RNQMEZIV.js → chunk-NQ3PROUV.js} +1 -1
  75. package/dist/chunk-OQFZL5LI.cjs +1 -0
  76. package/dist/{chunk-W4DR7B3L.cjs → chunk-Q6UT242Q.cjs} +1 -1
  77. package/dist/chunk-QLOW4D2N.js +1 -0
  78. package/dist/{chunk-IXNKZURT.js → chunk-QNM7BGTP.js} +1 -1
  79. package/dist/chunk-QYNWUGXV.js +1 -0
  80. package/dist/{chunk-YHCEO3GD.cjs → chunk-SDXHKREB.cjs} +1 -1
  81. package/dist/{chunk-WIAIJCQ2.cjs → chunk-SP5DQZ6D.cjs} +1 -1
  82. package/dist/chunk-TCDH5Q6Q.cjs +1 -0
  83. package/dist/{chunk-GD5GDQXC.js → chunk-UP6VFZQH.js} +1 -1
  84. package/dist/{chunk-O2BU2KJD.cjs → chunk-UX2FEVDY.cjs} +1 -1
  85. package/dist/{chunk-KYR4ZYRD.js → chunk-V3LZ3MNU.js} +1 -1
  86. package/dist/chunk-V5NY4W5H.js +1 -0
  87. package/dist/{chunk-6KW2HYAX.js → chunk-WJDR3MG5.js} +1 -1
  88. package/dist/{chunk-3TPBVNNF.cjs → chunk-XFCHACH7.cjs} +1 -1
  89. package/dist/{chunk-HOQ2JQHJ.cjs → chunk-Y7P2T5BP.cjs} +1 -1
  90. package/dist/{chunk-IX4EJZH5.js → chunk-YFNCXOVW.js} +1 -1
  91. package/dist/{chunk-4MNSKZHW.cjs → chunk-YWN6HKW7.cjs} +1 -1
  92. package/dist/{chunk-BSZJJNA7.js → chunk-Z4ZDZYZ3.js} +1 -1
  93. package/dist/{chunk-3TJEBF5U.cjs → chunk-ZHGXG7JM.cjs} +1 -1
  94. package/dist/chunk-ZPO3XSWU.cjs +1 -0
  95. package/dist/{chunk-GVRXRDGC.js → chunk-ZSFPKH2C.js} +1 -1
  96. package/dist/{chunk-4L7JP2WL.cjs → chunk-ZUG5ROPF.cjs} +1 -1
  97. package/dist/index.cjs +1 -1
  98. package/dist/index.js +1 -1
  99. package/dist/logger/index.cjs +1 -1
  100. package/dist/logger/index.js +1 -1
  101. package/dist/logger/init.cjs +1 -1
  102. package/dist/logger/init.js +1 -1
  103. package/dist/sdk.cjs +1 -1
  104. package/dist/sdk.js +1 -1
  105. package/dist/signers/descriptors/index.cjs +1 -1
  106. package/dist/signers/descriptors/index.js +1 -1
  107. package/dist/signers/index.cjs +1 -1
  108. package/dist/signers/index.js +1 -1
  109. package/dist/signers/non-custodial/index.cjs +1 -1
  110. package/dist/signers/non-custodial/index.js +1 -1
  111. package/dist/signers/non-custodial/ncs-evm-signer.cjs +1 -1
  112. package/dist/signers/non-custodial/ncs-evm-signer.js +1 -1
  113. package/dist/signers/non-custodial/ncs-signer.cjs +1 -1
  114. package/dist/signers/non-custodial/ncs-signer.js +1 -1
  115. package/dist/signers/non-custodial/ncs-solana-signer.cjs +1 -1
  116. package/dist/signers/non-custodial/ncs-solana-signer.js +1 -1
  117. package/dist/signers/non-custodial/ncs-stellar-signer.cjs +1 -1
  118. package/dist/signers/non-custodial/ncs-stellar-signer.js +1 -1
  119. package/dist/signers/server/assemble-server-signer.cjs +1 -1
  120. package/dist/signers/server/assemble-server-signer.js +1 -1
  121. package/dist/signers/server/index.cjs +1 -1
  122. package/dist/signers/server/index.js +1 -1
  123. package/dist/signers/server/resolver.cjs +1 -1
  124. package/dist/signers/server/resolver.js +1 -1
  125. package/dist/utils/constants.cjs +1 -1
  126. package/dist/utils/constants.js +1 -1
  127. package/dist/utils/device-signers/IframeDeviceSignerKeyStorage.cjs +1 -1
  128. package/dist/utils/device-signers/IframeDeviceSignerKeyStorage.js +1 -1
  129. package/dist/utils/device-signers/index.cjs +1 -1
  130. package/dist/utils/device-signers/index.js +1 -1
  131. package/dist/wallets/__tests__/test-helpers.cjs +1 -1
  132. package/dist/wallets/__tests__/test-helpers.js +1 -1
  133. package/dist/wallets/evm.cjs +1 -1
  134. package/dist/wallets/evm.js +1 -1
  135. package/dist/wallets/services/balance-formatter.cjs +1 -1
  136. package/dist/wallets/services/balance-formatter.js +1 -1
  137. package/dist/wallets/services/device-recovery-service.cjs +1 -1
  138. package/dist/wallets/services/device-recovery-service.js +1 -1
  139. package/dist/wallets/services/operation-poller.cjs +1 -1
  140. package/dist/wallets/services/operation-poller.js +1 -1
  141. package/dist/wallets/services/signer-manager.cjs +1 -1
  142. package/dist/wallets/services/signer-manager.js +1 -1
  143. package/dist/wallets/solana.cjs +1 -1
  144. package/dist/wallets/solana.js +1 -1
  145. package/dist/wallets/stellar.cjs +1 -1
  146. package/dist/wallets/stellar.js +1 -1
  147. package/dist/wallets/wallet-factory.cjs +1 -1
  148. package/dist/wallets/wallet-factory.js +1 -1
  149. package/dist/wallets/wallet.cjs +1 -1
  150. package/dist/wallets/wallet.js +1 -1
  151. package/package.json +4 -4
  152. package/dist/chunk-BXEH6VXA.js +0 -1
  153. package/dist/chunk-CTCUJBU2.js +0 -1
  154. package/dist/chunk-D6BFMPZA.cjs +0 -1
  155. package/dist/chunk-QU5AAJAW.js +0 -1
  156. package/dist/chunk-ZEGNY3K3.cjs +0 -1
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const arc: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Arcscan";
7
+ readonly url: "https://arc-scan.org";
8
+ readonly apiUrl: "https://api.arc-scan.org/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 5042;
24
+ name: "Arc";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "USDC";
28
+ readonly symbol: "USDC";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.arc-scan.org"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: false;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { arc };
@@ -0,0 +1 @@
1
+ import{a}from"../../chunk-QLOW4D2N.js";import"../../chunk-NU7VF7MC.js";export{a as arc};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkOQFZL5LIcjs = require('../../chunk-OQFZL5LI.cjs');require('../../chunk-DSIFRRBS.cjs');exports.celoSepolia = _chunkOQFZL5LIcjs.a;
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const celoSepolia: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Celo Sepolia Blockscout";
7
+ readonly url: "https://celo-sepolia.blockscout.com";
8
+ readonly apiUrl: "https://celo-sepolia.blockscout.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 11142220;
24
+ name: "Celo Sepolia";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "CELO";
28
+ readonly symbol: "CELO";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://forno.celo-sepolia.celo-testnet.org"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: true;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { celoSepolia };
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const celoSepolia: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Celo Sepolia Blockscout";
7
+ readonly url: "https://celo-sepolia.blockscout.com";
8
+ readonly apiUrl: "https://celo-sepolia.blockscout.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 11142220;
24
+ name: "Celo Sepolia";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "CELO";
28
+ readonly symbol: "CELO";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://forno.celo-sepolia.celo-testnet.org"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: true;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { celoSepolia };
@@ -0,0 +1 @@
1
+ import{a}from"../../chunk-C6E6WC4P.js";import"../../chunk-NU7VF7MC.js";export{a as celoSepolia};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkAUO6R32Hcjs = require('../../chunk-AUO6R32H.cjs');require('../../chunk-DSIFRRBS.cjs');exports.robinhoodChain = _chunkAUO6R32Hcjs.a;
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const robinhoodChain: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Robinhood Chain Explorer";
7
+ readonly url: "https://robinhoodchain.blockscout.com";
8
+ readonly apiUrl: "https://robinhoodchain.blockscout.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 4663;
24
+ name: "Robinhood Chain";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "Ether";
28
+ readonly symbol: "ETH";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.mainnet.chain.robinhood.com"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: false;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { robinhoodChain };
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const robinhoodChain: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Robinhood Chain Explorer";
7
+ readonly url: "https://robinhoodchain.blockscout.com";
8
+ readonly apiUrl: "https://robinhoodchain.blockscout.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 4663;
24
+ name: "Robinhood Chain";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "Ether";
28
+ readonly symbol: "ETH";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.mainnet.chain.robinhood.com"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: false;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { robinhoodChain };
@@ -0,0 +1 @@
1
+ import{a}from"../../chunk-V5NY4W5H.js";import"../../chunk-NU7VF7MC.js";export{a as robinhoodChain};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZPO3XSWUcjs = require('../../chunk-ZPO3XSWU.cjs');require('../../chunk-DSIFRRBS.cjs');exports.robinhoodChainTestnet = _chunkZPO3XSWUcjs.a;
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const robinhoodChainTestnet: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Robinhood Chain Testnet Explorer";
7
+ readonly url: "https://explorer.testnet.chain.robinhood.com";
8
+ readonly apiUrl: "https://explorer.testnet.chain.robinhood.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 46630;
24
+ name: "Robinhood Chain Testnet";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "Ether";
28
+ readonly symbol: "ETH";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.testnet.chain.robinhood.com"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: true;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { robinhoodChainTestnet };
@@ -0,0 +1,44 @@
1
+ import * as viem from 'viem';
2
+
3
+ declare const robinhoodChainTestnet: {
4
+ blockExplorers: {
5
+ readonly default: {
6
+ readonly name: "Robinhood Chain Testnet Explorer";
7
+ readonly url: "https://explorer.testnet.chain.robinhood.com";
8
+ readonly apiUrl: "https://explorer.testnet.chain.robinhood.com/api";
9
+ };
10
+ };
11
+ blockTime?: number | undefined;
12
+ contracts?: viem.Prettify<{
13
+ [key: string]: viem.ChainContract | {
14
+ [sourceId: number]: viem.ChainContract | undefined;
15
+ } | undefined;
16
+ } & {
17
+ ensRegistry?: viem.ChainContract | undefined;
18
+ ensUniversalResolver?: viem.ChainContract | undefined;
19
+ multicall3?: viem.ChainContract | undefined;
20
+ universalSignatureVerifier?: viem.ChainContract | undefined;
21
+ }> | undefined;
22
+ ensTlds?: readonly string[] | undefined;
23
+ id: 46630;
24
+ name: "Robinhood Chain Testnet";
25
+ nativeCurrency: {
26
+ readonly decimals: 18;
27
+ readonly name: "Ether";
28
+ readonly symbol: "ETH";
29
+ };
30
+ experimental_preconfirmationTime?: number | undefined;
31
+ rpcUrls: {
32
+ readonly default: {
33
+ readonly http: readonly ["https://rpc.testnet.chain.robinhood.com"];
34
+ };
35
+ };
36
+ sourceId?: number | undefined;
37
+ testnet: true;
38
+ custom?: Record<string, unknown> | undefined;
39
+ fees?: viem.ChainFees<undefined> | undefined;
40
+ formatters?: undefined;
41
+ serializers?: viem.ChainSerializers<undefined, viem.TransactionSerializable> | undefined;
42
+ };
43
+
44
+ export { robinhoodChainTestnet };
@@ -0,0 +1 @@
1
+ import{a}from"../../chunk-CGQCRDG7.js";import"../../chunk-NU7VF7MC.js";export{a as robinhoodChainTestnet};
@@ -1 +1 @@
1
- import{a as n}from"./chunk-277G6KNG.js";import{a as i}from"./chunk-IQ3QQ4M6.js";import{a as t}from"./chunk-GXUPHO44.js";import{a as r}from"./chunk-OQZTL6ZG.js";function c(a,e){switch(r(a)){case"evm":return new n(e);case"solana":return new i(e);case"stellar":return new t(e)}}export{c as a};
1
+ import{a as i}from"./chunk-IQ3QQ4M6.js";import{a as t}from"./chunk-GXUPHO44.js";import{a as n}from"./chunk-277G6KNG.js";import{a as r}from"./chunk-OQZTL6ZG.js";function c(a,e){switch(r(a)){case"evm":return new n(e);case"solana":return new i(e);case"stellar":return new t(e)}}export{c as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJNKTRQPScjs = require('./chunk-JNKTRQPS.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkWIAIJCQ2cjs = require('./chunk-WIAIJCQ2.cjs');var f={nativeToken:"eth",walletLocatorPrefix:"me:evm:smart",supportsSignatures:!0,addSignerChain(e){return e},extractAddSignerOperation(e,r,n){var a,t,o,d;if(!("chains"in e))throw _chunkWIAIJCQ2cjs.a.error("wallet.addSigner.error",{error:"Expected chains in response for EVM chain"}),new Error("Expected chains in response for EVM chain");if(((t=(a=e.chains)==null?void 0:a[r])==null?void 0:t.status)==="failed")throw _chunkWIAIJCQ2cjs.a.error("wallet.addSigner.failed",{chain:r,signerType:n.type,signerLocator:n.locator,chainStatus:(o=e.chains)==null?void 0:o[r]}),new (0, _chunkVS6I4S7Xcjs.j)(`Signer registration failed for chain ${r} (signer: ${n.locator})`,JSON.stringify((d=e.chains)==null?void 0:d[r]));return _chunkJNKTRQPScjs.c.call(void 0, e,r)},balanceTokenFields(e){return e!=null&&"contractAddress"in e?{contractAddress:e.contractAddress}:{}},emptyBalanceTokenFields(){return{contractAddress:void 0}}};exports.a = f;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkJNKTRQPScjs = require('./chunk-JNKTRQPS.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkSP5DQZ6Dcjs = require('./chunk-SP5DQZ6D.cjs');var f={nativeToken:"eth",walletLocatorPrefix:"me:evm:smart",supportsSignatures:!0,addSignerChain(e){return e},extractAddSignerOperation(e,r,n){var a,t,o,d;if(!("chains"in e))throw _chunkSP5DQZ6Dcjs.a.error("wallet.addSigner.error",{error:"Expected chains in response for EVM chain"}),new Error("Expected chains in response for EVM chain");if(((t=(a=e.chains)==null?void 0:a[r])==null?void 0:t.status)==="failed")throw _chunkSP5DQZ6Dcjs.a.error("wallet.addSigner.failed",{chain:r,signerType:n.type,signerLocator:n.locator,chainStatus:(o=e.chains)==null?void 0:o[r]}),new (0, _chunkVS6I4S7Xcjs.j)(`Signer registration failed for chain ${r} (signer: ${n.locator})`,JSON.stringify((d=e.chains)==null?void 0:d[r]));return _chunkJNKTRQPScjs.c.call(void 0, e,r)},balanceTokenFields(e){return e!=null&&"contractAddress"in e?{contractAddress:e.contractAddress}:{}},emptyBalanceTokenFields(){return{contractAddress:void 0}}};exports.a = f;
@@ -1 +1 @@
1
- import{a as L}from"./chunk-L7RATGRO.js";import{a as M}from"./chunk-5LNDUSMZ.js";import{b as w}from"./chunk-BV6IQIQK.js";import{b as u,c as b}from"./chunk-JLWNRQ4S.js";import{a as W}from"./chunk-3KAXLLXJ.js";import{b as k,c as x}from"./chunk-TSJUK3ED.js";import{f as P}from"./chunk-BXEH6VXA.js";import{R as K,e as I,g as C,l as D,o as T,t as $}from"./chunk-KOHPRJDP.js";import{a as h}from"./chunk-JNGPW247.js";import{a as f,b as S,c as F,h as p}from"./chunk-NU7VF7MC.js";import{WithLoggerContext as N}from"@crossmint/common-sdk-base";import{WebAuthnP256 as j}from"ox";var O="When 'signers' is provided to a method that may fetch an existing wallet, each specified signer must exist in that wallet's configuration.",R=class{constructor(e){this.apiClient=e}getWallet(e,r){return p(this,null,function*(){let n,i;if(typeof e=="string"){if(!this.apiClient.isServerSide)throw new C("getWallet with walletLocator is only available on the server side. Use getWallet(args) instead.");if(r==null)throw new C("Wallet configuration is required when using walletLocator: https://docs.crossmint.com/sdk-reference/wallets/type-aliases/WalletArgsFor");n=e,i=r}else{if(this.apiClient.isServerSide)throw new C("getWallet on server side requires a walletLocator parameter. Use getWallet(walletLocator, args) instead.");i=e,n=this.getWalletLocator(i)}let t=S(f({},i),{chain:P(i.chain,this.apiClient.environment)});h.info("walletFactory.getWallet.start");let s=yield this.apiClient.getWallet(n);if("error"in s)throw h.warn("walletFactory.getWallet.notFound",{error:s.error}),new I(JSON.stringify(s));return h.info("walletFactory.getWallet.success",{address:s.address}),yield this.createWalletInstance(s,t)})}createWallet(e){return p(this,null,function*(){var d,y,g,v,m,E;let r=S(f({},e),{chain:P(e.chain,this.apiClient.environment)});if(yield(g=(y=(d=r.options)==null?void 0:d.callbacks)==null?void 0:y.onWalletCreationStart)==null?void 0:g.call(y),h.info("walletFactory.createWallet.start"),!this.apiClient.isServerSide&&r.owner!=null)throw h.error("walletFactory.createWallet.error",{error:"Owner field cannot be specified in client-side createWallet calls"}),new C("Owner field cannot be specified in client-side createWallet calls. Owner is determined from JWT authentication.");let n=(v=r.signers)!=null?v:[],i=((m=r.options)==null?void 0:m.deviceSignerKeyStorage)!=null&&!n.some(A=>A.type==="device"),t=i?[...n,{type:"device"}]:n,s=yield this.registerSigners(t,r.chain,(E=r.options)==null?void 0:E.deviceSignerKeyStorage),o=this.validatedRecoverySignerList(r.recovery,r.chain),a=[];for(let A of o)a.push(yield this.resolveRecoverySigner(A,r.chain));let l=Array.isArray(r.recovery)?{recoveryMethods:a}:{adminSigner:a[0]},c=yield this.createSmartWallet(r,l,s,i);if("error"in c)throw h.error("walletFactory.createWallet.error",{error:c.error}),K(c),new C(JSON.stringify(c));return h.info("walletFactory.createWallet.success",{address:c.address}),yield this.createWalletInstance(c,r)})}createSmartWallet(e,r,n,i){return p(this,null,function*(){let t=l=>{var c,d;return{type:"smart",chainType:this.getChainType(e.chain),config:f(f(f({},r),e.plugins?{plugins:e.plugins}:{}),l!=null?{delegatedSigners:l}:{}),owner:(c=e.owner)!=null?c:void 0,alias:(d=e.alias)!=null?d:void 0}},s=yield this.apiClient.createWallet(t(n));if(!(i&&"error"in s&&s.code===D))return s;h.info("walletFactory.createWallet.deviceSignerUnsupported.retryWithoutDeviceSigner",{chain:e.chain});let a=n.filter(l=>!this.isBuiltDeviceSigner(l));return yield this.apiClient.createWallet(t(a))})}validatedRecoverySignerList(e,r){let n=W(e);if(!Array.isArray(e))return n;if(r!=="solana"&&r!=="stellar")throw new $(`Multiple recovery signers are not supported on ${r} yet. Pass a single recovery signer.`);if(n.length===0)throw new T("At least one recovery signer is required");return n}resolveRecoverySigner(e,r){return p(this,null,function*(){if(e.type==="passkey"&&e.id==null)return yield this.createPasskeySigner(e);if(e.type==="server"){let{derivedAddress:n}=k(e,r,this.apiClient.projectId,this.apiClient.environment);return{type:"server",address:n}}return e})}isBuiltDeviceSigner(e){let r=e.signer;return typeof r=="object"&&r!=null&&r.type==="device"}mergePhoneChannel(e,r){return e.type!=="phone"||(r==null?void 0:r.type)!=="phone"||r.channel==null?e:S(f({},e),{channel:r.channel})}createWalletInstance(e,r){return p(this,null,function*(){var y;this.validateExistingWalletConfig(e,r);let n=r,i=e.config,t=(y=i.recoveryMethods)!=null?y:[i.adminSigner],s=this.mergeRecoverySigners(t,W(n.recovery),r.chain),o=i.delegatedSigners,a=o;if(a!=null&&a.length===1&&(a[0].type==="server"||a[0].type==="external-wallet"))a=n.signers;else if(a!=null){let g=n.signers;a=a.map(v=>this.mergePhoneChannel(v,g==null?void 0:g.find(m=>m.type==="phone"&&v.type==="phone"&&w(m)===v.locator)))}let l=t.filter(g=>g.type==="server"&&"address"in g&&!("secret"in g)).map(g=>g.address),c=(o!=null?o:[]).filter(g=>g.type==="server"&&"address"in g&&!("secret"in g)).map(g=>g.address),d=new L({chain:r.chain,address:e.address,owner:e.owner,options:r.options,alias:r.alias,recovery:s,apiRecoveryServerSignerAddresses:l,apiDelegatedServerSignerAddresses:c,signers:a!=null?a:[]},this.apiClient);return yield d.waitForInit(),d})}mergeRecoverySigners(e,r,n){let i=[...r],t=new Map,s=[(o,a)=>this.matchesRecoverySigner(o,a,n),(o,a)=>o.type===a.type];for(let o of s)e.forEach((a,l)=>{if(t.has(l))return;let c=i.findIndex(d=>o(d,a));c!==-1&&t.set(l,i.splice(c,1)[0])});return e.map((o,a)=>{let l=t.get(a);return l==null?o:l.type==="server"||l.type==="external-wallet"?l:this.mergePhoneChannel(o,l)})}matchesRecoverySigner(e,r,n){if(e.type!==r.type)return!1;if(e.type==="email"&&"email"in r)return u(e.email)===u(r.email);if(e.type==="phone"&&"phone"in r)return e.phone===r.phone;if(e.type==="external-wallet"&&"address"in r)return e.address===r.address;if(e.type==="server"&&"address"in r){if(!("secret"in e))return e.address===r.address;let{primary:i,legacy:t}=x(e,n,this.apiClient.projectId,this.apiClient.environment);return i.derivedAddress===r.address||(t==null?void 0:t.derivedAddress)===r.address}return!0}getWalletLocator(e){return`me:${this.getChainType(e.chain)}:smart`+(e.alias!=null?`:alias:${e.alias}`:"")}createPasskeySigner(e){return p(this,null,function*(){var i;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let r=(i=e.name)!=null?i:`Crossmint Wallet ${Date.now()}`,n=e.onCreatePasskey?yield e.onCreatePasskey(r):yield j.createCredential({name:r});return{type:"passkey",id:n.id,name:r,publicKey:{x:n.publicKey.x.toString(),y:n.publicKey.y.toString()}}})}validateExistingWalletConfig(e,r){var i;if(r.owner!=null&&e.owner!=null&&u(r.owner)!==u(e.owner))throw new C("Wallet owner does not match existing wallet's linked user");if(r.chain==="solana"&&e.chainType!=="solana"||r.chain!=="solana"&&e.chainType==="solana"||r.chain==="stellar"&&e.chainType!=="stellar"||r.chain!=="stellar"&&e.chainType==="stellar")throw new C(`Wallet chain does not match existing wallet's chain. You must use chain: ${e.chainType}.`);if(e.type!=="smart")return;let n=r;if(n.recovery!=null||n.signers!=null){let t=e.config,s=(i=t==null?void 0:t.recoveryMethods)!=null?i:(t==null?void 0:t.adminSigner)!=null?[t.adminSigner]:[],o=[...s];for(let l of W(n.recovery)){if(s.length===0)break;let c=o.findIndex(y=>this.matchesRecoverySigner(l,y,r.chain)),d=c===-1?o.find(y=>y.type===l.type):o[c];if(d==null)throw new C("The wallet recovery signer type does not match the existing wallet's recovery signer type");b(l,d),c!==-1&&o.splice(c,1)}let a=n.signers;a!=null&&this.validateSigners(e,a,r.chain)}}validateSigners(e,r,n){let i=e.config,t=i==null?void 0:i.delegatedSigners;if(r.length!==0){if(t==null||t.length===0)throw new C(`${r.length} signer(s) specified, but wallet "${e.address}" has no signers. ${O}`);for(let s of r){let o=t.find(a=>{if(this.isMatchingPasskeySigner(s,a,i)||a.type==="device"&&s.type==="device")return!0;if(s.type==="server"){let{primary:l,legacy:c}=x(s,n,this.apiClient.projectId,this.apiClient.environment);return a.locator===`server:${l.derivedAddress}`||c!=null&&a.locator===`server:${c.derivedAddress}`}return a.locator===w(s)});if(o==null){let a=t.map(l=>l.locator).join(", ");throw new C(`Signer '${s.type}' does not exist in wallet "${e.address}". Available signers: ${a}. ${O}`)}b(s,o)}}}isMatchingPasskeySigner(e,r,n){var t,s;let i=((s=(t=n.delegatedSigners)==null?void 0:t.filter(o=>o.type==="passkey").length)!=null?s:0)+(n.adminSigner.type==="passkey"?1:0);if(e.type==="passkey"){if(e.id==null&&i===1)return r.type==="passkey";if(e.id==null&&i>1)throw new C("When creating a wallet with multiple passkeys, you must provide the passkey ID for each passkey.")}return!1}registerSigners(e,r,n){return p(this,null,function*(){var i;return yield Promise.all((i=e==null?void 0:e.map(t=>p(this,null,function*(){if(t.type==="passkey")return t.id==null?{signer:yield this.createPasskeySigner(t)}:{signer:t};if(t.type==="device"){if(t.publicKey!=null)return{signer:{type:"device",publicKey:t.publicKey,name:t.name}};if(t.locator!=null)return{signer:t.locator};if(n==null)throw new C("Device signer key storage is required for device signers");let s=yield M(n);return{signer:{type:"device",publicKey:s.publicKey,name:s.name}}}if(t.type==="server"&&r!=null){let{derivedAddress:s}=k(t,r,this.apiClient.projectId,this.apiClient.environment);return{signer:`server:${s}`}}return{signer:w(t)}})))!=null?i:[])})}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};F([N({logger:h,methodName:"walletFactory.getWallet",buildContext(e,r){if(typeof r[0]=="string"){let i=r[1];return{walletLocator:r[0],chain:i==null?void 0:i.chain}}let n=r[0];return{chain:n==null?void 0:n.chain}}})],R.prototype,"getWallet",1),F([N({logger:h,methodName:"walletFactory.createWallet",buildContext(e,r){return{chain:r[0].chain}}})],R.prototype,"createWallet",1);export{R as a};
1
+ import{a as L}from"./chunk-LUUUKDHQ.js";import{a as M}from"./chunk-5LNDUSMZ.js";import{b as w}from"./chunk-BV6IQIQK.js";import{b as u,c as b}from"./chunk-JLWNRQ4S.js";import{a as W}from"./chunk-3KAXLLXJ.js";import{b as k,c as x}from"./chunk-TSJUK3ED.js";import{f as P}from"./chunk-NMUHOXYI.js";import{R as K,e as I,g as C,l as D,o as T,t as $}from"./chunk-KOHPRJDP.js";import{a as h}from"./chunk-AZAIXRGS.js";import{a as f,b as S,c as F,h as p}from"./chunk-NU7VF7MC.js";import{WithLoggerContext as N}from"@crossmint/common-sdk-base";import{WebAuthnP256 as j}from"ox";var O="When 'signers' is provided to a method that may fetch an existing wallet, each specified signer must exist in that wallet's configuration.",R=class{constructor(e){this.apiClient=e}getWallet(e,r){return p(this,null,function*(){let n,i;if(typeof e=="string"){if(!this.apiClient.isServerSide)throw new C("getWallet with walletLocator is only available on the server side. Use getWallet(args) instead.");if(r==null)throw new C("Wallet configuration is required when using walletLocator: https://docs.crossmint.com/sdk-reference/wallets/type-aliases/WalletArgsFor");n=e,i=r}else{if(this.apiClient.isServerSide)throw new C("getWallet on server side requires a walletLocator parameter. Use getWallet(walletLocator, args) instead.");i=e,n=this.getWalletLocator(i)}let t=S(f({},i),{chain:P(i.chain,this.apiClient.environment)});h.info("walletFactory.getWallet.start");let s=yield this.apiClient.getWallet(n);if("error"in s)throw h.warn("walletFactory.getWallet.notFound",{error:s.error}),new I(JSON.stringify(s));return h.info("walletFactory.getWallet.success",{address:s.address}),yield this.createWalletInstance(s,t)})}createWallet(e){return p(this,null,function*(){var d,y,g,v,m,E;let r=S(f({},e),{chain:P(e.chain,this.apiClient.environment)});if(yield(g=(y=(d=r.options)==null?void 0:d.callbacks)==null?void 0:y.onWalletCreationStart)==null?void 0:g.call(y),h.info("walletFactory.createWallet.start"),!this.apiClient.isServerSide&&r.owner!=null)throw h.error("walletFactory.createWallet.error",{error:"Owner field cannot be specified in client-side createWallet calls"}),new C("Owner field cannot be specified in client-side createWallet calls. Owner is determined from JWT authentication.");let n=(v=r.signers)!=null?v:[],i=((m=r.options)==null?void 0:m.deviceSignerKeyStorage)!=null&&!n.some(A=>A.type==="device"),t=i?[...n,{type:"device"}]:n,s=yield this.registerSigners(t,r.chain,(E=r.options)==null?void 0:E.deviceSignerKeyStorage),o=this.validatedRecoverySignerList(r.recovery,r.chain),a=[];for(let A of o)a.push(yield this.resolveRecoverySigner(A,r.chain));let l=Array.isArray(r.recovery)?{recoveryMethods:a}:{adminSigner:a[0]},c=yield this.createSmartWallet(r,l,s,i);if("error"in c)throw h.error("walletFactory.createWallet.error",{error:c.error}),K(c),new C(JSON.stringify(c));return h.info("walletFactory.createWallet.success",{address:c.address}),yield this.createWalletInstance(c,r)})}createSmartWallet(e,r,n,i){return p(this,null,function*(){let t=l=>{var c,d;return{type:"smart",chainType:this.getChainType(e.chain),config:f(f(f({},r),e.plugins?{plugins:e.plugins}:{}),l!=null?{delegatedSigners:l}:{}),owner:(c=e.owner)!=null?c:void 0,alias:(d=e.alias)!=null?d:void 0}},s=yield this.apiClient.createWallet(t(n));if(!(i&&"error"in s&&s.code===D))return s;h.info("walletFactory.createWallet.deviceSignerUnsupported.retryWithoutDeviceSigner",{chain:e.chain});let a=n.filter(l=>!this.isBuiltDeviceSigner(l));return yield this.apiClient.createWallet(t(a))})}validatedRecoverySignerList(e,r){let n=W(e);if(!Array.isArray(e))return n;if(r!=="solana"&&r!=="stellar")throw new $(`Multiple recovery signers are not supported on ${r} yet. Pass a single recovery signer.`);if(n.length===0)throw new T("At least one recovery signer is required");return n}resolveRecoverySigner(e,r){return p(this,null,function*(){if(e.type==="passkey"&&e.id==null)return yield this.createPasskeySigner(e);if(e.type==="server"){let{derivedAddress:n}=k(e,r,this.apiClient.projectId,this.apiClient.environment);return{type:"server",address:n}}return e})}isBuiltDeviceSigner(e){let r=e.signer;return typeof r=="object"&&r!=null&&r.type==="device"}mergePhoneChannel(e,r){return e.type!=="phone"||(r==null?void 0:r.type)!=="phone"||r.channel==null?e:S(f({},e),{channel:r.channel})}createWalletInstance(e,r){return p(this,null,function*(){var y;this.validateExistingWalletConfig(e,r);let n=r,i=e.config,t=(y=i.recoveryMethods)!=null?y:[i.adminSigner],s=this.mergeRecoverySigners(t,W(n.recovery),r.chain),o=i.delegatedSigners,a=o;if(a!=null&&a.length===1&&(a[0].type==="server"||a[0].type==="external-wallet"))a=n.signers;else if(a!=null){let g=n.signers;a=a.map(v=>this.mergePhoneChannel(v,g==null?void 0:g.find(m=>m.type==="phone"&&v.type==="phone"&&w(m)===v.locator)))}let l=t.filter(g=>g.type==="server"&&"address"in g&&!("secret"in g)).map(g=>g.address),c=(o!=null?o:[]).filter(g=>g.type==="server"&&"address"in g&&!("secret"in g)).map(g=>g.address),d=new L({chain:r.chain,address:e.address,owner:e.owner,options:r.options,alias:r.alias,recovery:s,apiRecoveryServerSignerAddresses:l,apiDelegatedServerSignerAddresses:c,signers:a!=null?a:[]},this.apiClient);return yield d.waitForInit(),d})}mergeRecoverySigners(e,r,n){let i=[...r],t=new Map,s=[(o,a)=>this.matchesRecoverySigner(o,a,n),(o,a)=>o.type===a.type];for(let o of s)e.forEach((a,l)=>{if(t.has(l))return;let c=i.findIndex(d=>o(d,a));c!==-1&&t.set(l,i.splice(c,1)[0])});return e.map((o,a)=>{let l=t.get(a);return l==null?o:l.type==="server"||l.type==="external-wallet"?l:this.mergePhoneChannel(o,l)})}matchesRecoverySigner(e,r,n){if(e.type!==r.type)return!1;if(e.type==="email"&&"email"in r)return u(e.email)===u(r.email);if(e.type==="phone"&&"phone"in r)return e.phone===r.phone;if(e.type==="external-wallet"&&"address"in r)return e.address===r.address;if(e.type==="server"&&"address"in r){if(!("secret"in e))return e.address===r.address;let{primary:i,legacy:t}=x(e,n,this.apiClient.projectId,this.apiClient.environment);return i.derivedAddress===r.address||(t==null?void 0:t.derivedAddress)===r.address}return!0}getWalletLocator(e){return`me:${this.getChainType(e.chain)}:smart`+(e.alias!=null?`:alias:${e.alias}`:"")}createPasskeySigner(e){return p(this,null,function*(){var i;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let r=(i=e.name)!=null?i:`Crossmint Wallet ${Date.now()}`,n=e.onCreatePasskey?yield e.onCreatePasskey(r):yield j.createCredential({name:r});return{type:"passkey",id:n.id,name:r,publicKey:{x:n.publicKey.x.toString(),y:n.publicKey.y.toString()}}})}validateExistingWalletConfig(e,r){var i;if(r.owner!=null&&e.owner!=null&&u(r.owner)!==u(e.owner))throw new C("Wallet owner does not match existing wallet's linked user");if(r.chain==="solana"&&e.chainType!=="solana"||r.chain!=="solana"&&e.chainType==="solana"||r.chain==="stellar"&&e.chainType!=="stellar"||r.chain!=="stellar"&&e.chainType==="stellar")throw new C(`Wallet chain does not match existing wallet's chain. You must use chain: ${e.chainType}.`);if(e.type!=="smart")return;let n=r;if(n.recovery!=null||n.signers!=null){let t=e.config,s=(i=t==null?void 0:t.recoveryMethods)!=null?i:(t==null?void 0:t.adminSigner)!=null?[t.adminSigner]:[],o=[...s];for(let l of W(n.recovery)){if(s.length===0)break;let c=o.findIndex(y=>this.matchesRecoverySigner(l,y,r.chain)),d=c===-1?o.find(y=>y.type===l.type):o[c];if(d==null)throw new C("The wallet recovery signer type does not match the existing wallet's recovery signer type");b(l,d),c!==-1&&o.splice(c,1)}let a=n.signers;a!=null&&this.validateSigners(e,a,r.chain)}}validateSigners(e,r,n){let i=e.config,t=i==null?void 0:i.delegatedSigners;if(r.length!==0){if(t==null||t.length===0)throw new C(`${r.length} signer(s) specified, but wallet "${e.address}" has no signers. ${O}`);for(let s of r){let o=t.find(a=>{if(this.isMatchingPasskeySigner(s,a,i)||a.type==="device"&&s.type==="device")return!0;if(s.type==="server"){let{primary:l,legacy:c}=x(s,n,this.apiClient.projectId,this.apiClient.environment);return a.locator===`server:${l.derivedAddress}`||c!=null&&a.locator===`server:${c.derivedAddress}`}return a.locator===w(s)});if(o==null){let a=t.map(l=>l.locator).join(", ");throw new C(`Signer '${s.type}' does not exist in wallet "${e.address}". Available signers: ${a}. ${O}`)}b(s,o)}}}isMatchingPasskeySigner(e,r,n){var t,s;let i=((s=(t=n.delegatedSigners)==null?void 0:t.filter(o=>o.type==="passkey").length)!=null?s:0)+(n.adminSigner.type==="passkey"?1:0);if(e.type==="passkey"){if(e.id==null&&i===1)return r.type==="passkey";if(e.id==null&&i>1)throw new C("When creating a wallet with multiple passkeys, you must provide the passkey ID for each passkey.")}return!1}registerSigners(e,r,n){return p(this,null,function*(){var i;return yield Promise.all((i=e==null?void 0:e.map(t=>p(this,null,function*(){if(t.type==="passkey")return t.id==null?{signer:yield this.createPasskeySigner(t)}:{signer:t};if(t.type==="device"){if(t.publicKey!=null)return{signer:{type:"device",publicKey:t.publicKey,name:t.name}};if(t.locator!=null)return{signer:t.locator};if(n==null)throw new C("Device signer key storage is required for device signers");let s=yield M(n);return{signer:{type:"device",publicKey:s.publicKey,name:s.name}}}if(t.type==="server"&&r!=null){let{derivedAddress:s}=k(t,r,this.apiClient.projectId,this.apiClient.environment);return{signer:`server:${s}`}}return{signer:w(t)}})))!=null?i:[])})}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};F([N({logger:h,methodName:"walletFactory.getWallet",buildContext(e,r){if(typeof r[0]=="string"){let i=r[1];return{walletLocator:r[0],chain:i==null?void 0:i.chain}}let n=r[0];return{chain:n==null?void 0:n.chain}}})],R.prototype,"getWallet",1),F([N({logger:h,methodName:"walletFactory.createWallet",buildContext(e,r){return{chain:r[0].chain}}})],R.prototype,"createWallet",1);export{R as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkO2BU2KJDcjs = require('./chunk-O2BU2KJD.cjs');var _chunkRMILQMLJcjs = require('./chunk-RMILQMLJ.cjs');var _chunk4L7JP2WLcjs = require('./chunk-4L7JP2WL.cjs');var _chunk4IIZO5PIcjs = require('./chunk-4IIZO5PI.cjs');var _chunkLXAEBSEYcjs = require('./chunk-LXAEBSEY.cjs');var _chunk5FVDLMWWcjs = require('./chunk-5FVDLMWW.cjs');var _chunkXWQC6G7Ncjs = require('./chunk-XWQC6G7N.cjs');var _chunkR4SBFRTMcjs = require('./chunk-R4SBFRTM.cjs');var _chunkHYWIWJ6Hcjs = require('./chunk-HYWIWJ6H.cjs');var _chunkPWVGLO7Tcjs = require('./chunk-PWVGLO7T.cjs');var _chunkCDHMNLZ6cjs = require('./chunk-CDHMNLZ6.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');function c(r,e,n){switch(e.type){case"email":case"phone":return r==="solana"?new (0, _chunk4IIZO5PIcjs.a)(e):r==="stellar"?new (0, _chunkRMILQMLJcjs.a)(e):new (0, _chunk4L7JP2WLcjs.a)(e);case"api-key":return r==="solana"?new (0, _chunkCDHMNLZ6cjs.a)(e):new (0, _chunkR4SBFRTMcjs.a)(e);case"external-wallet":return r==="solana"?new (0, _chunkLXAEBSEYcjs.a)(e):r==="stellar"?new (0, _chunk5FVDLMWWcjs.a)(e):new (0, _chunkHYWIWJ6Hcjs.a)(e);case"server":return _chunkO2BU2KJDcjs.a.call(void 0, r,e);case"passkey":return new (0, _chunkPWVGLO7Tcjs.a)(e);case"device":if(n==null)throw new (0, _chunkVS6I4S7Xcjs.g)("Device signer key storage is required for device signers");return new (0, _chunkXWQC6G7Ncjs.a)(e,n)}}function b(r,e,n,a){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){if(!e.startsWith("device:"))return null;let w=e.replace("device:","");return(yield a.hasKey(w))?c(r,{type:"device",locator:e,address:n},a):null})}exports.a = c; exports.b = b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkUX2FEVDYcjs = require('./chunk-UX2FEVDY.cjs');var _chunkZUG5ROPFcjs = require('./chunk-ZUG5ROPF.cjs');var _chunkKQFRFHM4cjs = require('./chunk-KQFRFHM4.cjs');var _chunkJAWHGOGPcjs = require('./chunk-JAWHGOGP.cjs');var _chunkLXAEBSEYcjs = require('./chunk-LXAEBSEY.cjs');var _chunk5FVDLMWWcjs = require('./chunk-5FVDLMWW.cjs');var _chunkXWQC6G7Ncjs = require('./chunk-XWQC6G7N.cjs');var _chunkR4SBFRTMcjs = require('./chunk-R4SBFRTM.cjs');var _chunkHYWIWJ6Hcjs = require('./chunk-HYWIWJ6H.cjs');var _chunkPWVGLO7Tcjs = require('./chunk-PWVGLO7T.cjs');var _chunkCDHMNLZ6cjs = require('./chunk-CDHMNLZ6.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');function c(r,e,n){switch(e.type){case"email":case"phone":return r==="solana"?new (0, _chunkKQFRFHM4cjs.a)(e):r==="stellar"?new (0, _chunkJAWHGOGPcjs.a)(e):new (0, _chunkZUG5ROPFcjs.a)(e);case"api-key":return r==="solana"?new (0, _chunkCDHMNLZ6cjs.a)(e):new (0, _chunkR4SBFRTMcjs.a)(e);case"external-wallet":return r==="solana"?new (0, _chunkLXAEBSEYcjs.a)(e):r==="stellar"?new (0, _chunk5FVDLMWWcjs.a)(e):new (0, _chunkHYWIWJ6Hcjs.a)(e);case"server":return _chunkUX2FEVDYcjs.a.call(void 0, r,e);case"passkey":return new (0, _chunkPWVGLO7Tcjs.a)(e);case"device":if(n==null)throw new (0, _chunkVS6I4S7Xcjs.g)("Device signer key storage is required for device signers");return new (0, _chunkXWQC6G7Ncjs.a)(e,n)}}function b(r,e,n,a){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){if(!e.startsWith("device:"))return null;let w=e.replace("device:","");return(yield a.hasKey(w))?c(r,{type:"device",locator:e,address:n},a):null})}exports.a = c; exports.b = b;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkWIAIJCQ2cjs = require('./chunk-WIAIJCQ2.cjs');var _chunk3TPBVNNFcjs = require('./chunk-3TPBVNNF.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var h=class extends _commonsdkbase.CrossmintApiClient{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:_chunk3TPBVNNFcjs.c,version:_chunk3TPBVNNFcjs.b}}});this.apiPrefix="api/2025-06-09/wallets";this.unstableApiPrefix="api/unstable/wallets"}createWallet(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let s=this.isServerSide?`${this.apiPrefix}`:`${this.apiPrefix}/me`;_chunkWIAIJCQ2cjs.a.info("wallets.api.createWallet",{chainType:e.chainType,walletType:e.type});let t=yield(yield this.post(s,{body:JSON.stringify(e),headers:this.headers})).json();return"error"in t?_chunkWIAIJCQ2cjs.a.error("wallets.api.createWallet.error",{error:t.error,chainType:e.chainType}):"address"in t&&_chunkWIAIJCQ2cjs.a.info("wallets.api.createWallet.success",{address:t.address,chainType:e.chainType}),t})}getWallet(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkWIAIJCQ2cjs.a.info("wallets.api.getWallet",{locator:e});let r=yield(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json();return"error"in r?_chunkWIAIJCQ2cjs.a.warn("wallets.api.getWallet.error",{locator:e,error:r.error}):"address"in r&&_chunkWIAIJCQ2cjs.a.info("wallets.api.getWallet.success",{address:r.address,locator:e}),r})}createTransaction(e,s){return _chunkDSIFRRBScjs.h.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,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions/${s}/approvals`,{body:JSON.stringify(r),headers:this.headers})).json()})}getTransaction(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkDSIFRRBScjs.h.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,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let t=yield this.post(`${this.apiPrefix}/${e}/signatures/${s}/approvals`,{body:JSON.stringify(r),headers:this.headers});return t.status===422?this.getSignature(e,s):t.json()})}getSignature(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}getNfts(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let s=new URLSearchParams;s.append("page",e.page.toString()),s.append("perPage",e.perPage.toString());let r=`${e.chain}:${e.address}`;return(yield this.get(`${this.apiPrefix}/${r}/nfts?${s.toString()}`,{headers:this.headers})).json()})}getTransfers(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=new URLSearchParams;return r.append("chain",s.chain.toString()),s.tokens!=null&&r.append("tokens",s.tokens),r.append("status",s.status),(yield this.get(`${this.unstableApiPrefix}/${e}/transfers?${r.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=new URLSearchParams;return r.append("tokens",s.tokens.join(",")),r.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${e}/balances?${r.toString()}`,{headers:this.headers})).json()})}fundWallet(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){if(this.environment===_commonsdkbase.APIKeyEnvironmentPrefix.PRODUCTION)throw new Error("Funding wallets is only supported in staging environment");return(yield this.post(`api/v1-alpha2/wallets/${e}/balances`,{body:JSON.stringify(s),headers:this.headers})).json()})}registerSigner(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signers`,{body:JSON.stringify(s),headers:this.headers})).json()})}removeSigner(e,s,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let t=encodeURIComponent(s),a=new URLSearchParams;r.chain&&a.append("chain",r.chain),r.approver!=null&&a.append("approver",r.approver);let p=`${this.apiPrefix}/${e}/signers/${t}${a.size>0?`?${a.toString()}`:""}`;return(yield this.delete(p,{headers:this.headers})).json()})}getSigner(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=encodeURIComponent(s),t=yield this.get(`${this.apiPrefix}/${e}/signers/${r}`,{headers:this.headers});if(!t.ok){let a=null;try{a=yield t.text()}catch(p){}throw new (0, _commonsdkbase.ApiClientError)(`API request failed: ${t.status} ${t.statusText}`,t.status,t.statusText,a)}return t.json()})}send(e,s,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkWIAIJCQ2cjs.a.info("wallets.api.send",{walletLocator:e,tokenLocator:s,recipient:r.recipient});let a=yield(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(r),headers:this.headers})).json();return"error"in a?_chunkWIAIJCQ2cjs.a.error("wallets.api.send.error",{walletLocator:e,tokenLocator:s,error:a.error}):"id"in a&&_chunkWIAIJCQ2cjs.a.info("wallets.api.send.success",{walletLocator:e,transactionId:a.id}),a})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkVS6I4S7Xcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get projectId(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkVS6I4S7Xcjs.a)("Invalid API key");return this.parsedAPIKey.projectId}get headers(){return{"Content-Type":"application/json"}}};exports.a = h;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkSP5DQZ6Dcjs = require('./chunk-SP5DQZ6D.cjs');var _chunkXFCHACH7cjs = require('./chunk-XFCHACH7.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var h=class extends _commonsdkbase.CrossmintApiClient{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:_chunkXFCHACH7cjs.c,version:_chunkXFCHACH7cjs.b}}});this.apiPrefix="api/2025-06-09/wallets";this.unstableApiPrefix="api/unstable/wallets"}createWallet(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let s=this.isServerSide?`${this.apiPrefix}`:`${this.apiPrefix}/me`;_chunkSP5DQZ6Dcjs.a.info("wallets.api.createWallet",{chainType:e.chainType,walletType:e.type});let t=yield(yield this.post(s,{body:JSON.stringify(e),headers:this.headers})).json();return"error"in t?_chunkSP5DQZ6Dcjs.a.error("wallets.api.createWallet.error",{error:t.error,chainType:e.chainType}):"address"in t&&_chunkSP5DQZ6Dcjs.a.info("wallets.api.createWallet.success",{address:t.address,chainType:e.chainType}),t})}getWallet(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkSP5DQZ6Dcjs.a.info("wallets.api.getWallet",{locator:e});let r=yield(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json();return"error"in r?_chunkSP5DQZ6Dcjs.a.warn("wallets.api.getWallet.error",{locator:e,error:r.error}):"address"in r&&_chunkSP5DQZ6Dcjs.a.info("wallets.api.getWallet.success",{address:r.address,locator:e}),r})}createTransaction(e,s){return _chunkDSIFRRBScjs.h.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,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/transactions/${s}/approvals`,{body:JSON.stringify(r),headers:this.headers})).json()})}getTransaction(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkDSIFRRBScjs.h.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,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let t=yield this.post(`${this.apiPrefix}/${e}/signatures/${s}/approvals`,{body:JSON.stringify(r),headers:this.headers});return t.status===422?this.getSignature(e,s):t.json()})}getSignature(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}getNfts(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let s=new URLSearchParams;s.append("page",e.page.toString()),s.append("perPage",e.perPage.toString());let r=`${e.chain}:${e.address}`;return(yield this.get(`${this.apiPrefix}/${r}/nfts?${s.toString()}`,{headers:this.headers})).json()})}getTransfers(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=new URLSearchParams;return r.append("chain",s.chain.toString()),s.tokens!=null&&r.append("tokens",s.tokens),r.append("status",s.status),(yield this.get(`${this.unstableApiPrefix}/${e}/transfers?${r.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=new URLSearchParams;return r.append("tokens",s.tokens.join(",")),r.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${e}/balances?${r.toString()}`,{headers:this.headers})).json()})}fundWallet(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){if(this.environment===_commonsdkbase.APIKeyEnvironmentPrefix.PRODUCTION)throw new Error("Funding wallets is only supported in staging environment");return(yield this.post(`api/v1-alpha2/wallets/${e}/balances`,{body:JSON.stringify(s),headers:this.headers})).json()})}registerSigner(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/signers`,{body:JSON.stringify(s),headers:this.headers})).json()})}removeSigner(e,s,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let t=encodeURIComponent(s),a=new URLSearchParams;r.chain&&a.append("chain",r.chain),r.approver!=null&&a.append("approver",r.approver);let p=`${this.apiPrefix}/${e}/signers/${t}${a.size>0?`?${a.toString()}`:""}`;return(yield this.delete(p,{headers:this.headers})).json()})}getSigner(e,s){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r=encodeURIComponent(s),t=yield this.get(`${this.apiPrefix}/${e}/signers/${r}`,{headers:this.headers});if(!t.ok){let a=null;try{a=yield t.text()}catch(p){}throw new (0, _commonsdkbase.ApiClientError)(`API request failed: ${t.status} ${t.statusText}`,t.status,t.statusText,a)}return t.json()})}send(e,s,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkSP5DQZ6Dcjs.a.info("wallets.api.send",{walletLocator:e,tokenLocator:s,recipient:r.recipient});let a=yield(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(r),headers:this.headers})).json();return"error"in a?_chunkSP5DQZ6Dcjs.a.error("wallets.api.send.error",{walletLocator:e,tokenLocator:s,error:a.error}):"id"in a&&_chunkSP5DQZ6Dcjs.a.info("wallets.api.send.success",{walletLocator:e,transactionId:a.id}),a})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkVS6I4S7Xcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get projectId(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkVS6I4S7Xcjs.a)("Invalid API key");return this.parsedAPIKey.projectId}get headers(){return{"Content-Type":"application/json"}}};exports.a = h;
@@ -1 +1 @@
1
- import{a as n}from"./chunk-P22QL24A.js";import{a as s}from"./chunk-5LNDUSMZ.js";import{a as l}from"./chunk-K55HJTOE.js";import{a,b as i}from"./chunk-JNGPW247.js";import{h as r}from"./chunk-NU7VF7MC.js";import{createCrossmint as C}from"@crossmint/common-sdk-base";import{WebAuthnP256 as p}from"ox";var o=class c{constructor(e){i(e.apiKey);let t=new l(e);this.walletFactory=new n(t),a.info("wallets.sdk.initialized")}static from(e){return new c(e)}getWallet(e,t){return r(this,null,function*(){if(typeof e=="string"){if(t==null)throw new Error("Args parameter is required when walletLocator is provided");return yield this.walletFactory.getWallet(e,t)}return yield this.walletFactory.getWallet(e)})}createWallet(e){return r(this,null,function*(){return yield this.walletFactory.createWallet(e)})}createDeviceSigner(e,t){return r(this,null,function*(){return yield s(e,t)})}createPasskeySigner(e){return r(this,null,function*(){let t=yield p.createCredential({name:e});return{type:"passkey",id:t.id,name:e,publicKey:{x:t.publicKey.x.toString(),y:t.publicKey.y.toString()}}})}};export{C as a,o as b};
1
+ import{a as n}from"./chunk-4KOHNUNP.js";import{a as s}from"./chunk-5LNDUSMZ.js";import{a as l}from"./chunk-BL7A7ROX.js";import{a,b as i}from"./chunk-AZAIXRGS.js";import{h as r}from"./chunk-NU7VF7MC.js";import{createCrossmint as C}from"@crossmint/common-sdk-base";import{WebAuthnP256 as p}from"ox";var o=class c{constructor(e){i(e.apiKey);let t=new l(e);this.walletFactory=new n(t),a.info("wallets.sdk.initialized")}static from(e){return new c(e)}getWallet(e,t){return r(this,null,function*(){if(typeof e=="string"){if(t==null)throw new Error("Args parameter is required when walletLocator is provided");return yield this.walletFactory.getWallet(e,t)}return yield this.walletFactory.getWallet(e)})}createWallet(e){return r(this,null,function*(){return yield this.walletFactory.createWallet(e)})}createDeviceSigner(e,t){return r(this,null,function*(){return yield s(e,t)})}createPasskeySigner(e){return r(this,null,function*(){let t=yield p.createCredential({name:e});return{type:"passkey",id:t.id,name:e,publicKey:{x:t.publicKey.x.toString(),y:t.publicKey.y.toString()}}})}};export{C as a,o as b};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWIAIJCQ2cjs = require('./chunk-WIAIJCQ2.cjs');var o={nativeToken:"sol",walletLocatorPrefix:"me:solana:smart",supportsSignatures:!1,addSignerChain(n){},extractAddSignerOperation(n,r,a){if(!("transaction"in n)||n.transaction==null)throw _chunkWIAIJCQ2cjs.a.error("wallet.addSigner.error",{error:"Expected transaction in response for Solana/Stellar chain"}),new Error("Expected transaction in response for Solana/Stellar chain");return{type:"transaction",id:n.transaction.id}},balanceTokenFields(n){return n!=null&&"mintHash"in n?{mintHash:n.mintHash}:n!=null&&"contractAddress"in n?{contractAddress:n.contractAddress}:{}},emptyBalanceTokenFields(){return{mintHash:void 0}}};exports.a = o;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkSP5DQZ6Dcjs = require('./chunk-SP5DQZ6D.cjs');var o={nativeToken:"sol",walletLocatorPrefix:"me:solana:smart",supportsSignatures:!1,addSignerChain(n){},extractAddSignerOperation(n,r,a){if(!("transaction"in n)||n.transaction==null)throw _chunkSP5DQZ6Dcjs.a.error("wallet.addSigner.error",{error:"Expected transaction in response for Solana/Stellar chain"}),new Error("Expected transaction in response for Solana/Stellar chain");return{type:"transaction",id:n.transaction.id}},balanceTokenFields(n){return n!=null&&"mintHash"in n?{mintHash:n.mintHash}:n!=null&&"contractAddress"in n?{contractAddress:n.contractAddress}:{}},emptyBalanceTokenFields(){return{mintHash:void 0}}};exports.a = o;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk3L3U3TIDcjs = require('./chunk-3L3U3TID.cjs');var _chunkZEGNY3K3cjs = require('./chunk-ZEGNY3K3.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkWIAIJCQ2cjs = require('./chunk-WIAIJCQ2.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _viem = require('viem');var _commonsdkbase = require('@crossmint/common-sdk-base');var c=class c extends _chunk3L3U3TIDcjs.a{constructor(e){super({chain:e.chain,address:e.address,owner:e.owner,options:_chunk3L3U3TIDcjs.a.getOptions(e),alias:e.alias,recovery:_chunk3L3U3TIDcjs.a.getRecoverySigners(e),apiRecoveryServerSignerAddresses:_chunk3L3U3TIDcjs.a.getApiRecoveryServerSignerAddresses(e),apiDelegatedServerSignerAddresses:_chunk3L3U3TIDcjs.a.getApiDelegatedServerSignerAddresses(e),signer:e.signer,signers:_chunk3L3U3TIDcjs.a.getInitialSigners(e)},_chunk3L3U3TIDcjs.a.getApiClient(e))}static from(e){if(!_commonsdkbase.isValidEvmAddress.call(void 0, e.address))throw new Error("Wallet is not an EVM wallet");return new c(e)}sendTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var i;_chunkWIAIJCQ2cjs.a.info("evmWallet.sendTransaction.start"),yield this.preAuthIfNeeded();let t=this.buildTransaction(e),r=yield this.createTransaction(t,e.options);if((i=e.options)!=null&&i.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("evmWallet.sendTransaction.prepared",{transactionId:r.id}),{hash:void 0,explorerLink:void 0,transactionId:r.id};let a=yield this.approveTransactionAndWait(r.id);return _chunkWIAIJCQ2cjs.a.info("evmWallet.sendTransaction.success",{transactionId:r.id,hash:a.hash}),a})}signMessage(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var i;_chunkWIAIJCQ2cjs.a.info("evmWallet.signMessage.start"),yield this.preAuthIfNeeded();let t=this.signerManager.require(),r=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:e.message,signer:t.locator(),chain:this.chain}});if("error"in r)throw _chunkWIAIJCQ2cjs.a.error("evmWallet.signMessage.error",{error:r}),new (0, _chunkVS6I4S7Xcjs.C)(JSON.stringify(r));if((i=e.options)!=null&&i.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("evmWallet.signMessage.prepared",{signatureId:r.id}),{signature:void 0,signatureId:r.id};let a=yield this.approveSignatureAndWait(r.id);return _chunkWIAIJCQ2cjs.a.info("evmWallet.signMessage.success",{signatureId:r.id}),a})}signTypedData(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var C;_chunkWIAIJCQ2cjs.a.info("evmWallet.signTypedData.start"),yield this.preAuthIfNeeded();let t=this.signerManager.require(),{domain:r,message:a,primaryType:i,types:g,chain:T}=e;if(!r||!a||!g||!T)throw _chunkWIAIJCQ2cjs.a.error("evmWallet.signTypedData.error",{error:"Invalid typed data"}),new (0, _chunkVS6I4S7Xcjs.y)("Invalid typed data");let{name:m,version:v,chainId:S,verifyingContract:I,salt:b}=r;if(!m||!v||!S||!I)throw _chunkWIAIJCQ2cjs.a.error("evmWallet.signTypedData.error",{error:"Invalid typed data domain"}),new (0, _chunkVS6I4S7Xcjs.y)("Invalid typed data domain");let d=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:m,version:v,chainId:Number(S),verifyingContract:I,salt:b},message:y(a),primaryType:i,types:g},signer:t.locator(),chain:T}});if("error"in d)throw _chunkWIAIJCQ2cjs.a.error("evmWallet.signTypedData.error",{error:d}),new (0, _chunkVS6I4S7Xcjs.C)(JSON.stringify(d));if((C=e.options)!=null&&C.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("evmWallet.signTypedData.prepared",{signatureId:d.id}),{signature:void 0,signatureId:d.id};let D=yield this.approveSignatureAndWait(d.id);return _chunkWIAIJCQ2cjs.a.info("evmWallet.signTypedData.success",{signatureId:d.id}),D})}getViemClient(e){var t;return _viem.createPublicClient.call(void 0, {transport:(t=e==null?void 0:e.transport)!=null?t:_viem.http.call(void 0, ),chain:_chunkZEGNY3K3cjs.a.call(void 0, this.chain)})}createTransaction(e,t){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r;(t==null?void 0:t.signer)==null?r=this.signerManager.require().locator():typeof t.signer=="string"?r=t.signer:r=this.resolveServerSignerApiLocator(t.signer);let a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:r,chain:this.chain,calls:[e]}});if("error"in a)throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(a));return a})}buildTransaction(e){var t,r,a,i,g;if("transaction"in e)return{transaction:e.transaction};if(e.abi==null)return{to:e.to,value:(r=(t=e.value)==null?void 0:t.toString())!=null?r:"0",data:(a=e.data)!=null?a:"0x"};if(!e.functionName)throw new Error("Function name is required");return{to:e.to,value:(g=(i=e.value)==null?void 0:i.toString())!=null?g:"0",data:_viem.encodeFunctionData.call(void 0, {abi:e.abi,functionName:e.functionName,args:e.args})}}};_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"evmWallet.sendTransaction",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"sendTransaction",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"evmWallet.signMessage",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"signMessage",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"evmWallet.signTypedData",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"signTypedData",1);var M=c;function y(s){return typeof s=="bigint"?s.toString():Array.isArray(s)?s.map(y):s!==null&&typeof s=="object"?Object.fromEntries(Object.entries(s).map(([e,t])=>[e,y(t)])):s}exports.a = M;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk63VNTHGQcjs = require('./chunk-63VNTHGQ.cjs');var _chunkBHHXVRU6cjs = require('./chunk-BHHXVRU6.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkSP5DQZ6Dcjs = require('./chunk-SP5DQZ6D.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _viem = require('viem');var _commonsdkbase = require('@crossmint/common-sdk-base');var c=class c extends _chunk63VNTHGQcjs.a{constructor(e){super({chain:e.chain,address:e.address,owner:e.owner,options:_chunk63VNTHGQcjs.a.getOptions(e),alias:e.alias,recovery:_chunk63VNTHGQcjs.a.getRecoverySigners(e),apiRecoveryServerSignerAddresses:_chunk63VNTHGQcjs.a.getApiRecoveryServerSignerAddresses(e),apiDelegatedServerSignerAddresses:_chunk63VNTHGQcjs.a.getApiDelegatedServerSignerAddresses(e),signer:e.signer,signers:_chunk63VNTHGQcjs.a.getInitialSigners(e)},_chunk63VNTHGQcjs.a.getApiClient(e))}static from(e){if(!_commonsdkbase.isValidEvmAddress.call(void 0, e.address))throw new Error("Wallet is not an EVM wallet");return new c(e)}sendTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var i;_chunkSP5DQZ6Dcjs.a.info("evmWallet.sendTransaction.start"),yield this.preAuthIfNeeded();let t=this.buildTransaction(e),r=yield this.createTransaction(t,e.options);if((i=e.options)!=null&&i.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("evmWallet.sendTransaction.prepared",{transactionId:r.id}),{hash:void 0,explorerLink:void 0,transactionId:r.id};let a=yield this.approveTransactionAndWait(r.id);return _chunkSP5DQZ6Dcjs.a.info("evmWallet.sendTransaction.success",{transactionId:r.id,hash:a.hash}),a})}signMessage(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var i;_chunkSP5DQZ6Dcjs.a.info("evmWallet.signMessage.start"),yield this.preAuthIfNeeded();let t=this.signerManager.require(),r=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:e.message,signer:t.locator(),chain:this.chain}});if("error"in r)throw _chunkSP5DQZ6Dcjs.a.error("evmWallet.signMessage.error",{error:r}),new (0, _chunkVS6I4S7Xcjs.C)(JSON.stringify(r));if((i=e.options)!=null&&i.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("evmWallet.signMessage.prepared",{signatureId:r.id}),{signature:void 0,signatureId:r.id};let a=yield this.approveSignatureAndWait(r.id);return _chunkSP5DQZ6Dcjs.a.info("evmWallet.signMessage.success",{signatureId:r.id}),a})}signTypedData(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var C;_chunkSP5DQZ6Dcjs.a.info("evmWallet.signTypedData.start"),yield this.preAuthIfNeeded();let t=this.signerManager.require(),{domain:r,message:a,primaryType:i,types:g,chain:T}=e;if(!r||!a||!g||!T)throw _chunkSP5DQZ6Dcjs.a.error("evmWallet.signTypedData.error",{error:"Invalid typed data"}),new (0, _chunkVS6I4S7Xcjs.y)("Invalid typed data");let{name:m,version:v,chainId:S,verifyingContract:I,salt:b}=r;if(!m||!v||!S||!I)throw _chunkSP5DQZ6Dcjs.a.error("evmWallet.signTypedData.error",{error:"Invalid typed data domain"}),new (0, _chunkVS6I4S7Xcjs.y)("Invalid typed data domain");let d=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:m,version:v,chainId:Number(S),verifyingContract:I,salt:b},message:y(a),primaryType:i,types:g},signer:t.locator(),chain:T}});if("error"in d)throw _chunkSP5DQZ6Dcjs.a.error("evmWallet.signTypedData.error",{error:d}),new (0, _chunkVS6I4S7Xcjs.C)(JSON.stringify(d));if((C=e.options)!=null&&C.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("evmWallet.signTypedData.prepared",{signatureId:d.id}),{signature:void 0,signatureId:d.id};let D=yield this.approveSignatureAndWait(d.id);return _chunkSP5DQZ6Dcjs.a.info("evmWallet.signTypedData.success",{signatureId:d.id}),D})}getViemClient(e){var t;return _viem.createPublicClient.call(void 0, {transport:(t=e==null?void 0:e.transport)!=null?t:_viem.http.call(void 0, ),chain:_chunkBHHXVRU6cjs.a.call(void 0, this.chain)})}createTransaction(e,t){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let r;(t==null?void 0:t.signer)==null?r=this.signerManager.require().locator():typeof t.signer=="string"?r=t.signer:r=this.resolveServerSignerApiLocator(t.signer);let a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:r,chain:this.chain,calls:[e]}});if("error"in a)throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(a));return a})}buildTransaction(e){var t,r,a,i,g;if("transaction"in e)return{transaction:e.transaction};if(e.abi==null)return{to:e.to,value:(r=(t=e.value)==null?void 0:t.toString())!=null?r:"0",data:(a=e.data)!=null?a:"0x"};if(!e.functionName)throw new Error("Function name is required");return{to:e.to,value:(g=(i=e.value)==null?void 0:i.toString())!=null?g:"0",data:_viem.encodeFunctionData.call(void 0, {abi:e.abi,functionName:e.functionName,args:e.args})}}};_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"evmWallet.sendTransaction",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"sendTransaction",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"evmWallet.signMessage",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"signMessage",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"evmWallet.signTypedData",buildContext(e){return{chain:e.chain,address:e.address}}})],c.prototype,"signTypedData",1);var M=c;function y(s){return typeof s=="bigint"?s.toString():Array.isArray(s)?s.map(y):s!==null&&typeof s=="object"?Object.fromEntries(Object.entries(s).map(([e,t])=>[e,y(t)])):s}exports.a = M;
@@ -1 +1 @@
1
- import{a as S}from"./chunk-I76IKSS4.js";import{a as o}from"./chunk-GD5GDQXC.js";import{a as s}from"./chunk-GVRXRDGC.js";import{a as l}from"./chunk-BEGVH4DX.js";import{a as g}from"./chunk-7KKHT5PF.js";import{a as y}from"./chunk-K7BPGUFU.js";import{a as f}from"./chunk-MN2BGRRJ.js";import{a as C}from"./chunk-FQ5F3VYJ.js";import{a as m}from"./chunk-HAQMNZO5.js";import{a as p}from"./chunk-AB2JJTW4.js";import{a as u}from"./chunk-MLROTECD.js";import{g as i}from"./chunk-KOHPRJDP.js";import{h as t}from"./chunk-NU7VF7MC.js";function c(r,e,n){switch(e.type){case"email":case"phone":return r==="solana"?new l(e):r==="stellar"?new o(e):new s(e);case"api-key":return r==="solana"?new u(e):new C(e);case"external-wallet":return r==="solana"?new g(e):r==="stellar"?new y(e):new m(e);case"server":return S(r,e);case"passkey":return new p(e);case"device":if(n==null)throw new i("Device signer key storage is required for device signers");return new f(e,n)}}function k(r,e,n,a){return t(this,null,function*(){if(!e.startsWith("device:"))return null;let w=e.replace("device:","");return(yield a.hasKey(w))?c(r,{type:"device",locator:e,address:n},a):null})}export{c as a,k as b};
1
+ import{a as S}from"./chunk-24CGMAY3.js";import{a as s}from"./chunk-ZSFPKH2C.js";import{a as l}from"./chunk-FBOM4U3X.js";import{a as o}from"./chunk-UP6VFZQH.js";import{a as g}from"./chunk-7KKHT5PF.js";import{a as y}from"./chunk-K7BPGUFU.js";import{a as f}from"./chunk-MN2BGRRJ.js";import{a as C}from"./chunk-FQ5F3VYJ.js";import{a as m}from"./chunk-HAQMNZO5.js";import{a as p}from"./chunk-AB2JJTW4.js";import{a as u}from"./chunk-MLROTECD.js";import{g as i}from"./chunk-KOHPRJDP.js";import{h as t}from"./chunk-NU7VF7MC.js";function c(r,e,n){switch(e.type){case"email":case"phone":return r==="solana"?new l(e):r==="stellar"?new o(e):new s(e);case"api-key":return r==="solana"?new u(e):new C(e);case"external-wallet":return r==="solana"?new g(e):r==="stellar"?new y(e):new m(e);case"server":return S(r,e);case"passkey":return new p(e);case"device":if(n==null)throw new i("Device signer key storage is required for device signers");return new f(e,n)}}function k(r,e,n,a){return t(this,null,function*(){if(!e.startsWith("device:"))return null;let w=e.replace("device:","");return(yield a.hasKey(w))?c(r,{type:"device",locator:e,address:n},a):null})}export{c as a,k as b};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk3L3U3TIDcjs = require('./chunk-3L3U3TID.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkWIAIJCQ2cjs = require('./chunk-WIAIJCQ2.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var m=409,l=class l extends _chunk3L3U3TIDcjs.a{constructor(e){super({chain:e.chain,address:e.address,owner:e.owner,options:_chunk3L3U3TIDcjs.a.getOptions(e),alias:e.alias,recovery:_chunk3L3U3TIDcjs.a.getRecoverySigners(e),apiRecoveryServerSignerAddresses:_chunk3L3U3TIDcjs.a.getApiRecoveryServerSignerAddresses(e),apiDelegatedServerSignerAddresses:_chunk3L3U3TIDcjs.a.getApiDelegatedServerSignerAddresses(e),signer:e.signer,signers:_chunk3L3U3TIDcjs.a.getInitialSigners(e)},_chunk3L3U3TIDcjs.a.getApiClient(e))}static from(e){if(!_commonsdkbase.isValidStellarAddress.call(void 0, e.address))throw new Error("Wallet is not a Stellar wallet");return new l(e)}sendTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var d;_chunkWIAIJCQ2cjs.a.info("stellarWallet.sendTransaction.start"),yield this.preAuthIfNeeded();let r=yield this.createTransaction(e);if((d=e.options)!=null&&d.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("stellarWallet.sendTransaction.prepared",{transactionId:r.id}),{hash:void 0,explorerLink:void 0,transactionId:r.id};let a={},n=yield this.approveTransactionAndWait(r.id,a);return _chunkWIAIJCQ2cjs.a.info("stellarWallet.sendTransaction.success",{transactionId:r.id,hash:n.hash}),n})}upgrade(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkWIAIJCQ2cjs.a.info("stellarWallet.upgrade.start"),yield this.preAuthIfNeeded();let r=yield this.createWalletLifecycleTransaction("upgrade-wallet",e);if(r!=null){if(e!=null&&e.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("stellarWallet.upgrade.prepared",{transactionId:r}),{hash:void 0,explorerLink:void 0,transactionId:r};yield this.approveTransactionAndWait(r),_chunkWIAIJCQ2cjs.a.info("stellarWallet.upgrade.phase1.success",{transactionId:r})}else _chunkWIAIJCQ2cjs.a.info("stellarWallet.upgrade.phase1.skipped",{reason:"wallet already locked from a prior upgrade"});let a=yield this.migrateInternal({signer:e==null?void 0:e.signer,prepareOnly:e==null?void 0:e.prepareOnly});return _chunkWIAIJCQ2cjs.a.info("stellarWallet.upgrade.success",{transactionId:a.transactionId,hash:a.hash}),a})}migrate(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return yield this.preAuthIfNeeded(),yield this.migrateInternal(e)})}migrateInternal(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkWIAIJCQ2cjs.a.info("stellarWallet.migrate.start");let r=yield this.createWalletLifecycleTransaction("migrate-wallet",e);if(r==null)throw new (0, _chunkVS6I4S7Xcjs.H)("Failed to create migrate-wallet transaction");if(e!=null&&e.prepareOnly)return _chunkWIAIJCQ2cjs.a.info("stellarWallet.migrate.prepared",{transactionId:r}),{hash:void 0,explorerLink:void 0,transactionId:r};let a=yield this.approveTransactionAndWait(r);return _chunkWIAIJCQ2cjs.a.info("stellarWallet.migrate.success",{transactionId:r,hash:a.hash}),a})}createTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let{contractId:r,options:a}=e,n=this.resolveStellarSigner(a==null?void 0:a.signer),d="transaction"in e?{type:"serialized-transaction",serializedTransaction:e.transaction,contractId:r}:{type:"contract-call",contractId:r,method:e.method,memo:e.memo!=null?{type:"text",value:e.memo}:void 0,args:e.args},p=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:d,signer:n}});if("error"in p)throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(p));return p})}createWalletLifecycleTransaction(e,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let a=(r==null?void 0:r.signer)!=null?this.resolveStellarSigner(r.signer):void 0,n=yield this.apiClient.createTransaction(this.walletLocator,{params:_chunkDSIFRRBScjs.a.call(void 0, {transaction:{type:e}},a!=null?{signer:a}:{})});if("error"in n){if(e==="upgrade-wallet"&&y(n))return null;throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(n))}return n.id})}resolveStellarSigner(e){return e==null?this.signerManager.require().locator():typeof e=="string"?e:this.resolveServerSignerApiLocator(e)}};_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"stellarWallet.sendTransaction",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"sendTransaction",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"stellarWallet.upgrade",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"upgrade",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkWIAIJCQ2cjs.a,methodName:"stellarWallet.migrate",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"migrate",1);var h=l;function y(o){return typeof o=="object"&&o!==null&&"statusCode"in o&&o.statusCode===m}exports.a = h;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk63VNTHGQcjs = require('./chunk-63VNTHGQ.cjs');var _chunkVS6I4S7Xcjs = require('./chunk-VS6I4S7X.cjs');var _chunkSP5DQZ6Dcjs = require('./chunk-SP5DQZ6D.cjs');var _chunkDSIFRRBScjs = require('./chunk-DSIFRRBS.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var m=409,l=class l extends _chunk63VNTHGQcjs.a{constructor(e){super({chain:e.chain,address:e.address,owner:e.owner,options:_chunk63VNTHGQcjs.a.getOptions(e),alias:e.alias,recovery:_chunk63VNTHGQcjs.a.getRecoverySigners(e),apiRecoveryServerSignerAddresses:_chunk63VNTHGQcjs.a.getApiRecoveryServerSignerAddresses(e),apiDelegatedServerSignerAddresses:_chunk63VNTHGQcjs.a.getApiDelegatedServerSignerAddresses(e),signer:e.signer,signers:_chunk63VNTHGQcjs.a.getInitialSigners(e)},_chunk63VNTHGQcjs.a.getApiClient(e))}static from(e){if(!_commonsdkbase.isValidStellarAddress.call(void 0, e.address))throw new Error("Wallet is not a Stellar wallet");return new l(e)}sendTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){var d;_chunkSP5DQZ6Dcjs.a.info("stellarWallet.sendTransaction.start"),yield this.preAuthIfNeeded();let r=yield this.createTransaction(e);if((d=e.options)!=null&&d.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.sendTransaction.prepared",{transactionId:r.id}),{hash:void 0,explorerLink:void 0,transactionId:r.id};let a={},n=yield this.approveTransactionAndWait(r.id,a);return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.sendTransaction.success",{transactionId:r.id,hash:n.hash}),n})}upgrade(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkSP5DQZ6Dcjs.a.info("stellarWallet.upgrade.start"),yield this.preAuthIfNeeded();let r=yield this.createWalletLifecycleTransaction("upgrade-wallet",e);if(r!=null){if(e!=null&&e.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.upgrade.prepared",{transactionId:r}),{hash:void 0,explorerLink:void 0,transactionId:r};yield this.approveTransactionAndWait(r),_chunkSP5DQZ6Dcjs.a.info("stellarWallet.upgrade.phase1.success",{transactionId:r})}else _chunkSP5DQZ6Dcjs.a.info("stellarWallet.upgrade.phase1.skipped",{reason:"wallet already locked from a prior upgrade"});let a=yield this.migrateInternal({signer:e==null?void 0:e.signer,prepareOnly:e==null?void 0:e.prepareOnly});return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.upgrade.success",{transactionId:a.transactionId,hash:a.hash}),a})}migrate(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){return yield this.preAuthIfNeeded(),yield this.migrateInternal(e)})}migrateInternal(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){_chunkSP5DQZ6Dcjs.a.info("stellarWallet.migrate.start");let r=yield this.createWalletLifecycleTransaction("migrate-wallet",e);if(r==null)throw new (0, _chunkVS6I4S7Xcjs.H)("Failed to create migrate-wallet transaction");if(e!=null&&e.prepareOnly)return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.migrate.prepared",{transactionId:r}),{hash:void 0,explorerLink:void 0,transactionId:r};let a=yield this.approveTransactionAndWait(r);return _chunkSP5DQZ6Dcjs.a.info("stellarWallet.migrate.success",{transactionId:r,hash:a.hash}),a})}createTransaction(e){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let{contractId:r,options:a}=e,n=this.resolveStellarSigner(a==null?void 0:a.signer),d="transaction"in e?{type:"serialized-transaction",serializedTransaction:e.transaction,contractId:r}:{type:"contract-call",contractId:r,method:e.method,memo:e.memo!=null?{type:"text",value:e.memo}:void 0,args:e.args},p=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:d,signer:n}});if("error"in p)throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(p));return p})}createWalletLifecycleTransaction(e,r){return _chunkDSIFRRBScjs.h.call(void 0, this,null,function*(){let a=(r==null?void 0:r.signer)!=null?this.resolveStellarSigner(r.signer):void 0,n=yield this.apiClient.createTransaction(this.walletLocator,{params:_chunkDSIFRRBScjs.a.call(void 0, {transaction:{type:e}},a!=null?{signer:a}:{})});if("error"in n){if(e==="upgrade-wallet"&&y(n))return null;throw new (0, _chunkVS6I4S7Xcjs.H)(JSON.stringify(n))}return n.id})}resolveStellarSigner(e){return e==null?this.signerManager.require().locator():typeof e=="string"?e:this.resolveServerSignerApiLocator(e)}};_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"stellarWallet.sendTransaction",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"sendTransaction",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"stellarWallet.upgrade",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"upgrade",1),_chunkDSIFRRBScjs.c.call(void 0, [_commonsdkbase.WithLoggerContext.call(void 0, {logger:_chunkSP5DQZ6Dcjs.a,methodName:"stellarWallet.migrate",buildContext(e){return{chain:e.chain,address:e.address}}})],l.prototype,"migrate",1);var h=l;function y(o){return typeof o=="object"&&o!==null&&"statusCode"in o&&o.statusCode===m}exports.a = h;