@gardenfi/orderbook 2.4.2 → 2.4.3-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/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.isSolana=e.isSolana;exports.isSolanaNativeToken=e.isSolanaNativeToken;exports.isStarknet=e.isStarknet;exports.ArbitrumLocalnet=t.ArbitrumLocalnet;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 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.ArbitrumLocalnet=t.ArbitrumLocalnet;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;
package/dist/index.js CHANGED
@@ -1,27 +1,28 @@
1
1
  import { Orderbook as o } from "./index2.js";
2
- import { BlockchainType as a, Chains as n, NativeTokenAddress as i, NetworkType as r, getBlockchainType as c, isBitcoin as l, isEVM as k, isEvmNativeToken as A, isMainnet as S, isSolana as T, isSolanaNativeToken as m, isStarknet as p } from "./index3.js";
3
- import { ArbitrumLocalnet as h, EthereumLocalnet as u, SOLSolanaLocalnetAsset as B, STRKStarknetLocalnetAsset as b, StarknetLocalnet as d, SupportedAssets as v, WBTCArbitrumLocalnetAsset as E, WBTCEthereumLocalnetAsset as N, bitcoinRegtestAsset as f } from "./index4.js";
2
+ import { BlockchainType as a, Chains as n, NativeTokenAddress as i, NetworkType as r, getBlockchainType as c, isBitcoin as l, isEVM as k, isEvmNativeToken as T, isMainnet as A, isNativeToken as S, isSolana as m, isSolanaNativeToken as p, isStarknet as L } from "./index3.js";
3
+ import { ArbitrumLocalnet as u, EthereumLocalnet as v, SOLSolanaLocalnetAsset as B, STRKStarknetLocalnetAsset as N, StarknetLocalnet as b, SupportedAssets as d, WBTCArbitrumLocalnetAsset as E, WBTCEthereumLocalnetAsset as f, bitcoinRegtestAsset as x } from "./index4.js";
4
4
  export {
5
- h as ArbitrumLocalnet,
5
+ u as ArbitrumLocalnet,
6
6
  a as BlockchainType,
7
7
  n as Chains,
8
- u as EthereumLocalnet,
8
+ v as EthereumLocalnet,
9
9
  i as NativeTokenAddress,
10
10
  r as NetworkType,
11
11
  o as Orderbook,
12
12
  B as SOLSolanaLocalnetAsset,
13
- b as STRKStarknetLocalnetAsset,
14
- d as StarknetLocalnet,
15
- v as SupportedAssets,
13
+ N as STRKStarknetLocalnetAsset,
14
+ b as StarknetLocalnet,
15
+ d as SupportedAssets,
16
16
  E as WBTCArbitrumLocalnetAsset,
17
- N as WBTCEthereumLocalnetAsset,
18
- f as bitcoinRegtestAsset,
17
+ f as WBTCEthereumLocalnetAsset,
18
+ x as bitcoinRegtestAsset,
19
19
  c as getBlockchainType,
20
20
  l as isBitcoin,
21
21
  k as isEVM,
22
- A as isEvmNativeToken,
23
- S as isMainnet,
24
- T as isSolana,
25
- m as isSolanaNativeToken,
26
- p as isStarknet
22
+ T as isEvmNativeToken,
23
+ A as isMainnet,
24
+ S as isNativeToken,
25
+ m as isSolana,
26
+ p as isSolanaNativeToken,
27
+ L as isStarknet
27
28
  };
package/dist/index2.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),l=require("./index5.cjs");class h{constructor(s){this.Url=s}async createOrder(s,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(s),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(s,n){const t=this.Url.endpoint(n?`/id/${s}/matched`:`/id/${s}/unmatched`);try{const e=await r.Fetcher.get(t);return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("GetOrder: Unexpected error, result is undefined")}catch(e){return r.Err("GetOrder:",String(e))}}async getMatchedOrders(s,n,t){const e=l.ConstructUrl(this.Url,`/user/${s}/matched`,{...t,status:n});try{const o=await r.Fetcher.get(e);return o.error?r.Err(o.error):o.result?r.Ok(o.result):r.Err("GetMatchedOrders: Unexpected error, result is undefined")}catch(o){return r.Err("GetMatchedOrders:",String(o))}}async getUnMatchedOrders(s,n){const t=l.ConstructUrl(this.Url,`/user/${s}/unmatched`,n);try{const e=await r.Fetcher.get(t);return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("GetUnMatchedOrders: Unexpected error, result is undefined")}catch(e){return r.Err("GetUnMatchedOrders:",String(e))}}async getOrders(s,n,t,e,o,a){const d=s?"/matched":"/unmatched",u={};n&&(u.page=n.page,u.per_page=n.per_page),t&&(u.address=t),e&&(u.tx_hash=e),o&&(u.from_chain=o),a&&(u.to_chain=a);const i=l.ConstructUrl(this.Url.endpoint("orders"),d,u);try{const c=await r.Fetcher.get(i);return c.error?r.Err(c.error):c.result?r.Ok(c.result):r.Err("GetAllOrders: Unexpected error, result is undefined")}catch(c){return r.Err("GetAllOrders:",String(c))}}async subscribeOrders(s,n,t,e,o="all",a){let d=!1;const u=async()=>{if(!d){d=!0;try{const c=n?await this.getMatchedOrders(s,o,a):await this.getUnMatchedOrders(s,a);c.ok?await e(c.val):console.error("Error fetching orders:",c.error)}catch(c){console.error("Error fetching orders:",c)}finally{d=!1}}};await u();const i=setInterval(u,t);return()=>{clearInterval(i)}}async getOrdersCount(s){const n=this.Url.endpoint(`/user/${s}/count`);try{const t=await r.Fetcher.get(n);return t.error?r.Err(t.error):t.status===r.ApiStatus.Ok&&t.result!==void 0?r.Ok(t.result):r.Err("GetOrdersCount: Unexpected error, result is undefined")}catch(t){return r.Err("GetOrdersCount:",String(t))}}}exports.Orderbook=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@gardenfi/utils"),h=require("./index5.cjs");class O{constructor(s){this.Url=s}async createOrder(s,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(s),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(s,n){const t=this.Url.endpoint(n?`/id/${s}/matched`:`/id/${s}/unmatched`);try{const e=await r.Fetcher.get(t);return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("GetOrder: Unexpected error, result is undefined")}catch(e){return r.Err("GetOrder:",String(e))}}async getMatchedOrders(s,n,t){const e=h.ConstructUrl(this.Url,`/user/${s}/matched`,{...t,status:n});try{const c=await r.Fetcher.get(e);return c.error?r.Err(c.error):c.result?r.Ok(c.result):r.Err("GetMatchedOrders: Unexpected error, result is undefined")}catch(c){return r.Err("GetMatchedOrders:",String(c))}}async getUnMatchedOrders(s,n){const t=h.ConstructUrl(this.Url,`/user/${s}/unmatched`,n);try{const e=await r.Fetcher.get(t);return e.error?r.Err(e.error):e.result?r.Ok(e.result):r.Err("GetUnMatchedOrders: Unexpected error, result is undefined")}catch(e){return r.Err("GetUnMatchedOrders:",String(e))}}async getOrders(s,n,t,e,c,i,a){const l=s?"/matched":"/unmatched",o={};n&&(o.page=n.page,o.per_page=n.per_page),t&&(o.address=t),e&&(o.tx_hash=e),c&&(o.from_chain=c),i&&(o.to_chain=i),a&&(o.status=a);const u=h.ConstructUrl(this.Url,l,o);try{const d=await r.Fetcher.get(u);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(s,n,t,e,c="all",i){let a=!1;const l=async()=>{if(!a){a=!0;try{const u=n?await this.getMatchedOrders(s,c,i):await this.getUnMatchedOrders(s,i);u.ok?await e(u.val):console.error("Error fetching orders:",u.error)}catch(u){console.error("Error fetching orders:",u)}finally{a=!1}}};await l();const o=setInterval(l,t);return()=>{clearInterval(o)}}async getOrdersCount(s){const n=this.Url.endpoint(`/user/${s}/count`);try{const t=await r.Fetcher.get(n);return t.error?r.Err(t.error):t.status===r.ApiStatus.Ok&&t.result!==void 0?r.Ok(t.result):r.Err("GetOrdersCount: Unexpected error, result is undefined")}catch(t){return r.Err("GetOrdersCount:",String(t))}}}exports.Orderbook=O;
package/dist/index2.js CHANGED
@@ -1,6 +1,6 @@
1
- import { Err as t, Fetcher as d, Ok as u, ApiStatus as O } from "@gardenfi/utils";
2
- import { ConstructUrl as f } from "./index5.js";
3
- class U {
1
+ import { Err as t, Fetcher as i, Ok as l, ApiStatus as g } from "@gardenfi/utils";
2
+ import { ConstructUrl as O } from "./index5.js";
3
+ class m {
4
4
  constructor(s) {
5
5
  this.Url = s;
6
6
  }
@@ -15,14 +15,14 @@ class U {
15
15
  if (e.error)
16
16
  return t(e.error);
17
17
  try {
18
- const r = await d.post(this.Url, {
18
+ const r = await i.post(this.Url, {
19
19
  body: JSON.stringify(s),
20
20
  headers: {
21
21
  ...e.val,
22
22
  "Content-Type": "application/json"
23
23
  }
24
24
  });
25
- return r.error ? t(r.error) : r.result ? u(r.result) : t("CreateOrder: Unexpected error, result is undefined");
25
+ return r.error ? t(r.error) : r.result ? l(r.result) : t("CreateOrder: Unexpected error, result is undefined");
26
26
  } catch (r) {
27
27
  return t("CreateOrder Err:", String(r));
28
28
  }
@@ -32,85 +32,85 @@ class U {
32
32
  n ? `/id/${s}/matched` : `/id/${s}/unmatched`
33
33
  );
34
34
  try {
35
- const r = await d.get(e);
36
- return r.error ? t(r.error) : r.result ? u(r.result) : t("GetOrder: Unexpected error, result is undefined");
35
+ const r = await i.get(e);
36
+ return r.error ? t(r.error) : r.result ? l(r.result) : t("GetOrder: Unexpected error, result is undefined");
37
37
  } catch (r) {
38
38
  return t("GetOrder:", String(r));
39
39
  }
40
40
  }
41
41
  async getMatchedOrders(s, n, e) {
42
- const r = f(this.Url, `/user/${s}/matched`, {
42
+ const r = O(this.Url, `/user/${s}/matched`, {
43
43
  ...e,
44
44
  status: n
45
45
  });
46
46
  try {
47
- const o = await d.get(
47
+ const c = await i.get(
48
48
  r
49
49
  );
50
- return o.error ? t(o.error) : o.result ? u(o.result) : t("GetMatchedOrders: Unexpected error, result is undefined");
51
- } catch (o) {
52
- return t("GetMatchedOrders:", String(o));
50
+ return c.error ? t(c.error) : c.result ? l(c.result) : t("GetMatchedOrders: Unexpected error, result is undefined");
51
+ } catch (c) {
52
+ return t("GetMatchedOrders:", String(c));
53
53
  }
54
54
  }
55
55
  async getUnMatchedOrders(s, n) {
56
- const e = f(
56
+ const e = O(
57
57
  this.Url,
58
58
  `/user/${s}/unmatched`,
59
59
  n
60
60
  );
61
61
  try {
62
- const r = await d.get(
62
+ const r = await i.get(
63
63
  e
64
64
  );
65
- return r.error ? t(r.error) : r.result ? u(r.result) : t("GetUnMatchedOrders: Unexpected error, result is undefined");
65
+ return r.error ? t(r.error) : r.result ? l(r.result) : t("GetUnMatchedOrders: Unexpected error, result is undefined");
66
66
  } catch (r) {
67
67
  return t("GetUnMatchedOrders:", String(r));
68
68
  }
69
69
  }
70
- async getOrders(s, n, e, r, o, i) {
71
- const l = s ? "/matched" : "/unmatched", a = {};
72
- n && (a.page = n.page, a.per_page = n.per_page), e && (a.address = e), r && (a.tx_hash = r), o && (a.from_chain = o), i && (a.to_chain = i);
73
- const h = f(this.Url.endpoint("orders"), l, a);
70
+ async getOrders(s, n, e, r, c, h, d) {
71
+ const f = s ? "/matched" : "/unmatched", o = {};
72
+ n && (o.page = n.page, o.per_page = n.per_page), e && (o.address = e), r && (o.tx_hash = r), c && (o.from_chain = c), h && (o.to_chain = h), d && (o.status = d);
73
+ const a = O(this.Url, f, o);
74
74
  try {
75
- const c = await d.get(h);
76
- return c.error ? t(c.error) : c.result ? u(c.result) : t("GetAllOrders: Unexpected error, result is undefined");
77
- } catch (c) {
78
- return t("GetAllOrders:", String(c));
75
+ const u = await i.get(a);
76
+ return u.error ? t(u.error) : u.result ? l(u.result) : t("GetAllOrders: Unexpected error, result is undefined");
77
+ } catch (u) {
78
+ return t("GetAllOrders:", String(u));
79
79
  }
80
80
  }
81
- async subscribeOrders(s, n, e, r, o = "all", i) {
82
- let l = !1;
83
- const a = async () => {
84
- if (!l) {
85
- l = !0;
81
+ async subscribeOrders(s, n, e, r, c = "all", h) {
82
+ let d = !1;
83
+ const f = async () => {
84
+ if (!d) {
85
+ d = !0;
86
86
  try {
87
- const c = n ? await this.getMatchedOrders(s, o, i) : await this.getUnMatchedOrders(s, i);
88
- c.ok ? await r(
89
- c.val
90
- ) : console.error("Error fetching orders:", c.error);
91
- } catch (c) {
92
- console.error("Error fetching orders:", c);
87
+ const a = n ? await this.getMatchedOrders(s, c, h) : await this.getUnMatchedOrders(s, h);
88
+ a.ok ? await r(
89
+ a.val
90
+ ) : console.error("Error fetching orders:", a.error);
91
+ } catch (a) {
92
+ console.error("Error fetching orders:", a);
93
93
  } finally {
94
- l = !1;
94
+ d = !1;
95
95
  }
96
96
  }
97
97
  };
98
- await a();
99
- const h = setInterval(a, e);
98
+ await f();
99
+ const o = setInterval(f, e);
100
100
  return () => {
101
- clearInterval(h);
101
+ clearInterval(o);
102
102
  };
103
103
  }
104
104
  async getOrdersCount(s) {
105
105
  const n = this.Url.endpoint(`/user/${s}/count`);
106
106
  try {
107
- const e = await d.get(n);
108
- return e.error ? t(e.error) : e.status === O.Ok && e.result !== void 0 ? u(e.result) : t("GetOrdersCount: Unexpected error, result is undefined");
107
+ const e = await i.get(n);
108
+ return e.error ? t(e.error) : e.status === g.Ok && e.result !== void 0 ? l(e.result) : t("GetOrdersCount: Unexpected error, result is undefined");
109
109
  } catch (e) {
110
110
  return t("GetOrdersCount:", String(e));
111
111
  }
112
112
  }
113
113
  }
114
114
  export {
115
- U as Orderbook
115
+ m as Orderbook
116
116
  };
package/dist/index3.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var a=(e=>(e.Bitcoin="Bitcoin",e.EVM="EVM",e.Solana="Solana",e.Starknet="Starknet",e))(a||{}),o=(e=>(e.mainnet="mainnet",e.testnet="testnet",e.localnet="localnet",e))(o||{});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"},b=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),i=e=>e===t.bitcoin||e===t.bitcoin_testnet||e===t.bitcoin_regtest,r=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,s=e=>e===t.solana||e===t.solana_testnet||e===t.solana_localnet,l=e=>e===t.starknet||e===t.starknet_devnet||e===t.starknet_sepolia,u=e=>{if(i(e))return"Bitcoin";if(r(e))return"EVM";if(s(e))return"Solana";if(l(e))return"Starknet";throw new Error("Invalid or unsupported chain")},_="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",m=(e,n)=>r(e)&&n.toLowerCase()===_.toLowerCase(),p=(e,n)=>s(e)&&n.toLowerCase()==="primary";exports.BlockchainType=a;exports.Chains=t;exports.NativeTokenAddress=_;exports.NetworkType=o;exports.getBlockchainType=u;exports.isBitcoin=i;exports.isEVM=r;exports.isEvmNativeToken=m;exports.isMainnet=b;exports.isSolana=s;exports.isSolanaNativeToken=p;exports.isStarknet=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var i=(e=>(e.Bitcoin="Bitcoin",e.EVM="EVM",e.Solana="Solana",e.Starknet="Starknet",e))(i||{}),l=(e=>(e.mainnet="mainnet",e.testnet="testnet",e.localnet="localnet",e))(l||{});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"},m=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),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,a=e=>e===t.solana||e===t.solana_testnet||e===t.solana_localnet,o=e=>e===t.starknet||e===t.starknet_devnet||e===t.starknet_sepolia,d=e=>{if(r(e))return"Bitcoin";if(s(e))return"EVM";if(a(e))return"Solana";if(o(e))return"Starknet";throw new Error("Invalid or unsupported chain")},_="0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",b=(e,n)=>s(e)&&n.toLowerCase()===_.toLowerCase(),u=(e,n)=>a(e)&&n.toLowerCase()==="primary",p=e=>b(e.chain,e.tokenAddress)||u(e.chain,e.tokenAddress)||r(e.chain)||!o(e.chain);exports.BlockchainType=i;exports.Chains=t;exports.NativeTokenAddress=_;exports.NetworkType=l;exports.getBlockchainType=d;exports.isBitcoin=r;exports.isEVM=s;exports.isEvmNativeToken=b;exports.isMainnet=m;exports.isNativeToken=p;exports.isSolana=a;exports.isSolanaNativeToken=u;exports.isStarknet=o;
package/dist/index3.js CHANGED
@@ -1,4 +1,4 @@
1
- var a = /* @__PURE__ */ ((e) => (e.Bitcoin = "Bitcoin", e.EVM = "EVM", e.Solana = "Solana", e.Starknet = "Starknet", e))(a || {}), o = /* @__PURE__ */ ((e) => (e.mainnet = "mainnet", e.testnet = "testnet", e.localnet = "localnet", e))(o || {});
1
+ var i = /* @__PURE__ */ ((e) => (e.Bitcoin = "Bitcoin", e.EVM = "EVM", e.Solana = "Solana", e.Starknet = "Starknet", e))(i || {}), l = /* @__PURE__ */ ((e) => (e.mainnet = "mainnet", e.testnet = "testnet", e.localnet = "localnet", e))(l || {});
2
2
  const t = {
3
3
  bitcoin: "bitcoin",
4
4
  bitcoin_testnet: "bitcoin_testnet",
@@ -28,24 +28,26 @@ const t = {
28
28
  botanix: "botanix",
29
29
  bnbchain: "bnbchain",
30
30
  bnbchain_testnet: "bnbchain_testnet"
31
- }, b = (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), i = (e) => e === t.bitcoin || e === t.bitcoin_testnet || e === t.bitcoin_regtest, r = (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, s = (e) => e === t.solana || e === t.solana_testnet || e === t.solana_localnet, l = (e) => e === t.starknet || e === t.starknet_devnet || e === t.starknet_sepolia, u = (e) => {
32
- if (i(e)) return "Bitcoin";
33
- if (r(e)) return "EVM";
34
- if (s(e)) return "Solana";
35
- if (l(e)) return "Starknet";
31
+ }, m = (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), 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, o = (e) => e === t.solana || e === t.solana_testnet || e === t.solana_localnet, a = (e) => e === t.starknet || e === t.starknet_devnet || e === t.starknet_sepolia, d = (e) => {
32
+ if (r(e)) return "Bitcoin";
33
+ if (s(e)) return "EVM";
34
+ if (o(e)) return "Solana";
35
+ if (a(e)) return "Starknet";
36
36
  throw new Error("Invalid or unsupported chain");
37
- }, _ = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", m = (e, n) => r(e) && n.toLowerCase() === _.toLowerCase(), p = (e, n) => s(e) && n.toLowerCase() === "primary";
37
+ }, _ = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE", b = (e, n) => s(e) && n.toLowerCase() === _.toLowerCase(), u = (e, n) => o(e) && n.toLowerCase() === "primary", p = (e) => b(e.chain, e.tokenAddress) || u(e.chain, e.tokenAddress) || r(e.chain) || // Starknet doesn't have a native token
38
+ !a(e.chain);
38
39
  export {
39
- a as BlockchainType,
40
+ i as BlockchainType,
40
41
  t as Chains,
41
42
  _ as NativeTokenAddress,
42
- o as NetworkType,
43
- u as getBlockchainType,
44
- i as isBitcoin,
45
- r as isEVM,
46
- m as isEvmNativeToken,
47
- b as isMainnet,
48
- s as isSolana,
49
- p as isSolanaNativeToken,
50
- l as isStarknet
43
+ l as NetworkType,
44
+ d as getBlockchainType,
45
+ r as isBitcoin,
46
+ s as isEVM,
47
+ b as isEvmNativeToken,
48
+ m as isMainnet,
49
+ p as isNativeToken,
50
+ o as isSolana,
51
+ u as isSolanaNativeToken,
52
+ a as isStarknet
51
53
  };
@@ -1,5 +1,5 @@
1
1
  export { Orderbook } from './lib/orderbook/orderbook';
2
2
  export type * from './lib/orderbook/orderbook.types';
3
3
  export type { Chain, EvmChain, Asset } from './lib/asset';
4
- export { Chains, BlockchainType, isMainnet, isBitcoin, isEVM, isStarknet, isSolana, getBlockchainType, NetworkType, NativeTokenAddress, isEvmNativeToken, isSolanaNativeToken, } from './lib/asset';
4
+ export { Chains, BlockchainType, isMainnet, isBitcoin, isEVM, isStarknet, isSolana, getBlockchainType, NetworkType, NativeTokenAddress, isEvmNativeToken, isSolanaNativeToken, isNativeToken, } from './lib/asset';
5
5
  export { WBTCArbitrumLocalnetAsset, WBTCEthereumLocalnetAsset, ArbitrumLocalnet, EthereumLocalnet, bitcoinRegtestAsset, SOLSolanaLocalnetAsset, SupportedAssets, StarknetLocalnet, STRKStarknetLocalnetAsset, } from './lib/constants';
@@ -1,4 +1,4 @@
1
- import { CreateOrder, CreateOrderReqWithStrategyId, IOrderbook, MatchedOrder, PaginatedData, PaginationConfig, Status } from './orderbook.types';
1
+ import { CreateOrder, CreateOrderReqWithStrategyId, IOrderbook, MatchedOrder, OrderStatus, PaginatedData, PaginationConfig, Status } from './orderbook.types';
2
2
  import { AsyncResult, IAuth, Url } from '@gardenfi/utils';
3
3
  import { Chain } from '../asset';
4
4
 
@@ -20,7 +20,7 @@ export declare class Orderbook implements IOrderbook {
20
20
  getOrder<T extends boolean>(id: string, matched: T): AsyncResult<T extends true ? MatchedOrder : CreateOrder, string>;
21
21
  getMatchedOrders(address: string, status: Status, paginationConfig?: PaginationConfig): AsyncResult<PaginatedData<MatchedOrder>, string>;
22
22
  getUnMatchedOrders(address: string, paginationConfig?: PaginationConfig): AsyncResult<PaginatedData<CreateOrder>, string>;
23
- getOrders<T extends boolean>(matched: T, paginationConfig?: PaginationConfig, address?: string, tx_hash?: string, fromChain?: Chain, toChain?: Chain): AsyncResult<PaginatedData<T extends true ? MatchedOrder : CreateOrder>, string>;
23
+ getOrders<T extends boolean>(matched: T, paginationConfig?: PaginationConfig, address?: string, tx_hash?: string, fromChain?: Chain, toChain?: Chain, status?: OrderStatus): AsyncResult<PaginatedData<T extends true ? MatchedOrder : CreateOrder>, string>;
24
24
  subscribeOrders<T extends boolean>(account: string, matched: T, interval: number, cb: (orders: PaginatedData<T extends true ? MatchedOrder : CreateOrder>) => Promise<void>, status?: Status, paginationConfig?: PaginationConfig): Promise<() => void>;
25
25
  getOrdersCount(address: string): AsyncResult<number, string>;
26
26
  }
@@ -220,6 +220,8 @@ export type Swap = {
220
220
  swap_id: string;
221
221
  chain: Chain;
222
222
  asset: string;
223
+ htlc_address: string;
224
+ token_address: string;
223
225
  initiator: string;
224
226
  redeemer: string;
225
227
  timelock: number;
@@ -234,6 +236,10 @@ export type Swap = {
234
236
  redeem_block_number: string | null;
235
237
  refund_block_number: string | null;
236
238
  required_confirmations: number;
239
+ current_confirmations: number;
240
+ initiate_timestamp: string | null;
241
+ redeem_timestamp: string | null;
242
+ refund_timestamp: string | null;
237
243
  };
238
244
  export type MatchedOrder = {
239
245
  created_at: string;
@@ -256,3 +262,4 @@ export type PaginationConfig = {
256
262
  per_page?: number;
257
263
  };
258
264
  export type Status = 'all' | 'pending' | 'fulfilled';
265
+ export type OrderStatus = 'refunded' | 'expired' | 'completed' | 'in-progress' | 'not-initiated';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gardenfi/orderbook",
3
- "version": "2.4.2",
3
+ "version": "2.4.3-beta.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@coral-xyz/anchor": "^0.30.1",
30
- "@gardenfi/utils": "2.4.2",
30
+ "@gardenfi/utils": "2.4.3",
31
31
  "bufferutil": "^4.0.8",
32
32
  "siwe": "^2.1.4",
33
33
  "utf-8-validate": "^6.0.3",