@rabby-wallet/rabby-swap 0.0.27-alpha.0 → 0.0.27

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/dist/consts.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const enum DEX_ENUM {
1
+ export declare enum DEX_ENUM {
2
2
  ONEINCH = "1inch",
3
3
  PARASWAP = "ParaSwap",
4
4
  ZEROXAPI = "0xAPI",
package/dist/consts.js CHANGED
@@ -1 +1,9 @@
1
- export {};
1
+ export var DEX_ENUM;
2
+ (function (DEX_ENUM) {
3
+ DEX_ENUM["ONEINCH"] = "1inch";
4
+ DEX_ENUM["PARASWAP"] = "ParaSwap";
5
+ DEX_ENUM["ZEROXAPI"] = "0xAPI";
6
+ DEX_ENUM["WRAPTOKEN"] = "WrapToken";
7
+ DEX_ENUM["OPENOCEAN"] = "OpenOcean";
8
+ DEX_ENUM["UNISWAP"] = "Uniswap";
9
+ })(DEX_ENUM || (DEX_ENUM = {}));
@@ -2,6 +2,7 @@ import { Interface } from "@ethersproject/abi";
2
2
  import { CHAINS_ENUM, CHAINS } from "@debank/common";
3
3
  import { generateGetQuote, isSameAddress } from "../utils";
4
4
  import { ZeroXABI } from "../abi";
5
+ import { DEX_ENUM } from "../consts";
5
6
  const NATIVE_TOKEN = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
6
7
  export const SUPPORT_CHAINS = [
7
8
  CHAINS_ENUM.ETH,
@@ -16,7 +17,7 @@ export const SUPPORT_CHAINS = [
16
17
  export const getQuote = generateGetQuote({
17
18
  SUPPORT_CHAINS,
18
19
  id: "matcha",
19
- dex: "0xAPI" /* DEX_ENUM.ZEROXAPI */,
20
+ dex: DEX_ENUM.ZEROXAPI,
20
21
  });
21
22
  export const decodeCalldata = (tx) => {
22
23
  const chain = Object.values(CHAINS).find((item) => item.id === tx.chainId);
@@ -2,6 +2,7 @@ import { CHAINS_ENUM, CHAINS } from "@debank/common";
2
2
  import { Interface } from "@ethersproject/abi";
3
3
  import { generateGetQuote, isSameAddress } from "../utils";
4
4
  import { OneInchABI } from "../abi";
5
+ import { DEX_ENUM } from "../consts";
5
6
  const NATIVE_TOKEN = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
6
7
  export const SUPPORT_CHAINS = [
7
8
  CHAINS_ENUM.ETH,
@@ -17,7 +18,7 @@ export const SUPPORT_CHAINS = [
17
18
  export const getQuote = generateGetQuote({
18
19
  SUPPORT_CHAINS,
19
20
  id: "1inch",
20
- dex: "1inch" /* DEX_ENUM.ONEINCH */,
21
+ dex: DEX_ENUM.ONEINCH,
21
22
  });
22
23
  export const decodeCalldata = (tx) => {
23
24
  const chain = Object.values(CHAINS).find((item) => item.id === tx.chainId);
@@ -2,6 +2,7 @@ import { Interface } from "@ethersproject/abi";
2
2
  import { CHAINS_ENUM, CHAINS } from "@debank/common";
3
3
  import { generateGetQuote, isSameAddress } from "../utils";
4
4
  import { OpenOceanABI } from "../abi";
5
+ import { DEX_ENUM } from "../consts";
5
6
  const NATIVE_TOKENS = {
6
7
  [CHAINS_ENUM.ETH]: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
7
8
  [CHAINS_ENUM.POLYGON]: "0x0000000000000000000000000000000000001010",
@@ -44,7 +45,7 @@ export const SUPPORT_CHAINS = [
44
45
  export const getQuote = generateGetQuote({
45
46
  SUPPORT_CHAINS,
46
47
  id: "openocean",
47
- dex: "OpenOcean" /* DEX_ENUM.OPENOCEAN */,
48
+ dex: DEX_ENUM.OPENOCEAN,
48
49
  });
49
50
  export const decodeCalldata = (tx) => {
50
51
  const chain = Object.values(CHAINS).find((item) => item.id === tx.chainId);
@@ -2,6 +2,7 @@ import { Interface } from "@ethersproject/abi";
2
2
  import { CHAINS_ENUM, CHAINS } from "@debank/common";
3
3
  import { generateGetQuote, isSameAddress } from "../utils";
4
4
  import { ParaSwapABI } from "../abi";
5
+ import { DEX_ENUM } from "../consts";
5
6
  const NATIVE_TOKEN = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
6
7
  export const SUPPORT_CHAINS = [
7
8
  CHAINS_ENUM.ETH,
@@ -15,7 +16,7 @@ export const SUPPORT_CHAINS = [
15
16
  export const getQuote = generateGetQuote({
16
17
  SUPPORT_CHAINS,
17
18
  id: "paraswap",
18
- dex: "ParaSwap" /* DEX_ENUM.PARASWAP */,
19
+ dex: DEX_ENUM.PARASWAP,
19
20
  });
20
21
  export const decodeCalldata = (tx) => {
21
22
  const chain = Object.values(CHAINS).find((item) => item.id === tx.chainId);
@@ -2,6 +2,7 @@ import { CHAINS_ENUM, CHAINS } from "@debank/common";
2
2
  import { Interface } from "@ethersproject/abi";
3
3
  import { generateGetQuote } from "../utils";
4
4
  import { UniswapABI } from "../abi";
5
+ import { DEX_ENUM } from "../consts";
5
6
  export const SUPPORT_CHAINS = [
6
7
  CHAINS_ENUM.ETH,
7
8
  CHAINS_ENUM.POLYGON,
@@ -11,7 +12,7 @@ export const SUPPORT_CHAINS = [
11
12
  export const getQuote = generateGetQuote({
12
13
  SUPPORT_CHAINS,
13
14
  id: "uniswap3",
14
- dex: "Uniswap" /* DEX_ENUM.UNISWAP */,
15
+ dex: DEX_ENUM.UNISWAP,
15
16
  });
16
17
  export const decodeCalldata = (tx) => {
17
18
  var _a, _b, _c;
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  import { WrapTokenAddressMap, DEX_SUPPORT_CHAINS, DEX_ROUTER_WHITELIST, DEX_SPENDER_WHITELIST, } from "./list";
2
2
  import { getQuote } from "./quote";
3
- export { WrapTokenAddressMap, DEX_SUPPORT_CHAINS, getQuote, DEX_ROUTER_WHITELIST, DEX_SPENDER_WHITELIST, };
3
+ import { DEX_ENUM } from "./consts";
4
+ export { WrapTokenAddressMap, DEX_ENUM, DEX_SUPPORT_CHAINS, getQuote, DEX_ROUTER_WHITELIST, DEX_SPENDER_WHITELIST, };
package/dist/list.js CHANGED
@@ -5,6 +5,7 @@ import { SUPPORT_CHAINS as oneInchSupportChains } from "./dexs/1inch";
5
5
  import { SUPPORT_CHAINS as paraswapSupportChains } from "./dexs/paraswap";
6
6
  import { SUPPORT_CHAINS as openOceanSupportChains } from "./dexs/openocean";
7
7
  import { SUPPORT_CHAINS as uniswapSupportChains } from "./dexs/uniswap";
8
+ import { DEX_ENUM } from "./consts";
8
9
  export const WrapTokenAddressMap = {
9
10
  [CHAINS_ENUM.ETH]: "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
10
11
  [CHAINS_ENUM.BSC]: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
@@ -17,15 +18,15 @@ export const WrapTokenAddressMap = {
17
18
  [CHAINS_ENUM.GNOSIS]: "0xe91d153e0b41518a2ce8dd3d7944fa863463a97d",
18
19
  };
19
20
  export const DEX_SUPPORT_CHAINS = {
20
- ["WrapToken" /* DEX_ENUM.WRAPTOKEN */]: wrapTokenSupportChains,
21
- ["1inch" /* DEX_ENUM.ONEINCH */]: oneInchSupportChains,
22
- ["ParaSwap" /* DEX_ENUM.PARASWAP */]: paraswapSupportChains,
23
- ["0xAPI" /* DEX_ENUM.ZEROXAPI */]: zeroXSupportChains,
24
- ["OpenOcean" /* DEX_ENUM.OPENOCEAN */]: openOceanSupportChains,
25
- ["Uniswap" /* DEX_ENUM.UNISWAP */]: uniswapSupportChains,
21
+ [DEX_ENUM.WRAPTOKEN]: wrapTokenSupportChains,
22
+ [DEX_ENUM.ONEINCH]: oneInchSupportChains,
23
+ [DEX_ENUM.PARASWAP]: paraswapSupportChains,
24
+ [DEX_ENUM.ZEROXAPI]: zeroXSupportChains,
25
+ [DEX_ENUM.OPENOCEAN]: openOceanSupportChains,
26
+ [DEX_ENUM.UNISWAP]: uniswapSupportChains,
26
27
  };
27
28
  export const DEX_ROUTER_WHITELIST = {
28
- ["1inch" /* DEX_ENUM.ONEINCH */]: {
29
+ [DEX_ENUM.ONEINCH]: {
29
30
  [CHAINS_ENUM.ETH]: "0x1111111254eeb25477b68fb85ed929f73a960582",
30
31
  [CHAINS_ENUM.POLYGON]: "0x1111111254eeb25477b68fb85ed929f73a960582",
31
32
  [CHAINS_ENUM.BSC]: "0x1111111254eeb25477b68fb85ed929f73a960582",
@@ -37,7 +38,7 @@ export const DEX_ROUTER_WHITELIST = {
37
38
  [CHAINS_ENUM.GNOSIS]: "0x1111111254eeb25477b68fb85ed929f73a960582",
38
39
  [CHAINS_ENUM.CELO]: "0x1111111254eeb25477b68fb85ed929f73a960582",
39
40
  },
40
- ["ParaSwap" /* DEX_ENUM.PARASWAP */]: {
41
+ [DEX_ENUM.PARASWAP]: {
41
42
  [CHAINS_ENUM.ETH]: "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
42
43
  [CHAINS_ENUM.POLYGON]: "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
43
44
  [CHAINS_ENUM.BSC]: "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
@@ -46,7 +47,7 @@ export const DEX_ROUTER_WHITELIST = {
46
47
  [CHAINS_ENUM.ARBITRUM]: "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
47
48
  [CHAINS_ENUM.OP]: "0xdef171fe48cf0115b1d80b88dc8eab59176fee57",
48
49
  },
49
- ["0xAPI" /* DEX_ENUM.ZEROXAPI */]: {
50
+ [DEX_ENUM.ZEROXAPI]: {
50
51
  [CHAINS_ENUM.ETH]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
51
52
  [CHAINS_ENUM.POLYGON]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
52
53
  [CHAINS_ENUM.BSC]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
@@ -56,7 +57,7 @@ export const DEX_ROUTER_WHITELIST = {
56
57
  [CHAINS_ENUM.AVAX]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
57
58
  [CHAINS_ENUM.ARBITRUM]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
58
59
  },
59
- ["OpenOcean" /* DEX_ENUM.OPENOCEAN */]: {
60
+ [DEX_ENUM.OPENOCEAN]: {
60
61
  [CHAINS_ENUM.ETH]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
61
62
  [CHAINS_ENUM.POLYGON]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
62
63
  [CHAINS_ENUM.BSC]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
@@ -71,7 +72,7 @@ export const DEX_ROUTER_WHITELIST = {
71
72
  [CHAINS_ENUM.KAVA]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
72
73
  [CHAINS_ENUM.METIS]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
73
74
  },
74
- ["Uniswap" /* DEX_ENUM.UNISWAP */]: {
75
+ [DEX_ENUM.UNISWAP]: {
75
76
  [CHAINS_ENUM.ETH]: "0xe592427a0aece92de3edee1f18e0157c05861564",
76
77
  [CHAINS_ENUM.POLYGON]: "0xe592427a0aece92de3edee1f18e0157c05861564",
77
78
  [CHAINS_ENUM.BSC]: "0xe592427a0aece92de3edee1f18e0157c05861564",
@@ -80,7 +81,7 @@ export const DEX_ROUTER_WHITELIST = {
80
81
  },
81
82
  };
82
83
  export const DEX_SPENDER_WHITELIST = {
83
- ["1inch" /* DEX_ENUM.ONEINCH */]: {
84
+ [DEX_ENUM.ONEINCH]: {
84
85
  [CHAINS_ENUM.ETH]: "0x1111111254eeb25477b68fb85ed929f73a960582",
85
86
  [CHAINS_ENUM.POLYGON]: "0x1111111254eeb25477b68fb85ed929f73a960582",
86
87
  [CHAINS_ENUM.BSC]: "0x1111111254eeb25477b68fb85ed929f73a960582",
@@ -92,7 +93,7 @@ export const DEX_SPENDER_WHITELIST = {
92
93
  [CHAINS_ENUM.GNOSIS]: "0x1111111254eeb25477b68fb85ed929f73a960582",
93
94
  [CHAINS_ENUM.CELO]: "0x1111111254eeb25477b68fb85ed929f73a960582",
94
95
  },
95
- ["ParaSwap" /* DEX_ENUM.PARASWAP */]: {
96
+ [DEX_ENUM.PARASWAP]: {
96
97
  [CHAINS_ENUM.ETH]: "0x216b4b4ba9f3e719726886d34a177484278bfcae",
97
98
  [CHAINS_ENUM.POLYGON]: "0x216b4b4ba9f3e719726886d34a177484278bfcae",
98
99
  [CHAINS_ENUM.BSC]: "0x216b4b4ba9f3e719726886d34a177484278bfcae",
@@ -101,7 +102,7 @@ export const DEX_SPENDER_WHITELIST = {
101
102
  [CHAINS_ENUM.OP]: "0x216b4b4ba9f3e719726886d34a177484278bfcae",
102
103
  [CHAINS_ENUM.ARBITRUM]: "0x216b4b4ba9f3e719726886d34a177484278bfcae",
103
104
  },
104
- ["0xAPI" /* DEX_ENUM.ZEROXAPI */]: {
105
+ [DEX_ENUM.ZEROXAPI]: {
105
106
  [CHAINS_ENUM.ETH]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
106
107
  [CHAINS_ENUM.POLYGON]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
107
108
  [CHAINS_ENUM.BSC]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
@@ -111,7 +112,7 @@ export const DEX_SPENDER_WHITELIST = {
111
112
  [CHAINS_ENUM.AVAX]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
112
113
  [CHAINS_ENUM.ARBITRUM]: "0xdef1c0ded9bec7f1a1670819833240f027b25eff",
113
114
  },
114
- ["OpenOcean" /* DEX_ENUM.OPENOCEAN */]: {
115
+ [DEX_ENUM.OPENOCEAN]: {
115
116
  [CHAINS_ENUM.ETH]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
116
117
  [CHAINS_ENUM.POLYGON]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
117
118
  [CHAINS_ENUM.BSC]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
@@ -126,7 +127,7 @@ export const DEX_SPENDER_WHITELIST = {
126
127
  [CHAINS_ENUM.KAVA]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
127
128
  [CHAINS_ENUM.METIS]: "0x6352a56caadC4F1E25CD6c75970Fa768A3304e64",
128
129
  },
129
- ["Uniswap" /* DEX_ENUM.UNISWAP */]: {
130
+ [DEX_ENUM.UNISWAP]: {
130
131
  [CHAINS_ENUM.ETH]: "0xe592427a0aece92de3edee1f18e0157c05861564",
131
132
  [CHAINS_ENUM.POLYGON]: "0xe592427a0aece92de3edee1f18e0157c05861564",
132
133
  [CHAINS_ENUM.BSC]: "0xe592427a0aece92de3edee1f18e0157c05861564",
package/dist/quote.js CHANGED
@@ -7,6 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
+ import { DEX_ENUM } from "./consts";
10
11
  import { getQuote as wrapTokenGetQuote } from "./dexs/wrapToken";
11
12
  import { getQuote as oneInchGetQuote, decodeCalldata as oneInchDecodeCalldata, } from "./dexs/1inch";
12
13
  import { getQuote as zeroXGetQuote, decodeCalldata as zeroXDecodeCalldata, } from "./dexs/0xapi";
@@ -15,17 +16,17 @@ import { getQuote as openOceanGetQuote, decodeCalldata as openOceanDecodeCalldat
15
16
  import { getQuote as uniswapGetQuote, decodeCalldata as uniswapDecodeCalldata, } from "./dexs/uniswap";
16
17
  export const getQuote = (id, params, api) => __awaiter(void 0, void 0, void 0, function* () {
17
18
  switch (id) {
18
- case "WrapToken" /* DEX_ENUM.WRAPTOKEN */:
19
+ case DEX_ENUM.WRAPTOKEN:
19
20
  return yield wrapTokenGetQuote(params);
20
- case "1inch" /* DEX_ENUM.ONEINCH */:
21
+ case DEX_ENUM.ONEINCH:
21
22
  return yield oneInchGetQuote(params, api);
22
- case "ParaSwap" /* DEX_ENUM.PARASWAP */:
23
+ case DEX_ENUM.PARASWAP:
23
24
  return yield paraSwapGetQuote(params, api);
24
- case "0xAPI" /* DEX_ENUM.ZEROXAPI */:
25
+ case DEX_ENUM.ZEROXAPI:
25
26
  return yield zeroXGetQuote(params, api);
26
- case "OpenOcean" /* DEX_ENUM.OPENOCEAN */:
27
+ case DEX_ENUM.OPENOCEAN:
27
28
  return yield openOceanGetQuote(params, api);
28
- case "Uniswap" /* DEX_ENUM.UNISWAP */:
29
+ case DEX_ENUM.UNISWAP:
29
30
  return yield uniswapGetQuote(params, api);
30
31
  default:
31
32
  throw new Error(`${id} is not supported!`);
@@ -33,15 +34,15 @@ export const getQuote = (id, params, api) => __awaiter(void 0, void 0, void 0, f
33
34
  });
34
35
  export const decodeCalldata = (id, tx) => {
35
36
  switch (id) {
36
- case "1inch" /* DEX_ENUM.ONEINCH */:
37
+ case DEX_ENUM.ONEINCH:
37
38
  return oneInchDecodeCalldata(tx);
38
- case "ParaSwap" /* DEX_ENUM.PARASWAP */:
39
+ case DEX_ENUM.PARASWAP:
39
40
  return paraSwapDecodeCalldata(tx);
40
- case "0xAPI" /* DEX_ENUM.ZEROXAPI */:
41
+ case DEX_ENUM.ZEROXAPI:
41
42
  return zeroXDecodeCalldata(tx);
42
- case "OpenOcean" /* DEX_ENUM.OPENOCEAN */:
43
+ case DEX_ENUM.OPENOCEAN:
43
44
  return openOceanDecodeCalldata(tx);
44
- case "Uniswap" /* DEX_ENUM.UNISWAP */:
45
+ case DEX_ENUM.UNISWAP:
45
46
  return uniswapDecodeCalldata(tx);
46
47
  default:
47
48
  throw new Error(`${id} is not supported!`);
package/dist/utils.js CHANGED
@@ -8,6 +8,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { CHAINS, CHAINS_ENUM } from "@debank/common";
11
+ import { DEX_ENUM } from "./consts";
12
+ import { DEX_SPENDER_WHITELIST } from "./list";
11
13
  export const isSameAddress = (addr1, addr2) => {
12
14
  if (typeof addr1 !== "string" || typeof addr2 !== "string")
13
15
  return false;
@@ -42,6 +44,8 @@ export const generateGetQuote = ({ SUPPORT_CHAINS, id, dex, }) => (options, api)
42
44
  toToken: data.receive_token.id,
43
45
  toTokenAmount: data.receive_token_raw_amount + "",
44
46
  toTokenDecimals: data.receive_token.decimals,
45
- spender: data.dex_swap_to,
47
+ spender: dex === DEX_ENUM.PARASWAP
48
+ ? DEX_SPENDER_WHITELIST[DEX_ENUM.PARASWAP][options.chain]
49
+ : data.dex_swap_to,
46
50
  };
47
51
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rabby-wallet/rabby-swap",
3
- "version": "0.0.27-alpha.0",
3
+ "version": "0.0.27",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {