New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

bancorx

Package Overview
Dependencies
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bancorx - npm Package Compare versions

Comparing version 0.2.86 to 0.2.91

6

build/index.d.ts

@@ -92,1 +92,7 @@ import { Converter, nRelay, ChoppedRelay } from "./interfaces";

export declare function chargeFee(asset: Asset, decimalFee: number, magnitude?: number): Asset;
export declare function liquidate(smartTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;
export declare function calculateLiquidateCost(reserveTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;
export declare function fund(smartTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;
export declare function calculateFundReturnSmall(reserveTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;
export declare function calculateFundReturnBig(reserveTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;
export declare function calculateFundReturn(reserveTokens: Asset, reserveBalance: Asset, smartSupply: Asset): Asset;

85

build/index.js

@@ -114,3 +114,3 @@ "use strict";

function calculateSmartToReserve(smartTokens, reserveBalance, smartSupply, ratio = 0.5) {
const smartTokensN = smartTokens.toDecimal();
const reserveTokensN = smartTokens.toDecimal();
const reserveBalanceN = reserveBalance.toDecimal();

@@ -121,3 +121,3 @@ const smartSupplyN = smartSupply.toDecimal();

decimal_js_1.default.set({ precision: 15, rounding: decimal_js_1.default.ROUND_DOWN });
const reward = reserveBalanceN.times(one.minus(decimal_js_1.default.pow(one.minus(smartTokensN.div(smartSupplyN)), ratioN)));
const reward = reserveBalanceN.times(one.minus(decimal_js_1.default.pow(one.minus(reserveTokensN.div(smartSupplyN)), ratioN)));
return new eos_common_1.Asset(reward

@@ -266,2 +266,83 @@ .times(Math.pow(10, reserveBalance.symbol.precision))

exports.chargeFee = chargeFee;
function liquidate(smartTokens, reserveBalance, smartSupply) {
const smartTokensN = smartTokens.toDecimal();
const reserveBalanceN = reserveBalance.toDecimal();
const smartSupplyN = smartSupply.toDecimal();
const reward = smartTokensN.times(reserveBalanceN).div(smartSupplyN);
return new eos_common_1.Asset(reward
.times(Math.pow(10, reserveBalance.symbol.precision))
.toDecimalPlaces(0, decimal_js_1.default.ROUND_DOWN)
.toNumber(), reserveBalance.symbol);
}
exports.liquidate = liquidate;
function calculateLiquidateCost(reserveTokens, reserveBalance, smartSupply) {
const reserveTokensN = reserveTokens.toDecimal();
const reserveBalanceN = reserveBalance.toDecimal();
const smartSupplyN = smartSupply.toDecimal();
const reward = reserveTokensN.times(smartSupplyN).div(reserveBalanceN);
return new eos_common_1.Asset(reward
.times(Math.pow(10, smartSupply.symbol.precision))
.toDecimalPlaces(0, decimal_js_1.default.ROUND_DOWN)
.toNumber(), smartSupply.symbol);
}
exports.calculateLiquidateCost = calculateLiquidateCost;
function fund(smartTokens, reserveBalance, smartSupply) {
const reserveTokensN = smartTokens.toDecimal();
const reserveBalanceN = reserveBalance.toDecimal();
const smartSupplyN = smartSupply.toDecimal();
const one = new decimal_js_1.default(1);
// (smart_amount * balance - 1) / current_smart_supply + 1;
const reward = reserveTokensN
.times(reserveBalanceN)
.minus(one)
.div(smartSupplyN)
.plus(one);
return new eos_common_1.Asset(reward
.times(Math.pow(10, reserveBalance.symbol.precision))
.toDecimalPlaces(0, decimal_js_1.default.ROUND_DOWN)
.toNumber(), reserveBalance.symbol);
}
exports.fund = fund;
function calculateFundReturnSmall(reserveTokens, reserveBalance, smartSupply) {
const wholeGuarantee = new decimal_js_1.default(Math.pow(10, 10));
const reserveTokensN = reserveTokens.toDecimal().times(wholeGuarantee);
const reserveBalanceN = reserveBalance.toDecimal().times(wholeGuarantee);
const smartSupplyN = smartSupply.toDecimal().times(wholeGuarantee);
const one = new decimal_js_1.default(1);
decimal_js_1.default.set({ precision: 15, rounding: decimal_js_1.default.ROUND_DOWN });
const reward = reserveTokensN
.times(smartSupplyN)
.minus(smartSupplyN)
.plus(one)
.div(reserveBalanceN);
return new eos_common_1.Asset(reward
.div(wholeGuarantee)
.times(Math.pow(10, smartSupply.symbol.precision))
.toDecimalPlaces(0, decimal_js_1.default.ROUND_DOWN)
.toNumber(), smartSupply.symbol);
}
exports.calculateFundReturnSmall = calculateFundReturnSmall;
function calculateFundReturnBig(reserveTokens, reserveBalance, smartSupply) {
const reserveTokensN = reserveTokens.toDecimal();
const reserveBalanceN = reserveBalance.toDecimal();
const smartSupplyN = smartSupply.toDecimal();
const one = new decimal_js_1.default(1);
decimal_js_1.default.set({ precision: 15, rounding: decimal_js_1.default.ROUND_DOWN });
const reward = reserveTokensN
.times(smartSupplyN)
.minus(smartSupplyN)
.plus(one)
.div(reserveBalanceN);
return new eos_common_1.Asset(reward
.times(Math.pow(10, smartSupply.symbol.precision))
.toDecimalPlaces(0, decimal_js_1.default.ROUND_DOWN)
.toNumber(), smartSupply.symbol);
}
exports.calculateFundReturnBig = calculateFundReturnBig;
function calculateFundReturn(reserveTokens, reserveBalance, smartSupply) {
return reserveTokens.toDecimal().greaterThanOrEqualTo(1)
? calculateFundReturnBig(reserveTokens, reserveBalance, smartSupply)
: calculateFundReturnSmall(reserveTokens, reserveBalance, smartSupply);
}
exports.calculateFundReturn = calculateFundReturn;
//# sourceMappingURL=index.js.map

2

package.json
{
"name": "bancorx",
"version": "0.2.86",
"version": "0.2.91",
"description": "BancorX Utility",

@@ -5,0 +5,0 @@ "main": "build/index.js",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc