@naviprotocol/lending 2.0.9-beta.5 → 2.0.10-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/market.d.ts CHANGED
@@ -22,32 +22,37 @@ export declare const MARKETS: {
22
22
  key: string;
23
23
  name: string;
24
24
  };
25
- 'sui-usdc': {
25
+ "sui-usdc": {
26
26
  id: number;
27
27
  key: string;
28
28
  name: string;
29
29
  };
30
- 'wbtc-usdc': {
30
+ "wbtc-usdc": {
31
31
  id: number;
32
32
  key: string;
33
33
  name: string;
34
34
  };
35
- 'xbtc-usdc': {
35
+ "xbtc-usdc": {
36
36
  id: number;
37
37
  key: string;
38
38
  name: string;
39
39
  };
40
- 'vsui-usdc': {
40
+ "vsui-usdc": {
41
41
  id: number;
42
42
  key: string;
43
43
  name: string;
44
44
  };
45
- 'vsui-sui': {
45
+ "vsui-sui": {
46
46
  id: number;
47
47
  key: string;
48
48
  name: string;
49
49
  };
50
- 'hasui-sui': {
50
+ "hasui-sui": {
51
+ id: number;
52
+ key: string;
53
+ name: string;
54
+ };
55
+ "high-usdc": {
51
56
  id: number;
52
57
  key: string;
53
58
  name: string;
@@ -118,6 +123,10 @@ export declare const getMarketConfig: (marketIdentity: MarketIdentity) => {
118
123
  id: number;
119
124
  key: string;
120
125
  name: string;
126
+ } | {
127
+ id: number;
128
+ key: string;
129
+ name: string;
121
130
  };
122
131
  export declare const getMarkets: (markets: MarketIdentity[], options?: Partial<EnvOption & CacheOption>) => Promise<Market[]>;
123
132
  export declare const getMarket: (market: MarketIdentity, options?: Partial<EnvOption & CacheOption>) => Promise<Market>;
@@ -1 +1 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../src/market.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,WAAW,EACX,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACV,MAAM,SAAS,CAAA;AAIhB,eAAO,MAAM,uBAAuB,SAAS,CAAA;AAE7C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDnB,CAAA;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAK;IAC3B,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAK;IAC7B,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAK;IACrC,oBAAoB,EAAE,IAAI,EAAE,CAAK;IACjC,oBAAoB,EAAE,IAAI,EAAE,CAAK;IAEjC,OAAO,CAAC,SAAS,CAGhB;IAED,IAAI,QAAQ;;;MAEX;gBAEW,cAAc,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;IAKzD,OAAO,CAAC,SAAS;IA2DV,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAKvC,mBAAmB,CACxB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GACA,IAAI,EAAE;IAwBF,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE;IAwBlD,OAAO,CAAC,WAAW;CAapB;AAED,eAAO,MAAM,eAAe,GAAI,gBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe7D,CAAA;AAED,eAAO,MAAM,UAAU,YAGR,cAAc,EAAE,YACf,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,KACzC,OAAO,CAAC,MAAM,EAAE,CAetB,CAAA;AAED,eAAO,MAAM,SAAS,WAEH,cAAc,YAAY,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,KAAG,OAAO,CAAC,MAAM,CAK7F,CAAA"}
1
+ {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../src/market.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,WAAW,EACX,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACV,MAAM,SAAS,CAAA;AAIhB,eAAO,MAAM,uBAAuB,SAAS,CAAA;AAE7C,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwDnB,CAAA;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,QAAQ,CAA8B;IAC9C,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAK;IAC3B,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,CAAK;IAC7B,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE,CAAK;IACrC,oBAAoB,EAAE,IAAI,EAAE,CAAK;IACjC,oBAAoB,EAAE,IAAI,EAAE,CAAK;IAEjC,OAAO,CAAC,SAAS,CAGhB;IAED,IAAI,QAAQ;;;MAEX;gBAEW,cAAc,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;IAKzD,OAAO,CAAC,SAAS;IA2DV,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAKvC,mBAAmB,CACxB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,IAAI,CAAC,EAAE,OAAO,CAAA;QACd,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,GACA,IAAI,EAAE;IAwBF,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE;IAwBlD,OAAO,CAAC,WAAW;CAapB;AAED,eAAO,MAAM,eAAe,GAAI,gBAAgB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAe7D,CAAA;AAED,eAAO,MAAM,UAAU,YAGR,cAAc,EAAE,YACf,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,KACzC,OAAO,CAAC,MAAM,EAAE,CAetB,CAAA;AAED,eAAO,MAAM,SAAS,WAEH,cAAc,YAAY,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,KAAG,OAAO,CAAC,MAAM,CAK7F,CAAA"}
package/dist/market.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { withCache as M, getPoolsMap as m, getEmodesMap as p, withSingleton as k } from "./utils.js";
2
- import { getPools as w } from "./pool.js";
2
+ import { getPools as S } from "./pool.js";
3
3
  import f from "bignumber.js";
4
- const T = "main", S = {
4
+ const T = "main", w = {
5
5
  main: {
6
6
  id: 0,
7
7
  key: "main",
@@ -10,7 +10,7 @@ const T = "main", S = {
10
10
  ember: {
11
11
  id: 1,
12
12
  key: "ember",
13
- name: "Ember Market"
13
+ name: "eACRED / USDC Market"
14
14
  },
15
15
  rwa: {
16
16
  id: 2,
@@ -20,7 +20,7 @@ const T = "main", S = {
20
20
  "sui-eco": {
21
21
  id: 3,
22
22
  key: "sui-eco",
23
- name: "SUI Eco Market"
23
+ name: "Sui Eco Market"
24
24
  },
25
25
  "sui-usdc": {
26
26
  id: 4,
@@ -51,6 +51,11 @@ const T = "main", S = {
51
51
  id: 9,
52
52
  key: "hasui-sui",
53
53
  name: "haSUI / SUI Market"
54
+ },
55
+ "high-usdc": {
56
+ id: 10,
57
+ key: "high-usdc",
58
+ name: "HIGH / USDC Market"
54
59
  }
55
60
  };
56
61
  class y {
@@ -58,7 +63,7 @@ class y {
58
63
  this.poolMap = {}, this.emodeMap = {}, this.pools = [], this.emodes = [], this.emodePools = [], this.emodeBorrowablePools = [], this.emodeSupplyablePools = [], this._overview = {
59
64
  marketTotalSupplyValue: "0",
60
65
  marketTotalBorrowValue: "0"
61
- }, this.config = b(s), this.initPools(o);
66
+ }, this.config = g(s), this.initPools(o);
62
67
  }
63
68
  get overview() {
64
69
  return this._overview;
@@ -116,36 +121,36 @@ class y {
116
121
  return typeof s == "number" && s === this.config.id && (o = !0), typeof s == "string" && s === this.config.key && (o = !0), typeof s == "object" && s.id === this.config.id && (o = !0), o;
117
122
  }
118
123
  }
119
- const b = (r) => {
120
- const o = Object.values(S).find((i) => typeof r == "number" ? i.id === r : typeof r == "string" ? i.key === r : i.id === r.id);
124
+ const g = (r) => {
125
+ const o = Object.values(w).find((i) => typeof r == "number" ? i.id === r : typeof r == "string" ? i.key === r : i.id === r.id);
121
126
  if (!o)
122
127
  throw new Error("Market not found");
123
128
  return o;
124
129
  }, I = M(
125
130
  k(
126
131
  async (r, s) => {
127
- const o = await w({
132
+ const o = await S({
128
133
  cacheTime: 6e4,
129
134
  ...s,
130
135
  markets: r
131
136
  });
132
137
  return r.map((i) => {
133
- const t = b(i), n = o.filter((a) => a.market === t.key);
138
+ const t = g(i), n = o.filter((a) => a.market === t.key);
134
139
  return new y(i, n);
135
140
  });
136
141
  }
137
142
  )
138
- ), U = M(
143
+ ), C = M(
139
144
  k(
140
145
  async (r, s) => (await I([r], s))[0]
141
146
  )
142
147
  );
143
148
  export {
144
149
  T as DEFAULT_MARKET_IDENTITY,
145
- S as MARKETS,
150
+ w as MARKETS,
146
151
  y as Market,
147
- U as getMarket,
148
- b as getMarketConfig,
152
+ C as getMarket,
153
+ g as getMarketConfig,
149
154
  I as getMarkets
150
155
  };
151
156
  //# sourceMappingURL=market.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"market.js","sources":["../src/market.ts"],"sourcesContent":["import { withCache, withSingleton, getPoolsMap, getEmodesMap } from './utils'\nimport type {\n MarketIdentity,\n EnvOption,\n CacheOption,\n EMode,\n MarketConfig,\n Pool,\n EModePool\n} from './types'\nimport { getPools } from './pool'\nimport BigNumber from 'bignumber.js'\n\nexport const DEFAULT_MARKET_IDENTITY = 'main'\n\nexport const MARKETS = {\n main: {\n id: 0,\n key: 'main',\n name: 'Main Market'\n },\n ember: {\n id: 1,\n key: 'ember',\n name: 'Ember Market'\n },\n rwa: {\n id: 2,\n key: 'rwa',\n name: 'Matrixdock Market'\n },\n 'sui-eco': {\n id: 3,\n key: 'sui-eco',\n name: 'SUI Eco Market'\n },\n 'sui-usdc': {\n id: 4,\n key: 'sui-usdc',\n name: 'SUI / USDC Market'\n },\n 'wbtc-usdc': {\n id: 5,\n key: 'wbtc-usdc',\n name: 'WBTC / USDC Market'\n },\n 'xbtc-usdc': {\n id: 6,\n key: 'xbtc-usdc',\n name: 'xBTC / USDC Market'\n },\n 'vsui-usdc': {\n id: 7,\n key: 'vsui-usdc',\n name: 'vSUI / USDC Market'\n },\n 'vsui-sui': {\n id: 8,\n key: 'vsui-sui',\n name: 'vSUI / SUI Market'\n },\n 'hasui-sui': {\n id: 9,\n key: 'hasui-sui',\n name: 'haSUI / SUI Market'\n }\n}\n\nexport class Market {\n private poolMap = {} as Record<string, Pool>\n private emodeMap = {} as Record<string, EMode>\n readonly config: MarketConfig\n readonly pools: Pool[] = []\n readonly emodes: EMode[] = []\n readonly emodePools: EModePool[] = []\n emodeBorrowablePools: Pool[] = []\n emodeSupplyablePools: Pool[] = []\n\n private _overview = {\n marketTotalSupplyValue: '0',\n marketTotalBorrowValue: '0'\n }\n\n get overview() {\n return this._overview\n }\n\n constructor(marketIdentity: MarketIdentity, pools: Pool[]) {\n this.config = getMarketConfig(marketIdentity)\n this.initPools(pools)\n }\n\n private initPools(pools: Pool[]) {\n const poolsMap = getPoolsMap(this.pools)\n const emodesMap = getEmodesMap(this.emodes)\n const emodeBorrowablePoolIds = new Set<string>()\n const emodeSupplyablePoolIds = new Set<string>()\n let marketTotalSupplyValue = BigNumber(0)\n let marketTotalBorrowValue = BigNumber(0)\n\n pools.forEach((pool) => {\n const isMatch = this.checkMarket(pool.market)\n if (!isMatch) {\n console.warn(`Pool is not in market ${this.config.name}`, pool)\n return\n }\n if (!poolsMap[pool.uniqueId]) {\n this.pools.push(pool)\n }\n pool?.emodes?.forEach((emode) => {\n if (!emodesMap[emode.uniqueId]) {\n this.emodes.push(emode)\n }\n emode.assets.forEach((asset) => {\n if (asset.isDebt) {\n const debtAsset = emode.assets.find(\n (a) => a.isCollateral && a.ltv > 0 && a.assetId !== pool.id\n )\n if (debtAsset) {\n emodeBorrowablePoolIds.add(pool.uniqueId)\n }\n }\n if (asset.isCollateral) {\n const supplyAsset = emode.assets.find((a) => a.isDebt && a.assetId !== pool.id)\n if (supplyAsset) {\n emodeSupplyablePoolIds.add(pool.uniqueId)\n }\n }\n })\n })\n marketTotalBorrowValue = marketTotalBorrowValue.plus(pool.poolBorrowValue)\n marketTotalSupplyValue = marketTotalSupplyValue.plus(pool.poolSupplyValue)\n })\n this.poolMap = getPoolsMap(this.pools, 'id')\n this.emodeMap = getEmodesMap(this.emodes, 'emodeId')\n this.emodes.forEach((emode) => {\n const emodePools = this.getEModePools(emode.emodeId)\n this.emodePools.push(...emodePools)\n })\n this._overview = {\n marketTotalSupplyValue: marketTotalSupplyValue.toString(),\n marketTotalBorrowValue: marketTotalBorrowValue.toString()\n }\n this.emodeBorrowablePools = this.pools.filter((pool) => {\n return emodeBorrowablePoolIds.has(pool.uniqueId)\n })\n this.emodeSupplyablePools = this.pools.filter((pool) => {\n return emodeSupplyablePoolIds.has(pool.uniqueId)\n })\n }\n\n public getEMode(emodeId: number): EMode | null {\n const emode = this.emodeMap[emodeId]\n return emode || null\n }\n\n public getEModeRelatePools(\n pool: Pool,\n options?: {\n collateral?: boolean\n debt?: boolean\n emodeId?: number\n }\n ): Pool[] {\n const { collateral, debt, emodeId } = options || {}\n const relatePools = [] as Pool[]\n pool.emodes.forEach((emode) => {\n if (typeof emodeId === 'number' && emodeId !== emode.emodeId) {\n return\n }\n emode.assets.forEach((asset) => {\n if (\n typeof collateral === 'boolean' &&\n collateral &&\n asset.isCollateral &&\n asset.assetId === pool.id\n ) {\n relatePools.push(this.poolMap[asset.assetId])\n }\n if (typeof debt === 'boolean' && debt && asset.isDebt && asset.assetId === pool.id) {\n relatePools.push(this.poolMap[asset.assetId])\n }\n })\n })\n return relatePools\n }\n\n public getEModePools(emodeId: number): EModePool[] {\n const emode = this.getEMode(emodeId)\n if (!emode) {\n return []\n }\n const pools = emode.assets\n .map((asset) => asset.assetId)\n .map((id) => {\n return this.poolMap[id]\n })\n .filter((pool) => !!pool)\n return pools.map((pool) => {\n const asset = emode.assets.find((asset) => asset.assetId === pool.id)!\n return {\n ...pool,\n emode: {\n ...asset,\n emodeId: emode.emodeId\n },\n isEMode: true\n }\n })\n }\n\n private checkMarket(marketIdentity: MarketIdentity) {\n let isMatch = false\n if (typeof marketIdentity === 'number' && marketIdentity === this.config.id) {\n isMatch = true\n }\n if (typeof marketIdentity === 'string' && marketIdentity === this.config.key) {\n isMatch = true\n }\n if (typeof marketIdentity === 'object' && marketIdentity.id === this.config.id) {\n isMatch = true\n }\n return isMatch\n }\n}\n\nexport const getMarketConfig = (marketIdentity: MarketIdentity) => {\n const configs = Object.values(MARKETS)\n const config = configs.find((marketConfig) => {\n if (typeof marketIdentity === 'number') {\n return marketConfig.id === marketIdentity\n }\n if (typeof marketIdentity === 'string') {\n return marketConfig.key === marketIdentity\n }\n return marketConfig.id === marketIdentity.id\n })\n if (!config) {\n throw new Error(`Market not found`)\n }\n return config\n}\n\nexport const getMarkets = withCache(\n withSingleton(\n async (\n markets: MarketIdentity[],\n options?: Partial<EnvOption & CacheOption>\n ): Promise<Market[]> => {\n const pools = await getPools({\n cacheTime: 1000 * 60,\n ...options,\n markets\n })\n return markets.map((market) => {\n const marketConfig = getMarketConfig(market)\n const marketPools = pools.filter((pool) => {\n return pool.market === marketConfig.key\n })\n return new Market(market, marketPools)\n })\n }\n )\n)\n\nexport const getMarket = withCache(\n withSingleton(\n async (market: MarketIdentity, options?: Partial<EnvOption & CacheOption>): Promise<Market> => {\n const markets = await getMarkets([market], options)\n return markets[0]\n }\n )\n)\n"],"names":["DEFAULT_MARKET_IDENTITY","MARKETS","Market","marketIdentity","pools","getMarketConfig","poolsMap","getPoolsMap","emodesMap","getEmodesMap","emodeBorrowablePoolIds","emodeSupplyablePoolIds","marketTotalSupplyValue","BigNumber","marketTotalBorrowValue","pool","emode","asset","a","emodePools","emodeId","options","collateral","debt","relatePools","id","isMatch","config","marketConfig","getMarkets","withCache","withSingleton","markets","getPools","market","marketPools","getMarket"],"mappings":"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"}
1
+ {"version":3,"file":"market.js","sources":["../src/market.ts"],"sourcesContent":["import { withCache, withSingleton, getPoolsMap, getEmodesMap } from './utils'\nimport type {\n MarketIdentity,\n EnvOption,\n CacheOption,\n EMode,\n MarketConfig,\n Pool,\n EModePool\n} from './types'\nimport { getPools } from './pool'\nimport BigNumber from 'bignumber.js'\n\nexport const DEFAULT_MARKET_IDENTITY = 'main'\n\nexport const MARKETS = {\n main: {\n id: 0,\n key: 'main',\n name: 'Main Market'\n },\n ember: {\n id: 1,\n key: 'ember',\n name: 'eACRED / USDC Market'\n },\n rwa: {\n id: 2,\n key: 'rwa',\n name: 'Matrixdock Market'\n },\n 'sui-eco': {\n id: 3,\n key: 'sui-eco',\n name: 'Sui Eco Market'\n },\n \"sui-usdc\": {\n id: 4,\n key: \"sui-usdc\",\n name: \"SUI / USDC Market\"\n },\n \"wbtc-usdc\": {\n id: 5,\n key: \"wbtc-usdc\",\n name: \"WBTC / USDC Market\"\n },\n \"xbtc-usdc\": {\n id: 6,\n key: \"xbtc-usdc\",\n name: \"xBTC / USDC Market\"\n },\n \"vsui-usdc\": {\n id: 7,\n key: \"vsui-usdc\",\n name: \"vSUI / USDC Market\"\n },\n \"vsui-sui\": {\n id: 8,\n key: \"vsui-sui\",\n name: \"vSUI / SUI Market\"\n },\n \"hasui-sui\": {\n id: 9,\n key: \"hasui-sui\",\n name: \"haSUI / SUI Market\"\n },\n \"high-usdc\": {\n id: 10,\n key: \"high-usdc\",\n name: \"HIGH / USDC Market\"\n }\n}\n\nexport class Market {\n private poolMap = {} as Record<string, Pool>\n private emodeMap = {} as Record<string, EMode>\n readonly config: MarketConfig\n readonly pools: Pool[] = []\n readonly emodes: EMode[] = []\n readonly emodePools: EModePool[] = []\n emodeBorrowablePools: Pool[] = []\n emodeSupplyablePools: Pool[] = []\n\n private _overview = {\n marketTotalSupplyValue: '0',\n marketTotalBorrowValue: '0'\n }\n\n get overview() {\n return this._overview\n }\n\n constructor(marketIdentity: MarketIdentity, pools: Pool[]) {\n this.config = getMarketConfig(marketIdentity)\n this.initPools(pools)\n }\n\n private initPools(pools: Pool[]) {\n const poolsMap = getPoolsMap(this.pools)\n const emodesMap = getEmodesMap(this.emodes)\n const emodeBorrowablePoolIds = new Set<string>()\n const emodeSupplyablePoolIds = new Set<string>()\n let marketTotalSupplyValue = BigNumber(0)\n let marketTotalBorrowValue = BigNumber(0)\n\n pools.forEach((pool) => {\n const isMatch = this.checkMarket(pool.market)\n if (!isMatch) {\n console.warn(`Pool is not in market ${this.config.name}`, pool)\n return\n }\n if (!poolsMap[pool.uniqueId]) {\n this.pools.push(pool)\n }\n pool?.emodes?.forEach((emode) => {\n if (!emodesMap[emode.uniqueId]) {\n this.emodes.push(emode)\n }\n emode.assets.forEach((asset) => {\n if (asset.isDebt) {\n const debtAsset = emode.assets.find(\n (a) => a.isCollateral && a.ltv > 0 && a.assetId !== pool.id\n )\n if (debtAsset) {\n emodeBorrowablePoolIds.add(pool.uniqueId)\n }\n }\n if (asset.isCollateral) {\n const supplyAsset = emode.assets.find((a) => a.isDebt && a.assetId !== pool.id)\n if (supplyAsset) {\n emodeSupplyablePoolIds.add(pool.uniqueId)\n }\n }\n })\n })\n marketTotalBorrowValue = marketTotalBorrowValue.plus(pool.poolBorrowValue)\n marketTotalSupplyValue = marketTotalSupplyValue.plus(pool.poolSupplyValue)\n })\n this.poolMap = getPoolsMap(this.pools, 'id')\n this.emodeMap = getEmodesMap(this.emodes, 'emodeId')\n this.emodes.forEach((emode) => {\n const emodePools = this.getEModePools(emode.emodeId)\n this.emodePools.push(...emodePools)\n })\n this._overview = {\n marketTotalSupplyValue: marketTotalSupplyValue.toString(),\n marketTotalBorrowValue: marketTotalBorrowValue.toString()\n }\n this.emodeBorrowablePools = this.pools.filter((pool) => {\n return emodeBorrowablePoolIds.has(pool.uniqueId)\n })\n this.emodeSupplyablePools = this.pools.filter((pool) => {\n return emodeSupplyablePoolIds.has(pool.uniqueId)\n })\n }\n\n public getEMode(emodeId: number): EMode | null {\n const emode = this.emodeMap[emodeId]\n return emode || null\n }\n\n public getEModeRelatePools(\n pool: Pool,\n options?: {\n collateral?: boolean\n debt?: boolean\n emodeId?: number\n }\n ): Pool[] {\n const { collateral, debt, emodeId } = options || {}\n const relatePools = [] as Pool[]\n pool.emodes.forEach((emode) => {\n if (typeof emodeId === 'number' && emodeId !== emode.emodeId) {\n return\n }\n emode.assets.forEach((asset) => {\n if (\n typeof collateral === 'boolean' &&\n collateral &&\n asset.isCollateral &&\n asset.assetId === pool.id\n ) {\n relatePools.push(this.poolMap[asset.assetId])\n }\n if (typeof debt === 'boolean' && debt && asset.isDebt && asset.assetId === pool.id) {\n relatePools.push(this.poolMap[asset.assetId])\n }\n })\n })\n return relatePools\n }\n\n public getEModePools(emodeId: number): EModePool[] {\n const emode = this.getEMode(emodeId)\n if (!emode) {\n return []\n }\n const pools = emode.assets\n .map((asset) => asset.assetId)\n .map((id) => {\n return this.poolMap[id]\n })\n .filter((pool) => !!pool)\n return pools.map((pool) => {\n const asset = emode.assets.find((asset) => asset.assetId === pool.id)!\n return {\n ...pool,\n emode: {\n ...asset,\n emodeId: emode.emodeId\n },\n isEMode: true\n }\n })\n }\n\n private checkMarket(marketIdentity: MarketIdentity) {\n let isMatch = false\n if (typeof marketIdentity === 'number' && marketIdentity === this.config.id) {\n isMatch = true\n }\n if (typeof marketIdentity === 'string' && marketIdentity === this.config.key) {\n isMatch = true\n }\n if (typeof marketIdentity === 'object' && marketIdentity.id === this.config.id) {\n isMatch = true\n }\n return isMatch\n }\n}\n\nexport const getMarketConfig = (marketIdentity: MarketIdentity) => {\n const configs = Object.values(MARKETS)\n const config = configs.find((marketConfig) => {\n if (typeof marketIdentity === 'number') {\n return marketConfig.id === marketIdentity\n }\n if (typeof marketIdentity === 'string') {\n return marketConfig.key === marketIdentity\n }\n return marketConfig.id === marketIdentity.id\n })\n if (!config) {\n throw new Error(`Market not found`)\n }\n return config\n}\n\nexport const getMarkets = withCache(\n withSingleton(\n async (\n markets: MarketIdentity[],\n options?: Partial<EnvOption & CacheOption>\n ): Promise<Market[]> => {\n const pools = await getPools({\n cacheTime: 1000 * 60,\n ...options,\n markets\n })\n return markets.map((market) => {\n const marketConfig = getMarketConfig(market)\n const marketPools = pools.filter((pool) => {\n return pool.market === marketConfig.key\n })\n return new Market(market, marketPools)\n })\n }\n )\n)\n\nexport const getMarket = withCache(\n withSingleton(\n async (market: MarketIdentity, options?: Partial<EnvOption & CacheOption>): Promise<Market> => {\n const markets = await getMarkets([market], options)\n return markets[0]\n }\n )\n)\n"],"names":["DEFAULT_MARKET_IDENTITY","MARKETS","Market","marketIdentity","pools","getMarketConfig","poolsMap","getPoolsMap","emodesMap","getEmodesMap","emodeBorrowablePoolIds","emodeSupplyablePoolIds","marketTotalSupplyValue","BigNumber","marketTotalBorrowValue","pool","emode","asset","a","emodePools","emodeId","options","collateral","debt","relatePools","id","isMatch","config","marketConfig","getMarkets","withCache","withSingleton","markets","getPools","market","marketPools","getMarket"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- const e = "2.0.9-beta.5", o = {
1
+ const e = "2.0.10-beta.0", o = {
2
2
  version: e
3
3
  };
4
4
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@naviprotocol/lending",
3
- "version": "2.0.9-beta.5",
3
+ "version": "2.0.10-beta.0",
4
4
  "description": "NAVI Lending SDK",
5
5
  "license": "MIT",
6
6
  "type": "module",