@gardenfi/orderbook 2.5.2-beta.2 → 2.5.3-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./index2.cjs"),e=require("./index3.cjs"),t=require("./index4.cjs");exports.Orderbook=s.Orderbook;exports.BlockchainType=e.BlockchainType;exports.Chains=e.Chains;exports.NativeTokenAddress=e.NativeTokenAddress;exports.NetworkType=e.NetworkType;exports.getBlockchainType=e.getBlockchainType;exports.isBitcoin=e.isBitcoin;exports.isEVM=e.isEVM;exports.isEvmNativeToken=e.isEvmNativeToken;exports.isMainnet=e.isMainnet;exports.isNativeToken=e.isNativeToken;exports.isSolana=e.isSolana;exports.isSolanaNativeToken=e.isSolanaNativeToken;exports.isStarknet=e.isStarknet;exports.isSui=e.isSui;exports.isSuiNativeToken=e.isSuiNativeToken;exports.ArbitrumLocalnet=t.ArbitrumLocalnet;exports.ETHStarknetLocalnetAsset=t.ETHStarknetLocalnetAsset;exports.EthereumLocalnet=t.EthereumLocalnet;exports.SOLSolanaLocalnetAsset=t.SOLSolanaLocalnetAsset;exports.STRKStarknetLocalnetAsset=t.STRKStarknetLocalnetAsset;exports.StarknetLocalnet=t.StarknetLocalnet;exports.SupportedAssets=t.SupportedAssets;exports.WBTCArbitrumLocalnetAsset=t.WBTCArbitrumLocalnetAsset;exports.WBTCEthereumLocalnetAsset=t.WBTCEthereumLocalnetAsset;exports.bitcoinRegtestAsset=t.bitcoinRegtestAsset;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index2.cjs"),s=require("./index3.cjs"),e=require("./index4.cjs"),t=require("./index5.cjs"),n=require("./index6.cjs");exports.Orderbook=i.Orderbook;exports.ArbitrumLocalnet=s.ArbitrumLocalnet;exports.Assets=s.Assets;exports.ETHStarknetLocalnetAsset=s.ETHStarknetLocalnetAsset;exports.EthereumLocalnet=s.EthereumLocalnet;exports.SOLSolanaLocalnetAsset=s.SOLSolanaLocalnetAsset;exports.STRKStarknetLocalnetAsset=s.STRKStarknetLocalnetAsset;exports.StarknetLocalnet=s.StarknetLocalnet;exports.SupportedAssets=s.SupportedAssets;exports.WBTCArbitrumLocalnetAsset=s.WBTCArbitrumLocalnetAsset;exports.WBTCEthereumLocalnetAsset=s.WBTCEthereumLocalnetAsset;exports.bitcoinRegtestAsset=s.bitcoinRegtestAsset;exports.BlockchainType=e.BlockchainType;exports.Chains=e.Chains;exports.ChainsConfig=e.ChainsConfig;exports.NATIVE_TOKENS=e.NATIVE_TOKENS;exports.NativeTokenAddress=e.NativeTokenAddress;exports.NetworkType=e.NetworkType;exports.OrderLifecycle=e.OrderLifecycle;exports.getBlockchainType=e.getBlockchainType;exports.getChainTypeFromAssetChain=e.getChainTypeFromAssetChain;exports.getChainsFromOrder=e.getChainsFromOrder;exports.isBitcoin=e.isBitcoin;exports.isEVM=e.isEVM;exports.isEvmNativeToken=e.isEvmNativeToken;exports.isMainnet=e.isMainnet;exports.isNativeToken=e.isNativeToken;exports.isSolana=e.isSolana;exports.isSolanaNativeToken=e.isSolanaNativeToken;exports.isStarknet=e.isStarknet;exports.isSui=e.isSui;exports.isSuiNativeToken=e.isSuiNativeToken;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.ChainAsset=n.ChainAsset;
package/dist/index.js CHANGED
@@ -1,31 +1,49 @@
1
- import { Orderbook as o } from "./index2.js";
2
- import { BlockchainType as a, Chains as i, NativeTokenAddress as n, NetworkType as r, getBlockchainType as c, isBitcoin as k, isEVM as l, isEvmNativeToken as S, isMainnet as T, isNativeToken as A, isSolana as L, isSolanaNativeToken as m, isStarknet as p, isSui as u, isSuiNativeToken as v } from "./index3.js";
3
- import { ArbitrumLocalnet as h, ETHStarknetLocalnetAsset as B, EthereumLocalnet as E, SOLSolanaLocalnetAsset as b, STRKStarknetLocalnetAsset as d, StarknetLocalnet as f, SupportedAssets as x, WBTCArbitrumLocalnetAsset as y, WBTCEthereumLocalnetAsset as C, bitcoinRegtestAsset as g } from "./index4.js";
1
+ import { Orderbook as t } from "./index2.js";
2
+ import { ArbitrumLocalnet as o, Assets as i, ETHStarknetLocalnetAsset as n, EthereumLocalnet as a, SOLSolanaLocalnetAsset as c, STRKStarknetLocalnetAsset as p, StarknetLocalnet as l, SupportedAssets as S, WBTCArbitrumLocalnetAsset as T, WBTCEthereumLocalnetAsset as d, bitcoinRegtestAsset as k } from "./index3.js";
3
+ import { BlockchainType as A, Chains as O, ChainsConfig as h, NATIVE_TOKENS as C, NativeTokenAddress as L, NetworkType as u, OrderLifecycle as R, getBlockchainType as E, getChainTypeFromAssetChain as N, getChainsFromOrder as f, isBitcoin as v, isEVM as g, isEvmNativeToken as y, isMainnet as B, isNativeToken as x, isSolana as b, isSolanaNativeToken as F, isStarknet as K, isSui as M, isSuiNativeToken as V } from "./index4.js";
4
+ import { ConstructUrl as w, discriminateOrderResponse as H, getOrderResponseType as I, isBitcoinOrderResponse as U, isEvmOrderResponse as _, isOrder as j, isSolanaOrderResponse as q, isStarknetOrderResponse as z, isSuiOrderResponse as D } from "./index5.js";
5
+ import { ChainAsset as J } from "./index6.js";
4
6
  export {
5
- h as ArbitrumLocalnet,
6
- a as BlockchainType,
7
- i as Chains,
8
- B as ETHStarknetLocalnetAsset,
9
- E as EthereumLocalnet,
10
- n as NativeTokenAddress,
11
- r as NetworkType,
12
- o as Orderbook,
13
- b as SOLSolanaLocalnetAsset,
14
- d as STRKStarknetLocalnetAsset,
15
- f as StarknetLocalnet,
16
- x as SupportedAssets,
17
- y as WBTCArbitrumLocalnetAsset,
18
- C as WBTCEthereumLocalnetAsset,
19
- g as bitcoinRegtestAsset,
20
- c as getBlockchainType,
21
- k as isBitcoin,
22
- l as isEVM,
23
- S as isEvmNativeToken,
24
- T as isMainnet,
25
- A as isNativeToken,
26
- L as isSolana,
27
- m as isSolanaNativeToken,
28
- p as isStarknet,
29
- u as isSui,
30
- v as isSuiNativeToken
7
+ o as ArbitrumLocalnet,
8
+ i as Assets,
9
+ A as BlockchainType,
10
+ J as ChainAsset,
11
+ O as Chains,
12
+ h as ChainsConfig,
13
+ w as ConstructUrl,
14
+ n as ETHStarknetLocalnetAsset,
15
+ a as EthereumLocalnet,
16
+ C as NATIVE_TOKENS,
17
+ L as NativeTokenAddress,
18
+ u as NetworkType,
19
+ R as OrderLifecycle,
20
+ t as Orderbook,
21
+ c as SOLSolanaLocalnetAsset,
22
+ p as STRKStarknetLocalnetAsset,
23
+ l as StarknetLocalnet,
24
+ S as SupportedAssets,
25
+ T as WBTCArbitrumLocalnetAsset,
26
+ d as WBTCEthereumLocalnetAsset,
27
+ k as bitcoinRegtestAsset,
28
+ H as discriminateOrderResponse,
29
+ E as getBlockchainType,
30
+ N as getChainTypeFromAssetChain,
31
+ f as getChainsFromOrder,
32
+ I as getOrderResponseType,
33
+ v as isBitcoin,
34
+ U as isBitcoinOrderResponse,
35
+ g as isEVM,
36
+ y as isEvmNativeToken,
37
+ _ as isEvmOrderResponse,
38
+ B as isMainnet,
39
+ x as isNativeToken,
40
+ j as isOrder,
41
+ b as isSolana,
42
+ F as isSolanaNativeToken,
43
+ q as isSolanaOrderResponse,
44
+ K as isStarknet,
45
+ z as isStarknetOrderResponse,
46
+ M as isSui,
47
+ V as isSuiNativeToken,
48
+ D as isSuiOrderResponse
31
49
  };
package/dist/index2.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),a=require("./index5.cjs");class O{constructor(c){this.Url=c}async createOrder(c,n){const t=await n.getAuthHeaders();if(t.error)return r.Err(t.error);try{const e=await r.Fetcher.post(this.Url,{body:JSON.stringify(c),headers:{...t.val,"Content-Type":"application/json"}});return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("CreateOrder: Unexpected error, result is undefined")}catch(e){return r.Err("CreateOrder Err:",String(e))}}async getOrder(c,n,t){const e=this.Url.endpoint(n?`/id/${c}/matched`:`/id/${c}/unmatched`);try{const s=await r.Fetcher.get(e,{...t});return s.error?r.Err(s.error):s.result?r.Ok(s.result):r.Err("GetOrder: Unexpected error, result is undefined")}catch(s){return r.Err("GetOrder:",String(s))}}async getMatchedOrders(c,n,t,e){const s=a.ConstructUrl(this.Url,`/user/${c}/matched`,{...t,status:n});try{const u=await r.Fetcher.get(s,{...e});return u.error?r.Err(u.error):u.result?r.Ok(u.result):r.Err("GetMatchedOrders: Unexpected error, result is undefined")}catch(u){return r.Err("GetMatchedOrders:",String(u))}}async getUnMatchedOrders(c,n,t){const e=a.ConstructUrl(this.Url,`/user/${c}/unmatched`,n);try{const s=await r.Fetcher.get(e,{...t});return s.error?r.Err(s.error):s.result?r.Ok(s.result):r.Err("GetUnMatchedOrders: Unexpected error, result is undefined")}catch(s){return r.Err("GetUnMatchedOrders:",String(s))}}async getOrders(c,n,t,e){const s=c?"/matched":"/unmatched",u={page:t==null?void 0:t.page,per_page:t==null?void 0:t.per_page,...n},l=a.ConstructUrl(this.Url,s,u);try{const d=await r.Fetcher.get(l,{...e});return d.error?r.Err(d.error):d.result?r.Ok(d.result):r.Err("GetAllOrders: Unexpected error, result is undefined")}catch(d){return r.Err("GetAllOrders:",String(d))}}async subscribeOrders(c,n,t,e,s="all",u,l){let d=!1;const h=async()=>{if(!d){d=!0;try{const o=n?await this.getMatchedOrders(c,s,u,l):await this.getUnMatchedOrders(c,u,l);o.ok?await e(o.val):console.error("Error fetching orders:",o.error)}catch(o){console.error("Error fetching orders:",o)}finally{d=!1}}};await h();const i=setInterval(h,t);return()=>{clearInterval(i)}}async getOrdersCount(c,n){const t=this.Url.endpoint(`/user/${c}/count`);try{const e=await r.Fetcher.get(t,{...n});return e.error?r.Err(e.error):e.status===r.ApiStatus.Ok&&e.result!==void 0?r.Ok(e.result):r.Err("GetOrdersCount: Unexpected error, result is undefined")}catch(e){return r.Err("GetOrdersCount:",String(e))}}}exports.Orderbook=O;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),a=require("./index5.cjs");class d{constructor(n){this.url=n}async createOrder(n,o){try{const t=await o.getAuthHeaders();if(t.error)return r.Err(t.error);const s=await r.Fetcher.post(this.url.endpoint("/v2/orders"),{body:JSON.stringify(n),headers:{...t.val,"Content-Type":"application/json"}});if(s.error)return r.Err(s.error);if(!s.result)return r.Err("CreateOrder: Unexpected error, result is undefined");const e=a.discriminateOrderResponse(s.result);return e?r.Ok(e):r.Err("CreateOrder: Unable to determine order type from response")}catch(t){return r.Err("CreateOrder Err:",String(t))}}async getOrder(n,o){try{const t=this.url.endpoint("/v2/orders").endpoint(n),s=await r.Fetcher.get(t,{...o});return s.error?r.Err(s.error):s.result?r.Ok(s.result):r.Err("GetOrder: Unexpected error, result is undefined")}catch(t){return r.Err(`GetOrder: ${t instanceof Error?t.message:String(t)}`)}}async getOrders(n,o){const s=a.ConstructUrl(this.url,"/v2/orders",n);try{const e=await r.Fetcher.get(s,{...o});return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("GetAllOrders: Unexpected error, result is undefined")}catch(e){return r.Err(`GetAllOrders: ${e instanceof Error?e.message:String(e)}`)}}async subscribeOrders(n,o,t,s){let e=!1;const c=async()=>{if(!e){e=!0;try{const i=await this.getOrders(n,s);i.ok?await o(i.val):console.error("Error fetching orders:",i.error)}catch(i){console.error("Error fetching orders:",i)}finally{e=!1}}};await c();const u=setInterval(c,t);return()=>{clearInterval(u)}}}exports.Orderbook=d;
package/dist/index2.js CHANGED
@@ -1,125 +1,87 @@
1
- import { Err as s, Fetcher as o, Ok as a, ApiStatus as U } from "@gardenfi/utils";
2
- import { ConstructUrl as i } from "./index5.js";
3
- class w {
4
- constructor(c) {
5
- this.Url = c;
1
+ import { Err as s, Fetcher as a, Ok as c } from "@gardenfi/utils";
2
+ import { discriminateOrderResponse as l, ConstructUrl as f } from "./index5.js";
3
+ class g {
4
+ constructor(n) {
5
+ this.url = n;
6
6
  }
7
- /**
8
- * Creates an order
9
- * @param {CreateOrderRequestWithAdditionalData} order - The configuration for the creating the order.
10
- * @param {IAuth} auth - The auth object.
11
- * @returns {string} The create order ID.
12
- */
13
- async createOrder(c, n) {
14
- const e = await n.getAuthHeaders();
15
- if (e.error)
16
- return s(e.error);
7
+ async createOrder(n, o) {
17
8
  try {
18
- const r = await o.post(this.Url, {
19
- body: JSON.stringify(c),
20
- headers: {
21
- ...e.val,
22
- "Content-Type": "application/json"
9
+ const e = await o.getAuthHeaders();
10
+ if (e.error)
11
+ return s(e.error);
12
+ const t = await a.post(
13
+ this.url.endpoint("/v2/orders"),
14
+ {
15
+ body: JSON.stringify(n),
16
+ headers: {
17
+ ...e.val,
18
+ "Content-Type": "application/json"
19
+ }
23
20
  }
24
- });
25
- return r.error ? s(r.error) : r.result ? a(r.result) : s("CreateOrder: Unexpected error, result is undefined");
26
- } catch (r) {
27
- return s("CreateOrder Err:", String(r));
28
- }
29
- }
30
- async getOrder(c, n, e) {
31
- const r = this.Url.endpoint(
32
- n ? `/id/${c}/matched` : `/id/${c}/unmatched`
33
- );
34
- try {
35
- const t = await o.get(r, { ...e });
36
- return t.error ? s(t.error) : t.result ? a(t.result) : s("GetOrder: Unexpected error, result is undefined");
37
- } catch (t) {
38
- return s("GetOrder:", String(t));
39
- }
40
- }
41
- async getMatchedOrders(c, n, e, r) {
42
- const t = i(this.Url, `/user/${c}/matched`, {
43
- ...e,
44
- status: n
45
- });
46
- try {
47
- const d = await o.get(
48
- t,
49
- { ...r }
50
21
  );
51
- return d.error ? s(d.error) : d.result ? a(d.result) : s("GetMatchedOrders: Unexpected error, result is undefined");
52
- } catch (d) {
53
- return s("GetMatchedOrders:", String(d));
22
+ if (t.error) return s(t.error);
23
+ if (!t.result)
24
+ return s("CreateOrder: Unexpected error, result is undefined");
25
+ const r = l(t.result);
26
+ return r ? c(r) : s("CreateOrder: Unable to determine order type from response");
27
+ } catch (e) {
28
+ return s("CreateOrder Err:", String(e));
54
29
  }
55
30
  }
56
- async getUnMatchedOrders(c, n, e) {
57
- const r = i(
58
- this.Url,
59
- `/user/${c}/unmatched`,
60
- n
61
- );
31
+ async getOrder(n, o) {
62
32
  try {
63
- const t = await o.get(
64
- r,
65
- { ...e }
33
+ const e = this.url.endpoint("/v2/orders").endpoint(n), t = await a.get(e, { ...o });
34
+ return t.error ? s(t.error) : t.result ? c(t.result) : s("GetOrder: Unexpected error, result is undefined");
35
+ } catch (e) {
36
+ return s(
37
+ `GetOrder: ${e instanceof Error ? e.message : String(e)}`
66
38
  );
67
- return t.error ? s(t.error) : t.result ? a(t.result) : s("GetUnMatchedOrders: Unexpected error, result is undefined");
68
- } catch (t) {
69
- return s("GetUnMatchedOrders:", String(t));
70
39
  }
71
40
  }
72
- async getOrders(c, n, e, r) {
73
- const t = c ? "/matched" : "/unmatched", d = {
74
- page: e == null ? void 0 : e.page,
75
- per_page: e == null ? void 0 : e.per_page,
76
- ...n
77
- }, h = i(this.Url, t, d);
41
+ async getOrders(n, o) {
42
+ const t = f(this.url, "/v2/orders", n);
78
43
  try {
79
- const u = await o.get(h, { ...r });
80
- return u.error ? s(u.error) : u.result ? a(u.result) : s("GetAllOrders: Unexpected error, result is undefined");
81
- } catch (u) {
82
- return s("GetAllOrders:", String(u));
44
+ const r = await a.get(t, {
45
+ ...o
46
+ });
47
+ return r.error ? s(r.error) : r.result ? c(r.result) : s("GetAllOrders: Unexpected error, result is undefined");
48
+ } catch (r) {
49
+ return s(
50
+ `GetAllOrders: ${r instanceof Error ? r.message : String(r)}`
51
+ );
83
52
  }
84
53
  }
85
- async subscribeOrders(c, n, e, r, t = "all", d, h) {
86
- let u = !1;
87
- const O = async () => {
88
- if (!u) {
89
- u = !0;
54
+ /**
55
+ * Subscribe to orders
56
+ * @param account - The account of the order
57
+ * @param interval - The interval of the order
58
+ * @param cb - The callback function
59
+ * @param status - The status of the order
60
+ * @param paginationConfig - The pagination configuration
61
+ * @returns {Promise<() => void>} A promise that resolves to the unsubscribe function.
62
+ */
63
+ async subscribeOrders(n, o, e, t) {
64
+ let r = !1;
65
+ const d = async () => {
66
+ if (!r) {
67
+ r = !0;
90
68
  try {
91
- const l = n ? await this.getMatchedOrders(
92
- c,
93
- t,
94
- d,
95
- h
96
- ) : await this.getUnMatchedOrders(c, d, h);
97
- l.ok ? await r(
98
- l.val
99
- ) : console.error("Error fetching orders:", l.error);
100
- } catch (l) {
101
- console.error("Error fetching orders:", l);
69
+ const i = await this.getOrders(n, t);
70
+ i.ok ? await o(i.val) : console.error("Error fetching orders:", i.error);
71
+ } catch (i) {
72
+ console.error("Error fetching orders:", i);
102
73
  } finally {
103
- u = !1;
74
+ r = !1;
104
75
  }
105
76
  }
106
77
  };
107
- await O();
108
- const y = setInterval(O, e);
78
+ await d();
79
+ const u = setInterval(d, e);
109
80
  return () => {
110
- clearInterval(y);
81
+ clearInterval(u);
111
82
  };
112
83
  }
113
- async getOrdersCount(c, n) {
114
- const e = this.Url.endpoint(`/user/${c}/count`);
115
- try {
116
- const r = await o.get(e, { ...n });
117
- return r.error ? s(r.error) : r.status === U.Ok && r.result !== void 0 ? a(r.result) : s("GetOrdersCount: Unexpected error, result is undefined");
118
- } catch (r) {
119
- return s("GetOrdersCount:", String(r));
120
- }
121
- }
122
84
  }
123
85
  export {
124
- w as Orderbook
86
+ g as Orderbook
125
87
  };
package/dist/index3.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var l=(e=>(e.Bitcoin="Bitcoin",e.EVM="EVM",e.Solana="Solana",e.Starknet="Starknet",e.Sui="Sui",e))(l||{}),u=(e=>(e.mainnet="mainnet",e.testnet="testnet",e.localnet="localnet",e))(u||{});const t={bitcoin:"bitcoin",bitcoin_testnet:"bitcoin_testnet",bitcoin_regtest:"bitcoin_regtest",ethereum:"ethereum",base:"base",arbitrum:"arbitrum",ethereum_sepolia:"ethereum_sepolia",arbitrum_localnet:"arbitrum_localnet",arbitrum_sepolia:"arbitrum_sepolia",ethereum_localnet:"ethereum_localnet",base_sepolia:"base_sepolia",solana:"solana",solana_testnet:"solana_testnet",solana_localnet:"solana_localnet",bera_testnet:"bera_testnet",citrea_testnet:"citrea_testnet",bera:"bera",monad_testnet:"monad_testnet",starknet:"starknet",starknet_sepolia:"starknet_sepolia",starknet_devnet:"starknet_devnet",hyperliquid_testnet:"hyperliquid_testnet",hyperliquid:"hyperliquid",unichain:"unichain",corn:"corn",botanix:"botanix",bnbchain:"bnbchain",bnbchain_testnet:"bnbchain_testnet",sui:"sui",sui_testnet:"sui_testnet",core:"core"},k=e=>!(e===t.ethereum_sepolia||e===t.bitcoin_testnet||e===t.bitcoin_regtest||e===t.arbitrum_localnet||e===t.ethereum_localnet||e===t.arbitrum_sepolia||e===t.base_sepolia||e===t.solana_testnet||e===t.solana_localnet||e===t.bera_testnet||e===t.citrea_testnet||e===t.monad_testnet||e===t.starknet_devnet||e===t.starknet_sepolia||e===t.hyperliquid_testnet||e===t.bnbchain_testnet||e===t.sui_testnet),r=e=>e===t.bitcoin||e===t.bitcoin_testnet||e===t.bitcoin_regtest,s=e=>e===t.ethereum||e===t.arbitrum||e===t.ethereum_sepolia||e===t.ethereum_localnet||e===t.arbitrum_localnet||e===t.arbitrum_sepolia||e===t.base_sepolia||e===t.base||e===t.bera_testnet||e===t.citrea_testnet||e===t.bera||e===t.monad_testnet||e===t.hyperliquid_testnet||e===t.hyperliquid||e===t.unichain||e===t.corn||e===t.botanix||e===t.bnbchain||e===t.bnbchain_testnet||e===t.core,o=e=>e===t.solana||e===t.solana_testnet||e===t.solana_localnet,i=e=>e===t.starknet||e===t.starknet_devnet||e===t.starknet_sepolia,a=e=>e===t.sui||e===t.sui_testnet,p=e=>{if(r(e))return"Bitcoin";if(s(e))return"EVM";if(o(e))return"Solana";if(i(e))return"Starknet";if(a(e))return"Sui";throw new Error("Invalid or unsupported chain")},_="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",b=(e,n)=>s(e)&&n.toLowerCase()===_.toLowerCase(),m=(e,n)=>o(e)&&n.toLowerCase()==="primary",d=(e,n)=>a(e)&&n.toLowerCase()==="0x2::sui::sui",c=e=>b(e.chain,e.tokenAddress)||m(e.chain,e.tokenAddress)||r(e.chain)||d(e.chain,e.tokenAddress)||!i(e.chain);exports.BlockchainType=l;exports.Chains=t;exports.NativeTokenAddress=_;exports.NetworkType=u;exports.getBlockchainType=p;exports.isBitcoin=r;exports.isEVM=s;exports.isEvmNativeToken=b;exports.isMainnet=k;exports.isNativeToken=c;exports.isSolana=o;exports.isSolanaNativeToken=m;exports.isStarknet=i;exports.isSui=a;exports.isSuiNativeToken=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index4.cjs"),c={id:1001,name:"Starknet Localnet",nativeCurrency:{name:"Stark Token",symbol:"STRK",decimals:18},rpcUrls:{default:{http:["http://127.0.0.1:8547/"]}},testnet:!0},m={id:31338,name:"Arbitrum Localnet",nativeCurrency:{name:"Ethereum",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["http://localhost:8546/"]}},testnet:!0},r={id:31337,name:"Ethereum Localnet",nativeCurrency:{name:"Ethereum",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["http://localhost:8545/"]}},testnet:!0},a={name:"SOL Solana Localnet",decimals:9,symbol:"SOL",chain:e.Chains.solana_localnet,atomicSwapAddress:"primary",tokenAddress:"primary"},s={name:"Bitcoin Regtest",decimals:8,symbol:"BTC",chain:e.Chains.bitcoin_regtest,atomicSwapAddress:"primary",tokenAddress:"primary"},t={name:"WBTC Arbitrum Localnet",decimals:8,symbol:"WBTC",chain:e.Chains.arbitrum_localnet,atomicSwapAddress:"0x0165878A594ca255338adfa4d48449f69242Eb8F",tokenAddress:"0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512"},n={name:"WBTC Ethereum Localnet",decimals:8,symbol:"WBTC",chain:e.Chains.ethereum_localnet,atomicSwapAddress:"0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0",tokenAddress:"0x5FbDB2315678afecb367f032d93F642f64180aa3"},i={name:"STRK Starknet Localnet",decimals:18,symbol:"STRK",chain:e.Chains.starknet_devnet,atomicSwapAddress:"0x15cf8b127aa850c97ed10de6f8b300cabc4f09232a57e63667af02fdef8a55a",tokenAddress:"0x51aa025f1c9948790113e4ebea826dee24542bc50902076c05892774210e8d2"},d={name:"ETH Starknet Localnet",decimals:18,symbol:"ETH",chain:e.Chains.starknet_devnet,atomicSwapAddress:"0x1890470168440bbb9df50988748924a74ea22de10d22a081e458737b9574e75",tokenAddress:"0x51aa025f1c9948790113e4ebea826dee24542bc50902076c05892774210e8d2"},o={localnet:{solana_localnet:{SOL:a},arbitrum_localnet:{WBTC:t},ethereum_localnet:{WBTC:n},bitcoin_regtest:{BTC:s},starknet_devnet:{STRK:i,ETH:d}},testnet:{solana_testnet:{SOL:{name:"Solana",decimals:9,symbol:"SOL",chain:e.Chains.solana_testnet,logo:"https://garden-finance.imgix.net/chain_images/solana.png",tokenAddress:"primary",atomicSwapAddress:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF_primary"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.solana_testnet,logo:"https://garden.imgix.net/token-images/usdc.svg",tokenAddress:"5JbWjyLdYKTuykpq2itWbdRcZkhK3hs6fiH62pkmLYZi",atomicSwapAddress:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU_5JbWjyLdYKTuykpq2itWbdRcZkhK3hs6fiH62pkmLYZi"},cbBTC:{name:"Coinbase Wrapped Bitcoin",decimals:8,symbol:"cbBTC",chain:e.Chains.solana_testnet,logo:"https://garden.imgix.net/token-images/cbBTC.svg",tokenAddress:"CL8C4gsaEQyWPxL4Zn7dcnZ8LKvPYqHmv4ipMax4cDUL",atomicSwapAddress:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU_CL8C4gsaEQyWPxL4Zn7dcnZ8LKvPYqHmv4ipMax4cDUL"}},bitcoin_testnet:{BTC:{name:"Bitcoin",decimals:8,symbol:"BTC",chain:e.Chains.bitcoin_testnet,logo:"https://garden.imgix.net/token-images/bitcoin.svg",tokenAddress:"primary",atomicSwapAddress:"primary"}},ethereum_sepolia:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.ethereum_sepolia,logo:"https://garden.imgix.net/token-images/wbtc.svg",tokenAddress:"0xE918A5a47b8e0AFAC2382bC5D1e981613e63fB07",atomicSwapAddress:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.ethereum_sepolia,logo:"https://garden.imgix.net/token-images/usdc.svg",tokenAddress:"0xadDD620EA6D20f4f9c24fff3BC039E497ceBEDc2",atomicSwapAddress:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493"}},arbitrum_sepolia:{iBTC:{name:"iBTC",decimals:8,symbol:"iBTC",chain:e.Chains.arbitrum_sepolia,logo:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",atomicSwapAddress:"0x7e8c18fa79bd4014cfCf49294Bf315139eD39f45",tokenAddress:"0x685437f025c5f33A94818408C286bc1F023201Fc"},WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.arbitrum_sepolia,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xb5AE9785349186069C48794a763DB39EC756B1cF",tokenAddress:"0x1c287717c886794ac9f5DF3987195431Ceb3456E"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.arbitrum_sepolia,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",tokenAddress:"0xC90Ad72eCc10a52a681ceDAE6EbBD3470A0c829"},SEED:{name:"Seed",decimals:18,symbol:"SEED",chain:e.Chains.arbitrum_sepolia,logo:"https://garden.imgix.net/token-images/seed.svg",atomicSwapAddress:"0xFBD30cB9313fe580031A7E0258693E1cec002803",tokenAddress:"0x432B43764548c3E47eA65aAdeB91D75C84DBcC2c"}},base_sepolia:{iBTC:{name:"iBTC",decimals:8,symbol:"iBTC",chain:e.Chains.base_sepolia,logo:"https://garden.imgix.net/token-images/dlcBTCIcon.svg",atomicSwapAddress:"0x46F1Ba9C9d89C34F9dbC4085F6B1f9965c589ca1",tokenAddress:"0x0b0D554D9573bAe1a7556d220847f45182918B28"},WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.base_sepolia,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",tokenAddress:"0xD8a6E3FCA403d79b6AD6216b60527F51cc967D39"},USDT:{name:"Tether USD",decimals:6,symbol:"USDT",chain:e.Chains.base_sepolia,logo:"https://garden.imgix.net/token-images/usdt.svg",atomicSwapAddress:"0x917cfef972d667dC0FeC76806cB5623585B81493",tokenAddress:"0xeaE7721d779276eb0f5837e2fE260118724a2Ba4"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.base_sepolia,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",tokenAddress:"0x1ac7A0ebf13a996D5915e212900bE2d074f94988"}},bera_testnet:{},citrea_testnet:{WCBTC:{name:"Wrapped Citrea Bitcoin",decimals:18,symbol:"WCBTC",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xD8e99df8cf77E7383c2f2a84bC6384b2DF88CAd3",tokenAddress:"0x8d0c9d1c17aE5e40ffF9bE350f57840E9E66Cd93"},WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",tokenAddress:"0x3edA22460259b29433704dda71cc921F528165Ea"},CBTC:{name:"Citrea Bitcoin",decimals:18,symbol:"CBTC",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",tokenAddress:null},CBBTC:{name:"Citrea Bridged Bitcoin",decimals:8,symbol:"CBBTC",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",tokenAddress:"0xeAa998aF280a62Ae08BaE4f9fa59C9b30e6BD306"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",tokenAddress:"0xCdA8661fDA031deFCc9BdD88C0e12669Cac47Fb0"},USDT:{name:"Tether USD",decimals:6,symbol:"USDT",chain:e.Chains.citrea_testnet,logo:"https://garden.imgix.net/token-images/usdt.svg",atomicSwapAddress:"0x917cfef972d667dC0FeC76806cB5623585B81493",tokenAddress:"0xF5cFE09b852Ddb164cF6Db419B9c11aAb5F30cb6"}},monad_testnet:{cbBTC:{name:"Coinbase Wrapped Bitcoin",decimals:8,symbol:"cbBTC",chain:e.Chains.monad_testnet,logo:"https://garden.imgix.net/token-images/cbBTC.svg",atomicSwapAddress:"0x8656d38352CD90ca55881eBd0AF6822839b435A8",tokenAddress:"0x6b6303fAb8eC7232b4f2a7b9fa58E5216F608fcb"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.monad_testnet,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x730Be401ef981D199a0560C87DfdDaFd3EC1C493",tokenAddress:"0xf817257fed379853cde0fa4f97ab987181b1e5ea"}},starknet_sepolia:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.starknet_sepolia,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0x06579d255314109429a4477d89629bc2b94f529ae01979c2f8014f9246482603",tokenAddress:"0x496bef3ed20371382fbe0ca6a5a64252c5c848f9f1f0cccf8110fc4def912d5"}},sui_testnet:{SUI:{name:"SUI",decimals:9,symbol:"SUI",chain:e.Chains.sui_testnet,logo:"https://garden-finance.imgix.net/chain_images/sui.svg",tokenAddress:"0x2::sui::SUI",atomicSwapAddress:"0x5c438715b7dcc02d12ab92449153a1e5ade2301620d5bf60aa748f006726d369"}},hyperliquid_testnet:{},bnbchain_testnet:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.bnbchain_testnet,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xd1E0Ba2b165726b3a6051b765d4564d030FDcf50",tokenAddress:"0x39f3294352208905fc6ebf033954E6c6455CdB4C"}}},mainnet:{bitcoin:{BTC:{name:"Bitcoin",decimals:8,symbol:"BTC",chain:e.Chains.bitcoin,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"primary",tokenAddress:"primary"}},base:{USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.base,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",tokenAddress:"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},cBBTC:{name:"Coinbase Wrapped BTC",decimals:8,symbol:"cBBTC",chain:e.Chains.base,logo:"https://coin-images.coingecko.com/coins/images/51336/large/cbbtc.png?1730814747",atomicSwapAddress:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",tokenAddress:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf"}},arbitrum:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.arbitrum,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xb5AE9785349186069C48794a763DB39EC756B1cF",tokenAddress:"0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.arbitrum,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x8E12d730756457B99ce6E6AbFd60eBe751dA169B",tokenAddress:"0xaf88d065e77c8cC2239327C5EDb3A432268e5831"},iBTC:{name:"iBTC",decimals:8,symbol:"iBTC",chain:e.Chains.arbitrum,logo:"https://garden.imgix.net/token-images/iBTC.png",atomicSwapAddress:"0x7e8c18fa79bd4014cfCf49294Bf315139eD39f45",tokenAddress:"0x050C24dBf1eEc17babE5fc585F06116A259CC77A"},SEED:{name:"Seed Token",decimals:18,symbol:"SEED",chain:e.Chains.arbitrum,logo:"https://garden.imgix.net/token-images/seed.svg",atomicSwapAddress:"0xFBD30cB9313fe580031A7E0258693E1cec002803",tokenAddress:"0x86f65121804D2Cdbef79F9f072D4e0c2eEbABC08"}},ethereum:{ETH:{name:"Ethereum",decimals:18,symbol:"ETH",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/chain_images/ethereum.svg",atomicSwapAddress:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",tokenAddress:null},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",tokenAddress:"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"},WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",tokenAddress:"0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599"},cBBTC:{name:"Coinbase Wrapped BTC",decimals:8,symbol:"cBBTC",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/token-images/cbBTC.svg",atomicSwapAddress:"0xe35d025d0f0d9492db4700FE8646f7F89150eC04",tokenAddress:"0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf"},iBTC:{name:"iBTC",decimals:8,symbol:"iBTC",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/token-images/iBTC.png",atomicSwapAddress:"0x3aebBC6Dd1d024BE1C579E18e2EB92667B6f3579",tokenAddress:"0x20157DBAbb84e3BBFE68C349d0d44E48AE7B5AD2"},SEED:{name:"Seed Token",decimals:18,symbol:"SEED",chain:e.Chains.ethereum,logo:"https://garden.imgix.net/token-images/seed.svg",atomicSwapAddress:"0xCE511De667885f92B8c36fcfC79C3B5bEb875463",tokenAddress:"0x5eed99d066a8CaF10f3E4327c1b3D8b673485eED"}},solana:{SOL:{name:"Solana",decimals:9,symbol:"SOL",chain:e.Chains.solana,logo:"https://garden-finance.imgix.net/chain_images/solana.png",atomicSwapAddress:"2bag6xpshpvPe7SJ9nSDLHpxqhEAoHPGpEkjNSv7gxoF",tokenAddress:null},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.solana,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",tokenAddress:"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"},cBBTC:{name:"Coinbase Wrapped BTC",decimals:8,symbol:"cBBTC",chain:e.Chains.solana,logo:"https://garden.imgix.net/token-images/cbBTC.svg",atomicSwapAddress:"gdnvdMCHJgnidtU7SL8RkRshHPvDJU1pdfZEpoLvqdU",tokenAddress:"cbbtcf3aa214zXHbiAZQwf4122FBYbraNdFqgw4iMij"}},bera:{LBTC:{name:"Lombard BTC",decimals:8,symbol:"LBTC",chain:e.Chains.bera,logo:"https://garden.imgix.net/token-images/LBTC.svg",atomicSwapAddress:"0x84A396920d8B8CA2e69bD9503Bc1B2f73f1b8b33",tokenAddress:"0xecAc9C5F704e954931349Da37F60E39f515c11c1"}},starknet:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.starknet,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0x7defd8eb3b770005ab1ca5f89ad31f98fb5bc3c52deaeafd130be3b49f967b4",tokenAddress:"0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac"}},sui:{SUI:{name:"Sui",decimals:9,symbol:"SUI",chain:e.Chains.sui,logo:"https://garden-finance.imgix.net/chain_images/sui.svg",atomicSwapAddress:"0xa4f4e653547e98d4b541378e14db2393a09aff4b829f158b133d2eb3c3a942b5",tokenAddress:"0x2::sui::SUI"}},hyperliquid:{uBTC:{name:"uBTC",decimals:8,symbol:"uBTC",chain:e.Chains.hyperliquid,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"0xDC74a45e86DEdf1fF7c6dac77e0c2F082f9E4F72",tokenAddress:"0x9FDBdA0A5e284c32744D2f17Ee5c74B284993463"}},unichain:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.unichain,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",tokenAddress:"0x927B51f251480a681271180DA4de28D44EC4AfB8"},USDC:{name:"USD Coin",decimals:6,symbol:"USDC",chain:e.Chains.unichain,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",tokenAddress:"0x078D782b760474a361dDA0AF3839290b0EF57AD6"}},corn:{BTCN:{name:"Bitcorn",decimals:18,symbol:"BTCN",chain:e.Chains.corn,logo:"https://garden.imgix.net/token-images/bitcorn.svg",atomicSwapAddress:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",tokenAddress:null}},botanix:{BTC:{name:"Botanix Bitcoin",decimals:18,symbol:"BTC",chain:e.Chains.botanix,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"0xE413743B51f3cC8b3ac24addf50D18fa138cB0Bb",tokenAddress:null}},bnbchain:{BTCB:{name:"BTCB",decimals:18,symbol:"BTCB",chain:e.Chains.bnbchain,logo:"https://garden.imgix.net/token-images/bitcoin.svg",atomicSwapAddress:"0xe74784E5A45528fDEcB257477DD6bd31c8ef0761",tokenAddress:"0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c"},USDC:{name:"USD Coin",decimals:18,symbol:"USDC",chain:e.Chains.bnbchain,logo:"https://garden.imgix.net/token-images/usdc.svg",atomicSwapAddress:"0x5fA58e4E89c85B8d678Ade970bD6afD4311aF17E",tokenAddress:"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"}},core:{WBTC:{name:"Wrapped Bitcoin",decimals:8,symbol:"WBTC",chain:e.Chains.core,logo:"https://garden.imgix.net/token-images/wbtc.svg",atomicSwapAddress:"0xD781a2abB3FCB9fC0D1Dd85697c237d06b75fe95",tokenAddress:"0x5832f53d147b3d6Cd4578B9CBD62425C7ea9d0Bd"}}}},C=o.mainnet;exports.ArbitrumLocalnet=m;exports.Assets=C;exports.ETHStarknetLocalnetAsset=d;exports.EthereumLocalnet=r;exports.SOLSolanaLocalnetAsset=a;exports.STRKStarknetLocalnetAsset=i;exports.StarknetLocalnet=c;exports.SupportedAssets=o;exports.WBTCArbitrumLocalnetAsset=t;exports.WBTCEthereumLocalnetAsset=n;exports.bitcoinRegtestAsset=s;