@defisaver/tokens 1.5.1 → 1.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.env ADDED
@@ -0,0 +1,3 @@
1
+ MAINNET_RPC=https://mainnet.infura.io/v3/a3503e4501d040cd9ea2c913c68983a1
2
+ OPTIMISM_RPC=https://opt-mainnet.g.alchemy.com/v2/Pwh-hdbsP7Bf0CP_UMw4_Pw-NfHhSpIA
3
+ ARBITRUM_RPC=https://arb-mainnet.g.alchemy.com/v2/Pwh-hdbsP7Bf0CP_UMw4_Pw-NfHhSpIA
package/README.md CHANGED
@@ -51,7 +51,7 @@
51
51
 
52
52
  #### Defined in
53
53
 
54
- [types.ts:70](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L70)
54
+ [types.ts:70](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L70)
55
55
 
56
56
  ___
57
57
 
@@ -65,7 +65,7 @@ ___
65
65
 
66
66
  #### Defined in
67
67
 
68
- [types.ts:6](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L6)
68
+ [types.ts:6](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L6)
69
69
 
70
70
  ___
71
71
 
@@ -96,7 +96,7 @@ Chain-specific asset info type
96
96
 
97
97
  #### Defined in
98
98
 
99
- [types.ts:36](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L36)
99
+ [types.ts:36](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L36)
100
100
 
101
101
  ___
102
102
 
@@ -126,7 +126,7 @@ Chain-agnostic asset info type
126
126
 
127
127
  #### Defined in
128
128
 
129
- [types.ts:17](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L17)
129
+ [types.ts:17](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L17)
130
130
 
131
131
  ___
132
132
 
@@ -136,7 +136,7 @@ ___
136
136
 
137
137
  #### Defined in
138
138
 
139
- [types.ts:77](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L77)
139
+ [types.ts:77](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L77)
140
140
 
141
141
  ___
142
142
 
@@ -164,7 +164,7 @@ Maker ilk info type
164
164
 
165
165
  #### Defined in
166
166
 
167
- [types.ts:56](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/types.ts#L56)
167
+ [types.ts:56](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/types.ts#L56)
168
168
 
169
169
  ## Variables
170
170
 
@@ -174,7 +174,7 @@ Maker ilk info type
174
174
 
175
175
  #### Defined in
176
176
 
177
- [index.ts:27](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L27)
177
+ [index.ts:27](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L27)
178
178
 
179
179
  ___
180
180
 
@@ -184,7 +184,7 @@ ___
184
184
 
185
185
  #### Defined in
186
186
 
187
- [aaveV2Markets.ts:3](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/aaveV2Markets.ts#L3)
187
+ [aaveV2Markets.ts:3](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/aaveV2Markets.ts#L3)
188
188
 
189
189
  ___
190
190
 
@@ -194,7 +194,7 @@ ___
194
194
 
195
195
  #### Defined in
196
196
 
197
- [assets.ts:242](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/assets.ts#L242)
197
+ [assets.ts:243](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/assets.ts#L243)
198
198
 
199
199
  ___
200
200
 
@@ -204,7 +204,7 @@ ___
204
204
 
205
205
  #### Defined in
206
206
 
207
- [ilks.ts:5](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/ilks.ts#L5)
207
+ [ilks.ts:5](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/ilks.ts#L5)
208
208
 
209
209
  ___
210
210
 
@@ -214,7 +214,7 @@ ___
214
214
 
215
215
  #### Defined in
216
216
 
217
- [reflexerCollTypes.ts:3](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/reflexerCollTypes.ts#L3)
217
+ [reflexerCollTypes.ts:3](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/reflexerCollTypes.ts#L3)
218
218
 
219
219
  ___
220
220
 
@@ -232,7 +232,7 @@ ___
232
232
 
233
233
  #### Defined in
234
234
 
235
- [index.ts:25](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L25)
235
+ [index.ts:25](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L25)
236
236
 
237
237
  ## Functions
238
238
 
@@ -253,7 +253,7 @@ ___
253
253
 
254
254
  #### Defined in
255
255
 
256
- [index.ts:149](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L149)
256
+ [index.ts:149](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L149)
257
257
 
258
258
  ___
259
259
 
@@ -274,7 +274,7 @@ ___
274
274
 
275
275
  #### Defined in
276
276
 
277
- [index.ts:170](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L170)
277
+ [index.ts:170](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L170)
278
278
 
279
279
  ___
280
280
 
@@ -294,7 +294,7 @@ ___
294
294
 
295
295
  #### Defined in
296
296
 
297
- [index.ts:142](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L142)
297
+ [index.ts:142](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L142)
298
298
 
299
299
  ___
300
300
 
@@ -318,7 +318,7 @@ Warning: will not throw if asset not found. Instead, will return a placeholder o
318
318
 
319
319
  #### Defined in
320
320
 
321
- [index.ts:60](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L60)
321
+ [index.ts:60](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L60)
322
322
 
323
323
  ___
324
324
 
@@ -339,7 +339,7 @@ ___
339
339
 
340
340
  #### Defined in
341
341
 
342
- [index.ts:95](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L95)
342
+ [index.ts:95](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L95)
343
343
 
344
344
  ___
345
345
 
@@ -362,7 +362,7 @@ Warning: will not throw if ilk not found. Instead, will return a placeholder obj
362
362
 
363
363
  #### Defined in
364
364
 
365
- [index.ts:73](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L73)
365
+ [index.ts:73](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L73)
366
366
 
367
367
  ___
368
368
 
@@ -382,7 +382,7 @@ ___
382
382
 
383
383
  #### Defined in
384
384
 
385
- [index.ts:100](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L100)
385
+ [index.ts:100](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L100)
386
386
 
387
387
  ___
388
388
 
@@ -403,7 +403,7 @@ ___
403
403
 
404
404
  #### Defined in
405
405
 
406
- [index.ts:21](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L21)
406
+ [index.ts:21](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L21)
407
407
 
408
408
  ___
409
409
 
@@ -426,7 +426,7 @@ Token symbol
426
426
 
427
427
  #### Defined in
428
428
 
429
- [index.ts:122](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L122)
429
+ [index.ts:122](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L122)
430
430
 
431
431
  ___
432
432
 
@@ -448,7 +448,7 @@ Token symbol
448
448
 
449
449
  #### Defined in
450
450
 
451
- [index.ts:134](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L134)
451
+ [index.ts:134](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L134)
452
452
 
453
453
  ___
454
454
 
@@ -470,4 +470,4 @@ Token symbol
470
470
 
471
471
  #### Defined in
472
472
 
473
- [index.ts:140](https://github.com/DecenterApps/defisaver-tokens/blob/e5bdf78/src/index.ts#L140)
473
+ [index.ts:140](https://github.com/defisaver/defisaver-tokens/blob/5f35b4d/src/index.ts#L140)
package/esm/assets.js CHANGED
@@ -217,6 +217,7 @@ const cbETHCrvAddress = "0x5b6c539b224014a09b3388e51caaa8e354c959c8";
217
217
  const sfrxETH = "0xac3E018457B222d93114458476f3E3416Abbe38F";
218
218
  const crvUSD = "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E";
219
219
  const sDAIAddress = "0x83F20F44975D03b1b09e64809B757c47f942BEeA";
220
+ const tBTCAddress = "0x18084fbA666a33d37592fA2633fD49a74DD93a88";
220
221
  export const assetProto = {
221
222
  symbol: '?',
222
223
  feedAvailability: {},
@@ -984,4 +985,12 @@ export const assets = [
984
985
  Object.assign(Object.assign({}, assetProto), { symbol: 'GHO', feedAvailability: { 1: true }, name: 'GHO', addresses: {
985
986
  1: '0x40d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f',
986
987
  }, decimals: 18, isStable: true }),
988
+ Object.assign(Object.assign({}, assetProto), { symbol: 'tBTC', name: 'tBTC', addresses: {
989
+ 1: tBTCAddress,
990
+ }, decimals: 18 }),
991
+ Object.assign(Object.assign({}, assetProto), { symbol: 'STG', name: 'STG', addresses: {
992
+ 1: '0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6',
993
+ 10: '0x296f55f8fb28e498b858d0bcda06d955b2cb3f97',
994
+ 42161: '0x6694340fc020c5e6b96567843da2df01b2ce1eb6'
995
+ }, decimals: 18, exchange: true }),
987
996
  ];
package/esm/index.d.ts CHANGED
@@ -24,7 +24,7 @@ export declare const MAXUINT: string;
24
24
  * @param chainId {number}
25
25
  * @return {AssetData}
26
26
  */
27
- export declare const getAssetInfo: (symbol?: string, chainId?: number) => AssetData;
27
+ export declare const getAssetInfo: (symbol?: string, chainId?: number | undefined) => AssetData;
28
28
  /**
29
29
  * Returns Maker or Reflexer ilk info, and asset info as `assetData` attribute.
30
30
  * Warning: will not throw if ilk not found. Instead, will return a placeholder object.
@@ -33,7 +33,7 @@ export declare const getAssetInfo: (symbol?: string, chainId?: number) => AssetD
33
33
  * @returns {ExtendedIlkData}
34
34
  */
35
35
  export declare const getIlkInfo: (ilk?: string) => ExtendedIlkData;
36
- export declare const getAssetInfoByAddress: (address?: string, chainId?: number) => AssetData;
36
+ export declare const getAssetInfoByAddress: (address?: string, chainId?: number | undefined) => AssetData;
37
37
  export declare const ilkToAsset: (ilk?: string) => string;
38
38
  /** @private **/
39
39
  export declare const compoundAsset: (underlyingAsset: string) => string;
package/esm/types.d.ts CHANGED
@@ -1,17 +1,17 @@
1
- type Config = {
1
+ declare type Config = {
2
2
  network: number;
3
3
  iconFunc: ((props: object) => () => string) | undefined;
4
4
  };
5
- type AddressMapping = {
5
+ declare type AddressMapping = {
6
6
  [key: number]: string;
7
7
  };
8
- type BoolMapping = {
8
+ declare type BoolMapping = {
9
9
  [key: number]: boolean;
10
10
  };
11
11
  /**
12
12
  * Chain-agnostic asset info type
13
13
  */
14
- type AssetDataBase = {
14
+ declare type AssetDataBase = {
15
15
  symbol: string;
16
16
  name: string;
17
17
  addresses: AddressMapping;
@@ -29,7 +29,7 @@ type AssetDataBase = {
29
29
  /**
30
30
  * Chain-specific asset info type
31
31
  */
32
- type AssetData = {
32
+ declare type AssetData = {
33
33
  symbol: string;
34
34
  name: string;
35
35
  address: string;
@@ -48,7 +48,7 @@ type AssetData = {
48
48
  /**
49
49
  * Maker ilk info type
50
50
  */
51
- type IlkData = {
51
+ declare type IlkData = {
52
52
  ilkLabel: (string);
53
53
  pip: (string);
54
54
  join: (string);
@@ -61,13 +61,13 @@ type IlkData = {
61
61
  isCrop: (boolean);
62
62
  assetAddress?: (string);
63
63
  };
64
- type AaveMarketData = {
64
+ declare type AaveMarketData = {
65
65
  name: (string);
66
66
  lendingPool: (string);
67
67
  lendingPoolAddressProvider: (string);
68
68
  dataProvider: (string);
69
69
  };
70
- type ExtendedIlkData = IlkData | {
70
+ declare type ExtendedIlkData = IlkData | {
71
71
  assetData: AssetData;
72
72
  };
73
73
  export { AddressMapping, AssetDataBase, AssetData, IlkData, ExtendedIlkData, AaveMarketData, Config, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/tokens",
3
- "version": "1.5.1",
3
+ "version": "1.5.2",
4
4
  "description": "Centralized asset data & utility functions",
5
5
  "main": "umd/index.js",
6
6
  "module": "esm/index.js",
package/src/assets.ts CHANGED
@@ -219,6 +219,7 @@ const cbETHCrvAddress = "0x5b6c539b224014a09b3388e51caaa8e354c959c8";
219
219
  const sfrxETH = "0xac3E018457B222d93114458476f3E3416Abbe38F";
220
220
  const crvUSD = "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E";
221
221
  const sDAIAddress = "0x83F20F44975D03b1b09e64809B757c47f942BEeA";
222
+ const tBTCAddress = "0x18084fbA666a33d37592fA2633fD49a74DD93a88";
222
223
 
223
224
  export const assetProto: AssetDataBase = {
224
225
  symbol: '?',
@@ -2760,4 +2761,25 @@ export const assets: AssetDataBase[] = [
2760
2761
  decimals: 18,
2761
2762
  isStable: true,
2762
2763
  },
2764
+ {
2765
+ ...assetProto,
2766
+ symbol: 'tBTC',
2767
+ name: 'tBTC',
2768
+ addresses: {
2769
+ 1: tBTCAddress,
2770
+ },
2771
+ decimals: 18,
2772
+ },
2773
+ {
2774
+ ...assetProto,
2775
+ symbol: 'STG',
2776
+ name: 'STG',
2777
+ addresses: {
2778
+ 1: '0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6',
2779
+ 10: '0x296f55f8fb28e498b858d0bcda06d955b2cb3f97',
2780
+ 42161: '0x6694340fc020c5e6b96567843da2df01b2ce1eb6'
2781
+ },
2782
+ decimals: 18,
2783
+ exchange: true,
2784
+ },
2763
2785
  ];
package/umd/index.js CHANGED
@@ -7,11 +7,239 @@
7
7
  exports["defisaver-tokens"] = factory(require("decimal.js"));
8
8
  else
9
9
  root["defisaver-tokens"] = factory(root["decimal.js"]);
10
- })(this, (__WEBPACK_EXTERNAL_MODULE__1__) => {
10
+ })(this, function(__WEBPACK_EXTERNAL_MODULE__1__) {
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ "use strict";
13
13
  /******/ var __webpack_modules__ = ([
14
- /* 0 */,
14
+ /* 0 */
15
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
16
+
17
+ __webpack_require__.r(__webpack_exports__);
18
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
19
+ /* harmony export */ "assets": () => /* reexport safe */ _assets__WEBPACK_IMPORTED_MODULE_1__.assets,
20
+ /* harmony export */ "ilks": () => /* reexport safe */ _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks,
21
+ /* harmony export */ "reflexerCollTypes": () => /* reexport safe */ _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes,
22
+ /* harmony export */ "aaveV2Markets": () => /* reexport safe */ _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__.aaveV2Markets,
23
+ /* harmony export */ "set": () => /* binding */ set,
24
+ /* harmony export */ "utils": () => /* binding */ utils,
25
+ /* harmony export */ "MAXUINT": () => /* binding */ MAXUINT,
26
+ /* harmony export */ "getAssetInfo": () => /* binding */ getAssetInfo,
27
+ /* harmony export */ "getIlkInfo": () => /* binding */ getIlkInfo,
28
+ /* harmony export */ "getAssetInfoByAddress": () => /* binding */ getAssetInfoByAddress,
29
+ /* harmony export */ "ilkToAsset": () => /* binding */ ilkToAsset,
30
+ /* harmony export */ "compoundAsset": () => /* binding */ compoundAsset,
31
+ /* harmony export */ "aaveAsset": () => /* binding */ aaveAsset,
32
+ /* harmony export */ "tokenFromJoin": () => /* binding */ tokenFromJoin,
33
+ /* harmony export */ "tokenFromMakerJoin": () => /* binding */ tokenFromMakerJoin,
34
+ /* harmony export */ "tokenFromReflexerJoin": () => /* binding */ tokenFromReflexerJoin,
35
+ /* harmony export */ "getAaveV2MarketInfo": () => /* binding */ getAaveV2MarketInfo,
36
+ /* harmony export */ "assetAmountInEth": () => /* binding */ assetAmountInEth,
37
+ /* harmony export */ "assetAmountInWei": () => /* binding */ assetAmountInWei
38
+ /* harmony export */ });
39
+ /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
40
+ /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(decimal_js__WEBPACK_IMPORTED_MODULE_0__);
41
+ /* harmony import */ var _assets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
42
+ /* harmony import */ var _ilks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
43
+ /* harmony import */ var _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4);
44
+ /* harmony import */ var _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5);
45
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6);
46
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
47
+
48
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
49
+
50
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+ var config = {
63
+ iconFunc: undefined,
64
+ network: 1
65
+ };
66
+ var set = (key, value) => {
67
+ config[key] = value;
68
+ };
69
+ var utils = {
70
+ stringToBytes: _utils__WEBPACK_IMPORTED_MODULE_5__.stringToBytes,
71
+ bytesToString: _utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString,
72
+ compare: _utils__WEBPACK_IMPORTED_MODULE_5__.compare
73
+ };
74
+ var MAXUINT = '115792089237316195423570985008687907853269984665640564039457584007913129639935';
75
+ decimal_js__WEBPACK_IMPORTED_MODULE_0___default().set({
76
+ rounding: (decimal_js__WEBPACK_IMPORTED_MODULE_0___default().ROUND_DOWN),
77
+ toExpPos: 9e15,
78
+ toExpNeg: -9e15,
79
+ precision: 50
80
+ });
81
+ /**
82
+ *
83
+ * @param symbol {string}
84
+ * @return symbol {string}
85
+ */
86
+
87
+ var handleWBTCLegacy = function handleWBTCLegacy() {
88
+ var symbol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
89
+ return symbol === 'WBTC Legacy' ? 'WBTC' : symbol;
90
+ };
91
+
92
+ var _addChainSpecificData = (assetDataBase, chainId) => {
93
+ var assetData = _objectSpread(_objectSpread({}, assetDataBase), {}, {
94
+ address: assetDataBase.addresses[chainId || config.network] || ''
95
+ });
96
+
97
+ if (config.iconFunc) assetData.icon = config.iconFunc(_objectSpread({}, assetData));
98
+ return assetData;
99
+ };
100
+ /**
101
+ * Returns asset info.
102
+ * Warning: will not throw if asset not found. Instead, will return a placeholder object.
103
+ *
104
+ * @param symbol {string}
105
+ * @param chainId {number}
106
+ * @return {AssetData}
107
+ */
108
+
109
+
110
+ var getAssetInfo = function getAssetInfo() {
111
+ var symbol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
112
+ var chainId = arguments.length > 1 ? arguments[1] : undefined;
113
+ var assetData = _assets__WEBPACK_IMPORTED_MODULE_1__.assets.find(t => (0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)(t.symbol, handleWBTCLegacy(symbol)));
114
+ if (!assetData) assetData = _objectSpread({}, _assets__WEBPACK_IMPORTED_MODULE_1__.assetProto);
115
+ return _addChainSpecificData(assetData, chainId);
116
+ };
117
+ /**
118
+ * Returns Maker or Reflexer ilk info, and asset info as `assetData` attribute.
119
+ * Warning: will not throw if ilk not found. Instead, will return a placeholder object.
120
+ *
121
+ * @param ilk {string} Ilk encoded as string or as hex
122
+ * @returns {ExtendedIlkData}
123
+ */
124
+
125
+ var getIlkInfo = function getIlkInfo() {
126
+ var ilk = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
127
+
128
+ var _ilk = (ilk.substr(0, 2) === '0x' ? (0,_utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString)(ilk) : ilk).toUpperCase();
129
+
130
+ var ilkData = _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks.find(i => i.ilkLabel === _ilk) || _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes.find(i => i.ilkLabel === _ilk);
131
+
132
+ if (!ilkData) {
133
+ console.error("Ilk \"".concat(ilk, "\" not found"));
134
+ return {
135
+ ilkLabel: _ilk,
136
+ ilkBytes: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.stringToBytes)(_ilk),
137
+ asset: ilkToAsset(ilk),
138
+ pip: '',
139
+ join: '',
140
+ isLP: false,
141
+ isCrop: false
142
+ };
143
+ }
144
+
145
+ var assetData = getAssetInfo(ilkData.asset);
146
+ return _objectSpread(_objectSpread({}, ilkData), {}, {
147
+ assetData
148
+ });
149
+ };
150
+ var getAssetInfoByAddress = function getAssetInfoByAddress() {
151
+ var address = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
152
+ var chainId = arguments.length > 1 ? arguments[1] : undefined;
153
+ var assetDataBase = _assets__WEBPACK_IMPORTED_MODULE_1__.assets.find(t => {
154
+ var _t$addresses;
155
+
156
+ return ((_t$addresses = t.addresses[chainId || config.network]) === null || _t$addresses === void 0 ? void 0 : _t$addresses.toLowerCase()) === address.toLowerCase();
157
+ });
158
+ return _addChainSpecificData(assetDataBase || _objectSpread({}, _assets__WEBPACK_IMPORTED_MODULE_1__.assetProto), chainId);
159
+ };
160
+ var ilkToAsset = function ilkToAsset() {
161
+ var _ilkLabel$match;
162
+
163
+ var ilk = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
164
+ var ilkLabel = ilk.substr(0, 2) === '0x' ? (0,_utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString)(ilk) : ilk;
165
+ var asset = ilkLabel.replace(/-.*/, '');
166
+ if (ilkLabel.startsWith('PSM')) asset = ((_ilkLabel$match = ilkLabel.match(/^[A-Z]*-(.*)-[A-Z]*/)) === null || _ilkLabel$match === void 0 ? void 0 : _ilkLabel$match[1]) || asset;
167
+ if (asset === 'KNC') return 'KNCL';
168
+ if (asset === 'PAXUSD' || asset === 'PAX') return 'USDP';
169
+ if (asset === 'WSTETH') return 'wstETH';
170
+ if (asset === 'CRVV1ETHSTETH') return 'steCRV';
171
+ if (asset === 'RETH') return 'rETH';
172
+ return asset;
173
+ };
174
+ /** @private **/
175
+
176
+ var compoundAsset = underlyingAsset => "c".concat(underlyingAsset.toUpperCase());
177
+ /** @private **/
178
+
179
+ var aaveAsset = underlyingAsset => "a".concat(underlyingAsset.toUpperCase());
180
+ /**
181
+ * @param join {string} Maker or Reflexer ilk join
182
+ * @param fromIlks {IlkData[]}
183
+ * @returns {string} Token symbol
184
+ */
185
+
186
+ var tokenFromJoin = function tokenFromJoin(join) {
187
+ var fromIlks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks;
188
+
189
+ for (var ilkInfo of fromIlks) {
190
+ if ((0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)(ilkInfo.join, join)) return ilkInfo.asset;
191
+ }
192
+
193
+ if ((0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)('0x448a5065aebb8e423f0896e6c5d525c040f59af3', join)) return 'ETH'; // SCD ETH
194
+
195
+ return '';
196
+ };
197
+ /**
198
+ * @param join {string} Maker ilk join
199
+ * @returns {string} Token symbol
200
+ */
201
+
202
+ var tokenFromMakerJoin = join => tokenFromJoin(join, _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks);
203
+ /**
204
+ * @param join {string} Reflexer ilk join
205
+ * @returns {string} Token symbol
206
+ */
207
+
208
+ var tokenFromReflexerJoin = join => tokenFromJoin(join, _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes);
209
+ var getAaveV2MarketInfo = function getAaveV2MarketInfo() {
210
+ var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
211
+ return _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__.aaveV2Markets.find(i => i.name === name);
212
+ };
213
+ /**
214
+ * @param amount {Number|String|Object} Amount in wei
215
+ * @param asset {String} Asset symbol (or `MCD-${symbol}` for maker asset - always 18dec)
216
+ * @return {String}
217
+ */
218
+
219
+ var assetAmountInEth = function assetAmountInEth(amount) {
220
+ var asset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'ETH';
221
+ if ((amount === null || amount === void 0 ? void 0 : amount.toString()) === 'Infinity') return MAXUINT;
222
+ var decimals; // USDC/WBTC have 6/8 decimals but Vat is storing it in 18 decimal precision
223
+
224
+ if (asset.substr(0, 4) === 'MCD-') decimals = 18; // Compound returns borrowing power in USD with 18 decimals
225
+ else if (asset === 'USD') decimals = 18;else decimals = getAssetInfo(asset).decimals;
226
+ return new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(amount && amount.toString() || 0).div(10 ** decimals).toDP(decimals).toString();
227
+ };
228
+ /**
229
+ * @param amount {Number|String|Object} Amount in eth
230
+ * @param asset {String} Asset symbol
231
+ * @return {String}
232
+ */
233
+
234
+ var assetAmountInWei = (amount, asset) => {
235
+ if ((amount === null || amount === void 0 ? void 0 : amount.toString()) === 'Infinity') return MAXUINT;
236
+ var {
237
+ decimals
238
+ } = getAssetInfo(asset);
239
+ return new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(amount && amount.toString() || 0).mul(10 ** decimals).floor().toString();
240
+ };
241
+
242
+ /***/ }),
15
243
  /* 1 */
16
244
  /***/ ((module) => {
17
245
 
@@ -23,14 +251,15 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__1__;
23
251
 
24
252
  __webpack_require__.r(__webpack_exports__);
25
253
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
26
- /* harmony export */ assetProto: () => (/* binding */ assetProto),
27
- /* harmony export */ assets: () => (/* binding */ assets)
254
+ /* harmony export */ "assetProto": () => /* binding */ assetProto,
255
+ /* harmony export */ "assets": () => /* binding */ assets
28
256
  /* harmony export */ });
29
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
30
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
32
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
33
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
257
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
258
+
259
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
260
+
261
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
262
+
34
263
  var ETHAddress = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
35
264
  var DAIAddress = "0x6b175474e89094c44da98b954eedeac495271d0f";
36
265
  var SAIAddress = "0x89d24A6b4CcB1B6fAA2625fE562bDD9a23260359";
@@ -250,6 +479,7 @@ var cbETHCrvAddress = "0x5b6c539b224014a09b3388e51caaa8e354c959c8";
250
479
  var sfrxETH = "0xac3E018457B222d93114458476f3E3416Abbe38F";
251
480
  var crvUSD = "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E";
252
481
  var sDAIAddress = "0x83F20F44975D03b1b09e64809B757c47f942BEeA";
482
+ var tBTCAddress = "0x18084fbA666a33d37592fA2633fD49a74DD93a88";
253
483
  var assetProto = {
254
484
  symbol: '?',
255
485
  feedAvailability: {},
@@ -2531,6 +2761,23 @@ var assets = [_objectSpread(_objectSpread({}, assetProto), {}, {
2531
2761
  },
2532
2762
  decimals: 18,
2533
2763
  isStable: true
2764
+ }), _objectSpread(_objectSpread({}, assetProto), {}, {
2765
+ symbol: 'tBTC',
2766
+ name: 'tBTC',
2767
+ addresses: {
2768
+ 1: tBTCAddress
2769
+ },
2770
+ decimals: 18
2771
+ }), _objectSpread(_objectSpread({}, assetProto), {}, {
2772
+ symbol: 'STG',
2773
+ name: 'STG',
2774
+ addresses: {
2775
+ 1: '0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6',
2776
+ 10: '0x296f55f8fb28e498b858d0bcda06d955b2cb3f97',
2777
+ 42161: '0x6694340fc020c5e6b96567843da2df01b2ce1eb6'
2778
+ },
2779
+ decimals: 18,
2780
+ exchange: true
2534
2781
  })];
2535
2782
 
2536
2783
  /***/ }),
@@ -2539,10 +2786,9 @@ var assets = [_objectSpread(_objectSpread({}, assetProto), {}, {
2539
2786
 
2540
2787
  __webpack_require__.r(__webpack_exports__);
2541
2788
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2542
- /* harmony export */ ilks: () => (/* binding */ ilks)
2789
+ /* harmony export */ "ilks": () => /* binding */ ilks
2543
2790
  /* harmony export */ });
2544
2791
  /** AUTOMATICALLY GENERATED FILE **/
2545
-
2546
2792
  var ilks = [{
2547
2793
  "asset": "ETH",
2548
2794
  "assetAddress": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
@@ -2971,7 +3217,7 @@ var ilks = [{
2971
3217
 
2972
3218
  __webpack_require__.r(__webpack_exports__);
2973
3219
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2974
- /* harmony export */ reflexerCollTypes: () => (/* binding */ reflexerCollTypes)
3220
+ /* harmony export */ "reflexerCollTypes": () => /* binding */ reflexerCollTypes
2975
3221
  /* harmony export */ });
2976
3222
  var reflexerCollTypes = [{
2977
3223
  "asset": "ETH",
@@ -2989,7 +3235,7 @@ var reflexerCollTypes = [{
2989
3235
 
2990
3236
  __webpack_require__.r(__webpack_exports__);
2991
3237
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2992
- /* harmony export */ aaveV2Markets: () => (/* binding */ aaveV2Markets)
3238
+ /* harmony export */ "aaveV2Markets": () => /* binding */ aaveV2Markets
2993
3239
  /* harmony export */ });
2994
3240
  var aaveV2Markets = [{
2995
3241
  name: 'v2default',
@@ -3004,9 +3250,9 @@ var aaveV2Markets = [{
3004
3250
 
3005
3251
  __webpack_require__.r(__webpack_exports__);
3006
3252
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3007
- /* harmony export */ bytesToString: () => (/* binding */ bytesToString),
3008
- /* harmony export */ compare: () => (/* binding */ compare),
3009
- /* harmony export */ stringToBytes: () => (/* binding */ stringToBytes)
3253
+ /* harmony export */ "bytesToString": () => /* binding */ bytesToString,
3254
+ /* harmony export */ "stringToBytes": () => /* binding */ stringToBytes,
3255
+ /* harmony export */ "compare": () => /* binding */ compare
3010
3256
  /* harmony export */ });
3011
3257
  /**
3012
3258
  * @param hex {string}
@@ -3015,14 +3261,18 @@ __webpack_require__.r(__webpack_exports__);
3015
3261
  function bytesToString(hex) {
3016
3262
  return Buffer.from(hex.replace(/^0x/, ''), 'hex').toString().replace(/\x00/g, '');
3017
3263
  }
3018
-
3019
3264
  /**
3020
3265
  * @param str {string}
3021
3266
  * @return {string} input encoded to hex, padded to 32 bytes
3022
3267
  */
3268
+
3023
3269
  function stringToBytes(str) {
3024
3270
  var n = Buffer.from(str).toString('hex');
3025
- while (n.length < 64) n = "".concat(n, "0");
3271
+
3272
+ while (n.length < 64) {
3273
+ n = "".concat(n, "0");
3274
+ }
3275
+
3026
3276
  return "0x".concat(n);
3027
3277
  }
3028
3278
  function compare() {
@@ -3040,9 +3290,8 @@ function compare() {
3040
3290
  /******/ // The require function
3041
3291
  /******/ function __webpack_require__(moduleId) {
3042
3292
  /******/ // Check if module is in cache
3043
- /******/ var cachedModule = __webpack_module_cache__[moduleId];
3044
- /******/ if (cachedModule !== undefined) {
3045
- /******/ return cachedModule.exports;
3293
+ /******/ if(__webpack_module_cache__[moduleId]) {
3294
+ /******/ return __webpack_module_cache__[moduleId].exports;
3046
3295
  /******/ }
3047
3296
  /******/ // Create a new module (and put it into the cache)
3048
3297
  /******/ var module = __webpack_module_cache__[moduleId] = {
@@ -3064,8 +3313,8 @@ function compare() {
3064
3313
  /******/ // getDefaultExport function for compatibility with non-harmony modules
3065
3314
  /******/ __webpack_require__.n = (module) => {
3066
3315
  /******/ var getter = module && module.__esModule ?
3067
- /******/ () => (module['default']) :
3068
- /******/ () => (module);
3316
+ /******/ () => module['default'] :
3317
+ /******/ () => module;
3069
3318
  /******/ __webpack_require__.d(getter, { a: getter });
3070
3319
  /******/ return getter;
3071
3320
  /******/ };
@@ -3085,7 +3334,7 @@ function compare() {
3085
3334
  /******/
3086
3335
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
3087
3336
  /******/ (() => {
3088
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
3337
+ /******/ __webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop)
3089
3338
  /******/ })();
3090
3339
  /******/
3091
3340
  /******/ /* webpack/runtime/make namespace object */
@@ -3100,225 +3349,10 @@ function compare() {
3100
3349
  /******/ })();
3101
3350
  /******/
3102
3351
  /************************************************************************/
3103
- var __webpack_exports__ = {};
3104
- // This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
3105
- (() => {
3106
- __webpack_require__.r(__webpack_exports__);
3107
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3108
- /* harmony export */ MAXUINT: () => (/* binding */ MAXUINT),
3109
- /* harmony export */ aaveAsset: () => (/* binding */ aaveAsset),
3110
- /* harmony export */ aaveV2Markets: () => (/* reexport safe */ _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__.aaveV2Markets),
3111
- /* harmony export */ assetAmountInEth: () => (/* binding */ assetAmountInEth),
3112
- /* harmony export */ assetAmountInWei: () => (/* binding */ assetAmountInWei),
3113
- /* harmony export */ assets: () => (/* reexport safe */ _assets__WEBPACK_IMPORTED_MODULE_1__.assets),
3114
- /* harmony export */ compoundAsset: () => (/* binding */ compoundAsset),
3115
- /* harmony export */ getAaveV2MarketInfo: () => (/* binding */ getAaveV2MarketInfo),
3116
- /* harmony export */ getAssetInfo: () => (/* binding */ getAssetInfo),
3117
- /* harmony export */ getAssetInfoByAddress: () => (/* binding */ getAssetInfoByAddress),
3118
- /* harmony export */ getIlkInfo: () => (/* binding */ getIlkInfo),
3119
- /* harmony export */ ilkToAsset: () => (/* binding */ ilkToAsset),
3120
- /* harmony export */ ilks: () => (/* reexport safe */ _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks),
3121
- /* harmony export */ reflexerCollTypes: () => (/* reexport safe */ _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes),
3122
- /* harmony export */ set: () => (/* binding */ set),
3123
- /* harmony export */ tokenFromJoin: () => (/* binding */ tokenFromJoin),
3124
- /* harmony export */ tokenFromMakerJoin: () => (/* binding */ tokenFromMakerJoin),
3125
- /* harmony export */ tokenFromReflexerJoin: () => (/* binding */ tokenFromReflexerJoin),
3126
- /* harmony export */ utils: () => (/* binding */ utils)
3127
- /* harmony export */ });
3128
- /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);
3129
- /* harmony import */ var decimal_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(decimal_js__WEBPACK_IMPORTED_MODULE_0__);
3130
- /* harmony import */ var _assets__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
3131
- /* harmony import */ var _ilks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3);
3132
- /* harmony import */ var _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4);
3133
- /* harmony import */ var _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5);
3134
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6);
3135
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3136
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
3137
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3138
- function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
3139
- function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3140
-
3141
-
3142
-
3143
-
3144
-
3145
-
3146
-
3147
-
3148
-
3149
-
3150
- var config = {
3151
- iconFunc: undefined,
3152
- network: 1
3153
- };
3154
- var set = (key, value) => {
3155
- config[key] = value;
3156
- };
3157
- var utils = {
3158
- stringToBytes: _utils__WEBPACK_IMPORTED_MODULE_5__.stringToBytes,
3159
- bytesToString: _utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString,
3160
- compare: _utils__WEBPACK_IMPORTED_MODULE_5__.compare
3161
- };
3162
- var MAXUINT = '115792089237316195423570985008687907853269984665640564039457584007913129639935';
3163
- decimal_js__WEBPACK_IMPORTED_MODULE_0___default().set({
3164
- rounding: (decimal_js__WEBPACK_IMPORTED_MODULE_0___default().ROUND_DOWN),
3165
- toExpPos: 9e15,
3166
- toExpNeg: -9e15,
3167
- precision: 50
3168
- });
3169
-
3170
- /**
3171
- *
3172
- * @param symbol {string}
3173
- * @return symbol {string}
3174
- */
3175
- var handleWBTCLegacy = function handleWBTCLegacy() {
3176
- var symbol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3177
- return symbol === 'WBTC Legacy' ? 'WBTC' : symbol;
3178
- };
3179
- var _addChainSpecificData = (assetDataBase, chainId) => {
3180
- var assetData = _objectSpread(_objectSpread({}, assetDataBase), {}, {
3181
- address: assetDataBase.addresses[chainId || config.network] || ''
3182
- });
3183
- if (config.iconFunc) assetData.icon = config.iconFunc(_objectSpread({}, assetData));
3184
- return assetData;
3185
- };
3186
-
3187
- /**
3188
- * Returns asset info.
3189
- * Warning: will not throw if asset not found. Instead, will return a placeholder object.
3190
- *
3191
- * @param symbol {string}
3192
- * @param chainId {number}
3193
- * @return {AssetData}
3194
- */
3195
- var getAssetInfo = function getAssetInfo() {
3196
- var symbol = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3197
- var chainId = arguments.length > 1 ? arguments[1] : undefined;
3198
- var assetData = _assets__WEBPACK_IMPORTED_MODULE_1__.assets.find(t => (0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)(t.symbol, handleWBTCLegacy(symbol)));
3199
- if (!assetData) assetData = _objectSpread({}, _assets__WEBPACK_IMPORTED_MODULE_1__.assetProto);
3200
- return _addChainSpecificData(assetData, chainId);
3201
- };
3202
-
3203
- /**
3204
- * Returns Maker or Reflexer ilk info, and asset info as `assetData` attribute.
3205
- * Warning: will not throw if ilk not found. Instead, will return a placeholder object.
3206
- *
3207
- * @param ilk {string} Ilk encoded as string or as hex
3208
- * @returns {ExtendedIlkData}
3209
- */
3210
- var getIlkInfo = function getIlkInfo() {
3211
- var ilk = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3212
- var _ilk = (ilk.substr(0, 2) === '0x' ? (0,_utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString)(ilk) : ilk).toUpperCase();
3213
- var ilkData = _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks.find(i => i.ilkLabel === _ilk) || _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes.find(i => i.ilkLabel === _ilk);
3214
- if (!ilkData) {
3215
- console.error("Ilk \"".concat(ilk, "\" not found"));
3216
- return {
3217
- ilkLabel: _ilk,
3218
- ilkBytes: (0,_utils__WEBPACK_IMPORTED_MODULE_5__.stringToBytes)(_ilk),
3219
- asset: ilkToAsset(ilk),
3220
- pip: '',
3221
- join: '',
3222
- isLP: false,
3223
- isCrop: false
3224
- };
3225
- }
3226
- var assetData = getAssetInfo(ilkData.asset);
3227
- return _objectSpread(_objectSpread({}, ilkData), {}, {
3228
- assetData
3229
- });
3230
- };
3231
- var getAssetInfoByAddress = function getAssetInfoByAddress() {
3232
- var address = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3233
- var chainId = arguments.length > 1 ? arguments[1] : undefined;
3234
- var assetDataBase = _assets__WEBPACK_IMPORTED_MODULE_1__.assets.find(t => {
3235
- var _t$addresses;
3236
- return ((_t$addresses = t.addresses[chainId || config.network]) === null || _t$addresses === void 0 ? void 0 : _t$addresses.toLowerCase()) === address.toLowerCase();
3237
- });
3238
- return _addChainSpecificData(assetDataBase || _objectSpread({}, _assets__WEBPACK_IMPORTED_MODULE_1__.assetProto), chainId);
3239
- };
3240
- var ilkToAsset = function ilkToAsset() {
3241
- var _ilkLabel$match;
3242
- var ilk = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3243
- var ilkLabel = ilk.substr(0, 2) === '0x' ? (0,_utils__WEBPACK_IMPORTED_MODULE_5__.bytesToString)(ilk) : ilk;
3244
- var asset = ilkLabel.replace(/-.*/, '');
3245
- if (ilkLabel.startsWith('PSM')) asset = ((_ilkLabel$match = ilkLabel.match(/^[A-Z]*-(.*)-[A-Z]*/)) === null || _ilkLabel$match === void 0 ? void 0 : _ilkLabel$match[1]) || asset;
3246
- if (asset === 'KNC') return 'KNCL';
3247
- if (asset === 'PAXUSD' || asset === 'PAX') return 'USDP';
3248
- if (asset === 'WSTETH') return 'wstETH';
3249
- if (asset === 'CRVV1ETHSTETH') return 'steCRV';
3250
- if (asset === 'RETH') return 'rETH';
3251
- return asset;
3252
- };
3253
-
3254
- /** @private **/
3255
- var compoundAsset = underlyingAsset => "c".concat(underlyingAsset.toUpperCase());
3256
- /** @private **/
3257
- var aaveAsset = underlyingAsset => "a".concat(underlyingAsset.toUpperCase());
3258
-
3259
- /**
3260
- * @param join {string} Maker or Reflexer ilk join
3261
- * @param fromIlks {IlkData[]}
3262
- * @returns {string} Token symbol
3263
- */
3264
- var tokenFromJoin = function tokenFromJoin(join) {
3265
- var fromIlks = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks;
3266
- for (var ilkInfo of fromIlks) {
3267
- if ((0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)(ilkInfo.join, join)) return ilkInfo.asset;
3268
- }
3269
- if ((0,_utils__WEBPACK_IMPORTED_MODULE_5__.compare)('0x448a5065aebb8e423f0896e6c5d525c040f59af3', join)) return 'ETH'; // SCD ETH
3270
- return '';
3271
- };
3272
-
3273
- /**
3274
- * @param join {string} Maker ilk join
3275
- * @returns {string} Token symbol
3276
- */
3277
- var tokenFromMakerJoin = join => tokenFromJoin(join, _ilks__WEBPACK_IMPORTED_MODULE_2__.ilks);
3278
-
3279
- /**
3280
- * @param join {string} Reflexer ilk join
3281
- * @returns {string} Token symbol
3282
- */
3283
- var tokenFromReflexerJoin = join => tokenFromJoin(join, _reflexerCollTypes__WEBPACK_IMPORTED_MODULE_3__.reflexerCollTypes);
3284
- var getAaveV2MarketInfo = function getAaveV2MarketInfo() {
3285
- var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
3286
- return _aaveV2Markets__WEBPACK_IMPORTED_MODULE_4__.aaveV2Markets.find(i => i.name === name);
3287
- };
3288
-
3289
- /**
3290
- * @param amount {Number|String|Object} Amount in wei
3291
- * @param asset {String} Asset symbol (or `MCD-${symbol}` for maker asset - always 18dec)
3292
- * @return {String}
3293
- */
3294
- var assetAmountInEth = function assetAmountInEth(amount) {
3295
- var asset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'ETH';
3296
- if ((amount === null || amount === void 0 ? void 0 : amount.toString()) === 'Infinity') return MAXUINT;
3297
- var decimals;
3298
-
3299
- // USDC/WBTC have 6/8 decimals but Vat is storing it in 18 decimal precision
3300
- if (asset.substr(0, 4) === 'MCD-') decimals = 18;
3301
-
3302
- // Compound returns borrowing power in USD with 18 decimals
3303
- else if (asset === 'USD') decimals = 18;else decimals = getAssetInfo(asset).decimals;
3304
- return new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(amount && amount.toString() || 0).div(10 ** decimals).toDP(decimals).toString();
3305
- };
3306
-
3307
- /**
3308
- * @param amount {Number|String|Object} Amount in eth
3309
- * @param asset {String} Asset symbol
3310
- * @return {String}
3311
- */
3312
- var assetAmountInWei = (amount, asset) => {
3313
- if ((amount === null || amount === void 0 ? void 0 : amount.toString()) === 'Infinity') return MAXUINT;
3314
- var {
3315
- decimals
3316
- } = getAssetInfo(asset);
3317
- return new (decimal_js__WEBPACK_IMPORTED_MODULE_0___default())(amount && amount.toString() || 0).mul(10 ** decimals).floor().toString();
3318
- };
3319
- })();
3320
-
3321
- /******/ return __webpack_exports__;
3352
+ /******/ // module exports must be returned from runtime so entry inlining is disabled
3353
+ /******/ // startup
3354
+ /******/ // Load entry module and return exports
3355
+ /******/ return __webpack_require__(0);
3322
3356
  /******/ })()
3323
3357
  ;
3324
3358
  });
package/docs/.nojekyll DELETED
@@ -1 +0,0 @@
1
- TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.