@lombard.finance/sdk 4.5.0 → 4.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/api.cjs +1 -1
- package/dist/api.js +2 -2
- package/dist/btc.cjs +1 -1
- package/dist/btc.js +2 -2
- package/dist/chunks/{BtcActions-DMa7ARCK.cjs → BtcActions-BF9CeWbi.cjs} +2 -2
- package/dist/chunks/{BtcActions-DMa7ARCK.cjs.map → BtcActions-BF9CeWbi.cjs.map} +1 -1
- package/dist/chunks/{BtcActions-CwSxUlu2.js → BtcActions-DzUEGnzA.js} +2 -2
- package/dist/chunks/{BtcActions-CwSxUlu2.js.map → BtcActions-DzUEGnzA.js.map} +1 -1
- package/dist/chunks/{EvmActions-DXxVLtZD.js → EvmActions-BYwRL5jA.js} +2 -2
- package/dist/chunks/{EvmActions-DXxVLtZD.js.map → EvmActions-BYwRL5jA.js.map} +1 -1
- package/dist/chunks/{EvmActions-BnkVJD6N.cjs → EvmActions-Cm7PZTWL.cjs} +2 -2
- package/dist/chunks/{EvmActions-BnkVJD6N.cjs.map → EvmActions-Cm7PZTWL.cjs.map} +1 -1
- package/dist/chunks/{ReferralsClient-DvEsA3II.js → ReferralsClient-AxhLoWRT.js} +2 -2
- package/dist/chunks/{ReferralsClient-DvEsA3II.js.map → ReferralsClient-AxhLoWRT.js.map} +1 -1
- package/dist/chunks/{ReferralsClient-Cmrjo9bN.cjs → ReferralsClient-bZo9Jpg6.cjs} +2 -2
- package/dist/chunks/{ReferralsClient-Cmrjo9bN.cjs.map → ReferralsClient-bZo9Jpg6.cjs.map} +1 -1
- package/dist/chunks/{depositStatus-DTc01ZoZ.js → depositStatus-BrrE4n4B.js} +2 -2
- package/dist/chunks/{depositStatus-DTc01ZoZ.js.map → depositStatus-BrrE4n4B.js.map} +1 -1
- package/dist/chunks/{depositStatus-CFo5jW89.cjs → depositStatus-D5t8HN_A.cjs} +2 -2
- package/dist/chunks/{depositStatus-CFo5jW89.cjs.map → depositStatus-D5t8HN_A.cjs.map} +1 -1
- package/dist/chunks/{events-BI3cO0wp.js → events-BuVnpqe8.js} +5 -5
- package/dist/chunks/{events-BI3cO0wp.js.map → events-BuVnpqe8.js.map} +1 -1
- package/dist/chunks/{events-CiqJepzZ.cjs → events-flcJmreN.cjs} +2 -2
- package/dist/chunks/{events-CiqJepzZ.cjs.map → events-flcJmreN.cjs.map} +1 -1
- package/dist/chunks/{statusConstants-DxQoWFU4.js → statusConstants-25gG0IqR.js} +2 -2
- package/dist/chunks/{statusConstants-DxQoWFU4.js.map → statusConstants-25gG0IqR.js.map} +1 -1
- package/dist/chunks/{statusConstants-B5HcmlEq.cjs → statusConstants-Cm_nWk5q.cjs} +2 -2
- package/dist/chunks/{statusConstants-B5HcmlEq.cjs.map → statusConstants-Cm_nWk5q.cjs.map} +1 -1
- package/dist/core.cjs +1 -1
- package/dist/core.js +4 -4
- package/dist/evm.cjs +1 -1
- package/dist/evm.js +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.js +6 -6
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var T=Object.defineProperty;var U=(s,t,n)=>t in s?T(s,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):s[t]=n;var i=(s,t,n)=>U(s,typeof t!="symbol"?t+"":t,n);require("axios");const e=require("./statusConstants-B5HcmlEq.cjs"),O=require("./getUserStakeAndBakeSignature-CSEyzgMc.cjs"),g=require("./ReferralsClient-Cmrjo9bN.cjs"),E=require("./storeNetworkFeeSignature-Buk4091C.cjs"),I=require("./BtcActions-DMa7ARCK.cjs"),N=require("./EvmActions-BnkVJD6N.cjs"),k=require("./satoshi-CZEsHl5X.cjs"),o=require("./index-BKzxeh1Y.cjs"),C=require("./defi-registry-DDNavtO1.cjs"),R=require("./get-exchange-ratio-BEhD4gLB.cjs"),B=require("./config-DmCmanM_.cjs"),f=require("./get-vault-withdrawals-8ALlEiAC.cjs"),A=["debug","info","warn","error","none"];function D(s={}){const{level:t="debug",prefix:n="[Lombard SDK]",timestamp:r=!1}=s,a=A.indexOf(t),c=u=>A.indexOf(u)>=a&&t!=="none",h=u=>{if(r){const d=new Date().toISOString();return`${n} ${d} ${u}`}return`${n} ${u}`},l=u=>!u||Object.keys(u).length===0?[]:[u];return{debug(u,d){c("debug")&&console.debug(h(u),...l(d))},info(u,d){c("info")&&console.info(h(u),...l(d))},warn(u,d){c("warn")&&console.warn(h(u),...l(d))},error(u,d){c("error")&&console.error(h(u),...l(d))}}}function M(){return{debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}}function H(){return{"X-SDK-Version":e.SDK_VERSION,"X-SDK-Runtime":e.SDK_RUNTIME}}class P{constructor(t=o.p){i(this,"apiVersion","v1");this.env=t}async deposits(t){return g.getDepositsByAddress({address:t,env:this.env})}async unstakes(t,n){return g.getUnstakesByAddress({address:t,env:this.env,options:n})}async points(t,n){return g.getPointsByAddress({address:t,env:this.env,season:n})}async exchangeRatio(){return R.getExchangeRatio({env:this.env})}async depositAddress(t,n,r){return g.getDepositBtcAddress({address:t,chainId:n,env:this.env,partnerId:r==null?void 0:r.partnerId,token:r==null?void 0:r.token})}async vaultWithdrawals(t,n){const r=t,a=(n==null?void 0:n.vault)??B.Vault.Veda;return n!=null&&n.chainId?f.getVaultWithdrawals({account:r,chainId:n.chainId,vaultKey:a,rpcUrl:n.rpcUrl,env:this.env}):f.getVaultWithdrawalsAllChains({account:r,vaultKey:a,rpcUrl:n==null?void 0:n.rpcUrl})}getApiVersion(){return this.apiVersion}}function G(s){if(!s.env)throw e.LombardError.missingParameter("env");const t={env:s.env,providers:s.providers||{}};return s.partner&&(F(s.partner),t.partner=s.partner),t}function F(s){if(typeof s!="object"||s===null)throw e.LombardError.invalidConfiguration("Partner configuration must be an object");const t=s;if(!t.partnerId||typeof t.partnerId!="string")throw e.LombardError.missingParameter("partner.partnerId");if(t.partnerId.trim().length===0)throw e.LombardError.invalidConfiguration("Partner ID cannot be empty")}class q{constructor(t){this.env=t}async generateDepositAddress(t){return O.generateDepositBtcAddress({address:t.address,chainId:t.chainId,signature:t.signature,token:t.token,eip712Data:t.eip712Data,signatureData:t.signatureData,pubKey:t.pubKey,env:this.env,partnerId:t.partnerId,referrerCode:t.referrerCode,captchaToken:t.captchaToken})}async getDepositAddress(t){try{return await g.getDepositBtcAddress({address:t.address,chainId:t.chainId,token:t.token,env:this.env,partnerId:t.partnerId})||void 0}catch{return}}async getDeposits(t){return(await g.getDepositsByAddress({address:t,env:this.env})).map(r=>{var a;return{depositAddress:r.depositAddress??"",blockHeight:r.blockHeight,isClaimed:r.isClaimed,txid:r.txHash,amount:(a=r.amount)==null?void 0:a.toString()}})}async storeFeeSignature(t){await E.storeNetworkFeeSignature({address:t.address,signature:t.signature,typedData:t.typedData,env:this.env,tokenAddress:t.tokenAddress})}async getFeeSignature(t){return E.getNetworkFeeSignature({address:t.address,chainId:t.chainId,env:this.env,tokenAddress:t.tokenAddress})}async storeStakeAndBakeSignature(t){await g.storeStakeAndBakeSignature({signature:t.signature,typedData:t.typedData,env:this.env})}}function K(){return{id:"api",register(s){return new q(s.env)}}}function Y(s){const t=new Map,n=[I.btcModule(),N.evmModule(),K()];for(const r of n)t.set(r.id,r);if(s)for(const r of s)t.set(r.id,r);return Array.from(t.values())}function V(s,t){for(const n of s)for(const r of n.requiresProviders??[])if(!j(t,r))throw e.LombardError.providerMissing(r,r)}function j(s,t){var n;return!!((n=s.providers)!=null&&n[t])}function b(s){const t=G(s),n=Y(s.modules);V(n,t);let r=s.logger;return!r&&s.debug&&(r=D({level:"debug"})),{...t,modules:n,logger:r}}function $(s){switch(s){case"prod":return"mainnet-beta";case"testnet":return"testnet";case"stage":case"dev":case"ibc":default:return"devnet"}}const y={routes:[{sourceChains:[e.Chain.SOLANA_DEVNET],destChain:e.Chain.BITCOIN_SIGNET,assetIn:C.AssetId.BTCb,assetOut:C.AssetId.BTC,envs:[o.r.stage,o.r.dev]}],recipientSchema:e.bitcoinAddressSchema};function W(s,t,n,r,a){return y.routes.some(c=>c.sourceChains.includes(s)&&c.destChain===t&&c.assetIn===n&&c.assetOut===r&&c.envs.includes(a))}class z extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!W(r.sourceChain,r.destChain,r.assetIn,r.assetOut,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=k.toSatoshi(n).toString(),c=$(this.env),{txHash:h}=await this.ctx.solana.redeemForBtc({amount:a,btcAddress:r,network:c,env:this.env});return this._txHash=h,this.emitProgress({status:e.NonEvmUnstakeStatus.CONFIRMING,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),{txHash:h}},e.NonEvmUnstakeStatus.CONFIRMING)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:y.recipientSchema})}}const _={routes:[{sourceChains:[e.Chain.SOLANA_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.SOLANA_DEVNET],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function X(s,t){return _.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}function Z(s){switch(s){case"prod":return"mainnet-beta";case"testnet":return"testnet";case"stage":case"dev":case"ibc":default:return"devnet"}}class J extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!X(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=k.toSatoshi(n).toString(),c=Z(this.env),{txHash:h}=await this.ctx.solana.unstake({amount:a,btcAddress:r,network:c});return this._txHash=h,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:h}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:_.recipientSchema})}}function Q(s){const n=new e.CapabilityRegistry(s.modules,s).require("solana");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},solana:n}}class S{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=Q(this.config)),this._ctx}unstake(t){return new J(this.ctx,t)}redeem(t){return new z(this.ctx,t)}}function tt(s){return new S(s)}const w={routes:[{sourceChains:[e.Chain.STARKNET_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.STARKNET_SEPOLIA],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function et(s,t){return w.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}class st extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!et(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const{txHash:a}=await this.ctx.starknet.unstake({amount:n,btcAddress:r,env:this.env});return this._txHash=a,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:a}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:w.recipientSchema})}}function nt(s){const n=new e.CapabilityRegistry(s.modules,s).require("starknet");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},starknet:n}}class p{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=nt(this.config)),this._ctx}unstake(t){return new st(this.ctx,t)}}function rt(s){return new p(s)}const x={routes:[{sourceChains:[e.Chain.SUI_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.SUI_TESTNET],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function at(s,t){return x.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}function it(s){switch(s){case e.Chain.SUI_MAINNET:return"sui:mainnet";case e.Chain.SUI_TESTNET:return"sui:testnet";default:return"sui:testnet"}}class ot extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!at(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=it(this.params.sourceChain),{txHash:c}=await this.ctx.sui.unstake({amount:n,btcAddress:r,chainId:a,env:this.env});return this._txHash=c,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:c}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:x.recipientSchema})}}function ct(s){const n=new e.CapabilityRegistry(s.modules,s).require("sui");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},sui:n}}class m{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=ct(this.config)),this._ctx}unstake(t){return new ot(this.ctx,t)}}function ut(s){return new m(s)}class ht{constructor(t=o.p,n){i(this,"catalog");this.env=t,this.catalog=n??e.ASSET_CATALOG}getAddress(t,n){return e.getAssetAddress(t,this.env,n,this.catalog)}getDecimals(t){return e.getAssetDecimals(t,this.catalog)}getMetadata(t){return e.getAssetMetadata(t,this.catalog)}usesAssetRouter(t,n){return e.usesAssetRouter(t,this.env,n,this.catalog)}getAssetRouter(t,n){return e.getAssetRouter(t,this.env,n,this.catalog)}getBridgeAdapter(t,n){return e.getBridgeAdapter(t,this.env,n,this.catalog)}getPublicMarketMaker(t,n){return e.getPublicMarketMaker(t,this.env,n,this.catalog)}getByAddress(t,n){return e.getAssetByAddress(t,this.env,n,this.catalog)}isDeployed(t,n){return e.isAssetDeployed(t,this.env,n,this.catalog)}getChains(t){return e.getAssetChains(t,this.env,this.catalog)}getEnvironments(t,n){return e.getAssetEnvironments(t,n,this.catalog)}getSupportedAssets(){return e.getSupportedAssets(this.catalog)}getCatalog(){return this.catalog}}class L{constructor(t){i(this,"config");i(this,"env");i(this,"partnerConfig");i(this,"providerCache",new Map);i(this,"chain");i(this,"assets");i(this,"api");i(this,"referrals");i(this,"capabilities");this.config=t,this.env=t.env,this.partnerConfig=new e.PartnerConfiguration(t.partner),this.capabilities=new e.CapabilityRegistry(this.config.modules,this.config),this.chain={btc:new I.BtcActions(this.config),evm:new N.EvmActions(this.config),solana:new S(this.config),sui:new m(this.config),starknet:new p(this.config)},this.referrals=new g.ReferralsClient(this),this.assets=new ht(this.env),this.api=new P(this.env)}async getProvider(t){const n=t;if(this.providerCache.has(n))return this.providerCache.get(n);const r=e.getProviderGetter(this.config.providers,t);if(!r)throw e.LombardError.providerMissing(t,t);const a=await r();if(!a)throw new e.LombardError(e.ProviderErrorCode.PROVIDER_INITIALIZATION_FAILED,`Failed to initialize ${t} provider`);return this.providerCache.set(n,a),a}configure(t){this.partnerConfig.update(t)}registerAsset(t){throw new Error("Not implemented yet")}getPartnerConfig(){return this.partnerConfig}getPartnerId(){return this.partnerConfig.getPartnerId()}}const v=new Map;function dt(s){return v.has(s)||v.set(s,Promise.resolve(e.ASSET_CATALOG)),v.get(s)}async function gt(s){const t="modules"in s&&Array.isArray(s.modules)?s:b(s),n=await dt(t.env),r={...t,catalog:n};return new L(r)}function lt(s){return typeof s=="object"&&s!==null&&"request"in s&&typeof s.request=="function"}function vt(s){return typeof s=="object"&&s!==null&&"getAddresses"in s&&typeof s.getAddresses=="function"}function St(s){return typeof s=="object"&&s!==null&&"publicKey"in s&&"signAndSendTransaction"in s}function pt(s){return typeof s=="object"&&s!==null&&"getAddress"in s&&"signAndExecuteTransactionBlock"in s}function mt(s){return typeof s=="object"&&s!==null&&"address"in s&&"execute"in s}const Et={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},Ct={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},ft={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},At={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},It={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},Nt={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"};exports.ApiNamespace=P;exports.BridgeEvent=Nt;exports.DeployEvent=It;exports.DepositEvent=Ct;exports.LombardSDK=L;exports.RedeemEvent=ft;exports.SolanaActions=S;exports.StakeEvent=Et;exports.StarknetActions=p;exports.SuiActions=m;exports.UnstakeEvent=At;exports.createConfig=b;exports.createConsoleLogger=D;exports.createLombardSDK=gt;exports.createSilentLogger=M;exports.getSdkHeaders=H;exports.isBtcProvider=vt;exports.isEvmProvider=lt;exports.isSolanaProvider=St;exports.isStarknetProvider=mt;exports.isSuiProvider=pt;exports.solanaActions=tt;exports.starknetActions=rt;exports.suiActions=ut;
|
|
2
|
-
//# sourceMappingURL=events-
|
|
1
|
+
"use strict";var T=Object.defineProperty;var U=(s,t,n)=>t in s?T(s,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):s[t]=n;var i=(s,t,n)=>U(s,typeof t!="symbol"?t+"":t,n);require("axios");const e=require("./statusConstants-Cm_nWk5q.cjs"),O=require("./getUserStakeAndBakeSignature-CSEyzgMc.cjs"),g=require("./ReferralsClient-bZo9Jpg6.cjs"),E=require("./storeNetworkFeeSignature-Buk4091C.cjs"),I=require("./BtcActions-BF9CeWbi.cjs"),N=require("./EvmActions-Cm7PZTWL.cjs"),k=require("./satoshi-CZEsHl5X.cjs"),o=require("./index-BKzxeh1Y.cjs"),C=require("./defi-registry-DDNavtO1.cjs"),R=require("./get-exchange-ratio-BEhD4gLB.cjs"),B=require("./config-DmCmanM_.cjs"),f=require("./get-vault-withdrawals-8ALlEiAC.cjs"),A=["debug","info","warn","error","none"];function D(s={}){const{level:t="debug",prefix:n="[Lombard SDK]",timestamp:r=!1}=s,a=A.indexOf(t),c=u=>A.indexOf(u)>=a&&t!=="none",h=u=>{if(r){const d=new Date().toISOString();return`${n} ${d} ${u}`}return`${n} ${u}`},l=u=>!u||Object.keys(u).length===0?[]:[u];return{debug(u,d){c("debug")&&console.debug(h(u),...l(d))},info(u,d){c("info")&&console.info(h(u),...l(d))},warn(u,d){c("warn")&&console.warn(h(u),...l(d))},error(u,d){c("error")&&console.error(h(u),...l(d))}}}function M(){return{debug:()=>{},info:()=>{},warn:()=>{},error:()=>{}}}function H(){return{"X-SDK-Version":e.SDK_VERSION,"X-SDK-Runtime":e.SDK_RUNTIME}}class P{constructor(t=o.p){i(this,"apiVersion","v1");this.env=t}async deposits(t){return g.getDepositsByAddress({address:t,env:this.env})}async unstakes(t,n){return g.getUnstakesByAddress({address:t,env:this.env,options:n})}async points(t,n){return g.getPointsByAddress({address:t,env:this.env,season:n})}async exchangeRatio(){return R.getExchangeRatio({env:this.env})}async depositAddress(t,n,r){return g.getDepositBtcAddress({address:t,chainId:n,env:this.env,partnerId:r==null?void 0:r.partnerId,token:r==null?void 0:r.token})}async vaultWithdrawals(t,n){const r=t,a=(n==null?void 0:n.vault)??B.Vault.Veda;return n!=null&&n.chainId?f.getVaultWithdrawals({account:r,chainId:n.chainId,vaultKey:a,rpcUrl:n.rpcUrl,env:this.env}):f.getVaultWithdrawalsAllChains({account:r,vaultKey:a,rpcUrl:n==null?void 0:n.rpcUrl})}getApiVersion(){return this.apiVersion}}function G(s){if(!s.env)throw e.LombardError.missingParameter("env");const t={env:s.env,providers:s.providers||{}};return s.partner&&(F(s.partner),t.partner=s.partner),t}function F(s){if(typeof s!="object"||s===null)throw e.LombardError.invalidConfiguration("Partner configuration must be an object");const t=s;if(!t.partnerId||typeof t.partnerId!="string")throw e.LombardError.missingParameter("partner.partnerId");if(t.partnerId.trim().length===0)throw e.LombardError.invalidConfiguration("Partner ID cannot be empty")}class q{constructor(t){this.env=t}async generateDepositAddress(t){return O.generateDepositBtcAddress({address:t.address,chainId:t.chainId,signature:t.signature,token:t.token,eip712Data:t.eip712Data,signatureData:t.signatureData,pubKey:t.pubKey,env:this.env,partnerId:t.partnerId,referrerCode:t.referrerCode,captchaToken:t.captchaToken})}async getDepositAddress(t){try{return await g.getDepositBtcAddress({address:t.address,chainId:t.chainId,token:t.token,env:this.env,partnerId:t.partnerId})||void 0}catch{return}}async getDeposits(t){return(await g.getDepositsByAddress({address:t,env:this.env})).map(r=>{var a;return{depositAddress:r.depositAddress??"",blockHeight:r.blockHeight,isClaimed:r.isClaimed,txid:r.txHash,amount:(a=r.amount)==null?void 0:a.toString()}})}async storeFeeSignature(t){await E.storeNetworkFeeSignature({address:t.address,signature:t.signature,typedData:t.typedData,env:this.env,tokenAddress:t.tokenAddress})}async getFeeSignature(t){return E.getNetworkFeeSignature({address:t.address,chainId:t.chainId,env:this.env,tokenAddress:t.tokenAddress})}async storeStakeAndBakeSignature(t){await g.storeStakeAndBakeSignature({signature:t.signature,typedData:t.typedData,env:this.env})}}function K(){return{id:"api",register(s){return new q(s.env)}}}function Y(s){const t=new Map,n=[I.btcModule(),N.evmModule(),K()];for(const r of n)t.set(r.id,r);if(s)for(const r of s)t.set(r.id,r);return Array.from(t.values())}function V(s,t){for(const n of s)for(const r of n.requiresProviders??[])if(!j(t,r))throw e.LombardError.providerMissing(r,r)}function j(s,t){var n;return!!((n=s.providers)!=null&&n[t])}function b(s){const t=G(s),n=Y(s.modules);V(n,t);let r=s.logger;return!r&&s.debug&&(r=D({level:"debug"})),{...t,modules:n,logger:r}}function $(s){switch(s){case"prod":return"mainnet-beta";case"testnet":return"testnet";case"stage":case"dev":case"ibc":default:return"devnet"}}const y={routes:[{sourceChains:[e.Chain.SOLANA_DEVNET],destChain:e.Chain.BITCOIN_SIGNET,assetIn:C.AssetId.BTCb,assetOut:C.AssetId.BTC,envs:[o.r.stage,o.r.dev]}],recipientSchema:e.bitcoinAddressSchema};function W(s,t,n,r,a){return y.routes.some(c=>c.sourceChains.includes(s)&&c.destChain===t&&c.assetIn===n&&c.assetOut===r&&c.envs.includes(a))}class z extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!W(r.sourceChain,r.destChain,r.assetIn,r.assetOut,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=k.toSatoshi(n).toString(),c=$(this.env),{txHash:h}=await this.ctx.solana.redeemForBtc({amount:a,btcAddress:r,network:c,env:this.env});return this._txHash=h,this.emitProgress({status:e.NonEvmUnstakeStatus.CONFIRMING,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),{txHash:h}},e.NonEvmUnstakeStatus.CONFIRMING)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:y.recipientSchema})}}const _={routes:[{sourceChains:[e.Chain.SOLANA_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.SOLANA_DEVNET],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function X(s,t){return _.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}function Z(s){switch(s){case"prod":return"mainnet-beta";case"testnet":return"testnet";case"stage":case"dev":case"ibc":default:return"devnet"}}class J extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!X(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=k.toSatoshi(n).toString(),c=Z(this.env),{txHash:h}=await this.ctx.solana.unstake({amount:a,btcAddress:r,network:c});return this._txHash=h,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:h}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:_.recipientSchema})}}function Q(s){const n=new e.CapabilityRegistry(s.modules,s).require("solana");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},solana:n}}class S{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=Q(this.config)),this._ctx}unstake(t){return new J(this.ctx,t)}redeem(t){return new z(this.ctx,t)}}function tt(s){return new S(s)}const w={routes:[{sourceChains:[e.Chain.STARKNET_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.STARKNET_SEPOLIA],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function et(s,t){return w.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}class st extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!et(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const{txHash:a}=await this.ctx.starknet.unstake({amount:n,btcAddress:r,env:this.env});return this._txHash=a,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:a}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:w.recipientSchema})}}function nt(s){const n=new e.CapabilityRegistry(s.modules,s).require("starknet");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},starknet:n}}class p{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=nt(this.config)),this._ctx}unstake(t){return new st(this.ctx,t)}}function rt(s){return new p(s)}const x={routes:[{sourceChains:[e.Chain.SUI_MAINNET],destChain:e.Chain.BITCOIN_MAINNET,envs:[o.r.prod]},{sourceChains:[e.Chain.SUI_TESTNET],destChain:e.Chain.BITCOIN_SIGNET,envs:[o.r.testnet,o.r.stage,o.r.dev,o.r.ibc]}],recipientSchema:e.bitcoinAddressSchema};function at(s,t){return x.routes.some(n=>n.sourceChains.includes(s)&&n.envs.includes(t))}function it(s){switch(s){case e.Chain.SUI_MAINNET:return"sui:mainnet";case e.Chain.SUI_TESTNET:return"sui:testnet";default:return"sui:testnet"}}class ot extends e.BaseAction{constructor(n,r){super(e.NonEvmUnstakeStatus.IDLE);i(this,"_amount");i(this,"_recipient");i(this,"_txHash");i(this,"env");if(this.ctx=n,this.params=r,this.env=n.env,!at(r.sourceChain,this.env))throw e.LombardError.routeNotFound({assetOut:r.assetOut,sourceChain:r.sourceChain,destChain:r.destChain,env:this.env})}get amount(){return this._amount}get recipient(){return this._recipient}get txHash(){return this._txHash}async prepare(n){return this.assertStatus(e.NonEvmUnstakeStatus.IDLE,"prepare"),this.act(async()=>{const r=e.validatePrepareParams(this.prepareSchema,n,{destChain:this.params.destChain});this._amount=r.amount,this._recipient=r.recipient,this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.IDLE,releasing:e.StepStatus.IDLE}})},e.NonEvmUnstakeStatus.READY)}async execute(){return this.assertStatus(e.NonEvmUnstakeStatus.READY,"execute"),this.act(async()=>{const n=this._amount,r=this._recipient;if(!n||!r)throw e.LombardError.missingParameter("amount or recipient");this.emitProgress({status:e.NonEvmUnstakeStatus.READY,steps:{burning:e.StepStatus.PENDING,releasing:e.StepStatus.IDLE}});const a=it(this.params.sourceChain),{txHash:c}=await this.ctx.sui.unstake({amount:n,btcAddress:r,chainId:a,env:this.env});return this._txHash=c,this.emitProgress({status:e.NonEvmUnstakeStatus.COMPLETED,steps:{burning:e.StepStatus.COMPLETE,releasing:e.StepStatus.PENDING}}),this.emitCompleted(),{txHash:c}},e.NonEvmUnstakeStatus.COMPLETED)}get prepareSchema(){return e.objectType({amount:e.amountSchema,recipient:x.recipientSchema})}}function ct(s){const n=new e.CapabilityRegistry(s.modules,s).require("sui");return{env:s.env,partner:new e.PartnerConfiguration(s.partner),getProvider:async r=>{const a=e.getProviderGetter(s.providers,r);if(a)return a()},sui:n}}class m{constructor(t){i(this,"_ctx",null);this.config=t}get ctx(){return this._ctx||(this._ctx=ct(this.config)),this._ctx}unstake(t){return new ot(this.ctx,t)}}function ut(s){return new m(s)}class ht{constructor(t=o.p,n){i(this,"catalog");this.env=t,this.catalog=n??e.ASSET_CATALOG}getAddress(t,n){return e.getAssetAddress(t,this.env,n,this.catalog)}getDecimals(t){return e.getAssetDecimals(t,this.catalog)}getMetadata(t){return e.getAssetMetadata(t,this.catalog)}usesAssetRouter(t,n){return e.usesAssetRouter(t,this.env,n,this.catalog)}getAssetRouter(t,n){return e.getAssetRouter(t,this.env,n,this.catalog)}getBridgeAdapter(t,n){return e.getBridgeAdapter(t,this.env,n,this.catalog)}getPublicMarketMaker(t,n){return e.getPublicMarketMaker(t,this.env,n,this.catalog)}getByAddress(t,n){return e.getAssetByAddress(t,this.env,n,this.catalog)}isDeployed(t,n){return e.isAssetDeployed(t,this.env,n,this.catalog)}getChains(t){return e.getAssetChains(t,this.env,this.catalog)}getEnvironments(t,n){return e.getAssetEnvironments(t,n,this.catalog)}getSupportedAssets(){return e.getSupportedAssets(this.catalog)}getCatalog(){return this.catalog}}class L{constructor(t){i(this,"config");i(this,"env");i(this,"partnerConfig");i(this,"providerCache",new Map);i(this,"chain");i(this,"assets");i(this,"api");i(this,"referrals");i(this,"capabilities");this.config=t,this.env=t.env,this.partnerConfig=new e.PartnerConfiguration(t.partner),this.capabilities=new e.CapabilityRegistry(this.config.modules,this.config),this.chain={btc:new I.BtcActions(this.config),evm:new N.EvmActions(this.config),solana:new S(this.config),sui:new m(this.config),starknet:new p(this.config)},this.referrals=new g.ReferralsClient(this),this.assets=new ht(this.env),this.api=new P(this.env)}async getProvider(t){const n=t;if(this.providerCache.has(n))return this.providerCache.get(n);const r=e.getProviderGetter(this.config.providers,t);if(!r)throw e.LombardError.providerMissing(t,t);const a=await r();if(!a)throw new e.LombardError(e.ProviderErrorCode.PROVIDER_INITIALIZATION_FAILED,`Failed to initialize ${t} provider`);return this.providerCache.set(n,a),a}configure(t){this.partnerConfig.update(t)}registerAsset(t){throw new Error("Not implemented yet")}getPartnerConfig(){return this.partnerConfig}getPartnerId(){return this.partnerConfig.getPartnerId()}}const v=new Map;function dt(s){return v.has(s)||v.set(s,Promise.resolve(e.ASSET_CATALOG)),v.get(s)}async function gt(s){const t="modules"in s&&Array.isArray(s.modules)?s:b(s),n=await dt(t.env),r={...t,catalog:n};return new L(r)}function lt(s){return typeof s=="object"&&s!==null&&"request"in s&&typeof s.request=="function"}function vt(s){return typeof s=="object"&&s!==null&&"getAddresses"in s&&typeof s.getAddresses=="function"}function St(s){return typeof s=="object"&&s!==null&&"publicKey"in s&&"signAndSendTransaction"in s}function pt(s){return typeof s=="object"&&s!==null&&"getAddress"in s&&"signAndExecuteTransactionBlock"in s}function mt(s){return typeof s=="object"&&s!==null&&"address"in s&&"execute"in s}const Et={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},Ct={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},ft={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},At={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},It={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"},Nt={Progress:"progress",StatusChange:"status-change",Completed:"completed",Failed:"failed",Error:"error"};exports.ApiNamespace=P;exports.BridgeEvent=Nt;exports.DeployEvent=It;exports.DepositEvent=Ct;exports.LombardSDK=L;exports.RedeemEvent=ft;exports.SolanaActions=S;exports.StakeEvent=Et;exports.StarknetActions=p;exports.SuiActions=m;exports.UnstakeEvent=At;exports.createConfig=b;exports.createConsoleLogger=D;exports.createLombardSDK=gt;exports.createSilentLogger=M;exports.getSdkHeaders=H;exports.isBtcProvider=vt;exports.isEvmProvider=lt;exports.isSolanaProvider=St;exports.isStarknetProvider=mt;exports.isSuiProvider=pt;exports.solanaActions=tt;exports.starknetActions=rt;exports.suiActions=ut;
|
|
2
|
+
//# sourceMappingURL=events-flcJmreN.cjs.map
|