@crossmint/wallets-sdk 0.11.9 → 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/client.cjs +1 -1
- package/dist/api/client.js +1 -1
- package/dist/api/index.cjs +1 -1
- package/dist/api/index.js +1 -1
- package/dist/{chunk-ZXVIIZ3I.cjs → chunk-2DDIFY2C.cjs} +1 -1
- package/dist/{chunk-XKBJFXWE.js → chunk-2FBU6EOX.js} +1 -1
- package/dist/chunk-2SHDBC47.js +1 -0
- package/dist/chunk-3APSOOE3.js +1 -0
- package/dist/{chunk-PZI37OW2.js → chunk-6433AT57.js} +1 -1
- package/dist/chunk-6PVKL5RC.js +1 -0
- package/dist/{chunk-JMDCQZC3.js → chunk-7BEMA3KG.js} +1 -1
- package/dist/{chunk-5ZV3IIIY.cjs → chunk-7SA335PZ.cjs} +1 -1
- package/dist/{chunk-VKDOCICO.js → chunk-BMGQVO4K.js} +1 -1
- package/dist/chunk-C3K5DA3W.cjs +1 -0
- package/dist/chunk-C3T63EC7.cjs +1 -0
- package/dist/chunk-CARVGLYT.cjs +3 -0
- package/dist/{chunk-4FZ4ZCTP.cjs → chunk-CP3N5Q3C.cjs} +1 -1
- package/dist/chunk-F6KWHHYO.js +3 -0
- package/dist/{chunk-MTZIGWOA.cjs → chunk-GNL4RC2A.cjs} +1 -1
- package/dist/chunk-HRSVFJND.cjs +1 -0
- package/dist/{chunk-22XH3DOI.js → chunk-HWWYX2CY.js} +1 -1
- package/dist/chunk-KRAAV3FK.js +1 -0
- package/dist/chunk-LE7DYESO.js +1 -0
- package/dist/chunk-M4TOGGLV.cjs +1 -0
- package/dist/{chunk-H6W343CU.cjs → chunk-NPXTLMYS.cjs} +1 -1
- package/dist/{chunk-7AYURRUC.cjs → chunk-PPS37EJL.cjs} +1 -1
- package/dist/{chunk-KPHNZJD7.js → chunk-SK57FHH2.js} +1 -1
- package/dist/{chunk-IMWWZTLJ.cjs → chunk-SYCCYHLT.cjs} +1 -1
- package/dist/{chunk-4GMYGJLU.cjs → chunk-UT2U6NWW.cjs} +1 -1
- package/dist/chunk-UZXJ5FAA.cjs +1 -0
- package/dist/{chunk-BK2D2D22.js → chunk-V7O6CCYZ.js} +1 -1
- package/dist/{chunk-UDLI2RYM.cjs → chunk-VMBMJTB4.cjs} +1 -1
- package/dist/{chunk-BCABCNTC.js → chunk-WNJB4XC7.js} +1 -1
- package/dist/{chunk-YMCCWHGA.js → chunk-XFNHQ4RR.js} +1 -1
- package/dist/{chunk-F76V2BGM.cjs → chunk-ZO4PSHX2.cjs} +1 -1
- package/dist/{chunk-2V25AWBE.js → chunk-ZTVEOVAQ.js} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/sdk.cjs +1 -1
- package/dist/sdk.js +1 -1
- package/dist/signers/evm-external-wallet.cjs +1 -1
- package/dist/signers/evm-external-wallet.d.cts +2 -1
- package/dist/signers/evm-external-wallet.d.ts +2 -1
- package/dist/signers/evm-external-wallet.js +1 -1
- package/dist/signers/index.cjs +1 -1
- package/dist/signers/index.js +1 -1
- package/dist/signers/non-custodial/index.cjs +1 -1
- package/dist/signers/non-custodial/index.js +1 -1
- package/dist/signers/non-custodial/ncs-evm-signer.cjs +1 -1
- package/dist/signers/non-custodial/ncs-evm-signer.js +1 -1
- package/dist/signers/non-custodial/ncs-signer.cjs +1 -1
- package/dist/signers/non-custodial/ncs-signer.d.cts +1 -0
- package/dist/signers/non-custodial/ncs-signer.d.ts +1 -0
- package/dist/signers/non-custodial/ncs-signer.js +1 -1
- package/dist/signers/non-custodial/ncs-solana-signer.cjs +1 -1
- package/dist/signers/non-custodial/ncs-solana-signer.js +1 -1
- package/dist/signers/non-custodial/ncs-stellar-signer.cjs +1 -1
- package/dist/signers/non-custodial/ncs-stellar-signer.js +1 -1
- package/dist/signers/solana-external-wallet.cjs +1 -1
- package/dist/signers/solana-external-wallet.d.cts +2 -1
- package/dist/signers/solana-external-wallet.d.ts +2 -1
- package/dist/signers/solana-external-wallet.js +1 -1
- package/dist/signers/stellar-external-wallet.cjs +1 -1
- package/dist/signers/stellar-external-wallet.d.cts +2 -1
- package/dist/signers/stellar-external-wallet.d.ts +2 -1
- package/dist/signers/stellar-external-wallet.js +1 -1
- package/dist/signers/types.d.cts +2 -0
- package/dist/signers/types.d.ts +2 -0
- package/dist/utils/constants.cjs +1 -1
- package/dist/utils/constants.js +1 -1
- package/dist/wallets/evm.cjs +1 -1
- package/dist/wallets/evm.js +1 -1
- package/dist/wallets/solana.cjs +1 -1
- package/dist/wallets/solana.js +1 -1
- package/dist/wallets/stellar.cjs +1 -1
- package/dist/wallets/stellar.js +1 -1
- package/dist/wallets/types.d.cts +1 -0
- package/dist/wallets/types.d.ts +1 -0
- package/dist/wallets/wallet-factory.cjs +1 -1
- package/dist/wallets/wallet-factory.d.cts +1 -0
- package/dist/wallets/wallet-factory.d.ts +1 -0
- package/dist/wallets/wallet-factory.js +1 -1
- package/dist/wallets/wallet.cjs +1 -1
- package/dist/wallets/wallet.js +1 -1
- package/package.json +3 -3
- package/dist/chunk-5S6YZJHE.js +0 -1
- package/dist/chunk-67U2B6QL.cjs +0 -1
- package/dist/chunk-BULGM35W.cjs +0 -1
- package/dist/chunk-EROXNXIZ.js +0 -1
- package/dist/chunk-FC7FFQOV.cjs +0 -1
- package/dist/chunk-FKFTRH5V.js +0 -3
- package/dist/chunk-HZDDQ2VV.cjs +0 -3
- package/dist/chunk-JMK64ITR.js +0 -1
- package/dist/chunk-KS3GFHCZ.cjs +0 -1
- package/dist/chunk-MY4MQMBK.cjs +0 -1
- package/dist/chunk-QZL4LBYZ.js +0 -1
- package/dist/chunk-VETSIYJQ.js +0 -1
package/dist/api/client.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk2DDIFY2Ccjs = require('../chunk-2DDIFY2C.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunk2DDIFY2Ccjs.a;
|
package/dist/api/client.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-WNJB4XC7.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
|
package/dist/api/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-6HXIZLEQ.cjs');var _chunk2DDIFY2Ccjs = require('../chunk-2DDIFY2C.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-ECAM5KTH.cjs');require('../chunk-XALFCQKD.cjs');exports.ApiClient = _chunk2DDIFY2Ccjs.a;
|
package/dist/api/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-
|
|
1
|
+
import"../chunk-5IFDVB4Y.js";import{a}from"../chunk-WNJB4XC7.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-KBJA7JDT.js";import"../chunk-BW7YYVZE.js";export{a as ApiClient};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7SA335PZcjs = require('./chunk-7SA335PZ.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:_chunk7SA335PZcjs.c,version:_chunk7SA335PZcjs.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
|
-
import{a as c}from"./chunk-
|
|
1
|
+
import{a as c}from"./chunk-XFNHQ4RR.js";import{k as p,o as u,r as y}from"./chunk-PSXRNSOE.js";import{a as f}from"./chunk-I5COKXOT.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{f as e}from"./chunk-BW7YYVZE.js";var n=class{constructor(r){this.config=r;this.type="external-wallet";if(r.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=r.address,this.onSignStellarTransaction=r.onSignStellarTransaction}address(){return this._address}locator(){return this.config.locator}signMessage(){return e(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar external wallet signer"))})}signTransaction(r){return e(this,null,function*(){return this.onSignStellarTransaction==null?yield Promise.reject(new Error("onSignStellarTransaction method is required to sign transactions with a Stellar external wallet")):{signature:yield this.onSignStellarTransaction(r)}})}};export{n as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{f as i}from"./chunk-BW7YYVZE.js";var n=class{constructor(e){this.config=e;this.type="external-wallet";if(e.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=e.address,this.provider=e.provider,this.viemAccount=e.viemAccount}address(){return this._address}locator(){return this.config.locator}signMessage(e){return i(this,null,function*(){var s;if(this.provider!=null){let r=yield this.provider.request({method:"personal_sign",params:[e,this._address]});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: EIP1193 provider signMessage returned null");return{signature:r}}if(((s=this.viemAccount)==null?void 0:s.signMessage)!=null){let r=yield this.viemAccount.signMessage({message:{raw:e}});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: Viem account signMessage returned null");return{signature:r}}throw new Error("No signer provider or viem account provided")})}signTransaction(e){return i(this,null,function*(){return yield this.signMessage(e)})}};export{n as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"./chunk-
|
|
1
|
+
import{a}from"./chunk-XFNHQ4RR.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 a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:a.getOptions(n)},a.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 t;let e=yield this.createTransaction(n);if((t=n.options)!=null&&t.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:e.id};let r={};return yield this.approveTransactionAndWait(e.id,r)})}createTransaction(g){return o(this,arguments,function*({contractId:n,method:e,memo:r,args:t,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:r!=null?{type:"text",value:r}:void 0,args:t},signer:u}});if("error"in s)throw new p(JSON.stringify(s));return s})}};export{l as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{x as r}from"./chunk-PSXRNSOE.js";import{f as e}from"./chunk-BW7YYVZE.js";import{PublicKey as m,VersionedTransaction as h}from"@solana/web3.js";import i from"bs58";var o=class{constructor(n){this.config=n;this.type="external-wallet";if(n.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=n.address,this.onSignTransaction=n.onSignTransaction}address(){return this._address}locator(){return this.config.locator}signMessage(){return e(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for solana external wallet signer"))})}signTransaction(n){return e(this,null,function*(){if(this.onSignTransaction==null)return yield Promise.reject(new Error("onSignTransaction method is required to sign transactions with a Solana external wallet"));let l=i.decode(n),c=h.deserialize(l),t=yield this.onSignTransaction(c),d=new m(this._address),a=t.message.staticAccountKeys.findIndex(u=>u.equals(d));if(a===-1)throw new r("Wallet public key not found in transaction signers");let s=t.signatures[a];if(s==null)throw new r("No valid signature found in the transaction");let g=new Uint8Array(Object.values(s));return{signature:i.encode(g)}})}};export{o as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as n}from"./chunk-
|
|
1
|
+
import{a as n}from"./chunk-SK57FHH2.js";import{a}from"./chunk-HWWYX2CY.js";import{a as t}from"./chunk-V7O6CCYZ.js";import{a as o}from"./chunk-UBOWSXW3.js";import{a as m}from"./chunk-IGBQEAD5.js";import{a as l}from"./chunk-6PVKL5RC.js";import{a as p}from"./chunk-2SHDBC47.js";import{a as s}from"./chunk-LW6JSI4J.js";import{a as i}from"./chunk-3APSOOE3.js";function d(r,e){switch(e.type){case"email":case"phone":return r==="solana"?new n(e):r==="stellar"?new a(e):new t(e);case"api-key":return r==="solana"?new m(e):new s(e);case"external-wallet":return r==="solana"?new l(e):r==="stellar"?new p(e):new i(e);case"passkey":return new o(e)}}export{d as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var s="@crossmint/wallets-sdk",t="0.12.1";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{a as t}from"./chunk-
|
|
1
|
+
import{a as t}from"./chunk-XFNHQ4RR.js";import{a as l}from"./chunk-6PVKL5RC.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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkMQP5VZCAcjs = require('./chunk-MQP5VZCA.cjs');var _chunkZSWIQU3Ucjs = require('./chunk-ZSWIQU3U.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var g=class{constructor(t){this.config=t;this._needsAuth=!0;this._authPromise=null;this.initialize(),this.type=this.config.type}locator(){return this.config.locator}address(){return this.config.address}initialize(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.config.clientTEEConnection==null){let t=_commonsdkbase.validateAPIKey.call(void 0, this.config.crossmint.apiKey);if(!t.isValid)throw new Error("Invalid API key");let r=new (0, _chunkMQP5VZCAcjs.a)({environment:t.environment});this.config.clientTEEConnection=yield r.initialize()}})}handleAuthRequired(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var s,o,a;if(this.config.clientTEEConnection==null)throw this.config.onAuthRequired==null?new Error(`${this.type} signer requires the onAuthRequired callback to handle OTP verification. This callback manages the authentication flow (sending OTP and verifying user input). If using our React/React Native SDK, this is handled automatically by the provider. For other environments, implement: onAuthRequired: (needsAuth, sendEmailWithOtp, verifyOtp, reject) => { /* your UI logic */ }`):new Error("Handshake parent not initialized");let t=yield(a=this.config.clientTEEConnection)==null?void 0:a.sendAction({event:"request:get-status",responseEvent:"response:get-status",data:{authData:{jwt:(o=(s=this.config.crossmint.experimental_customAuth)==null?void 0:s.jwt)!=null?o:"",apiKey:this.config.crossmint.apiKey}},options:l});if((t==null?void 0:t.status)!=="success")throw new Error(t==null?void 0:t.error);if(t.signerStatus==="ready"){this._needsAuth=!1;return}let{promise:r,resolve:i,reject:n}=this.createAuthPromise();if(this._authPromise={promise:r,resolve:i,reject:n},this.config.onAuthRequired)try{yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),e=>this.verifyOtp(e),()=>{n(new _chunkZSWIQU3Ucjs.a),this._needsAuth=!1})}catch(e){n(e)}try{yield r}catch(e){throw e}})}getJwtOrThrow(){var r;let t=(r=this.config.crossmint.experimental_customAuth)==null?void 0:r.jwt;if(t==null)throw new Error("JWT is required");return t}createAuthPromise(){let t,r;return{promise:new Promise((n,s)=>{t=n,r=s}),resolve:t,reject:r}}sendMessageWithOtp(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var n,s,o;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let t=this.config.clientTEEConnection,r=this.getAuthId(),i=yield t.sendAction({event:"request:start-onboarding",responseEvent:"response:start-onboarding",data:{authData:{jwt:(s=(n=this.config.crossmint.experimental_customAuth)==null?void 0:n.jwt)!=null?s:"",apiKey:this.config.crossmint.apiKey},data:{authId:r}},options:l});if((i==null?void 0:i.status)==="success"&&i.signerStatus==="ready"){this._needsAuth=!1;return}(i==null?void 0:i.status)==="error"&&(console.error("[sendMessageWithOtp] Failed to send OTP:",i),(o=this._authPromise)==null||o.reject(new Error(i.error||"Failed to initiate OTP process.")))})}getAuthId(){return this.config.type==="email"?`email:${this.config.email}`:`phone:${this.config.phone}`}verifyOtp(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,n,s,o,a;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let r=this.config.clientTEEConnection;try{let e=yield r.sendAction({event:"request:complete-onboarding",responseEvent:"response:complete-onboarding",data:{authData:{jwt:(n=(i=this.config.crossmint.experimental_customAuth)==null?void 0:i.jwt)!=null?n:"",apiKey:this.config.crossmint.apiKey},data:{onboardingAuthentication:{encryptedOtp:t}}},options:l});if((e==null?void 0:e.status)==="success"){this._needsAuth=!1,this.config.onAuthRequired!=null&&(yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),h=>this.verifyOtp(h),()=>{var h;return(h=this._authPromise)==null?void 0:h.reject(new _chunkZSWIQU3Ucjs.a)})),(s=this._authPromise)==null||s.resolve();return}console.error("[verifyOtp] Failed to validate OTP:",e),this._needsAuth=!0;let f=(e==null?void 0:e.status)==="error"?e.error:"Failed to validate encrypted OTP";(o=this._authPromise)==null||o.reject(new Error(f))}catch(e){throw console.error("[verifyOtp] Error sending OTP validation request:",e),this._needsAuth=!0,(a=this._authPromise)==null||a.reject(e),e}})}},l= exports.b ={timeoutMs:1e4,intervalMs:5e3};exports.a = g; exports.b = l;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var n=class{constructor(r){this.config=r;this.type="external-wallet";if(r.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=r.address,this.onSignStellarTransaction=r.onSignStellarTransaction}address(){return this._address}locator(){return this.config.locator}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar external wallet signer"))})}signTransaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return this.onSignStellarTransaction==null?yield Promise.reject(new Error("onSignStellarTransaction method is required to sign transactions with a Stellar external wallet")):{signature:yield this.onSignStellarTransaction(r)}})}};exports.a = n;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk23BRREJGcjs = require('./chunk-23BRREJG.cjs');var _chunkVMBMJTB4cjs = require('./chunk-VMBMJTB4.cjs');var _chunkUZXJ5FAAcjs = require('./chunk-UZXJ5FAA.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _ox = require('ox');var u="When 'delegatedSigners' is provided to a method that may fetch an existing wallet, each specified delegated signer must exist in that wallet's configuration.",w= exports.a =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
|
+
- 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 n=yield this.apiClient.getWallet(`me:${this.getChainType(e.chain)}:smart`);return n!=null&&!("error"in n)?this.createWalletInstance(n,e):this.createWallet(e)})}getWallet(e,n){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 i=yield this.apiClient.getWallet(e);if("error"in i)throw new (0, _chunkO4FVTK7Xcjs.d)(JSON.stringify(i));return this.createWalletInstance(i,n)})}createWallet(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var t,a,l,o;yield(l=(a=(t=e.options)==null?void 0:t.experimental_callbacks)==null?void 0:a.onWalletCreationStart)==null?void 0:l.call(a),this.mutateSignerFromCustomAuth(e,!0);let n=e.signer.type==="passkey"?yield this.createPasskeyAdminSigner(e.signer):e.signer,i=yield this.apiClient.createWallet({type:"smart",chainType:this.getChainType(e.chain),config:_chunkXALFCQKDcjs.a.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {adminSigner:n},e!=null&&e.plugins?{plugins:e.plugins}:{}),e.chain==="solana"&&e.delegatedSigners!=null?{delegatedSigners:e.delegatedSigners}:{}),owner:(o=e.owner)!=null?o:void 0});if("error"in i)throw new (0, _chunkO4FVTK7Xcjs.f)(JSON.stringify(i));return this.createWalletInstance(i,e)})}createWalletInstance(e,n){this.validateExistingWalletConfig(e,n);let i=this.toInternalSignerConfig(e,n.signer,n.options);return new (0, _chunkVMBMJTB4cjs.a)({chain:n.chain,address:e.address,owner:e.owner,signer:_chunkUZXJ5FAAcjs.a.call(void 0, n.chain,i),options:n.options},this.apiClient)}toInternalSignerConfig(e,n,i){var t,a,l,o,d,m;if(!(e.chainType==="evm"||e.chainType==="solana"||e.chainType==="stellar"))throw new (0, _chunkO4FVTK7Xcjs.f)(`Wallet type ${e.chainType} is not supported`);if(n==null&&((t=e.config)==null?void 0:t.adminSigner)==null)throw new (0, _chunkO4FVTK7Xcjs.f)("Signer is required to create a wallet");switch(n.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(((l=e.config)==null?void 0:l.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),n);case"passkey":if(((o=e.config)==null?void 0:o.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:n.onCreatePasskey,onSignWithPasskey:n.onSignWithPasskey};case"email":{if(((d=e.config)==null?void 0:d.adminSigner.type)!=="email")throw new (0, _chunkO4FVTK7Xcjs.f)("Email signer does not match the wallet's signer type");let{locator:h,email:g,address:p}=e.config.adminSigner;return{type:"email",email:g,locator:h,address:p,crossmint:this.apiClient.crossmint,onAuthRequired:n.onAuthRequired,clientTEEConnection:i==null?void 0:i.clientTEEConnection}}case"phone":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="phone")throw new (0, _chunkO4FVTK7Xcjs.f)("Phone signer does not match the wallet's signer type");let{locator:h,phone:g,address:p}=e.config.adminSigner;return{type:"phone",phone:g,locator:h,address:p,crossmint:this.apiClient.crossmint,onAuthRequired:n.onAuthRequired,clientTEEConnection:i==null?void 0:i.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 n=(t=e.name)!=null?t:`Crossmint Wallet ${Date.now()}`,i=e.onCreatePasskey?yield e.onCreatePasskey(n):yield _ox.WebAuthnP256.createCredential({name:n});return{type:"passkey",id:i.id,name:n,publicKey:{x:i.publicKey.x.toString(),y:i.publicKey.y.toString()}}})}mutateSignerFromCustomAuth(e,n=!1){var t,a;let{experimental_customAuth:i}=this.apiClient.crossmint;e.signer.type==="email"&&(i==null?void 0:i.email)!=null&&(e.signer.email=(t=e.signer.email)!=null?t:i.email),e.signer.type==="phone"&&(i==null?void 0:i.phone)!=null&&(e.signer.phone=(a=e.signer.phone)!=null?a:i.phone),e.signer.type==="external-wallet"&&(i==null?void 0:i.externalWalletSigner)!=null&&(e.signer=n?{type:"external-wallet",address:i.externalWalletSigner.address}:i.externalWalletSigner)}validateExistingWalletConfig(e,n){var a;if(this.mutateSignerFromCustomAuth(n),n.owner!=null&&e.owner!=null&&n.owner!==e.owner)throw new (0, _chunkO4FVTK7Xcjs.f)("Wallet owner does not match existing wallet's linked user");if(n.chain==="solana"&&e.chainType!=="solana"||n.chain!=="solana"&&e.chainType==="solana"||n.chain==="stellar"&&e.chainType!=="stellar"||n.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 i=n.signer,t=(a=e==null?void 0:e.config)==null?void 0:a.adminSigner;if(i!=null&&t!=null){if(i.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, i,t)}n.delegatedSigners!=null&&n.chain==="solana"&&this.validateDelegatedSigners(e,n.delegatedSigners)}validateDelegatedSigners(e,n){var t;let i=(t=e==null?void 0:e.config)==null?void 0:t.delegatedSigners;if(n.length!==0){if(i==null||i.length===0)throw new (0, _chunkO4FVTK7Xcjs.f)(`${n.length} delegated signer(s) specified, but wallet "${e.address}" has no delegated signers. ${u}`);for(let a of n)if(i.find(o=>o.locator===a.signer)==null){let o=i.map(d=>d.locator).join(", ");throw new (0, _chunkO4FVTK7Xcjs.f)(`Delegated signer '${a.signer}' does not exist in wallet "${e.address}". Available delegated signers: ${o}. ${u}`)}}}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};exports.a = w;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCARVGLYTcjs = require('./chunk-CARVGLYT.cjs');var _chunk2DDIFY2Ccjs = require('./chunk-2DDIFY2C.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var i=class o{constructor(t){let r=new (0, _chunk2DDIFY2Ccjs.a)(t);this.walletFactory=new (0, _chunkCARVGLYTcjs.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;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{a as S}from"./chunk-BHGNJYYE.js";import{a as C}from"./chunk-XFNHQ4RR.js";import{a as f}from"./chunk-7BEMA3KG.js";import{d as y,f as r}from"./chunk-PSXRNSOE.js";import{a as s,f as c}from"./chunk-BW7YYVZE.js";import{WebAuthnP256 as W}from"ox";var u="When 'delegatedSigners' is provided to a method that may fetch an existing wallet, each specified delegated signer must exist in that wallet's configuration.",w=class{constructor(e){this.apiClient=e}getOrCreateWallet(e){return c(this,null,function*(){if(this.apiClient.isServerSide)throw new r(`getOrCreateWallet can only be called from client-side code.
|
|
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 n=yield this.apiClient.getWallet(`me:${this.getChainType(e.chain)}:smart`);return n!=null&&!("error"in n)?this.createWalletInstance(n,e):this.createWallet(e)})}getWallet(e,n){return c(this,null,function*(){if(!this.apiClient.isServerSide)throw new r("getWallet is not supported on client side, use getOrCreateWallet instead");let i=yield this.apiClient.getWallet(e);if("error"in i)throw new y(JSON.stringify(i));return this.createWalletInstance(i,n)})}createWallet(e){return c(this,null,function*(){var t,a,l,o;yield(l=(a=(t=e.options)==null?void 0:t.experimental_callbacks)==null?void 0:a.onWalletCreationStart)==null?void 0:l.call(a),this.mutateSignerFromCustomAuth(e,!0);let n=e.signer.type==="passkey"?yield this.createPasskeyAdminSigner(e.signer):e.signer,i=yield this.apiClient.createWallet({type:"smart",chainType:this.getChainType(e.chain),config:s(s({adminSigner:n},e!=null&&e.plugins?{plugins:e.plugins}:{}),e.chain==="solana"&&e.delegatedSigners!=null?{delegatedSigners:e.delegatedSigners}:{}),owner:(o=e.owner)!=null?o:void 0});if("error"in i)throw new r(JSON.stringify(i));return this.createWalletInstance(i,e)})}createWalletInstance(e,n){this.validateExistingWalletConfig(e,n);let i=this.toInternalSignerConfig(e,n.signer,n.options);return new C({chain:n.chain,address:e.address,owner:e.owner,signer:f(n.chain,i),options:n.options},this.apiClient)}toInternalSignerConfig(e,n,i){var t,a,l,o,d,m;if(!(e.chainType==="evm"||e.chainType==="solana"||e.chainType==="stellar"))throw new r(`Wallet type ${e.chainType} is not supported`);if(n==null&&((t=e.config)==null?void 0:t.adminSigner)==null)throw new r("Signer is required to create a wallet");switch(n.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(((l=e.config)==null?void 0:l.adminSigner.type)!=="external-wallet")throw new r("External wallet signer does not match the wallet's signer type");return s(s({},e.config.adminSigner),n);case"passkey":if(((o=e.config)==null?void 0:o.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:n.onCreatePasskey,onSignWithPasskey:n.onSignWithPasskey};case"email":{if(((d=e.config)==null?void 0:d.adminSigner.type)!=="email")throw new r("Email signer does not match the wallet's signer type");let{locator:h,email:g,address:p}=e.config.adminSigner;return{type:"email",email:g,locator:h,address:p,crossmint:this.apiClient.crossmint,onAuthRequired:n.onAuthRequired,clientTEEConnection:i==null?void 0:i.clientTEEConnection}}case"phone":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="phone")throw new r("Phone signer does not match the wallet's signer type");let{locator:h,phone:g,address:p}=e.config.adminSigner;return{type:"phone",phone:g,locator:h,address:p,crossmint:this.apiClient.crossmint,onAuthRequired:n.onAuthRequired,clientTEEConnection:i==null?void 0:i.clientTEEConnection}}default:throw new Error("Invalid signer type")}}createPasskeyAdminSigner(e){return c(this,null,function*(){var t;if(e.type!=="passkey")throw new Error("Signer is not a passkey");let n=(t=e.name)!=null?t:`Crossmint Wallet ${Date.now()}`,i=e.onCreatePasskey?yield e.onCreatePasskey(n):yield W.createCredential({name:n});return{type:"passkey",id:i.id,name:n,publicKey:{x:i.publicKey.x.toString(),y:i.publicKey.y.toString()}}})}mutateSignerFromCustomAuth(e,n=!1){var t,a;let{experimental_customAuth:i}=this.apiClient.crossmint;e.signer.type==="email"&&(i==null?void 0:i.email)!=null&&(e.signer.email=(t=e.signer.email)!=null?t:i.email),e.signer.type==="phone"&&(i==null?void 0:i.phone)!=null&&(e.signer.phone=(a=e.signer.phone)!=null?a:i.phone),e.signer.type==="external-wallet"&&(i==null?void 0:i.externalWalletSigner)!=null&&(e.signer=n?{type:"external-wallet",address:i.externalWalletSigner.address}:i.externalWalletSigner)}validateExistingWalletConfig(e,n){var a;if(this.mutateSignerFromCustomAuth(n),n.owner!=null&&e.owner!=null&&n.owner!==e.owner)throw new r("Wallet owner does not match existing wallet's linked user");if(n.chain==="solana"&&e.chainType!=="solana"||n.chain!=="solana"&&e.chainType==="solana"||n.chain==="stellar"&&e.chainType!=="stellar"||n.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 i=n.signer,t=(a=e==null?void 0:e.config)==null?void 0:a.adminSigner;if(i!=null&&t!=null){if(i.type!==t.type)throw new r("The wallet signer type provided in the wallet config does not match the existing wallet's adminSigner type");S(i,t)}n.delegatedSigners!=null&&n.chain==="solana"&&this.validateDelegatedSigners(e,n.delegatedSigners)}validateDelegatedSigners(e,n){var t;let i=(t=e==null?void 0:e.config)==null?void 0:t.delegatedSigners;if(n.length!==0){if(i==null||i.length===0)throw new r(`${n.length} delegated signer(s) specified, but wallet "${e.address}" has no delegated signers. ${u}`);for(let a of n)if(i.find(o=>o.locator===a.signer)==null){let o=i.map(d=>d.locator).join(", ");throw new r(`Delegated signer '${a.signer}' does not exist in wallet "${e.address}". Available delegated signers: ${o}. ${u}`)}}}getChainType(e){return e==="solana"?"solana":e==="stellar"?"stellar":"evm"}};export{w as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC3K5DA3Wcjs = require('./chunk-C3K5DA3W.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _ox = require('ox');var _viem = require('viem');var g=class c extends _chunkC3K5DA3Wcjs.a{constructor(n){super(n)}signMessage(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let i=_viem.isHex.call(void 0, n)?n:_viem.toHex.call(void 0, n),r=_ox.PersonalMessage.getSignPayload(i);return yield this.sign(r)})}signTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.sign(n)})}sign(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var s;yield this.handleAuthRequired();let i=this.getJwtOrThrow(),r=n.replace("0x",""),e=yield(s=this.config.clientTEEConnection)==null?void 0:s.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:i,apiKey:this.config.crossmint.apiKey},data:{keyType:"secp256k1",bytes:r,encoding:"hex"}},options:_chunkC3K5DA3Wcjs.b});if((e==null?void 0:e.status)==="error")throw new Error(e.error);if((e==null?void 0:e.signature)==null)throw new Error("Failed to sign transaction");return c.verifyPublicKeyFormat(e.publicKey),{signature:e.signature.bytes}})}static verifyPublicKeyFormat(n){if(n==null)throw new Error("No public key found");if(n.encoding!=="hex"||n.keyType!=="secp256k1"||n.bytes==null)throw new Error("Not supported. Expected public key to be in hex encoding and secp256k1 key type. Got: "+JSON.stringify(n))}};exports.a = g;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _web3js = require('@solana/web3.js');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var o=class{constructor(n){this.config=n;this.type="external-wallet";if(n.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=n.address,this.onSignTransaction=n.onSignTransaction}address(){return this._address}locator(){return this.config.locator}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for solana external wallet signer"))})}signTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.onSignTransaction==null)return yield Promise.reject(new Error("onSignTransaction method is required to sign transactions with a Solana external wallet"));let l=_bs582.default.decode(n),c=_web3js.VersionedTransaction.deserialize(l),t=yield this.onSignTransaction(c),d=new (0, _web3js.PublicKey)(this._address),a=t.message.staticAccountKeys.findIndex(u=>u.equals(d));if(a===-1)throw new (0, _chunkO4FVTK7Xcjs.x)("Wallet public key not found in transaction signers");let s=t.signatures[a];if(s==null)throw new (0, _chunkO4FVTK7Xcjs.x)("No valid signature found in the transaction");let g=new Uint8Array(Object.values(s));return{signature:_bs582.default.encode(g)}})}};exports.a = o;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as i,b as o}from"./chunk-
|
|
1
|
+
import{a as i,b as o}from"./chunk-KRAAV3FK.js";import{f as t}from"./chunk-BW7YYVZE.js";var s=class a extends i{constructor(n){super(n)}signMessage(){return t(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar signer"))})}signTransaction(n){return t(this,null,function*(){var r;yield this.handleAuthRequired();let g=this.getJwtOrThrow(),e=yield(r=this.config.clientTEEConnection)==null?void 0:r.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:g,apiKey:this.config.crossmint.apiKey},data:{keyType:"ed25519",bytes:n,encoding:"base64"}},options:o});if((e==null?void 0:e.status)==="error")throw new Error(e.error);if((e==null?void 0:e.signature)==null)throw new Error("Failed to sign transaction");if(a.verifyPublicKeyFormat(e.publicKey),e.signature.encoding!=="base64")throw new Error("Wrong encoding for signature. Expected base64, got "+e.signature.encoding);return{signature:e.signature.bytes}})}static verifyPublicKeyFormat(n){if(n==null)throw new Error("No public key found");if(n.encoding!=="base64"||n.keyType!=="ed25519"||n.bytes==null)throw new Error("Not supported. Expected public key to be in base64 encoding and ed25519 key type. Got: "+JSON.stringify(n))}};export{s as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as d}from"./chunk-JUSY5XEE.js";import{a as u}from"./chunk-M4ELAV7U.js";import{f as c}from"./chunk-BW7YYVZE.js";import{validateAPIKey as m}from"@crossmint/common-sdk-base";var g=class{constructor(t){this.config=t;this._needsAuth=!0;this._authPromise=null;this.initialize(),this.type=this.config.type}locator(){return this.config.locator}address(){return this.config.address}initialize(){return c(this,null,function*(){if(this.config.clientTEEConnection==null){let t=m(this.config.crossmint.apiKey);if(!t.isValid)throw new Error("Invalid API key");let r=new d({environment:t.environment});this.config.clientTEEConnection=yield r.initialize()}})}handleAuthRequired(){return c(this,null,function*(){var s,o,a;if(this.config.clientTEEConnection==null)throw this.config.onAuthRequired==null?new Error(`${this.type} signer requires the onAuthRequired callback to handle OTP verification. This callback manages the authentication flow (sending OTP and verifying user input). If using our React/React Native SDK, this is handled automatically by the provider. For other environments, implement: onAuthRequired: (needsAuth, sendEmailWithOtp, verifyOtp, reject) => { /* your UI logic */ }`):new Error("Handshake parent not initialized");let t=yield(a=this.config.clientTEEConnection)==null?void 0:a.sendAction({event:"request:get-status",responseEvent:"response:get-status",data:{authData:{jwt:(o=(s=this.config.crossmint.experimental_customAuth)==null?void 0:s.jwt)!=null?o:"",apiKey:this.config.crossmint.apiKey}},options:l});if((t==null?void 0:t.status)!=="success")throw new Error(t==null?void 0:t.error);if(t.signerStatus==="ready"){this._needsAuth=!1;return}let{promise:r,resolve:i,reject:n}=this.createAuthPromise();if(this._authPromise={promise:r,resolve:i,reject:n},this.config.onAuthRequired)try{yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),e=>this.verifyOtp(e),()=>{n(new u),this._needsAuth=!1})}catch(e){n(e)}try{yield r}catch(e){throw e}})}getJwtOrThrow(){var r;let t=(r=this.config.crossmint.experimental_customAuth)==null?void 0:r.jwt;if(t==null)throw new Error("JWT is required");return t}createAuthPromise(){let t,r;return{promise:new Promise((n,s)=>{t=n,r=s}),resolve:t,reject:r}}sendMessageWithOtp(){return c(this,null,function*(){var n,s,o;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let t=this.config.clientTEEConnection,r=this.getAuthId(),i=yield t.sendAction({event:"request:start-onboarding",responseEvent:"response:start-onboarding",data:{authData:{jwt:(s=(n=this.config.crossmint.experimental_customAuth)==null?void 0:n.jwt)!=null?s:"",apiKey:this.config.crossmint.apiKey},data:{authId:r}},options:l});if((i==null?void 0:i.status)==="success"&&i.signerStatus==="ready"){this._needsAuth=!1;return}(i==null?void 0:i.status)==="error"&&(console.error("[sendMessageWithOtp] Failed to send OTP:",i),(o=this._authPromise)==null||o.reject(new Error(i.error||"Failed to initiate OTP process.")))})}getAuthId(){return this.config.type==="email"?`email:${this.config.email}`:`phone:${this.config.phone}`}verifyOtp(t){return c(this,null,function*(){var i,n,s,o,a;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let r=this.config.clientTEEConnection;try{let e=yield r.sendAction({event:"request:complete-onboarding",responseEvent:"response:complete-onboarding",data:{authData:{jwt:(n=(i=this.config.crossmint.experimental_customAuth)==null?void 0:i.jwt)!=null?n:"",apiKey:this.config.crossmint.apiKey},data:{onboardingAuthentication:{encryptedOtp:t}}},options:l});if((e==null?void 0:e.status)==="success"){this._needsAuth=!1,this.config.onAuthRequired!=null&&(yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),h=>this.verifyOtp(h),()=>{var h;return(h=this._authPromise)==null?void 0:h.reject(new u)})),(s=this._authPromise)==null||s.resolve();return}console.error("[verifyOtp] Failed to validate OTP:",e),this._needsAuth=!0;let f=(e==null?void 0:e.status)==="error"?e.error:"Failed to validate encrypted OTP";(o=this._authPromise)==null||o.reject(new Error(f))}catch(e){throw console.error("[verifyOtp] Error sending OTP validation request:",e),this._needsAuth=!0,(a=this._authPromise)==null||a.reject(e),e}})}},l={timeoutMs:1e4,intervalMs:5e3};export{g as a,l as b};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var s="@crossmint/wallets-sdk",t="0.12.1";var r="WALLETS_SDK",c=t,a=s,d=500;export{r as a,c as b,a as c,d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var n=class{constructor(e){this.config=e;this.type="external-wallet";if(e.address==null)throw new Error("Please provide an address for the External Wallet Signer");this._address=e.address,this.provider=e.provider,this.viemAccount=e.viemAccount}address(){return this._address}locator(){return this.config.locator}signMessage(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var s;if(this.provider!=null){let r=yield this.provider.request({method:"personal_sign",params:[e,this._address]});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: EIP1193 provider signMessage returned null");return{signature:r}}if(((s=this.viemAccount)==null?void 0:s.signMessage)!=null){let r=yield this.viemAccount.signMessage({message:{raw:e}});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: Viem account signMessage returned null");return{signature:r}}throw new Error("No signer provider or viem account provided")})}signTransaction(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.signMessage(e)})}};exports.a = n;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC3K5DA3Wcjs = require('./chunk-C3K5DA3W.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var s=class a extends _chunkC3K5DA3Wcjs.a{constructor(n){super(n)}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar signer"))})}signTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var r;yield this.handleAuthRequired();let g=this.getJwtOrThrow(),e=yield(r=this.config.clientTEEConnection)==null?void 0:r.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:g,apiKey:this.config.crossmint.apiKey},data:{keyType:"ed25519",bytes:n,encoding:"base64"}},options:_chunkC3K5DA3Wcjs.b});if((e==null?void 0:e.status)==="error")throw new Error(e.error);if((e==null?void 0:e.signature)==null)throw new Error("Failed to sign transaction");if(a.verifyPublicKeyFormat(e.publicKey),e.signature.encoding!=="base64")throw new Error("Wrong encoding for signature. Expected base64, got "+e.signature.encoding);return{signature:e.signature.bytes}})}static verifyPublicKeyFormat(n){if(n==null)throw new Error("No public key found");if(n.encoding!=="base64"||n.keyType!=="ed25519"||n.bytes==null)throw new Error("Not supported. Expected public key to be in base64 encoding and ed25519 key type. Got: "+JSON.stringify(n))}};exports.a = s;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVMBMJTB4cjs = require('./chunk-VMBMJTB4.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkCU6FZ36Vcjs = require('./chunk-CU6FZ36V.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _viem = require('viem');var _commonsdkbase = require('@crossmint/common-sdk-base');var m=class w extends _chunkVMBMJTB4cjs.a{constructor(t){super({chain:t.chain,address:t.address,owner:t.owner,signer:t.signer,options:_chunkVMBMJTB4cjs.a.getOptions(t)},_chunkVMBMJTB4cjs.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:_chunkCU6FZ36Vcjs.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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as i,b as s}from"./chunk-
|
|
1
|
+
import{a as i,b as s}from"./chunk-KRAAV3FK.js";import{f as t}from"./chunk-BW7YYVZE.js";import{VersionedTransaction as y}from"@solana/web3.js";import o from"bs58";var a=class g extends i{constructor(e){super(e)}signMessage(){return t(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for email signer"))})}signTransaction(e){return t(this,null,function*(){var r;yield this.handleAuthRequired();let c=this.getJwtOrThrow(),d=o.decode(e),l=y.deserialize(d).message.serialize(),n=yield(r=this.config.clientTEEConnection)==null?void 0:r.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:c,apiKey:this.config.crossmint.apiKey},data:{keyType:"ed25519",bytes:o.encode(l),encoding:"base58"}},options:s});if((n==null?void 0:n.status)==="error")throw new Error(n.error);if((n==null?void 0:n.signature)==null)throw new Error("Failed to sign transaction");return g.verifyPublicKeyFormat(n.publicKey),{signature:n.signature.bytes}})}static verifyPublicKeyFormat(e){if(e==null)throw new Error("No public key found");if(e.encoding!=="base58"||e.keyType!=="ed25519"||e.bytes==null)throw new Error("Not supported. Expected public key to be in base58 encoding and ed25519 key type. Got: "+JSON.stringify(e))}};export{a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkVMBMJTB4cjs = require('./chunk-VMBMJTB4.cjs');var _chunkHRSVFJNDcjs = require('./chunk-HRSVFJND.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 _chunkVMBMJTB4cjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkVMBMJTB4cjs.a.getOptions(n)},_chunkVMBMJTB4cjs.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, _chunkHRSVFJNDcjs.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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkC3K5DA3Wcjs = require('./chunk-C3K5DA3W.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _web3js = require('@solana/web3.js');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var a=class g extends _chunkC3K5DA3Wcjs.a{constructor(e){super(e)}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for email signer"))})}signTransaction(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var r;yield this.handleAuthRequired();let c=this.getJwtOrThrow(),d=_bs582.default.decode(e),l=_web3js.VersionedTransaction.deserialize(d).message.serialize(),n=yield(r=this.config.clientTEEConnection)==null?void 0:r.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:c,apiKey:this.config.crossmint.apiKey},data:{keyType:"ed25519",bytes:_bs582.default.encode(l),encoding:"base58"}},options:_chunkC3K5DA3Wcjs.b});if((n==null?void 0:n.status)==="error")throw new Error(n.error);if((n==null?void 0:n.signature)==null)throw new Error("Failed to sign transaction");return g.verifyPublicKeyFormat(n.publicKey),{signature:n.signature.bytes}})}static verifyPublicKeyFormat(e){if(e==null)throw new Error("No public key found");if(e.encoding!=="base58"||e.keyType!=="ed25519"||e.bytes==null)throw new Error("Not supported. Expected public key to be in base58 encoding and ed25519 key type. Got: "+JSON.stringify(e))}};exports.a = a;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkUT2U6NWWcjs = require('./chunk-UT2U6NWW.cjs');var _chunkNPXTLMYScjs = require('./chunk-NPXTLMYS.cjs');var _chunkGNL4RC2Acjs = require('./chunk-GNL4RC2A.cjs');var _chunkYWPTI2QOcjs = require('./chunk-YWPTI2QO.cjs');var _chunk4KXOWU5Ecjs = require('./chunk-4KXOWU5E.cjs');var _chunkHRSVFJNDcjs = require('./chunk-HRSVFJND.cjs');var _chunkC3T63EC7cjs = require('./chunk-C3T63EC7.cjs');var _chunkYZ4HRYSLcjs = require('./chunk-YZ4HRYSL.cjs');var _chunkM4TOGGLVcjs = require('./chunk-M4TOGGLV.cjs');function E(r,e){switch(e.type){case"email":case"phone":return r==="solana"?new (0, _chunkUT2U6NWWcjs.a)(e):r==="stellar"?new (0, _chunkNPXTLMYScjs.a)(e):new (0, _chunkGNL4RC2Acjs.a)(e);case"api-key":return r==="solana"?new (0, _chunk4KXOWU5Ecjs.a)(e):new (0, _chunkYZ4HRYSLcjs.a)(e);case"external-wallet":return r==="solana"?new (0, _chunkHRSVFJNDcjs.a)(e):r==="stellar"?new (0, _chunkC3T63EC7cjs.a)(e):new (0, _chunkM4TOGGLVcjs.a)(e);case"passkey":return new (0, _chunkYWPTI2QOcjs.a)(e)}}exports.a = E;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as o,b as a}from"./chunk-
|
|
1
|
+
import{a as o,b as a}from"./chunk-KRAAV3FK.js";import{f as t}from"./chunk-BW7YYVZE.js";import{PersonalMessage as p}from"ox";import{isHex as y,toHex as l}from"viem";var g=class c extends o{constructor(n){super(n)}signMessage(n){return t(this,null,function*(){let i=y(n)?n:l(n),r=p.getSignPayload(i);return yield this.sign(r)})}signTransaction(n){return t(this,null,function*(){return yield this.sign(n)})}sign(n){return t(this,null,function*(){var s;yield this.handleAuthRequired();let i=this.getJwtOrThrow(),r=n.replace("0x",""),e=yield(s=this.config.clientTEEConnection)==null?void 0:s.sendAction({event:"request:sign",responseEvent:"response:sign",data:{authData:{jwt:i,apiKey:this.config.crossmint.apiKey},data:{keyType:"secp256k1",bytes:r,encoding:"hex"}},options:a});if((e==null?void 0:e.status)==="error")throw new Error(e.error);if((e==null?void 0:e.signature)==null)throw new Error("Failed to sign transaction");return c.verifyPublicKeyFormat(e.publicKey),{signature:e.signature.bytes}})}static verifyPublicKeyFormat(n){if(n==null)throw new Error("No public key found");if(n.encoding!=="hex"||n.keyType!=="secp256k1"||n.bytes==null)throw new Error("Not supported. Expected public key to be in hex encoding and secp256k1 key type. Got: "+JSON.stringify(n))}};export{g as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk5ZV3IIIYcjs = require('./chunk-5ZV3IIIY.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var m,c,G= exports.a =class{constructor(r,e){_chunkXALFCQKDcjs.d.call(void 0, this,m);_chunkXALFCQKDcjs.d.call(void 0, this,c);let{chain:t,address:n,owner:s,signer:d,options:g}=r;_chunkXALFCQKDcjs.e.call(void 0, this,c,e),this.chain=t,this.address=n,this.owner=s,this.signer=d,_chunkXALFCQKDcjs.e.call(void 0, this,m,g)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,c)}get options(){return _chunkXALFCQKDcjs.c.call(void 0, this,m)}experimental_apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,c)}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,c).getBalance(this.address,{chains:e!=null?e:[this.chain],tokens:n});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 f,w,v,T,y;let o=(f=a.chains)==null?void 0:f[this.chain],h=o!=null&&"contractAddress"in o?o.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.name)!=null?v:"",amount:(T=a.amount)!=null?T:"0",contractAddress:h,decimals:a.decimals,rawAmount:(y=a.rawAmount)!=null?y:"0"}},s=r.find(a=>a.symbol===e),d=r.find(a=>a.symbol==="usdc"),g=r.filter(a=>{var o;return a.symbol!==e&&a.symbol!=="usdc"&&(t==null?void 0:t.includes((o=a.symbol)!=null?o:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(e),usdc:d!=null?n(d):i("usdc"),tokens:g.map(n)}}experimental_nfts(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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,c).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),d=M(e,this.chain),g={recipient:s,amount:t},i=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).send(this.walletLocator,d,g);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,c).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&&e.transaction!=null){let n=e.transaction.id;yield this.approveTransactionAndWait(n)}else if("chains"in e){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,c).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 d=s.locator.indexOf(":");return{signer:`external-wallet:${d>=0?s.locator.slice(d+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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 o=[e.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,o)}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],g=(yield Promise.all(n.map(o=>{let h=s.find(f=>f.locator()===o.signer.locator);if(h==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${o.signer} not found in pending approvals`);return h.signMessage(o.message)}))).map(o=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},o),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,g)})}approveTransactionInternal(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a,o,h,f;let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).getTransaction(this.walletLocator,r);if("error"in t)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(t));if(yield(o=(a=(i=_chunkXALFCQKDcjs.c.call(void 0, this,m))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:o.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=[...(f=e==null?void 0:e.additionalSigners)!=null?f:[],this.signer],g=(yield Promise.all(n.map(w=>{let v=s.find(y=>y.locator()===w.signer.locator);if(v==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${w.signer} not found in pending approvals`);let T=t.chainType==="solana"&&"transaction"in t.onChain?t.onChain.transaction:w.message;return v.signTransaction(T)}))).map(w=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,g)})}executeApproveTransactionWithErrorHandling(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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,_chunk5ZV3IIIYcjs.d)),e=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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(d){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*(r,e=6e4,{backoffMultiplier:t=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=_chunk5ZV3IIIYcjs.d}={}){var o;let g=Date.now(),i;do{if(Date.now()-g>e)throw new (0, _chunkO4FVTK7Xcjs.t)("Transaction confirmation timeout");if(i=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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:(o=i.onChain.explorerLink)!=null?o:"",transactionId:i.id}})}sleep(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return new Promise(e=>setTimeout(e,r))})}};m=new WeakMap,c=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;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7SA335PZcjs = require('./chunk-7SA335PZ.cjs');var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var m,c,G= exports.a =class{constructor(r,e){_chunkXALFCQKDcjs.d.call(void 0, this,m);_chunkXALFCQKDcjs.d.call(void 0, this,c);let{chain:t,address:n,owner:s,signer:d,options:g}=r;_chunkXALFCQKDcjs.e.call(void 0, this,c,e),this.chain=t,this.address=n,this.owner=s,this.signer=d,_chunkXALFCQKDcjs.e.call(void 0, this,m,g)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,c)}get options(){return _chunkXALFCQKDcjs.c.call(void 0, this,m)}experimental_apiClient(){return _chunkXALFCQKDcjs.c.call(void 0, this,c)}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,c).getBalance(this.address,{chains:e!=null?e:[this.chain],tokens:n});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 f,w,v,T,y;let o=(f=a.chains)==null?void 0:f[this.chain],h=o!=null&&"contractAddress"in o?o.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.name)!=null?v:"",amount:(T=a.amount)!=null?T:"0",contractAddress:h,decimals:a.decimals,rawAmount:(y=a.rawAmount)!=null?y:"0"}},s=r.find(a=>a.symbol===e),d=r.find(a=>a.symbol==="usdc"),g=r.filter(a=>{var o;return a.symbol!==e&&a.symbol!=="usdc"&&(t==null?void 0:t.includes((o=a.symbol)!=null?o:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(e),usdc:d!=null?n(d):i("usdc"),tokens:g.map(n)}}experimental_nfts(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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,c).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),d=M(e,this.chain),g={recipient:s,amount:t},i=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).send(this.walletLocator,d,g);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,c).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&&e.transaction!=null){let n=e.transaction.id;yield this.approveTransactionAndWait(n)}else if("chains"in e){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,c).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 d=s.locator.indexOf(":");return{signer:`external-wallet:${d>=0?s.locator.slice(d+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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 o=[e.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,o)}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],g=(yield Promise.all(n.map(o=>{let h=s.find(f=>f.locator()===o.signer.locator);if(h==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${o.signer} not found in pending approvals`);return h.signMessage(o.message)}))).map(o=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},o),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,g)})}approveTransactionInternal(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,a,o,h,f;let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).getTransaction(this.walletLocator,r);if("error"in t)throw new (0, _chunkO4FVTK7Xcjs.s)(JSON.stringify(t));if(yield(o=(a=(i=_chunkXALFCQKDcjs.c.call(void 0, this,m))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:o.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=[...(f=e==null?void 0:e.additionalSigners)!=null?f:[],this.signer],g=(yield Promise.all(n.map(w=>{let v=s.find(y=>y.locator()===w.signer.locator);if(v==null)throw new (0, _chunkO4FVTK7Xcjs.i)(`Signer ${w.signer} not found in pending approvals`);let T=t.chainType==="solana"&&"transaction"in t.onChain?t.onChain.transaction:w.message;return v.signTransaction(T)}))).map(w=>_chunkXALFCQKDcjs.b.call(void 0, _chunkXALFCQKDcjs.a.call(void 0, {},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,g)})}executeApproveTransactionWithErrorHandling(r,e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){let t=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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,c).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,_chunk7SA335PZcjs.d)),e=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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(d){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*(r,e=6e4,{backoffMultiplier:t=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=_chunk7SA335PZcjs.d}={}){var o;let g=Date.now(),i;do{if(Date.now()-g>e)throw new (0, _chunkO4FVTK7Xcjs.t)("Transaction confirmation timeout");if(i=yield _chunkXALFCQKDcjs.c.call(void 0, this,c).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:(o=i.onChain.explorerLink)!=null?o:"",transactionId:i.id}})}sleep(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return new Promise(e=>setTimeout(e,r))})}};m=new WeakMap,c=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;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as n,c as i}from"./chunk-
|
|
1
|
+
import{b as n,c as i}from"./chunk-LE7DYESO.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 +1 @@
|
|
|
1
|
-
import{d as O}from"./chunk-
|
|
1
|
+
import{d as O}from"./chunk-LE7DYESO.js";import{c as L,d as P,i as E,m as N,p as b,q as _,r as $,s as W,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 l}from"./chunk-BW7YYVZE.js";import{isValidAddress as k}from"@crossmint/common-sdk-base";var m,c,G=class{constructor(r,e){x(this,m);x(this,c);let{chain:t,address:n,owner:s,signer:d,options:g}=r;C(this,c,e),this.chain=t,this.address=n,this.owner=s,this.signer=d,C(this,m,g)}static getApiClient(r){return r.apiClient}static getOptions(r){return r.options}get apiClient(){return p(this,c)}get options(){return p(this,m)}experimental_apiClient(){return p(this,c)}balances(r,e){return l(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,c).getBalance(this.address,{chains:e!=null?e:[this.chain],tokens:n});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 f,w,v,T,y;let o=(f=a.chains)==null?void 0:f[this.chain],h=o!=null&&"contractAddress"in o?o.contractAddress:void 0;return{symbol:(w=a.symbol)!=null?w:"",name:(v=a.name)!=null?v:"",amount:(T=a.amount)!=null?T:"0",contractAddress:h,decimals:a.decimals,rawAmount:(y=a.rawAmount)!=null?y:"0"}},s=r.find(a=>a.symbol===e),d=r.find(a=>a.symbol==="usdc"),g=r.filter(a=>{var o;return a.symbol!==e&&a.symbol!=="usdc"&&(t==null?void 0:t.includes((o=a.symbol)!=null?o:""))}),i=a=>({symbol:a,name:a,amount:"0",contractAddress:void 0,decimals:0,rawAmount:"0"});return{nativeToken:s!=null?n(s):i(e),usdc:d!=null?n(d):i("usdc"),tokens:g.map(n)}}experimental_nfts(r){return l(this,null,function*(){return yield p(this,c).experimental_getNfts(A(S({},r),{chain:this.chain,address:this.address}))})}experimental_transactions(){return l(this,null,function*(){let r=yield p(this,c).getTransactions(this.walletLocator);if("error"in r)throw new Error(`Failed to get transactions: ${JSON.stringify(r.message)}`);return r})}experimental_transaction(r){return l(this,null,function*(){let e=yield p(this,c).getTransaction(this.walletLocator,r);if("error"in e)throw new Error(`Failed to get transaction: ${JSON.stringify(e.error)}`);return e})}experimental_activity(){return l(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 l(this,null,function*(){let s=H(r),d=M(e,this.chain),g={recipient:s,amount:t},i=yield p(this,c).send(this.walletLocator,d,g);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 l(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 l(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 l(this,null,function*(){var t;let e=yield p(this,c).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&&e.transaction!=null){let n=e.transaction.id;yield this.approveTransactionAndWait(n)}else if("chains"in e){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 l(this,null,function*(){var e,t,n;let r=yield p(this,c).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 L(`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 d=s.locator.indexOf(":");return{signer:`external-wallet:${d>=0?s.locator.slice(d+1):s.locator}`}}))!=null?n:[]})}get walletLocator(){return p(this,c).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 l(this,null,function*(){return yield this.approveTransactionInternal(r,e),yield this.sleep(1e3),yield this.waitForTransaction(r)})}approveSignatureAndWait(r,e){return l(this,null,function*(){return yield this.approveSignatureInternal(r,e),yield this.sleep(1e3),yield this.waitForSignature(r)})}approveSignatureInternal(r,e){return l(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,c).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 o=[e.experimental_approval];return yield this.executeApproveSignatureWithErrorHandling(r,o)}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],g=(yield Promise.all(n.map(o=>{let h=s.find(f=>f.locator()===o.signer.locator);if(h==null)throw new E(`Signer ${o.signer} not found in pending approvals`);return h.signMessage(o.message)}))).map(o=>A(S({},o),{signer:this.signer.locator()}));return yield this.executeApproveSignatureWithErrorHandling(r,g)})}approveTransactionInternal(r,e){return l(this,null,function*(){var i,a,o,h,f;let t=yield p(this,c).getTransaction(this.walletLocator,r);if("error"in t)throw new W(JSON.stringify(t));if(yield(o=(a=(i=p(this,m))==null?void 0:i.experimental_callbacks)==null?void 0:a.onTransactionStart)==null?void 0:o.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=[...(f=e==null?void 0:e.additionalSigners)!=null?f:[],this.signer],g=(yield Promise.all(n.map(w=>{let v=s.find(y=>y.locator()===w.signer.locator);if(v==null)throw new E(`Signer ${w.signer} not found in pending approvals`);let T=t.chainType==="solana"&&"transaction"in t.onChain?t.onChain.transaction:w.message;return v.signTransaction(T)}))).map(w=>A(S({},w),{signer:this.signer.locator()}));return yield this.executeApproveTransactionWithErrorHandling(r,g)})}executeApproveTransactionWithErrorHandling(r,e){return l(this,null,function*(){let t=yield p(this,c).approveTransaction(this.walletLocator,r,{approvals:e});if(t.error)throw new J(JSON.stringify(t));return t})}executeApproveSignatureWithErrorHandling(r,e){return l(this,null,function*(){let t=yield p(this,c).approveSignature(this.walletLocator,r,{approvals:e});if(t.error)throw new _(JSON.stringify(t));return t})}waitForSignature(r){return l(this,null,function*(){let e=null;do if(yield new Promise(t=>setTimeout(t,O)),e=yield p(this,c).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(d){return l(this,arguments,function*(r,e=6e4,{backoffMultiplier:t=1.1,maxBackoffMs:n=2e3,initialBackoffMs:s=O}={}){var o;let g=Date.now(),i;do{if(Date.now()-g>e)throw new I("Transaction confirmation timeout");if(i=yield p(this,c).getTransaction(this.walletLocator,r),i.error)throw new W(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:(o=i.onChain.explorerLink)!=null?o:"",transactionId:i.id}})}sleep(r){return l(this,null,function*(){return new Promise(e=>setTimeout(e,r))})}};m=new WeakMap,c=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
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVMBMJTB4cjs = require('./chunk-VMBMJTB4.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 _chunkVMBMJTB4cjs.a{constructor(n){super({chain:n.chain,address:n.address,owner:n.owner,signer:n.signer,options:_chunkVMBMJTB4cjs.a.getOptions(n)},_chunkVMBMJTB4cjs.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 t;let e=yield this.createTransaction(n);if((t=n.options)!=null&&t.experimental_prepareOnly)return{hash:void 0,explorerLink:void 0,transactionId:e.id};let r={};return yield this.approveTransactionAndWait(e.id,r)})}createTransaction(x){return _chunkXALFCQKDcjs.f.call(void 0, this,arguments,function*({contractId:n,method:e,memo:r,args:t,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:r!=null?{type:"text",value:r}:void 0,args:t},signer:u}});if("error"in s)throw new (0, _chunkO4FVTK7Xcjs.r)(JSON.stringify(s));return s})}};exports.a = l;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as l}from"./chunk-
|
|
1
|
+
import{a as l}from"./chunk-F6KWHHYO.js";import{a}from"./chunk-WNJB4XC7.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};
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPPS37EJLcjs = require('./chunk-PPS37EJL.cjs');var _chunkSYCCYHLTcjs = require('./chunk-SYCCYHLT.cjs');var _chunkZO4PSHX2cjs = require('./chunk-ZO4PSHX2.cjs');var _chunkCP3N5Q3Ccjs = require('./chunk-CP3N5Q3C.cjs');require('./chunk-CARVGLYT.cjs');require('./chunk-23BRREJG.cjs');var _chunkVMBMJTB4cjs = require('./chunk-VMBMJTB4.cjs');require('./chunk-UZXJ5FAA.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-UT2U6NWW.cjs');require('./chunk-NPXTLMYS.cjs');require('./chunk-GNL4RC2A.cjs');require('./chunk-C3K5DA3W.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-HRSVFJND.cjs');require('./chunk-C3T63EC7.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');var _chunk2DDIFY2Ccjs = require('./chunk-2DDIFY2C.cjs');require('./chunk-7SA335PZ.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-CU6FZ36V.cjs');require('./chunk-IR5WN6FQ.cjs');require('./chunk-GEY574TH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-M4TOGGLV.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkCP3N5Q3Ccjs.b; exports.EVMWallet = _chunkPPS37EJLcjs.a; exports.SolanaWallet = _chunkSYCCYHLTcjs.a; exports.StellarWallet = _chunkZO4PSHX2cjs.a; exports.Wallet = _chunkVMBMJTB4cjs.a; exports.WalletsApiClient = _chunk2DDIFY2Ccjs.a; exports.createCrossmint = _chunkCP3N5Q3Ccjs.a;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as r}from"./chunk-
|
|
1
|
+
import{a as r}from"./chunk-2FBU6EOX.js";import{a as l}from"./chunk-BMGQVO4K.js";import{a as i}from"./chunk-6433AT57.js";import{a as n,b as t}from"./chunk-ZTVEOVAQ.js";import"./chunk-F6KWHHYO.js";import"./chunk-BHGNJYYE.js";import{a}from"./chunk-XFNHQ4RR.js";import"./chunk-7BEMA3KG.js";import"./chunk-YDZRBHS3.js";import"./chunk-SK57FHH2.js";import"./chunk-HWWYX2CY.js";import"./chunk-V7O6CCYZ.js";import"./chunk-KRAAV3FK.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-6PVKL5RC.js";import"./chunk-2SHDBC47.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import{a as e}from"./chunk-WNJB4XC7.js";import"./chunk-LE7DYESO.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-I5COKXOT.js";import"./chunk-KKQBZXFE.js";import"./chunk-S3DYQVRD.js";import"./chunk-LW6JSI4J.js";import"./chunk-3APSOOE3.js";import"./chunk-BW7YYVZE.js";export{t as CrossmintWallets,r as EVMWallet,l as SolanaWallet,i 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
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCP3N5Q3Ccjs = require('./chunk-CP3N5Q3C.cjs');require('./chunk-CARVGLYT.cjs');require('./chunk-23BRREJG.cjs');require('./chunk-VMBMJTB4.cjs');require('./chunk-UZXJ5FAA.cjs');require('./chunk-PO6S7UR3.cjs');require('./chunk-UT2U6NWW.cjs');require('./chunk-NPXTLMYS.cjs');require('./chunk-GNL4RC2A.cjs');require('./chunk-C3K5DA3W.cjs');require('./chunk-MQP5VZCA.cjs');require('./chunk-YWPTI2QO.cjs');require('./chunk-4KXOWU5E.cjs');require('./chunk-HRSVFJND.cjs');require('./chunk-C3T63EC7.cjs');require('./chunk-ZSWIQU3U.cjs');require('./chunk-6HXIZLEQ.cjs');require('./chunk-2DDIFY2C.cjs');require('./chunk-7SA335PZ.cjs');require('./chunk-O4FVTK7X.cjs');require('./chunk-ECAM5KTH.cjs');require('./chunk-YZ4HRYSL.cjs');require('./chunk-M4TOGGLV.cjs');require('./chunk-XALFCQKD.cjs');exports.CrossmintWallets = _chunkCP3N5Q3Ccjs.b; exports.createCrossmint = _chunkCP3N5Q3Ccjs.a;
|
package/dist/sdk.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"./chunk-
|
|
1
|
+
import{a,b}from"./chunk-ZTVEOVAQ.js";import"./chunk-F6KWHHYO.js";import"./chunk-BHGNJYYE.js";import"./chunk-XFNHQ4RR.js";import"./chunk-7BEMA3KG.js";import"./chunk-YDZRBHS3.js";import"./chunk-SK57FHH2.js";import"./chunk-HWWYX2CY.js";import"./chunk-V7O6CCYZ.js";import"./chunk-KRAAV3FK.js";import"./chunk-JUSY5XEE.js";import"./chunk-UBOWSXW3.js";import"./chunk-IGBQEAD5.js";import"./chunk-6PVKL5RC.js";import"./chunk-2SHDBC47.js";import"./chunk-M4ELAV7U.js";import"./chunk-5IFDVB4Y.js";import"./chunk-WNJB4XC7.js";import"./chunk-LE7DYESO.js";import"./chunk-PSXRNSOE.js";import"./chunk-KBJA7JDT.js";import"./chunk-LW6JSI4J.js";import"./chunk-3APSOOE3.js";import"./chunk-BW7YYVZE.js";export{b as CrossmintWallets,a as createCrossmint};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkM4TOGGLVcjs = require('../chunk-M4TOGGLV.cjs');require('../chunk-XALFCQKD.cjs');exports.EVMExternalWalletSigner = _chunkM4TOGGLVcjs.a;
|
|
@@ -9,10 +9,11 @@ import '@crossmint/client-signers';
|
|
|
9
9
|
declare class EVMExternalWalletSigner implements Signer {
|
|
10
10
|
private config;
|
|
11
11
|
type: "external-wallet";
|
|
12
|
-
|
|
12
|
+
private _address;
|
|
13
13
|
provider?: GenericEIP1193Provider | EIP1193Provider;
|
|
14
14
|
viemAccount?: Account;
|
|
15
15
|
constructor(config: ExternalWalletInternalSignerConfig<EVMChain>);
|
|
16
|
+
address(): string;
|
|
16
17
|
locator(): string;
|
|
17
18
|
signMessage(message: string): Promise<{
|
|
18
19
|
signature: any;
|
|
@@ -9,10 +9,11 @@ import '@crossmint/client-signers';
|
|
|
9
9
|
declare class EVMExternalWalletSigner implements Signer {
|
|
10
10
|
private config;
|
|
11
11
|
type: "external-wallet";
|
|
12
|
-
|
|
12
|
+
private _address;
|
|
13
13
|
provider?: GenericEIP1193Provider | EIP1193Provider;
|
|
14
14
|
viemAccount?: Account;
|
|
15
15
|
constructor(config: ExternalWalletInternalSignerConfig<EVMChain>);
|
|
16
|
+
address(): string;
|
|
16
17
|
locator(): string;
|
|
17
18
|
signMessage(message: string): Promise<{
|
|
18
19
|
signature: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-3APSOOE3.js";import"../chunk-BW7YYVZE.js";export{a as EVMExternalWalletSigner};
|
package/dist/signers/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkUZXJ5FAAcjs = require('../chunk-UZXJ5FAA.cjs');require('../chunk-PO6S7UR3.cjs');require('../chunk-UT2U6NWW.cjs');require('../chunk-NPXTLMYS.cjs');require('../chunk-GNL4RC2A.cjs');require('../chunk-C3K5DA3W.cjs');require('../chunk-MQP5VZCA.cjs');require('../chunk-YWPTI2QO.cjs');require('../chunk-4KXOWU5E.cjs');require('../chunk-HRSVFJND.cjs');require('../chunk-C3T63EC7.cjs');require('../chunk-ZSWIQU3U.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-YZ4HRYSL.cjs');require('../chunk-M4TOGGLV.cjs');require('../chunk-XALFCQKD.cjs');exports.assembleSigner = _chunkUZXJ5FAAcjs.a;
|
package/dist/signers/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-7BEMA3KG.js";import"../chunk-YDZRBHS3.js";import"../chunk-SK57FHH2.js";import"../chunk-HWWYX2CY.js";import"../chunk-V7O6CCYZ.js";import"../chunk-KRAAV3FK.js";import"../chunk-JUSY5XEE.js";import"../chunk-UBOWSXW3.js";import"../chunk-IGBQEAD5.js";import"../chunk-6PVKL5RC.js";import"../chunk-2SHDBC47.js";import"../chunk-M4ELAV7U.js";import"../chunk-PSXRNSOE.js";import"../chunk-LW6JSI4J.js";import"../chunk-3APSOOE3.js";import"../chunk-BW7YYVZE.js";export{a as assembleSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-PO6S7UR3.cjs');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../../chunk-PO6S7UR3.cjs');var _chunkUT2U6NWWcjs = require('../../chunk-UT2U6NWW.cjs');var _chunkNPXTLMYScjs = require('../../chunk-NPXTLMYS.cjs');var _chunkGNL4RC2Acjs = require('../../chunk-GNL4RC2A.cjs');var _chunkC3K5DA3Wcjs = require('../../chunk-C3K5DA3W.cjs');require('../../chunk-MQP5VZCA.cjs');require('../../chunk-ZSWIQU3U.cjs');require('../../chunk-XALFCQKD.cjs');exports.DEFAULT_EVENT_OPTIONS = _chunkC3K5DA3Wcjs.b; exports.EVMNonCustodialSigner = _chunkGNL4RC2Acjs.a; exports.NonCustodialSigner = _chunkC3K5DA3Wcjs.a; exports.SolanaNonCustodialSigner = _chunkUT2U6NWWcjs.a; exports.StellarNonCustodialSigner = _chunkNPXTLMYScjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../chunk-YDZRBHS3.js";import{a as c}from"../../chunk-
|
|
1
|
+
import"../../chunk-YDZRBHS3.js";import{a as c}from"../../chunk-SK57FHH2.js";import{a as e}from"../../chunk-HWWYX2CY.js";import{a as d}from"../../chunk-V7O6CCYZ.js";import{a,b}from"../../chunk-KRAAV3FK.js";import"../../chunk-JUSY5XEE.js";import"../../chunk-M4ELAV7U.js";import"../../chunk-BW7YYVZE.js";export{b as DEFAULT_EVENT_OPTIONS,d as EVMNonCustodialSigner,a as NonCustodialSigner,c as SolanaNonCustodialSigner,e as StellarNonCustodialSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkGNL4RC2Acjs = require('../../chunk-GNL4RC2A.cjs');require('../../chunk-C3K5DA3W.cjs');require('../../chunk-MQP5VZCA.cjs');require('../../chunk-ZSWIQU3U.cjs');require('../../chunk-XALFCQKD.cjs');exports.EVMNonCustodialSigner = _chunkGNL4RC2Acjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-V7O6CCYZ.js";import"../../chunk-KRAAV3FK.js";import"../../chunk-JUSY5XEE.js";import"../../chunk-M4ELAV7U.js";import"../../chunk-BW7YYVZE.js";export{a as EVMNonCustodialSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC3K5DA3Wcjs = require('../../chunk-C3K5DA3W.cjs');require('../../chunk-MQP5VZCA.cjs');require('../../chunk-ZSWIQU3U.cjs');require('../../chunk-XALFCQKD.cjs');exports.DEFAULT_EVENT_OPTIONS = _chunkC3K5DA3Wcjs.b; exports.NonCustodialSigner = _chunkC3K5DA3Wcjs.a;
|
|
@@ -13,6 +13,7 @@ declare abstract class NonCustodialSigner implements Signer {
|
|
|
13
13
|
private _authPromise;
|
|
14
14
|
constructor(config: EmailInternalSignerConfig | PhoneInternalSignerConfig);
|
|
15
15
|
locator(): string;
|
|
16
|
+
address(): string;
|
|
16
17
|
abstract signMessage(message: string): Promise<BaseSignResult>;
|
|
17
18
|
private initialize;
|
|
18
19
|
abstract signTransaction(transaction: string): Promise<{
|
|
@@ -13,6 +13,7 @@ declare abstract class NonCustodialSigner implements Signer {
|
|
|
13
13
|
private _authPromise;
|
|
14
14
|
constructor(config: EmailInternalSignerConfig | PhoneInternalSignerConfig);
|
|
15
15
|
locator(): string;
|
|
16
|
+
address(): string;
|
|
16
17
|
abstract signMessage(message: string): Promise<BaseSignResult>;
|
|
17
18
|
private initialize;
|
|
18
19
|
abstract signTransaction(transaction: string): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"../../chunk-
|
|
1
|
+
import{a,b}from"../../chunk-KRAAV3FK.js";import"../../chunk-JUSY5XEE.js";import"../../chunk-M4ELAV7U.js";import"../../chunk-BW7YYVZE.js";export{b as DEFAULT_EVENT_OPTIONS,a as NonCustodialSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkUT2U6NWWcjs = require('../../chunk-UT2U6NWW.cjs');require('../../chunk-C3K5DA3W.cjs');require('../../chunk-MQP5VZCA.cjs');require('../../chunk-ZSWIQU3U.cjs');require('../../chunk-XALFCQKD.cjs');exports.SolanaNonCustodialSigner = _chunkUT2U6NWWcjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-SK57FHH2.js";import"../../chunk-KRAAV3FK.js";import"../../chunk-JUSY5XEE.js";import"../../chunk-M4ELAV7U.js";import"../../chunk-BW7YYVZE.js";export{a as SolanaNonCustodialSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkNPXTLMYScjs = require('../../chunk-NPXTLMYS.cjs');require('../../chunk-C3K5DA3W.cjs');require('../../chunk-MQP5VZCA.cjs');require('../../chunk-ZSWIQU3U.cjs');require('../../chunk-XALFCQKD.cjs');exports.StellarNonCustodialSigner = _chunkNPXTLMYScjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../../chunk-
|
|
1
|
+
import{a}from"../../chunk-HWWYX2CY.js";import"../../chunk-KRAAV3FK.js";import"../../chunk-JUSY5XEE.js";import"../../chunk-M4ELAV7U.js";import"../../chunk-BW7YYVZE.js";export{a as StellarNonCustodialSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkHRSVFJNDcjs = require('../chunk-HRSVFJND.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.SolanaExternalWalletSigner = _chunkHRSVFJNDcjs.a;
|
|
@@ -10,9 +10,10 @@ import 'viem';
|
|
|
10
10
|
declare class SolanaExternalWalletSigner implements Signer {
|
|
11
11
|
private config;
|
|
12
12
|
type: "external-wallet";
|
|
13
|
-
|
|
13
|
+
private _address;
|
|
14
14
|
onSignTransaction?: (transaction: VersionedTransaction) => Promise<VersionedTransaction>;
|
|
15
15
|
constructor(config: ExternalWalletInternalSignerConfig<SolanaChain>);
|
|
16
|
+
address(): string;
|
|
16
17
|
locator(): string;
|
|
17
18
|
signMessage(): Promise<never>;
|
|
18
19
|
signTransaction(transaction: string): Promise<{
|
|
@@ -10,9 +10,10 @@ import 'viem';
|
|
|
10
10
|
declare class SolanaExternalWalletSigner implements Signer {
|
|
11
11
|
private config;
|
|
12
12
|
type: "external-wallet";
|
|
13
|
-
|
|
13
|
+
private _address;
|
|
14
14
|
onSignTransaction?: (transaction: VersionedTransaction) => Promise<VersionedTransaction>;
|
|
15
15
|
constructor(config: ExternalWalletInternalSignerConfig<SolanaChain>);
|
|
16
|
+
address(): string;
|
|
16
17
|
locator(): string;
|
|
17
18
|
signMessage(): Promise<never>;
|
|
18
19
|
signTransaction(transaction: string): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-6PVKL5RC.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as SolanaExternalWalletSigner};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkC3T63EC7cjs = require('../chunk-C3T63EC7.cjs');require('../chunk-XALFCQKD.cjs');exports.StellarExternalWalletSigner = _chunkC3T63EC7cjs.a;
|
|
@@ -9,9 +9,10 @@ import 'viem';
|
|
|
9
9
|
declare class StellarExternalWalletSigner implements Signer {
|
|
10
10
|
private config;
|
|
11
11
|
type: "external-wallet";
|
|
12
|
-
|
|
12
|
+
private _address;
|
|
13
13
|
onSignStellarTransaction?: (payload: string) => Promise<string>;
|
|
14
14
|
constructor(config: ExternalWalletInternalSignerConfig<StellarChain>);
|
|
15
|
+
address(): string;
|
|
15
16
|
locator(): string;
|
|
16
17
|
signMessage(): Promise<never>;
|
|
17
18
|
signTransaction(payload: string): Promise<{
|
|
@@ -9,9 +9,10 @@ import 'viem';
|
|
|
9
9
|
declare class StellarExternalWalletSigner implements Signer {
|
|
10
10
|
private config;
|
|
11
11
|
type: "external-wallet";
|
|
12
|
-
|
|
12
|
+
private _address;
|
|
13
13
|
onSignStellarTransaction?: (payload: string) => Promise<string>;
|
|
14
14
|
constructor(config: ExternalWalletInternalSignerConfig<StellarChain>);
|
|
15
|
+
address(): string;
|
|
15
16
|
locator(): string;
|
|
16
17
|
signMessage(): Promise<never>;
|
|
17
18
|
signTransaction(payload: string): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-2SHDBC47.js";import"../chunk-BW7YYVZE.js";export{a as StellarExternalWalletSigner};
|
package/dist/signers/types.d.cts
CHANGED
|
@@ -39,6 +39,7 @@ type PasskeySignerConfig = {
|
|
|
39
39
|
};
|
|
40
40
|
type BaseInternalSignerConfig = {
|
|
41
41
|
locator: string;
|
|
42
|
+
address: string;
|
|
42
43
|
crossmint: Crossmint;
|
|
43
44
|
clientTEEConnection?: HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
|
|
44
45
|
};
|
|
@@ -77,6 +78,7 @@ type SignResultMap = {
|
|
|
77
78
|
interface Signer<T extends keyof SignResultMap = keyof SignResultMap> {
|
|
78
79
|
type: T;
|
|
79
80
|
locator(): string;
|
|
81
|
+
address?(): string;
|
|
80
82
|
signMessage(message: string): Promise<SignResultMap[T]>;
|
|
81
83
|
signTransaction(transaction: string): Promise<SignResultMap[T]>;
|
|
82
84
|
}
|
package/dist/signers/types.d.ts
CHANGED
|
@@ -39,6 +39,7 @@ type PasskeySignerConfig = {
|
|
|
39
39
|
};
|
|
40
40
|
type BaseInternalSignerConfig = {
|
|
41
41
|
locator: string;
|
|
42
|
+
address: string;
|
|
42
43
|
crossmint: Crossmint;
|
|
43
44
|
clientTEEConnection?: HandshakeParent<typeof signerOutboundEvents, typeof signerInboundEvents>;
|
|
44
45
|
};
|
|
@@ -77,6 +78,7 @@ type SignResultMap = {
|
|
|
77
78
|
interface Signer<T extends keyof SignResultMap = keyof SignResultMap> {
|
|
78
79
|
type: T;
|
|
79
80
|
locator(): string;
|
|
81
|
+
address?(): string;
|
|
80
82
|
signMessage(message: string): Promise<SignResultMap[T]>;
|
|
81
83
|
signTransaction(transaction: string): Promise<SignResultMap[T]>;
|
|
82
84
|
}
|
package/dist/utils/constants.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7SA335PZcjs = require('../chunk-7SA335PZ.cjs');require('../chunk-XALFCQKD.cjs');exports.SDK_NAME = _chunk7SA335PZcjs.c; exports.SDK_VERSION = _chunk7SA335PZcjs.b; exports.STATUS_POLLING_INTERVAL_MS = _chunk7SA335PZcjs.d; exports.WALLETS_SERVICE = _chunk7SA335PZcjs.a;
|
package/dist/utils/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c,d}from"../chunk-
|
|
1
|
+
import{a,b,c,d}from"../chunk-LE7DYESO.js";import"../chunk-BW7YYVZE.js";export{c as SDK_NAME,b as SDK_VERSION,d as STATUS_POLLING_INTERVAL_MS,a as WALLETS_SERVICE};
|
package/dist/wallets/evm.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkPPS37EJLcjs = require('../chunk-PPS37EJL.cjs');require('../chunk-VMBMJTB4.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-CU6FZ36V.cjs');require('../chunk-IR5WN6FQ.cjs');require('../chunk-GEY574TH.cjs');require('../chunk-XALFCQKD.cjs');exports.EVMWallet = _chunkPPS37EJLcjs.a;
|
package/dist/wallets/evm.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-2FBU6EOX.js";import"../chunk-XFNHQ4RR.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-I5COKXOT.js";import"../chunk-KKQBZXFE.js";import"../chunk-S3DYQVRD.js";import"../chunk-BW7YYVZE.js";export{a as EVMWallet};
|
package/dist/wallets/solana.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkSYCCYHLTcjs = require('../chunk-SYCCYHLT.cjs');require('../chunk-VMBMJTB4.cjs');require('../chunk-HRSVFJND.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.SolanaWallet = _chunkSYCCYHLTcjs.a;
|
package/dist/wallets/solana.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-BMGQVO4K.js";import"../chunk-XFNHQ4RR.js";import"../chunk-6PVKL5RC.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as SolanaWallet};
|
package/dist/wallets/stellar.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZO4PSHX2cjs = require('../chunk-ZO4PSHX2.cjs');require('../chunk-VMBMJTB4.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.StellarWallet = _chunkZO4PSHX2cjs.a;
|
package/dist/wallets/stellar.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-6433AT57.js";import"../chunk-XFNHQ4RR.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-BW7YYVZE.js";export{a as StellarWallet};
|
package/dist/wallets/types.d.cts
CHANGED
|
@@ -83,6 +83,7 @@ type WalletArgsFor<C extends Chain> = {
|
|
|
83
83
|
owner?: string;
|
|
84
84
|
plugins?: WalletPlugin<C>[];
|
|
85
85
|
options?: WalletOptions;
|
|
86
|
+
delegatedSigners?: C extends "solana" ? Array<DelegatedSigner> : never;
|
|
86
87
|
};
|
|
87
88
|
type TokenBalance = {
|
|
88
89
|
symbol: "sol" | "eth" | "usdc" | string;
|
package/dist/wallets/types.d.ts
CHANGED
|
@@ -83,6 +83,7 @@ type WalletArgsFor<C extends Chain> = {
|
|
|
83
83
|
owner?: string;
|
|
84
84
|
plugins?: WalletPlugin<C>[];
|
|
85
85
|
options?: WalletOptions;
|
|
86
|
+
delegatedSigners?: C extends "solana" ? Array<DelegatedSigner> : never;
|
|
86
87
|
};
|
|
87
88
|
type TokenBalance = {
|
|
88
89
|
symbol: "sol" | "eth" | "usdc" | string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkCARVGLYTcjs = require('../chunk-CARVGLYT.cjs');require('../chunk-23BRREJG.cjs');require('../chunk-VMBMJTB4.cjs');require('../chunk-UZXJ5FAA.cjs');require('../chunk-PO6S7UR3.cjs');require('../chunk-UT2U6NWW.cjs');require('../chunk-NPXTLMYS.cjs');require('../chunk-GNL4RC2A.cjs');require('../chunk-C3K5DA3W.cjs');require('../chunk-MQP5VZCA.cjs');require('../chunk-YWPTI2QO.cjs');require('../chunk-4KXOWU5E.cjs');require('../chunk-HRSVFJND.cjs');require('../chunk-C3T63EC7.cjs');require('../chunk-ZSWIQU3U.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-YZ4HRYSL.cjs');require('../chunk-M4TOGGLV.cjs');require('../chunk-XALFCQKD.cjs');exports.WalletFactory = _chunkCARVGLYTcjs.a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-F6KWHHYO.js";import"../chunk-BHGNJYYE.js";import"../chunk-XFNHQ4RR.js";import"../chunk-7BEMA3KG.js";import"../chunk-YDZRBHS3.js";import"../chunk-SK57FHH2.js";import"../chunk-HWWYX2CY.js";import"../chunk-V7O6CCYZ.js";import"../chunk-KRAAV3FK.js";import"../chunk-JUSY5XEE.js";import"../chunk-UBOWSXW3.js";import"../chunk-IGBQEAD5.js";import"../chunk-6PVKL5RC.js";import"../chunk-2SHDBC47.js";import"../chunk-M4ELAV7U.js";import"../chunk-LE7DYESO.js";import"../chunk-PSXRNSOE.js";import"../chunk-LW6JSI4J.js";import"../chunk-3APSOOE3.js";import"../chunk-BW7YYVZE.js";export{a as WalletFactory};
|
package/dist/wallets/wallet.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVMBMJTB4cjs = require('../chunk-VMBMJTB4.cjs');require('../chunk-7SA335PZ.cjs');require('../chunk-O4FVTK7X.cjs');require('../chunk-XALFCQKD.cjs');exports.Wallet = _chunkVMBMJTB4cjs.a;
|
package/dist/wallets/wallet.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a}from"../chunk-
|
|
1
|
+
import{a}from"../chunk-XFNHQ4RR.js";import"../chunk-LE7DYESO.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.
|
|
3
|
+
"version": "0.12.1",
|
|
4
4
|
"repository": "https://github.com/Crossmint/crossmint-sdk",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Paella Labs Inc",
|
|
@@ -27,8 +27,8 @@
|
|
|
27
27
|
"tweetnacl": "1.0.3",
|
|
28
28
|
"viem": "2.33.1",
|
|
29
29
|
"@crossmint/client-sdk-window": "1.0.3",
|
|
30
|
-
"@crossmint/
|
|
31
|
-
"@crossmint/
|
|
30
|
+
"@crossmint/common-sdk-base": "0.9.4",
|
|
31
|
+
"@crossmint/client-signers": "0.0.18"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@hey-api/openapi-ts": "0.69.2",
|
package/dist/chunk-5S6YZJHE.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{f as i}from"./chunk-BW7YYVZE.js";var s=class{constructor(e){this.config=e;this.type="external-wallet";if(e.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=e.address,this.provider=e.provider,this.viemAccount=e.viemAccount}locator(){return this.config.locator}signMessage(e){return i(this,null,function*(){var n;if(this.provider!=null){let r=yield this.provider.request({method:"personal_sign",params:[e,this.address]});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: EIP1193 provider signMessage returned null");return{signature:r}}if(((n=this.viemAccount)==null?void 0:n.signMessage)!=null){let r=yield this.viemAccount.signMessage({message:{raw:e}});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: Viem account signMessage returned null");return{signature:r}}throw new Error("No signer provider or viem account provided")})}signTransaction(e){return i(this,null,function*(){return yield this.signMessage(e)})}};export{s as a};
|
package/dist/chunk-67U2B6QL.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var e=class{constructor(r){this.config=r;this.type="external-wallet";if(r.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=r.address,this.onSignStellarTransaction=r.onSignStellarTransaction}locator(){return this.config.locator}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar external wallet signer"))})}signTransaction(r){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return this.onSignStellarTransaction==null?yield Promise.reject(new Error("onSignStellarTransaction method is required to sign transactions with a Stellar external wallet")):{signature:yield this.onSignStellarTransaction(r)}})}};exports.a = e;
|
package/dist/chunk-BULGM35W.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var s=class{constructor(e){this.config=e;this.type="external-wallet";if(e.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=e.address,this.provider=e.provider,this.viemAccount=e.viemAccount}locator(){return this.config.locator}signMessage(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var n;if(this.provider!=null){let r=yield this.provider.request({method:"personal_sign",params:[e,this.address]});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: EIP1193 provider signMessage returned null");return{signature:r}}if(((n=this.viemAccount)==null?void 0:n.signMessage)!=null){let r=yield this.viemAccount.signMessage({message:{raw:e}});if(r==null)throw new Error("[EVMExternalWalletSigner] Failed to sign message: Viem account signMessage returned null");return{signature:r}}throw new Error("No signer provider or viem account provided")})}signTransaction(e){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield this.signMessage(e)})}};exports.a = s;
|
package/dist/chunk-EROXNXIZ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var s="@crossmint/wallets-sdk",t="0.11.9";var r="WALLETS_SDK",c=t,a=s,d=500;export{r as a,c as b,a as c,d};
|
package/dist/chunk-FC7FFQOV.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkMQP5VZCAcjs = require('./chunk-MQP5VZCA.cjs');var _chunkZSWIQU3Ucjs = require('./chunk-ZSWIQU3U.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _commonsdkbase = require('@crossmint/common-sdk-base');var g=class{constructor(t){this.config=t;this._needsAuth=!0;this._authPromise=null;this.initialize(),this.type=this.config.type}locator(){return this.config.locator}initialize(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.config.clientTEEConnection==null){let t=_commonsdkbase.validateAPIKey.call(void 0, this.config.crossmint.apiKey);if(!t.isValid)throw new Error("Invalid API key");let r=new (0, _chunkMQP5VZCAcjs.a)({environment:t.environment});this.config.clientTEEConnection=yield r.initialize()}})}handleAuthRequired(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var o,s,a;if(this.config.clientTEEConnection==null)throw this.config.onAuthRequired==null?new Error(`${this.type} signer requires the onAuthRequired callback to handle OTP verification. This callback manages the authentication flow (sending OTP and verifying user input). If using our React/React Native SDK, this is handled automatically by the provider. For other environments, implement: onAuthRequired: (needsAuth, sendEmailWithOtp, verifyOtp, reject) => { /* your UI logic */ }`):new Error("Handshake parent not initialized");let t=yield(a=this.config.clientTEEConnection)==null?void 0:a.sendAction({event:"request:get-status",responseEvent:"response:get-status",data:{authData:{jwt:(s=(o=this.config.crossmint.experimental_customAuth)==null?void 0:o.jwt)!=null?s:"",apiKey:this.config.crossmint.apiKey}},options:l});if((t==null?void 0:t.status)!=="success")throw new Error(t==null?void 0:t.error);if(t.signerStatus==="ready"){this._needsAuth=!1;return}let{promise:r,resolve:i,reject:n}=this.createAuthPromise();if(this._authPromise={promise:r,resolve:i,reject:n},this.config.onAuthRequired)try{yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),e=>this.verifyOtp(e),()=>n(new _chunkZSWIQU3Ucjs.a))}catch(e){n(e)}try{yield r}catch(e){throw e}})}getJwtOrThrow(){var r;let t=(r=this.config.crossmint.experimental_customAuth)==null?void 0:r.jwt;if(t==null)throw new Error("JWT is required");return t}createAuthPromise(){let t,r;return{promise:new Promise((n,o)=>{t=n,r=o}),resolve:t,reject:r}}sendMessageWithOtp(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var n,o,s;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let t=this.config.clientTEEConnection,r=this.getAuthId(),i=yield t.sendAction({event:"request:start-onboarding",responseEvent:"response:start-onboarding",data:{authData:{jwt:(o=(n=this.config.crossmint.experimental_customAuth)==null?void 0:n.jwt)!=null?o:"",apiKey:this.config.crossmint.apiKey},data:{authId:r}},options:l});if((i==null?void 0:i.status)==="success"&&i.signerStatus==="ready"){this._needsAuth=!1;return}(i==null?void 0:i.status)==="error"&&(console.error("[sendMessageWithOtp] Failed to send OTP:",i),(s=this._authPromise)==null||s.reject(new Error(i.error||"Failed to initiate OTP process.")))})}getAuthId(){return this.config.type==="email"?`email:${this.config.email}`:`phone:${this.config.phone}`}verifyOtp(t){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){var i,n,o,s,a;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let r=this.config.clientTEEConnection;try{let e=yield r.sendAction({event:"request:complete-onboarding",responseEvent:"response:complete-onboarding",data:{authData:{jwt:(n=(i=this.config.crossmint.experimental_customAuth)==null?void 0:i.jwt)!=null?n:"",apiKey:this.config.crossmint.apiKey},data:{onboardingAuthentication:{encryptedOtp:t}}},options:l});if((e==null?void 0:e.status)==="success"){this._needsAuth=!1,this.config.onAuthRequired!=null&&(yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),h=>this.verifyOtp(h),()=>{var h;return(h=this._authPromise)==null?void 0:h.reject(new _chunkZSWIQU3Ucjs.a)})),(o=this._authPromise)==null||o.resolve();return}console.error("[verifyOtp] Failed to validate OTP:",e),this._needsAuth=!0;let m=(e==null?void 0:e.status)==="error"?e.error:"Failed to validate encrypted OTP";(s=this._authPromise)==null||s.reject(new Error(m))}catch(e){throw console.error("[verifyOtp] Error sending OTP validation request:",e),this._needsAuth=!0,(a=this._authPromise)==null||a.reject(e),e}})}},l= exports.b ={timeoutMs:1e4,intervalMs:5e3};exports.a = g; exports.b = l;
|
package/dist/chunk-FKFTRH5V.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{a as f}from"./chunk-BHGNJYYE.js";import{a as g}from"./chunk-YMCCWHGA.js";import{a as d}from"./chunk-JMDCQZC3.js";import{d as y,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
|
-
- 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 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 y(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:c({adminSigner:i},e!=null&&e.plugins?{plugins:e.plugins}:{}),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,C,m;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(((C=e.config)==null?void 0:C.adminSigner.type)!=="email")throw new r("Email signer does not match the wallet's signer type");let{locator:h,email:p}=e.config.adminSigner;return{type:"email",email:p,locator:h,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}case"phone":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="phone")throw new r("Phone signer does not match the wallet's signer type");let{locator:h,phone:p}=e.config.adminSigner;return{type:"phone",phone:p,locator:h,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};
|
package/dist/chunk-HZDDQ2VV.cjs
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk23BRREJGcjs = require('./chunk-23BRREJG.cjs');var _chunkUDLI2RYMcjs = require('./chunk-UDLI2RYM.cjs');var _chunkKS3GFHCZcjs = require('./chunk-KS3GFHCZ.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
|
-
- 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:_chunkXALFCQKDcjs.a.call(void 0, {adminSigner:i},e!=null&&e.plugins?{plugins:e.plugins}:{}),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, _chunkUDLI2RYMcjs.a)({chain:i.chain,address:e.address,owner:e.owner,signer:_chunkKS3GFHCZcjs.a.call(void 0, i.chain,n),options:i.options},this.apiClient)}toInternalSignerConfig(e,i,n){var t,a,o,l,C,m;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(((C=e.config)==null?void 0:C.adminSigner.type)!=="email")throw new (0, _chunkO4FVTK7Xcjs.f)("Email signer does not match the wallet's signer type");let{locator:h,email:p}=e.config.adminSigner;return{type:"email",email:p,locator:h,crossmint:this.apiClient.crossmint,onAuthRequired:i.onAuthRequired,clientTEEConnection:n==null?void 0:n.clientTEEConnection}}case"phone":{if(((m=e.config)==null?void 0:m.adminSigner.type)!=="phone")throw new (0, _chunkO4FVTK7Xcjs.f)("Phone signer does not match the wallet's signer type");let{locator:h,phone:p}=e.config.adminSigner;return{type:"phone",phone:p,locator:h,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;
|
package/dist/chunk-JMK64ITR.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{x as t}from"./chunk-PSXRNSOE.js";import{f as e}from"./chunk-BW7YYVZE.js";import{PublicKey as m,VersionedTransaction as h}from"@solana/web3.js";import i from"bs58";var o=class{constructor(n){this.config=n;this.type="external-wallet";if(n.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=n.address,this.onSignTransaction=n.onSignTransaction}locator(){return this.config.locator}signMessage(){return e(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for solana external wallet signer"))})}signTransaction(n){return e(this,null,function*(){if(this.onSignTransaction==null)return yield Promise.reject(new Error("onSignTransaction method is required to sign transactions with a Solana external wallet"));let l=i.decode(n),c=h.deserialize(l),r=yield this.onSignTransaction(c),d=new m(this.address),a=r.message.staticAccountKeys.findIndex(u=>u.equals(d));if(a===-1)throw new t("Wallet public key not found in transaction signers");let s=r.signatures[a];if(s==null)throw new t("No valid signature found in the transaction");let g=new Uint8Array(Object.values(s));return{signature:i.encode(g)}})}};export{o as a};
|
package/dist/chunk-KS3GFHCZ.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4GMYGJLUcjs = require('./chunk-4GMYGJLU.cjs');var _chunkH6W343CUcjs = require('./chunk-H6W343CU.cjs');var _chunkMTZIGWOAcjs = require('./chunk-MTZIGWOA.cjs');var _chunkYWPTI2QOcjs = require('./chunk-YWPTI2QO.cjs');var _chunk4KXOWU5Ecjs = require('./chunk-4KXOWU5E.cjs');var _chunkMY4MQMBKcjs = require('./chunk-MY4MQMBK.cjs');var _chunk67U2B6QLcjs = require('./chunk-67U2B6QL.cjs');var _chunkYZ4HRYSLcjs = require('./chunk-YZ4HRYSL.cjs');var _chunkBULGM35Wcjs = require('./chunk-BULGM35W.cjs');function E(r,e){switch(e.type){case"email":case"phone":return r==="solana"?new (0, _chunk4GMYGJLUcjs.a)(e):r==="stellar"?new (0, _chunkH6W343CUcjs.a)(e):new (0, _chunkMTZIGWOAcjs.a)(e);case"api-key":return r==="solana"?new (0, _chunk4KXOWU5Ecjs.a)(e):new (0, _chunkYZ4HRYSLcjs.a)(e);case"external-wallet":return r==="solana"?new (0, _chunkMY4MQMBKcjs.a)(e):r==="stellar"?new (0, _chunk67U2B6QLcjs.a)(e):new (0, _chunkBULGM35Wcjs.a)(e);case"passkey":return new (0, _chunkYWPTI2QOcjs.a)(e)}}exports.a = E;
|
package/dist/chunk-MY4MQMBK.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }var _chunkO4FVTK7Xcjs = require('./chunk-O4FVTK7X.cjs');var _chunkXALFCQKDcjs = require('./chunk-XALFCQKD.cjs');var _web3js = require('@solana/web3.js');var _bs58 = require('bs58'); var _bs582 = _interopRequireDefault(_bs58);var o=class{constructor(n){this.config=n;this.type="external-wallet";if(n.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=n.address,this.onSignTransaction=n.onSignTransaction}locator(){return this.config.locator}signMessage(){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for solana external wallet signer"))})}signTransaction(n){return _chunkXALFCQKDcjs.f.call(void 0, this,null,function*(){if(this.onSignTransaction==null)return yield Promise.reject(new Error("onSignTransaction method is required to sign transactions with a Solana external wallet"));let l=_bs582.default.decode(n),c=_web3js.VersionedTransaction.deserialize(l),r=yield this.onSignTransaction(c),d=new (0, _web3js.PublicKey)(this.address),a=r.message.staticAccountKeys.findIndex(u=>u.equals(d));if(a===-1)throw new (0, _chunkO4FVTK7Xcjs.x)("Wallet public key not found in transaction signers");let s=r.signatures[a];if(s==null)throw new (0, _chunkO4FVTK7Xcjs.x)("No valid signature found in the transaction");let g=new Uint8Array(Object.values(s));return{signature:_bs582.default.encode(g)}})}};exports.a = o;
|
package/dist/chunk-QZL4LBYZ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{f as n}from"./chunk-BW7YYVZE.js";var e=class{constructor(r){this.config=r;this.type="external-wallet";if(r.address==null)throw new Error("Please provide an address for the External Wallet Signer");this.address=r.address,this.onSignStellarTransaction=r.onSignStellarTransaction}locator(){return this.config.locator}signMessage(){return n(this,null,function*(){return yield Promise.reject(new Error("signMessage method not implemented for stellar external wallet signer"))})}signTransaction(r){return n(this,null,function*(){return this.onSignStellarTransaction==null?yield Promise.reject(new Error("onSignStellarTransaction method is required to sign transactions with a Stellar external wallet")):{signature:yield this.onSignStellarTransaction(r)}})}};export{e as a};
|
package/dist/chunk-VETSIYJQ.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as d}from"./chunk-JUSY5XEE.js";import{a as u}from"./chunk-M4ELAV7U.js";import{f as c}from"./chunk-BW7YYVZE.js";import{validateAPIKey as p}from"@crossmint/common-sdk-base";var g=class{constructor(t){this.config=t;this._needsAuth=!0;this._authPromise=null;this.initialize(),this.type=this.config.type}locator(){return this.config.locator}initialize(){return c(this,null,function*(){if(this.config.clientTEEConnection==null){let t=p(this.config.crossmint.apiKey);if(!t.isValid)throw new Error("Invalid API key");let r=new d({environment:t.environment});this.config.clientTEEConnection=yield r.initialize()}})}handleAuthRequired(){return c(this,null,function*(){var o,s,a;if(this.config.clientTEEConnection==null)throw this.config.onAuthRequired==null?new Error(`${this.type} signer requires the onAuthRequired callback to handle OTP verification. This callback manages the authentication flow (sending OTP and verifying user input). If using our React/React Native SDK, this is handled automatically by the provider. For other environments, implement: onAuthRequired: (needsAuth, sendEmailWithOtp, verifyOtp, reject) => { /* your UI logic */ }`):new Error("Handshake parent not initialized");let t=yield(a=this.config.clientTEEConnection)==null?void 0:a.sendAction({event:"request:get-status",responseEvent:"response:get-status",data:{authData:{jwt:(s=(o=this.config.crossmint.experimental_customAuth)==null?void 0:o.jwt)!=null?s:"",apiKey:this.config.crossmint.apiKey}},options:l});if((t==null?void 0:t.status)!=="success")throw new Error(t==null?void 0:t.error);if(t.signerStatus==="ready"){this._needsAuth=!1;return}let{promise:r,resolve:i,reject:n}=this.createAuthPromise();if(this._authPromise={promise:r,resolve:i,reject:n},this.config.onAuthRequired)try{yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),e=>this.verifyOtp(e),()=>n(new u))}catch(e){n(e)}try{yield r}catch(e){throw e}})}getJwtOrThrow(){var r;let t=(r=this.config.crossmint.experimental_customAuth)==null?void 0:r.jwt;if(t==null)throw new Error("JWT is required");return t}createAuthPromise(){let t,r;return{promise:new Promise((n,o)=>{t=n,r=o}),resolve:t,reject:r}}sendMessageWithOtp(){return c(this,null,function*(){var n,o,s;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let t=this.config.clientTEEConnection,r=this.getAuthId(),i=yield t.sendAction({event:"request:start-onboarding",responseEvent:"response:start-onboarding",data:{authData:{jwt:(o=(n=this.config.crossmint.experimental_customAuth)==null?void 0:n.jwt)!=null?o:"",apiKey:this.config.crossmint.apiKey},data:{authId:r}},options:l});if((i==null?void 0:i.status)==="success"&&i.signerStatus==="ready"){this._needsAuth=!1;return}(i==null?void 0:i.status)==="error"&&(console.error("[sendMessageWithOtp] Failed to send OTP:",i),(s=this._authPromise)==null||s.reject(new Error(i.error||"Failed to initiate OTP process.")))})}getAuthId(){return this.config.type==="email"?`email:${this.config.email}`:`phone:${this.config.phone}`}verifyOtp(t){return c(this,null,function*(){var i,n,o,s,a;if(this.config.clientTEEConnection==null)throw new Error("Handshake parent not initialized");let r=this.config.clientTEEConnection;try{let e=yield r.sendAction({event:"request:complete-onboarding",responseEvent:"response:complete-onboarding",data:{authData:{jwt:(n=(i=this.config.crossmint.experimental_customAuth)==null?void 0:i.jwt)!=null?n:"",apiKey:this.config.crossmint.apiKey},data:{onboardingAuthentication:{encryptedOtp:t}}},options:l});if((e==null?void 0:e.status)==="success"){this._needsAuth=!1,this.config.onAuthRequired!=null&&(yield this.config.onAuthRequired(this._needsAuth,()=>this.sendMessageWithOtp(),h=>this.verifyOtp(h),()=>{var h;return(h=this._authPromise)==null?void 0:h.reject(new u)})),(o=this._authPromise)==null||o.resolve();return}console.error("[verifyOtp] Failed to validate OTP:",e),this._needsAuth=!0;let m=(e==null?void 0:e.status)==="error"?e.error:"Failed to validate encrypted OTP";(s=this._authPromise)==null||s.reject(new Error(m))}catch(e){throw console.error("[verifyOtp] Error sending OTP validation request:",e),this._needsAuth=!0,(a=this._authPromise)==null||a.reject(e),e}})}},l={timeoutMs:1e4,intervalMs:5e3};export{g as a,l as b};
|