@aurigami/sdk 1.23.1 → 1.24.1

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 (123) hide show
  1. package/dist/SDK.d.ts +48 -65
  2. package/dist/SDK.js +165 -0
  3. package/dist/abis/index.d.ts +18 -18
  4. package/dist/abis/index.js +39 -0
  5. package/dist/consts/constants.d.ts +139 -139
  6. package/dist/consts/constants.js +185 -0
  7. package/dist/consts/decimals.d.ts +1 -1
  8. package/dist/consts/decimals.js +35 -0
  9. package/dist/consts/deployments.d.ts +3 -3
  10. package/dist/consts/deployments.js +9 -0
  11. package/dist/consts/dummy.d.ts +13 -13
  12. package/dist/consts/dummy.js +43 -0
  13. package/dist/consts/index.d.ts +5 -5
  14. package/dist/consts/index.js +9 -0
  15. package/dist/consts/symbols.d.ts +1 -1
  16. package/dist/consts/symbols.js +10 -0
  17. package/dist/entities/BlockchainEntity.d.ts +13 -13
  18. package/dist/entities/BlockchainEntity.js +36 -0
  19. package/dist/entities/auriEnv.d.ts +34 -40
  20. package/dist/entities/auriEnv.js +166 -0
  21. package/dist/entities/index.d.ts +4 -4
  22. package/dist/entities/index.js +8 -0
  23. package/dist/entities/token.d.ts +7 -7
  24. package/dist/entities/token.js +27 -0
  25. package/dist/entities/tokenAmount.d.ts +13 -13
  26. package/dist/entities/tokenAmount.js +52 -0
  27. package/dist/helpers/aurigami-api.d.ts +13 -13
  28. package/dist/helpers/aurigami-api.js +26 -0
  29. package/dist/helpers/aurora-api-helpers.d.ts +1 -1
  30. package/dist/helpers/aurora-api-helpers.js +15 -0
  31. package/dist/helpers/graphql-helpers.d.ts +1 -1
  32. package/dist/helpers/graphql-helpers.js +13 -0
  33. package/dist/helpers/helpers.d.ts +23 -40
  34. package/dist/helpers/helpers.js +148 -0
  35. package/dist/helpers/historicalPriceFetcher.d.ts +15 -15
  36. package/dist/helpers/historicalPriceFetcher.js +142 -0
  37. package/dist/helpers/index.d.ts +7 -7
  38. package/dist/helpers/index.js +11 -0
  39. package/dist/helpers/kyber-aggregator-api.d.ts +5 -5
  40. package/dist/helpers/kyber-aggregator-api.js +27 -0
  41. package/dist/helpers/multicall.d.ts +40 -0
  42. package/dist/helpers/multicall.js +203 -0
  43. package/dist/helpers/notification-api.d.ts +2 -2
  44. package/dist/helpers/notification-api.js +21 -0
  45. package/dist/helpers/one-inch-aggregator-api.d.ts +21 -21
  46. package/dist/helpers/one-inch-aggregator-api.js +19 -0
  47. package/dist/helpers/priceFetcher.d.ts +36 -36
  48. package/dist/helpers/priceFetcher.js +292 -0
  49. package/dist/helpers/subgraphQuery.d.ts +1 -1
  50. package/dist/helpers/subgraphQuery.js +22 -0
  51. package/dist/helpers/transfer-event-query.d.ts +17 -26
  52. package/dist/helpers/transfer-event-query.js +41 -0
  53. package/dist/index.d.ts +7 -7
  54. package/dist/index.js +17 -8
  55. package/dist/interactors/Airdrop.d.ts +17 -26
  56. package/dist/interactors/Airdrop.js +48 -0
  57. package/dist/interactors/MoneyMarket.d.ts +63 -63
  58. package/dist/interactors/MoneyMarket.js +392 -0
  59. package/dist/interactors/Multicall.d.ts +15 -18
  60. package/dist/interactors/Multicall.js +36 -0
  61. package/dist/interactors/Papermill.d.ts +27 -57
  62. package/dist/interactors/Papermill.js +125 -0
  63. package/dist/interactors/PlyGame.d.ts +30 -42
  64. package/dist/interactors/PlyGame.js +146 -0
  65. package/dist/interactors/PlyTokenLock.d.ts +16 -16
  66. package/dist/interactors/PlyTokenLock.js +44 -0
  67. package/dist/interactors/Pulp.d.ts +17 -17
  68. package/dist/interactors/Pulp.js +43 -0
  69. package/dist/interactors/Referral.d.ts +35 -78
  70. package/dist/interactors/Referral.js +158 -0
  71. package/dist/interactors/Staking.d.ts +20 -26
  72. package/dist/interactors/Staking.js +106 -0
  73. package/dist/interactors/index.d.ts +9 -9
  74. package/dist/interactors/index.js +13 -0
  75. package/dist/interactors/misc.d.ts +31 -39
  76. package/dist/interactors/misc.js +318 -0
  77. package/dist/types/index.d.ts +175 -197
  78. package/dist/types/index.js +18 -0
  79. package/package.json +4 -16
  80. package/dist/sdk.cjs.development.js +0 -6325
  81. package/dist/sdk.cjs.development.js.map +0 -1
  82. package/dist/sdk.cjs.production.min.js +0 -2
  83. package/dist/sdk.cjs.production.min.js.map +0 -1
  84. package/dist/sdk.esm.js +0 -6193
  85. package/dist/sdk.esm.js.map +0 -1
  86. package/src/SDK.ts +0 -223
  87. package/src/abis/index.ts +0 -38
  88. package/src/consts/constants.ts +0 -210
  89. package/src/consts/decimals.ts +0 -31
  90. package/src/consts/deployments.ts +0 -4
  91. package/src/consts/dummy.ts +0 -51
  92. package/src/consts/index.ts +0 -5
  93. package/src/consts/symbols.ts +0 -9
  94. package/src/entities/BlockchainEntity.ts +0 -29
  95. package/src/entities/auriEnv.ts +0 -178
  96. package/src/entities/index.ts +0 -4
  97. package/src/entities/token.ts +0 -21
  98. package/src/entities/tokenAmount.ts +0 -48
  99. package/src/helpers/aurigami-api.ts +0 -42
  100. package/src/helpers/aurora-api-helpers.ts +0 -17
  101. package/src/helpers/graphql-helpers.ts +0 -8
  102. package/src/helpers/helpers.ts +0 -212
  103. package/src/helpers/historicalPriceFetcher.ts +0 -203
  104. package/src/helpers/index.ts +0 -7
  105. package/src/helpers/kyber-aggregator-api.ts +0 -37
  106. package/src/helpers/notification-api.ts +0 -22
  107. package/src/helpers/one-inch-aggregator-api.ts +0 -45
  108. package/src/helpers/priceFetcher.ts +0 -389
  109. package/src/helpers/subgraphQuery.ts +0 -17
  110. package/src/helpers/transfer-event-query.ts +0 -68
  111. package/src/index.ts +0 -14
  112. package/src/interactors/Airdrop.ts +0 -72
  113. package/src/interactors/MoneyMarket.ts +0 -482
  114. package/src/interactors/Multicall.ts +0 -50
  115. package/src/interactors/Papermill.ts +0 -185
  116. package/src/interactors/PlyGame.ts +0 -172
  117. package/src/interactors/PlyTokenLock.ts +0 -47
  118. package/src/interactors/Pulp.ts +0 -39
  119. package/src/interactors/Referral.ts +0 -214
  120. package/src/interactors/Staking.ts +0 -152
  121. package/src/interactors/index.ts +0 -9
  122. package/src/interactors/misc.ts +0 -431
  123. package/src/types/index.ts +0 -222
@@ -1,15 +1,15 @@
1
- import BigNumber from 'bignumber.js';
2
- import { BigNumber as BN, providers } from 'ethers';
3
- import { Address } from '../types';
4
- export declare function fetchHistoricalLPPositions(LPAddress: Address, provider: providers.Provider, block: number): Promise<{
5
- token0: Address;
6
- token1: Address;
7
- reserve0: BN;
8
- reserve1: BN;
9
- totalSupply: BN;
10
- }>;
11
- export declare function fetchHistoricalLPPrice(address: Address, provider: providers.Provider, block: number): Promise<BigNumber>;
12
- export declare function fetchHistoricalPriceFromOracle(auTokenAddress: Address, underlyingDecimal: number, provider: providers.Provider, block: number): Promise<BigNumber>;
13
- export declare function fetchHistoricalPrice(address: Address, provider: providers.Provider, block: number): Promise<BigNumber>;
14
- export declare function fetchHistoricalPULPPrice(provider: providers.Provider): Promise<BigNumber>;
15
- export declare function fetchHistoricalPriceByLP(LP: Address, provider: providers.Provider, block: number, tokenNumber?: 0 | 1): Promise<BigNumber>;
1
+ import BigNumber from 'bignumber.js';
2
+ import { BigNumber as BN, providers } from 'ethers';
3
+ import { Address } from '../types';
4
+ export declare function fetchHistoricalLPPositions(LPAddress: Address, provider: providers.Provider, block: number): Promise<{
5
+ token0: Address;
6
+ token1: Address;
7
+ reserve0: BN;
8
+ reserve1: BN;
9
+ totalSupply: BN;
10
+ }>;
11
+ export declare function fetchHistoricalLPPrice(address: Address, provider: providers.Provider, block: number): Promise<BigNumber>;
12
+ export declare function fetchHistoricalPriceFromOracle(auTokenAddress: Address, underlyingDecimal: number, provider: providers.Provider, block: number): Promise<BigNumber>;
13
+ export declare function fetchHistoricalPrice(address: Address, provider: providers.Provider, block: number): Promise<BigNumber>;
14
+ export declare function fetchHistoricalPULPPrice(provider: providers.Provider): Promise<BigNumber>;
15
+ export declare function fetchHistoricalPriceByLP(LP: Address, provider: providers.Provider, block: number, tokenNumber?: 0 | 1): Promise<BigNumber>;
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchHistoricalPriceByLP = exports.fetchHistoricalPULPPrice = exports.fetchHistoricalPrice = exports.fetchHistoricalPriceFromOracle = exports.fetchHistoricalLPPrice = exports.fetchHistoricalLPPositions = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const bignumber_js_1 = tslib_1.__importDefault(require("bignumber.js"));
6
+ const ethers_1 = require("ethers");
7
+ const abis_1 = require("../abis");
8
+ const constants_1 = require("../consts/constants");
9
+ const helpers_1 = require("./helpers");
10
+ const multicall_1 = require("./multicall");
11
+ async function fetchHistoricalLPPositions(LPAddress, provider, block) {
12
+ const LPContract = (0, multicall_1.createContract)(LPAddress, abis_1.IUniswapV2PairABI.abi, provider);
13
+ var promises = [];
14
+ promises.push(LPContract.callStatic.token0());
15
+ promises.push(LPContract.callStatic.token1());
16
+ promises.push(LPContract.callStatic.getReserves({ blockTag: block }));
17
+ promises.push(LPContract.callStatic.totalSupply({ blockTag: block }));
18
+ const values = await Promise.all(promises);
19
+ return {
20
+ token0: values[0],
21
+ token1: values[1],
22
+ reserve0: values[2].reserve0,
23
+ reserve1: values[2].reserve1,
24
+ totalSupply: values[3],
25
+ };
26
+ }
27
+ exports.fetchHistoricalLPPositions = fetchHistoricalLPPositions;
28
+ async function fetchHistoricalLPPrice(address, provider, block) {
29
+ var LPInfo = await fetchHistoricalLPPositions(address, provider, block);
30
+ const LPDecimal = (0, helpers_1.getDecimal)(address);
31
+ async function fetchLPPriceBy(tokenReverse, block) {
32
+ if (tokenReverse.reserve.isZero())
33
+ return new bignumber_js_1.default(0);
34
+ const tokenPrice = await fetchHistoricalPrice(tokenReverse.address, provider, block);
35
+ const tokenDecimal = (0, helpers_1.getDecimal)(tokenReverse.address);
36
+ const reserveUSD = tokenPrice
37
+ .multipliedBy(tokenReverse.reserve.toString())
38
+ .multipliedBy(2);
39
+ return reserveUSD
40
+ .multipliedBy((0, helpers_1.decimalFactor)(LPDecimal))
41
+ .dividedBy(new bignumber_js_1.default(LPInfo.totalSupply.toString()))
42
+ .dividedBy((0, helpers_1.decimalFactor)(tokenDecimal));
43
+ }
44
+ try {
45
+ const lpPrice = await fetchLPPriceBy({
46
+ address: LPInfo.token0,
47
+ reserve: LPInfo.reserve0,
48
+ }, block);
49
+ if (lpPrice.isZero()) {
50
+ throw Error(`Price is zero`);
51
+ }
52
+ return lpPrice;
53
+ }
54
+ catch (e) {
55
+ (0, helpers_1.devLog)(`fetchLPPriceBy ${LPInfo.token0} failed`, e);
56
+ try {
57
+ return await fetchLPPriceBy({
58
+ address: LPInfo.token1,
59
+ reserve: LPInfo.reserve1,
60
+ }, block);
61
+ }
62
+ catch (e) {
63
+ (0, helpers_1.devLog)(`fetchLPPriceBy ${LPInfo.token1} failed`, e);
64
+ throw Error(`Unable to fetch price for both tokens of LP ${address}`);
65
+ }
66
+ }
67
+ }
68
+ exports.fetchHistoricalLPPrice = fetchHistoricalLPPrice;
69
+ function processPriceFromOracle(rawPrice, underlyingDecimal) {
70
+ return new bignumber_js_1.default(rawPrice.toString()).div((0, helpers_1.decimalFactor)(36 - underlyingDecimal));
71
+ }
72
+ async function fetchHistoricalPriceFromOracle(auTokenAddress, underlyingDecimal, provider, block) {
73
+ const oracleAddress = block < 102438637
74
+ ? constants_1.networkAddresses.misc.DEPRECATED_OLD_ORACLE
75
+ : constants_1.networkAddresses.misc.PYTH_ORACLE;
76
+ const oracleContract = (0, multicall_1.createContract)(oracleAddress, abis_1.AuriOracleABI.abi, provider);
77
+ const rawPrice = await oracleContract.callStatic
78
+ .getUnderlyingPrice(auTokenAddress, { blockTag: block })
79
+ .catch((e) => {
80
+ console.log(`Unable to fetch price from oracle for ${auTokenAddress}`);
81
+ return ethers_1.BigNumber.from(0);
82
+ });
83
+ return processPriceFromOracle(rawPrice, underlyingDecimal);
84
+ }
85
+ exports.fetchHistoricalPriceFromOracle = fetchHistoricalPriceFromOracle;
86
+ async function fetchHistoricalPrice(address, provider, block) {
87
+ if (address.toLowerCase() in constants_1.HARDCODE_PRICE_TOKENS) {
88
+ return new bignumber_js_1.default(constants_1.HARDCODE_PRICE_TOKENS[address.toLowerCase()]);
89
+ }
90
+ else if ((0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.PLY_WNEAR) ||
91
+ (0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.WNEAR_TRI) ||
92
+ (0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.AURORA_WNEAR)) {
93
+ return fetchHistoricalLPPrice(address, provider, block);
94
+ }
95
+ else if ((0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.PLY)) {
96
+ return fetchHistoricalPriceByLP(constants_1.networkAddresses.tokens.PLY_WNEAR, provider, block);
97
+ }
98
+ else if ((0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.TRI)) {
99
+ return fetchHistoricalPriceByLP(constants_1.networkAddresses.tokens.WNEAR_TRI, provider, block, 1);
100
+ }
101
+ else if ((0, helpers_1.isSameAddress)(address, constants_1.networkAddresses.tokens.AURORA)) {
102
+ return fetchHistoricalPriceByLP(constants_1.networkAddresses.tokens.AURORA_WNEAR, provider, block);
103
+ }
104
+ const matchingAuToken = constants_1.networkAddresses.auTokens.find((auToken) => {
105
+ return (0, helpers_1.isSameAddress)(auToken.underlying, address);
106
+ });
107
+ if (matchingAuToken !== undefined) {
108
+ return fetchHistoricalPriceFromOracle(matchingAuToken.address, (0, helpers_1.getDecimal)(address), provider, block);
109
+ }
110
+ else {
111
+ throw Error(`Unable to fetch price for ${address}`);
112
+ }
113
+ }
114
+ exports.fetchHistoricalPrice = fetchHistoricalPrice;
115
+ async function fetchHistoricalPULPPrice(provider) {
116
+ return new bignumber_js_1.default(0);
117
+ }
118
+ exports.fetchHistoricalPULPPrice = fetchHistoricalPULPPrice;
119
+ async function fetchHistoricalPriceByLP(LP, provider, block, tokenNumber = 0) {
120
+ let LPInfo = await fetchHistoricalLPPositions(LP, provider, block);
121
+ if (tokenNumber === 1) {
122
+ LPInfo = {
123
+ token0: LPInfo.token1,
124
+ token1: LPInfo.token0,
125
+ reserve0: LPInfo.reserve1,
126
+ reserve1: LPInfo.reserve0,
127
+ totalSupply: LPInfo.totalSupply,
128
+ };
129
+ }
130
+ if (LPInfo.reserve1.isZero()) {
131
+ return new bignumber_js_1.default(0);
132
+ }
133
+ const token0Decimal = (0, helpers_1.getDecimal)(LPInfo.token0);
134
+ const token1Decimal = (0, helpers_1.getDecimal)(LPInfo.token1);
135
+ return (await fetchHistoricalPrice(LPInfo.token1, provider, block))
136
+ .multipliedBy(LPInfo.reserve1.toString())
137
+ .multipliedBy((0, helpers_1.decimalFactor)(token0Decimal))
138
+ .dividedBy((0, helpers_1.decimalFactor)(token1Decimal))
139
+ .dividedBy(LPInfo.reserve0.toString());
140
+ }
141
+ exports.fetchHistoricalPriceByLP = fetchHistoricalPriceByLP;
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yaWNhbFByaWNlRmV0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL2hpc3RvcmljYWxQcmljZUZldGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUNBLHdFQUFxQztBQUNyQyxtQ0FBb0Q7QUFDcEQsa0NBQTJEO0FBQzNELG1EQUE4RTtBQUU5RSx1Q0FBNkU7QUFDN0UsMkNBQTZDO0FBRXRDLEtBQUssVUFBVSwwQkFBMEIsQ0FDOUMsU0FBa0IsRUFDbEIsUUFBNEIsRUFDNUIsS0FBYTtJQVFiLE1BQU0sVUFBVSxHQUFHLElBQUEsMEJBQWMsRUFBaUIsU0FBUyxFQUFFLHdCQUFpQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5RixJQUFJLFFBQVEsR0FBVSxFQUFFLENBQUM7SUFDekIsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDOUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDOUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEUsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEUsTUFBTSxNQUFNLEdBQVUsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWxELE9BQU87UUFDTCxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBVztRQUMzQixNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBVztRQUMzQixRQUFRLEVBQUcsTUFBTSxDQUFDLENBQUMsQ0FB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
@@ -1,7 +1,7 @@
1
- export * from './aurigami-api';
2
- export * from './aurora-api-helpers';
3
- export * from './graphql-helpers';
4
- export * from './helpers';
5
- export * from './priceFetcher';
6
- export * from './transfer-event-query';
7
- export * from './historicalPriceFetcher';
1
+ export * from './aurigami-api';
2
+ export * from './aurora-api-helpers';
3
+ export * from './graphql-helpers';
4
+ export * from './helpers';
5
+ export * from './priceFetcher';
6
+ export * from './transfer-event-query';
7
+ export * from './historicalPriceFetcher';
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./aurigami-api"), exports);
5
+ tslib_1.__exportStar(require("./aurora-api-helpers"), exports);
6
+ tslib_1.__exportStar(require("./graphql-helpers"), exports);
7
+ tslib_1.__exportStar(require("./helpers"), exports);
8
+ tslib_1.__exportStar(require("./priceFetcher"), exports);
9
+ tslib_1.__exportStar(require("./transfer-event-query"), exports);
10
+ tslib_1.__exportStar(require("./historicalPriceFetcher"), exports);
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5REFBK0I7QUFDL0IsK0RBQXFDO0FBQ3JDLDREQUFrQztBQUNsQyxvREFBMEI7QUFDMUIseURBQStCO0FBQy9CLGlFQUF1QztBQUN2QyxtRUFBeUMifQ==
@@ -1,5 +1,5 @@
1
- export declare function getSwapInfo(tokenIn: string, tokenOut: string, amountIn: string, onAurora?: boolean): Promise<KyberApiResponse>;
2
- export declare type KyberApiResponse = {
3
- inputAmount: string;
4
- outputAmount: string;
5
- };
1
+ export declare function getSwapInfo(tokenIn: string, tokenOut: string, amountIn: string, onAurora?: boolean): Promise<KyberApiResponse>;
2
+ export type KyberApiResponse = {
3
+ inputAmount: string;
4
+ outputAmount: string;
5
+ };
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSwapInfo = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const axios_1 = tslib_1.__importDefault(require("axios"));
6
+ const KYBER_AGGREGATOR_AURORA_API_END_POINT = 'https://aggregator-api.kyberswap.com/aurora/route/encode';
7
+ const KYBER_AGGREGATOR_ETH_API_END_POINT = 'https://aggregator-api.kyberswap.com/ethereum/route/encode';
8
+ async function getSwapInfo(tokenIn, tokenOut, amountIn, onAurora = true) {
9
+ const params = {
10
+ tokenIn,
11
+ tokenOut,
12
+ amountIn,
13
+ to: '0x0000000000000000000000000000000000000000',
14
+ useMeta: '1',
15
+ saveGas: '1',
16
+ gasInclude: '1',
17
+ };
18
+ const endpoint = onAurora
19
+ ? KYBER_AGGREGATOR_AURORA_API_END_POINT
20
+ : KYBER_AGGREGATOR_ETH_API_END_POINT;
21
+ const resp = await axios_1.default.get(endpoint + '?' + new URLSearchParams(params), {
22
+ headers: { 'Content-Type': 'application/json' },
23
+ });
24
+ return resp.data;
25
+ }
26
+ exports.getSwapInfo = getSwapInfo;
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3liZXItYWdncmVnYXRvci1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9reWJlci1hZ2dyZWdhdG9yLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsMERBQTBCO0FBRTFCLE1BQU0scUNBQXFDLEdBQ3pDLDBEQUEwRCxDQUFDO0FBRTdELE1BQU0sa0NBQWtDLEdBQ3RDLDREQUE0RCxDQUFDO0FBRXhELEtBQUssVUFBVSxXQUFXLENBQy9CLE9BQWUsRUFDZixRQUFnQixFQUNoQixRQUFnQixFQUNoQixRQUFRLEdBQUcsSUFBSTtJQUVmLE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTztRQUNQLFFBQVE7UUFDUixRQUFRO1FBQ1IsRUFBRSxFQUFFLDRDQUE0QztRQUNoRCxPQUFPLEVBQUUsR0FBRztRQUNaLE9BQU8sRUFBRSxHQUFHO1FBQ1osVUFBVSxFQUFFLEdBQUc7S0FDaEIsQ0FBQztJQUNGLE1BQU0sUUFBUSxHQUFHLFFBQVE7UUFDdkIsQ0FBQyxDQUFDLHFDQUFxQztRQUN2QyxDQUFDLENBQUMsa0NBQWtDLENBQUM7SUFDdkMsTUFBTSxJQUFJLEdBQUcsTUFBTSxlQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLEVBQUU7UUFDekUsT0FBTyxFQUFFLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFO0tBQ2hELENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNuQixDQUFDO0FBdkJELGtDQXVCQyJ9
@@ -0,0 +1,40 @@
1
+ import type { BlockTag } from '@ethersproject/abstract-provider';
2
+ import type { Provider } from '@ethersproject/providers';
3
+ import { CallOverrides, Contract, ContractInterface, Signer } from 'ethers';
4
+ import { FunctionFragment } from 'ethers/lib/utils';
5
+ import { MulticallOverrides, MulticallStatic } from '../types';
6
+ export declare const DEFAULT_CALL_LIMIT = 32;
7
+ declare class ContractCall {
8
+ fragment: FunctionFragment;
9
+ address: string;
10
+ params: any[];
11
+ constructor({ fragment, address, params, }: {
12
+ fragment: FunctionFragment;
13
+ address: string;
14
+ params: any[];
15
+ });
16
+ }
17
+ export declare class Multicall {
18
+ static isMulticallOverrides(overrides?: CallOverrides): overrides is MulticallOverrides | undefined;
19
+ private multicallContract;
20
+ readonly batchMap: Map<BlockTag, MulticallBatch>;
21
+ readonly callLimit: number;
22
+ readonly multicallStaticSymbol: symbol;
23
+ static wrap<T extends Contract>(contract: T, multicall: Multicall | undefined): MulticallStatic<T>;
24
+ constructor({ address, provider, callLimit, }: {
25
+ address: string;
26
+ provider: Provider | Signer;
27
+ callLimit?: number;
28
+ });
29
+ doAggregateCalls(calls: readonly ContractCall[], blockTag: BlockTag): Promise<any[]>;
30
+ wrap<T extends Contract>(contract_: T): MulticallStatic<T>;
31
+ }
32
+ declare class MulticallBatch {
33
+ private readonly multicallInstance;
34
+ readonly blockTag: BlockTag;
35
+ readonly pendingContractCalls: ContractCall[];
36
+ readonly promise: Promise<any[]>;
37
+ constructor(multicallInstance: Multicall, blockTag?: BlockTag);
38
+ }
39
+ export declare function createContract<T extends Contract>(addressOrName: string, contractInterface: ContractInterface, signerOrProvider: Signer | Provider): MulticallStatic<T>;
40
+ export {};
@@ -0,0 +1,203 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createContract = exports.Multicall = exports.DEFAULT_CALL_LIMIT = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const utils_1 = require("ethers/lib/utils");
6
+ const abis_1 = require("../abis");
7
+ const TRANSFORMER = new utils_1.Interface([]);
8
+ exports.DEFAULT_CALL_LIMIT = 32;
9
+ class ContractCall {
10
+ constructor({ fragment, address, params, }) {
11
+ Object.defineProperty(this, "fragment", {
12
+ enumerable: true,
13
+ configurable: true,
14
+ writable: true,
15
+ value: void 0
16
+ });
17
+ Object.defineProperty(this, "address", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: void 0
22
+ });
23
+ Object.defineProperty(this, "params", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: void 0
28
+ });
29
+ this.fragment = fragment;
30
+ this.address = address;
31
+ this.params = params;
32
+ }
33
+ }
34
+ class Multicall {
35
+ static isMulticallOverrides(overrides) {
36
+ if (overrides === undefined) {
37
+ return true;
38
+ }
39
+ for (const key of Object.keys(overrides)) {
40
+ if (key !== 'blockTag' && overrides[key] != undefined) {
41
+ return false;
42
+ }
43
+ }
44
+ return true;
45
+ }
46
+ static wrap(contract, multicall) {
47
+ return multicall ? multicall.wrap(contract) : contract;
48
+ }
49
+ constructor({ address, provider, callLimit, }) {
50
+ Object.defineProperty(this, "multicallContract", {
51
+ enumerable: true,
52
+ configurable: true,
53
+ writable: true,
54
+ value: void 0
55
+ });
56
+ Object.defineProperty(this, "batchMap", {
57
+ enumerable: true,
58
+ configurable: true,
59
+ writable: true,
60
+ value: new Map()
61
+ });
62
+ Object.defineProperty(this, "callLimit", {
63
+ enumerable: true,
64
+ configurable: true,
65
+ writable: true,
66
+ value: void 0
67
+ });
68
+ Object.defineProperty(this, "multicallStaticSymbol", {
69
+ enumerable: true,
70
+ configurable: true,
71
+ writable: true,
72
+ value: Symbol.for('multicallStatic')
73
+ });
74
+ this.multicallContract = new ethers_1.Contract(address, abis_1.Multicall2ABI.abi, provider);
75
+ this.callLimit = callLimit ?? exports.DEFAULT_CALL_LIMIT;
76
+ }
77
+ async doAggregateCalls(calls, blockTag) {
78
+ const callRequests = calls.map((call) => ({
79
+ target: call.address,
80
+ callData: TRANSFORMER.encodeFunctionData(call.fragment, call.params),
81
+ }));
82
+ const responses = await this.multicallContract.callStatic.tryAggregate(false, callRequests, {
83
+ blockTag: blockTag,
84
+ });
85
+ const result = calls.map((call, i) => {
86
+ const [success, returnData] = responses[i];
87
+ try {
88
+ const outputs = call.fragment.outputs;
89
+ const params = TRANSFORMER.decodeFunctionResult(call.fragment, returnData);
90
+ if (!success) {
91
+ const callId = utils_1.FunctionFragment.from(call.fragment).format();
92
+ throw new Error(`Call ${call.address}:${callId} failed`);
93
+ }
94
+ return outputs.length === 1 ? params[0] : params;
95
+ }
96
+ catch (e) {
97
+ if (e.reason == null) {
98
+ e.reason = 'Call failed for unknown reason';
99
+ }
100
+ return e;
101
+ }
102
+ });
103
+ return result;
104
+ }
105
+ wrap(contract_) {
106
+ const contract = contract_;
107
+ if (contract[this.multicallStaticSymbol]) {
108
+ return contract[this.multicallStaticSymbol];
109
+ }
110
+ const functions = contract_.interface.functions;
111
+ const funcs = {};
112
+ for (const [_, fn] of Object.entries(functions)) {
113
+ funcs[fn.name] = async (...params) => {
114
+ let blockTag = 'latest';
115
+ if (params.length === fn.inputs.length + 1) {
116
+ const overrides = params.pop() ?? {};
117
+ if (!Multicall.isMulticallOverrides(overrides)) {
118
+ throw new Error('Overrides for multicall should contain only blockTag property');
119
+ }
120
+ blockTag = (await overrides.blockTag) ?? 'latest';
121
+ }
122
+ const contractCall = new ContractCall({
123
+ fragment: fn,
124
+ address: contract.address,
125
+ params,
126
+ });
127
+ const res = new Promise((resolve, reject) => {
128
+ let currentBatch = this.batchMap.get(blockTag);
129
+ if (currentBatch === undefined) {
130
+ currentBatch = new MulticallBatch(this, blockTag);
131
+ this.batchMap.set(blockTag, currentBatch);
132
+ }
133
+ const dataPos = currentBatch.pendingContractCalls.length;
134
+ currentBatch.pendingContractCalls.push(contractCall);
135
+ currentBatch.promise
136
+ .then((currentResult) => currentResult[dataPos] instanceof Error
137
+ ? reject(currentResult[dataPos])
138
+ : resolve(currentResult[dataPos]))
139
+ .catch(reject);
140
+ if (currentBatch.pendingContractCalls.length >= this.callLimit) {
141
+ this.batchMap.delete(blockTag);
142
+ }
143
+ });
144
+ return res;
145
+ };
146
+ }
147
+ const res = {
148
+ callStatic: funcs,
149
+ address: contract.address,
150
+ raw: contract,
151
+ };
152
+ Object.assign(contract, { [this.multicallStaticSymbol]: res });
153
+ return res;
154
+ }
155
+ }
156
+ exports.Multicall = Multicall;
157
+ class MulticallBatch {
158
+ constructor(multicallInstance, blockTag = 'latest') {
159
+ Object.defineProperty(this, "multicallInstance", {
160
+ enumerable: true,
161
+ configurable: true,
162
+ writable: true,
163
+ value: multicallInstance
164
+ });
165
+ Object.defineProperty(this, "blockTag", {
166
+ enumerable: true,
167
+ configurable: true,
168
+ writable: true,
169
+ value: blockTag
170
+ });
171
+ Object.defineProperty(this, "pendingContractCalls", {
172
+ enumerable: true,
173
+ configurable: true,
174
+ writable: true,
175
+ value: []
176
+ });
177
+ Object.defineProperty(this, "promise", {
178
+ enumerable: true,
179
+ configurable: true,
180
+ writable: true,
181
+ value: void 0
182
+ });
183
+ this.promise = Promise.resolve().then(async () => {
184
+ if (this.multicallInstance.batchMap.get(this.blockTag) === this) {
185
+ this.multicallInstance.batchMap.delete(this.blockTag);
186
+ }
187
+ return this.multicallInstance.doAggregateCalls(this.pendingContractCalls, this.blockTag);
188
+ });
189
+ }
190
+ }
191
+ let multicall;
192
+ function createContract(addressOrName, contractInterface, signerOrProvider) {
193
+ const contract = new ethers_1.Contract(addressOrName, contractInterface, signerOrProvider);
194
+ if (!multicall) {
195
+ multicall = new Multicall({
196
+ address: '0xcA11bde05977b3631167028862bE2a173976CA11',
197
+ provider: signerOrProvider,
198
+ });
199
+ }
200
+ return Multicall.wrap(contract, multicall);
201
+ }
202
+ exports.createContract = createContract;
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGljYWxsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvbXVsdGljYWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLG1DQUE0RTtBQUM1RSw0Q0FBK0Q7QUFDL0Qsa0NBQXdDO0FBcUN4QyxNQUFNLFdBQVcsR0FBRyxJQUFJLGlCQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDekIsUUFBQSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7QUFFckMsTUFBTSxZQUFZO0lBS2hCLFlBQVksRUFDVixRQUFRLEVBQ1IsT0FBTyxFQUNQLE1BQU0sR0FLUDtRQVpEOzs7OztXQUEyQjtRQUMzQjs7Ozs7V0FBZ0I7UUFDaEI7Ozs7O1dBQWM7UUFXWixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRCxNQUFhLFNBQVM7SUFDcEIsTUFBTSxDQUFDLG9CQUFvQixDQUN6QixTQUF5QjtRQUV6QixJQUFJLFNBQVMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM1QixPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUN6QyxJQUFJLEdBQUcsS0FBSyxVQUFVLElBQUssU0FBaUIsQ0FBQyxHQUFHLENBQUMsSUFBSSxTQUFTLEVBQUUsQ0FBQztnQkFDL0QsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQWtCRCxNQUFNLENBQUMsSUFBSSxDQUNULFFBQVcsRUFDWCxTQUFnQztRQUVoQyxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFR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
@@ -1,2 +1,2 @@
1
- export declare function getApi(url: string, params?: Record<string, any>): Promise<any>;
2
- export declare function postApi(url: string, body: Record<string, any>): Promise<any>;
1
+ export declare function getApi(url: string, params?: Record<string, any>): Promise<any>;
2
+ export declare function postApi(url: string, body: Record<string, any>): Promise<any>;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.postApi = exports.getApi = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const axios_1 = tslib_1.__importDefault(require("axios"));
6
+ const NOTIFICATION_API_END_POINT = 'https://api.aurigami.finance/notification/';
7
+ async function getApi(url, params = {}) {
8
+ const resp = await axios_1.default.get(NOTIFICATION_API_END_POINT + url + '?' + new URLSearchParams(params), {
9
+ headers: { 'Content-Type': 'application/json' },
10
+ });
11
+ return resp.data;
12
+ }
13
+ exports.getApi = getApi;
14
+ async function postApi(url, body) {
15
+ const resp = await axios_1.default.post(NOTIFICATION_API_END_POINT + url, body, {
16
+ headers: { 'Content-Type': 'application/json' },
17
+ });
18
+ return resp.data;
19
+ }
20
+ exports.postApi = postApi;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL25vdGlmaWNhdGlvbi1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDBEQUEwQjtBQUUxQixNQUFNLDBCQUEwQixHQUFHLDRDQUE0QyxDQUFDO0FBRXpFLEtBQUssVUFBVSxNQUFNLENBQUMsR0FBVyxFQUFFLFNBQThCLEVBQUU7SUFDeEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxlQUFLLENBQUMsR0FBRyxDQUMxQiwwQkFBMEIsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUNwRTtRQUNFLE9BQU8sRUFBRSxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRTtLQUNoRCxDQUNGLENBQUM7SUFFRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7QUFDbkIsQ0FBQztBQVRELHdCQVNDO0FBRU0sS0FBSyxVQUFVLE9BQU8sQ0FBQyxHQUFXLEVBQUUsSUFBeUI7SUFDbEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxlQUFLLENBQUMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUU7UUFDcEUsT0FBTyxFQUFFLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFO0tBQ2hELENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNuQixDQUFDO0FBTkQsMEJBTUMifQ==
@@ -1,21 +1,21 @@
1
- export declare function getQuoteOneInch(fromTokenAddress: string, toTokenAddress: string, amount: string): Promise<OneInchApiResponse>;
2
- export declare type OneInchApiResponse = {
3
- fromToken: {
4
- symbol: string;
5
- name: string;
6
- decimals: number;
7
- address: string;
8
- logoURI: string;
9
- tags: string[];
10
- };
11
- toToken: {
12
- symbol: string;
13
- name: string;
14
- decimals: number;
15
- address: string;
16
- logoURI: string;
17
- tags: string[];
18
- };
19
- toTokenAmount: string;
20
- fromTokenAmount: string;
21
- };
1
+ export declare function getQuoteOneInch(fromTokenAddress: string, toTokenAddress: string, amount: string): Promise<OneInchApiResponse>;
2
+ export type OneInchApiResponse = {
3
+ fromToken: {
4
+ symbol: string;
5
+ name: string;
6
+ decimals: number;
7
+ address: string;
8
+ logoURI: string;
9
+ tags: string[];
10
+ };
11
+ toToken: {
12
+ symbol: string;
13
+ name: string;
14
+ decimals: number;
15
+ address: string;
16
+ logoURI: string;
17
+ tags: string[];
18
+ };
19
+ toTokenAmount: string;
20
+ fromTokenAmount: string;
21
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getQuoteOneInch = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const axios_1 = tslib_1.__importDefault(require("axios"));
6
+ const ONEINCH_AGGREGATOR_API_END_POINT = 'https://api.1inch.io/v5.0/1313161554/quote';
7
+ async function getQuoteOneInch(fromTokenAddress, toTokenAddress, amount) {
8
+ const params = {
9
+ fromTokenAddress,
10
+ toTokenAddress,
11
+ amount,
12
+ };
13
+ const resp = await axios_1.default.get(ONEINCH_AGGREGATOR_API_END_POINT + '?' + new URLSearchParams(params), {
14
+ headers: { 'Content-Type': 'application/json' },
15
+ });
16
+ return resp.data;
17
+ }
18
+ exports.getQuoteOneInch = getQuoteOneInch;
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib25lLWluY2gtYWdncmVnYXRvci1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9vbmUtaW5jaC1hZ2dyZWdhdG9yLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRUEsMERBQTBCO0FBRTFCLE1BQU0sZ0NBQWdDLEdBQUcsNENBQTRDLENBQUM7QUFFL0UsS0FBSyxVQUFVLGVBQWUsQ0FDbkMsZ0JBQXdCLEVBQ3hCLGNBQXNCLEVBQ3RCLE1BQWM7SUFFZCxNQUFNLE1BQU0sR0FBRztRQUNiLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsTUFBTTtLQUNQLENBQUM7SUFDRixNQUFNLElBQUksR0FBRyxNQUFNLGVBQUssQ0FBQyxHQUFHLENBQzFCLGdDQUFnQyxHQUFHLEdBQUcsR0FBRyxJQUFJLGVBQWUsQ0FBQyxNQUFNLENBQUMsRUFDcEU7UUFDRSxPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUU7S0FDaEQsQ0FDRixDQUFDO0lBQ0YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0FBQ25CLENBQUM7QUFqQkQsMENBaUJDIn0=