@pancakeswap/sdk 2.4.3 → 3.0.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/constants.d.ts +8 -2
- package/dist/entities/token.d.ts +11 -1
- package/dist/sdk.cjs.development.js +38 -14
- package/dist/sdk.cjs.development.js.map +1 -1
- package/dist/sdk.cjs.production.min.js +1 -1
- package/dist/sdk.cjs.production.min.js.map +1 -1
- package/dist/sdk.esm.js +36 -14
- package/dist/sdk.esm.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Forked from the [Uniswap SDK](https://github.com/Uniswap/uniswap-v2-sdk/commit/a88048e9c4198a5bdaea00883ca00c8c8e582605).
|
|
4
4
|
|
|
5
|
-
You can refer to the Uniswap SDK documentation [uniswap.org](https://uniswap.org/
|
|
5
|
+
You can refer to the Uniswap SDK documentation [uniswap.org](https://docs.uniswap.org/sdk/2.0.0/).
|
|
6
6
|
|
|
7
7
|
## Running tests
|
|
8
8
|
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import JSBI from 'jsbi';
|
|
2
2
|
export declare type BigintIsh = JSBI | number | string;
|
|
3
3
|
export declare enum ChainId {
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
ETHEREUM = 1,
|
|
5
|
+
RINKEBY = 4,
|
|
6
|
+
BSC = 56,
|
|
7
|
+
BSC_TESTNET = 97
|
|
6
8
|
}
|
|
7
9
|
export declare enum TradeType {
|
|
8
10
|
EXACT_INPUT = 0,
|
|
@@ -15,11 +17,15 @@ export declare enum Rounding {
|
|
|
15
17
|
}
|
|
16
18
|
export declare const FACTORY_ADDRESS = "0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73";
|
|
17
19
|
export declare const FACTORY_ADDRESS_MAP: {
|
|
20
|
+
1: string;
|
|
21
|
+
4: string;
|
|
18
22
|
56: string;
|
|
19
23
|
97: string;
|
|
20
24
|
};
|
|
21
25
|
export declare const INIT_CODE_HASH = "0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5";
|
|
22
26
|
export declare const INIT_CODE_HASH_MAP: {
|
|
27
|
+
1: string;
|
|
28
|
+
4: string;
|
|
23
29
|
56: string;
|
|
24
30
|
97: string;
|
|
25
31
|
};
|
package/dist/entities/token.d.ts
CHANGED
|
@@ -25,7 +25,17 @@ export declare class Token extends Currency {
|
|
|
25
25
|
* Compares two currencies for equality
|
|
26
26
|
*/
|
|
27
27
|
export declare function currencyEquals(currencyA: Currency, currencyB: Currency): boolean;
|
|
28
|
-
export declare const
|
|
28
|
+
export declare const WETH9: {
|
|
29
|
+
1: Token;
|
|
30
|
+
4: Token;
|
|
31
|
+
};
|
|
32
|
+
export declare const WBNB: {
|
|
33
|
+
56: Token;
|
|
34
|
+
97: Token;
|
|
35
|
+
};
|
|
36
|
+
export declare const WNATIVE: {
|
|
37
|
+
1: Token;
|
|
38
|
+
4: Token;
|
|
29
39
|
56: Token;
|
|
30
40
|
97: Token;
|
|
31
41
|
};
|
|
@@ -19,8 +19,10 @@ var providers = require('@ethersproject/providers');
|
|
|
19
19
|
var _FACTORY_ADDRESS_MAP, _INIT_CODE_HASH_MAP, _SOLIDITY_TYPE_MAXIMA;
|
|
20
20
|
|
|
21
21
|
(function (ChainId) {
|
|
22
|
-
ChainId[ChainId["
|
|
23
|
-
ChainId[ChainId["
|
|
22
|
+
ChainId[ChainId["ETHEREUM"] = 1] = "ETHEREUM";
|
|
23
|
+
ChainId[ChainId["RINKEBY"] = 4] = "RINKEBY";
|
|
24
|
+
ChainId[ChainId["BSC"] = 56] = "BSC";
|
|
25
|
+
ChainId[ChainId["BSC_TESTNET"] = 97] = "BSC_TESTNET";
|
|
24
26
|
})(exports.ChainId || (exports.ChainId = {}));
|
|
25
27
|
|
|
26
28
|
(function (TradeType) {
|
|
@@ -35,9 +37,11 @@ var _FACTORY_ADDRESS_MAP, _INIT_CODE_HASH_MAP, _SOLIDITY_TYPE_MAXIMA;
|
|
|
35
37
|
})(exports.Rounding || (exports.Rounding = {}));
|
|
36
38
|
|
|
37
39
|
var FACTORY_ADDRESS = '0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73';
|
|
38
|
-
var
|
|
40
|
+
var FACTORY_ADDRESS_ETH = '0xD93801d7D3a368D94A3A32E97A20f7aC1948a5dB';
|
|
41
|
+
var FACTORY_ADDRESS_MAP = (_FACTORY_ADDRESS_MAP = {}, _FACTORY_ADDRESS_MAP[exports.ChainId.ETHEREUM] = FACTORY_ADDRESS_ETH, _FACTORY_ADDRESS_MAP[exports.ChainId.RINKEBY] = FACTORY_ADDRESS_ETH, _FACTORY_ADDRESS_MAP[exports.ChainId.BSC] = FACTORY_ADDRESS, _FACTORY_ADDRESS_MAP[exports.ChainId.BSC_TESTNET] = '0x6725f303b657a9451d8ba641348b6761a6cc7a17', _FACTORY_ADDRESS_MAP);
|
|
39
42
|
var INIT_CODE_HASH = '0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5';
|
|
40
|
-
var
|
|
43
|
+
var INIT_CODE_HASH_ETH = '0x57224589c67f3f30a6b0d7a1b54cf3153ab84563bc609ef41dfb34f8b2974d2d';
|
|
44
|
+
var INIT_CODE_HASH_MAP = (_INIT_CODE_HASH_MAP = {}, _INIT_CODE_HASH_MAP[exports.ChainId.ETHEREUM] = INIT_CODE_HASH_ETH, _INIT_CODE_HASH_MAP[exports.ChainId.RINKEBY] = INIT_CODE_HASH_ETH, _INIT_CODE_HASH_MAP[exports.ChainId.BSC] = INIT_CODE_HASH, _INIT_CODE_HASH_MAP[exports.ChainId.BSC_TESTNET] = '0xd0d4c4cd0848c93cb4fd1f498d7013ee6bfb25783ea21593d5834f5d250ece66', _INIT_CODE_HASH_MAP);
|
|
41
45
|
var MINIMUM_LIQUIDITY = /*#__PURE__*/JSBI.BigInt(1000); // exports for internal consumption
|
|
42
46
|
|
|
43
47
|
var ZERO = /*#__PURE__*/JSBI.BigInt(0);
|
|
@@ -373,7 +377,7 @@ function Currency(decimals, symbol, name) {
|
|
|
373
377
|
Currency.ETHER = /*#__PURE__*/new Currency(18, 'BNB', 'BNB');
|
|
374
378
|
var ETHER = Currency.ETHER;
|
|
375
379
|
|
|
376
|
-
var _WETH;
|
|
380
|
+
var _WETH, _WBNB, _WNATIVE;
|
|
377
381
|
/**
|
|
378
382
|
* Represents an ERC20 token with a unique address and some metadata.
|
|
379
383
|
*/
|
|
@@ -437,7 +441,9 @@ function currencyEquals(currencyA, currencyB) {
|
|
|
437
441
|
return currencyA === currencyB;
|
|
438
442
|
}
|
|
439
443
|
}
|
|
440
|
-
var
|
|
444
|
+
var WETH9 = (_WETH = {}, _WETH[exports.ChainId.ETHEREUM] = /*#__PURE__*/new Token(exports.ChainId.ETHEREUM, '0xc778417E063141139Fce010982780140Aa0cD5Ab', 18, 'WETH', 'Wrapped Ether', 'https://weth.io'), _WETH[exports.ChainId.RINKEBY] = /*#__PURE__*/new Token(exports.ChainId.RINKEBY, '0xc778417E063141139Fce010982780140Aa0cD5Ab', 18, 'WETH', 'Wrapped Ether', 'https://weth.io'), _WETH);
|
|
445
|
+
var WBNB = (_WBNB = {}, _WBNB[exports.ChainId.BSC] = /*#__PURE__*/new Token(exports.ChainId.BSC, '0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c', 18, 'WBNB', 'Wrapped BNB', 'https://www.binance.org'), _WBNB[exports.ChainId.BSC_TESTNET] = /*#__PURE__*/new Token(exports.ChainId.BSC_TESTNET, '0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd', 18, 'WBNB', 'Wrapped BNB', 'https://www.binance.org'), _WBNB);
|
|
446
|
+
var WNATIVE = (_WNATIVE = {}, _WNATIVE[exports.ChainId.ETHEREUM] = WETH9[exports.ChainId.ETHEREUM], _WNATIVE[exports.ChainId.RINKEBY] = WETH9[exports.ChainId.RINKEBY], _WNATIVE[exports.ChainId.BSC] = WBNB[exports.ChainId.BSC], _WNATIVE[exports.ChainId.BSC_TESTNET] = WBNB[exports.ChainId.BSC_TESTNET], _WNATIVE);
|
|
441
447
|
|
|
442
448
|
var _toSignificantRoundin, _toFixedRounding;
|
|
443
449
|
var Decimal = /*#__PURE__*/toFormat(_Decimal);
|
|
@@ -764,6 +770,12 @@ var Price = /*#__PURE__*/function (_Fraction) {
|
|
|
764
770
|
return Price;
|
|
765
771
|
}(Fraction);
|
|
766
772
|
|
|
773
|
+
var PAIR_ADDRESS_CACHE = {};
|
|
774
|
+
|
|
775
|
+
var composeKey = function composeKey(token0, token1) {
|
|
776
|
+
return token0.chainId + "-" + token0.address + "-" + token1.address;
|
|
777
|
+
};
|
|
778
|
+
|
|
767
779
|
var Pair = /*#__PURE__*/function () {
|
|
768
780
|
function Pair(tokenAmountA, tokenAmountB) {
|
|
769
781
|
var tokenAmounts = tokenAmountA.token.sortsBefore(tokenAmountB.token) // does safety checks
|
|
@@ -773,12 +785,22 @@ var Pair = /*#__PURE__*/function () {
|
|
|
773
785
|
}
|
|
774
786
|
|
|
775
787
|
Pair.getAddress = function getAddress(tokenA, tokenB) {
|
|
788
|
+
var _PAIR_ADDRESS_CACHE;
|
|
789
|
+
|
|
776
790
|
var _ref = tokenA.sortsBefore(tokenB) ? [tokenA, tokenB] : [tokenB, tokenA],
|
|
777
791
|
token0 = _ref[0],
|
|
778
792
|
token1 = _ref[1]; // does safety checks
|
|
779
793
|
|
|
780
794
|
|
|
781
|
-
|
|
795
|
+
var key = composeKey(token0, token1);
|
|
796
|
+
|
|
797
|
+
if (((_PAIR_ADDRESS_CACHE = PAIR_ADDRESS_CACHE) === null || _PAIR_ADDRESS_CACHE === void 0 ? void 0 : _PAIR_ADDRESS_CACHE[key]) === undefined) {
|
|
798
|
+
var _extends2;
|
|
799
|
+
|
|
800
|
+
PAIR_ADDRESS_CACHE = _extends({}, PAIR_ADDRESS_CACHE, (_extends2 = {}, _extends2[key] = address.getCreate2Address(FACTORY_ADDRESS_MAP[token0.chainId], solidity.keccak256(['bytes'], [solidity.pack(['address', 'address'], [token0.address, token1.address])]), INIT_CODE_HASH_MAP[token0.chainId]), _extends2));
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
return PAIR_ADDRESS_CACHE[key];
|
|
782
804
|
}
|
|
783
805
|
/**
|
|
784
806
|
* Returns true if the token is either token0 or token1
|
|
@@ -959,9 +981,9 @@ var Route = /*#__PURE__*/function () {
|
|
|
959
981
|
!pairs.every(function (pair) {
|
|
960
982
|
return pair.chainId === pairs[0].chainId;
|
|
961
983
|
}) ? invariant(false, 'CHAIN_IDS') : void 0;
|
|
962
|
-
!(input instanceof Token && pairs[0].involvesToken(input) || input === ETHER && pairs[0].involvesToken(
|
|
963
|
-
!(typeof output === 'undefined' || output instanceof Token && pairs[pairs.length - 1].involvesToken(output) || output === ETHER && pairs[pairs.length - 1].involvesToken(
|
|
964
|
-
var path = [input instanceof Token ? input :
|
|
984
|
+
!(input instanceof Token && pairs[0].involvesToken(input) || input === ETHER && pairs[0].involvesToken(WNATIVE[pairs[0].chainId])) ? invariant(false, 'INPUT') : void 0;
|
|
985
|
+
!(typeof output === 'undefined' || output instanceof Token && pairs[pairs.length - 1].involvesToken(output) || output === ETHER && pairs[pairs.length - 1].involvesToken(WNATIVE[pairs[0].chainId])) ? invariant(false, 'OUTPUT') : void 0;
|
|
986
|
+
var path = [input instanceof Token ? input : WNATIVE[pairs[0].chainId]];
|
|
965
987
|
|
|
966
988
|
for (var _iterator = _createForOfIteratorHelperLoose(pairs.entries()), _step; !(_step = _iterator()).done;) {
|
|
967
989
|
var _step$value = _step.value,
|
|
@@ -1089,13 +1111,13 @@ function tradeComparator(a, b) {
|
|
|
1089
1111
|
|
|
1090
1112
|
function wrappedAmount(currencyAmount, chainId) {
|
|
1091
1113
|
if (currencyAmount instanceof TokenAmount) return currencyAmount;
|
|
1092
|
-
if (currencyAmount.currency === ETHER) return new TokenAmount(
|
|
1114
|
+
if (currencyAmount.currency === ETHER) return new TokenAmount(WNATIVE[chainId], currencyAmount.raw);
|
|
1093
1115
|
invariant(false, 'CURRENCY') ;
|
|
1094
1116
|
}
|
|
1095
1117
|
|
|
1096
1118
|
function wrappedCurrency(currency, chainId) {
|
|
1097
1119
|
if (currency instanceof Token) return currency;
|
|
1098
|
-
if (currency === ETHER) return
|
|
1120
|
+
if (currency === ETHER) return WNATIVE[chainId];
|
|
1099
1121
|
invariant(false, 'CURRENCY') ;
|
|
1100
1122
|
}
|
|
1101
1123
|
/**
|
|
@@ -2227,7 +2249,7 @@ var ERC20 = [
|
|
|
2227
2249
|
];
|
|
2228
2250
|
|
|
2229
2251
|
var _TOKEN_DECIMALS_CACHE;
|
|
2230
|
-
var TOKEN_DECIMALS_CACHE = (_TOKEN_DECIMALS_CACHE = {}, _TOKEN_DECIMALS_CACHE[exports.ChainId.
|
|
2252
|
+
var TOKEN_DECIMALS_CACHE = (_TOKEN_DECIMALS_CACHE = {}, _TOKEN_DECIMALS_CACHE[exports.ChainId.BSC] = {
|
|
2231
2253
|
'0xE0B7927c4aF23765Cb51314A0E0521A9645F0E2A': 9 // DGD
|
|
2232
2254
|
|
|
2233
2255
|
}, _TOKEN_DECIMALS_CACHE);
|
|
@@ -2320,7 +2342,9 @@ exports.Router = Router;
|
|
|
2320
2342
|
exports.Token = Token;
|
|
2321
2343
|
exports.TokenAmount = TokenAmount;
|
|
2322
2344
|
exports.Trade = Trade;
|
|
2323
|
-
exports.
|
|
2345
|
+
exports.WBNB = WBNB;
|
|
2346
|
+
exports.WETH9 = WETH9;
|
|
2347
|
+
exports.WNATIVE = WNATIVE;
|
|
2324
2348
|
exports.currencyEquals = currencyEquals;
|
|
2325
2349
|
exports.inputOutputComparator = inputOutputComparator;
|
|
2326
2350
|
exports.tradeComparator = tradeComparator;
|