@crossmint/wallets-sdk 0.11.4 → 0.11.5

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 (55) hide show
  1. package/dist/api/client.cjs +1 -1
  2. package/dist/api/client.js +1 -1
  3. package/dist/api/index.cjs +1 -1
  4. package/dist/api/index.js +1 -1
  5. package/dist/{chunk-W2WX4ZV7.js → chunk-4UAYO5YP.js} +1 -1
  6. package/dist/{chunk-A3FFXMFP.cjs → chunk-5L6RZBMZ.cjs} +1 -1
  7. package/dist/{chunk-5Y3LP2YE.js → chunk-7YKSVOKL.js} +1 -1
  8. package/dist/{chunk-BXGEGPAH.cjs → chunk-BDHUM4C3.cjs} +2 -2
  9. package/dist/{chunk-XAYHPFSE.cjs → chunk-BWF3A2OO.cjs} +1 -1
  10. package/dist/chunk-C54AWEW3.cjs +1 -0
  11. package/dist/chunk-DEP6NMLX.cjs +1 -0
  12. package/dist/chunk-DP2OIBTE.js +1 -0
  13. package/dist/{chunk-GKN6YKBD.cjs → chunk-FYGTK45L.cjs} +1 -1
  14. package/dist/{chunk-YEA5ZSOH.cjs → chunk-H742IMQC.cjs} +1 -1
  15. package/dist/{chunk-2W4KJEXY.js → chunk-S6OZIFNF.js} +1 -1
  16. package/dist/chunk-U2ARQ77W.js +1 -0
  17. package/dist/chunk-UKJOEFGJ.js +1 -0
  18. package/dist/{chunk-GZ2SM6KF.cjs → chunk-VPLMZ4QW.cjs} +1 -1
  19. package/dist/{chunk-4Z7E6Y6H.js → chunk-WGYPC2LD.js} +1 -1
  20. package/dist/chunk-XSHBJCRE.js +1 -0
  21. package/dist/index.cjs +1 -1
  22. package/dist/index.d.cts +1 -1
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/sdk.cjs +1 -1
  26. package/dist/sdk.js +1 -1
  27. package/dist/utils/constants.cjs +1 -1
  28. package/dist/utils/constants.js +1 -1
  29. package/dist/wallets/evm.cjs +1 -1
  30. package/dist/wallets/evm.d.cts +6 -10
  31. package/dist/wallets/evm.d.ts +6 -10
  32. package/dist/wallets/evm.js +1 -1
  33. package/dist/wallets/solana.cjs +1 -1
  34. package/dist/wallets/solana.d.cts +2 -4
  35. package/dist/wallets/solana.d.ts +2 -4
  36. package/dist/wallets/solana.js +1 -1
  37. package/dist/wallets/stellar.cjs +1 -1
  38. package/dist/wallets/stellar.d.cts +2 -4
  39. package/dist/wallets/stellar.d.ts +2 -4
  40. package/dist/wallets/stellar.js +1 -1
  41. package/dist/wallets/types.d.cts +28 -5
  42. package/dist/wallets/types.d.ts +28 -5
  43. package/dist/wallets/wallet-factory.cjs +1 -1
  44. package/dist/wallets/wallet-factory.js +1 -1
  45. package/dist/wallets/wallet.cjs +1 -1
  46. package/dist/wallets/wallet.d.cts +13 -20
  47. package/dist/wallets/wallet.d.ts +13 -20
  48. package/dist/wallets/wallet.js +1 -1
  49. package/package.json +1 -1
  50. package/dist/chunk-4AXQWKEW.cjs +0 -1
  51. package/dist/chunk-4GVVQX7Y.js +0 -1
  52. package/dist/chunk-CREQPQNW.js +0 -1
  53. package/dist/chunk-FELK2MFW.js +0 -1
  54. package/dist/chunk-HYTMXCA5.js +0 -1
  55. package/dist/chunk-T73LYYKV.cjs +0 -1
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkGKN6YKBDcjs = require('../chunk-GKN6YKBD.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunkGKN6YKBDcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkFYGTK45Lcjs = require('../chunk-FYGTK45L.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunkFYGTK45Lcjs.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-4Z7E6Y6H.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
1
+ import{a}from"../chunk-WGYPC2LD.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var _chunkGKN6YKBDcjs = require('../chunk-GKN6YKBD.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-ECAM5KTH.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunkGKN6YKBDcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var _chunkFYGTK45Lcjs = require('../chunk-FYGTK45L.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-ECAM5KTH.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunkFYGTK45Lcjs.a;
package/dist/api/index.js CHANGED
@@ -1 +1 @@
1
- import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-4Z7E6Y6H.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-KBJA7JDT.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
1
+ import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-WGYPC2LD.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-KBJA7JDT.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
@@ -1 +1 @@
1
- import{a as t}from"./chunk-4GVVQX7Y.js";import{a as l}from"./chunk-JMK64ITR.js";import{r as c}from"./chunk-PSXRNSOE.js";import{f as s}from"./chunk-BW7YYVZE.js";import m from"bs58";import{isValidSolanaAddress as T}from"@crossmint/common-sdk-base";var d=class u extends t{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:t.getOptions(n)},t.getApiClient(n))}static from(n){if(!T(n.address))throw new Error("Wallet is not a Solana wallet");return new u(n)}sendTransaction(n){return s(this,null,function*(){var e,r;let a=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:a.id};let i={additionalSigners:(r=n.additionalSigners)==null?void 0:r.map(o=>new l({type:"external-wallet",address:o.publicKey.toString(),locator:`external-wallet:${o.publicKey.toString()}`,onSignTransaction:p=>(p.sign([o]),Promise.resolve(p))}))};return yield this.approveTransactionAndWait(a.id,i)})}createTransaction(S){return s(this,arguments,function*({transaction:n,options:a}){var r;let i=(r=a==null?void 0:a.experimental_signer)!=null?r:this.signer.locator(),e=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:m.encode(n.serialize()),signer:i}});if("error"in e)throw new c(JSON.stringify(e));return e})}};export{d as a};
1
+ import{a as t}from"./chunk-UKJOEFGJ.js";import{a as l}from"./chunk-JMK64ITR.js";import{r as p}from"./chunk-PSXRNSOE.js";import{f as s}from"./chunk-BW7YYVZE.js";import m from"bs58";import{isValidSolanaAddress as T}from"@crossmint/common-sdk-base";var d=class u extends t{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:t.getOptions(n)},t.getApiClient(n))}static from(n){if(!T(n.address))throw new Error("Wallet is not a Solana wallet");return new u(n)}sendTransaction(n){return s(this,null,function*(){var e,r;let a=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:a.id};let i={additionalSigners:(r=n.additionalSigners)==null?void 0:r.map(o=>new l({type:"external-wallet",address:o.publicKey.toString(),locator:`external-wallet:${o.publicKey.toString()}`,onSignTransaction:c=>(c.sign([o]),Promise.resolve(c))}))};return yield this.approveTransactionAndWait(a.id,i)})}createTransaction(S){return s(this,arguments,function*({transaction:n,options:a}){var r;let i=(r=a==null?void 0:a.experimental_signer)!=null?r:this.signer.locator(),e=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:m.encode(n.serialize()),signer:i}});if("error"in e)throw new p(JSON.stringify(e));return e})}};export{d as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkT73LYYKVcjs = require('./chunk-T73LYYKV.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var l=class d extends _chunkT73LYYKVcjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkT73LYYKVcjs.a.getOptions(n)},_chunkT73LYYKVcjs.a.getApiClient(n))}static from(n){if(!_commonsdkbase.isValidStellarAddress.call(void 0, n.address))throw new Error("Wallet is not a Stellar wallet");return new d(n)}sendTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var r;let e=yield this.createTransaction(n);if((r=n.options)!=null&&r.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:e.id};let a={};return yield this.approveTransactionAndWait(e.id,a)})}createTransaction(O){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*({contractId:n,method:e,memo:a,args:r,options:i}){var c;let u=(c=i==null?void 0:i.experimental_signer)!=null?c:this.signer.locator(),s=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:{type:"contract-call",contractId:n,method:e,memo:a,args:r},signer:u}});if("error"in s)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(s));return s})}};exports.a = l;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkDEP6NMLXcjs = require('./chunk-DEP6NMLX.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var l=class d extends _chunkDEP6NMLXcjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkDEP6NMLXcjs.a.getOptions(n)},_chunkDEP6NMLXcjs.a.getApiClient(n))}static from(n){if(!_commonsdkbase.isValidStellarAddress.call(void 0, n.address))throw new Error("Wallet is not a Stellar wallet");return new d(n)}sendTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e;let r=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:r.id};let a={};return yield this.approveTransactionAndWait(r.id,a)})}createTransaction(g){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*({contractId:n,method:r,memo:a,args:e,options:i}){var c;let u=(c=i==null?void 0:i.experimental_signer)!=null?c:this.signer.locator(),s=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:{type:"contract-call",contractId:n,method:r,memo:a,args:e},signer:u}});if("error"in s)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(s));return s})}};exports.a = l;
@@ -1,3 +1,3 @@
1
- import{a as f}from"./chunk-BHGNJYYE.js";import{a as g}from"./chunk-4GVVQX7Y.js";import{a as d}from"./chunk-EWNW3TJA.js";import{d as p,f as r}from"./chunk-PSXRNSOE.js";import{a as C,f as s}from"./chunk-BW7YYVZE.js";import{WebAuthnP256 as S}from"ox";var u=class{constructor(e){this.apiClient=e}getOrCreateWallet(e){return s(this,null,function*(){if(this.apiClient.isServerSide)throw new r(`getOrCreateWallet can only be called from client-side code.
1
+ import{a as f}from"./chunk-BHGNJYYE.js";import{a as g}from"./chunk-UKJOEFGJ.js";import{a as d}from"./chunk-EWNW3TJA.js";import{d as p,f as r}from"./chunk-PSXRNSOE.js";import{a as C,f as s}from"./chunk-BW7YYVZE.js";import{WebAuthnP256 as S}from"ox";var u=class{constructor(e){this.apiClient=e}getOrCreateWallet(e){return s(this,null,function*(){if(this.apiClient.isServerSide)throw new r(`getOrCreateWallet can only be called from client-side code.
2
2
  - Make sure you're running this in the browser (or another client environment), not on your server.
3
3
  - Use your Crossmint Client API Key (not a server key).`);let i=yield this.apiClient.getWallet(`me:${this.getChainType(e.chain)}:smart`);return i!=null&&!("error"in i)?this.createWalletInstance(i,e):this.createWallet(e)})}getWallet(e,i){return s(this,null,function*(){if(!this.apiClient.isServerSide)throw new r("getWallet is not supported on client side, use getOrCreateWallet instead");let n=yield this.apiClient.getWallet(e);if("error"in n)throw new p(JSON.stringify(n));return this.createWalletInstance(n,i)})}createWallet(e){return s(this,null,function*(){var t,a,o,l;yield(o=(a=(t=e.options)==null?void 0:t.experimental_callbacks)==null?void 0:a.onWalletCreationStart)==null?void 0:o.call(a),this.mutateSignerFromCustomAuth(e,!0);let i=e.signer.type==="passkey"?yield this.createPasskeyAdminSigner(e.signer):e.signer,n=yield this.apiClient.createWallet({type:"smart",chainType:this.getChainType(e.chain),config:{adminSigner:i},owner:(l=e.owner)!=null?l:void 0});if("error"in n)throw new r(JSON.stringify(n));return this.createWalletInstance(n,e)})}createWalletInstance(e,i){this.validateExistingWalletConfig(e,i);let n=this.toInternalSignerConfig(e,i.signer,i.options);return new g({chain:i.chain,address:e.address,owner:e.owner,signer:d(i.chain,n),options:i.options},this.apiClient)}toInternalSignerConfig(e,i,n){var t,a,o,l,m,y;if(!(e.chainType==="evm"||e.chainType==="solana"||e.chainType==="stellar"))throw new r(`Wallet type ${e.chainType} is not supported`);if(i==null&&((t=e.config)==null?void 0:t.adminSigner)==null)throw new r("Signer is required to create a wallet");switch(i.type){case"api-key":{if(((a=e.config)==null?void 0:a.adminSigner.type)!=="api-key")throw new r("API key signer does not match the wallet's signer type");return{type:"api-key",address:e.config.adminSigner.address,locator:e.config.adminSigner.locator}}case"external-wallet":if(((o=e.config)==null?void 0:o.adminSigner.type)!=="external-wallet")throw new r("External wallet signer does not match the wallet's signer type");return C(C({},e.config.adminSigner),i);case"passkey":if(((l=e.config)==null?void 0:l.adminSigner.type)!=="passkey")throw new r("Passkey signer does not match the wallet's signer type");return{type:"passkey",id:e.config.adminSigner.id,name:e.config.adminSigner.name,locator:e.config.adminSigner.locator,onCreatePasskey:i.onCreatePasskey,onSignWithPasskey:i.onSignWithPasskey};case"email":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="email")throw new r("Email signer does not match the wallet's signer type");let{locator:c,email:h}=e.config.adminSigner;return{type:"email",email:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}case"phone":{if(((y=e.config)==null?void 0:y.adminSigner.type)!=="phone")throw new r("Phone signer does not match the wallet's signer type");let{locator:c,phone:h}=e.config.adminSigner;return{type:"phone",phone:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}default:throw new Error("Invalid signer type")}}createPasskeyAdminSigner(e){return s(this,null,function*(){var t;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let i=(t=e.name)!=null?t:`Crossmint Wallet ${Date.now()}`,n=e.onCreatePasskey?yield e.onCreatePasskey(i):yield S.createCredential({name:i});return{type:"passkey",id:n.id,name:i,publicKey:{x:n.publicKey.x.toString(),y:n.publicKey.y.toString()}}})}mutateSignerFromCustomAuth(e,i=!1){var t,a;let{experimental_customAuth:n}=this.apiClient.crossmint;e.signer.type==="email"&&(n==null?void 0:n.email)!=null&&(e.signer.email=(t=e.signer.email)!=null?t:n.email),e.signer.type==="phone"&&(n==null?void 0:n.phone)!=null&&(e.signer.phone=(a=e.signer.phone)!=null?a:n.phone),e.signer.type==="external-wallet"&&(n==null?void 0:n.externalWalletSigner)!=null&&(e.signer=i?{type:"external-wallet",address:n.externalWalletSigner.address}:n.externalWalletSigner)}validateExistingWalletConfig(e,i){var a;if(this.mutateSignerFromCustomAuth(i),i.owner!=null&&e.owner!=null&&i.owner!==e.owner)throw new r("Wallet owner does not match existing wallet's linked user");if(i.chain==="solana"&&e.chainType!=="solana"||i.chain!=="solana"&&e.chainType==="solana"||i.chain==="stellar"&&e.chainType!=="stellar"||i.chain!=="stellar"&&e.chainType==="stellar")throw new r(`Wallet chain does not match existing wallet's chain. You must use chain: ${e.chainType}.`);if(e.type!=="smart")return;let n=i.signer,t=(a=e==null?void 0:e.config)==null?void 0:a.adminSigner;if(n!=null&&t!=null){if(n.type!==t.type)throw new r("The wallet signer type provided in the wallet config does not match the existing wallet's adminSigner type");f(n,t)}}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};export{u as a};
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk23BRREJGcjs = require('./chunk-23BRREJG.cjs');var _chunkT73LYYKVcjs = require('./chunk-T73LYYKV.cjs');var _chunkNNWBKQGBcjs = require('./chunk-NNWBKQGB.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _ox = require('ox');var u=class{constructor(e){this.apiClient=e}getOrCreateWallet(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.apiClient.isServerSide)throw new (0, _chunkO4FVTK7Xcjs.f)(`getOrCreateWallet can only be called from client-side code.
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk23BRREJGcjs = require('./chunk-23BRREJG.cjs');var _chunkDEP6NMLXcjs = require('./chunk-DEP6NMLX.cjs');var _chunkNNWBKQGBcjs = require('./chunk-NNWBKQGB.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _ox = require('ox');var u=class{constructor(e){this.apiClient=e}getOrCreateWallet(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.apiClient.isServerSide)throw new (0, _chunkO4FVTK7Xcjs.f)(`getOrCreateWallet can only be called from client-side code.
2
2
  - Make sure you're running this in the browser (or another client environment), not on your server.
3
- - Use your Crossmint Client API Key (not a server key).`);let i=yield this.apiClient.getWallet(`me:${this.getChainType(e.chain)}:smart`);return i!=null&&!("error"in i)?this.createWalletInstance(i,e):this.createWallet(e)})}getWallet(e,i){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(!this.apiClient.isServerSide)throw new (0, _chunkO4FVTK7Xcjs.f)("getWallet is not supported on client side, use getOrCreateWallet instead");let n=yield this.apiClient.getWallet(e);if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.d)(JSON.stringify(n));return this.createWalletInstance(n,i)})}createWallet(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t,a,o,l;yield(o=(a=(t=e.options)==null?void 0:t.experimental_callbacks)==null?void 0:a.onWalletCreationStart)==null?void 0:o.call(a),this.mutateSignerFromCustomAuth(e,!0);let i=e.signer.type==="passkey"?yield this.createPasskeyAdminSigner(e.signer):e.signer,n=yield this.apiClient.createWallet({type:"smart",chainType:this.getChainType(e.chain),config:{adminSigner:i},owner:(l=e.owner)!=null?l:void 0});if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.f)(JSON.stringify(n));return this.createWalletInstance(n,e)})}createWalletInstance(e,i){this.validateExistingWalletConfig(e,i);let n=this.toInternalSignerConfig(e,i.signer,i.options);return new (0, _chunkT73LYYKVcjs.a)({chain:i.chain,address:e.address,owner:e.owner,signer:_chunkNNWBKQGBcjs.a.call(void 0, i.chain,n),options:i.options},this.apiClient)}toInternalSignerConfig(e,i,n){var t,a,o,l,m,y;if(!(e.chainType==="evm"||e.chainType==="solana"||e.chainType==="stellar"))throw new (0, _chunkO4FVTK7Xcjs.f)(`Wallet type ${e.chainType} is not supported`);if(i==null&&((t=e.config)==null?void 0:t.adminSigner)==null)throw new (0, _chunkO4FVTK7Xcjs.f)("Signer is required to create a wallet");switch(i.type){case"api-key":{if(((a=e.config)==null?void 0:a.adminSigner.type)!=="api-key")throw new (0, _chunkO4FVTK7Xcjs.f)("API key signer does not match the wallet's signer type");return{type:"api-key",address:e.config.adminSigner.address,locator:e.config.adminSigner.locator}}case"external-wallet":if(((o=e.config)==null?void 0:o.adminSigner.type)!=="external-wallet")throw new (0, _chunkO4FVTK7Xcjs.f)("External wallet signer does not match the wallet's signer type");return _chunkXALFCQKDcjs.a.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},e.config.adminSigner),i);case"passkey":if(((l=e.config)==null?void 0:l.adminSigner.type)!=="passkey")throw new (0, _chunkO4FVTK7Xcjs.f)("Passkey signer does not match the wallet's signer type");return{type:"passkey",id:e.config.adminSigner.id,name:e.config.adminSigner.name,locator:e.config.adminSigner.locator,onCreatePasskey:i.onCreatePasskey,onSignWithPasskey:i.onSignWithPasskey};case"email":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="email")throw new (0, _chunkO4FVTK7Xcjs.f)("Email signer does not match the wallet's signer type");let{locator:c,email:h}=e.config.adminSigner;return{type:"email",email:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}case"phone":{if(((y=e.config)==null?void 0:y.adminSigner.type)!=="phone")throw new (0, _chunkO4FVTK7Xcjs.f)("Phone signer does not match the wallet's signer type");let{locator:c,phone:h}=e.config.adminSigner;return{type:"phone",phone:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}default:throw new Error("Invalid signer type")}}createPasskeyAdminSigner(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let i=(t=e.name)!=null?t:`Crossmint Wallet ${Date.now()}`,n=e.onCreatePasskey?yield e.onCreatePasskey(i):yield _ox.WebAuthnP256.createCredential({name:i});return{type:"passkey",id:n.id,name:i,publicKey:{x:n.publicKey.x.toString(),y:n.publicKey.y.toString()}}})}mutateSignerFromCustomAuth(e,i=!1){var t,a;let{experimental_customAuth:n}=this.apiClient.crossmint;e.signer.type==="email"&&(n==null?void 0:n.email)!=null&&(e.signer.email=(t=e.signer.email)!=null?t:n.email),e.signer.type==="phone"&&(n==null?void 0:n.phone)!=null&&(e.signer.phone=(a=e.signer.phone)!=null?a:n.phone),e.signer.type==="external-wallet"&&(n==null?void 0:n.externalWalletSigner)!=null&&(e.signer=i?{type:"external-wallet",address:n.externalWalletSigner.address}:n.externalWalletSigner)}validateExistingWalletConfig(e,i){var a;if(this.mutateSignerFromCustomAuth(i),i.owner!=null&&e.owner!=null&&i.owner!==e.owner)throw new (0, _chunkO4FVTK7Xcjs.f)("Wallet owner does not match existing wallet's linked user");if(i.chain==="solana"&&e.chainType!=="solana"||i.chain!=="solana"&&e.chainType==="solana"||i.chain==="stellar"&&e.chainType!=="stellar"||i.chain!=="stellar"&&e.chainType==="stellar")throw new (0, _chunkO4FVTK7Xcjs.f)(`Wallet chain does not match existing wallet's chain. You must use chain: ${e.chainType}.`);if(e.type!=="smart")return;let n=i.signer,t=(a=e==null?void 0:e.config)==null?void 0:a.adminSigner;if(n!=null&&t!=null){if(n.type!==t.type)throw new (0, _chunkO4FVTK7Xcjs.f)("The wallet signer type provided in the wallet config does not match the existing wallet's adminSigner type");_chunk23BRREJGcjs.a.call(void 0, n,t)}}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};exports.a = u;
3
+ - Use your Crossmint Client API Key (not a server key).`);let i=yield this.apiClient.getWallet(`me:${this.getChainType(e.chain)}:smart`);return i!=null&&!("error"in i)?this.createWalletInstance(i,e):this.createWallet(e)})}getWallet(e,i){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(!this.apiClient.isServerSide)throw new (0, _chunkO4FVTK7Xcjs.f)("getWallet is not supported on client side, use getOrCreateWallet instead");let n=yield this.apiClient.getWallet(e);if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.d)(JSON.stringify(n));return this.createWalletInstance(n,i)})}createWallet(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t,a,o,l;yield(o=(a=(t=e.options)==null?void 0:t.experimental_callbacks)==null?void 0:a.onWalletCreationStart)==null?void 0:o.call(a),this.mutateSignerFromCustomAuth(e,!0);let i=e.signer.type==="passkey"?yield this.createPasskeyAdminSigner(e.signer):e.signer,n=yield this.apiClient.createWallet({type:"smart",chainType:this.getChainType(e.chain),config:{adminSigner:i},owner:(l=e.owner)!=null?l:void 0});if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.f)(JSON.stringify(n));return this.createWalletInstance(n,e)})}createWalletInstance(e,i){this.validateExistingWalletConfig(e,i);let n=this.toInternalSignerConfig(e,i.signer,i.options);return new (0, _chunkDEP6NMLXcjs.a)({chain:i.chain,address:e.address,owner:e.owner,signer:_chunkNNWBKQGBcjs.a.call(void 0, i.chain,n),options:i.options},this.apiClient)}toInternalSignerConfig(e,i,n){var t,a,o,l,m,y;if(!(e.chainType==="evm"||e.chainType==="solana"||e.chainType==="stellar"))throw new (0, _chunkO4FVTK7Xcjs.f)(`Wallet type ${e.chainType} is not supported`);if(i==null&&((t=e.config)==null?void 0:t.adminSigner)==null)throw new (0, _chunkO4FVTK7Xcjs.f)("Signer is required to create a wallet");switch(i.type){case"api-key":{if(((a=e.config)==null?void 0:a.adminSigner.type)!=="api-key")throw new (0, _chunkO4FVTK7Xcjs.f)("API key signer does not match the wallet's signer type");return{type:"api-key",address:e.config.adminSigner.address,locator:e.config.adminSigner.locator}}case"external-wallet":if(((o=e.config)==null?void 0:o.adminSigner.type)!=="external-wallet")throw new (0, _chunkO4FVTK7Xcjs.f)("External wallet signer does not match the wallet's signer type");return _chunkXALFCQKDcjs.a.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},e.config.adminSigner),i);case"passkey":if(((l=e.config)==null?void 0:l.adminSigner.type)!=="passkey")throw new (0, _chunkO4FVTK7Xcjs.f)("Passkey signer does not match the wallet's signer type");return{type:"passkey",id:e.config.adminSigner.id,name:e.config.adminSigner.name,locator:e.config.adminSigner.locator,onCreatePasskey:i.onCreatePasskey,onSignWithPasskey:i.onSignWithPasskey};case"email":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="email")throw new (0, _chunkO4FVTK7Xcjs.f)("Email signer does not match the wallet's signer type");let{locator:c,email:h}=e.config.adminSigner;return{type:"email",email:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}case"phone":{if(((y=e.config)==null?void 0:y.adminSigner.type)!=="phone")throw new (0, _chunkO4FVTK7Xcjs.f)("Phone signer does not match the wallet's signer type");let{locator:c,phone:h}=e.config.adminSigner;return{type:"phone",phone:h,locator:c,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}default:throw new Error("Invalid signer type")}}createPasskeyAdminSigner(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let i=(t=e.name)!=null?t:`Crossmint Wallet ${Date.now()}`,n=e.onCreatePasskey?yield e.onCreatePasskey(i):yield _ox.WebAuthnP256.createCredential({name:i});return{type:"passkey",id:n.id,name:i,publicKey:{x:n.publicKey.x.toString(),y:n.publicKey.y.toString()}}})}mutateSignerFromCustomAuth(e,i=!1){var t,a;let{experimental_customAuth:n}=this.apiClient.crossmint;e.signer.type==="email"&&(n==null?void 0:n.email)!=null&&(e.signer.email=(t=e.signer.email)!=null?t:n.email),e.signer.type==="phone"&&(n==null?void 0:n.phone)!=null&&(e.signer.phone=(a=e.signer.phone)!=null?a:n.phone),e.signer.type==="external-wallet"&&(n==null?void 0:n.externalWalletSigner)!=null&&(e.signer=i?{type:"external-wallet",address:n.externalWalletSigner.address}:n.externalWalletSigner)}validateExistingWalletConfig(e,i){var a;if(this.mutateSignerFromCustomAuth(i),i.owner!=null&&e.owner!=null&&i.owner!==e.owner)throw new (0, _chunkO4FVTK7Xcjs.f)("Wallet owner does not match existing wallet's linked user");if(i.chain==="solana"&&e.chainType!=="solana"||i.chain!=="solana"&&e.chainType==="solana"||i.chain==="stellar"&&e.chainType!=="stellar"||i.chain!=="stellar"&&e.chainType==="stellar")throw new (0, _chunkO4FVTK7Xcjs.f)(`Wallet chain does not match existing wallet's chain. You must use chain: ${e.chainType}.`);if(e.type!=="smart")return;let n=i.signer,t=(a=e==null?void 0:e.config)==null?void 0:a.adminSigner;if(n!=null&&t!=null){if(n.type!==t.type)throw new (0, _chunkO4FVTK7Xcjs.f)("The wallet signer type provided in the wallet config does not match the existing wallet's adminSigner type");_chunk23BRREJGcjs.a.call(void 0, n,t)}}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};exports.a = u;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkT73LYYKVcjs = require('./chunk-T73LYYKV.cjs');var _chunkMY4MQMBKcjs = require('./chunk-MY4MQMBK.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var _commonsdkbase = require('@crossmint/common-sdk-base');var d=class u extends _chunkT73LYYKVcjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkT73LYYKVcjs.a.getOptions(n)},_chunkT73LYYKVcjs.a.getApiClient(n))}static from(n){if(!_commonsdkbase.isValidSolanaAddress.call(void 0, n.address))throw new Error("Wallet is not a Solana wallet");return new u(n)}sendTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e,r;let a=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:a.id};let i={additionalSigners:(r=n.additionalSigners)==null?void 0:r.map(o=>new (0, _chunkMY4MQMBKcjs.a)({type:"external-wallet",address:o.publicKey.toString(),locator:`external-wallet:${o.publicKey.toString()}`,onSignTransaction:p=>(p.sign([o]),Promise.resolve(p))}))};return yield this.approveTransactionAndWait(a.id,i)})}createTransaction(S){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*({transaction:n,options:a}){var r;let i=(r=a==null?void 0:a.experimental_signer)!=null?r:this.signer.locator(),e=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:_bs582.default.encode(n.serialize()),signer:i}});if("error"in e)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(e));return e})}};exports.a = d;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkDEP6NMLXcjs = require('./chunk-DEP6NMLX.cjs');var _chunkMY4MQMBKcjs = require('./chunk-MY4MQMBK.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var _commonsdkbase = require('@crossmint/common-sdk-base');var d=class u extends _chunkDEP6NMLXcjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkDEP6NMLXcjs.a.getOptions(n)},_chunkDEP6NMLXcjs.a.getApiClient(n))}static from(n){if(!_commonsdkbase.isValidSolanaAddress.call(void 0, n.address))throw new Error("Wallet is not a Solana wallet");return new u(n)}sendTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e,r;let a=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:a.id};let i={additionalSigners:(r=n.additionalSigners)==null?void 0:r.map(o=>new (0, _chunkMY4MQMBKcjs.a)({type:"external-wallet",address:o.publicKey.toString(),locator:`external-wallet:${o.publicKey.toString()}`,onSignTransaction:c=>(c.sign([o]),Promise.resolve(c))}))};return yield this.approveTransactionAndWait(a.id,i)})}createTransaction(S){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*({transaction:n,options:a}){var r;let i=(r=a==null?void 0:a.experimental_signer)!=null?r:this.signer.locator(),e=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:_bs582.default.encode(n.serialize()),signer:i}});if("error"in e)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(e));return e})}};exports.a = d;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkDEP6NMLXcjs = require('./chunk-DEP6NMLX.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkLO5VLDH7cjs = require('./chunk-LO5VLDH7.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _viem = require('viem');var _commonsdkbase = require('@crossmint/common-sdk-base');var m=class w extends _chunkDEP6NMLXcjs.a{constructor(t){super({chain:t.chain,address:t.address,owner:t.owner,signer:t.signer,options:_chunkDEP6NMLXcjs.a.getOptions(t)},_chunkDEP6NMLXcjs.a.getApiClient(t))}static from(t){if(!_commonsdkbase.isValidEvmAddress.call(void 0, t.address))throw new Error("Wallet is not an EVM wallet");return new w(t)}sendTransaction(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i;let n=this.buildTransaction(t),e=yield this.createTransaction(n,t.options);return(i=t.options)!=null&&i.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:e.id}:yield this.approveTransactionAndWait(e.id)})}signMessage(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e;let n=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:t.message,signer:this.signer.locator(),chain:this.chain}});if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.o)(JSON.stringify(n));return(e=t.options)!=null&&e.experimental_prepareOnly?{signature:void 0,signatureId:n.id}:yield this.approveSignatureAndWait(n.id)})}signTypedData(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var T;let{domain:n,message:e,primaryType:i,types:a,chain:r}=t;if(!n||!e||!a||!r)throw new (0, _chunkO4FVTK7Xcjs.k)("Invalid typed data");let{name:d,version:l,chainId:g,verifyingContract:h,salt:S}=n;if(!d||!l||!g||!h)throw new (0, _chunkO4FVTK7Xcjs.k)("Invalid typed data domain");let o=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:d,version:l,chainId:Number(g),verifyingContract:h,salt:S},message:e,primaryType:i,types:a},signer:this.signer.locator(),chain:r,isSmartWalletSignature:!1}});if("error"in o)throw new (0, _chunkO4FVTK7Xcjs.o)(JSON.stringify(o));return(T=t.options)!=null&&T.experimental_prepareOnly?{signature:void 0,signatureId:o.id}:yield this.approveSignatureAndWait(o.id)})}getViemClient(t){var n;return _viem.createPublicClient.call(void 0, {transport:(n=t==null?void 0:t.transport)!=null?n:_viem.http.call(void 0, ),chain:_chunkLO5VLDH7cjs.a.call(void 0, this.chain)})}createTransaction(t,n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var a;let e=(a=n==null?void 0:n.experimental_signer)!=null?a:this.signer.locator(),i=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:e,chain:this.chain,calls:[t]}});if("error"in i)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(i));return i})}buildTransaction(t){var n,e,i,a,r;if("transaction"in t)return{transaction:t.transaction};if(t.abi==null)return{to:t.to,value:(e=(n=t.value)==null?void 0:n.toString())!=null?e:"0",data:(i=t.data)!=null?i:"0x"};if(!t.functionName)throw new Error("Function name is required");return{to:t.to,value:(r=(a=t.value)==null?void 0:a.toString())!=null?r:"0",data:_viem.encodeFunctionData.call(void 0, {abi:t.abi,functionName:t.functionName,args:t.args})}}};exports.a = m;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVPLMZ4QWcjs = require('./chunk-VPLMZ4QW.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var f,l,G= exports.a =class{constructor(r,e){_chunkXALFCQKDcjs.d.call(void 0, this,f);_chunkXALFCQKDcjs.d.call(void 0, this,l);let{chain:t,address:n,owner:s,signer:g,options:d}=r;_chunkXALFCQKDcjs.e.call(void 0, this,l,e),this.chain=t,this.address=n,this.owner=s,this.signer=g,_chunkXALFCQKDcjs.e.call(void 0, this,f,d)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,l)}get options(){return _chunkXALFCQKDcjs.c.call(void 0, this,f)}experimental_apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,l)}balances(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t;switch(this.chain){case"solana":t="sol";break;case"stellar":t="xlm";break;default:t="eth";break}let n=[t,"usdc",...r!=null?r:[]],s=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getBalance(this.address,{chains:e!=null?e:[this.chain],tokens:n.map(g=>g.toLowerCase())});if("error"in s)throw new Error(`Failed to get balances for wallet: ${JSON.stringify(s.message)}`);return this.transformBalanceResponse(s,t,r)})}transformBalanceResponse(r,e,t){let n=a=>{var m,w,v,y,T;let c=(m=a.chains)==null?void 0:m[this.chain],h="contractAddress"in c?c.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.symbol)!=null?v:"",amount:(y=a.amount)!=null?y:"0",contractAddress:h,decimals:a.decimals,rawAmount:(T=a.rawAmount)!=null?T:"0"}},s=r.find(a=>a.symbol===e),g=r.find(a=>a.symbol==="usdc"),d=r.filter(a=>{var c;return a.symbol!==e&&a.symbol!=="usdc"&&(t==null?void 0:t.includes((c=a.symbol)!=null?c:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(e),usdc:g!=null?n(g):i("usdc"),tokens:d.map(n)}}experimental_nfts(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield _chunkXALFCQKDcjs.c.call(void 0, this,l).experimental_getNfts(_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},r),{chain:this.chain,address:this.address}))})}experimental_transactions(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let r=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransactions(this.walletLocator);if("error"in r)throw new Error(`Failed to get transactions: ${JSON.stringify(r.message)}`);return r})}experimental_transaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r);if("error"in e)throw new Error(`Failed to get transaction: ${JSON.stringify(e.error)}`);return e})}experimental_activity(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let r=yield this.apiClient.experimental_activity(this.walletLocator,{chain:this.chain});if("error"in r)throw new Error(`Failed to get activity: ${JSON.stringify(r.message)}`);return r})}send(r,e,t,n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let s=H(r),g=M(e,this.chain),d={recipient:s,amount:t},i=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).send(this.walletLocator,g,d);if("message"in i)throw new (0, _chunkO4FVTK7Xcjs.r)(`Failed to send token: ${JSON.stringify(i.message)}`);return n!=null&&n.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:i.id}:yield this.approveTransactionAndWait(i.id)})}approveTransaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return console.warn("approveTransaction is deprecated. Use approve instead. This method will be removed in the next major version."),yield this.approve(r)})}approve(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(r.transactionId!=null)return yield this.approveTransactionAndWait(r.transactionId,r.options);if(r.signatureId!=null)return yield this.approveSignatureAndWait(r.signatureId,r.options);throw new Error("Either transactionId or signatureId must be provided")})}addDelegatedSigner(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t;let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).registerSigner(this.walletLocator,{signer:r.signer,chain:this.chain==="solana"||this.chain==="stellar"?void 0:this.chain});if("error"in e)throw new Error(`Failed to register signer: ${JSON.stringify(e.message)}`);if("transaction"in e){let n=e.transaction.id;yield this.approveTransactionAndWait(n)}else{let n=(t=e.chains)==null?void 0:t[this.chain];if((n==null?void 0:n.status)==="awaiting-approval"){yield this.approveSignatureAndWait(n.id);return}if((n==null?void 0:n.status)==="pending"){yield this.waitForSignature(n.id);return}}})}delegatedSigners(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e,t,n;let r=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getWallet(this.walletLocator);if("error"in r)throw new (0, _chunkO4FVTK7Xcjs.d)(JSON.stringify(r));if(this.chain==="stellar")return[];if(r.type!=="smart"||r.chainType!=="evm"&&r.chainType!=="solana")throw new (0, _chunkO4FVTK7Xcjs.c)(`Wallet type ${r.type} not supported`);return(n=(t=(e=r==null?void 0:r.config)==null?void 0:e.delegatedSigners)==null?void 0:t.map(s=>{let g=s.locator.indexOf(":");return{signer:`external-wallet:${g>=0?s.locator.slice(g+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return _chunkXALFCQKDcjs.c.call(void 0, this,l).isServerSide?this.address:this.chain==="stellar"?"me:stellar:smart":this.chain==="solana"?"me:solana:smart":"me:evm:smart"}get isSolanaWallet(){return this.chain==="solana"}approveTransactionAndWait(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.approveTransactionInternal(r,e),yield this.sleep(1e3),yield this.waitForTransaction(r)})}approveSignatureAndWait(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.approveSignatureInternal(r,e),yield this.sleep(1e3),yield this.waitForSignature(r)})}approveSignatureInternal(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a;if(this.isSolanaWallet)throw new Error("Approving signatures is only supported for EVM smart wallets");let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getSignature(this.walletLocator,r);if("error"in t)throw new (0, _chunkO4FVTK7Xcjs.p)(JSON.stringify(t));if(this.signer.type==="api-key")return t;if((e==null?void 0:e.experimental_approval)!=null){let c=[e.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,c)}let n=(i=t.approvals)==null?void 0:i.pending;if(n==null)return t;let s=[...(a=e==null?void 0:e.additionalSigners)!=null?a:[],this.signer],d=(yield Promise.all(n.map(c=>{let h=s.find(m=>m.locator()===c.signer.locator);if(h==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${c.signer} not found in pending approvals`);return h.signMessage(c.message)}))).map(c=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},c),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,d)})}approveTransactionInternal(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a,c,h,m;let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r);if("error"in t)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(t));if(yield(c=(a=(i=_chunkXALFCQKDcjs.c.call(void 0, this,f))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:c.call(a),this.signer.type==="api-key")return t;if((e==null?void 0:e.experimental_approval)!=null){let w=[e.experimental_approval];return yield this.executeApproveTransactionWithErrorHandling(r,w)}let n=(h=t.approvals)==null?void 0:h.pending;if(n==null)return t;let s=[...(m=e==null?void 0:e.additionalSigners)!=null?m:[],this.signer],d=(yield Promise.all(n.map(w=>{let v=s.find(T=>T.locator()===w.signer.locator);if(v==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${w.signer} not found in pending approvals`);let y=t.chainType==="solana"&&"transaction"in t.onChain?t.onChain.transaction:w.message;return v.signTransaction(y)}))).map(w=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,d)})}executeApproveTransactionWithErrorHandling(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).approveTransaction(this.walletLocator,r,{approvals:e});if(t.error)throw new (0, _chunkO4FVTK7Xcjs.x)(JSON.stringify(t));return t})}executeApproveSignatureWithErrorHandling(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).approveSignature(this.walletLocator,r,{approvals:e});if(t.error)throw new (0, _chunkO4FVTK7Xcjs.q)(JSON.stringify(t));return t})}waitForSignature(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let e=null;do if(yield new Promise(t=>setTimeout(t,_chunkVPLMZ4QWcjs.d)),e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getSignature(this.walletLocator,r),"error"in e)throw new (0, _chunkO4FVTK7Xcjs.p)(JSON.stringify(e));while(e===null||e.status==="pending");if(e.status==="failed")throw new (0, _chunkO4FVTK7Xcjs.m)("Signature signing failed");if(!e.outputSignature)throw new (0, _chunkO4FVTK7Xcjs.p)("Signature not available");return{signature:e.outputSignature,signatureId:r}})}waitForTransaction(g){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*(r,e=6e4,{backoffMultiplier:t=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=_chunkVPLMZ4QWcjs.d}={}){var c;let d=Date.now(),i;do{if(Date.now()-d>e)throw new (0, _chunkO4FVTK7Xcjs.t)("Transaction confirmation timeout");if(i=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r),i.error)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(i));yield this.sleep(s),s=Math.min(s*t,n)}while(i.status==="pending");if(i.status==="failed")throw new (0, _chunkO4FVTK7Xcjs.u)(`Transaction sending failed: ${JSON.stringify(i.error)}`);if(i.status==="awaiting-approval")throw new (0, _chunkO4FVTK7Xcjs.v)("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");let a=i.onChain.txId;if(a==null)throw new (0, _chunkO4FVTK7Xcjs.w)("Transaction hash not found on transaction response");return{hash:a,explorerLink:(c=i.onChain.explorerLink)!=null?c:"",transactionId:i.id}})}sleep(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return new Promise(e=>setTimeout(e,r))})}};f=new WeakMap,l=new WeakMap;function H(u){if(typeof u=="string")return u;if("email"in u)return`email:${u.email}`;if("x"in u)return`x:${u.x}`;if("twitter"in u)return`twitter:${u.twitter}`;if("phone"in u)return`phoneNumber:${u.phone}`;if("userId"in u)return`userId:${u.userId}`;throw new Error("Invalid recipient locator")}function M(u,r){return _commonsdkbase.isValidAddress.call(void 0, u)?`${r}:${u}`:`${r}:${u.toLowerCase()}`}exports.a = G;
@@ -0,0 +1 @@
1
+ import{a as t}from"./chunk-UKJOEFGJ.js";import{r as p}from"./chunk-PSXRNSOE.js";import{f as o}from"./chunk-BW7YYVZE.js";import{isValidStellarAddress as T}from"@crossmint/common-sdk-base";var l=class d extends t{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:t.getOptions(n)},t.getApiClient(n))}static from(n){if(!T(n.address))throw new Error("Wallet is not a Stellar wallet");return new d(n)}sendTransaction(n){return o(this,null,function*(){var e;let r=yield this.createTransaction(n);if((e=n.options)!=null&&e.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:r.id};let a={};return yield this.approveTransactionAndWait(r.id,a)})}createTransaction(x){return o(this,arguments,function*({contractId:n,method:r,memo:a,args:e,options:i}){var c;let u=(c=i==null?void 0:i.experimental_signer)!=null?c:this.signer.locator(),s=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:{type:"contract-call",contractId:n,method:r,memo:a,args:e},signer:u}});if("error"in s)throw new p(JSON.stringify(s));return s})}};export{l as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkGZ2SM6KFcjs = require('./chunk-GZ2SM6KF.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var p=class extends _commonsdkbase.CrossmintApiClient{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:_chunkGZ2SM6KFcjs.c,version:_chunkGZ2SM6KFcjs.b}}});this.apiPrefix="api/2025-06-09/wallets";this.legacyApiPrefix="api/2022-06-09/wallets"}createWallet(e){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()})}createTransaction(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}experimental_getNfts(e){return _chunkXALFCQKDcjs.f.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.address}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}experimental_activity(e,s){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=e;this.isServerSide||(t=`me:${s.chain==="solana"?"solana-smart-wallet":"evm-smart-wallet"}`);let a=new URLSearchParams;return a.append("chain",s.chain.toString()),(yield this.get(`${this.legacyApiPrefix}/${t}/activity?${a.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=new URLSearchParams;return t.append("tokens",s.tokens.join(",")),t.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${e}/balances?${t.toString()}`,{headers:this.headers})).json()})}registerSigner(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signers/${s}`,{headers:this.headers})).json()})}send(e,s,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(t),headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkO4FVTK7Xcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get headers(){return{"Content-Type":"application/json"}}};exports.a = p;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVPLMZ4QWcjs = require('./chunk-VPLMZ4QW.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var p=class extends _commonsdkbase.CrossmintApiClient{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:_chunkVPLMZ4QWcjs.c,version:_chunkVPLMZ4QWcjs.b}}});this.apiPrefix="api/2025-06-09/wallets";this.legacyApiPrefix="api/2022-06-09/wallets"}createWallet(e){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}`,{headers:this.headers})).json()})}createTransaction(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions/${s}`,{headers:this.headers})).json()})}createSignature(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signatures/${s}`,{headers:this.headers})).json()})}getTransactions(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/transactions`,{headers:this.headers})).json()})}experimental_getNfts(e){return _chunkXALFCQKDcjs.f.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.address}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}experimental_activity(e,s){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=e;this.isServerSide||(t=`me:${s.chain==="solana"?"solana-smart-wallet":"evm-smart-wallet"}`);let a=new URLSearchParams;return a.append("chain",s.chain.toString()),(yield this.get(`${this.legacyApiPrefix}/${t}/activity?${a.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=new URLSearchParams;return t.append("tokens",s.tokens.join(",")),t.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${e}/balances?${t.toString()}`,{headers:this.headers})).json()})}registerSigner(e,s){return _chunkXALFCQKDcjs.f.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 _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.get(`${this.apiPrefix}/${e}/signers/${s}`,{headers:this.headers})).json()})}send(e,s,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(t),headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===_commonsdkbase.APIKeyUsageOrigin.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new (0, _chunkO4FVTK7Xcjs.a)("Invalid API key");return this.parsedAPIKey.environment}get headers(){return{"Content-Type":"application/json"}}};exports.a = p;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBXGEGPAHcjs = require('./chunk-BXGEGPAH.cjs');var _chunkGKN6YKBDcjs = require('./chunk-GKN6YKBD.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var i=class o{constructor(t){let r=new (0, _chunkGKN6YKBDcjs.a)(t);this.walletFactory=new (0, _chunkBXGEGPAHcjs.a)(r)}static from(t){return new o(t)}getOrCreateWallet(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.getOrCreateWallet(t)})}getWallet(t,r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.getWallet(t,r)})}createWallet(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.createWallet(t)})}};exports.a = _commonsdkbase.createCrossmint; exports.b = i;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBDHUM4C3cjs = require('./chunk-BDHUM4C3.cjs');var _chunkFYGTK45Lcjs = require('./chunk-FYGTK45L.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var i=class o{constructor(t){let r=new (0, _chunkFYGTK45Lcjs.a)(t);this.walletFactory=new (0, _chunkBDHUM4C3cjs.a)(r)}static from(t){return new o(t)}getOrCreateWallet(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.getOrCreateWallet(t)})}getWallet(t,r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.getWallet(t,r)})}createWallet(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.walletFactory.createWallet(t)})}};exports.a = _commonsdkbase.createCrossmint; exports.b = i;
@@ -1 +1 @@
1
- import{a as l}from"./chunk-5Y3LP2YE.js";import{a}from"./chunk-4Z7E6Y6H.js";import{f as e}from"./chunk-BW7YYVZE.js";import{createCrossmint as p}from"@crossmint/common-sdk-base";var i=class o{constructor(t){let r=new a(t);this.walletFactory=new l(r)}static from(t){return new o(t)}getOrCreateWallet(t){return e(this,null,function*(){return yield this.walletFactory.getOrCreateWallet(t)})}getWallet(t,r){return e(this,null,function*(){return yield this.walletFactory.getWallet(t,r)})}createWallet(t){return e(this,null,function*(){return yield this.walletFactory.createWallet(t)})}};export{p as a,i as b};
1
+ import{a as l}from"./chunk-7YKSVOKL.js";import{a}from"./chunk-WGYPC2LD.js";import{f as e}from"./chunk-BW7YYVZE.js";import{createCrossmint as p}from"@crossmint/common-sdk-base";var i=class o{constructor(t){let r=new a(t);this.walletFactory=new l(r)}static from(t){return new o(t)}getOrCreateWallet(t){return e(this,null,function*(){return yield this.walletFactory.getOrCreateWallet(t)})}getWallet(t,r){return e(this,null,function*(){return yield this.walletFactory.getWallet(t,r)})}createWallet(t){return e(this,null,function*(){return yield this.walletFactory.createWallet(t)})}};export{p as a,i as b};
@@ -0,0 +1 @@
1
+ import{a as c}from"./chunk-UKJOEFGJ.js";import{k as p,o as u,r as y}from"./chunk-PSXRNSOE.js";import{a as f}from"./chunk-RE7DBYTJ.js";import{f as s}from"./chunk-BW7YYVZE.js";import{createPublicClient as C,encodeFunctionData as x,http as I}from"viem";import{isValidEvmAddress as E}from"@crossmint/common-sdk-base";var m=class w extends c{constructor(t){super({chain:t.chain,address:t.address,owner:t.owner,signer:t.signer,options:c.getOptions(t)},c.getApiClient(t))}static from(t){if(!E(t.address))throw new Error("Wallet is not an EVM wallet");return new w(t)}sendTransaction(t){return s(this,null,function*(){var i;let n=this.buildTransaction(t),e=yield this.createTransaction(n,t.options);return(i=t.options)!=null&&i.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:e.id}:yield this.approveTransactionAndWait(e.id)})}signMessage(t){return s(this,null,function*(){var e;let n=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:t.message,signer:this.signer.locator(),chain:this.chain}});if("error"in n)throw new u(JSON.stringify(n));return(e=t.options)!=null&&e.experimental_prepareOnly?{signature:void 0,signatureId:n.id}:yield this.approveSignatureAndWait(n.id)})}signTypedData(t){return s(this,null,function*(){var T;let{domain:n,message:e,primaryType:i,types:a,chain:r}=t;if(!n||!e||!a||!r)throw new p("Invalid typed data");let{name:d,version:l,chainId:g,verifyingContract:h,salt:S}=n;if(!d||!l||!g||!h)throw new p("Invalid typed data domain");let o=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:d,version:l,chainId:Number(g),verifyingContract:h,salt:S},message:e,primaryType:i,types:a},signer:this.signer.locator(),chain:r,isSmartWalletSignature:!1}});if("error"in o)throw new u(JSON.stringify(o));return(T=t.options)!=null&&T.experimental_prepareOnly?{signature:void 0,signatureId:o.id}:yield this.approveSignatureAndWait(o.id)})}getViemClient(t){var n;return C({transport:(n=t==null?void 0:t.transport)!=null?n:I(),chain:f(this.chain)})}createTransaction(t,n){return s(this,null,function*(){var a;let e=(a=n==null?void 0:n.experimental_signer)!=null?a:this.signer.locator(),i=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:e,chain:this.chain,calls:[t]}});if("error"in i)throw new y(JSON.stringify(i));return i})}buildTransaction(t){var n,e,i,a,r;if("transaction"in t)return{transaction:t.transaction};if(t.abi==null)return{to:t.to,value:(e=(n=t.value)==null?void 0:n.toString())!=null?e:"0",data:(i=t.data)!=null?i:"0x"};if(!t.functionName)throw new Error("Function name is required");return{to:t.to,value:(r=(a=t.value)==null?void 0:a.toString())!=null?r:"0",data:x({abi:t.abi,functionName:t.functionName,args:t.args})}}};export{m as a};
@@ -0,0 +1 @@
1
+ import{d as O}from"./chunk-XSHBJCRE.js";import{c as W,d as P,i as E,m as N,p as b,q as _,r as $,s as L,t as I,u as F,v as R,w as B,x as J}from"./chunk-PSXRNSOE.js";import{a as S,b as A,c as p,d as x,e as C,f as o}from"./chunk-BW7YYVZE.js";import{isValidAddress as k}from"@crossmint/common-sdk-base";var f,l,G=class{constructor(r,e){x(this,f);x(this,l);let{chain:t,address:n,owner:s,signer:g,options:d}=r;C(this,l,e),this.chain=t,this.address=n,this.owner=s,this.signer=g,C(this,f,d)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return p(this,l)}get options(){return p(this,f)}experimental_apiClient(){return p(this,l)}balances(r,e){return o(this,null,function*(){let t;switch(this.chain){case"solana":t="sol";break;case"stellar":t="xlm";break;default:t="eth";break}let n=[t,"usdc",...r!=null?r:[]],s=yield p(this,l).getBalance(this.address,{chains:e!=null?e:[this.chain],tokens:n.map(g=>g.toLowerCase())});if("error"in s)throw new Error(`Failed to get balances for wallet: ${JSON.stringify(s.message)}`);return this.transformBalanceResponse(s,t,r)})}transformBalanceResponse(r,e,t){let n=a=>{var m,w,v,y,T;let c=(m=a.chains)==null?void 0:m[this.chain],h="contractAddress"in c?c.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.symbol)!=null?v:"",amount:(y=a.amount)!=null?y:"0",contractAddress:h,decimals:a.decimals,rawAmount:(T=a.rawAmount)!=null?T:"0"}},s=r.find(a=>a.symbol===e),g=r.find(a=>a.symbol==="usdc"),d=r.filter(a=>{var c;return a.symbol!==e&&a.symbol!=="usdc"&&(t==null?void 0:t.includes((c=a.symbol)!=null?c:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(e),usdc:g!=null?n(g):i("usdc"),tokens:d.map(n)}}experimental_nfts(r){return o(this,null,function*(){return yield p(this,l).experimental_getNfts(A(S({},r),{chain:this.chain,address:this.address}))})}experimental_transactions(){return o(this,null,function*(){let r=yield p(this,l).getTransactions(this.walletLocator);if("error"in r)throw new Error(`Failed to get transactions: ${JSON.stringify(r.message)}`);return r})}experimental_transaction(r){return o(this,null,function*(){let e=yield p(this,l).getTransaction(this.walletLocator,r);if("error"in e)throw new Error(`Failed to get transaction: ${JSON.stringify(e.error)}`);return e})}experimental_activity(){return o(this,null,function*(){let r=yield this.apiClient.experimental_activity(this.walletLocator,{chain:this.chain});if("error"in r)throw new Error(`Failed to get activity: ${JSON.stringify(r.message)}`);return r})}send(r,e,t,n){return o(this,null,function*(){let s=H(r),g=M(e,this.chain),d={recipient:s,amount:t},i=yield p(this,l).send(this.walletLocator,g,d);if("message"in i)throw new $(`Failed to send token: ${JSON.stringify(i.message)}`);return n!=null&&n.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:i.id}:yield this.approveTransactionAndWait(i.id)})}approveTransaction(r){return o(this,null,function*(){return console.warn("approveTransaction is deprecated. Use approve instead. This method will be removed in the next major version."),yield this.approve(r)})}approve(r){return o(this,null,function*(){if(r.transactionId!=null)return yield this.approveTransactionAndWait(r.transactionId,r.options);if(r.signatureId!=null)return yield this.approveSignatureAndWait(r.signatureId,r.options);throw new Error("Either transactionId or signatureId must be provided")})}addDelegatedSigner(r){return o(this,null,function*(){var t;let e=yield p(this,l).registerSigner(this.walletLocator,{signer:r.signer,chain:this.chain==="solana"||this.chain==="stellar"?void 0:this.chain});if("error"in e)throw new Error(`Failed to register signer: ${JSON.stringify(e.message)}`);if("transaction"in e){let n=e.transaction.id;yield this.approveTransactionAndWait(n)}else{let n=(t=e.chains)==null?void 0:t[this.chain];if((n==null?void 0:n.status)==="awaiting-approval"){yield this.approveSignatureAndWait(n.id);return}if((n==null?void 0:n.status)==="pending"){yield this.waitForSignature(n.id);return}}})}delegatedSigners(){return o(this,null,function*(){var e,t,n;let r=yield p(this,l).getWallet(this.walletLocator);if("error"in r)throw new P(JSON.stringify(r));if(this.chain==="stellar")return[];if(r.type!=="smart"||r.chainType!=="evm"&&r.chainType!=="solana")throw new W(`Wallet type ${r.type} not supported`);return(n=(t=(e=r==null?void 0:r.config)==null?void 0:e.delegatedSigners)==null?void 0:t.map(s=>{let g=s.locator.indexOf(":");return{signer:`external-wallet:${g>=0?s.locator.slice(g+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return p(this,l).isServerSide?this.address:this.chain==="stellar"?"me:stellar:smart":this.chain==="solana"?"me:solana:smart":"me:evm:smart"}get isSolanaWallet(){return this.chain==="solana"}approveTransactionAndWait(r,e){return o(this,null,function*(){return yield this.approveTransactionInternal(r,e),yield this.sleep(1e3),yield this.waitForTransaction(r)})}approveSignatureAndWait(r,e){return o(this,null,function*(){return yield this.approveSignatureInternal(r,e),yield this.sleep(1e3),yield this.waitForSignature(r)})}approveSignatureInternal(r,e){return o(this,null,function*(){var i,a;if(this.isSolanaWallet)throw new Error("Approving signatures is only supported for EVM smart wallets");let t=yield p(this,l).getSignature(this.walletLocator,r);if("error"in t)throw new b(JSON.stringify(t));if(this.signer.type==="api-key")return t;if((e==null?void 0:e.experimental_approval)!=null){let c=[e.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,c)}let n=(i=t.approvals)==null?void 0:i.pending;if(n==null)return t;let s=[...(a=e==null?void 0:e.additionalSigners)!=null?a:[],this.signer],d=(yield Promise.all(n.map(c=>{let h=s.find(m=>m.locator()===c.signer.locator);if(h==null)throw new E(`Signer ${c.signer} not found in pending approvals`);return h.signMessage(c.message)}))).map(c=>A(S({},c),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,d)})}approveTransactionInternal(r,e){return o(this,null,function*(){var i,a,c,h,m;let t=yield p(this,l).getTransaction(this.walletLocator,r);if("error"in t)throw new L(JSON.stringify(t));if(yield(c=(a=(i=p(this,f))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:c.call(a),this.signer.type==="api-key")return t;if((e==null?void 0:e.experimental_approval)!=null){let w=[e.experimental_approval];return yield this.executeApproveTransactionWithErrorHandling(r,w)}let n=(h=t.approvals)==null?void 0:h.pending;if(n==null)return t;let s=[...(m=e==null?void 0:e.additionalSigners)!=null?m:[],this.signer],d=(yield Promise.all(n.map(w=>{let v=s.find(T=>T.locator()===w.signer.locator);if(v==null)throw new E(`Signer ${w.signer} not found in pending approvals`);let y=t.chainType==="solana"&&"transaction"in t.onChain?t.onChain.transaction:w.message;return v.signTransaction(y)}))).map(w=>A(S({},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,d)})}executeApproveTransactionWithErrorHandling(r,e){return o(this,null,function*(){let t=yield p(this,l).approveTransaction(this.walletLocator,r,{approvals:e});if(t.error)throw new J(JSON.stringify(t));return t})}executeApproveSignatureWithErrorHandling(r,e){return o(this,null,function*(){let t=yield p(this,l).approveSignature(this.walletLocator,r,{approvals:e});if(t.error)throw new _(JSON.stringify(t));return t})}waitForSignature(r){return o(this,null,function*(){let e=null;do if(yield new Promise(t=>setTimeout(t,O)),e=yield p(this,l).getSignature(this.walletLocator,r),"error"in e)throw new b(JSON.stringify(e));while(e===null||e.status==="pending");if(e.status==="failed")throw new N("Signature signing failed");if(!e.outputSignature)throw new b("Signature not available");return{signature:e.outputSignature,signatureId:r}})}waitForTransaction(g){return o(this,arguments,function*(r,e=6e4,{backoffMultiplier:t=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=O}={}){var c;let d=Date.now(),i;do{if(Date.now()-d>e)throw new I("Transaction confirmation timeout");if(i=yield p(this,l).getTransaction(this.walletLocator,r),i.error)throw new L(JSON.stringify(i));yield this.sleep(s),s=Math.min(s*t,n)}while(i.status==="pending");if(i.status==="failed")throw new F(`Transaction sending failed: ${JSON.stringify(i.error)}`);if(i.status==="awaiting-approval")throw new R("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");let a=i.onChain.txId;if(a==null)throw new B("Transaction hash not found on transaction response");return{hash:a,explorerLink:(c=i.onChain.explorerLink)!=null?c:"",transactionId:i.id}})}sleep(r){return o(this,null,function*(){return new Promise(e=>setTimeout(e,r))})}};f=new WeakMap,l=new WeakMap;function H(u){if(typeof u=="string")return u;if("email"in u)return`email:${u.email}`;if("x"in u)return`x:${u.x}`;if("twitter"in u)return`twitter:${u.twitter}`;if("phone"in u)return`phoneNumber:${u.phone}`;if("userId"in u)return`userId:${u.userId}`;throw new Error("Invalid recipient locator")}function M(u,r){return k(u)?`${r}:${u}`:`${r}:${u.toLowerCase()}`}export{G as a};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.11.4";var p="WALLETS_SDK",r= exports.b =t,c= exports.c =s,a= exports.d =500;exports.a = p; exports.b = r; exports.c = c; exports.d = a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.11.5";var p="WALLETS_SDK",r= exports.b =t,c= exports.c =s,a= exports.d =500;exports.a = p; exports.b = r; exports.c = c; exports.d = a;
@@ -1 +1 @@
1
- import{b as n,c as i}from"./chunk-HYTMXCA5.js";import{a as o}from"./chunk-PSXRNSOE.js";import{f as r}from"./chunk-BW7YYVZE.js";import{APIKeyUsageOrigin as c,CrossmintApiClient as h}from"@crossmint/common-sdk-base";var p=class extends h{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:i,version:n}}});this.apiPrefix="api/2025-06-09/wallets";this.legacyApiPrefix="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()})}experimental_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.address}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}experimental_activity(e,s){return r(this,null,function*(){let t=e;this.isServerSide||(t=`me:${s.chain==="solana"?"solana-smart-wallet":"evm-smart-wallet"}`);let a=new URLSearchParams;return a.append("chain",s.chain.toString()),(yield this.get(`${this.legacyApiPrefix}/${t}/activity?${a.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return r(this,null,function*(){let t=new URLSearchParams;return t.append("tokens",s.tokens.join(",")),t.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${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()})}send(e,s,t){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(t),headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===c.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new o("Invalid API key");return this.parsedAPIKey.environment}get headers(){return{"Content-Type":"application/json"}}};export{p as a};
1
+ import{b as n,c as i}from"./chunk-XSHBJCRE.js";import{a as o}from"./chunk-PSXRNSOE.js";import{f as r}from"./chunk-BW7YYVZE.js";import{APIKeyUsageOrigin as c,CrossmintApiClient as h}from"@crossmint/common-sdk-base";var p=class extends h{constructor(e){super(e,{internalConfig:{sdkMetadata:{name:i,version:n}}});this.apiPrefix="api/2025-06-09/wallets";this.legacyApiPrefix="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()})}experimental_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.address}`;return(yield this.get(`${this.apiPrefix}/${t}/nfts?${s.toString()}`,{headers:this.headers})).json()})}experimental_activity(e,s){return r(this,null,function*(){let t=e;this.isServerSide||(t=`me:${s.chain==="solana"?"solana-smart-wallet":"evm-smart-wallet"}`);let a=new URLSearchParams;return a.append("chain",s.chain.toString()),(yield this.get(`${this.legacyApiPrefix}/${t}/activity?${a.toString()}`,{headers:this.headers})).json()})}getBalance(e,s){return r(this,null,function*(){let t=new URLSearchParams;return t.append("tokens",s.tokens.join(",")),t.append("chains",s.chains.join(",")),(yield this.get(`${this.apiPrefix}/${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()})}send(e,s,t){return r(this,null,function*(){return(yield this.post(`${this.apiPrefix}/${e}/tokens/${s}/transfers`,{body:JSON.stringify(t),headers:this.headers})).json()})}get isServerSide(){return this.parsedAPIKey.usageOrigin===c.SERVER}get environment(){if(!this.parsedAPIKey.isValid)throw new o("Invalid API key");return this.parsedAPIKey.environment}get headers(){return{"Content-Type":"application/json"}}};export{p as a};
@@ -0,0 +1 @@
1
+ var s="@crossmint/wallets-sdk",t="0.11.5";var r="WALLETS_SDK",c=t,a=s,d=500;export{r as a,c as b,a as c,d};
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4AXQWKEWcjs = require('./chunk-4AXQWKEW.cjs');var _chunkXAYHPFSEcjs = require('./chunk-XAYHPFSE.cjs');var _chunkA3FFXMFPcjs = require('./chunk-A3FFXMFP.cjs');var _chunkYEA5ZSOHcjs = require('./chunk-YEA5ZSOH.cjs');require('./chunk-BXGEGPAH.cjs');require('./chunk-23BRREJG.cjs');var _chunkT73LYYKVcjs = require('./chunk-T73LYYKV.cjs');require('./chunk-NNWBKQGB.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-4GMYGJLU.cjs');require('./chunk-E2WBOL4Z.cjs');require('./chunk-MTZIGWOA.cjs');require('./chunk-FC7FFQOV.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-MY4MQMBK.cjs');require('./chunk-FAESMNDM.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');var _chunkGKN6YKBDcjs = require('./chunk-GKN6YKBD.cjs');require('./chunk-GZ2SM6KF.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-LO5VLDH7.cjs');require('./chunk-IR5WN6FQ.cjs');require('./chunk-GEY574TH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-BULGM35W.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkYEA5ZSOHcjs.b; exports.EVMWallet = _chunk4AXQWKEWcjs.a; exports.SolanaWallet = _chunkXAYHPFSEcjs.a; exports.StellarWallet = _chunkA3FFXMFPcjs.a; exports.Wallet = _chunkT73LYYKVcjs.a; exports.WalletsApiClient = _chunkGKN6YKBDcjs.a; exports.createCrossmint = _chunkYEA5ZSOHcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC54AWEW3cjs = require('./chunk-C54AWEW3.cjs');var _chunkBWF3A2OOcjs = require('./chunk-BWF3A2OO.cjs');var _chunk5L6RZBMZcjs = require('./chunk-5L6RZBMZ.cjs');var _chunkH742IMQCcjs = require('./chunk-H742IMQC.cjs');require('./chunk-BDHUM4C3.cjs');require('./chunk-23BRREJG.cjs');var _chunkDEP6NMLXcjs = require('./chunk-DEP6NMLX.cjs');require('./chunk-NNWBKQGB.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-4GMYGJLU.cjs');require('./chunk-E2WBOL4Z.cjs');require('./chunk-MTZIGWOA.cjs');require('./chunk-FC7FFQOV.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-MY4MQMBK.cjs');require('./chunk-FAESMNDM.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');var _chunkFYGTK45Lcjs = require('./chunk-FYGTK45L.cjs');require('./chunk-VPLMZ4QW.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-LO5VLDH7.cjs');require('./chunk-IR5WN6FQ.cjs');require('./chunk-GEY574TH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-BULGM35W.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkH742IMQCcjs.b; exports.EVMWallet = _chunkC54AWEW3cjs.a; exports.SolanaWallet = _chunkBWF3A2OOcjs.a; exports.StellarWallet = _chunk5L6RZBMZcjs.a; exports.Wallet = _chunkDEP6NMLXcjs.a; exports.WalletsApiClient = _chunkFYGTK45Lcjs.a; exports.createCrossmint = _chunkH742IMQCcjs.a;
package/dist/index.d.cts CHANGED
@@ -5,7 +5,7 @@ export { Wallet } from './wallets/wallet.cjs';
5
5
  export { SolanaWallet } from './wallets/solana.cjs';
6
6
  export { EVMWallet } from './wallets/evm.cjs';
7
7
  export { StellarWallet } from './wallets/stellar.cjs';
8
- export { Balances, DelegatedSigner, EVMTransactionInput, SolanaTransactionInput, Transaction, WalletArgsFor } from './wallets/types.cjs';
8
+ export { Balances, DelegatedSigner, EVMTransactionInput, Signature, SolanaTransactionInput, Transaction, WalletArgsFor } from './wallets/types.cjs';
9
9
  export { Chain, EVMChain, SolanaChain, StellarChain } from './chains/chains.cjs';
10
10
  export { EmailSignerConfig, ExternalWalletSignerConfigForChain, PhoneSignerConfig, SignerConfigForChain } from './signers/types.cjs';
11
11
  export { EvmExternalWalletSignerConfig, SolanaExternalWalletSignerConfig, StellarExternalWalletSignerConfig, createCrossmint } from '@crossmint/common-sdk-base';
package/dist/index.d.ts CHANGED
@@ -5,7 +5,7 @@ export { Wallet } from './wallets/wallet.js';
5
5
  export { SolanaWallet } from './wallets/solana.js';
6
6
  export { EVMWallet } from './wallets/evm.js';
7
7
  export { StellarWallet } from './wallets/stellar.js';
8
- export { Balances, DelegatedSigner, EVMTransactionInput, SolanaTransactionInput, Transaction, WalletArgsFor } from './wallets/types.js';
8
+ export { Balances, DelegatedSigner, EVMTransactionInput, Signature, SolanaTransactionInput, Transaction, WalletArgsFor } from './wallets/types.js';
9
9
  export { Chain, EVMChain, SolanaChain, StellarChain } from './chains/chains.js';
10
10
  export { EmailSignerConfig, ExternalWalletSignerConfigForChain, PhoneSignerConfig, SignerConfigForChain } from './signers/types.js';
11
11
  export { EvmExternalWalletSignerConfig, SolanaExternalWalletSignerConfig, StellarExternalWalletSignerConfig, createCrossmint } from '@crossmint/common-sdk-base';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{a as l}from"./chunk-FELK2MFW.js";import{a as r}from"./chunk-W2WX4ZV7.js";import{a as o}from"./chunk-CREQPQNW.js";import{a as n,b as t}from"./chunk-2W4KJEXY.js";import"./chunk-5Y3LP2YE.js";import"./chunk-BHGNJYYE.js";import{a}from"./chunk-4GVVQX7Y.js";import"./chunk-EWNW3TJA.js";import"./chunk-YDZRBHS3.js";import"./chunk-KPHNZJD7.js";import"./chunk-VPIAMNQU.js";import"./chunk-BK2D2D22.js";import"./chunk-VETSIYJQ.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-JMK64ITR.js";import"./chunk-WGFPSEE2.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import{a as e}from"./chunk-4Z7E6Y6H.js";import"./chunk-HYTMXCA5.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-RE7DBYTJ.js";import"./chunk-KKQBZXFE.js";import"./chunk-S3DYQVRD.js";import"./chunk-LW6JSI4J.js";import"./chunk-5S6YZJHE.js";import"./chunk-BW7YYVZE.js";export{t as CrossmintWallets,l as EVMWallet,r as SolanaWallet,o as StellarWallet,a as Wallet,e as WalletsApiClient,n as createCrossmint};
1
+ import{a as l}from"./chunk-U2ARQ77W.js";import{a as r}from"./chunk-4UAYO5YP.js";import{a as o}from"./chunk-DP2OIBTE.js";import{a as n,b as t}from"./chunk-S6OZIFNF.js";import"./chunk-7YKSVOKL.js";import"./chunk-BHGNJYYE.js";import{a}from"./chunk-UKJOEFGJ.js";import"./chunk-EWNW3TJA.js";import"./chunk-YDZRBHS3.js";import"./chunk-KPHNZJD7.js";import"./chunk-VPIAMNQU.js";import"./chunk-BK2D2D22.js";import"./chunk-VETSIYJQ.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-JMK64ITR.js";import"./chunk-WGFPSEE2.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import{a as e}from"./chunk-WGYPC2LD.js";import"./chunk-XSHBJCRE.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-RE7DBYTJ.js";import"./chunk-KKQBZXFE.js";import"./chunk-S3DYQVRD.js";import"./chunk-LW6JSI4J.js";import"./chunk-5S6YZJHE.js";import"./chunk-BW7YYVZE.js";export{t as CrossmintWallets,l as EVMWallet,r as SolanaWallet,o as StellarWallet,a as Wallet,e as WalletsApiClient,n as createCrossmint};
package/dist/sdk.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkYEA5ZSOHcjs = require('./chunk-YEA5ZSOH.cjs');require('./chunk-BXGEGPAH.cjs');require('./chunk-23BRREJG.cjs');require('./chunk-T73LYYKV.cjs');require('./chunk-NNWBKQGB.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-4GMYGJLU.cjs');require('./chunk-E2WBOL4Z.cjs');require('./chunk-MTZIGWOA.cjs');require('./chunk-FC7FFQOV.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-MY4MQMBK.cjs');require('./chunk-FAESMNDM.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');require('./chunk-GKN6YKBD.cjs');require('./chunk-GZ2SM6KF.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-BULGM35W.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkYEA5ZSOHcjs.b; exports.createCrossmint = _chunkYEA5ZSOHcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkH742IMQCcjs = require('./chunk-H742IMQC.cjs');require('./chunk-BDHUM4C3.cjs');require('./chunk-23BRREJG.cjs');require('./chunk-DEP6NMLX.cjs');require('./chunk-NNWBKQGB.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-4GMYGJLU.cjs');require('./chunk-E2WBOL4Z.cjs');require('./chunk-MTZIGWOA.cjs');require('./chunk-FC7FFQOV.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-MY4MQMBK.cjs');require('./chunk-FAESMNDM.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');require('./chunk-FYGTK45L.cjs');require('./chunk-VPLMZ4QW.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-BULGM35W.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkH742IMQCcjs.b; exports.createCrossmint = _chunkH742IMQCcjs.a;
package/dist/sdk.js CHANGED
@@ -1 +1 @@
1
- import{a,b}from"./chunk-2W4KJEXY.js";import"./chunk-5Y3LP2YE.js";import"./chunk-BHGNJYYE.js";import"./chunk-4GVVQX7Y.js";import"./chunk-EWNW3TJA.js";import"./chunk-YDZRBHS3.js";import"./chunk-KPHNZJD7.js";import"./chunk-VPIAMNQU.js";import"./chunk-BK2D2D22.js";import"./chunk-VETSIYJQ.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-JMK64ITR.js";import"./chunk-WGFPSEE2.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import"./chunk-4Z7E6Y6H.js";import"./chunk-HYTMXCA5.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-LW6JSI4J.js";import"./chunk-5S6YZJHE.js";import"./chunk-BW7YYVZE.js";export{b as CrossmintWallets,a as createCrossmint};
1
+ import{a,b}from"./chunk-S6OZIFNF.js";import"./chunk-7YKSVOKL.js";import"./chunk-BHGNJYYE.js";import"./chunk-UKJOEFGJ.js";import"./chunk-EWNW3TJA.js";import"./chunk-YDZRBHS3.js";import"./chunk-KPHNZJD7.js";import"./chunk-VPIAMNQU.js";import"./chunk-BK2D2D22.js";import"./chunk-VETSIYJQ.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-JMK64ITR.js";import"./chunk-WGFPSEE2.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import"./chunk-WGYPC2LD.js";import"./chunk-XSHBJCRE.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-LW6JSI4J.js";import"./chunk-5S6YZJHE.js";import"./chunk-BW7YYVZE.js";export{b as CrossmintWallets,a as createCrossmint};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkGZ2SM6KFcjs = require('../chunk-GZ2SM6KF.cjs');require('../chunk-XALFCQKD.cjs');exports.SDK_NAME = _chunkGZ2SM6KFcjs.c; exports.SDK_VERSION = _chunkGZ2SM6KFcjs.b; exports.STATUS_POLLING_INTERVAL_MS = _chunkGZ2SM6KFcjs.d; exports.WALLETS_SERVICE = _chunkGZ2SM6KFcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVPLMZ4QWcjs = require('../chunk-VPLMZ4QW.cjs');require('../chunk-XALFCQKD.cjs');exports.SDK_NAME = _chunkVPLMZ4QWcjs.c; exports.SDK_VERSION = _chunkVPLMZ4QWcjs.b; exports.STATUS_POLLING_INTERVAL_MS = _chunkVPLMZ4QWcjs.d; exports.WALLETS_SERVICE = _chunkVPLMZ4QWcjs.a;
@@ -1 +1 @@
1
- import{a,b,c,d}from"../chunk-HYTMXCA5.js";import"../chunk-BW7YYVZE.js";export{c as SDK_NAME,b as SDK_VERSION,d as STATUS_POLLING_INTERVAL_MS,a as WALLETS_SERVICE};
1
+ import{a,b,c,d}from"../chunk-XSHBJCRE.js";import"../chunk-BW7YYVZE.js";export{c as SDK_NAME,b as SDK_VERSION,d as STATUS_POLLING_INTERVAL_MS,a as WALLETS_SERVICE};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4AXQWKEWcjs = require('../chunk-4AXQWKEW.cjs');require('../chunk-T73LYYKV.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-LO5VLDH7.cjs');require('../chunk-IR5WN6FQ.cjs');require('../chunk-GEY574TH.cjs');require('../chunk-XALFCQKD.cjs');exports.EVMWallet = _chunk4AXQWKEWcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC54AWEW3cjs = require('../chunk-C54AWEW3.cjs');require('../chunk-DEP6NMLX.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-LO5VLDH7.cjs');require('../chunk-IR5WN6FQ.cjs');require('../chunk-GEY574TH.cjs');require('../chunk-XALFCQKD.cjs');exports.EVMWallet = _chunkC54AWEW3cjs.a;
@@ -1,9 +1,9 @@
1
1
  import * as viem__types_actions_siwe_verifySiweMessage from 'viem/_types/actions/siwe/verifySiweMessage';
2
2
  import * as viem from 'viem';
3
- import { TypedData, TypedDataDefinition, HttpTransport } from 'viem';
4
- import { EVMTransactionInput, Transaction } from './types.cjs';
5
- import { EVMChain, Chain, EVMSmartWalletChain } from '../chains/chains.cjs';
3
+ import { HttpTransport } from 'viem';
4
+ import { EVMTransactionInput, Transaction, PrepareOnly, SignMessageInput, Signature, SignTypedDataInput } from './types.cjs';
6
5
  import { Wallet } from './wallet.cjs';
6
+ import { EVMChain, Chain } from '../chains/chains.cjs';
7
7
  import '@solana/web3.js';
8
8
  import '@crossmint/client-sdk-window';
9
9
  import '@crossmint/client-signers';
@@ -18,13 +18,9 @@ import '../api/client.cjs';
18
18
  declare class EVMWallet extends Wallet<EVMChain> {
19
19
  constructor(wallet: Wallet<EVMChain>);
20
20
  static from(wallet: Wallet<Chain>): EVMWallet;
21
- sendTransaction<T extends EVMTransactionInput>(params: T): Promise<Transaction<T["options"] extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
24
- signMessage(message: string): Promise<string>;
25
- signTypedData<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(params: TypedDataDefinition<typedData, primaryType> & {
26
- chain: EVMSmartWalletChain;
27
- }): Promise<string>;
21
+ sendTransaction<T extends EVMTransactionInput>(params: T): Promise<Transaction<T["options"] extends PrepareOnly<true> ? true : false>>;
22
+ signMessage<T extends SignMessageInput>(params: T): Promise<Signature<T["options"] extends PrepareOnly<true> ? true : false>>;
23
+ signTypedData<T extends SignTypedDataInput>(params: T): Promise<Signature<T["options"] extends PrepareOnly<true> ? true : false>>;
28
24
  getViemClient(params?: {
29
25
  transport?: HttpTransport;
30
26
  }): {
@@ -1,9 +1,9 @@
1
1
  import * as viem__types_actions_siwe_verifySiweMessage from 'viem/_types/actions/siwe/verifySiweMessage';
2
2
  import * as viem from 'viem';
3
- import { TypedData, TypedDataDefinition, HttpTransport } from 'viem';
4
- import { EVMTransactionInput, Transaction } from './types.js';
5
- import { EVMChain, Chain, EVMSmartWalletChain } from '../chains/chains.js';
3
+ import { HttpTransport } from 'viem';
4
+ import { EVMTransactionInput, Transaction, PrepareOnly, SignMessageInput, Signature, SignTypedDataInput } from './types.js';
6
5
  import { Wallet } from './wallet.js';
6
+ import { EVMChain, Chain } from '../chains/chains.js';
7
7
  import '@solana/web3.js';
8
8
  import '@crossmint/client-sdk-window';
9
9
  import '@crossmint/client-signers';
@@ -18,13 +18,9 @@ import '../api/client.js';
18
18
  declare class EVMWallet extends Wallet<EVMChain> {
19
19
  constructor(wallet: Wallet<EVMChain>);
20
20
  static from(wallet: Wallet<Chain>): EVMWallet;
21
- sendTransaction<T extends EVMTransactionInput>(params: T): Promise<Transaction<T["options"] extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
24
- signMessage(message: string): Promise<string>;
25
- signTypedData<const typedData extends TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(params: TypedDataDefinition<typedData, primaryType> & {
26
- chain: EVMSmartWalletChain;
27
- }): Promise<string>;
21
+ sendTransaction<T extends EVMTransactionInput>(params: T): Promise<Transaction<T["options"] extends PrepareOnly<true> ? true : false>>;
22
+ signMessage<T extends SignMessageInput>(params: T): Promise<Signature<T["options"] extends PrepareOnly<true> ? true : false>>;
23
+ signTypedData<T extends SignTypedDataInput>(params: T): Promise<Signature<T["options"] extends PrepareOnly<true> ? true : false>>;
28
24
  getViemClient(params?: {
29
25
  transport?: HttpTransport;
30
26
  }): {
@@ -1 +1 @@
1
- import{a}from"../chunk-FELK2MFW.js";import"../chunk-4GVVQX7Y.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-RE7DBYTJ.js";import"../chunk-KKQBZXFE.js";import"../chunk-S3DYQVRD.js";import"../chunk-BW7YYVZE.js";export{a as EVMWallet};
1
+ import{a}from"../chunk-U2ARQ77W.js";import"../chunk-UKJOEFGJ.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-RE7DBYTJ.js";import"../chunk-KKQBZXFE.js";import"../chunk-S3DYQVRD.js";import"../chunk-BW7YYVZE.js";export{a as EVMWallet};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXAYHPFSEcjs = require('../chunk-XAYHPFSE.cjs');require('../chunk-T73LYYKV.cjs');require('../chunk-MY4MQMBK.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.SolanaWallet = _chunkXAYHPFSEcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBWF3A2OOcjs = require('../chunk-BWF3A2OO.cjs');require('../chunk-DEP6NMLX.cjs');require('../chunk-MY4MQMBK.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.SolanaWallet = _chunkBWF3A2OOcjs.a;
@@ -1,5 +1,5 @@
1
1
  import { SolanaChain, Chain } from '../chains/chains.cjs';
2
- import { TransactionInputOptions, SolanaTransactionInput, Transaction } from './types.cjs';
2
+ import { TransactionInputOptions, SolanaTransactionInput, Transaction, PrepareOnly } from './types.cjs';
3
3
  import { Wallet } from './wallet.cjs';
4
4
  import 'viem';
5
5
  import '@solana/web3.js';
@@ -18,9 +18,7 @@ declare class SolanaWallet extends Wallet<SolanaChain> {
18
18
  static from(wallet: Wallet<Chain>): SolanaWallet;
19
19
  sendTransaction<T extends TransactionInputOptions | undefined = undefined>(params: SolanaTransactionInput & {
20
20
  options?: T;
21
- }): Promise<Transaction<T extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
21
+ }): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
24
22
  private createTransaction;
25
23
  }
26
24
 
@@ -1,5 +1,5 @@
1
1
  import { SolanaChain, Chain } from '../chains/chains.js';
2
- import { TransactionInputOptions, SolanaTransactionInput, Transaction } from './types.js';
2
+ import { TransactionInputOptions, SolanaTransactionInput, Transaction, PrepareOnly } from './types.js';
3
3
  import { Wallet } from './wallet.js';
4
4
  import 'viem';
5
5
  import '@solana/web3.js';
@@ -18,9 +18,7 @@ declare class SolanaWallet extends Wallet<SolanaChain> {
18
18
  static from(wallet: Wallet<Chain>): SolanaWallet;
19
19
  sendTransaction<T extends TransactionInputOptions | undefined = undefined>(params: SolanaTransactionInput & {
20
20
  options?: T;
21
- }): Promise<Transaction<T extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
21
+ }): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
24
22
  private createTransaction;
25
23
  }
26
24
 
@@ -1 +1 @@
1
- import{a}from"../chunk-W2WX4ZV7.js";import"../chunk-4GVVQX7Y.js";import"../chunk-JMK64ITR.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as SolanaWallet};
1
+ import{a}from"../chunk-4UAYO5YP.js";import"../chunk-UKJOEFGJ.js";import"../chunk-JMK64ITR.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as SolanaWallet};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkA3FFXMFPcjs = require('../chunk-A3FFXMFP.cjs');require('../chunk-T73LYYKV.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.StellarWallet = _chunkA3FFXMFPcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk5L6RZBMZcjs = require('../chunk-5L6RZBMZ.cjs');require('../chunk-DEP6NMLX.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.StellarWallet = _chunk5L6RZBMZcjs.a;
@@ -1,5 +1,5 @@
1
1
  import { StellarChain, Chain } from '../chains/chains.cjs';
2
- import { TransactionInputOptions, StellarTransactionInput, Transaction } from './types.cjs';
2
+ import { TransactionInputOptions, StellarTransactionInput, Transaction, PrepareOnly } from './types.cjs';
3
3
  import { Wallet } from './wallet.cjs';
4
4
  import 'viem';
5
5
  import '@solana/web3.js';
@@ -18,9 +18,7 @@ declare class StellarWallet extends Wallet<StellarChain> {
18
18
  static from(wallet: Wallet<Chain>): StellarWallet;
19
19
  sendTransaction<T extends TransactionInputOptions | undefined = undefined>(params: StellarTransactionInput & {
20
20
  options?: T;
21
- }): Promise<Transaction<T extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
21
+ }): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
24
22
  private createTransaction;
25
23
  }
26
24
 
@@ -1,5 +1,5 @@
1
1
  import { StellarChain, Chain } from '../chains/chains.js';
2
- import { TransactionInputOptions, StellarTransactionInput, Transaction } from './types.js';
2
+ import { TransactionInputOptions, StellarTransactionInput, Transaction, PrepareOnly } from './types.js';
3
3
  import { Wallet } from './wallet.js';
4
4
  import 'viem';
5
5
  import '@solana/web3.js';
@@ -18,9 +18,7 @@ declare class StellarWallet extends Wallet<StellarChain> {
18
18
  static from(wallet: Wallet<Chain>): StellarWallet;
19
19
  sendTransaction<T extends TransactionInputOptions | undefined = undefined>(params: StellarTransactionInput & {
20
20
  options?: T;
21
- }): Promise<Transaction<T extends {
22
- experimental_prepareOnly: true;
23
- } ? true : false>>;
21
+ }): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
24
22
  private createTransaction;
25
23
  }
26
24
 
@@ -1 +1 @@
1
- import{a}from"../chunk-CREQPQNW.js";import"../chunk-4GVVQX7Y.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as StellarWallet};
1
+ import{a}from"../chunk-DP2OIBTE.js";import"../chunk-UKJOEFGJ.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as StellarWallet};
@@ -1,20 +1,36 @@
1
1
  import { VersionedTransaction, Keypair } from '@solana/web3.js';
2
2
  import { HandshakeParent } from '@crossmint/client-sdk-window';
3
3
  import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
4
+ import { TypedDataDefinition, TypedData } from 'viem';
4
5
  import { Abi } from 'abitype';
5
6
  import { CreateTransactionSuccessResponse } from '../api/types.cjs';
6
7
  export { Activity } from '../api/types.cjs';
7
- import { Chain } from '../chains/chains.cjs';
8
+ import { Chain, EVMSmartWalletChain } from '../chains/chains.cjs';
8
9
  import { SignerConfigForChain, BaseSignResult, PasskeySignResult, Signer } from '../signers/types.cjs';
9
- import 'viem';
10
10
  import '../api/gen/types.gen.cjs';
11
11
  import 'ox';
12
12
  import '@crossmint/common-sdk-base';
13
13
 
14
- type TransactionInputOptions = {
15
- experimental_prepareOnly?: boolean;
14
+ type PrepareOnly<T extends boolean = boolean> = {
15
+ experimental_prepareOnly: T;
16
+ };
17
+ type TransactionInputOptions = PrepareOnly & {
16
18
  experimental_signer?: string;
17
19
  };
20
+ type SignatureInputOptions = PrepareOnly;
21
+ type SignMessageInput = {
22
+ message: string;
23
+ options?: SignatureInputOptions;
24
+ };
25
+ type SignTypedDataInput = TypedDataDefinition<TypedData, string> & {
26
+ chain: EVMSmartWalletChain;
27
+ options?: SignatureInputOptions;
28
+ };
29
+ type ApproveResult<T extends ApproveParams> = T extends {
30
+ transactionId: string;
31
+ } ? Transaction<false> : T extends {
32
+ signatureId: string;
33
+ } ? Signature<false> : Error;
18
34
  type EVMTransactionInputBase = {
19
35
  options?: TransactionInputOptions;
20
36
  };
@@ -98,6 +114,13 @@ type Transaction<TPrepareOnly extends boolean = false> = TPrepareOnly extends tr
98
114
  explorerLink: string;
99
115
  transactionId: string;
100
116
  };
117
+ type Signature<TPrepareOnly extends boolean = false> = TPrepareOnly extends true ? {
118
+ signature?: string;
119
+ signatureId: string;
120
+ } : {
121
+ signature: string;
122
+ signatureId: string;
123
+ };
101
124
  type ApproveOptions = {
102
125
  experimental_approval?: Approval;
103
126
  additionalSigners?: Signer[];
@@ -111,4 +134,4 @@ type Approval = (BaseSignResult | PasskeySignResult) & {
111
134
  signer: string;
112
135
  };
113
136
 
114
- export type { Approval, ApproveOptions, ApproveParams, Balances, Callbacks, DelegatedSigner, EVMTransactionInput, FormattedEVMTransaction, PendingApproval, SolanaTransactionInput, StellarTransactionInput, TokenBalance, Transaction, TransactionInputOptions, UserLocator, WalletArgsFor, WalletOptions };
137
+ export type { Approval, ApproveOptions, ApproveParams, ApproveResult, Balances, Callbacks, DelegatedSigner, EVMTransactionInput, FormattedEVMTransaction, PendingApproval, PrepareOnly, SignMessageInput, SignTypedDataInput, Signature, SignatureInputOptions, SolanaTransactionInput, StellarTransactionInput, TokenBalance, Transaction, TransactionInputOptions, UserLocator, WalletArgsFor, WalletOptions };
@@ -1,20 +1,36 @@
1
1
  import { VersionedTransaction, Keypair } from '@solana/web3.js';
2
2
  import { HandshakeParent } from '@crossmint/client-sdk-window';
3
3
  import { signerOutboundEvents, signerInboundEvents } from '@crossmint/client-signers';
4
+ import { TypedDataDefinition, TypedData } from 'viem';
4
5
  import { Abi } from 'abitype';
5
6
  import { CreateTransactionSuccessResponse } from '../api/types.js';
6
7
  export { Activity } from '../api/types.js';
7
- import { Chain } from '../chains/chains.js';
8
+ import { Chain, EVMSmartWalletChain } from '../chains/chains.js';
8
9
  import { SignerConfigForChain, BaseSignResult, PasskeySignResult, Signer } from '../signers/types.js';
9
- import 'viem';
10
10
  import '../api/gen/types.gen.js';
11
11
  import 'ox';
12
12
  import '@crossmint/common-sdk-base';
13
13
 
14
- type TransactionInputOptions = {
15
- experimental_prepareOnly?: boolean;
14
+ type PrepareOnly<T extends boolean = boolean> = {
15
+ experimental_prepareOnly: T;
16
+ };
17
+ type TransactionInputOptions = PrepareOnly & {
16
18
  experimental_signer?: string;
17
19
  };
20
+ type SignatureInputOptions = PrepareOnly;
21
+ type SignMessageInput = {
22
+ message: string;
23
+ options?: SignatureInputOptions;
24
+ };
25
+ type SignTypedDataInput = TypedDataDefinition<TypedData, string> & {
26
+ chain: EVMSmartWalletChain;
27
+ options?: SignatureInputOptions;
28
+ };
29
+ type ApproveResult<T extends ApproveParams> = T extends {
30
+ transactionId: string;
31
+ } ? Transaction<false> : T extends {
32
+ signatureId: string;
33
+ } ? Signature<false> : Error;
18
34
  type EVMTransactionInputBase = {
19
35
  options?: TransactionInputOptions;
20
36
  };
@@ -98,6 +114,13 @@ type Transaction<TPrepareOnly extends boolean = false> = TPrepareOnly extends tr
98
114
  explorerLink: string;
99
115
  transactionId: string;
100
116
  };
117
+ type Signature<TPrepareOnly extends boolean = false> = TPrepareOnly extends true ? {
118
+ signature?: string;
119
+ signatureId: string;
120
+ } : {
121
+ signature: string;
122
+ signatureId: string;
123
+ };
101
124
  type ApproveOptions = {
102
125
  experimental_approval?: Approval;
103
126
  additionalSigners?: Signer[];
@@ -111,4 +134,4 @@ type Approval = (BaseSignResult | PasskeySignResult) & {
111
134
  signer: string;
112
135
  };
113
136
 
114
- export type { Approval, ApproveOptions, ApproveParams, Balances, Callbacks, DelegatedSigner, EVMTransactionInput, FormattedEVMTransaction, PendingApproval, SolanaTransactionInput, StellarTransactionInput, TokenBalance, Transaction, TransactionInputOptions, UserLocator, WalletArgsFor, WalletOptions };
137
+ export type { Approval, ApproveOptions, ApproveParams, ApproveResult, Balances, Callbacks, DelegatedSigner, EVMTransactionInput, FormattedEVMTransaction, PendingApproval, PrepareOnly, SignMessageInput, SignTypedDataInput, Signature, SignatureInputOptions, SolanaTransactionInput, StellarTransactionInput, TokenBalance, Transaction, TransactionInputOptions, UserLocator, WalletArgsFor, WalletOptions };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBXGEGPAHcjs = require('../chunk-BXGEGPAH.cjs');require('../chunk-23BRREJG.cjs');require('../chunk-T73LYYKV.cjs');require('../chunk-NNWBKQGB.cjs');require('../chunk-PO6S7UR3.cjs');require('../chunk-4GMYGJLU.cjs');require('../chunk-E2WBOL4Z.cjs');require('../chunk-MTZIGWOA.cjs');require('../chunk-FC7FFQOV.cjs');require('../chunk-MQP5VZCA.cjs');require('../chunk-YWPTI2QO.cjs');require('../chunk-4KXOWU5E.cjs');require('../chunk-MY4MQMBK.cjs');require('../chunk-FAESMNDM.cjs');require('../chunk-ZSWIQU3U.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-YZ4HRYSL.cjs');require('../chunk-BULGM35W.cjs');require('../chunk-XALFCQKD.cjs');exports.WalletFactory = _chunkBXGEGPAHcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkBDHUM4C3cjs = require('../chunk-BDHUM4C3.cjs');require('../chunk-23BRREJG.cjs');require('../chunk-DEP6NMLX.cjs');require('../chunk-NNWBKQGB.cjs');require('../chunk-PO6S7UR3.cjs');require('../chunk-4GMYGJLU.cjs');require('../chunk-E2WBOL4Z.cjs');require('../chunk-MTZIGWOA.cjs');require('../chunk-FC7FFQOV.cjs');require('../chunk-MQP5VZCA.cjs');require('../chunk-YWPTI2QO.cjs');require('../chunk-4KXOWU5E.cjs');require('../chunk-MY4MQMBK.cjs');require('../chunk-FAESMNDM.cjs');require('../chunk-ZSWIQU3U.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-YZ4HRYSL.cjs');require('../chunk-BULGM35W.cjs');require('../chunk-XALFCQKD.cjs');exports.WalletFactory = _chunkBDHUM4C3cjs.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-5Y3LP2YE.js";import"../chunk-BHGNJYYE.js";import"../chunk-4GVVQX7Y.js";import"../chunk-EWNW3TJA.js";import"../chunk-YDZRBHS3.js";import"../chunk-KPHNZJD7.js";import"../chunk-VPIAMNQU.js";import"../chunk-BK2D2D22.js";import"../chunk-VETSIYJQ.js";import"../chunk-JUSY5XEE.js";import"../chunk-UBOWSXW3.js";import"../chunk-IGBQEAD5.js";import"../chunk-JMK64ITR.js";import"../chunk-WGFPSEE2.js";import"../chunk-M4ELAV7U.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-LW6JSI4J.js";import"../chunk-5S6YZJHE.js";import"../chunk-BW7YYVZE.js";export{a as WalletFactory};
1
+ import{a}from"../chunk-7YKSVOKL.js";import"../chunk-BHGNJYYE.js";import"../chunk-UKJOEFGJ.js";import"../chunk-EWNW3TJA.js";import"../chunk-YDZRBHS3.js";import"../chunk-KPHNZJD7.js";import"../chunk-VPIAMNQU.js";import"../chunk-BK2D2D22.js";import"../chunk-VETSIYJQ.js";import"../chunk-JUSY5XEE.js";import"../chunk-UBOWSXW3.js";import"../chunk-IGBQEAD5.js";import"../chunk-JMK64ITR.js";import"../chunk-WGFPSEE2.js";import"../chunk-M4ELAV7U.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-LW6JSI4J.js";import"../chunk-5S6YZJHE.js";import"../chunk-BW7YYVZE.js";export{a as WalletFactory};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkT73LYYKVcjs = require('../chunk-T73LYYKV.cjs');require('../chunk-GZ2SM6KF.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.Wallet = _chunkT73LYYKVcjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkDEP6NMLXcjs = require('../chunk-DEP6NMLX.cjs');require('../chunk-VPLMZ4QW.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.Wallet = _chunkDEP6NMLXcjs.a;
@@ -1,7 +1,7 @@
1
1
  import { ApiClient } from '../api/client.cjs';
2
2
  import { GetTransactionsResponse, GetTransactionSuccessResponse, Activity, RegisterSignerPasskeyParams, WalletLocator, ApproveSignatureResponse } from '../api/types.cjs';
3
3
  import { WalletNftsResponseDto, WalletsTransactionV2025ResponseDto } from '../api/gen/types.gen.cjs';
4
- import { WalletOptions, Balances, TransactionInputOptions, UserLocator, Transaction, ApproveParams, DelegatedSigner, ApproveOptions } from './types.cjs';
4
+ import { WalletOptions, Balances, TransactionInputOptions, UserLocator, Transaction, PrepareOnly, ApproveParams, ApproveResult, DelegatedSigner, ApproveOptions, Signature } from './types.cjs';
5
5
  import { Chain } from '../chains/chains.cjs';
6
6
  import { Signer } from '../signers/types.cjs';
7
7
  import '@crossmint/common-sdk-base';
@@ -89,9 +89,7 @@ declare class Wallet<C extends Chain> {
89
89
  * @param {TransactionInputOptions} options - The options for the transaction
90
90
  * @returns {Transaction} The transaction
91
91
  */
92
- send<T extends TransactionInputOptions | undefined = undefined>(to: string | UserLocator, token: string, amount: string, options?: T): Promise<Transaction<T extends {
93
- experimental_prepareOnly: true;
94
- } ? true : false>>;
92
+ send<T extends TransactionInputOptions | undefined = undefined>(to: string | UserLocator, token: string, amount: string, options?: T): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
95
93
  /**
96
94
  * @deprecated Use `approve` instead.
97
95
  * Approve a transaction
@@ -102,26 +100,18 @@ declare class Wallet<C extends Chain> {
102
100
  * @param params.options.additionalSigners - The additional signers
103
101
  * @returns The transaction
104
102
  */
105
- approveTransaction(params: ApproveParams): Promise<string | {
106
- hash: string;
107
- explorerLink: string;
108
- transactionId: string;
109
- }>;
103
+ approveTransaction(params: ApproveParams): Promise<Error>;
110
104
  /**
111
- * Approve a transaction
105
+ * Approve a transaction or signature
112
106
  * @param params - The parameters
113
- * @param params.transactionId - The transaction id
107
+ * @param params.transactionId - The transaction id or
114
108
  * @param params.signatureId - The signature id
115
109
  * @param params.options - The options for the transaction
116
110
  * @param params.options.experimental_approval - The approval
117
111
  * @param params.options.additionalSigners - The additional signers
118
- * @returns The transaction
112
+ * @returns The transaction or signature
119
113
  */
120
- approve(params: ApproveParams): Promise<string | {
121
- hash: string;
122
- explorerLink: string;
123
- transactionId: string;
124
- }>;
114
+ approve<T extends ApproveParams>(params: T): Promise<ApproveResult<T>>;
125
115
  /**
126
116
  * Add a delegated signer to the wallet
127
117
  * @param signer - The signer. For Solana, it must be a string. For EVM, it can be a string or a passkey.
@@ -137,17 +127,20 @@ declare class Wallet<C extends Chain> {
137
127
  explorerLink: string;
138
128
  transactionId: string;
139
129
  }>;
140
- protected approveSignatureAndWait(signatureId: string, options?: ApproveOptions): Promise<string>;
130
+ protected approveSignatureAndWait(signatureId: string, options?: ApproveOptions): Promise<{
131
+ signature: string;
132
+ signatureId: string;
133
+ }>;
141
134
  protected approveSignatureInternal(signatureId: string, options?: ApproveOptions): Promise<ApproveSignatureResponse>;
142
135
  protected approveTransactionInternal(transactionId: string, options?: ApproveOptions): Promise<WalletsTransactionV2025ResponseDto>;
143
136
  private executeApproveTransactionWithErrorHandling;
144
137
  private executeApproveSignatureWithErrorHandling;
145
- protected waitForSignature(signatureId: string): Promise<string>;
138
+ protected waitForSignature(signatureId: string): Promise<Signature<false>>;
146
139
  protected waitForTransaction(transactionId: string, timeoutMs?: number, { backoffMultiplier, maxBackoffMs, initialBackoffMs, }?: {
147
140
  initialBackoffMs?: number;
148
141
  backoffMultiplier?: number;
149
142
  maxBackoffMs?: number;
150
- }): Promise<Transaction>;
143
+ }): Promise<Transaction<false>>;
151
144
  protected sleep(ms: number): Promise<unknown>;
152
145
  }
153
146
 
@@ -1,7 +1,7 @@
1
1
  import { ApiClient } from '../api/client.js';
2
2
  import { GetTransactionsResponse, GetTransactionSuccessResponse, Activity, RegisterSignerPasskeyParams, WalletLocator, ApproveSignatureResponse } from '../api/types.js';
3
3
  import { WalletNftsResponseDto, WalletsTransactionV2025ResponseDto } from '../api/gen/types.gen.js';
4
- import { WalletOptions, Balances, TransactionInputOptions, UserLocator, Transaction, ApproveParams, DelegatedSigner, ApproveOptions } from './types.js';
4
+ import { WalletOptions, Balances, TransactionInputOptions, UserLocator, Transaction, PrepareOnly, ApproveParams, ApproveResult, DelegatedSigner, ApproveOptions, Signature } from './types.js';
5
5
  import { Chain } from '../chains/chains.js';
6
6
  import { Signer } from '../signers/types.js';
7
7
  import '@crossmint/common-sdk-base';
@@ -89,9 +89,7 @@ declare class Wallet<C extends Chain> {
89
89
  * @param {TransactionInputOptions} options - The options for the transaction
90
90
  * @returns {Transaction} The transaction
91
91
  */
92
- send<T extends TransactionInputOptions | undefined = undefined>(to: string | UserLocator, token: string, amount: string, options?: T): Promise<Transaction<T extends {
93
- experimental_prepareOnly: true;
94
- } ? true : false>>;
92
+ send<T extends TransactionInputOptions | undefined = undefined>(to: string | UserLocator, token: string, amount: string, options?: T): Promise<Transaction<T extends PrepareOnly<true> ? true : false>>;
95
93
  /**
96
94
  * @deprecated Use `approve` instead.
97
95
  * Approve a transaction
@@ -102,26 +100,18 @@ declare class Wallet<C extends Chain> {
102
100
  * @param params.options.additionalSigners - The additional signers
103
101
  * @returns The transaction
104
102
  */
105
- approveTransaction(params: ApproveParams): Promise<string | {
106
- hash: string;
107
- explorerLink: string;
108
- transactionId: string;
109
- }>;
103
+ approveTransaction(params: ApproveParams): Promise<Error>;
110
104
  /**
111
- * Approve a transaction
105
+ * Approve a transaction or signature
112
106
  * @param params - The parameters
113
- * @param params.transactionId - The transaction id
107
+ * @param params.transactionId - The transaction id or
114
108
  * @param params.signatureId - The signature id
115
109
  * @param params.options - The options for the transaction
116
110
  * @param params.options.experimental_approval - The approval
117
111
  * @param params.options.additionalSigners - The additional signers
118
- * @returns The transaction
112
+ * @returns The transaction or signature
119
113
  */
120
- approve(params: ApproveParams): Promise<string | {
121
- hash: string;
122
- explorerLink: string;
123
- transactionId: string;
124
- }>;
114
+ approve<T extends ApproveParams>(params: T): Promise<ApproveResult<T>>;
125
115
  /**
126
116
  * Add a delegated signer to the wallet
127
117
  * @param signer - The signer. For Solana, it must be a string. For EVM, it can be a string or a passkey.
@@ -137,17 +127,20 @@ declare class Wallet<C extends Chain> {
137
127
  explorerLink: string;
138
128
  transactionId: string;
139
129
  }>;
140
- protected approveSignatureAndWait(signatureId: string, options?: ApproveOptions): Promise<string>;
130
+ protected approveSignatureAndWait(signatureId: string, options?: ApproveOptions): Promise<{
131
+ signature: string;
132
+ signatureId: string;
133
+ }>;
141
134
  protected approveSignatureInternal(signatureId: string, options?: ApproveOptions): Promise<ApproveSignatureResponse>;
142
135
  protected approveTransactionInternal(transactionId: string, options?: ApproveOptions): Promise<WalletsTransactionV2025ResponseDto>;
143
136
  private executeApproveTransactionWithErrorHandling;
144
137
  private executeApproveSignatureWithErrorHandling;
145
- protected waitForSignature(signatureId: string): Promise<string>;
138
+ protected waitForSignature(signatureId: string): Promise<Signature<false>>;
146
139
  protected waitForTransaction(transactionId: string, timeoutMs?: number, { backoffMultiplier, maxBackoffMs, initialBackoffMs, }?: {
147
140
  initialBackoffMs?: number;
148
141
  backoffMultiplier?: number;
149
142
  maxBackoffMs?: number;
150
- }): Promise<Transaction>;
143
+ }): Promise<Transaction<false>>;
151
144
  protected sleep(ms: number): Promise<unknown>;
152
145
  }
153
146
 
@@ -1 +1 @@
1
- import{a}from"../chunk-4GVVQX7Y.js";import"../chunk-HYTMXCA5.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as Wallet};
1
+ import{a}from"../chunk-UKJOEFGJ.js";import"../chunk-XSHBJCRE.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as Wallet};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@crossmint/wallets-sdk",
3
- "version": "0.11.4",
3
+ "version": "0.11.5",
4
4
  "repository": "https://github.com/Crossmint/crossmint-sdk",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Paella Labs Inc",
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkT73LYYKVcjs = require('./chunk-T73LYYKV.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkLO5VLDH7cjs = require('./chunk-LO5VLDH7.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _viem = require('viem');var _commonsdkbase = require('@crossmint/common-sdk-base');var m=class f extends _chunkT73LYYKVcjs.a{constructor(t){super({chain:t.chain,address:t.address,owner:t.owner,signer:t.signer,options:_chunkT73LYYKVcjs.a.getOptions(t)},_chunkT73LYYKVcjs.a.getApiClient(t))}static from(t){if(!_commonsdkbase.isValidEvmAddress.call(void 0, t.address))throw new Error("Wallet is not an EVM wallet");return new f(t)}sendTransaction(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var a;let n=this.buildTransaction(t),e=yield this.createTransaction(n,t.options);return(a=t.options)!=null&&a.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:e.id}:yield this.approveTransactionAndWait(e.id)})}signMessage(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let n=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:t,signer:this.signer.locator(),chain:this.chain}});if("error"in n)throw new (0, _chunkO4FVTK7Xcjs.o)(JSON.stringify(n));return yield this.approveSignatureAndWait(n.id)})}signTypedData(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let{domain:n,message:e,primaryType:a,types:i,chain:r}=t;if(!n||!e||!i||!r)throw new (0, _chunkO4FVTK7Xcjs.k)("Invalid typed data");let{name:u,version:l,chainId:h,verifyingContract:y,salt:w}=n;if(!u||!l||!h||!y)throw new (0, _chunkO4FVTK7Xcjs.k)("Invalid typed data domain");let c=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:u,version:l,chainId:Number(h),verifyingContract:y,salt:w},message:e,primaryType:a,types:i},signer:this.signer.locator(),chain:r,isSmartWalletSignature:!1}});if("error"in c)throw new (0, _chunkO4FVTK7Xcjs.o)(JSON.stringify(c));return yield this.approveSignatureAndWait(c.id)})}getViemClient(t){var n;return _viem.createPublicClient.call(void 0, {transport:(n=t==null?void 0:t.transport)!=null?n:_viem.http.call(void 0, ),chain:_chunkLO5VLDH7cjs.a.call(void 0, this.chain)})}createTransaction(t,n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i;let e=(i=n==null?void 0:n.experimental_signer)!=null?i:this.signer.locator(),a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:e,chain:this.chain,calls:[t]}});if("error"in a)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(a));return a})}buildTransaction(t){var n,e,a,i,r;if("transaction"in t)return{transaction:t.transaction};if(t.abi==null)return{to:t.to,value:(e=(n=t.value)==null?void 0:n.toString())!=null?e:"0",data:(a=t.data)!=null?a:"0x"};if(!t.functionName)throw new Error("Function name is required");return{to:t.to,value:(r=(i=t.value)==null?void 0:i.toString())!=null?r:"0",data:_viem.encodeFunctionData.call(void 0, {abi:t.abi,functionName:t.functionName,args:t.args})}}};exports.a = m;
@@ -1 +0,0 @@
1
- import{d as O}from"./chunk-HYTMXCA5.js";import{c as W,d as N,i as E,m as P,p as b,q as _,r as $,s as L,t as I,u as F,v as B,w as J,x as R}from"./chunk-PSXRNSOE.js";import{a as T,b as A,c as p,d as x,e as C,f as o}from"./chunk-BW7YYVZE.js";import{isValidAddress as k}from"@crossmint/common-sdk-base";var f,l,G=class{constructor(r,t){x(this,f);x(this,l);let{chain:e,address:n,owner:s,signer:g,options:d}=r;C(this,l,t),this.chain=e,this.address=n,this.owner=s,this.signer=g,C(this,f,d)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return p(this,l)}get options(){return p(this,f)}experimental_apiClient(){return p(this,l)}balances(r,t){return o(this,null,function*(){let e;switch(this.chain){case"solana":e="sol";break;case"stellar":e="xlm";break;default:e="eth";break}let n=[e,"usdc",...r!=null?r:[]],s=yield p(this,l).getBalance(this.address,{chains:t!=null?t:[this.chain],tokens:n.map(g=>g.toLowerCase())});if("error"in s)throw new Error(`Failed to get balances for wallet: ${JSON.stringify(s.message)}`);return this.transformBalanceResponse(s,e,r)})}transformBalanceResponse(r,t,e){let n=a=>{var m,w,v,y,S;let c=(m=a.chains)==null?void 0:m[this.chain],h="contractAddress"in c?c.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.symbol)!=null?v:"",amount:(y=a.amount)!=null?y:"0",contractAddress:h,decimals:a.decimals,rawAmount:(S=a.rawAmount)!=null?S:"0"}},s=r.find(a=>a.symbol===t),g=r.find(a=>a.symbol==="usdc"),d=r.filter(a=>{var c;return a.symbol!==t&&a.symbol!=="usdc"&&(e==null?void 0:e.includes((c=a.symbol)!=null?c:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(t),usdc:g!=null?n(g):i("usdc"),tokens:d.map(n)}}experimental_nfts(r){return o(this,null,function*(){return yield p(this,l).experimental_getNfts(A(T({},r),{chain:this.chain,address:this.address}))})}experimental_transactions(){return o(this,null,function*(){let r=yield p(this,l).getTransactions(this.walletLocator);if("error"in r)throw new Error(`Failed to get transactions: ${JSON.stringify(r.message)}`);return r})}experimental_transaction(r){return o(this,null,function*(){let t=yield p(this,l).getTransaction(this.walletLocator,r);if("error"in t)throw new Error(`Failed to get transaction: ${JSON.stringify(t.error)}`);return t})}experimental_activity(){return o(this,null,function*(){let r=yield this.apiClient.experimental_activity(this.walletLocator,{chain:this.chain});if("error"in r)throw new Error(`Failed to get activity: ${JSON.stringify(r.message)}`);return r})}send(r,t,e,n){return o(this,null,function*(){let s=H(r),g=M(t,this.chain),d={recipient:s,amount:e},i=yield p(this,l).send(this.walletLocator,g,d);if("message"in i)throw new $(`Failed to send token: ${JSON.stringify(i.message)}`);return n!=null&&n.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:i.id}:yield this.approveTransactionAndWait(i.id)})}approveTransaction(r){return o(this,null,function*(){return console.warn("approveTransaction is deprecated. Use approve instead. This method will be removed in the next major version."),yield this.approve(r)})}approve(r){return o(this,null,function*(){if(r.transactionId!=null)return yield this.approveTransactionAndWait(r.transactionId,r.options);if(r.signatureId!=null)return yield this.approveSignatureAndWait(r.signatureId,r.options);throw new Error("Either transactionId or signatureId must be provided")})}addDelegatedSigner(r){return o(this,null,function*(){var e;let t=yield p(this,l).registerSigner(this.walletLocator,{signer:r.signer,chain:this.chain==="solana"||this.chain==="stellar"?void 0:this.chain});if("error"in t)throw new Error(`Failed to register signer: ${JSON.stringify(t.message)}`);if("transaction"in t){let n=t.transaction.id;yield this.approveTransactionAndWait(n)}else{let n=(e=t.chains)==null?void 0:e[this.chain];if((n==null?void 0:n.status)==="awaiting-approval"){yield this.approveSignatureAndWait(n.id);return}if((n==null?void 0:n.status)==="pending"){yield this.waitForSignature(n.id);return}}})}delegatedSigners(){return o(this,null,function*(){var t,e,n;let r=yield p(this,l).getWallet(this.walletLocator);if("error"in r)throw new N(JSON.stringify(r));if(this.chain==="stellar")return[];if(r.type!=="smart"||r.chainType!=="evm"&&r.chainType!=="solana")throw new W(`Wallet type ${r.type} not supported`);return(n=(e=(t=r==null?void 0:r.config)==null?void 0:t.delegatedSigners)==null?void 0:e.map(s=>{let g=s.locator.indexOf(":");return{signer:`external-wallet:${g>=0?s.locator.slice(g+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return p(this,l).isServerSide?this.address:this.chain==="stellar"?"me:stellar:smart":this.chain==="solana"?"me:solana:smart":"me:evm:smart"}get isSolanaWallet(){return this.chain==="solana"}approveTransactionAndWait(r,t){return o(this,null,function*(){return yield this.approveTransactionInternal(r,t),yield this.sleep(1e3),yield this.waitForTransaction(r)})}approveSignatureAndWait(r,t){return o(this,null,function*(){return yield this.approveSignatureInternal(r,t),yield this.sleep(1e3),yield this.waitForSignature(r)})}approveSignatureInternal(r,t){return o(this,null,function*(){var i,a;if(this.isSolanaWallet)throw new Error("Approving signatures is only supported for EVM smart wallets");let e=yield p(this,l).getSignature(this.walletLocator,r);if("error"in e)throw new b(JSON.stringify(e));if(this.signer.type==="api-key")return e;if((t==null?void 0:t.experimental_approval)!=null){let c=[t.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,c)}let n=(i=e.approvals)==null?void 0:i.pending;if(n==null)return e;let s=[...(a=t==null?void 0:t.additionalSigners)!=null?a:[],this.signer],d=(yield Promise.all(n.map(c=>{let h=s.find(m=>m.locator()===c.signer.locator);if(h==null)throw new E(`Signer ${c.signer} not found in pending approvals`);return h.signMessage(c.message)}))).map(c=>A(T({},c),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,d)})}approveTransactionInternal(r,t){return o(this,null,function*(){var i,a,c,h,m;let e=yield p(this,l).getTransaction(this.walletLocator,r);if("error"in e)throw new L(JSON.stringify(e));if(yield(c=(a=(i=p(this,f))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:c.call(a),this.signer.type==="api-key")return e;if((t==null?void 0:t.experimental_approval)!=null){let w=[t.experimental_approval];return yield this.executeApproveTransactionWithErrorHandling(r,w)}let n=(h=e.approvals)==null?void 0:h.pending;if(n==null)return e;let s=[...(m=t==null?void 0:t.additionalSigners)!=null?m:[],this.signer],d=(yield Promise.all(n.map(w=>{let v=s.find(S=>S.locator()===w.signer.locator);if(v==null)throw new E(`Signer ${w.signer} not found in pending approvals`);let y=e.chainType==="solana"&&"transaction"in e.onChain?e.onChain.transaction:w.message;return v.signTransaction(y)}))).map(w=>A(T({},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,d)})}executeApproveTransactionWithErrorHandling(r,t){return o(this,null,function*(){let e=yield p(this,l).approveTransaction(this.walletLocator,r,{approvals:t});if(e.error)throw new R(JSON.stringify(e));return e})}executeApproveSignatureWithErrorHandling(r,t){return o(this,null,function*(){let e=yield p(this,l).approveSignature(this.walletLocator,r,{approvals:t});if(e.error)throw new _(JSON.stringify(e));return e})}waitForSignature(r){return o(this,null,function*(){let t=null;do if(yield new Promise(e=>setTimeout(e,O)),t=yield p(this,l).getSignature(this.walletLocator,r),"error"in t)throw new b(JSON.stringify(t));while(t===null||t.status==="pending");if(t.status==="failed")throw new P("Signature signing failed");if(!t.outputSignature)throw new b("Signature not available");return t.outputSignature})}waitForTransaction(g){return o(this,arguments,function*(r,t=6e4,{backoffMultiplier:e=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=O}={}){var c;let d=Date.now(),i;do{if(Date.now()-d>t)throw new I("Transaction confirmation timeout");if(i=yield p(this,l).getTransaction(this.walletLocator,r),i.error)throw new L(JSON.stringify(i));yield this.sleep(s),s=Math.min(s*e,n)}while(i.status==="pending");if(i.status==="failed")throw new F(`Transaction sending failed: ${JSON.stringify(i.error)}`);if(i.status==="awaiting-approval")throw new B("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");let a=i.onChain.txId;if(a==null)throw new J("Transaction hash not found on transaction response");return{hash:a,explorerLink:(c=i.onChain.explorerLink)!=null?c:"",transactionId:i.id}})}sleep(r){return o(this,null,function*(){return new Promise(t=>setTimeout(t,r))})}};f=new WeakMap,l=new WeakMap;function H(u){if(typeof u=="string")return u;if("email"in u)return`email:${u.email}`;if("x"in u)return`x:${u.x}`;if("twitter"in u)return`twitter:${u.twitter}`;if("phone"in u)return`phoneNumber:${u.phone}`;if("userId"in u)return`userId:${u.userId}`;throw new Error("Invalid recipient locator")}function M(u,r){return k(u)?`${r}:${u}`:`${r}:${u.toLowerCase()}`}export{G as a};
@@ -1 +0,0 @@
1
- import{a as t}from"./chunk-4GVVQX7Y.js";import{r as p}from"./chunk-PSXRNSOE.js";import{f as o}from"./chunk-BW7YYVZE.js";import{isValidStellarAddress as T}from"@crossmint/common-sdk-base";var l=class d extends t{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:t.getOptions(n)},t.getApiClient(n))}static from(n){if(!T(n.address))throw new Error("Wallet is not a Stellar wallet");return new d(n)}sendTransaction(n){return o(this,null,function*(){var r;let e=yield this.createTransaction(n);if((r=n.options)!=null&&r.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:e.id};let a={};return yield this.approveTransactionAndWait(e.id,a)})}createTransaction(g){return o(this,arguments,function*({contractId:n,method:e,memo:a,args:r,options:i}){var c;let u=(c=i==null?void 0:i.experimental_signer)!=null?c:this.signer.locator(),s=yield this.apiClient.createTransaction(this.walletLocator,{params:{transaction:{type:"contract-call",contractId:n,method:e,memo:a,args:r},signer:u}});if("error"in s)throw new p(JSON.stringify(s));return s})}};export{l as a};
@@ -1 +0,0 @@
1
- import{a as s}from"./chunk-4GVVQX7Y.js";import{k as p,o as d,r as g}from"./chunk-PSXRNSOE.js";import{a as T}from"./chunk-RE7DBYTJ.js";import{f as o}from"./chunk-BW7YYVZE.js";import{createPublicClient as C,encodeFunctionData as D,http as E}from"viem";import{isValidEvmAddress as S}from"@crossmint/common-sdk-base";var m=class f extends s{constructor(t){super({chain:t.chain,address:t.address,owner:t.owner,signer:t.signer,options:s.getOptions(t)},s.getApiClient(t))}static from(t){if(!S(t.address))throw new Error("Wallet is not an EVM wallet");return new f(t)}sendTransaction(t){return o(this,null,function*(){var a;let n=this.buildTransaction(t),e=yield this.createTransaction(n,t.options);return(a=t.options)!=null&&a.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:e.id}:yield this.approveTransactionAndWait(e.id)})}signMessage(t){return o(this,null,function*(){let n=yield this.apiClient.createSignature(this.walletLocator,{type:"message",params:{message:t,signer:this.signer.locator(),chain:this.chain}});if("error"in n)throw new d(JSON.stringify(n));return yield this.approveSignatureAndWait(n.id)})}signTypedData(t){return o(this,null,function*(){let{domain:n,message:e,primaryType:a,types:i,chain:r}=t;if(!n||!e||!i||!r)throw new p("Invalid typed data");let{name:u,version:l,chainId:h,verifyingContract:y,salt:w}=n;if(!u||!l||!h||!y)throw new p("Invalid typed data domain");let c=yield this.apiClient.createSignature(this.walletLocator,{type:"typed-data",params:{typedData:{domain:{name:u,version:l,chainId:Number(h),verifyingContract:y,salt:w},message:e,primaryType:a,types:i},signer:this.signer.locator(),chain:r,isSmartWalletSignature:!1}});if("error"in c)throw new d(JSON.stringify(c));return yield this.approveSignatureAndWait(c.id)})}getViemClient(t){var n;return C({transport:(n=t==null?void 0:t.transport)!=null?n:E(),chain:T(this.chain)})}createTransaction(t,n){return o(this,null,function*(){var i;let e=(i=n==null?void 0:n.experimental_signer)!=null?i:this.signer.locator(),a=yield this.apiClient.createTransaction(this.walletLocator,{params:{signer:e,chain:this.chain,calls:[t]}});if("error"in a)throw new g(JSON.stringify(a));return a})}buildTransaction(t){var n,e,a,i,r;if("transaction"in t)return{transaction:t.transaction};if(t.abi==null)return{to:t.to,value:(e=(n=t.value)==null?void 0:n.toString())!=null?e:"0",data:(a=t.data)!=null?a:"0x"};if(!t.functionName)throw new Error("Function name is required");return{to:t.to,value:(r=(i=t.value)==null?void 0:i.toString())!=null?r:"0",data:D({abi:t.abi,functionName:t.functionName,args:t.args})}}};export{m as a};
@@ -1 +0,0 @@
1
- var s="@crossmint/wallets-sdk",t="0.11.4";var r="WALLETS_SDK",c=t,a=s,d=500;export{r as a,c as b,a as c,d};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkGZ2SM6KFcjs = require('./chunk-GZ2SM6KF.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var f,l,G= exports.a =class{constructor(r,t){_chunkXALFCQKDcjs.d.call(void 0, this,f);_chunkXALFCQKDcjs.d.call(void 0, this,l);let{chain:e,address:n,owner:s,signer:g,options:d}=r;_chunkXALFCQKDcjs.e.call(void 0, this,l,t),this.chain=e,this.address=n,this.owner=s,this.signer=g,_chunkXALFCQKDcjs.e.call(void 0, this,f,d)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,l)}get options(){return _chunkXALFCQKDcjs.c.call(void 0, this,f)}experimental_apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,l)}balances(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let e;switch(this.chain){case"solana":e="sol";break;case"stellar":e="xlm";break;default:e="eth";break}let n=[e,"usdc",...r!=null?r:[]],s=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getBalance(this.address,{chains:t!=null?t:[this.chain],tokens:n.map(g=>g.toLowerCase())});if("error"in s)throw new Error(`Failed to get balances for wallet: ${JSON.stringify(s.message)}`);return this.transformBalanceResponse(s,e,r)})}transformBalanceResponse(r,t,e){let n=a=>{var m,w,v,y,S;let c=(m=a.chains)==null?void 0:m[this.chain],h="contractAddress"in c?c.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.symbol)!=null?v:"",amount:(y=a.amount)!=null?y:"0",contractAddress:h,decimals:a.decimals,rawAmount:(S=a.rawAmount)!=null?S:"0"}},s=r.find(a=>a.symbol===t),g=r.find(a=>a.symbol==="usdc"),d=r.filter(a=>{var c;return a.symbol!==t&&a.symbol!=="usdc"&&(e==null?void 0:e.includes((c=a.symbol)!=null?c:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(t),usdc:g!=null?n(g):i("usdc"),tokens:d.map(n)}}experimental_nfts(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield _chunkXALFCQKDcjs.c.call(void 0, this,l).experimental_getNfts(_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},r),{chain:this.chain,address:this.address}))})}experimental_transactions(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let r=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransactions(this.walletLocator);if("error"in r)throw new Error(`Failed to get transactions: ${JSON.stringify(r.message)}`);return r})}experimental_transaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r);if("error"in t)throw new Error(`Failed to get transaction: ${JSON.stringify(t.error)}`);return t})}experimental_activity(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let r=yield this.apiClient.experimental_activity(this.walletLocator,{chain:this.chain});if("error"in r)throw new Error(`Failed to get activity: ${JSON.stringify(r.message)}`);return r})}send(r,t,e,n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let s=H(r),g=M(t,this.chain),d={recipient:s,amount:e},i=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).send(this.walletLocator,g,d);if("message"in i)throw new (0, _chunkO4FVTK7Xcjs.r)(`Failed to send token: ${JSON.stringify(i.message)}`);return n!=null&&n.experimental_prepareOnly?{hash:void 0,explorerLink:void 0,transactionId:i.id}:yield this.approveTransactionAndWait(i.id)})}approveTransaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return console.warn("approveTransaction is deprecated. Use approve instead. This method will be removed in the next major version."),yield this.approve(r)})}approve(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(r.transactionId!=null)return yield this.approveTransactionAndWait(r.transactionId,r.options);if(r.signatureId!=null)return yield this.approveSignatureAndWait(r.signatureId,r.options);throw new Error("Either transactionId or signatureId must be provided")})}addDelegatedSigner(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var e;let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).registerSigner(this.walletLocator,{signer:r.signer,chain:this.chain==="solana"||this.chain==="stellar"?void 0:this.chain});if("error"in t)throw new Error(`Failed to register signer: ${JSON.stringify(t.message)}`);if("transaction"in t){let n=t.transaction.id;yield this.approveTransactionAndWait(n)}else{let n=(e=t.chains)==null?void 0:e[this.chain];if((n==null?void 0:n.status)==="awaiting-approval"){yield this.approveSignatureAndWait(n.id);return}if((n==null?void 0:n.status)==="pending"){yield this.waitForSignature(n.id);return}}})}delegatedSigners(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t,e,n;let r=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getWallet(this.walletLocator);if("error"in r)throw new (0, _chunkO4FVTK7Xcjs.d)(JSON.stringify(r));if(this.chain==="stellar")return[];if(r.type!=="smart"||r.chainType!=="evm"&&r.chainType!=="solana")throw new (0, _chunkO4FVTK7Xcjs.c)(`Wallet type ${r.type} not supported`);return(n=(e=(t=r==null?void 0:r.config)==null?void 0:t.delegatedSigners)==null?void 0:e.map(s=>{let g=s.locator.indexOf(":");return{signer:`external-wallet:${g>=0?s.locator.slice(g+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return _chunkXALFCQKDcjs.c.call(void 0, this,l).isServerSide?this.address:this.chain==="stellar"?"me:stellar:smart":this.chain==="solana"?"me:solana:smart":"me:evm:smart"}get isSolanaWallet(){return this.chain==="solana"}approveTransactionAndWait(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.approveTransactionInternal(r,t),yield this.sleep(1e3),yield this.waitForTransaction(r)})}approveSignatureAndWait(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.approveSignatureInternal(r,t),yield this.sleep(1e3),yield this.waitForSignature(r)})}approveSignatureInternal(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a;if(this.isSolanaWallet)throw new Error("Approving signatures is only supported for EVM smart wallets");let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getSignature(this.walletLocator,r);if("error"in e)throw new (0, _chunkO4FVTK7Xcjs.p)(JSON.stringify(e));if(this.signer.type==="api-key")return e;if((t==null?void 0:t.experimental_approval)!=null){let c=[t.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,c)}let n=(i=e.approvals)==null?void 0:i.pending;if(n==null)return e;let s=[...(a=t==null?void 0:t.additionalSigners)!=null?a:[],this.signer],d=(yield Promise.all(n.map(c=>{let h=s.find(m=>m.locator()===c.signer.locator);if(h==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${c.signer} not found in pending approvals`);return h.signMessage(c.message)}))).map(c=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},c),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,d)})}approveTransactionInternal(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a,c,h,m;let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r);if("error"in e)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(e));if(yield(c=(a=(i=_chunkXALFCQKDcjs.c.call(void 0, this,f))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:c.call(a),this.signer.type==="api-key")return e;if((t==null?void 0:t.experimental_approval)!=null){let w=[t.experimental_approval];return yield this.executeApproveTransactionWithErrorHandling(r,w)}let n=(h=e.approvals)==null?void 0:h.pending;if(n==null)return e;let s=[...(m=t==null?void 0:t.additionalSigners)!=null?m:[],this.signer],d=(yield Promise.all(n.map(w=>{let v=s.find(S=>S.locator()===w.signer.locator);if(v==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${w.signer} not found in pending approvals`);let y=e.chainType==="solana"&&"transaction"in e.onChain?e.onChain.transaction:w.message;return v.signTransaction(y)}))).map(w=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,d)})}executeApproveTransactionWithErrorHandling(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).approveTransaction(this.walletLocator,r,{approvals:t});if(e.error)throw new (0, _chunkO4FVTK7Xcjs.x)(JSON.stringify(e));return e})}executeApproveSignatureWithErrorHandling(r,t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let e=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).approveSignature(this.walletLocator,r,{approvals:t});if(e.error)throw new (0, _chunkO4FVTK7Xcjs.q)(JSON.stringify(e));return e})}waitForSignature(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=null;do if(yield new Promise(e=>setTimeout(e,_chunkGZ2SM6KFcjs.d)),t=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getSignature(this.walletLocator,r),"error"in t)throw new (0, _chunkO4FVTK7Xcjs.p)(JSON.stringify(t));while(t===null||t.status==="pending");if(t.status==="failed")throw new (0, _chunkO4FVTK7Xcjs.m)("Signature signing failed");if(!t.outputSignature)throw new (0, _chunkO4FVTK7Xcjs.p)("Signature not available");return t.outputSignature})}waitForTransaction(g){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*(r,t=6e4,{backoffMultiplier:e=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=_chunkGZ2SM6KFcjs.d}={}){var c;let d=Date.now(),i;do{if(Date.now()-d>t)throw new (0, _chunkO4FVTK7Xcjs.t)("Transaction confirmation timeout");if(i=yield _chunkXALFCQKDcjs.c.call(void 0, this,l).getTransaction(this.walletLocator,r),i.error)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(i));yield this.sleep(s),s=Math.min(s*e,n)}while(i.status==="pending");if(i.status==="failed")throw new (0, _chunkO4FVTK7Xcjs.u)(`Transaction sending failed: ${JSON.stringify(i.error)}`);if(i.status==="awaiting-approval")throw new (0, _chunkO4FVTK7Xcjs.v)("Transaction is awaiting approval. Please submit required approvals before waiting for completion.");let a=i.onChain.txId;if(a==null)throw new (0, _chunkO4FVTK7Xcjs.w)("Transaction hash not found on transaction response");return{hash:a,explorerLink:(c=i.onChain.explorerLink)!=null?c:"",transactionId:i.id}})}sleep(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return new Promise(t=>setTimeout(t,r))})}};f=new WeakMap,l=new WeakMap;function H(u){if(typeof u=="string")return u;if("email"in u)return`email:${u.email}`;if("x"in u)return`x:${u.x}`;if("twitter"in u)return`twitter:${u.twitter}`;if("phone"in u)return`phoneNumber:${u.phone}`;if("userId"in u)return`userId:${u.userId}`;throw new Error("Invalid recipient locator")}function M(u,r){return _commonsdkbase.isValidAddress.call(void 0, u)?`${r}:${u}`:`${r}:${u.toLowerCase()}`}exports.a = G;