@gardenfi/orderbook 3.1.3-beta.6 → 3.1.3-beta.8

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/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index2.cjs"),n=require("./index3.cjs"),e=require("./index4.cjs"),s=require("./index5.cjs"),o=require("./index6.cjs"),t=require("./index7.cjs"),a=require("./index8.cjs"),l=require("./index9.cjs"),r=require("./index10.cjs"),c=require("./index11.cjs"),u=require("./index12.cjs");exports.Orderbook=i.Orderbook;exports.BlockchainType=n.BlockchainType;exports.Assets=e.Assets;exports.Chains=e.Chains;exports.Config=e.Config;exports.NATIVE_TOKENS=e.NATIVE_TOKENS;exports.OrderLifecycle=e.OrderLifecycle;exports.OrderStatus=e.OrderStatus;exports.getBlockchainType=e.getBlockchainType;exports.is=e.is;exports.isAlpenSignet=e.isAlpenSignet;exports.isBitcoin=e.isBitcoin;exports.isEVM=e.isEVM;exports.isEvmNativeToken=e.isEvmNativeToken;exports.isLitecoin=e.isLitecoin;exports.isMainnet=e.isMainnet;exports.isNativeToken=e.isNativeToken;exports.isSolana=e.isSolana;exports.isSolanaNativeToken=e.isSolanaNativeToken;exports.isSpark=e.isSpark;exports.isStarknet=e.isStarknet;exports.isSui=e.isSui;exports.isSuiNativeToken=e.isSuiNativeToken;exports.isTron=e.isTron;exports.isXrpl=e.isXrpl;exports.ArbitrumLocalnet=s.ArbitrumLocalnet;exports.ETHStarknetLocalnetAsset=s.ETHStarknetLocalnetAsset;exports.EthereumLocalnet=s.EthereumLocalnet;exports.SOLSolanaLocalnetAsset=s.SOLSolanaLocalnetAsset;exports.STRKStarknetLocalnetAsset=s.STRKStarknetLocalnetAsset;exports.StarknetLocalnet=s.StarknetLocalnet;exports.USDCArbitrumLocalnetAsset=s.USDCArbitrumLocalnetAsset;exports.USDCEthereumLocalnetAsset=s.USDCEthereumLocalnetAsset;exports.WBTCArbitrumLocalnetAsset=s.WBTCArbitrumLocalnetAsset;exports.WBTCEthereumLocalnetAsset=s.WBTCEthereumLocalnetAsset;exports.bitcoinRegtestAsset=s.bitcoinRegtestAsset;exports.buildAssetsWithChain=o.buildAssetsWithChain;exports.ConstructUrl=t.ConstructUrl;exports.discriminateOrderResponse=t.discriminateOrderResponse;exports.getOrderResponseType=t.getOrderResponseType;exports.isBitcoinOrderResponse=t.isBitcoinOrderResponse;exports.isEvmOrderResponse=t.isEvmOrderResponse;exports.isOrder=t.isOrder;exports.isSolanaOrderResponse=t.isSolanaOrderResponse;exports.isStarknetOrderResponse=t.isStarknetOrderResponse;exports.isSuiOrderResponse=t.isSuiOrderResponse;exports.isXrplOrderResponse=t.isXrplOrderResponse;exports.ChainAsset=a.ChainAsset;exports.ExplorerUrlBuilder=l.ExplorerUrlBuilder;exports.OrderAction=r.OrderAction;exports.ParseOrderStatus=r.ParseOrderStatus;exports.isCompleted=r.isCompleted;exports.isDeadlinePassed=r.isDeadlinePassed;exports.parseAction=r.parseAction;exports.AssetManager=c.AssetManager;exports.RouteValidator=u.RouteValidator;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index2.cjs"),n=require("./index3.cjs"),e=require("./index4.cjs"),s=require("./index5.cjs"),o=require("./index6.cjs"),t=require("./index7.cjs"),a=require("./index8.cjs"),l=require("./index9.cjs"),i=require("./index10.cjs"),c=require("./index11.cjs"),d=require("./index12.cjs");exports.Orderbook=r.Orderbook;exports.BlockchainType=n.BlockchainType;exports.Assets=e.Assets;exports.Chains=e.Chains;exports.Config=e.Config;exports.NATIVE_TOKENS=e.NATIVE_TOKENS;exports.OrderLifecycle=e.OrderLifecycle;exports.OrderStatus=e.OrderStatus;exports.getBlockchainType=e.getBlockchainType;exports.is=e.is;exports.isAlpenSignet=e.isAlpenSignet;exports.isBitcoin=e.isBitcoin;exports.isEVM=e.isEVM;exports.isEvmNativeToken=e.isEvmNativeToken;exports.isLightning=e.isLightning;exports.isLitecoin=e.isLitecoin;exports.isMainnet=e.isMainnet;exports.isNativeToken=e.isNativeToken;exports.isSolana=e.isSolana;exports.isSolanaNativeToken=e.isSolanaNativeToken;exports.isSpark=e.isSpark;exports.isStarknet=e.isStarknet;exports.isSui=e.isSui;exports.isSuiNativeToken=e.isSuiNativeToken;exports.isTron=e.isTron;exports.isXrpl=e.isXrpl;exports.ArbitrumLocalnet=s.ArbitrumLocalnet;exports.ETHStarknetLocalnetAsset=s.ETHStarknetLocalnetAsset;exports.EthereumLocalnet=s.EthereumLocalnet;exports.SOLSolanaLocalnetAsset=s.SOLSolanaLocalnetAsset;exports.STRKStarknetLocalnetAsset=s.STRKStarknetLocalnetAsset;exports.StarknetLocalnet=s.StarknetLocalnet;exports.USDCArbitrumLocalnetAsset=s.USDCArbitrumLocalnetAsset;exports.USDCEthereumLocalnetAsset=s.USDCEthereumLocalnetAsset;exports.WBTCArbitrumLocalnetAsset=s.WBTCArbitrumLocalnetAsset;exports.WBTCEthereumLocalnetAsset=s.WBTCEthereumLocalnetAsset;exports.bitcoinRegtestAsset=s.bitcoinRegtestAsset;exports.buildAssetsWithChain=o.buildAssetsWithChain;exports.ConstructUrl=t.ConstructUrl;exports.discriminateOrderResponse=t.discriminateOrderResponse;exports.getOrderResponseType=t.getOrderResponseType;exports.isBitcoinOrderResponse=t.isBitcoinOrderResponse;exports.isEvmOrderResponse=t.isEvmOrderResponse;exports.isLightningOrderResponse=t.isLightningOrderResponse;exports.isOrder=t.isOrder;exports.isSolanaOrderResponse=t.isSolanaOrderResponse;exports.isStarknetOrderResponse=t.isStarknetOrderResponse;exports.isSuiOrderResponse=t.isSuiOrderResponse;exports.isXrplOrderResponse=t.isXrplOrderResponse;exports.ChainAsset=a.ChainAsset;exports.ExplorerUrlBuilder=l.ExplorerUrlBuilder;exports.OrderAction=i.OrderAction;exports.ParseOrderStatus=i.ParseOrderStatus;exports.isCompleted=i.isCompleted;exports.isDeadlinePassed=i.isDeadlinePassed;exports.parseAction=i.parseAction;exports.AssetManager=c.AssetManager;exports.RouteValidator=d.RouteValidator;
package/dist/index.js CHANGED
@@ -1,69 +1,71 @@
1
1
  import { Orderbook as s } from "./index2.js";
2
- import { BlockchainType as o } from "./index3.js";
3
- import { Assets as n, Chains as a, Config as p, NATIVE_TOKENS as l, OrderLifecycle as c, OrderStatus as d, getBlockchainType as m, is as S, isAlpenSignet as A, isBitcoin as O, isEVM as u, isEvmNativeToken as T, isLitecoin as f, isMainnet as k, isNativeToken as L, isSolana as x, isSolanaNativeToken as R, isSpark as C, isStarknet as E, isSui as h, isSuiNativeToken as B, isTron as b, isXrpl as g } from "./index4.js";
4
- import { ArbitrumLocalnet as N, ETHStarknetLocalnetAsset as y, EthereumLocalnet as U, SOLSolanaLocalnetAsset as D, STRKStarknetLocalnetAsset as M, StarknetLocalnet as V, USDCArbitrumLocalnetAsset as W, USDCEthereumLocalnetAsset as K, WBTCArbitrumLocalnetAsset as P, WBTCEthereumLocalnetAsset as X, bitcoinRegtestAsset as H } from "./index5.js";
5
- import { buildAssetsWithChain as _ } from "./index6.js";
6
- import { ConstructUrl as q, discriminateOrderResponse as w, getOrderResponseType as z, isBitcoinOrderResponse as F, isEvmOrderResponse as G, isOrder as J, isSolanaOrderResponse as Q, isStarknetOrderResponse as Y, isSuiOrderResponse as Z, isXrplOrderResponse as $ } from "./index7.js";
7
- import { ChainAsset as re } from "./index8.js";
8
- import { ExplorerUrlBuilder as te } from "./index9.js";
9
- import { OrderAction as ie, ParseOrderStatus as ne, isCompleted as ae, isDeadlinePassed as pe, parseAction as le } from "./index10.js";
10
- import { AssetManager as de } from "./index11.js";
11
- import { RouteValidator as Se } from "./index12.js";
2
+ import { BlockchainType as i } from "./index3.js";
3
+ import { Assets as n, Chains as a, Config as p, NATIVE_TOKENS as l, OrderLifecycle as c, OrderStatus as d, getBlockchainType as m, is as S, isAlpenSignet as A, isBitcoin as O, isEVM as u, isEvmNativeToken as L, isLightning as T, isLitecoin as f, isMainnet as k, isNativeToken as x, isSolana as R, isSolanaNativeToken as h, isSpark as g, isStarknet as C, isSui as E, isSuiNativeToken as B, isTron as b, isXrpl as v } from "./index4.js";
4
+ import { ArbitrumLocalnet as y, ETHStarknetLocalnetAsset as U, EthereumLocalnet as D, SOLSolanaLocalnetAsset as M, STRKStarknetLocalnetAsset as V, StarknetLocalnet as W, USDCArbitrumLocalnetAsset as K, USDCEthereumLocalnetAsset as P, WBTCArbitrumLocalnetAsset as X, WBTCEthereumLocalnetAsset as H, bitcoinRegtestAsset as I } from "./index5.js";
5
+ import { buildAssetsWithChain as j } from "./index6.js";
6
+ import { ConstructUrl as w, discriminateOrderResponse as z, getOrderResponseType as F, isBitcoinOrderResponse as G, isEvmOrderResponse as J, isLightningOrderResponse as Q, isOrder as Y, isSolanaOrderResponse as Z, isStarknetOrderResponse as $, isSuiOrderResponse as ee, isXrplOrderResponse as re } from "./index7.js";
7
+ import { ChainAsset as te } from "./index8.js";
8
+ import { ExplorerUrlBuilder as oe } from "./index9.js";
9
+ import { OrderAction as ae, ParseOrderStatus as pe, isCompleted as le, isDeadlinePassed as ce, parseAction as de } from "./index10.js";
10
+ import { AssetManager as Se } from "./index11.js";
11
+ import { RouteValidator as Oe } from "./index12.js";
12
12
  export {
13
- N as ArbitrumLocalnet,
14
- de as AssetManager,
13
+ y as ArbitrumLocalnet,
14
+ Se as AssetManager,
15
15
  n as Assets,
16
- o as BlockchainType,
17
- re as ChainAsset,
16
+ i as BlockchainType,
17
+ te as ChainAsset,
18
18
  a as Chains,
19
19
  p as Config,
20
- q as ConstructUrl,
21
- y as ETHStarknetLocalnetAsset,
22
- U as EthereumLocalnet,
23
- te as ExplorerUrlBuilder,
20
+ w as ConstructUrl,
21
+ U as ETHStarknetLocalnetAsset,
22
+ D as EthereumLocalnet,
23
+ oe as ExplorerUrlBuilder,
24
24
  l as NATIVE_TOKENS,
25
- ie as OrderAction,
25
+ ae as OrderAction,
26
26
  c as OrderLifecycle,
27
27
  d as OrderStatus,
28
28
  s as Orderbook,
29
- ne as ParseOrderStatus,
30
- Se as RouteValidator,
31
- D as SOLSolanaLocalnetAsset,
32
- M as STRKStarknetLocalnetAsset,
33
- V as StarknetLocalnet,
34
- W as USDCArbitrumLocalnetAsset,
35
- K as USDCEthereumLocalnetAsset,
36
- P as WBTCArbitrumLocalnetAsset,
37
- X as WBTCEthereumLocalnetAsset,
38
- H as bitcoinRegtestAsset,
39
- _ as buildAssetsWithChain,
40
- w as discriminateOrderResponse,
29
+ pe as ParseOrderStatus,
30
+ Oe as RouteValidator,
31
+ M as SOLSolanaLocalnetAsset,
32
+ V as STRKStarknetLocalnetAsset,
33
+ W as StarknetLocalnet,
34
+ K as USDCArbitrumLocalnetAsset,
35
+ P as USDCEthereumLocalnetAsset,
36
+ X as WBTCArbitrumLocalnetAsset,
37
+ H as WBTCEthereumLocalnetAsset,
38
+ I as bitcoinRegtestAsset,
39
+ j as buildAssetsWithChain,
40
+ z as discriminateOrderResponse,
41
41
  m as getBlockchainType,
42
- z as getOrderResponseType,
42
+ F as getOrderResponseType,
43
43
  S as is,
44
44
  A as isAlpenSignet,
45
45
  O as isBitcoin,
46
- F as isBitcoinOrderResponse,
47
- ae as isCompleted,
48
- pe as isDeadlinePassed,
46
+ G as isBitcoinOrderResponse,
47
+ le as isCompleted,
48
+ ce as isDeadlinePassed,
49
49
  u as isEVM,
50
- T as isEvmNativeToken,
51
- G as isEvmOrderResponse,
50
+ L as isEvmNativeToken,
51
+ J as isEvmOrderResponse,
52
+ T as isLightning,
53
+ Q as isLightningOrderResponse,
52
54
  f as isLitecoin,
53
55
  k as isMainnet,
54
- L as isNativeToken,
55
- J as isOrder,
56
- x as isSolana,
57
- R as isSolanaNativeToken,
58
- Q as isSolanaOrderResponse,
59
- C as isSpark,
60
- E as isStarknet,
61
- Y as isStarknetOrderResponse,
62
- h as isSui,
56
+ x as isNativeToken,
57
+ Y as isOrder,
58
+ R as isSolana,
59
+ h as isSolanaNativeToken,
60
+ Z as isSolanaOrderResponse,
61
+ g as isSpark,
62
+ C as isStarknet,
63
+ $ as isStarknetOrderResponse,
64
+ E as isSui,
63
65
  B as isSuiNativeToken,
64
- Z as isSuiOrderResponse,
66
+ ee as isSuiOrderResponse,
65
67
  b as isTron,
66
- g as isXrpl,
67
- $ as isXrplOrderResponse,
68
- le as parseAction
68
+ v as isXrpl,
69
+ re as isXrplOrderResponse,
70
+ de as parseAction
69
71
  };
package/dist/index11.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("@gardenfi/utils"),y=require("./index12.cjs"),p=require("./index4.cjs"),r=require("./index8.cjs"),o=require("./index13.cjs"),h=Object.keys(p.Config);class g{constructor(t,s){this.assets=null,this.chains=null,this.routeMatrix=null,this.isLoading=!1,this.error=null,typeof s=="string"?this.auth=new n.ApiKey(s):this.auth=s;const e=o.ensureUrl(t.baseUrl),a=o.buildDefaultEndpoint(e,"/v2/chains"),i=o.buildDefaultEndpoint(e,"/v2/policy");this.urls={base:e,assets:o.ensureUrl(t.assetsUrl??a),policy:o.ensureUrl(t.policyUrl??i)},this.routeValidator=new y.RouteValidator(this.urls.policy.toString(),this.auth)}async initialize(){await this.fetchAndSetAssetsAndChains(),await this.routeValidator.loadPolicy()}async fetchAndSetAssetsAndChains(){try{this.isLoading=!0,this.error=null;const t=await this.auth.getAuthHeaders();if(!t.ok)return n.Err("Failed to get auth headers");const s=await n.Fetcher.get(this.urls.assets,{headers:{...t.val}});if(!s.result)return n.Err(`Failed to fetch chains data: ${s.error}`);const{assets:e,chains:a}=this.processApiData(s.result);return this.assets=e,this.chains=a,await this.buildRouteMatrix(),n.Ok("AssetManager initialized successfully")}catch(t){return n.Err(`Failed to fetch assets data: ${t}`)}finally{this.isLoading=!1}}async isRouteValid(t,s){return await this.routeValidator.isValidRoute(r.ChainAsset.from(t.id),r.ChainAsset.from(s.id))}getValidDestinations(t){if(!this.routeMatrix||!this.assets||!t.id)return console.warn("Missing routeMatrix, assets, or asset. Returning all assets."),[];const s=this.routeMatrix[t.id.toString().toLowerCase()];return s?s.map(e=>{const a=e.toString();return Object.values(this.assets).find(i=>r.ChainAsset.from(i).toString()===a)}).filter(Boolean):[]}getAsset(t){if(!this.assets)return;const s=r.ChainAsset.from(t).toString();return this.assets[s]}getAssetsByChain(t){return this.assets?Object.values(this.assets).filter(s=>s.chain===t):[]}searchAssets(t){if(!this.assets)return[];const s=t.toLowerCase();return Object.values(this.assets).filter(e=>e.symbol.toLowerCase().includes(s)||e.name.toLowerCase().includes(s))}getChain(t){if(this.chains)return this.chains[t]}async buildRouteMatrix(){if(!this.assets||!this.routeValidator)return;const t=Object.values(this.assets).map(s=>{if(!s.id)return null;try{return r.ChainAsset.from(s.id)}catch{return null}}).filter(s=>s!==null);this.routeMatrix=await this.routeValidator.buildRouteMatrix(t)}processApiData(t){const s={},e={};for(const a of t){const i=this.parseChainIdentifier(a.chain);if(!i||!h.includes(i))continue;const u={...a,name:a.name||this.formatChainName(i),chain:i};for(const l of a.assets){const c=r.ChainAsset.from(l.id).toString(),{name:d,symbol:f}=o.parseAssetNameSymbol(l.name,l.id),A={...l,id:r.ChainAsset.from(l.id),chain:i,name:d,symbol:f};s[c]=A,e[i]||(e[i]=u)}}return{assets:s,chains:e}}parseChainIdentifier(t){return h.includes(t)?t:null}formatChainName(t){return t.split("_").map(s=>s.charAt(0).toUpperCase()+s.slice(1)).join(" ")}async refresh(){await this.initialize()}}exports.AssetManager=g;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("@gardenfi/utils"),y=require("./index12.cjs"),p=require("./index4.cjs"),r=require("./index8.cjs"),o=require("./index14.cjs"),h=Object.keys(p.Config);class g{constructor(t,s){this.assets=null,this.chains=null,this.routeMatrix=null,this.isLoading=!1,this.error=null,typeof s=="string"?this.auth=new n.ApiKey(s):this.auth=s;const e=o.ensureUrl(t.baseUrl),a=o.buildDefaultEndpoint(e,"/v2/chains"),i=o.buildDefaultEndpoint(e,"/v2/policy");this.urls={base:e,assets:o.ensureUrl(t.assetsUrl??a),policy:o.ensureUrl(t.policyUrl??i)},this.routeValidator=new y.RouteValidator(this.urls.policy.toString(),this.auth)}async initialize(){await this.fetchAndSetAssetsAndChains(),await this.routeValidator.loadPolicy()}async fetchAndSetAssetsAndChains(){try{this.isLoading=!0,this.error=null;const t=await this.auth.getAuthHeaders();if(!t.ok)return n.Err("Failed to get auth headers");const s=await n.Fetcher.get(this.urls.assets,{headers:{...t.val}});if(!s.result)return n.Err(`Failed to fetch chains data: ${s.error}`);const{assets:e,chains:a}=this.processApiData(s.result);return this.assets=e,this.chains=a,await this.buildRouteMatrix(),n.Ok("AssetManager initialized successfully")}catch(t){return n.Err(`Failed to fetch assets data: ${t}`)}finally{this.isLoading=!1}}async isRouteValid(t,s){return await this.routeValidator.isValidRoute(r.ChainAsset.from(t.id),r.ChainAsset.from(s.id))}getValidDestinations(t){if(!this.routeMatrix||!this.assets||!t.id)return console.warn("Missing routeMatrix, assets, or asset. Returning all assets."),[];const s=this.routeMatrix[t.id.toString().toLowerCase()];return s?s.map(e=>{const a=e.toString();return Object.values(this.assets).find(i=>r.ChainAsset.from(i).toString()===a)}).filter(Boolean):[]}getAsset(t){if(!this.assets)return;const s=r.ChainAsset.from(t).toString();return this.assets[s]}getAssetsByChain(t){return this.assets?Object.values(this.assets).filter(s=>s.chain===t):[]}searchAssets(t){if(!this.assets)return[];const s=t.toLowerCase();return Object.values(this.assets).filter(e=>e.symbol.toLowerCase().includes(s)||e.name.toLowerCase().includes(s))}getChain(t){if(this.chains)return this.chains[t]}async buildRouteMatrix(){if(!this.assets||!this.routeValidator)return;const t=Object.values(this.assets).map(s=>{if(!s.id)return null;try{return r.ChainAsset.from(s.id)}catch{return null}}).filter(s=>s!==null);this.routeMatrix=await this.routeValidator.buildRouteMatrix(t)}processApiData(t){const s={},e={};for(const a of t){const i=this.parseChainIdentifier(a.chain);if(!i||!h.includes(i))continue;const u={...a,name:a.name||this.formatChainName(i),chain:i};for(const l of a.assets){const c=r.ChainAsset.from(l.id).toString(),{name:d,symbol:f}=o.parseAssetNameSymbol(l.name,l.id),A={...l,id:r.ChainAsset.from(l.id),chain:i,name:d,symbol:f};s[c]=A,e[i]||(e[i]=u)}}return{assets:s,chains:e}}parseChainIdentifier(t){return h.includes(t)?t:null}formatChainName(t){return t.split("_").map(s=>s.charAt(0).toUpperCase()+s.slice(1)).join(" ")}async refresh(){await this.initialize()}}exports.AssetManager=g;
package/dist/index11.js CHANGED
@@ -2,7 +2,7 @@ import { ApiKey as A, Err as o, Fetcher as y, Ok as g } from "@gardenfi/utils";
2
2
  import { RouteValidator as C } from "./index12.js";
3
3
  import { Config as b } from "./index4.js";
4
4
  import { ChainAsset as r } from "./index8.js";
5
- import { ensureUrl as l, buildDefaultEndpoint as u, parseAssetNameSymbol as w } from "./index13.js";
5
+ import { ensureUrl as l, buildDefaultEndpoint as u, parseAssetNameSymbol as w } from "./index14.js";
6
6
  const c = Object.keys(b);
7
7
  class I {
8
8
  constructor(t, s) {
package/dist/index13.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@gardenfi/utils"),p=require("./index8.cjs");function d(n,t,e){var o;const r=(n??"").trim();if(!r)return{name:"",symbol:""};const i=r.split(":");if(i.length>=2){const u=((o=i[0])==null?void 0:o.trim())||"",m=i.slice(1).join(":").trim()||(e==null?void 0:e.trim())||"";return{name:u,symbol:m}}let s="";if(t)try{s=(typeof t=="string"?p.ChainAsset.from(t):t).symbol.toUpperCase()}catch{}return{name:r,symbol:s||(e==null?void 0:e.trim())||""}}function h(n){return n instanceof c.Url?n:new c.Url(n)}function A(n,t){const e=n.toString().replace(/\/+$/,""),r=t.startsWith("/")?t:`/${t}`;return`${e}${r}`}exports.buildDefaultEndpoint=A;exports.ensureUrl=h;exports.parseAssetNameSymbol=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={INVALID_SEND_AMOUNT:"invalid send amount",INVALID_RECEIVE_AMOUNT:"invalid receive amount",UNSUPPORTED_CHAIN:"unsupported chain",SAME_ASSET:"cannot create orderpair with the same assets",INVALID_AS_ADDRESS:"invalid atomic swap address",INVALID_TOKEN:"invalid token address",INVALID_AMOUNTS:"invalid amounts",RECEIVE_AMOUNT_GREATER:"receive amount is greater than send amount",INSUFFICIENT_LIQUIDITY:"insufficient liquidity"};exports.OrderbookErrors=e;
package/dist/index13.js CHANGED
@@ -1,31 +1,14 @@
1
- import { Url as p } from "@gardenfi/utils";
2
- import { ChainAsset as c } from "./index8.js";
3
- function $(r, t, n) {
4
- var o;
5
- const e = (r ?? "").trim();
6
- if (!e) return { name: "", symbol: "" };
7
- const i = e.split(":");
8
- if (i.length >= 2) {
9
- const m = ((o = i[0]) == null ? void 0 : o.trim()) || "", u = i.slice(1).join(":").trim() || (n == null ? void 0 : n.trim()) || "";
10
- return { name: m, symbol: u };
11
- }
12
- let s = "";
13
- if (t)
14
- try {
15
- s = (typeof t == "string" ? c.from(t) : t).symbol.toUpperCase();
16
- } catch {
17
- }
18
- return { name: e, symbol: s || (n == null ? void 0 : n.trim()) || "" };
19
- }
20
- function d(r) {
21
- return r instanceof p ? r : new p(r);
22
- }
23
- function f(r, t) {
24
- const n = r.toString().replace(/\/+$/, ""), e = t.startsWith("/") ? t : `/${t}`;
25
- return `${n}${e}`;
26
- }
1
+ const e = {
2
+ INVALID_SEND_AMOUNT: "invalid send amount",
3
+ INVALID_RECEIVE_AMOUNT: "invalid receive amount",
4
+ UNSUPPORTED_CHAIN: "unsupported chain",
5
+ SAME_ASSET: "cannot create orderpair with the same assets",
6
+ INVALID_AS_ADDRESS: "invalid atomic swap address",
7
+ INVALID_TOKEN: "invalid token address",
8
+ INVALID_AMOUNTS: "invalid amounts",
9
+ RECEIVE_AMOUNT_GREATER: "receive amount is greater than send amount",
10
+ INSUFFICIENT_LIQUIDITY: "insufficient liquidity"
11
+ };
27
12
  export {
28
- f as buildDefaultEndpoint,
29
- d as ensureUrl,
30
- $ as parseAssetNameSymbol
13
+ e as OrderbookErrors
31
14
  };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@gardenfi/utils"),p=require("./index8.cjs");function d(n,t,e){var o;const r=(n??"").trim();if(!r)return{name:"",symbol:""};const i=r.split(":");if(i.length>=2){const u=((o=i[0])==null?void 0:o.trim())||"",m=i.slice(1).join(":").trim()||(e==null?void 0:e.trim())||"";return{name:u,symbol:m}}let s="";if(t)try{s=(typeof t=="string"?p.ChainAsset.from(t):t).symbol.toUpperCase()}catch{}return{name:r,symbol:s||(e==null?void 0:e.trim())||""}}function h(n){return n instanceof c.Url?n:new c.Url(n)}function A(n,t){const e=n.toString().replace(/\/+$/,""),r=t.startsWith("/")?t:`/${t}`;return`${e}${r}`}exports.buildDefaultEndpoint=A;exports.ensureUrl=h;exports.parseAssetNameSymbol=d;
@@ -0,0 +1,31 @@
1
+ import { Url as p } from "@gardenfi/utils";
2
+ import { ChainAsset as c } from "./index8.js";
3
+ function $(r, t, n) {
4
+ var o;
5
+ const e = (r ?? "").trim();
6
+ if (!e) return { name: "", symbol: "" };
7
+ const i = e.split(":");
8
+ if (i.length >= 2) {
9
+ const m = ((o = i[0]) == null ? void 0 : o.trim()) || "", u = i.slice(1).join(":").trim() || (n == null ? void 0 : n.trim()) || "";
10
+ return { name: m, symbol: u };
11
+ }
12
+ let s = "";
13
+ if (t)
14
+ try {
15
+ s = (typeof t == "string" ? c.from(t) : t).symbol.toUpperCase();
16
+ } catch {
17
+ }
18
+ return { name: e, symbol: s || (n == null ? void 0 : n.trim()) || "" };
19
+ }
20
+ function d(r) {
21
+ return r instanceof p ? r : new p(r);
22
+ }
23
+ function f(r, t) {
24
+ const n = r.toString().replace(/\/+$/, ""), e = t.startsWith("/") ? t : `/${t}`;
25
+ return `${n}${e}`;
26
+ }
27
+ export {
28
+ f as buildDefaultEndpoint,
29
+ d as ensureUrl,
30
+ $ as parseAssetNameSymbol
31
+ };
package/dist/index2.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),c=require("./index7.cjs"),d=require("./index10.cjs");class l{constructor(o,s){this.url=o,this.auth=s}async createOrder(o){try{const s=await this.auth.getAuthHeaders();if(s.error)return r.Err(s.error);const e=await r.Fetcher.post(this.url.endpoint("/v2/orders"),{body:JSON.stringify(o),headers:{...s.val,"Content-Type":"application/json"}});if(e.error)return r.Err(e.error);if(!e.result)return r.Err("CreateOrder: Unexpected error, result is undefined");const i=c.discriminateOrderResponse(e.result);return i?r.Ok(i):r.Err("CreateOrder: Unable to determine order type from response")}catch(s){return r.Err("CreateOrder Err:",String(s))}}async getOrder(o,s){try{const e=await this.auth.getAuthHeaders();if(e.error)return r.Err(e.error);const i=this.url.endpoint("/v2/orders").endpoint(o),n=await r.Fetcher.get(i,{...s,headers:{...e.val,"Content-Type":"application/json"}});if(n.error)return r.Err(n.error);if(!n.result)return r.Err("GetOrder: Unexpected error, result is undefined");const t=d.ParseOrderStatus(n.result);return r.Ok({...n.result,status:t})}catch(e){return r.Err(`GetOrder: ${e instanceof Error?e.message:String(e)}`)}}async getOrders(o,s){const e=await this.auth.getAuthHeaders();if(e.error)return r.Err(e.error);const n=c.ConstructUrl(this.url,"/v2/orders",o);try{const t=await r.Fetcher.get(n,{...s,headers:{...e.val,"Content-Type":"application/json"}});if(t.error)return r.Err(t.error);if(!t.result)return r.Err("GetAllOrders: Unexpected error, result is undefined");const u=t.result.data.map(a=>({...a,status:d.ParseOrderStatus(a)}));return r.Ok({...t.result,data:u})}catch(t){return r.Err(`GetAllOrders: ${t instanceof Error?t.message:String(t)}`)}}async subscribeOrders(o,s,e,i){let n=!1;const t=async()=>{if(!n){n=!0;try{const a=await this.getOrders(o,i);a.ok?await s(a.val):console.error("Error fetching orders:",a.error)}catch(a){console.error("Error fetching orders:",a)}finally{n=!1}}};await t();const u=setInterval(t,e);return()=>{clearInterval(u)}}}exports.Orderbook=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),c=require("./index7.cjs"),d=require("./index10.cjs"),l=require("./index13.cjs");class h{constructor(o,n){this.url=o,this.auth=n}async createOrder(o){try{const n=await this.auth.getAuthHeaders();if(n.error)return r.Err(n.error);const e=await r.Fetcher.post(this.url.endpoint("/v2/orders"),{body:JSON.stringify(o),headers:{...n.val,"Content-Type":"application/json"},onRetry:t=>!((t==null?void 0:t.message)||(t==null?void 0:t.toString())||"").toLowerCase().includes(l.OrderbookErrors.INSUFFICIENT_LIQUIDITY)});if(e.error)return r.Err(e.error);if(!e.result)return r.Err("CreateOrder: Unexpected error, result is undefined");const i=c.discriminateOrderResponse(e.result);return i?r.Ok(i):r.Err("CreateOrder: Unable to determine order type from response")}catch(n){return r.Err("CreateOrder Err:",String(n))}}async getOrder(o,n){try{const e=await this.auth.getAuthHeaders();if(e.error)return r.Err(e.error);const i=this.url.endpoint("/v2/orders").endpoint(o),t=await r.Fetcher.get(i,{...n,headers:{...e.val,"Content-Type":"application/json"}});if(t.error)return r.Err(t.error);if(!t.result)return r.Err("GetOrder: Unexpected error, result is undefined");const s=d.ParseOrderStatus(t.result);return r.Ok({...t.result,status:s})}catch(e){return r.Err(`GetOrder: ${e instanceof Error?e.message:String(e)}`)}}async getOrders(o,n){const e=await this.auth.getAuthHeaders();if(e.error)return r.Err(e.error);const t=c.ConstructUrl(this.url,"/v2/orders",o);try{const s=await r.Fetcher.get(t,{...n,headers:{...e.val,"Content-Type":"application/json"}});if(s.error)return r.Err(s.error);if(!s.result)return r.Err("GetAllOrders: Unexpected error, result is undefined");const u=s.result.data.map(a=>({...a,status:d.ParseOrderStatus(a)}));return r.Ok({...s.result,data:u})}catch(s){return r.Err(`GetAllOrders: ${s instanceof Error?s.message:String(s)}`)}}async subscribeOrders(o,n,e,i){let t=!1;const s=async()=>{if(!t){t=!0;try{const a=await this.getOrders(o,i);a.ok?await n(a.val):console.error("Error fetching orders:",a.error)}catch(a){console.error("Error fetching orders:",a)}finally{t=!1}}};await s();const u=setInterval(s,e);return()=>{clearInterval(u)}}}exports.Orderbook=h;
package/dist/index2.js CHANGED
@@ -1,84 +1,83 @@
1
- import { Err as s, Fetcher as d, Ok as c } from "@gardenfi/utils";
1
+ import { Err as o, Fetcher as d, Ok as c } from "@gardenfi/utils";
2
2
  import { discriminateOrderResponse as h, ConstructUrl as f } from "./index7.js";
3
3
  import { ParseOrderStatus as l } from "./index10.js";
4
- class m {
5
- constructor(o, t) {
6
- this.url = o, this.auth = t;
4
+ import { OrderbookErrors as p } from "./index13.js";
5
+ class w {
6
+ constructor(n, s) {
7
+ this.url = n, this.auth = s;
7
8
  }
8
- async createOrder(o) {
9
+ async createOrder(n) {
9
10
  try {
10
- const t = await this.auth.getAuthHeaders();
11
- if (t.error) return s(t.error);
11
+ const s = await this.auth.getAuthHeaders();
12
+ if (s.error) return o(s.error);
12
13
  const r = await d.post(
13
14
  this.url.endpoint("/v2/orders"),
14
15
  {
15
- body: JSON.stringify(o),
16
+ body: JSON.stringify(n),
16
17
  headers: {
17
- ...t.val,
18
+ ...s.val,
18
19
  "Content-Type": "application/json"
19
- }
20
+ },
21
+ onRetry: (e) => !((e == null ? void 0 : e.message) || (e == null ? void 0 : e.toString()) || "").toLowerCase().includes(p.INSUFFICIENT_LIQUIDITY)
20
22
  }
21
23
  );
22
- if (r.error) return s(r.error);
24
+ if (r.error) return o(r.error);
23
25
  if (!r.result)
24
- return s("CreateOrder: Unexpected error, result is undefined");
26
+ return o("CreateOrder: Unexpected error, result is undefined");
25
27
  const i = h(r.result);
26
- return i ? c(i) : s("CreateOrder: Unable to determine order type from response");
27
- } catch (t) {
28
- return s("CreateOrder Err:", String(t));
28
+ return i ? c(i) : o("CreateOrder: Unable to determine order type from response");
29
+ } catch (s) {
30
+ return o("CreateOrder Err:", String(s));
29
31
  }
30
32
  }
31
- async getOrder(o, t) {
33
+ async getOrder(n, s) {
32
34
  try {
33
35
  const r = await this.auth.getAuthHeaders();
34
- if (r.error) return s(r.error);
35
- const i = this.url.endpoint("/v2/orders").endpoint(o), n = await d.get(
36
- i,
37
- {
38
- ...t,
39
- headers: {
40
- ...r.val,
41
- "Content-Type": "application/json"
42
- }
36
+ if (r.error) return o(r.error);
37
+ const i = this.url.endpoint("/v2/orders").endpoint(n), e = await d.get(i, {
38
+ ...s,
39
+ headers: {
40
+ ...r.val,
41
+ "Content-Type": "application/json"
43
42
  }
44
- );
45
- if (n.error) return s(n.error);
46
- if (!n.result)
47
- return s("GetOrder: Unexpected error, result is undefined");
48
- const e = l(n.result);
49
- return c({ ...n.result, status: e });
43
+ });
44
+ if (e.error) return o(e.error);
45
+ if (!e.result)
46
+ return o("GetOrder: Unexpected error, result is undefined");
47
+ const t = l(e.result);
48
+ return c({ ...e.result, status: t });
50
49
  } catch (r) {
51
- return s(
50
+ return o(
52
51
  `GetOrder: ${r instanceof Error ? r.message : String(r)}`
53
52
  );
54
53
  }
55
54
  }
56
- async getOrders(o, t) {
55
+ async getOrders(n, s) {
57
56
  const r = await this.auth.getAuthHeaders();
58
- if (r.error) return s(r.error);
59
- const n = f(this.url, "/v2/orders", o);
57
+ if (r.error) return o(r.error);
58
+ const e = f(this.url, "/v2/orders", n);
60
59
  try {
61
- const e = await d.get(n, {
62
- ...t,
60
+ const t = await d.get(e, {
61
+ ...s,
63
62
  headers: {
64
63
  ...r.val,
65
64
  "Content-Type": "application/json"
66
65
  }
67
66
  });
68
- if (e.error) return s(e.error);
69
- if (!e.result)
70
- return s("GetAllOrders: Unexpected error, result is undefined");
71
- const u = e.result.data.map((a) => ({
67
+ if (t.error) return o(t.error);
68
+ if (!t.result)
69
+ return o("GetAllOrders: Unexpected error, result is undefined");
70
+ const u = t.result.data.map((a) => ({
72
71
  ...a,
73
72
  status: l(a)
74
73
  }));
75
74
  return c({
76
- ...e.result,
75
+ ...t.result,
77
76
  data: u
78
77
  });
79
- } catch (e) {
80
- return s(
81
- `GetAllOrders: ${e instanceof Error ? e.message : String(e)}`
78
+ } catch (t) {
79
+ return o(
80
+ `GetAllOrders: ${t instanceof Error ? t.message : String(t)}`
82
81
  );
83
82
  }
84
83
  }
@@ -91,28 +90,28 @@ class m {
91
90
  * @param paginationConfig - The pagination configuration
92
91
  * @returns {Promise<() => void>} A promise that resolves to the unsubscribe function.
93
92
  */
94
- async subscribeOrders(o, t, r, i) {
95
- let n = !1;
96
- const e = async () => {
97
- if (!n) {
98
- n = !0;
93
+ async subscribeOrders(n, s, r, i) {
94
+ let e = !1;
95
+ const t = async () => {
96
+ if (!e) {
97
+ e = !0;
99
98
  try {
100
- const a = await this.getOrders(o, i);
101
- a.ok ? await t(a.val) : console.error("Error fetching orders:", a.error);
99
+ const a = await this.getOrders(n, i);
100
+ a.ok ? await s(a.val) : console.error("Error fetching orders:", a.error);
102
101
  } catch (a) {
103
102
  console.error("Error fetching orders:", a);
104
103
  } finally {
105
- n = !1;
104
+ e = !1;
106
105
  }
107
106
  }
108
107
  };
109
- await e();
110
- const u = setInterval(e, r);
108
+ await t();
109
+ const u = setInterval(t, r);
111
110
  return () => {
112
111
  clearInterval(u);
113
112
  };
114
113
  }
115
114
  }
116
115
  export {
117
- m as Orderbook
116
+ w as Orderbook
118
117
  };
package/dist/index3.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var r=(t=>(t.bitcoin="bitcoin",t.evm="evm",t.solana="solana",t.starknet="starknet",t.sui="sui",t.tron="tron",t.litecoin="litecoin",t.alpen_signet="alpen_signet",t.xrpl="xrpl",t.spark="spark",t))(r||{});exports.BlockchainType=r;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var r=(t=>(t.bitcoin="bitcoin",t.evm="evm",t.solana="solana",t.starknet="starknet",t.sui="sui",t.tron="tron",t.litecoin="litecoin",t.alpen_signet="alpen_signet",t.xrpl="xrpl",t.spark="spark",t.lightning="lightning",t))(r||{});exports.BlockchainType=r;
package/dist/index3.js CHANGED
@@ -1,4 +1,4 @@
1
- var r = /* @__PURE__ */ ((t) => (t.bitcoin = "bitcoin", t.evm = "evm", t.solana = "solana", t.starknet = "starknet", t.sui = "sui", t.tron = "tron", t.litecoin = "litecoin", t.alpen_signet = "alpen_signet", t.xrpl = "xrpl", t.spark = "spark", t))(r || {});
1
+ var r = /* @__PURE__ */ ((t) => (t.bitcoin = "bitcoin", t.evm = "evm", t.solana = "solana", t.starknet = "starknet", t.sui = "sui", t.tron = "tron", t.litecoin = "litecoin", t.alpen_signet = "alpen_signet", t.xrpl = "xrpl", t.spark = "spark", t.lightning = "lightning", t))(r || {});
2
2
  export {
3
3
  r as BlockchainType
4
4
  };
package/dist/index4.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@gardenfi/utils"),e=require("./index3.cjs"),s=require("./index5.cjs"),E=require("./index6.cjs");var m=(t=>(t.Created="Created",t.InitiateDetected="Initiate Detected",t.Initiated="Initiated",t.AwaitingRedeem="Awaiting Redeem",t.RedeemDetected="Redeem Detected",t.Redeemed="Redeemed",t.AwaitingRefund="Awaiting Refund",t.RefundDetected="Refund Detected",t.Refunded="Refunded",t.Expired="Expired",t))(m||{}),r=(t=>(t.refunded="refunded",t.expired="expired",t.completed="completed",t.inProgress="in-progress",t.notInitiated="not-initiated",t.all="all",t.pending="pending",t.fulfilled="fulfilled",t))(r||{});const i={solana_localnet:{type:e.BlockchainType.solana,SOL:s.SOLSolanaLocalnetAsset,network:c.Network.LOCALNET},arbitrum_localnet:{type:e.BlockchainType.evm,USDC:s.USDCArbitrumLocalnetAsset,network:c.Network.LOCALNET},ethereum_localnet:{type:e.BlockchainType.evm,WBTC:s.WBTCEthereumLocalnetAsset,USDC:s.USDCEthereumLocalnetAsset,network:c.Network.LOCALNET},bitcoin_regtest:{type:e.BlockchainType.bitcoin,BTC:s.bitcoinRegtestAsset,network:c.Network.LOCALNET},starknet_devnet:{type:e.BlockchainType.starknet,STRK:s.STRKStarknetLocalnetAsset,ETH:s.ETHStarknetLocalnetAsset,network:c.Network.LOCALNET},solana_testnet:{type:e.BlockchainType.solana,network:c.Network.TESTNET,SOL:{id:"solana_testnet:sol",name:"Solana",symbol:"SOL",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/solana.png",chain:"solana:103",htlc:{address:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF",schema:"solana:htlc"},token:null},USDC:{id:"solana_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"solana:103",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"5JbWjyLdYKTuykpq2itWbdRcZkhK3hs6fiH62pkmLYZi",schema:null}},cbBTC:{id:"solana_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cbBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"solana:103",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"CL8C4gsaEQyWPxL4Zn7dcnZ8LKvPYqHmv4ipMax4cDUL",schema:null}}},bitcoin_testnet:{type:e.BlockchainType.bitcoin,network:c.Network.TESTNET,BTC:{id:"bitcoin_testnet:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"bitcoin",htlc:null,token:null}},ethereum_sepolia:{type:e.BlockchainType.evm,network:c.Network.TESTNET,WBTC:{id:"ethereum_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:11155111",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0xE918A5a47b8e0AFAC2382bC5D1e981613e63fB07",schema:"evm:erc20"}},USDC:{id:"ethereum_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:11155111",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xadDD620EA6D20f4f9c24fff3BC039E497ceBEDc2",schema:"evm:erc20"}}},arbitrum_sepolia:{type:e.BlockchainType.evm,network:c.Network.TESTNET,iBTC:{id:"arbitrum_sepolia:ibtc",name:"iBTC",symbol:"iBTC",decimals:8,icon:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",chain:"evm:421614",htlc:{address:"0x7e8c18fa79bd4014cfCf49294Bf315139eD39f45",schema:"evm:htlc_erc20"},token:{address:"0x685437f025c5f33A94818408C286bc1F023201Fc",schema:"evm:erc20"}},WBTC:{id:"arbitrum_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:421614",htlc:{address:"0xb5AE9785349186069C48794a763DB39EC756B1cF",schema:"evm:htlc_erc20"},token:{address:"0x1c287717c886794ac9f5DF3987195431Ceb3456E",schema:"evm:erc20"}},USDC:{id:"arbitrum_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:421614",htlc:{address:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",schema:"evm:htlc_erc20"},token:{address:"0xC90Ad772eCc10a52a681ceDAE6EbBD3470A0c829",schema:"evm:erc20"}},SEED:{id:"arbitrum_sepolia:seed",name:"Seed",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:421614",htlc:{address:"0xFBD30cB9313fe580031A7E0258693E1cec002803",schema:"evm:htlc_erc20"},token:{address:"0x432B43764548c3E47eA65aAdeB91D75C84DBcC2c",schema:"evm:erc20"}}},base_sepolia:{type:e.BlockchainType.evm,network:c.Network.TESTNET,iBTC:{id:"base_sepolia:ibtc",name:"iBTC",symbol:"iBTC",decimals:8,icon:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",chain:"evm:84532",htlc:{address:"0x46F1Ba9C9d89C34F9dbC4085F6B1f9965c589ca1",schema:"evm:htlc_erc20"},token:{address:"0x0b0D554D9573bAe1a7556d220847f45182918B28",schema:"evm:erc20"}},WBTC:{id:"base_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:84532",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0xD8a6E3FCA403d79b6AD6216b60527F51cc967D39",schema:"evm:erc20"}},USDT:{id:"base_sepolia:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/token-images/usdt.svg",chain:"evm:84532",htlc:{address:"0x917cfef972d667dC0FeC76806cB5623585B81493",schema:"evm:htlc_erc20"},token:{address:"0xeaE7721d779276eb0f5837e2fE260118724a2Ba4",schema:"evm:erc20"}},USDC:{id:"base_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:84532",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0x1ac7A0ebf13a996D5915e212900bE2d074f94988",schema:"evm:erc20"}}},bera_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET},citrea:{type:e.BlockchainType.evm,network:c.Network.MAINNET},citrea_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET,WCBTC:{id:"citrea_testnet:wcbtc",name:"Wrapped Citrea Bitcoin",symbol:"WCBTC",decimals:18,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:5115",htlc:{address:"0xD8e99df8cf77E7383c2f2a84bC6384b2DF88CAd3",schema:"evm:htlc_erc20"},token:{address:"0x8d0c9d1c17aE5e40ffF9bE350f57840E9E66Cd93",schema:"evm:erc20"}},WBTC:{id:"citrea_testnet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:5115",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0x3edA22460259b29433704dda71cc921F528165Ea",schema:"evm:erc20"}},CBTC:{id:"citrea_testnet:cbtc",name:"Citrea Bitcoin",symbol:"CBTC",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:5115",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},CBBTC:{id:"citrea_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"CBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:5115",htlc:{address:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",schema:"evm:htlc_erc20"},token:{address:"0xeAa998aF280a62Ae08BaE4f9fa59C9b30e6BD306",schema:"evm:erc20"}},USDC:{id:"citrea_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:5115",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xCdA8661fDA031deFCc9BdD88C0e12669Cac47Fb0",schema:"evm:erc20"}},USDT:{id:"citrea_testnet:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/token-images/usdt.svg",chain:"evm:5115",htlc:{address:"0x917cfef972d667dC0FeC76806cB5623585B81493",schema:"evm:htlc_erc20"},token:{address:"0xF5cFE09b852Ddb164cF6Db419B9c11aAb5F30cb6",schema:"evm:erc20"}}},monad_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET,cBBTC:{id:"monad_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"evm:10143",htlc:{address:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",schema:"evm:htlc_erc20"},token:{address:"0x6b6303fAb8eC7232b4f2a7b9fa58E5216F608fcb",schema:"evm:erc20"}},USDC:{id:"monad_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:10143",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xf817257fed379853cde0fa4f97ab987181b1e5ea",schema:"evm:erc20"}}},starknet_sepolia:{type:e.BlockchainType.starknet,network:c.Network.TESTNET,WBTC:{id:"starknet_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"starknet:393402133025997798000961",htlc:{address:"0x06579d255314109429a4477d89629bc2b94f529ae01979c2f8014f9246482603",schema:"starknet:htlc_erc20"},token:{address:"0x496bef3ed20371382fbe0ca6a5a64252c5c848f9f1f0cccf8110fc4def912d5",schema:"starknet:erc20"}}},sui_testnet:{type:e.BlockchainType.sui,network:c.Network.TESTNET,SUI:{id:"sui_testnet:sui",name:"SUI",symbol:"SUI",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/sui.svg",chain:"sui",htlc:{address:"0x5c438715b7dcc02d12ab92449153a1e5ade2301620d5bf60aa748f006726d369",schema:null},token:{address:"0x2::sui::SUI",schema:null}}},hyperliquid_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET},bnbchain_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET,WBTC:{id:"bnbchain_testnet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:97",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0x39f3294352208905fc6ebf033954E6c6455CdB4C",schema:"evm:erc20"}}},alpen_signet:{type:e.BlockchainType.alpen_signet,network:c.Network.TESTNET,BTC:{id:"alpen_signet:btc",name:"Alpen Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden-finance.imgix.net/token-images/bitcoin.svg",chain:"alpen_signet",htlc:null,token:null}},litecoin_testnet:{type:e.BlockchainType.litecoin,network:c.Network.TESTNET,LTC:{id:"litecoin_testnet:ltc",name:"Litecoin",symbol:"LTC",decimals:8,icon:"https://garden.imgix.net/assets/LitecoinIcon.svg",chain:"litecoin_testnet",htlc:null,token:null}},alpen_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET,sBTC:{id:"alpen_testnet:sbtc",name:"Signet Bitcoin",symbol:"sBTC",decimals:18,icon:"https://avatars.githubusercontent.com/u/113091135",chain:"evm:8150",htlc:{address:"0x934C87EE12c6c541E9C3A4997ae70371b3db7b3e",schema:"evm:htlc"},token:null},USDC:{id:"alpen_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:8150",htlc:{address:"0x7031336949223a512C0435dF75dd8114fa3b7261",schema:"evm:htlc_erc20"},token:{address:"0x9753D0481fC7e18797877B4e731B496439c849dE",schema:"evm:erc20"}}},tron_shasta:{type:e.BlockchainType.tron,network:c.Network.TESTNET,USDT:{id:"tron_shasta:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:2494104990",htlc:{address:"TQa4rN2Vayesv5vmMAXzP5QA1PnPwD46w6",schema:"tron:htlc_erc20"},token:{address:"TDg6r1BXkxWbmXXvHWweqdpUY9qPhgUJsC",schema:"tron:erc20"}}},bitcoin:{type:e.BlockchainType.bitcoin,network:c.Network.MAINNET,BTC:{id:"bitcoin:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"bitcoin",htlc:null,token:null}},base:{type:e.BlockchainType.evm,network:c.Network.MAINNET,USDC:{id:"base:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:8453",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",schema:"evm:erc20"}},cBBTC:{id:"base:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://coin-images.coingecko.com/coins/images/51336/large/cbbtc.png?1730814747",chain:"evm:8453",htlc:{address:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",schema:"evm:htlc_erc20"},token:{address:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",schema:"evm:erc20"}}},monad:{type:e.BlockchainType.evm,network:c.Network.MAINNET,MON:{id:"monad:mon",name:"Mon:MON",symbol:"MON",decimals:18,icon:"https://garden.imgix.net/chain_images/monad.svg",chain:"evm:143",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},USDC:{id:"monad:usdc",name:"USD Coin:USDC",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:143",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x754704Bc059F8C67012fEd69BC8A327a5aafb603",schema:"evm:erc20"}}},arbitrum:{type:e.BlockchainType.evm,network:c.Network.MAINNET,WBTC:{id:"arbitrum:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:42161",htlc:{address:"0xb5AE9785349186069C48794a763DB39EC756B1cF",schema:"evm:htlc_erc20"},token:{address:"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f",schema:"evm:erc20"}},USDC:{id:"arbitrum:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:42161",htlc:{address:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",schema:"evm:htlc_erc20"},token:{address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",schema:"evm:erc20"}},SEED:{id:"arbitrum:seed",name:"SEED",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:42161",htlc:{address:"0xFBD30cB9313fe580031A7E0258693E1cec002803",schema:"evm:htlc_erc20"},token:{address:"0x86f65121804D2Cdbef79F9f072D4e0c2eEbABC08",schema:"evm:erc20"}}},ethereum:{type:e.BlockchainType.evm,network:c.Network.MAINNET,ETH:{id:"ethereum:eth",name:"Ethereum",symbol:"ETH",decimals:18,icon:"https://garden.imgix.net/chain_images/ethereum.svg",chain:"evm:1",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},USDC:{id:"ethereum:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:1",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",schema:"evm:erc20"}},WBTC:{id:"ethereum:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:1",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599",schema:"evm:erc20"}},cBBTC:{id:"ethereum:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"evm:1",htlc:{address:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",schema:"evm:htlc_erc20"},token:{address:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",schema:"evm:erc20"}},SEED:{id:"ethereum:seed",name:"SEED",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:1",htlc:{address:"0xCE511De667885f92B8c36fcfC79C3B5bEb875463",schema:"evm:htlc_erc20"},token:{address:"0x5eed99d066a8CaF10f3E4327c1b3D8b673485eED",schema:"evm:erc20"}}},solana:{type:e.BlockchainType.solana,network:c.Network.MAINNET,SOL:{id:"solana:sol",name:"Solana",symbol:"SOL",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/solana.png",chain:"solana:101",htlc:{address:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF",schema:"solana:htlc"},token:null},USDC:{id:"solana:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"solana:101",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",schema:"primary"}},cBBTC:{id:"solana:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"solana:101",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"cbbtcf3aa214zXHbiAZQwf4122FBYbraNdFqgw4iMij",schema:"primary"}}},bera:{type:e.BlockchainType.evm,network:c.Network.MAINNET,LBTC:{id:"bera:lbtc",name:"Lombard Bitcoin",symbol:"LBTC",decimals:8,icon:"https://garden.imgix.net/token-images/LBTC.svg",chain:"evm:80094",htlc:{address:"0x84A396920d8B8CA2e69bD9503Bc1B2f73f1b8b33",schema:"evm:htlc_erc20"},token:{address:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",schema:"evm:erc20"}}},starknet:{type:e.BlockchainType.starknet,network:c.Network.MAINNET,WBTC:{id:"starknet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"starknet:23448594291968334",htlc:{address:"0x7defd8eb3b770005ab1ca5f89ad31f98fb5bc3c52deaeafd130be3b49f967b4",schema:"starknet:htlc_erc20"},token:{address:"0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac",schema:"starknet:erc20"}}},sui:{type:e.BlockchainType.sui,network:c.Network.MAINNET,SUI:{id:"sui:sui",name:"SUI",symbol:"SUI",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/sui.svg",chain:"sui:0",htlc:{address:"0xa4f4e653547e98d4b541378e14db2393a09aff4b829f158b133d2eb3c3a942b5",schema:null},token:{address:"0x2::sui::SUI",schema:null}}},hyperevm:{type:e.BlockchainType.evm,network:c.Network.MAINNET,uBTC:{id:"hyperevm:ubtc",name:"Unit Bitcoin",symbol:"uBTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:999",htlc:{address:"0xDC74a45e86DEdf1fF7c6dac77e0c2F082f9E4F72",schema:"evm:htlc_erc20"},token:{address:"0x9FDBdA0A5e284c32744D2f17Ee5c74B284993463",schema:"evm:erc20"}}},unichain:{type:e.BlockchainType.evm,network:c.Network.MAINNET,WBTC:{id:"unichain:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:130",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x927B51f251480a681271180DA4de28D44EC4AfB8",schema:"evm:erc20"}},USDC:{id:"unichain:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:130",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x078D782b760474a361dDA0AF3839290b0EF57AD6",schema:"evm:erc20"}}},corn:{type:e.BlockchainType.evm,network:c.Network.MAINNET,BTCN:{id:"corn:btcn",name:"Bitcorn",symbol:"BTCN",decimals:18,icon:"https://garden.imgix.net/token-images/bitcorn.svg",chain:"evm:21000000",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},botanix:{type:e.BlockchainType.evm,network:c.Network.MAINNET,BTC:{id:"botanix:btc",name:"Botanix Bitcoin",symbol:"BTC",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:3637",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},bnbchain:{type:e.BlockchainType.evm,network:c.Network.MAINNET,BTCB:{id:"bnbchain:btcb",name:"Binance Bitcoin",symbol:"BTCB",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:56",htlc:{address:"0xe74784E5A45528fDEcB257477DD6bd31c8ef0761",schema:"evm:htlc_erc20"},token:{address:"0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c",schema:"evm:erc20"}},USDC:{id:"bnbchain:usdc",name:"USD Coin",symbol:"USDC",decimals:18,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:56",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",schema:"evm:erc20"}},BNB:{id:"bnbchain:bnb",name:"BNB",symbol:"BNB",decimals:18,icon:"https://garden-finance.imgix.net/chain_images/bnb.png",chain:"evm:56",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},core:{type:e.BlockchainType.evm,network:c.Network.MAINNET,WBTC:{id:"core:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:1116",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x5832f53d147b3d6Cd4578B9CBD62425C7ea9d0Bd",schema:"evm:erc20"}}},tron:{type:e.BlockchainType.tron,network:c.Network.MAINNET,USDT:{id:"tron:usdt",name:"Tether USD:USDT",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:728126428",htlc:{address:"TNw8aNf8FraxDRwKhdcUfrEc2cc4y5z34a",schema:"evm:htlc_erc20"},token:{address:"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",schema:"evm:erc20"}},WBTC:{id:"tron:wbtc",name:"Wrapped Bitcoin:WBTC",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:728126428",htlc:{address:"TF2cyGGXX3KLEqcSLnAthfmaCkuZxwE3xT",schema:"evm:htlc_erc20"},token:{address:"TYhWwKpw43ENFWBTGpzLHn3882f2au7SMi",schema:"evm:erc20"}}},spark:{type:e.BlockchainType.spark,network:c.Network.MAINNET},spark_regtest:{type:e.BlockchainType.spark,network:c.Network.TESTNET,BTC:{id:"spark_regtest:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"spark_regtest",htlc:null,token:null}},megaeth:{type:e.BlockchainType.evm,network:c.Network.MAINNET,BTCB:{id:"megaeth:btc.b",name:"Bitcoin:BTC.b",symbol:"BTC.b",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:4326",htlc:{address:"0x52b4d144059CB17724D352034b15A8eaE2F29FA7",schema:"evm:htlc_erc20"},token:{address:"0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072",schema:"evm:erc20"}}},hyperevm_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET,USDC:{id:"hyperevm_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:998",htlc:{address:"0xdb6Bd9e3363d456be65bCB5eF806c11DDC9b882B",schema:"evm:htlc_erc20"},token:{address:"0x2b3370ee501b4a559b57d449569354196457d8ab",schema:"evm:erc20"}}},hyperliquid:{type:e.BlockchainType.evm,network:c.Network.MAINNET},xrpl:{type:e.BlockchainType.xrpl,network:c.Network.MAINNET},xrpl_testnet:{type:e.BlockchainType.xrpl,network:c.Network.TESTNET},hypercore:{type:e.BlockchainType.evm,network:c.Network.MAINNET},hypercore_testnet:{type:e.BlockchainType.evm,network:c.Network.TESTNET}},D=Object.keys(i).reduce((t,a)=>(t[a]=a,t),{}),f=E.buildAssetsWithChain(i),y=t=>i[t].network===c.Network.MAINNET;function n(t){return a=>i[a]&&i[a].type===t}const h=n(e.BlockchainType.evm),l=n(e.BlockchainType.bitcoin),b=n(e.BlockchainType.litecoin),k=n(e.BlockchainType.spark),B=n(e.BlockchainType.solana),p=n(e.BlockchainType.starknet),g=n(e.BlockchainType.sui),x=n(e.BlockchainType.tron),N=n(e.BlockchainType.xrpl),u=n(e.BlockchainType.alpen_signet),S=t=>i[t].type,d={[e.BlockchainType.evm]:"eth",[e.BlockchainType.solana]:"sol",[e.BlockchainType.sui]:"sui"},T=(t,a)=>h(t)&&a.toLowerCase()===d[e.BlockchainType.evm],C=(t,a)=>B(t)&&a.toLowerCase()===d[e.BlockchainType.solana],v=(t,a)=>g(t)&&a.toLowerCase()===d[e.BlockchainType.sui],w=t=>{const a=t.chain,o=t.symbol;return T(a,o)||C(a,o)||l(a)||b(a)||k(a)||v(a,o)||!p(a)};exports.Assets=f;exports.Chains=D;exports.Config=i;exports.NATIVE_TOKENS=d;exports.OrderLifecycle=r;exports.OrderStatus=m;exports.getBlockchainType=S;exports.is=n;exports.isAlpenSignet=u;exports.isBitcoin=l;exports.isEVM=h;exports.isEvmNativeToken=T;exports.isLitecoin=b;exports.isMainnet=y;exports.isNativeToken=w;exports.isSolana=B;exports.isSolanaNativeToken=C;exports.isSpark=k;exports.isStarknet=p;exports.isSui=g;exports.isSuiNativeToken=v;exports.isTron=x;exports.isXrpl=N;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("@gardenfi/utils"),e=require("./index3.cjs"),s=require("./index5.cjs"),y=require("./index6.cjs");var m=(c=>(c.Created="Created",c.InitiateDetected="Initiate Detected",c.Initiated="Initiated",c.AwaitingRedeem="Awaiting Redeem",c.RedeemDetected="Redeem Detected",c.Redeemed="Redeemed",c.AwaitingRefund="Awaiting Refund",c.RefundDetected="Refund Detected",c.Refunded="Refunded",c.Expired="Expired",c))(m||{}),r=(c=>(c.refunded="refunded",c.expired="expired",c.completed="completed",c.inProgress="in-progress",c.notInitiated="not-initiated",c.all="all",c.pending="pending",c.fulfilled="fulfilled",c))(r||{});const i={solana_localnet:{type:e.BlockchainType.solana,SOL:s.SOLSolanaLocalnetAsset,network:t.Network.LOCALNET},arbitrum_localnet:{type:e.BlockchainType.evm,USDC:s.USDCArbitrumLocalnetAsset,network:t.Network.LOCALNET},ethereum_localnet:{type:e.BlockchainType.evm,WBTC:s.WBTCEthereumLocalnetAsset,USDC:s.USDCEthereumLocalnetAsset,network:t.Network.LOCALNET},bitcoin_regtest:{type:e.BlockchainType.bitcoin,BTC:s.bitcoinRegtestAsset,network:t.Network.LOCALNET},starknet_devnet:{type:e.BlockchainType.starknet,STRK:s.STRKStarknetLocalnetAsset,ETH:s.ETHStarknetLocalnetAsset,network:t.Network.LOCALNET},solana_testnet:{type:e.BlockchainType.solana,network:t.Network.TESTNET,SOL:{id:"solana_testnet:sol",name:"Solana",symbol:"SOL",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/solana.png",chain:"solana:103",htlc:{address:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF",schema:"solana:htlc"},token:null},USDC:{id:"solana_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"solana:103",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"5JbWjyLdYKTuykpq2itWbdRcZkhK3hs6fiH62pkmLYZi",schema:null}},cbBTC:{id:"solana_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cbBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"solana:103",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"CL8C4gsaEQyWPxL4Zn7dcnZ8LKvPYqHmv4ipMax4cDUL",schema:null}}},bitcoin_testnet:{type:e.BlockchainType.bitcoin,network:t.Network.TESTNET,BTC:{id:"bitcoin_testnet:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"bitcoin",htlc:null,token:null}},ethereum_sepolia:{type:e.BlockchainType.evm,network:t.Network.TESTNET,WBTC:{id:"ethereum_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:11155111",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0xE918A5a47b8e0AFAC2382bC5D1e981613e63fB07",schema:"evm:erc20"}},USDC:{id:"ethereum_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:11155111",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xadDD620EA6D20f4f9c24fff3BC039E497ceBEDc2",schema:"evm:erc20"}}},arbitrum_sepolia:{type:e.BlockchainType.evm,network:t.Network.TESTNET,iBTC:{id:"arbitrum_sepolia:ibtc",name:"iBTC",symbol:"iBTC",decimals:8,icon:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",chain:"evm:421614",htlc:{address:"0x7e8c18fa79bd4014cfCf49294Bf315139eD39f45",schema:"evm:htlc_erc20"},token:{address:"0x685437f025c5f33A94818408C286bc1F023201Fc",schema:"evm:erc20"}},WBTC:{id:"arbitrum_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:421614",htlc:{address:"0xb5AE9785349186069C48794a763DB39EC756B1cF",schema:"evm:htlc_erc20"},token:{address:"0x1c287717c886794ac9f5DF3987195431Ceb3456E",schema:"evm:erc20"}},USDC:{id:"arbitrum_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:421614",htlc:{address:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",schema:"evm:htlc_erc20"},token:{address:"0xC90Ad772eCc10a52a681ceDAE6EbBD3470A0c829",schema:"evm:erc20"}},SEED:{id:"arbitrum_sepolia:seed",name:"Seed",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:421614",htlc:{address:"0xFBD30cB9313fe580031A7E0258693E1cec002803",schema:"evm:htlc_erc20"},token:{address:"0x432B43764548c3E47eA65aAdeB91D75C84DBcC2c",schema:"evm:erc20"}}},base_sepolia:{type:e.BlockchainType.evm,network:t.Network.TESTNET,iBTC:{id:"base_sepolia:ibtc",name:"iBTC",symbol:"iBTC",decimals:8,icon:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",chain:"evm:84532",htlc:{address:"0x46F1Ba9C9d89C34F9dbC4085F6B1f9965c589ca1",schema:"evm:htlc_erc20"},token:{address:"0x0b0D554D9573bAe1a7556d220847f45182918B28",schema:"evm:erc20"}},WBTC:{id:"base_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:84532",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0xD8a6E3FCA403d79b6AD6216b60527F51cc967D39",schema:"evm:erc20"}},USDT:{id:"base_sepolia:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/token-images/usdt.svg",chain:"evm:84532",htlc:{address:"0x917cfef972d667dC0FeC76806cB5623585B81493",schema:"evm:htlc_erc20"},token:{address:"0xeaE7721d779276eb0f5837e2fE260118724a2Ba4",schema:"evm:erc20"}},USDC:{id:"base_sepolia:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:84532",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0x1ac7A0ebf13a996D5915e212900bE2d074f94988",schema:"evm:erc20"}}},bera_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET},citrea:{type:e.BlockchainType.evm,network:t.Network.MAINNET},citrea_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET,WCBTC:{id:"citrea_testnet:wcbtc",name:"Wrapped Citrea Bitcoin",symbol:"WCBTC",decimals:18,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:5115",htlc:{address:"0xD8e99df8cf77E7383c2f2a84bC6384b2DF88CAd3",schema:"evm:htlc_erc20"},token:{address:"0x8d0c9d1c17aE5e40ffF9bE350f57840E9E66Cd93",schema:"evm:erc20"}},WBTC:{id:"citrea_testnet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:5115",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0x3edA22460259b29433704dda71cc921F528165Ea",schema:"evm:erc20"}},CBTC:{id:"citrea_testnet:cbtc",name:"Citrea Bitcoin",symbol:"CBTC",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:5115",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},CBBTC:{id:"citrea_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"CBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:5115",htlc:{address:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",schema:"evm:htlc_erc20"},token:{address:"0xeAa998aF280a62Ae08BaE4f9fa59C9b30e6BD306",schema:"evm:erc20"}},USDC:{id:"citrea_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:5115",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xCdA8661fDA031deFCc9BdD88C0e12669Cac47Fb0",schema:"evm:erc20"}},USDT:{id:"citrea_testnet:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/token-images/usdt.svg",chain:"evm:5115",htlc:{address:"0x917cfef972d667dC0FeC76806cB5623585B81493",schema:"evm:htlc_erc20"},token:{address:"0xF5cFE09b852Ddb164cF6Db419B9c11aAb5F30cb6",schema:"evm:erc20"}}},monad_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET,cBBTC:{id:"monad_testnet:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"evm:10143",htlc:{address:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",schema:"evm:htlc_erc20"},token:{address:"0x6b6303fAb8eC7232b4f2a7b9fa58E5216F608fcb",schema:"evm:erc20"}},USDC:{id:"monad_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:10143",htlc:{address:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",schema:"evm:htlc_erc20"},token:{address:"0xf817257fed379853cde0fa4f97ab987181b1e5ea",schema:"evm:erc20"}}},starknet_sepolia:{type:e.BlockchainType.starknet,network:t.Network.TESTNET,WBTC:{id:"starknet_sepolia:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"starknet:393402133025997798000961",htlc:{address:"0x06579d255314109429a4477d89629bc2b94f529ae01979c2f8014f9246482603",schema:"starknet:htlc_erc20"},token:{address:"0x496bef3ed20371382fbe0ca6a5a64252c5c848f9f1f0cccf8110fc4def912d5",schema:"starknet:erc20"}}},sui_testnet:{type:e.BlockchainType.sui,network:t.Network.TESTNET,SUI:{id:"sui_testnet:sui",name:"SUI",symbol:"SUI",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/sui.svg",chain:"sui",htlc:{address:"0x5c438715b7dcc02d12ab92449153a1e5ade2301620d5bf60aa748f006726d369",schema:null},token:{address:"0x2::sui::SUI",schema:null}}},hyperliquid_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET},bnbchain_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET,WBTC:{id:"bnbchain_testnet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:97",htlc:{address:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",schema:"evm:htlc_erc20"},token:{address:"0x39f3294352208905fc6ebf033954E6c6455CdB4C",schema:"evm:erc20"}}},alpen_signet:{type:e.BlockchainType.alpen_signet,network:t.Network.TESTNET,BTC:{id:"alpen_signet:btc",name:"Alpen Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden-finance.imgix.net/token-images/bitcoin.svg",chain:"alpen_signet",htlc:null,token:null}},litecoin_testnet:{type:e.BlockchainType.litecoin,network:t.Network.TESTNET,LTC:{id:"litecoin_testnet:ltc",name:"Litecoin",symbol:"LTC",decimals:8,icon:"https://garden.imgix.net/assets/LitecoinIcon.svg",chain:"litecoin_testnet",htlc:null,token:null}},alpen_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET,sBTC:{id:"alpen_testnet:sbtc",name:"Signet Bitcoin",symbol:"sBTC",decimals:18,icon:"https://avatars.githubusercontent.com/u/113091135",chain:"evm:8150",htlc:{address:"0x934C87EE12c6c541E9C3A4997ae70371b3db7b3e",schema:"evm:htlc"},token:null},USDC:{id:"alpen_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:8150",htlc:{address:"0x7031336949223a512C0435dF75dd8114fa3b7261",schema:"evm:htlc_erc20"},token:{address:"0x9753D0481fC7e18797877B4e731B496439c849dE",schema:"evm:erc20"}}},tron_shasta:{type:e.BlockchainType.tron,network:t.Network.TESTNET,USDT:{id:"tron_shasta:usdt",name:"Tether USD",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:2494104990",htlc:{address:"TQa4rN2Vayesv5vmMAXzP5QA1PnPwD46w6",schema:"tron:htlc_erc20"},token:{address:"TDg6r1BXkxWbmXXvHWweqdpUY9qPhgUJsC",schema:"tron:erc20"}}},bitcoin:{type:e.BlockchainType.bitcoin,network:t.Network.MAINNET,BTC:{id:"bitcoin:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"bitcoin",htlc:null,token:null}},base:{type:e.BlockchainType.evm,network:t.Network.MAINNET,USDC:{id:"base:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:8453",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",schema:"evm:erc20"}},cBBTC:{id:"base:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://coin-images.coingecko.com/coins/images/51336/large/cbbtc.png?1730814747",chain:"evm:8453",htlc:{address:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",schema:"evm:htlc_erc20"},token:{address:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",schema:"evm:erc20"}}},monad:{type:e.BlockchainType.evm,network:t.Network.MAINNET,MON:{id:"monad:mon",name:"Mon:MON",symbol:"MON",decimals:18,icon:"https://garden.imgix.net/chain_images/monad.svg",chain:"evm:143",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},USDC:{id:"monad:usdc",name:"USD Coin:USDC",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:143",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x754704Bc059F8C67012fEd69BC8A327a5aafb603",schema:"evm:erc20"}}},arbitrum:{type:e.BlockchainType.evm,network:t.Network.MAINNET,WBTC:{id:"arbitrum:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:42161",htlc:{address:"0xb5AE9785349186069C48794a763DB39EC756B1cF",schema:"evm:htlc_erc20"},token:{address:"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f",schema:"evm:erc20"}},USDC:{id:"arbitrum:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:42161",htlc:{address:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",schema:"evm:htlc_erc20"},token:{address:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831",schema:"evm:erc20"}},SEED:{id:"arbitrum:seed",name:"SEED",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:42161",htlc:{address:"0xFBD30cB9313fe580031A7E0258693E1cec002803",schema:"evm:htlc_erc20"},token:{address:"0x86f65121804D2Cdbef79F9f072D4e0c2eEbABC08",schema:"evm:erc20"}}},ethereum:{type:e.BlockchainType.evm,network:t.Network.MAINNET,ETH:{id:"ethereum:eth",name:"Ethereum",symbol:"ETH",decimals:18,icon:"https://garden.imgix.net/chain_images/ethereum.svg",chain:"evm:1",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null},USDC:{id:"ethereum:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:1",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",schema:"evm:erc20"}},WBTC:{id:"ethereum:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:1",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599",schema:"evm:erc20"}},cBBTC:{id:"ethereum:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"evm:1",htlc:{address:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",schema:"evm:htlc_erc20"},token:{address:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf",schema:"evm:erc20"}},SEED:{id:"ethereum:seed",name:"SEED",symbol:"SEED",decimals:18,icon:"https://garden.imgix.net/token-images/SEED.svg",chain:"evm:1",htlc:{address:"0xCE511De667885f92B8c36fcfC79C3B5bEb875463",schema:"evm:htlc_erc20"},token:{address:"0x5eed99d066a8CaF10f3E4327c1b3D8b673485eED",schema:"evm:erc20"}}},solana:{type:e.BlockchainType.solana,network:t.Network.MAINNET,SOL:{id:"solana:sol",name:"Solana",symbol:"SOL",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/solana.png",chain:"solana:101",htlc:{address:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF",schema:"solana:htlc"},token:null},USDC:{id:"solana:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"solana:101",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",schema:"primary"}},cBBTC:{id:"solana:cbbtc",name:"Coinbase Wrapped Bitcoin",symbol:"cBBTC",decimals:8,icon:"https://garden.imgix.net/token-images/cbBTC.svg",chain:"solana:101",htlc:{address:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",schema:"solana:htlc_spltoken"},token:{address:"cbbtcf3aa214zXHbiAZQwf4122FBYbraNdFqgw4iMij",schema:"primary"}}},bera:{type:e.BlockchainType.evm,network:t.Network.MAINNET,LBTC:{id:"bera:lbtc",name:"Lombard Bitcoin",symbol:"LBTC",decimals:8,icon:"https://garden.imgix.net/token-images/LBTC.svg",chain:"evm:80094",htlc:{address:"0x84A396920d8B8CA2e69bD9503Bc1B2f73f1b8b33",schema:"evm:htlc_erc20"},token:{address:"0xecAc9C5F704e954931349Da37F60E39f515c11c1",schema:"evm:erc20"}}},starknet:{type:e.BlockchainType.starknet,network:t.Network.MAINNET,WBTC:{id:"starknet:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"starknet:23448594291968334",htlc:{address:"0x7defd8eb3b770005ab1ca5f89ad31f98fb5bc3c52deaeafd130be3b49f967b4",schema:"starknet:htlc_erc20"},token:{address:"0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac",schema:"starknet:erc20"}}},sui:{type:e.BlockchainType.sui,network:t.Network.MAINNET,SUI:{id:"sui:sui",name:"SUI",symbol:"SUI",decimals:9,icon:"https://garden-finance.imgix.net/chain_images/sui.svg",chain:"sui:0",htlc:{address:"0xa4f4e653547e98d4b541378e14db2393a09aff4b829f158b133d2eb3c3a942b5",schema:null},token:{address:"0x2::sui::SUI",schema:null}}},hyperevm:{type:e.BlockchainType.evm,network:t.Network.MAINNET,uBTC:{id:"hyperevm:ubtc",name:"Unit Bitcoin",symbol:"uBTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:999",htlc:{address:"0xDC74a45e86DEdf1fF7c6dac77e0c2F082f9E4F72",schema:"evm:htlc_erc20"},token:{address:"0x9FDBdA0A5e284c32744D2f17Ee5c74B284993463",schema:"evm:erc20"}}},unichain:{type:e.BlockchainType.evm,network:t.Network.MAINNET,WBTC:{id:"unichain:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:130",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x927B51f251480a681271180DA4de28D44EC4AfB8",schema:"evm:erc20"}},USDC:{id:"unichain:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:130",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x078D782b760474a361dDA0AF3839290b0EF57AD6",schema:"evm:erc20"}}},corn:{type:e.BlockchainType.evm,network:t.Network.MAINNET,BTCN:{id:"corn:btcn",name:"Bitcorn",symbol:"BTCN",decimals:18,icon:"https://garden.imgix.net/token-images/bitcorn.svg",chain:"evm:21000000",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},botanix:{type:e.BlockchainType.evm,network:t.Network.MAINNET,BTC:{id:"botanix:btc",name:"Botanix Bitcoin",symbol:"BTC",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:3637",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},bnbchain:{type:e.BlockchainType.evm,network:t.Network.MAINNET,BTCB:{id:"bnbchain:btcb",name:"Binance Bitcoin",symbol:"BTCB",decimals:18,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:56",htlc:{address:"0xe74784E5A45528fDEcB257477DD6bd31c8ef0761",schema:"evm:htlc_erc20"},token:{address:"0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c",schema:"evm:erc20"}},USDC:{id:"bnbchain:usdc",name:"USD Coin",symbol:"USDC",decimals:18,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:56",htlc:{address:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",schema:"evm:htlc_erc20"},token:{address:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",schema:"evm:erc20"}},BNB:{id:"bnbchain:bnb",name:"BNB",symbol:"BNB",decimals:18,icon:"https://garden-finance.imgix.net/chain_images/bnb.png",chain:"evm:56",htlc:{address:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",schema:"evm:htlc"},token:null}},core:{type:e.BlockchainType.evm,network:t.Network.MAINNET,WBTC:{id:"core:wbtc",name:"Wrapped Bitcoin",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/token-images/wbtc.svg",chain:"evm:1116",htlc:{address:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",schema:"evm:htlc_erc20"},token:{address:"0x5832f53d147b3d6Cd4578B9CBD62425C7ea9d0Bd",schema:"evm:erc20"}}},tron:{type:e.BlockchainType.tron,network:t.Network.MAINNET,USDT:{id:"tron:usdt",name:"Tether USD:USDT",symbol:"USDT",decimals:6,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:728126428",htlc:{address:"TNw8aNf8FraxDRwKhdcUfrEc2cc4y5z34a",schema:"evm:htlc_erc20"},token:{address:"TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",schema:"evm:erc20"}},WBTC:{id:"tron:wbtc",name:"Wrapped Bitcoin:WBTC",symbol:"WBTC",decimals:8,icon:"https://garden.imgix.net/assets/TetherIcon.svg",chain:"tron:728126428",htlc:{address:"TF2cyGGXX3KLEqcSLnAthfmaCkuZxwE3xT",schema:"evm:htlc_erc20"},token:{address:"TYhWwKpw43ENFWBTGpzLHn3882f2au7SMi",schema:"evm:erc20"}}},spark:{type:e.BlockchainType.spark,network:t.Network.MAINNET},spark_regtest:{type:e.BlockchainType.spark,network:t.Network.TESTNET,BTC:{id:"spark_regtest:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"spark_regtest",htlc:null,token:null}},lightning:{type:e.BlockchainType.lightning,network:t.Network.MAINNET,BTC:{id:"lightning:btc",name:"Bitcoin",symbol:"BTC",decimals:8,icon:"https://garden-finance.imgix.net/assets/lightning.png",chain:"lightning",htlc:null,token:null}},litecoin:{type:e.BlockchainType.litecoin,network:t.Network.MAINNET,LTC:{id:"litecoin:ltc",name:"Litecoin",symbol:"LTC",decimals:8,icon:"https://garden.imgix.net/assets/LitecoinIcon.svg",chain:"bitcoin",htlc:null,token:null}},megaeth:{type:e.BlockchainType.evm,network:t.Network.MAINNET,BTCB:{id:"megaeth:btc.b",name:"Bitcoin:BTC.b",symbol:"BTC.b",decimals:8,icon:"https://garden.imgix.net/token-images/bitcoin.svg",chain:"evm:4326",htlc:{address:"0x52b4d144059CB17724D352034b15A8eaE2F29FA7",schema:"evm:htlc_erc20"},token:{address:"0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072",schema:"evm:erc20"}}},hyperevm_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET,USDC:{id:"hyperevm_testnet:usdc",name:"USD Coin",symbol:"USDC",decimals:6,icon:"https://garden.imgix.net/token-images/usdc.svg",chain:"evm:998",htlc:{address:"0xdb6Bd9e3363d456be65bCB5eF806c11DDC9b882B",schema:"evm:htlc_erc20"},token:{address:"0x2b3370ee501b4a559b57d449569354196457d8ab",schema:"evm:erc20"}}},hyperliquid:{type:e.BlockchainType.evm,network:t.Network.MAINNET},xrpl:{type:e.BlockchainType.xrpl,network:t.Network.MAINNET},xrpl_testnet:{type:e.BlockchainType.xrpl,network:t.Network.TESTNET},hypercore:{type:e.BlockchainType.evm,network:t.Network.MAINNET},hypercore_testnet:{type:e.BlockchainType.evm,network:t.Network.TESTNET}},f=Object.keys(i).reduce((c,a)=>(c[a]=a,c),{}),D=y.buildAssetsWithChain(i),x=c=>i[c].network===t.Network.MAINNET;function n(c){return a=>i[a]&&i[a].type===c}const h=n(e.BlockchainType.evm),l=n(e.BlockchainType.bitcoin),b=n(e.BlockchainType.litecoin),k=n(e.BlockchainType.spark),B=n(e.BlockchainType.solana),p=n(e.BlockchainType.starknet),g=n(e.BlockchainType.sui),N=n(e.BlockchainType.tron),u=n(e.BlockchainType.xrpl),w=n(e.BlockchainType.alpen_signet),T=n(e.BlockchainType.lightning),S=c=>i[c].type,d={[e.BlockchainType.evm]:"eth",[e.BlockchainType.solana]:"sol",[e.BlockchainType.sui]:"sui"},C=(c,a)=>h(c)&&a.toLowerCase()===d[e.BlockchainType.evm],v=(c,a)=>B(c)&&a.toLowerCase()===d[e.BlockchainType.solana],E=(c,a)=>g(c)&&a.toLowerCase()===d[e.BlockchainType.sui],A=c=>{const a=c.chain,o=c.symbol;return C(a,o)||v(a,o)||l(a)||b(a)||k(a)||T(a)||E(a,o)||!p(a)};exports.Assets=D;exports.Chains=f;exports.Config=i;exports.NATIVE_TOKENS=d;exports.OrderLifecycle=r;exports.OrderStatus=m;exports.getBlockchainType=S;exports.is=n;exports.isAlpenSignet=w;exports.isBitcoin=l;exports.isEVM=h;exports.isEvmNativeToken=C;exports.isLightning=T;exports.isLitecoin=b;exports.isMainnet=x;exports.isNativeToken=A;exports.isSolana=B;exports.isSolanaNativeToken=v;exports.isSpark=k;exports.isStarknet=p;exports.isSui=g;exports.isSuiNativeToken=E;exports.isTron=N;exports.isXrpl=u;
package/dist/index4.js CHANGED
@@ -1090,20 +1090,34 @@ const n = {
1090
1090
  token: null
1091
1091
  }
1092
1092
  },
1093
- // litecoin: {
1094
- // type: BlockchainType.litecoin,
1095
- // network: Network.MAINNET,
1096
- // LTC: {
1097
- // id: 'litecoin:ltc',
1098
- // name: 'Litecoin',
1099
- // symbol: 'LTC',
1100
- // decimals: 8,
1101
- // icon: 'https://garden.imgix.net/assets/LitecoinIcon.svg',
1102
- // chain: 'bitcoin',
1103
- // htlc: null,
1104
- // token: null,
1105
- // },
1106
- // },
1093
+ lightning: {
1094
+ type: e.lightning,
1095
+ network: t.MAINNET,
1096
+ BTC: {
1097
+ id: "lightning:btc",
1098
+ name: "Bitcoin",
1099
+ symbol: "BTC",
1100
+ decimals: 8,
1101
+ icon: "https://garden-finance.imgix.net/assets/lightning.png",
1102
+ chain: "lightning",
1103
+ htlc: null,
1104
+ token: null
1105
+ }
1106
+ },
1107
+ litecoin: {
1108
+ type: e.litecoin,
1109
+ network: t.MAINNET,
1110
+ LTC: {
1111
+ id: "litecoin:ltc",
1112
+ name: "Litecoin",
1113
+ symbol: "LTC",
1114
+ decimals: 8,
1115
+ icon: "https://garden.imgix.net/assets/LitecoinIcon.svg",
1116
+ chain: "bitcoin",
1117
+ htlc: null,
1118
+ token: null
1119
+ }
1120
+ },
1107
1121
  megaeth: {
1108
1122
  type: e.evm,
1109
1123
  network: t.MAINNET,
@@ -1164,44 +1178,45 @@ const n = {
1164
1178
  type: e.evm,
1165
1179
  network: t.TESTNET
1166
1180
  }
1167
- }, U = Object.keys(n).reduce(
1181
+ }, F = Object.keys(n).reduce(
1168
1182
  (a, s) => (a[s] = s, a),
1169
1183
  {}
1170
- ), F = C(n), W = (a) => n[a].network === t.MAINNET;
1184
+ ), W = C(n), L = (a) => n[a].network === t.MAINNET;
1171
1185
  function c(a) {
1172
1186
  return (s) => n[s] && n[s].type === a;
1173
1187
  }
1174
- const p = c(e.evm), k = c(e.bitcoin), T = c(e.litecoin), E = c(e.spark), f = c(e.solana), D = c(e.starknet), x = c(e.sui), L = c(e.tron), I = c(e.xrpl), M = c(e.alpen_signet), R = (a) => n[a].type, d = {
1188
+ const p = c(e.evm), T = c(e.bitcoin), k = c(e.litecoin), E = c(e.spark), f = c(e.solana), D = c(e.starknet), x = c(e.sui), I = c(e.tron), M = c(e.xrpl), R = c(e.alpen_signet), u = c(e.lightning), H = (a) => n[a].type, d = {
1175
1189
  [e.evm]: "eth",
1176
1190
  [e.solana]: "sol",
1177
1191
  [e.sui]: "sui"
1178
- }, u = (a, s) => p(a) && s.toLowerCase() === d[e.evm], S = (a, s) => f(a) && s.toLowerCase() === d[e.solana], y = (a, s) => x(a) && s.toLowerCase() === d[e.sui], H = (a) => {
1192
+ }, y = (a, s) => p(a) && s.toLowerCase() === d[e.evm], S = (a, s) => f(a) && s.toLowerCase() === d[e.solana], A = (a, s) => x(a) && s.toLowerCase() === d[e.sui], q = (a) => {
1179
1193
  const s = a.chain, i = a.symbol;
1180
- return u(s, i) || S(s, i) || k(s) || T(s) || E(s) || y(s, i) || // Starknet doesn't have a native token
1194
+ return y(s, i) || S(s, i) || T(s) || k(s) || E(s) || u(s) || A(s, i) || // Starknet doesn't have a native token
1181
1195
  !D(s);
1182
1196
  };
1183
1197
  export {
1184
- F as Assets,
1185
- U as Chains,
1198
+ W as Assets,
1199
+ F as Chains,
1186
1200
  n as Config,
1187
1201
  d as NATIVE_TOKENS,
1188
1202
  B as OrderLifecycle,
1189
1203
  v as OrderStatus,
1190
- R as getBlockchainType,
1204
+ H as getBlockchainType,
1191
1205
  c as is,
1192
- M as isAlpenSignet,
1193
- k as isBitcoin,
1206
+ R as isAlpenSignet,
1207
+ T as isBitcoin,
1194
1208
  p as isEVM,
1195
- u as isEvmNativeToken,
1196
- T as isLitecoin,
1197
- W as isMainnet,
1198
- H as isNativeToken,
1209
+ y as isEvmNativeToken,
1210
+ u as isLightning,
1211
+ k as isLitecoin,
1212
+ L as isMainnet,
1213
+ q as isNativeToken,
1199
1214
  f as isSolana,
1200
1215
  S as isSolanaNativeToken,
1201
1216
  E as isSpark,
1202
1217
  D as isStarknet,
1203
1218
  x as isSui,
1204
- y as isSuiNativeToken,
1205
- L as isTron,
1206
- I as isXrpl
1219
+ A as isSuiNativeToken,
1220
+ I as isTron,
1221
+ M as isXrpl
1207
1222
  };
package/dist/index7.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("@gardenfi/utils"),e=require("./index3.cjs"),_=(t,n,l)=>{const a=t.endpoint(n);return l&&Object.entries(l).forEach(([p,r])=>{r!==void 0&&(Array.isArray(r)?a.searchParams.append(p,r.join(",")):a.searchParams.append(p,r.toString()))}),a},c=t=>i.hasKeys(t,["typed_data","initiate_transaction"])&&typeof t.initiate_transaction=="object"&&t.initiate_transaction&&i.hasKeys(t.initiate_transaction,["to","value","data","gas_limit","chain_id"]),o=t=>i.hasKeys(t,["typed_data","initiate_transaction"])&&typeof t.initiate_transaction=="object"&&t.initiate_transaction&&i.hasKeys(t.initiate_transaction,["to","selector","calldata"]),s=t=>i.hasKeys(t,["to","amount"])&&typeof t.to=="string"&&typeof t.amount=="string",y=t=>i.hasKeys(t,["versioned_tx"])&&typeof t.versioned_tx=="string",u=t=>i.hasKeys(t,["ptb_bytes"])&&Array.isArray(t.ptb_bytes)&&t.ptb_bytes.every(n=>typeof n=="number"),d=t=>i.hasKeys(t,["order_id","escrow_create_tx"])&&typeof t.escrow_create_tx=="object"&&t.escrow_create_tx&&i.hasKeys(t.escrow_create_tx,["Account","Amount","CancelAfter","Condition","Destination","TransactionType"]),f=t=>i.hasKeys(t,["source_swap","destination_swap"])&&typeof t.source_swap=="object"&&typeof t.destination_swap=="object";function h(t){return c(t)?{type:e.BlockchainType.evm,...t}:o(t)?{type:e.BlockchainType.starknet,...t}:s(t)?{type:e.BlockchainType.bitcoin,...t}:y(t)?{type:e.BlockchainType.solana,...t}:u(t)?{type:e.BlockchainType.sui,...t}:d(t)?{type:e.BlockchainType.xrpl,...t}:null}function O(t){return c(t)?e.BlockchainType.evm:o(t)?e.BlockchainType.starknet:s(t)?e.BlockchainType.bitcoin:y(t)?e.BlockchainType.solana:u(t)?e.BlockchainType.sui:d(t)?e.BlockchainType.xrpl:null}exports.ConstructUrl=_;exports.discriminateOrderResponse=h;exports.getOrderResponseType=O;exports.isBitcoinOrderResponse=s;exports.isEvmOrderResponse=c;exports.isOrder=f;exports.isSolanaOrderResponse=y;exports.isStarknetOrderResponse=o;exports.isSuiOrderResponse=u;exports.isXrplOrderResponse=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@gardenfi/utils"),i=require("./index3.cjs"),h=(t,n,l)=>{const a=t.endpoint(n);return l&&Object.entries(l).forEach(([p,r])=>{r!==void 0&&(Array.isArray(r)?a.searchParams.append(p,r.join(",")):a.searchParams.append(p,r.toString()))}),a},c=t=>e.hasKeys(t,["typed_data","initiate_transaction"])&&typeof t.initiate_transaction=="object"&&t.initiate_transaction&&e.hasKeys(t.initiate_transaction,["to","value","data","gas_limit","chain_id"]),o=t=>e.hasKeys(t,["typed_data","initiate_transaction"])&&typeof t.initiate_transaction=="object"&&t.initiate_transaction&&e.hasKeys(t.initiate_transaction,["to","selector","calldata"]),s=t=>e.hasKeys(t,["to","amount"])&&typeof t.to=="string"&&typeof t.amount=="string",y=t=>e.hasKeys(t,["versioned_tx"])&&typeof t.versioned_tx=="string",u=t=>e.hasKeys(t,["ptb_bytes"])&&Array.isArray(t.ptb_bytes)&&t.ptb_bytes.every(n=>typeof n=="number"),d=t=>e.hasKeys(t,["order_id","escrow_create_tx"])&&typeof t.escrow_create_tx=="object"&&t.escrow_create_tx&&e.hasKeys(t.escrow_create_tx,["Account","Amount","CancelAfter","Condition","Destination","TransactionType"]),f=t=>e.hasKeys(t,["to","amount"])&&typeof t.to=="string"&&typeof t.amount=="number",_=t=>e.hasKeys(t,["source_swap","destination_swap"])&&typeof t.source_swap=="object"&&typeof t.destination_swap=="object";function O(t){return c(t)?{type:i.BlockchainType.evm,...t}:o(t)?{type:i.BlockchainType.starknet,...t}:s(t)?{type:i.BlockchainType.bitcoin,...t}:y(t)?{type:i.BlockchainType.solana,...t}:u(t)?{type:i.BlockchainType.sui,...t}:d(t)?{type:i.BlockchainType.xrpl,...t}:f(t)?{type:i.BlockchainType.lightning,...t}:null}function b(t){return c(t)?i.BlockchainType.evm:o(t)?i.BlockchainType.starknet:s(t)?i.BlockchainType.bitcoin:y(t)?i.BlockchainType.solana:u(t)?i.BlockchainType.sui:d(t)?i.BlockchainType.xrpl:null}exports.ConstructUrl=h;exports.discriminateOrderResponse=O;exports.getOrderResponseType=b;exports.isBitcoinOrderResponse=s;exports.isEvmOrderResponse=c;exports.isLightningOrderResponse=f;exports.isOrder=_;exports.isSolanaOrderResponse=y;exports.isStarknetOrderResponse=o;exports.isSuiOrderResponse=u;exports.isXrplOrderResponse=d;
package/dist/index7.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { hasKeys as r } from "@gardenfi/utils";
2
2
  import { BlockchainType as i } from "./index3.js";
3
- const m = (t, a, c) => {
3
+ const p = (t, a, o) => {
4
4
  const e = t.endpoint(a);
5
- return c && Object.entries(c).forEach(([o, n]) => {
6
- n !== void 0 && (Array.isArray(n) ? e.searchParams.append(o, n.join(",")) : e.searchParams.append(o, n.toString()));
5
+ return o && Object.entries(o).forEach(([c, n]) => {
6
+ n !== void 0 && (Array.isArray(n) ? e.searchParams.append(c, n.join(",")) : e.searchParams.append(c, n.toString()));
7
7
  }), e;
8
8
  }, u = (t) => r(t, ["typed_data", "initiate_transaction"]) && typeof t.initiate_transaction == "object" && t.initiate_transaction && r(t.initiate_transaction, [
9
9
  "to",
@@ -11,14 +11,14 @@ const m = (t, a, c) => {
11
11
  "data",
12
12
  "gas_limit",
13
13
  "chain_id"
14
- ]), f = (t) => r(t, ["typed_data", "initiate_transaction"]) && typeof t.initiate_transaction == "object" && t.initiate_transaction && r(t.initiate_transaction, ["to", "selector", "calldata"]), _ = (t) => r(t, ["to", "amount"]) && typeof t.to == "string" && typeof t.amount == "string", d = (t) => r(t, ["versioned_tx"]) && typeof t.versioned_tx == "string", y = (t) => r(t, ["ptb_bytes"]) && Array.isArray(t.ptb_bytes) && t.ptb_bytes.every((a) => typeof a == "number"), l = (t) => r(t, ["order_id", "escrow_create_tx"]) && typeof t.escrow_create_tx == "object" && t.escrow_create_tx && r(t.escrow_create_tx, [
14
+ ]), f = (t) => r(t, ["typed_data", "initiate_transaction"]) && typeof t.initiate_transaction == "object" && t.initiate_transaction && r(t.initiate_transaction, ["to", "selector", "calldata"]), y = (t) => r(t, ["to", "amount"]) && typeof t.to == "string" && typeof t.amount == "string", _ = (t) => r(t, ["versioned_tx"]) && typeof t.versioned_tx == "string", d = (t) => r(t, ["ptb_bytes"]) && Array.isArray(t.ptb_bytes) && t.ptb_bytes.every((a) => typeof a == "number"), l = (t) => r(t, ["order_id", "escrow_create_tx"]) && typeof t.escrow_create_tx == "object" && t.escrow_create_tx && r(t.escrow_create_tx, [
15
15
  "Account",
16
16
  "Amount",
17
17
  "CancelAfter",
18
18
  "Condition",
19
19
  "Destination",
20
20
  "TransactionType"
21
- ]), p = (t) => r(t, ["source_swap", "destination_swap"]) && typeof t.source_swap == "object" && typeof t.destination_swap == "object";
21
+ ]), m = (t) => r(t, ["to", "amount"]) && typeof t.to == "string" && typeof t.amount == "number", g = (t) => r(t, ["source_swap", "destination_swap"]) && typeof t.source_swap == "object" && typeof t.destination_swap == "object";
22
22
  function O(t) {
23
23
  return u(t) ? {
24
24
  type: i.evm,
@@ -26,32 +26,36 @@ function O(t) {
26
26
  } : f(t) ? {
27
27
  type: i.starknet,
28
28
  ...t
29
- } : _(t) ? {
29
+ } : y(t) ? {
30
30
  type: i.bitcoin,
31
31
  ...t
32
- } : d(t) ? {
32
+ } : _(t) ? {
33
33
  type: i.solana,
34
34
  ...t
35
- } : y(t) ? {
35
+ } : d(t) ? {
36
36
  type: i.sui,
37
37
  ...t
38
38
  } : l(t) ? {
39
39
  type: i.xrpl,
40
40
  ...t
41
+ } : m(t) ? {
42
+ type: i.lightning,
43
+ ...t
41
44
  } : null;
42
45
  }
43
46
  function x(t) {
44
- return u(t) ? i.evm : f(t) ? i.starknet : _(t) ? i.bitcoin : d(t) ? i.solana : y(t) ? i.sui : l(t) ? i.xrpl : null;
47
+ return u(t) ? i.evm : f(t) ? i.starknet : y(t) ? i.bitcoin : _(t) ? i.solana : d(t) ? i.sui : l(t) ? i.xrpl : null;
45
48
  }
46
49
  export {
47
- m as ConstructUrl,
50
+ p as ConstructUrl,
48
51
  O as discriminateOrderResponse,
49
52
  x as getOrderResponseType,
50
- _ as isBitcoinOrderResponse,
53
+ y as isBitcoinOrderResponse,
51
54
  u as isEvmOrderResponse,
52
- p as isOrder,
53
- d as isSolanaOrderResponse,
55
+ m as isLightningOrderResponse,
56
+ g as isOrder,
57
+ _ as isSolanaOrderResponse,
54
58
  f as isStarknetOrderResponse,
55
- y as isSuiOrderResponse,
59
+ d as isSuiOrderResponse,
56
60
  l as isXrplOrderResponse
57
61
  };
@@ -1,11 +1,11 @@
1
1
  export { Orderbook } from './lib/orderbook/orderbook';
2
2
  export type * from './lib/orderbook/orderbook.types';
3
3
  export { BlockchainType } from './lib/constants/asset.types';
4
- export type { Asset, BitcoinChains, Chain, ChainsByBlockchainType, ChainsByNetwork, EVMChains, LocalnetOnlyChains, MainnetOnlyChains, SolanaChains, SuiChains, StarknetChains, XrplChains, TestnetOnlyChains, } from './lib/constants/asset.types';
4
+ export type { Asset, BitcoinChains, Chain, ChainsByBlockchainType, ChainsByNetwork, EVMChains, LocalnetOnlyChains, MainnetOnlyChains, SolanaChains, SuiChains, StarknetChains, XrplChains, LightningChains, TestnetOnlyChains, } from './lib/constants/asset.types';
5
5
  export * from './lib/constants/asset';
6
6
  export * from './lib/constants/localnetConstants';
7
7
  export * from './lib/constants/utils';
8
- export { isSuiOrderResponse, ConstructUrl, discriminateOrderResponse, getOrderResponseType, isBitcoinOrderResponse, isEvmOrderResponse, isOrder, isSolanaOrderResponse, isStarknetOrderResponse, isXrplOrderResponse, } from './lib/utils';
8
+ export { isSuiOrderResponse, ConstructUrl, discriminateOrderResponse, getOrderResponseType, isBitcoinOrderResponse, isEvmOrderResponse, isOrder, isSolanaOrderResponse, isStarknetOrderResponse, isXrplOrderResponse, isLightningOrderResponse, } from './lib/utils';
9
9
  export { ChainAsset } from './lib/chainAsset/chainAsset';
10
10
  export type { ChainAssetString, AssetLike } from './lib/chainAsset/chainAsset';
11
11
  export { ExplorerUrlBuilder } from './lib/ExplorerUrlBuilder/ExplorerUrlBuilder';
@@ -1153,6 +1153,34 @@ export declare const Config: {
1153
1153
  readonly token: null;
1154
1154
  };
1155
1155
  };
1156
+ readonly lightning: {
1157
+ readonly type: BlockchainType.lightning;
1158
+ readonly network: Network.MAINNET;
1159
+ readonly BTC: {
1160
+ readonly id: "lightning:btc";
1161
+ readonly name: "Bitcoin";
1162
+ readonly symbol: "BTC";
1163
+ readonly decimals: 8;
1164
+ readonly icon: "https://garden-finance.imgix.net/assets/lightning.png";
1165
+ readonly chain: "lightning";
1166
+ readonly htlc: null;
1167
+ readonly token: null;
1168
+ };
1169
+ };
1170
+ readonly litecoin: {
1171
+ readonly type: BlockchainType.litecoin;
1172
+ readonly network: Network.MAINNET;
1173
+ readonly LTC: {
1174
+ readonly id: "litecoin:ltc";
1175
+ readonly name: "Litecoin";
1176
+ readonly symbol: "LTC";
1177
+ readonly decimals: 8;
1178
+ readonly icon: "https://garden.imgix.net/assets/LitecoinIcon.svg";
1179
+ readonly chain: "bitcoin";
1180
+ readonly htlc: null;
1181
+ readonly token: null;
1182
+ };
1183
+ };
1156
1184
  readonly megaeth: {
1157
1185
  readonly type: BlockchainType.evm;
1158
1186
  readonly network: Network.MAINNET;
@@ -2344,6 +2372,34 @@ export declare const Assets: import('./utils').AssetsType<{
2344
2372
  readonly token: null;
2345
2373
  };
2346
2374
  };
2375
+ readonly lightning: {
2376
+ readonly type: BlockchainType.lightning;
2377
+ readonly network: Network.MAINNET;
2378
+ readonly BTC: {
2379
+ readonly id: "lightning:btc";
2380
+ readonly name: "Bitcoin";
2381
+ readonly symbol: "BTC";
2382
+ readonly decimals: 8;
2383
+ readonly icon: "https://garden-finance.imgix.net/assets/lightning.png";
2384
+ readonly chain: "lightning";
2385
+ readonly htlc: null;
2386
+ readonly token: null;
2387
+ };
2388
+ };
2389
+ readonly litecoin: {
2390
+ readonly type: BlockchainType.litecoin;
2391
+ readonly network: Network.MAINNET;
2392
+ readonly LTC: {
2393
+ readonly id: "litecoin:ltc";
2394
+ readonly name: "Litecoin";
2395
+ readonly symbol: "LTC";
2396
+ readonly decimals: 8;
2397
+ readonly icon: "https://garden.imgix.net/assets/LitecoinIcon.svg";
2398
+ readonly chain: "bitcoin";
2399
+ readonly htlc: null;
2400
+ readonly token: null;
2401
+ };
2402
+ };
2347
2403
  readonly megaeth: {
2348
2404
  readonly type: BlockchainType.evm;
2349
2405
  readonly network: Network.MAINNET;
@@ -2409,7 +2465,7 @@ export declare const isMainnet: (chain: Chain) => boolean;
2409
2465
  export declare function is<T extends BlockchainType>(type: T): (chain: Chain) => chain is Extract<Chain, ChainsByBlockchainType<T>>;
2410
2466
  export declare const isEVM: (chain: Chain) => chain is "arbitrum_localnet" | "ethereum_localnet" | "ethereum_sepolia" | "arbitrum_sepolia" | "base_sepolia" | "bera_testnet" | "citrea" | "citrea_testnet" | "monad_testnet" | "hyperliquid_testnet" | "bnbchain_testnet" | "alpen_testnet" | "base" | "monad" | "arbitrum" | "ethereum" | "bera" | "hyperevm" | "unichain" | "corn" | "botanix" | "bnbchain" | "core" | "megaeth" | "hyperevm_testnet" | "hyperliquid" | "hypercore" | "hypercore_testnet";
2411
2467
  export declare const isBitcoin: (chain: Chain) => chain is "bitcoin" | "bitcoin_regtest" | "bitcoin_testnet";
2412
- export declare const isLitecoin: (chain: Chain) => chain is "litecoin_testnet";
2468
+ export declare const isLitecoin: (chain: Chain) => chain is "litecoin_testnet" | "litecoin";
2413
2469
  export declare const isSpark: (chain: Chain) => chain is "spark_regtest" | "spark";
2414
2470
  export declare const isSolana: (chain: Chain) => chain is "solana_localnet" | "solana_testnet" | "solana";
2415
2471
  export declare const isStarknet: (chain: Chain) => chain is "starknet_devnet" | "starknet_sepolia" | "starknet";
@@ -2417,6 +2473,7 @@ export declare const isSui: (chain: Chain) => chain is "sui" | "sui_testnet";
2417
2473
  export declare const isTron: (chain: Chain) => chain is "tron_shasta" | "tron";
2418
2474
  export declare const isXrpl: (chain: Chain) => chain is "xrpl" | "xrpl_testnet";
2419
2475
  export declare const isAlpenSignet: (chain: Chain) => chain is "alpen_signet";
2476
+ export declare const isLightning: (chain: Chain) => chain is "lightning";
2420
2477
  export declare const getBlockchainType: (chain: Chain) => BlockchainType;
2421
2478
  export declare const NATIVE_TOKENS: {
2422
2479
  evm: string;
@@ -12,7 +12,8 @@ export declare enum BlockchainType {
12
12
  litecoin = "litecoin",
13
13
  alpen_signet = "alpen_signet",
14
14
  xrpl = "xrpl",
15
- spark = "spark"
15
+ spark = "spark",
16
+ lightning = "lightning"
16
17
  }
17
18
  export type AddressSchema = {
18
19
  address: string;
@@ -48,3 +49,4 @@ export type StarknetChains = ChainsByBlockchainType<BlockchainType.starknet>;
48
49
  export type SuiChains = ChainsByBlockchainType<BlockchainType.sui>;
49
50
  export type TronChains = ChainsByBlockchainType<BlockchainType.tron>;
50
51
  export type XrplChains = ChainsByBlockchainType<BlockchainType.xrpl>;
52
+ export type LightningChains = ChainsByBlockchainType<BlockchainType.lightning>;
@@ -7,4 +7,5 @@ export declare const OrderbookErrors: {
7
7
  INVALID_TOKEN: string;
8
8
  INVALID_AMOUNTS: string;
9
9
  RECEIVE_AMOUNT_GREATER: string;
10
+ INSUFFICIENT_LIQUIDITY: string;
10
11
  };
@@ -209,6 +209,10 @@ export type XrplOrderResponse = BaseCreateOrderResponse & {
209
209
  TransactionType: string;
210
210
  };
211
211
  };
212
+ export type LightningOrderResponse = BaseCreateOrderResponse & {
213
+ to: string;
214
+ amount: number;
215
+ };
212
216
  type OrderResponseMap = {
213
217
  [BlockchainType.evm]: EvmOrderResponse;
214
218
  [BlockchainType.bitcoin]: BitcoinOrderResponse;
@@ -220,6 +224,7 @@ type OrderResponseMap = {
220
224
  [BlockchainType.alpen_signet]: BitcoinOrderResponse;
221
225
  [BlockchainType.xrpl]: XrplOrderResponse;
222
226
  [BlockchainType.spark]: BitcoinOrderResponse;
227
+ [BlockchainType.lightning]: LightningOrderResponse;
223
228
  };
224
229
  export type CreateOrderResponse<T extends BlockchainType = BlockchainType> = {
225
230
  type: T;
@@ -1,5 +1,5 @@
1
1
  import { Url } from '@gardenfi/utils';
2
- import { BaseCreateOrderResponse, CreateOrderResponse, Order, StarknetOrderResponse, EvmOrderResponse, BitcoinOrderResponse, SolanaOrderResponse, SuiOrderResponse, TronOrderResponse, XrplOrderResponse } from './orderbook/orderbook.types';
2
+ import { BaseCreateOrderResponse, CreateOrderResponse, Order, StarknetOrderResponse, EvmOrderResponse, BitcoinOrderResponse, SolanaOrderResponse, SuiOrderResponse, TronOrderResponse, XrplOrderResponse, LightningOrderResponse } from './orderbook/orderbook.types';
3
3
  import { BlockchainType } from './constants/asset.types';
4
4
 
5
5
  /**
@@ -40,6 +40,10 @@ export declare const isTronOrderResponse: OrderResponseTypeGuard<TronOrderRespon
40
40
  * Type guard for Xrpl order responses
41
41
  */
42
42
  export declare const isXrplOrderResponse: OrderResponseTypeGuard<XrplOrderResponse>;
43
+ /**
44
+ * Type guard for Lightning order responses
45
+ */
46
+ export declare const isLightningOrderResponse: OrderResponseTypeGuard<LightningOrderResponse>;
43
47
  /**
44
48
  * Type guard for Order objects (matched orders)
45
49
  */
@@ -48,7 +52,7 @@ export declare const isOrder: OrderResponseTypeGuard<Order>;
48
52
  * Discriminated union type guard that determines the specific order response type
49
53
  * and returns the appropriate typed response
50
54
  */
51
- export declare function discriminateOrderResponse(response: BaseCreateOrderResponse): CreateOrderResponse<BlockchainType.evm> | CreateOrderResponse<BlockchainType.starknet> | CreateOrderResponse<BlockchainType.bitcoin> | CreateOrderResponse<BlockchainType.solana> | CreateOrderResponse<BlockchainType.sui> | CreateOrderResponse<BlockchainType.xrpl> | null;
55
+ export declare function discriminateOrderResponse(response: BaseCreateOrderResponse): CreateOrderResponse<BlockchainType.evm> | CreateOrderResponse<BlockchainType.starknet> | CreateOrderResponse<BlockchainType.bitcoin> | CreateOrderResponse<BlockchainType.solana> | CreateOrderResponse<BlockchainType.sui> | CreateOrderResponse<BlockchainType.xrpl> | CreateOrderResponse<BlockchainType.lightning> | null;
52
56
  /**
53
57
  * Utility function to get the blockchain type from an order response
54
58
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gardenfi/orderbook",
3
- "version": "3.1.3-beta.6",
3
+ "version": "3.1.3-beta.8",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",
@@ -28,7 +28,7 @@
28
28
  },
29
29
  "dependencies": {
30
30
  "@coral-xyz/anchor": "^0.31.1",
31
- "@gardenfi/utils": "3.1.1-beta.4",
31
+ "@gardenfi/utils": "3.1.1-beta.6",
32
32
  "bufferutil": "^4.0.8",
33
33
  "node-cache": "^5.1.2",
34
34
  "siwe": "^2.1.4",