Socket
Socket
Sign inDemoInstall

@uniswap/v2-sdk

Package Overview
Dependencies
Maintainers
8
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@uniswap/v2-sdk - npm Package Compare versions

Comparing version 1.0.4 to 1.0.5

5

dist/entities/pair.d.ts
import { BigintIsh, ChainId, Price, Token, TokenAmount } from '@uniswap/sdk-core';
export declare const computePairAddress: ({ factoryAddress, tokenA, tokenB }: {
factoryAddress: string;
tokenA: Token;
tokenB: Token;
}) => string;
export declare class Pair {

@@ -3,0 +8,0 @@ readonly liquidityToken: Token;

21

dist/v2-sdk.cjs.development.js

@@ -246,2 +246,14 @@ 'use strict';

var computePairAddress = function computePairAddress(_ref) {
var factoryAddress = _ref.factoryAddress,
tokenA = _ref.tokenA,
tokenB = _ref.tokenB;
var _ref2 = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA],
token0 = _ref2[0],
token1 = _ref2[1]; // does safety checks
return address.getCreate2Address(factoryAddress, solidity.keccak256(['bytes'], [solidity.pack(['address', 'address'], [token0.address, token1.address])]), INIT_CODE_HASH);
};
var Pair = /*#__PURE__*/function () {

@@ -256,5 +268,7 @@ function Pair(tokenAmountA, tokenAmountB) {

Pair.getAddress = function getAddress(tokenA, tokenB) {
var tokens = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA]; // does safety checks
return address.getCreate2Address(FACTORY_ADDRESS, solidity.keccak256(['bytes'], [solidity.pack(['address', 'address'], [tokens[0].address, tokens[1].address])]), INIT_CODE_HASH);
return computePairAddress({
factoryAddress: FACTORY_ADDRESS,
tokenA: tokenA,
tokenB: tokenB
});
}

@@ -939,4 +953,5 @@ /**

exports.Trade = Trade;
exports.computePairAddress = computePairAddress;
exports.inputOutputComparator = inputOutputComparator;
exports.tradeComparator = tradeComparator;
//# sourceMappingURL=v2-sdk.cjs.development.js.map

2

dist/v2-sdk.cjs.production.min.js

@@ -1,2 +0,2 @@

"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("jsbi")),n=require("@uniswap/sdk-core"),r=e(require("tiny-invariant")),o=require("@ethersproject/solidity"),i=require("@ethersproject/address"),u="0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f",a=t.BigInt(1e3),s=t.BigInt(0),c=t.BigInt(1),l=t.BigInt(5),p=t.BigInt(997),h=t.BigInt(1e3);function f(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t,n){return t&&f(e.prototype,t),n&&f(e,n),e}function v(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function T(e){return(T=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function m(e,t){return(m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function k(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function y(e,t,n){return(y=k()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&m(o,n.prototype),o}).apply(null,arguments)}function w(e){var t="function"==typeof Map?new Map:void 0;return(w=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return y(e,arguments,T(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),m(n,e)})(e)}function A(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function E(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return g(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,void 0):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}var I="setPrototypeOf"in Object,q=function(e){function t(){var n;return(n=e.call(this)||this).isInsufficientReservesError=!0,n.name=n.constructor.name,I&&Object.setPrototypeOf(A(n),(this instanceof t?this.constructor:void 0).prototype),n}return v(t,e),t}(w(Error)),x=function(e){function t(){var n;return(n=e.call(this)||this).isInsufficientInputAmountError=!0,n.name=n.constructor.name,I&&Object.setPrototypeOf(A(n),(this instanceof t?this.constructor:void 0).prototype),n}return v(t,e),t}(w(Error)),b=t.BigInt(0),O=t.BigInt(1),P=t.BigInt(2),_=t.BigInt(3);function C(e){var n,r=b;if(t.greaterThan(e,_))for(r=e,n=t.add(t.divide(e,P),O);t.lessThan(n,r);)r=n,n=t.divide(t.add(t.divide(e,n),n),P);else t.notEqual(e,b)&&(r=O);return r}var R=function(){function e(t,r){var o=t.token.sortsBefore(r.token)?[t,r]:[r,t];this.liquidityToken=new n.Token(o[0].token.chainId,e.getAddress(o[0].token,o[1].token),18,"UNI-V2","Uniswap V2"),this.tokenAmounts=o}e.getAddress=function(e,t){var n=e.sortsBefore(t)?[e,t]:[t,e];return i.getCreate2Address("0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",o.keccak256(["bytes"],[o.pack(["address","address"],[n[0].address,n[1].address])]),u)};var f=e.prototype;return f.involvesToken=function(e){return e.equals(this.token0)||e.equals(this.token1)},f.priceOf=function(e){return this.involvesToken(e)||r(!1),e.equals(this.token0)?this.token0Price:this.token1Price},f.reserveOf=function(e){return this.involvesToken(e)||r(!1),e.equals(this.token0)?this.reserve0:this.reserve1},f.getOutputAmount=function(o){if(this.involvesToken(o.token)||r(!1),t.equal(this.reserve0.raw,s)||t.equal(this.reserve1.raw,s))throw new q;var i=this.reserveOf(o.token),u=this.reserveOf(o.token.equals(this.token0)?this.token1:this.token0),a=t.multiply(o.raw,p),c=t.multiply(a,u.raw),l=t.add(t.multiply(i.raw,h),a),f=new n.TokenAmount(o.token.equals(this.token0)?this.token1:this.token0,t.divide(c,l));if(t.equal(f.raw,s))throw new x;return[f,new e(i.add(o),u.subtract(f))]},f.getInputAmount=function(o){if(this.involvesToken(o.token)||r(!1),t.equal(this.reserve0.raw,s)||t.equal(this.reserve1.raw,s)||t.greaterThanOrEqual(o.raw,this.reserveOf(o.token).raw))throw new q;var i=this.reserveOf(o.token),u=this.reserveOf(o.token.equals(this.token0)?this.token1:this.token0),a=t.multiply(t.multiply(u.raw,o.raw),h),l=t.multiply(t.subtract(i.raw,o.raw),p),f=new n.TokenAmount(o.token.equals(this.token0)?this.token1:this.token0,t.add(t.divide(a,l),c));return[f,new e(u.add(f),i.subtract(o))]},f.getLiquidityMinted=function(e,o,i){e.token.equals(this.liquidityToken)||r(!1);var u,c=o.token.sortsBefore(i.token)?[o,i]:[i,o];if(c[0].token.equals(this.token0)&&c[1].token.equals(this.token1)||r(!1),t.equal(e.raw,s))u=t.subtract(C(t.multiply(c[0].raw,c[1].raw)),a);else{var l=t.divide(t.multiply(c[0].raw,e.raw),this.reserve0.raw),p=t.divide(t.multiply(c[1].raw,e.raw),this.reserve1.raw);u=t.lessThanOrEqual(l,p)?l:p}if(!t.greaterThan(u,s))throw new x;return new n.TokenAmount(this.liquidityToken,u)},f.getLiquidityValue=function(e,o,i,u,a){var c;if(void 0===u&&(u=!1),this.involvesToken(e)||r(!1),o.token.equals(this.liquidityToken)||r(!1),i.token.equals(this.liquidityToken)||r(!1),t.lessThanOrEqual(i.raw,o.raw)||r(!1),u){a||r(!1);var p=t.BigInt(a);if(t.equal(p,s))c=o;else{var h=C(t.multiply(this.reserve0.raw,this.reserve1.raw)),f=C(p);if(t.greaterThan(h,f)){var d=t.multiply(o.raw,t.subtract(h,f)),v=t.add(t.multiply(h,l),f),T=t.divide(d,v);c=o.add(new n.TokenAmount(this.liquidityToken,T))}else c=o}}else c=o;return new n.TokenAmount(e,t.divide(t.multiply(i.raw,this.reserveOf(e).raw),c.raw))},d(e,[{key:"token0Price",get:function(){return new n.Price(this.token0,this.token1,this.tokenAmounts[0].raw,this.tokenAmounts[1].raw)}},{key:"token1Price",get:function(){return new n.Price(this.token1,this.token0,this.tokenAmounts[1].raw,this.tokenAmounts[0].raw)}},{key:"chainId",get:function(){return this.token0.chainId}},{key:"token0",get:function(){return this.tokenAmounts[0].token}},{key:"token1",get:function(){return this.tokenAmounts[1].token}},{key:"reserve0",get:function(){return this.tokenAmounts[0]}},{key:"reserve1",get:function(){return this.tokenAmounts[1]}}]),e}(),H=function(){function e(e,t,o){e.length>0||r(!1);var i=e[0].chainId;e.every((function(e){return e.chainId===i}))||r(!1);var u=n.WETH9[i];t instanceof n.Token&&e[0].involvesToken(t)||t===n.ETHER&&u&&e[0].involvesToken(u)||r(!1),void 0===o||o instanceof n.Token&&e[e.length-1].involvesToken(o)||o===n.ETHER&&u&&e[e.length-1].involvesToken(u)||r(!1);for(var a,s=[t instanceof n.Token?t:u],c=E(e.entries());!(a=c()).done;){var l=a.value,p=l[1],h=s[l[0]];h.equals(p.token0)||h.equals(p.token1)||r(!1);var f=h.equals(p.token0)?p.token1:p.token0;s.push(f)}this.pairs=e,this.path=s,this.input=t,this.output=null!=o?o:s[s.length-1]}return d(e,[{key:"midPrice",get:function(){for(var e,t=[],r=E(this.pairs.entries());!(e=r()).done;){var o=e.value,i=o[1];t.push(this.path[o[0]].equals(i.token0)?new n.Price(i.reserve0.currency,i.reserve1.currency,i.reserve0.raw,i.reserve1.raw):new n.Price(i.reserve1.currency,i.reserve0.currency,i.reserve1.raw,i.reserve0.raw))}return t.slice(1).reduce((function(e,t){return e.multiply(t)}),t[0])}},{key:"chainId",get:function(){return this.pairs[0].chainId}}]),e}();function B(e,t){return n.currencyEquals(e.inputAmount.currency,t.inputAmount.currency)||r(!1),n.currencyEquals(e.outputAmount.currency,t.outputAmount.currency)||r(!1),e.outputAmount.equalTo(t.outputAmount)?e.inputAmount.equalTo(t.inputAmount)?0:e.inputAmount.lessThan(t.inputAmount)?-1:1:e.outputAmount.lessThan(t.outputAmount)?1:-1}function S(e,t){var n=B(e,t);return 0!==n?n:e.priceImpact.lessThan(t.priceImpact)?-1:e.priceImpact.greaterThan(t.priceImpact)?1:e.route.path.length-t.route.path.length}function U(e,t){return e instanceof n.TokenAmount?e:e.currency===n.ETHER?new n.TokenAmount(n.WETH9[t],e.raw):void r(!1)}function j(e,t){return e instanceof n.Token?e:e===n.ETHER?n.WETH9[t]:void r(!1)}var F=function(){function e(e,t,o){var i,u,a,s=new Array(e.path.length),c=new Array(e.pairs.length);if(o===n.TradeType.EXACT_INPUT){n.currencyEquals(t.currency,e.input)||r(!1),s[0]=U(t,e.chainId);for(var l=0;l<e.path.length-1;l++){var p=e.pairs[l].getOutputAmount(s[l]),h=p[1];s[l+1]=p[0],c[l]=h}}else{n.currencyEquals(t.currency,e.output)||r(!1),s[s.length-1]=U(t,e.chainId);for(var f=e.path.length-1;f>0;f--){var d=e.pairs[f-1].getInputAmount(s[f]),v=d[1];s[f-1]=d[0],c[f-1]=v}}this.route=e,this.tradeType=o,this.inputAmount=o===n.TradeType.EXACT_INPUT?t:e.input===n.ETHER?n.CurrencyAmount.ether(s[0].raw):s[0],this.outputAmount=o===n.TradeType.EXACT_OUTPUT?t:e.output===n.ETHER?n.CurrencyAmount.ether(s[s.length-1].raw):s[s.length-1],this.executionPrice=new n.Price(this.inputAmount.currency,this.outputAmount.currency,this.inputAmount.raw,this.outputAmount.raw),this.nextMidPrice=new H(c,e.input).midPrice,this.priceImpact=(i=this.outputAmount,a=(u=e.midPrice.raw.multiply(this.inputAmount.raw)).subtract(i.raw).divide(u),new n.Percent(a.numerator,a.denominator))}e.exactIn=function(t,r){return new e(t,r,n.TradeType.EXACT_INPUT)},e.exactOut=function(t,r){return new e(t,r,n.TradeType.EXACT_OUTPUT)};var t=e.prototype;return t.minimumAmountOut=function(e){if(e.lessThan(s)&&r(!1),this.tradeType===n.TradeType.EXACT_OUTPUT)return this.outputAmount;var t=new n.Fraction(c).add(e).invert().multiply(this.outputAmount.raw).quotient;return this.outputAmount instanceof n.TokenAmount?new n.TokenAmount(this.outputAmount.token,t):n.CurrencyAmount.ether(t)},t.maximumAmountIn=function(e){if(e.lessThan(s)&&r(!1),this.tradeType===n.TradeType.EXACT_INPUT)return this.inputAmount;var t=new n.Fraction(c).add(e).multiply(this.inputAmount.raw).quotient;return this.inputAmount instanceof n.TokenAmount?new n.TokenAmount(this.inputAmount.token,t):n.CurrencyAmount.ether(t)},e.bestTradeExactIn=function(t,o,i,u,a,c,l){var p=void 0===u?{}:u,h=p.maxNumResults,f=void 0===h?3:h,d=p.maxHops,v=void 0===d?3:d;void 0===a&&(a=[]),void 0===c&&(c=o),void 0===l&&(l=[]),t.length>0||r(!1),v>0||r(!1),c===o||a.length>0||r(!1);var T=o instanceof n.TokenAmount?o.token.chainId:i instanceof n.Token?i.chainId:void 0;void 0===T&&r(!1);for(var m=U(o,T),k=j(i,T),y=0;y<t.length;y++){var w=t[y];if((w.token0.equals(m.token)||w.token1.equals(m.token))&&!w.reserve0.equalTo(s)&&!w.reserve1.equalTo(s)){var A=void 0;try{A=w.getOutputAmount(m)[0]}catch(e){if(e.isInsufficientInputAmountError)continue;throw e}if(A.token.equals(k))n.sortedInsert(l,new e(new H([].concat(a,[w]),c.currency,i),c,n.TradeType.EXACT_INPUT),f,S);else if(v>1&&t.length>1){var g=t.slice(0,y).concat(t.slice(y+1,t.length));e.bestTradeExactIn(g,A,i,{maxNumResults:f,maxHops:v-1},[].concat(a,[w]),c,l)}}}return l},e.bestTradeExactOut=function(t,o,i,u,a,c,l){var p=void 0===u?{}:u,h=p.maxNumResults,f=void 0===h?3:h,d=p.maxHops,v=void 0===d?3:d;void 0===a&&(a=[]),void 0===c&&(c=i),void 0===l&&(l=[]),t.length>0||r(!1),v>0||r(!1),c===i||a.length>0||r(!1);var T=i instanceof n.TokenAmount?i.token.chainId:o instanceof n.Token?o.chainId:void 0;void 0===T&&r(!1);for(var m=U(i,T),k=j(o,T),y=0;y<t.length;y++){var w=t[y];if((w.token0.equals(m.token)||w.token1.equals(m.token))&&!w.reserve0.equalTo(s)&&!w.reserve1.equalTo(s)){var A=void 0;try{A=w.getInputAmount(m)[0]}catch(e){if(e.isInsufficientReservesError)continue;throw e}if(A.token.equals(k))n.sortedInsert(l,new e(new H([w].concat(a),o,c.currency),c,n.TradeType.EXACT_OUTPUT),f,S);else if(v>1&&t.length>1){var g=t.slice(0,y).concat(t.slice(y+1,t.length));e.bestTradeExactOut(g,o,A,{maxNumResults:f,maxHops:v-1},[w].concat(a),c,l)}}}return l},e}();function N(e){return"0x"+e.raw.toString(16)}var D=function(){function e(){}return e.swapCallParameters=function(e,t){var o=e.inputAmount.currency===n.ETHER,i=e.outputAmount.currency===n.ETHER;o&&i&&r(!1),!("ttl"in t)||t.ttl>0||r(!1);var u,a,s,c=n.validateAndParseAddress(t.recipient),l=N(e.maximumAmountIn(t.allowedSlippage)),p=N(e.minimumAmountOut(t.allowedSlippage)),h=e.route.path.map((function(e){return e.address})),f="ttl"in t?"0x"+(Math.floor((new Date).getTime()/1e3)+t.ttl).toString(16):"0x"+t.deadline.toString(16),d=Boolean(t.feeOnTransfer);switch(e.tradeType){case n.TradeType.EXACT_INPUT:o?(u=d?"swapExactETHForTokensSupportingFeeOnTransferTokens":"swapExactETHForTokens",a=[p,h,c,f],s=l):i?(u=d?"swapExactTokensForETHSupportingFeeOnTransferTokens":"swapExactTokensForETH",a=[l,p,h,c,f],s="0x0"):(u=d?"swapExactTokensForTokensSupportingFeeOnTransferTokens":"swapExactTokensForTokens",a=[l,p,h,c,f],s="0x0");break;case n.TradeType.EXACT_OUTPUT:d&&r(!1),o?(u="swapETHForExactTokens",a=[p,h,c,f],s=l):i?(u="swapTokensForExactETH",a=[p,l,h,c,f],s="0x0"):(u="swapTokensForExactTokens",a=[p,l,h,c,f],s="0x0")}return{methodName:u,args:a,value:s}},e}();exports.JSBI=t,exports.FACTORY_ADDRESS="0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",exports.INIT_CODE_HASH=u,exports.InsufficientInputAmountError=x,exports.InsufficientReservesError=q,exports.MINIMUM_LIQUIDITY=a,exports.Pair=R,exports.Route=H,exports.Router=D,exports.Trade=F,exports.inputOutputComparator=B,exports.tradeComparator=S;
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=e(require("jsbi")),n=require("@uniswap/sdk-core"),r=e(require("tiny-invariant")),o=require("@ethersproject/solidity"),i=require("@ethersproject/address"),u="0x96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f",a=t.BigInt(1e3),s=t.BigInt(0),c=t.BigInt(1),l=t.BigInt(5),p=t.BigInt(997),f=t.BigInt(1e3);function h(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function d(e,t,n){return t&&h(e.prototype,t),n&&h(e,n),e}function v(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function T(e){return(T=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function k(e,t){return(k=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function m(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}function y(e,t,n){return(y=m()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&k(o,n.prototype),o}).apply(null,arguments)}function w(e){var t="function"==typeof Map?new Map:void 0;return(w=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return y(e,arguments,T(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),k(n,e)})(e)}function A(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function E(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return g(e,void 0);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?g(e,void 0):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=e[Symbol.iterator]()).next.bind(n)}var I="setPrototypeOf"in Object,q=function(e){function t(){var n;return(n=e.call(this)||this).isInsufficientReservesError=!0,n.name=n.constructor.name,I&&Object.setPrototypeOf(A(n),(this instanceof t?this.constructor:void 0).prototype),n}return v(t,e),t}(w(Error)),x=function(e){function t(){var n;return(n=e.call(this)||this).isInsufficientInputAmountError=!0,n.name=n.constructor.name,I&&Object.setPrototypeOf(A(n),(this instanceof t?this.constructor:void 0).prototype),n}return v(t,e),t}(w(Error)),b=t.BigInt(0),O=t.BigInt(1),P=t.BigInt(2),_=t.BigInt(3);function C(e){var n,r=b;if(t.greaterThan(e,_))for(r=e,n=t.add(t.divide(e,P),O);t.lessThan(n,r);)r=n,n=t.divide(t.add(t.divide(e,n),n),P);else t.notEqual(e,b)&&(r=O);return r}var R=function(e){var t=e.factoryAddress,n=e.tokenA,r=e.tokenB,a=n.sortsBefore(r)?[n,r]:[r,n];return i.getCreate2Address(t,o.keccak256(["bytes"],[o.pack(["address","address"],[a[0].address,a[1].address])]),u)},B=function(){function e(t,r){var o=t.token.sortsBefore(r.token)?[t,r]:[r,t];this.liquidityToken=new n.Token(o[0].token.chainId,e.getAddress(o[0].token,o[1].token),18,"UNI-V2","Uniswap V2"),this.tokenAmounts=o}e.getAddress=function(e,t){return R({factoryAddress:"0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",tokenA:e,tokenB:t})};var o=e.prototype;return o.involvesToken=function(e){return e.equals(this.token0)||e.equals(this.token1)},o.priceOf=function(e){return this.involvesToken(e)||r(!1),e.equals(this.token0)?this.token0Price:this.token1Price},o.reserveOf=function(e){return this.involvesToken(e)||r(!1),e.equals(this.token0)?this.reserve0:this.reserve1},o.getOutputAmount=function(o){if(this.involvesToken(o.token)||r(!1),t.equal(this.reserve0.raw,s)||t.equal(this.reserve1.raw,s))throw new q;var i=this.reserveOf(o.token),u=this.reserveOf(o.token.equals(this.token0)?this.token1:this.token0),a=t.multiply(o.raw,p),c=t.multiply(a,u.raw),l=t.add(t.multiply(i.raw,f),a),h=new n.TokenAmount(o.token.equals(this.token0)?this.token1:this.token0,t.divide(c,l));if(t.equal(h.raw,s))throw new x;return[h,new e(i.add(o),u.subtract(h))]},o.getInputAmount=function(o){if(this.involvesToken(o.token)||r(!1),t.equal(this.reserve0.raw,s)||t.equal(this.reserve1.raw,s)||t.greaterThanOrEqual(o.raw,this.reserveOf(o.token).raw))throw new q;var i=this.reserveOf(o.token),u=this.reserveOf(o.token.equals(this.token0)?this.token1:this.token0),a=t.multiply(t.multiply(u.raw,o.raw),f),l=t.multiply(t.subtract(i.raw,o.raw),p),h=new n.TokenAmount(o.token.equals(this.token0)?this.token1:this.token0,t.add(t.divide(a,l),c));return[h,new e(u.add(h),i.subtract(o))]},o.getLiquidityMinted=function(e,o,i){e.token.equals(this.liquidityToken)||r(!1);var u,c=o.token.sortsBefore(i.token)?[o,i]:[i,o];if(c[0].token.equals(this.token0)&&c[1].token.equals(this.token1)||r(!1),t.equal(e.raw,s))u=t.subtract(C(t.multiply(c[0].raw,c[1].raw)),a);else{var l=t.divide(t.multiply(c[0].raw,e.raw),this.reserve0.raw),p=t.divide(t.multiply(c[1].raw,e.raw),this.reserve1.raw);u=t.lessThanOrEqual(l,p)?l:p}if(!t.greaterThan(u,s))throw new x;return new n.TokenAmount(this.liquidityToken,u)},o.getLiquidityValue=function(e,o,i,u,a){var c;if(void 0===u&&(u=!1),this.involvesToken(e)||r(!1),o.token.equals(this.liquidityToken)||r(!1),i.token.equals(this.liquidityToken)||r(!1),t.lessThanOrEqual(i.raw,o.raw)||r(!1),u){a||r(!1);var p=t.BigInt(a);if(t.equal(p,s))c=o;else{var f=C(t.multiply(this.reserve0.raw,this.reserve1.raw)),h=C(p);if(t.greaterThan(f,h)){var d=t.multiply(o.raw,t.subtract(f,h)),v=t.add(t.multiply(f,l),h),T=t.divide(d,v);c=o.add(new n.TokenAmount(this.liquidityToken,T))}else c=o}}else c=o;return new n.TokenAmount(e,t.divide(t.multiply(i.raw,this.reserveOf(e).raw),c.raw))},d(e,[{key:"token0Price",get:function(){return new n.Price(this.token0,this.token1,this.tokenAmounts[0].raw,this.tokenAmounts[1].raw)}},{key:"token1Price",get:function(){return new n.Price(this.token1,this.token0,this.tokenAmounts[1].raw,this.tokenAmounts[0].raw)}},{key:"chainId",get:function(){return this.token0.chainId}},{key:"token0",get:function(){return this.tokenAmounts[0].token}},{key:"token1",get:function(){return this.tokenAmounts[1].token}},{key:"reserve0",get:function(){return this.tokenAmounts[0]}},{key:"reserve1",get:function(){return this.tokenAmounts[1]}}]),e}(),H=function(){function e(e,t,o){e.length>0||r(!1);var i=e[0].chainId;e.every((function(e){return e.chainId===i}))||r(!1);var u=n.WETH9[i];t instanceof n.Token&&e[0].involvesToken(t)||t===n.ETHER&&u&&e[0].involvesToken(u)||r(!1),void 0===o||o instanceof n.Token&&e[e.length-1].involvesToken(o)||o===n.ETHER&&u&&e[e.length-1].involvesToken(u)||r(!1);for(var a,s=[t instanceof n.Token?t:u],c=E(e.entries());!(a=c()).done;){var l=a.value,p=l[1],f=s[l[0]];f.equals(p.token0)||f.equals(p.token1)||r(!1);var h=f.equals(p.token0)?p.token1:p.token0;s.push(h)}this.pairs=e,this.path=s,this.input=t,this.output=null!=o?o:s[s.length-1]}return d(e,[{key:"midPrice",get:function(){for(var e,t=[],r=E(this.pairs.entries());!(e=r()).done;){var o=e.value,i=o[1];t.push(this.path[o[0]].equals(i.token0)?new n.Price(i.reserve0.currency,i.reserve1.currency,i.reserve0.raw,i.reserve1.raw):new n.Price(i.reserve1.currency,i.reserve0.currency,i.reserve1.raw,i.reserve0.raw))}return t.slice(1).reduce((function(e,t){return e.multiply(t)}),t[0])}},{key:"chainId",get:function(){return this.pairs[0].chainId}}]),e}();function S(e,t){return n.currencyEquals(e.inputAmount.currency,t.inputAmount.currency)||r(!1),n.currencyEquals(e.outputAmount.currency,t.outputAmount.currency)||r(!1),e.outputAmount.equalTo(t.outputAmount)?e.inputAmount.equalTo(t.inputAmount)?0:e.inputAmount.lessThan(t.inputAmount)?-1:1:e.outputAmount.lessThan(t.outputAmount)?1:-1}function U(e,t){var n=S(e,t);return 0!==n?n:e.priceImpact.lessThan(t.priceImpact)?-1:e.priceImpact.greaterThan(t.priceImpact)?1:e.route.path.length-t.route.path.length}function j(e,t){return e instanceof n.TokenAmount?e:e.currency===n.ETHER?new n.TokenAmount(n.WETH9[t],e.raw):void r(!1)}function F(e,t){return e instanceof n.Token?e:e===n.ETHER?n.WETH9[t]:void r(!1)}var N=function(){function e(e,t,o){var i,u,a,s=new Array(e.path.length),c=new Array(e.pairs.length);if(o===n.TradeType.EXACT_INPUT){n.currencyEquals(t.currency,e.input)||r(!1),s[0]=j(t,e.chainId);for(var l=0;l<e.path.length-1;l++){var p=e.pairs[l].getOutputAmount(s[l]),f=p[1];s[l+1]=p[0],c[l]=f}}else{n.currencyEquals(t.currency,e.output)||r(!1),s[s.length-1]=j(t,e.chainId);for(var h=e.path.length-1;h>0;h--){var d=e.pairs[h-1].getInputAmount(s[h]),v=d[1];s[h-1]=d[0],c[h-1]=v}}this.route=e,this.tradeType=o,this.inputAmount=o===n.TradeType.EXACT_INPUT?t:e.input===n.ETHER?n.CurrencyAmount.ether(s[0].raw):s[0],this.outputAmount=o===n.TradeType.EXACT_OUTPUT?t:e.output===n.ETHER?n.CurrencyAmount.ether(s[s.length-1].raw):s[s.length-1],this.executionPrice=new n.Price(this.inputAmount.currency,this.outputAmount.currency,this.inputAmount.raw,this.outputAmount.raw),this.nextMidPrice=new H(c,e.input).midPrice,this.priceImpact=(i=this.outputAmount,a=(u=e.midPrice.raw.multiply(this.inputAmount.raw)).subtract(i.raw).divide(u),new n.Percent(a.numerator,a.denominator))}e.exactIn=function(t,r){return new e(t,r,n.TradeType.EXACT_INPUT)},e.exactOut=function(t,r){return new e(t,r,n.TradeType.EXACT_OUTPUT)};var t=e.prototype;return t.minimumAmountOut=function(e){if(e.lessThan(s)&&r(!1),this.tradeType===n.TradeType.EXACT_OUTPUT)return this.outputAmount;var t=new n.Fraction(c).add(e).invert().multiply(this.outputAmount.raw).quotient;return this.outputAmount instanceof n.TokenAmount?new n.TokenAmount(this.outputAmount.token,t):n.CurrencyAmount.ether(t)},t.maximumAmountIn=function(e){if(e.lessThan(s)&&r(!1),this.tradeType===n.TradeType.EXACT_INPUT)return this.inputAmount;var t=new n.Fraction(c).add(e).multiply(this.inputAmount.raw).quotient;return this.inputAmount instanceof n.TokenAmount?new n.TokenAmount(this.inputAmount.token,t):n.CurrencyAmount.ether(t)},e.bestTradeExactIn=function(t,o,i,u,a,c,l){var p=void 0===u?{}:u,f=p.maxNumResults,h=void 0===f?3:f,d=p.maxHops,v=void 0===d?3:d;void 0===a&&(a=[]),void 0===c&&(c=o),void 0===l&&(l=[]),t.length>0||r(!1),v>0||r(!1),c===o||a.length>0||r(!1);var T=o instanceof n.TokenAmount?o.token.chainId:i instanceof n.Token?i.chainId:void 0;void 0===T&&r(!1);for(var k=j(o,T),m=F(i,T),y=0;y<t.length;y++){var w=t[y];if((w.token0.equals(k.token)||w.token1.equals(k.token))&&!w.reserve0.equalTo(s)&&!w.reserve1.equalTo(s)){var A=void 0;try{A=w.getOutputAmount(k)[0]}catch(e){if(e.isInsufficientInputAmountError)continue;throw e}if(A.token.equals(m))n.sortedInsert(l,new e(new H([].concat(a,[w]),c.currency,i),c,n.TradeType.EXACT_INPUT),h,U);else if(v>1&&t.length>1){var g=t.slice(0,y).concat(t.slice(y+1,t.length));e.bestTradeExactIn(g,A,i,{maxNumResults:h,maxHops:v-1},[].concat(a,[w]),c,l)}}}return l},e.bestTradeExactOut=function(t,o,i,u,a,c,l){var p=void 0===u?{}:u,f=p.maxNumResults,h=void 0===f?3:f,d=p.maxHops,v=void 0===d?3:d;void 0===a&&(a=[]),void 0===c&&(c=i),void 0===l&&(l=[]),t.length>0||r(!1),v>0||r(!1),c===i||a.length>0||r(!1);var T=i instanceof n.TokenAmount?i.token.chainId:o instanceof n.Token?o.chainId:void 0;void 0===T&&r(!1);for(var k=j(i,T),m=F(o,T),y=0;y<t.length;y++){var w=t[y];if((w.token0.equals(k.token)||w.token1.equals(k.token))&&!w.reserve0.equalTo(s)&&!w.reserve1.equalTo(s)){var A=void 0;try{A=w.getInputAmount(k)[0]}catch(e){if(e.isInsufficientReservesError)continue;throw e}if(A.token.equals(m))n.sortedInsert(l,new e(new H([w].concat(a),o,c.currency),c,n.TradeType.EXACT_OUTPUT),h,U);else if(v>1&&t.length>1){var g=t.slice(0,y).concat(t.slice(y+1,t.length));e.bestTradeExactOut(g,o,A,{maxNumResults:h,maxHops:v-1},[w].concat(a),c,l)}}}return l},e}();function D(e){return"0x"+e.raw.toString(16)}var X=function(){function e(){}return e.swapCallParameters=function(e,t){var o=e.inputAmount.currency===n.ETHER,i=e.outputAmount.currency===n.ETHER;o&&i&&r(!1),!("ttl"in t)||t.ttl>0||r(!1);var u,a,s,c=n.validateAndParseAddress(t.recipient),l=D(e.maximumAmountIn(t.allowedSlippage)),p=D(e.minimumAmountOut(t.allowedSlippage)),f=e.route.path.map((function(e){return e.address})),h="ttl"in t?"0x"+(Math.floor((new Date).getTime()/1e3)+t.ttl).toString(16):"0x"+t.deadline.toString(16),d=Boolean(t.feeOnTransfer);switch(e.tradeType){case n.TradeType.EXACT_INPUT:o?(u=d?"swapExactETHForTokensSupportingFeeOnTransferTokens":"swapExactETHForTokens",a=[p,f,c,h],s=l):i?(u=d?"swapExactTokensForETHSupportingFeeOnTransferTokens":"swapExactTokensForETH",a=[l,p,f,c,h],s="0x0"):(u=d?"swapExactTokensForTokensSupportingFeeOnTransferTokens":"swapExactTokensForTokens",a=[l,p,f,c,h],s="0x0");break;case n.TradeType.EXACT_OUTPUT:d&&r(!1),o?(u="swapETHForExactTokens",a=[p,f,c,h],s=l):i?(u="swapTokensForExactETH",a=[p,l,f,c,h],s="0x0"):(u="swapTokensForExactTokens",a=[p,l,f,c,h],s="0x0")}return{methodName:u,args:a,value:s}},e}();exports.JSBI=t,exports.FACTORY_ADDRESS="0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f",exports.INIT_CODE_HASH=u,exports.InsufficientInputAmountError=x,exports.InsufficientReservesError=q,exports.MINIMUM_LIQUIDITY=a,exports.Pair=B,exports.Route=H,exports.Router=X,exports.Trade=N,exports.computePairAddress=R,exports.inputOutputComparator=S,exports.tradeComparator=U;
//# sourceMappingURL=v2-sdk.cjs.production.min.js.map

@@ -241,2 +241,14 @@ import JSBI from 'jsbi';

var computePairAddress = function computePairAddress(_ref) {
var factoryAddress = _ref.factoryAddress,
tokenA = _ref.tokenA,
tokenB = _ref.tokenB;
var _ref2 = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA],
token0 = _ref2[0],
token1 = _ref2[1]; // does safety checks
return getCreate2Address(factoryAddress, keccak256(['bytes'], [pack(['address', 'address'], [token0.address, token1.address])]), INIT_CODE_HASH);
};
var Pair = /*#__PURE__*/function () {

@@ -251,5 +263,7 @@ function Pair(tokenAmountA, tokenAmountB) {

Pair.getAddress = function getAddress(tokenA, tokenB) {
var tokens = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA]; // does safety checks
return getCreate2Address(FACTORY_ADDRESS, keccak256(['bytes'], [pack(['address', 'address'], [tokens[0].address, tokens[1].address])]), INIT_CODE_HASH);
return computePairAddress({
factoryAddress: FACTORY_ADDRESS,
tokenA: tokenA,
tokenB: tokenB
});
}

@@ -924,3 +938,3 @@ /**

export { FACTORY_ADDRESS, INIT_CODE_HASH, InsufficientInputAmountError, InsufficientReservesError, MINIMUM_LIQUIDITY, Pair, Route, Router, Trade, inputOutputComparator, tradeComparator };
export { FACTORY_ADDRESS, INIT_CODE_HASH, InsufficientInputAmountError, InsufficientReservesError, MINIMUM_LIQUIDITY, Pair, Route, Router, Trade, computePairAddress, inputOutputComparator, tradeComparator };
//# sourceMappingURL=v2-sdk.esm.js.map
{
"name": "@uniswap/v2-sdk",
"license": "MIT",
"version": "1.0.4",
"version": "1.0.5",
"description": "🛠 An SDK for building applications on top of Uniswap V2",

@@ -6,0 +6,0 @@ "main": "dist/index.js",

Sorry, the diff of this file is not supported yet

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