carbon-js-sdk 0.6.6 → 0.6.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/lib/CarbonSDK.js +1 -1
  2. package/lib/clients/BatchQueryClient.js +4 -4
  3. package/lib/clients/CarbonQueryClient.js +1 -1
  4. package/lib/clients/ETHClient.js +15 -15
  5. package/lib/clients/HydrogenClient.js +1 -1
  6. package/lib/clients/InsightsQueryClient.js +3 -3
  7. package/lib/clients/NEOClient.js +7 -7
  8. package/lib/clients/TokenClient.js +2 -2
  9. package/lib/clients/ZILClient.js +17 -17
  10. package/lib/codec/cosmos/gov/v1/query.js +2 -2
  11. package/lib/codec/cosmos/gov/v1/tx.js +2 -2
  12. package/lib/codec/cosmos/gov/v1beta1/query.js +2 -2
  13. package/lib/codec/cosmos/gov/v1beta1/tx.js +2 -2
  14. package/lib/codec/cosmos/group/v1/events.js +2 -2
  15. package/lib/codec/cosmos/group/v1/tx.js +4 -4
  16. package/lib/codec/cosmos/tx/v1beta1/tx.js +4 -4
  17. package/lib/constant/generic.js +1 -1
  18. package/lib/modules/cdp.d.ts +6 -4
  19. package/lib/modules/cdp.js +92 -63
  20. package/lib/modules/cosmwasm.js +2 -2
  21. package/lib/modules/evm.js +5 -5
  22. package/lib/modules/gov.js +12 -12
  23. package/lib/modules/liquiditypool.js +1 -1
  24. package/lib/modules/order.js +2 -2
  25. package/lib/provider/account/EthLedgerAccount/EthLedgerAccount.js +1 -1
  26. package/lib/provider/account/NeoLedgerAccount/N3Ledger/ErrorCode.js +1 -1
  27. package/lib/provider/account/NeoLedgerAccount/N3Ledger/main.js +8 -8
  28. package/lib/provider/account/NeoLedgerAccount/NeoLedgerAccount.js +3 -3
  29. package/lib/provider/account/NeoLedgerAccount/NeonLedger.js +1 -1
  30. package/lib/provider/amino/types/admin.js +27 -27
  31. package/lib/provider/amino/types/bank.js +1 -1
  32. package/lib/provider/amino/types/broker.js +1 -1
  33. package/lib/provider/amino/types/cdp.js +25 -25
  34. package/lib/provider/amino/types/coin.js +4 -4
  35. package/lib/provider/amino/types/evm.js +2 -2
  36. package/lib/provider/amino/types/evmmerge.js +1 -1
  37. package/lib/provider/amino/types/feemarket.js +1 -1
  38. package/lib/provider/amino/types/gov.js +5 -5
  39. package/lib/provider/amino/types/ibc.js +1 -1
  40. package/lib/provider/amino/types/leverage.js +1 -1
  41. package/lib/provider/amino/types/liquidityPool.js +7 -7
  42. package/lib/provider/amino/types/market.js +6 -6
  43. package/lib/provider/amino/types/oracle.js +2 -2
  44. package/lib/provider/amino/types/order.js +4 -4
  45. package/lib/provider/amino/types/position.js +1 -1
  46. package/lib/provider/amino/types/profile.js +1 -1
  47. package/lib/provider/amino/types/staking.js +4 -4
  48. package/lib/provider/amino/types/subaccount.js +3 -3
  49. package/lib/provider/amino/utils.js +11 -11
  50. package/lib/provider/keplr/KeplrAccount.js +2 -2
  51. package/lib/provider/ledger/ledger.js +2 -2
  52. package/lib/provider/metamask/MetaMask.js +13 -13
  53. package/lib/provider/metamask/legacy-accounts.js +27 -6
  54. package/lib/provider/o3/O3Wallet.js +2 -2
  55. package/lib/util/address.js +14 -14
  56. package/lib/util/api.js +4 -4
  57. package/lib/util/blockchain.d.ts +1 -1
  58. package/lib/util/blockchain.js +4 -4
  59. package/lib/util/eip712.js +3 -3
  60. package/lib/util/fetch.js +1 -1
  61. package/lib/util/generic.js +3 -3
  62. package/lib/util/legacyEIP712.js +2 -2
  63. package/lib/util/network.js +3 -3
  64. package/lib/util/number.js +5 -5
  65. package/lib/wallet/CarbonSigner.js +2 -2
  66. package/lib/wallet/CarbonSigningClient.js +15 -15
  67. package/lib/wallet/CarbonWallet.js +9 -9
  68. package/lib/websocket/connector.js +3 -3
  69. package/package.json +1 -1
package/lib/CarbonSDK.js CHANGED
@@ -72,7 +72,7 @@ class CarbonSDK {
72
72
  this.evmChainId = (_g = (_f = opts.evmChainId) !== null && _f !== void 0 ? _f : constant_1.CarbonEvmChainIDs[this.network]) !== null && _g !== void 0 ? _g : constant_1.CarbonEvmChainIDs[constant_1.Network.MainNet];
73
73
  let grpcClient;
74
74
  if (opts.useTmAbciQuery !== true && this.networkConfig.grpcUrl) {
75
- const transport = typeof window === "undefined" ? grpc_web_node_http_transport_1.NodeHttpTransport() : undefined;
75
+ const transport = typeof window === "undefined" ? (0, grpc_web_node_http_transport_1.NodeHttpTransport)() : undefined;
76
76
  grpcClient = (_h = opts.grpcQueryClient) !== null && _h !== void 0 ? _h : new GrpcQueryClient_1.default(this.networkConfig.grpcWebUrl, {
77
77
  transport,
78
78
  });
@@ -29,7 +29,7 @@ class BatchQueryClient {
29
29
  };
30
30
  if (typeof endpoint === "string") {
31
31
  // accept host.name:port and assume http protocol
32
- this.url = rpcclient_1.hasProtocol(endpoint) ? endpoint : "http://" + endpoint;
32
+ this.url = (0, rpcclient_1.hasProtocol)(endpoint) ? endpoint : "http://" + endpoint;
33
33
  }
34
34
  else {
35
35
  this.url = endpoint.url;
@@ -71,7 +71,7 @@ class BatchQueryClient {
71
71
  return;
72
72
  const requests = batch.map((s) => s.request);
73
73
  const requestIds = requests.map((request) => request.id);
74
- http_1.http("POST", this.url, this.headers, requests).then((raw) => {
74
+ (0, http_1.http)("POST", this.url, this.headers, requests).then((raw) => {
75
75
  // Requests with a single entry return as an object
76
76
  const arr = Array.isArray(raw) ? raw : [raw];
77
77
  arr.forEach((el, i) => {
@@ -79,8 +79,8 @@ class BatchQueryClient {
79
79
  if (!req)
80
80
  return;
81
81
  const { reject, resolve } = req;
82
- const response = json_rpc_1.parseJsonRpcResponse(el);
83
- if (json_rpc_1.isJsonRpcErrorResponse(response)) {
82
+ const response = (0, json_rpc_1.parseJsonRpcResponse)(el);
83
+ if ((0, json_rpc_1.isJsonRpcErrorResponse)(response)) {
84
84
  reject(new Error(JSON.stringify(response.error)));
85
85
  }
86
86
  else {
@@ -52,7 +52,7 @@ const BlockchainClient_1 = __importDefault(require("./BlockchainClient"));
52
52
  class CarbonQueryClient {
53
53
  constructor(opts) {
54
54
  var _a;
55
- const rpcClient = (_a = opts.grpcClient) !== null && _a !== void 0 ? _a : stargate_1.createProtobufRpcClient(new stargate_1.QueryClient(opts.tmClient));
55
+ const rpcClient = (_a = opts.grpcClient) !== null && _a !== void 0 ? _a : (0, stargate_1.createProtobufRpcClient)(new stargate_1.QueryClient(opts.tmClient));
56
56
  this.tmClient = opts.tmClient;
57
57
  this.baseClient = rpcClient;
58
58
  this.chain = BlockchainClient_1.default.connectWithTm(opts.tmClient);
@@ -44,15 +44,15 @@ class ETHClient {
44
44
  ?
45
45
  this.tokenClient.getBlockchainV2(token.denom) == ETHClient.BLOCKCHAINV2_MAPPING[this.blockchain]
46
46
  :
47
- blockchain_1.blockchainForChainId(token.chainId.toNumber(), api.network) == this.blockchain;
47
+ (0, blockchain_1.blockchainForChainId)(token.chainId.toNumber(), api.network) == this.blockchain;
48
48
  return isCorrectBlockchain &&
49
49
  token.tokenAddress.length == 40 &&
50
- token.bridgeAddress.toLowerCase() == generic_1.stripHexPrefix(lockProxyAddress) &&
50
+ token.bridgeAddress.toLowerCase() == (0, generic_1.stripHexPrefix)(lockProxyAddress) &&
51
51
  (!whitelistDenoms || whitelistDenoms.includes(token.denom)) &&
52
- this.verifyChecksum(generic_1.appendHexPrefix(token.tokenAddress));
52
+ this.verifyChecksum((0, generic_1.appendHexPrefix)(token.tokenAddress));
53
53
  });
54
54
  const assetIds = tokens.map((token) => {
55
- return this.verifyChecksum(generic_1.appendHexPrefix(token.tokenAddress));
55
+ return this.verifyChecksum((0, generic_1.appendHexPrefix)(token.tokenAddress));
56
56
  });
57
57
  const provider = this.getProvider();
58
58
  const contractAddress = this.getBalanceReaderAddress();
@@ -101,14 +101,14 @@ class ETHClient {
101
101
  }
102
102
  const carbonNetwork = networkConfig.network;
103
103
  const fromTokenId = fromToken.id;
104
- const fromTokenAddress = generic_1.appendHexPrefix(fromToken.tokenAddress);
104
+ const fromTokenAddress = (0, generic_1.appendHexPrefix)(fromToken.tokenAddress);
105
105
  const toTokenDenom = toToken.denom;
106
106
  const recoveryAddressHex = ethers_1.ethers.utils.hexlify(util_1.AddressUtils.SWTHAddress.getAddressBytes(recoveryAddress, carbonNetwork));
107
107
  const fromAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(fromTokenId));
108
108
  const toAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(toTokenDenom));
109
109
  const nonce = yield this.getTxNonce(fromAddress, params.nonce, rpcProvider);
110
110
  const contract = new ethers_1.ethers.Contract(this.getBridgeEntranceAddr(), eth_1.ABIs.bridgeEntrance, rpcProvider);
111
- const feeAddress = generic_1.appendHexPrefix(networkConfig.feeAddress);
111
+ const feeAddress = (0, generic_1.appendHexPrefix)(networkConfig.feeAddress);
112
112
  const tokenCreator = fromToken.creator;
113
113
  const targetAddressBytes = util_1.AddressUtils.SWTHAddress.getAddressBytes(tokenCreator, carbonNetwork);
114
114
  const targetProxyHash = ethers_1.ethers.utils.hexlify(targetAddressBytes);
@@ -137,9 +137,9 @@ class ETHClient {
137
137
  throw new Error("Minimum gas required: 150,000");
138
138
  }
139
139
  const networkConfig = this.getNetworkConfig();
140
- const assetId = generic_1.appendHexPrefix(token.tokenAddress);
141
- const targetProxyHash = generic_1.appendHexPrefix(this.getTargetProxyHash(token));
142
- const feeAddress = generic_1.appendHexPrefix(networkConfig.feeAddress);
140
+ const assetId = (0, generic_1.appendHexPrefix)(token.tokenAddress);
141
+ const targetProxyHash = (0, generic_1.appendHexPrefix)(this.getTargetProxyHash(token));
142
+ const feeAddress = (0, generic_1.appendHexPrefix)(networkConfig.feeAddress);
143
143
  const toAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(token.id));
144
144
  const swthAddress = ethers_1.ethers.utils.hexlify(address);
145
145
  const contractAddress = this.getLockProxyAddress();
@@ -190,16 +190,16 @@ class ETHClient {
190
190
  return "insufficient balance";
191
191
  }
192
192
  const networkConfig = this.getNetworkConfig();
193
- const assetId = generic_1.appendHexPrefix(tokenWithExternalBalances.tokenAddress);
194
- const targetProxyHash = generic_1.appendHexPrefix(this.getTargetProxyHash(tokenWithExternalBalances));
195
- const feeAddress = generic_1.appendHexPrefix(networkConfig.feeAddress);
193
+ const assetId = (0, generic_1.appendHexPrefix)(tokenWithExternalBalances.tokenAddress);
194
+ const targetProxyHash = (0, generic_1.appendHexPrefix)(this.getTargetProxyHash(tokenWithExternalBalances));
195
+ const feeAddress = (0, generic_1.appendHexPrefix)(networkConfig.feeAddress);
196
196
  const toAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(tokenWithExternalBalances.id));
197
197
  const nonce = Math.floor(Math.random() * 1000000000); // random nonce to prevent replay attacks
198
198
  const message = ethers_1.ethers.utils.solidityKeccak256(["string", "address", "bytes", "bytes", "bytes", "uint256", "uint256", "uint256"], ["sendTokens", assetId, targetProxyHash, toAssetHash, feeAddress, amount, feeAmount, nonce]);
199
199
  // logger("sendDeposit message", message)
200
200
  let signatureResult;
201
201
  const { address, signature } = yield getSignatureCallback(message);
202
- const signatureBytes = ethers_1.ethers.utils.arrayify(generic_1.appendHexPrefix(signature));
202
+ const signatureBytes = ethers_1.ethers.utils.arrayify((0, generic_1.appendHexPrefix)(signature));
203
203
  const rsv = ethers_1.ethers.utils.splitSignature(signatureBytes);
204
204
  // logger("sign result", address, signature)
205
205
  signatureResult = {
@@ -238,7 +238,7 @@ class ETHClient {
238
238
  if (!feeInfo.deposit_fee) {
239
239
  throw new Error("unsupported token");
240
240
  }
241
- if (blockchain_1.blockchainForChainId(token.chainId.toNumber(), this.configProvider.getConfig().network) !== this.blockchain) {
241
+ if ((0, blockchain_1.blockchainForChainId)(token.chainId.toNumber(), this.configProvider.getConfig().network) !== this.blockchain) {
242
242
  throw new Error("unsupported token");
243
243
  }
244
244
  let feeAmount = ethers_1.ethers.BigNumber.from(feeInfo.deposit_fee);
@@ -304,7 +304,7 @@ class ETHClient {
304
304
  getTargetProxyHash(token) {
305
305
  const networkConfig = this.getNetworkConfig();
306
306
  const addressBytes = address_1.SWTHAddress.getAddressBytes(token.creator, networkConfig.network);
307
- const addressHex = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(addressBytes));
307
+ const addressHex = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(addressBytes));
308
308
  return addressHex;
309
309
  }
310
310
  getProvider() {
@@ -29,7 +29,7 @@ exports.HydrogenEndpoints = {
29
29
  const formatDateField = (value) => {
30
30
  if (typeof value !== "string")
31
31
  return null;
32
- return dayjs_1.default(value);
32
+ return (0, dayjs_1.default)(value);
33
33
  };
34
34
  // temporary function to parse okt/okc blockchain
35
35
  // to remove when automatic deposit/withdraw feature is deployed
@@ -101,12 +101,12 @@ class InsightsQueryClient {
101
101
  const meta = response.data.result.meta;
102
102
  const parsedEntries = rawEntries.map(entry => ({
103
103
  lastHeight: entry.lastHeight,
104
- time: dayjs_1.default(entry.time),
104
+ time: (0, dayjs_1.default)(entry.time),
105
105
  volumeValue: new bignumber_js_1.default(entry.volumeValue)
106
106
  }));
107
107
  const parsedMeta = {
108
- from: dayjs_1.default(meta.from),
109
- until: dayjs_1.default(meta.until),
108
+ from: (0, dayjs_1.default)(meta.from),
109
+ until: (0, dayjs_1.default)(meta.until),
110
110
  interval: meta.interval,
111
111
  };
112
112
  return { result: { entries: parsedEntries, meta: parsedMeta } };
@@ -68,13 +68,13 @@ class NEOClient {
68
68
  ?
69
69
  !!sdk.token.getBlockchainV2(token.denom) && (blockchain_1.BLOCKCHAIN_V2_TO_V1_MAPPING[sdk.token.getBlockchainV2(token.denom)] == this.blockchain)
70
70
  :
71
- blockchain_1.blockchainForChainId(token.chainId.toNumber(), sdk.network) == this.blockchain;
71
+ (0, blockchain_1.blockchainForChainId)(token.chainId.toNumber(), sdk.network) == this.blockchain;
72
72
  return (isCorrectBlockchain || token.denom === "swth") && token.tokenAddress.length == 40 && token.bridgeAddress.length == 40;
73
73
  });
74
74
  const client = new Neon.rpc.RPCClient(url, "2.5.2"); // TODO: should we change the RPC version??
75
75
  // NOTE: fetching of tokens is chunked in sets of 15 as we may hit
76
76
  // the gas limit on the RPC node and error out otherwise
77
- const promises = lodash_1.chunk(tokens, 75).map((partition) => __awaiter(this, void 0, void 0, function* () {
77
+ const promises = (0, lodash_1.chunk)(tokens, 75).map((partition) => __awaiter(this, void 0, void 0, function* () {
78
78
  var _a, _b, _c;
79
79
  let acc = {};
80
80
  for (const token of partition) {
@@ -116,8 +116,8 @@ class NEOClient {
116
116
  const targetProxyHash = this.getTargetProxyHash(token);
117
117
  const toAssetHash = Neon.u.str2hexstring(token.id);
118
118
  const addressBytes = address_1.SWTHAddress.getAddressBytes(swthAddress, networkConfig.network);
119
- const toAddress = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(addressBytes));
120
- const zeroAddressHex = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(constant_1.ZeroAddress));
119
+ const toAddress = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(addressBytes));
120
+ const zeroAddressHex = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(constant_1.ZeroAddress));
121
121
  const amount = ethers_1.ethers.BigNumber.from(token.externalBalance);
122
122
  const feeAmount = ethers_1.ethers.BigNumber.from(feeAmountInput !== null && feeAmountInput !== void 0 ? feeAmountInput : "100000000");
123
123
  const feeAddress = feeAmount.isZero() ? zeroAddressHex : networkConfig.feeAddress;
@@ -162,7 +162,7 @@ class NEOClient {
162
162
  const fromAddress = util_1.AddressUtils.NEOAddress.publicKeyToAddress(publicKeyOutput.publicKey);
163
163
  const targetProxyHash = this.getTargetProxyHash(token);
164
164
  const toAssetHash = Neon.u.str2hexstring(token.id);
165
- const toAddress = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(address));
165
+ const toAddress = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(address));
166
166
  const nonce = Math.floor(Math.random() * 1000000);
167
167
  if (amount.lt(feeAmount)) {
168
168
  throw new Error("Invalid amount");
@@ -198,7 +198,7 @@ class NEOClient {
198
198
  const fromAddress = ledger.scriptHash;
199
199
  const targetProxyHash = this.getTargetProxyHash(token);
200
200
  const toAssetHash = Neon.u.str2hexstring(token.id);
201
- const toAddress = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(address));
201
+ const toAddress = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(address));
202
202
  const feeAddress = networkConfig.feeAddress;
203
203
  const nonce = Math.floor(Math.random() * 1000000);
204
204
  if (amount.lt(feeAmount)) {
@@ -313,7 +313,7 @@ class NEOClient {
313
313
  getTargetProxyHash(token) {
314
314
  const networkConfig = this.getNetworkConfig();
315
315
  const addressBytes = address_1.SWTHAddress.getAddressBytes(token.creator, networkConfig.network);
316
- const addressHex = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(addressBytes));
316
+ const addressHex = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(addressBytes));
317
317
  return addressHex;
318
318
  }
319
319
  getNetworkConfig() {
@@ -544,7 +544,7 @@ class TokenClient {
544
544
  if (!token)
545
545
  return undefined;
546
546
  const bridge = this.getBridgeFromToken(token);
547
- if (!bridge || !blockchain_1.isIbcBridge(bridge))
547
+ if (!bridge || !(0, blockchain_1.isIbcBridge)(bridge))
548
548
  return undefined;
549
549
  return bridge.chain_id_name;
550
550
  }
@@ -620,7 +620,7 @@ class TokenClient {
620
620
  processTokenPrices(tokenPrices) {
621
621
  return tokenPrices.reduce((prevPrices, price) => {
622
622
  const newPrev = prevPrices;
623
- newPrev[price.denom] = number_1.bnOrZero(price.twap).shiftedBy(-constant_1.decTypeDecimals);
623
+ newPrev[price.denom] = (0, number_1.bnOrZero)(price.twap).shiftedBy(-constant_1.decTypeDecimals);
624
624
  return newPrev;
625
625
  }, {});
626
626
  }
@@ -77,12 +77,12 @@ class ZILClient {
77
77
  ?
78
78
  !!sdk.token.getBlockchainV2(token.denom) && (blockchain_1.BLOCKCHAIN_V2_TO_V1_MAPPING[sdk.token.getBlockchainV2(token.denom)] == this.blockchain)
79
79
  :
80
- blockchain_1.blockchainForChainId(token.chainId.toNumber(), sdk.network) == this.blockchain;
80
+ (0, blockchain_1.blockchainForChainId)(token.chainId.toNumber(), sdk.network) == this.blockchain;
81
81
  return isCorrectBlockchain && token.tokenAddress.length == 40 && (!whitelistDenoms || whitelistDenoms.includes(token.denom));
82
82
  });
83
83
  const requests = tokens.map((token) => token.tokenAddress === zeroAddress
84
- ? exports.balanceBatchRequest(address.replace(/^0x/i, ""))
85
- : exports.tokenBalanceBatchRequest(token.tokenAddress, address));
84
+ ? (0, exports.balanceBatchRequest)(address.replace(/^0x/i, ""))
85
+ : (0, exports.tokenBalanceBatchRequest)(token.tokenAddress, address));
86
86
  const response = yield fetch(this.getProviderUrl(), {
87
87
  method: "post",
88
88
  headers: { "content-type": "application/json" },
@@ -107,7 +107,7 @@ class ZILClient {
107
107
  // if (!isValidAddress) {
108
108
  // throw new Error("invalid address")
109
109
  // }
110
- return zilliqa_1.fromBech32Address(bech32Address).toLowerCase().substr(2);
110
+ return (0, zilliqa_1.fromBech32Address)(bech32Address).toLowerCase().substr(2);
111
111
  });
112
112
  }
113
113
  // see examplesV2/zil_client.ts on how to confirm the transactions
@@ -153,7 +153,7 @@ class ZILClient {
153
153
  zilliqa = new zilliqa_1.Zilliqa(this.getProviderUrl());
154
154
  }
155
155
  const deployedContract = (this.walletProvider || zilliqa).contracts.at(contractAddress);
156
- const balanceAndNonceResp = yield zilliqa.blockchain.getBalance(generic_1.stripHexPrefix(zilAddress));
156
+ const balanceAndNonceResp = yield zilliqa.blockchain.getBalance((0, generic_1.stripHexPrefix)(zilAddress));
157
157
  if (balanceAndNonceResp.error !== undefined) {
158
158
  throw new Error(balanceAndNonceResp.error.message);
159
159
  }
@@ -171,7 +171,7 @@ class ZILClient {
171
171
  vname: "spender",
172
172
  type: "ByStr20",
173
173
  // TODO: Check if bridgeAddress corresponds to carbon token lock_proxy_hash
174
- value: spenderAddress !== null && spenderAddress !== void 0 ? spenderAddress : generic_1.appendHexPrefix(token.bridgeAddress),
174
+ value: spenderAddress !== null && spenderAddress !== void 0 ? spenderAddress : (0, generic_1.appendHexPrefix)(token.bridgeAddress),
175
175
  },
176
176
  {
177
177
  vname: "amount",
@@ -189,7 +189,7 @@ class ZILClient {
189
189
  }
190
190
  checkAllowanceZRC2(token, owner, spender) {
191
191
  return __awaiter(this, void 0, void 0, function* () {
192
- const contractAddress = generic_1.appendHexPrefix(token.tokenAddress);
192
+ const contractAddress = (0, generic_1.appendHexPrefix)(token.tokenAddress);
193
193
  const zilliqa = new zilliqa_1.Zilliqa(this.getProviderUrl());
194
194
  const resp = yield zilliqa.blockchain.getSmartContractSubState(contractAddress, "allowances", [owner, spender]);
195
195
  if (resp.error !== undefined) {
@@ -211,13 +211,13 @@ class ZILClient {
211
211
  }
212
212
  const carbonNetwork = networkConfig.network;
213
213
  const fromTokenId = fromToken.id;
214
- const fromTokenAddr = generic_1.appendHexPrefix(fromToken.tokenAddress);
214
+ const fromTokenAddr = (0, generic_1.appendHexPrefix)(fromToken.tokenAddress);
215
215
  const toTokenDenom = toToken.denom;
216
- const targetProxyHash = generic_1.appendHexPrefix(this.getTargetProxyHash(fromToken));
216
+ const targetProxyHash = (0, generic_1.appendHexPrefix)(this.getTargetProxyHash(fromToken));
217
217
  const recoveryAddressHex = ethers_1.ethers.utils.hexlify(index_1.AddressUtils.SWTHAddress.getAddressBytes(recoveryAddress, carbonNetwork));
218
218
  const fromAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(fromTokenId));
219
219
  const toAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(toTokenDenom));
220
- const feeAddress = generic_1.appendHexPrefix(networkConfig.feeAddress);
220
+ const feeAddress = (0, generic_1.appendHexPrefix)(networkConfig.feeAddress);
221
221
  const contractAddress = this.getBridgeEntranceAddr();
222
222
  let zilliqa;
223
223
  if (typeof signer === "string") {
@@ -232,7 +232,7 @@ class ZILClient {
232
232
  zilliqa = new zilliqa_1.Zilliqa(this.getProviderUrl());
233
233
  }
234
234
  const deployedContract = (this.walletProvider || zilliqa).contracts.at(contractAddress);
235
- const balanceAndNonceResp = yield zilliqa.blockchain.getBalance(generic_1.stripHexPrefix(fromAddress));
235
+ const balanceAndNonceResp = yield zilliqa.blockchain.getBalance((0, generic_1.stripHexPrefix)(fromAddress));
236
236
  if (balanceAndNonceResp.error !== undefined) {
237
237
  throw new Error(balanceAndNonceResp.error.message);
238
238
  }
@@ -309,13 +309,13 @@ class ZILClient {
309
309
  return __awaiter(this, void 0, void 0, function* () {
310
310
  const { address, amount, token, gasPrice, gasLimit, zilAddress, signer } = params;
311
311
  const networkConfig = this.getNetworkConfig();
312
- const assetId = generic_1.appendHexPrefix(token.tokenAddress);
313
- const targetProxyHash = generic_1.appendHexPrefix(this.getTargetProxyHash(token));
314
- const feeAddress = generic_1.appendHexPrefix(networkConfig.feeAddress);
312
+ const assetId = (0, generic_1.appendHexPrefix)(token.tokenAddress);
313
+ const targetProxyHash = (0, generic_1.appendHexPrefix)(this.getTargetProxyHash(token));
314
+ const feeAddress = (0, generic_1.appendHexPrefix)(networkConfig.feeAddress);
315
315
  const toAssetHash = ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.toUtf8Bytes(token.id));
316
316
  const swthAddress = ethers_1.ethers.utils.hexlify(address);
317
317
  // TODO: Check if bridgeAddress corresponds to carbon token lock_proxy_hash
318
- const contractAddress = generic_1.appendHexPrefix(token.bridgeAddress);
318
+ const contractAddress = (0, generic_1.appendHexPrefix)(token.bridgeAddress);
319
319
  let zilliqa;
320
320
  if (typeof signer === "string") {
321
321
  zilliqa = new zilliqa_1.Zilliqa(this.getProviderUrl());
@@ -329,7 +329,7 @@ class ZILClient {
329
329
  zilliqa = new zilliqa_1.Zilliqa(this.getProviderUrl());
330
330
  }
331
331
  const deployedContract = (this.walletProvider || zilliqa).contracts.at(contractAddress);
332
- const balanceAndNonceResp = yield zilliqa.blockchain.getBalance(generic_1.stripHexPrefix(zilAddress));
332
+ const balanceAndNonceResp = yield zilliqa.blockchain.getBalance((0, generic_1.stripHexPrefix)(zilAddress));
333
333
  if (balanceAndNonceResp.error !== undefined) {
334
334
  throw new Error(balanceAndNonceResp.error.message);
335
335
  }
@@ -414,7 +414,7 @@ class ZILClient {
414
414
  getTargetProxyHash(token) {
415
415
  const networkConfig = this.getNetworkConfig();
416
416
  const addressBytes = address_1.SWTHAddress.getAddressBytes(token.creator, networkConfig.network);
417
- const addressHex = generic_1.stripHexPrefix(ethers_1.ethers.utils.hexlify(addressBytes));
417
+ const addressHex = (0, generic_1.stripHexPrefix)(ethers_1.ethers.utils.hexlify(addressBytes));
418
418
  return addressHex;
419
419
  }
420
420
  getNetworkConfig() {
@@ -159,7 +159,7 @@ exports.QueryProposalsRequest = {
159
159
  const message = Object.assign({}, baseQueryProposalsRequest);
160
160
  message.proposalStatus =
161
161
  object.proposalStatus !== undefined && object.proposalStatus !== null
162
- ? gov_1.proposalStatusFromJSON(object.proposalStatus)
162
+ ? (0, gov_1.proposalStatusFromJSON)(object.proposalStatus)
163
163
  : 0;
164
164
  message.voter =
165
165
  object.voter !== undefined && object.voter !== null
@@ -178,7 +178,7 @@ exports.QueryProposalsRequest = {
178
178
  toJSON(message) {
179
179
  const obj = {};
180
180
  message.proposalStatus !== undefined &&
181
- (obj.proposalStatus = gov_1.proposalStatusToJSON(message.proposalStatus));
181
+ (obj.proposalStatus = (0, gov_1.proposalStatusToJSON)(message.proposalStatus));
182
182
  message.voter !== undefined && (obj.voter = message.voter);
183
183
  message.depositor !== undefined && (obj.depositor = message.depositor);
184
184
  message.pagination !== undefined &&
@@ -300,7 +300,7 @@ exports.MsgVote = {
300
300
  : "";
301
301
  message.option =
302
302
  object.option !== undefined && object.option !== null
303
- ? gov_1.voteOptionFromJSON(object.option)
303
+ ? (0, gov_1.voteOptionFromJSON)(object.option)
304
304
  : 0;
305
305
  message.metadata =
306
306
  object.metadata !== undefined && object.metadata !== null
@@ -314,7 +314,7 @@ exports.MsgVote = {
314
314
  (obj.proposalId = (message.proposalId || long_1.default.UZERO).toString());
315
315
  message.voter !== undefined && (obj.voter = message.voter);
316
316
  message.option !== undefined &&
317
- (obj.option = gov_1.voteOptionToJSON(message.option));
317
+ (obj.option = (0, gov_1.voteOptionToJSON)(message.option));
318
318
  message.metadata !== undefined && (obj.metadata = message.metadata);
319
319
  return obj;
320
320
  },
@@ -159,7 +159,7 @@ exports.QueryProposalsRequest = {
159
159
  const message = Object.assign({}, baseQueryProposalsRequest);
160
160
  message.proposalStatus =
161
161
  object.proposalStatus !== undefined && object.proposalStatus !== null
162
- ? gov_1.proposalStatusFromJSON(object.proposalStatus)
162
+ ? (0, gov_1.proposalStatusFromJSON)(object.proposalStatus)
163
163
  : 0;
164
164
  message.voter =
165
165
  object.voter !== undefined && object.voter !== null
@@ -178,7 +178,7 @@ exports.QueryProposalsRequest = {
178
178
  toJSON(message) {
179
179
  const obj = {};
180
180
  message.proposalStatus !== undefined &&
181
- (obj.proposalStatus = gov_1.proposalStatusToJSON(message.proposalStatus));
181
+ (obj.proposalStatus = (0, gov_1.proposalStatusToJSON)(message.proposalStatus));
182
182
  message.voter !== undefined && (obj.voter = message.voter);
183
183
  message.depositor !== undefined && (obj.depositor = message.depositor);
184
184
  message.pagination !== undefined &&
@@ -185,7 +185,7 @@ exports.MsgVote = {
185
185
  : "";
186
186
  message.option =
187
187
  object.option !== undefined && object.option !== null
188
- ? gov_1.voteOptionFromJSON(object.option)
188
+ ? (0, gov_1.voteOptionFromJSON)(object.option)
189
189
  : 0;
190
190
  return message;
191
191
  },
@@ -195,7 +195,7 @@ exports.MsgVote = {
195
195
  (obj.proposalId = (message.proposalId || long_1.default.UZERO).toString());
196
196
  message.voter !== undefined && (obj.voter = message.voter);
197
197
  message.option !== undefined &&
198
- (obj.option = gov_1.voteOptionToJSON(message.option));
198
+ (obj.option = (0, gov_1.voteOptionToJSON)(message.option));
199
199
  return obj;
200
200
  },
201
201
  fromPartial(object) {
@@ -384,7 +384,7 @@ exports.EventExec = {
384
384
  : long_1.default.UZERO;
385
385
  message.result =
386
386
  object.result !== undefined && object.result !== null
387
- ? types_1.proposalExecutorResultFromJSON(object.result)
387
+ ? (0, types_1.proposalExecutorResultFromJSON)(object.result)
388
388
  : 0;
389
389
  message.logs =
390
390
  object.logs !== undefined && object.logs !== null
@@ -397,7 +397,7 @@ exports.EventExec = {
397
397
  message.proposalId !== undefined &&
398
398
  (obj.proposalId = (message.proposalId || long_1.default.UZERO).toString());
399
399
  message.result !== undefined &&
400
- (obj.result = types_1.proposalExecutorResultToJSON(message.result));
400
+ (obj.result = (0, types_1.proposalExecutorResultToJSON)(message.result));
401
401
  message.logs !== undefined && (obj.logs = message.logs);
402
402
  return obj;
403
403
  },
@@ -1474,7 +1474,7 @@ exports.MsgVote = {
1474
1474
  : "";
1475
1475
  message.option =
1476
1476
  object.option !== undefined && object.option !== null
1477
- ? types_1.voteOptionFromJSON(object.option)
1477
+ ? (0, types_1.voteOptionFromJSON)(object.option)
1478
1478
  : 0;
1479
1479
  message.metadata =
1480
1480
  object.metadata !== undefined && object.metadata !== null
@@ -1492,7 +1492,7 @@ exports.MsgVote = {
1492
1492
  (obj.proposalId = (message.proposalId || long_1.default.UZERO).toString());
1493
1493
  message.voter !== undefined && (obj.voter = message.voter);
1494
1494
  message.option !== undefined &&
1495
- (obj.option = types_1.voteOptionToJSON(message.option));
1495
+ (obj.option = (0, types_1.voteOptionToJSON)(message.option));
1496
1496
  message.metadata !== undefined && (obj.metadata = message.metadata);
1497
1497
  message.exec !== undefined && (obj.exec = execToJSON(message.exec));
1498
1498
  return obj;
@@ -1633,14 +1633,14 @@ exports.MsgExecResponse = {
1633
1633
  const message = Object.assign({}, baseMsgExecResponse);
1634
1634
  message.result =
1635
1635
  object.result !== undefined && object.result !== null
1636
- ? types_1.proposalExecutorResultFromJSON(object.result)
1636
+ ? (0, types_1.proposalExecutorResultFromJSON)(object.result)
1637
1637
  : 0;
1638
1638
  return message;
1639
1639
  },
1640
1640
  toJSON(message) {
1641
1641
  const obj = {};
1642
1642
  message.result !== undefined &&
1643
- (obj.result = types_1.proposalExecutorResultToJSON(message.result));
1643
+ (obj.result = (0, types_1.proposalExecutorResultToJSON)(message.result));
1644
1644
  return obj;
1645
1645
  },
1646
1646
  fromPartial(object) {
@@ -763,13 +763,13 @@ exports.ModeInfo_Single = {
763
763
  const message = Object.assign({}, baseModeInfo_Single);
764
764
  message.mode =
765
765
  object.mode !== undefined && object.mode !== null
766
- ? signing_1.signModeFromJSON(object.mode)
766
+ ? (0, signing_1.signModeFromJSON)(object.mode)
767
767
  : 0;
768
768
  return message;
769
769
  },
770
770
  toJSON(message) {
771
771
  const obj = {};
772
- message.mode !== undefined && (obj.mode = signing_1.signModeToJSON(message.mode));
772
+ message.mode !== undefined && (obj.mode = (0, signing_1.signModeToJSON)(message.mode));
773
773
  return obj;
774
774
  },
775
775
  fromPartial(object) {
@@ -1052,7 +1052,7 @@ exports.AuxSignerData = {
1052
1052
  : undefined;
1053
1053
  message.mode =
1054
1054
  object.mode !== undefined && object.mode !== null
1055
- ? signing_1.signModeFromJSON(object.mode)
1055
+ ? (0, signing_1.signModeFromJSON)(object.mode)
1056
1056
  : 0;
1057
1057
  message.sig =
1058
1058
  object.sig !== undefined && object.sig !== null
@@ -1067,7 +1067,7 @@ exports.AuxSignerData = {
1067
1067
  (obj.signDoc = message.signDoc
1068
1068
  ? exports.SignDocDirectAux.toJSON(message.signDoc)
1069
1069
  : undefined);
1070
- message.mode !== undefined && (obj.mode = signing_1.signModeToJSON(message.mode));
1070
+ message.mode !== undefined && (obj.mode = (0, signing_1.signModeToJSON)(message.mode));
1071
1071
  message.sig !== undefined &&
1072
1072
  (obj.sig = base64FromBytes(message.sig !== undefined ? message.sig : new Uint8Array()));
1073
1073
  return obj;
@@ -12,7 +12,7 @@ exports.DEFAULT_FEE_DENOM = "swth";
12
12
  exports.DEFAULT_GAS_PRICE = new bignumber_js_1.default(10);
13
13
  exports.DEFAULT_GAS = new bignumber_js_1.default(10000000);
14
14
  exports.DEFAULT_FEE = {
15
- amount: proto_signing_1.coins(exports.DEFAULT_GAS_PRICE.times(exports.DEFAULT_GAS).dp(0).toString(), "swth"),
15
+ amount: (0, proto_signing_1.coins)(exports.DEFAULT_GAS_PRICE.times(exports.DEFAULT_GAS).dp(0).toString(), "swth"),
16
16
  gas: exports.DEFAULT_GAS.toString(10),
17
17
  };
18
18
  exports.CARBON_GAS_PRICE = {
@@ -1,10 +1,11 @@
1
1
  /// <reference types="long" />
2
- import { AssetParams, DebtInfo, RateStrategyParams, StablecoinDebtInfo } from "../codec";
2
+ import { AssetParams, DebtInfo, RateStrategyParams, StablecoinDebtInfo, TokenPrice } from "../codec";
3
3
  import { Params } from "../codec/cdp/params";
4
4
  import { CarbonTx } from "../util";
5
5
  import { BigNumber } from "bignumber.js";
6
6
  import { Debt } from "./../codec/cdp/query";
7
7
  import BaseModule from "./base";
8
+ import { Coin } from "../codec/cosmos/base/v1beta1/coin";
8
9
  export declare class CDPModule extends BaseModule {
9
10
  private cdpModuleAddress;
10
11
  supplyAsset(params: CDPModule.SupplyAssetParams, opts?: CarbonTx.SignTxOpts): Promise<import("@cosmjs/stargate").DeliverTxResponse>;
@@ -49,13 +50,14 @@ export declare class CDPModule extends BaseModule {
49
50
  HealthFactor: BigNumber;
50
51
  }>;
51
52
  getAssetBorrowableSupply(denom: string): Promise<BigNumber>;
52
- getCdpToActualRatio(cdpDenom: string): Promise<BigNumber>;
53
+ getCdpToActualRatio(cdpDenom: string, interestFee?: BigNumber): Promise<BigNumber>;
53
54
  getTotalAccountTokenDebtUsdVal(account: string, denom: string, debt?: Debt, debtInfo?: DebtInfo): Promise<BigNumber>;
54
55
  getModuleTotalDebtUsdVal(): Promise<BigNumber>;
55
56
  getModuleTotalCollateralUsdVal(): Promise<BigNumber>;
57
+ getCdpTokensUsdVal(cdpTokens: Coin[]): Promise<BigNumber>;
56
58
  getCdpTokenUsdVal(cdpDenom: string, amount: BigNumber): Promise<BigNumber>;
57
- getTokenUsdVal(denom: string, amount: BigNumber): Promise<BigNumber>;
58
- getTotalTokenDebt(denom: string, debtInfo?: DebtInfo): Promise<BigNumber>;
59
+ getTokenUsdVal(denom: string, amount: BigNumber, price?: TokenPrice): Promise<BigNumber>;
60
+ getTotalTokenDebt(denom: string, interestFee?: BigNumber): Promise<BigNumber>;
59
61
  getTotalAccountTokenDebt(account: string, denom: string, debt?: Debt, debtInfo?: DebtInfo): Promise<BigNumber>;
60
62
  getTotalAccountStablecoinDebt(account: string, debt?: CDPModule.StablecoinDebt, debtInfo?: StablecoinDebtInfo): Promise<BigNumber>;
61
63
  static calculateInterestAPY: (debtInfo: DebtInfo, rateStrategy: RateStrategyParams) => BigNumber;