@yaswap/evm 2.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/CHANGELOG.md +5 -0
- package/dist/lib/chain/EvmChainProvider.d.ts +86 -0
- package/dist/lib/chain/EvmChainProvider.js +237 -0
- package/dist/lib/chain/EvmChainProvider.js.map +1 -0
- package/dist/lib/chain/EvmMulticallProvider.d.ts +96 -0
- package/dist/lib/chain/EvmMulticallProvider.js +78 -0
- package/dist/lib/chain/EvmMulticallProvider.js.map +1 -0
- package/dist/lib/chain/OptimismChainProvider.d.ts +14 -0
- package/dist/lib/chain/OptimismChainProvider.js +56 -0
- package/dist/lib/chain/OptimismChainProvider.js.map +1 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/ethereum.d.ts +27 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/ethereum.js +40 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/ethereum.js.map +1 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/index.d.ts +9 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/index.js +46 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/index.js.map +1 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/polygon.d.ts +19 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/polygon.js +40 -0
- package/dist/lib/fee/EIP1559FeeApiProvider/polygon.js.map +1 -0
- package/dist/lib/fee/EIP1559FeeProvider.d.ts +10 -0
- package/dist/lib/fee/EIP1559FeeProvider.js +73 -0
- package/dist/lib/fee/EIP1559FeeProvider.js.map +1 -0
- package/dist/lib/fee/RpcFeeProvider.d.ts +10 -0
- package/dist/lib/fee/RpcFeeProvider.js +46 -0
- package/dist/lib/fee/RpcFeeProvider.js.map +1 -0
- package/dist/lib/index.d.ts +19 -0
- package/dist/lib/index.js +62 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/naming/EnsProvider.d.ts +16 -0
- package/dist/lib/naming/EnsProvider.js +37 -0
- package/dist/lib/naming/EnsProvider.js.map +1 -0
- package/dist/lib/networks.d.ts +27 -0
- package/dist/lib/networks.js +192 -0
- package/dist/lib/networks.js.map +1 -0
- package/dist/lib/nft/CovalentNftProvider.d.ts +11 -0
- package/dist/lib/nft/CovalentNftProvider.js +67 -0
- package/dist/lib/nft/CovalentNftProvider.js.map +1 -0
- package/dist/lib/nft/EvmNftProvider.d.ts +34 -0
- package/dist/lib/nft/EvmNftProvider.js +197 -0
- package/dist/lib/nft/EvmNftProvider.js.map +1 -0
- package/dist/lib/nft/InfuraNftProvider.d.ts +11 -0
- package/dist/lib/nft/InfuraNftProvider.js +69 -0
- package/dist/lib/nft/InfuraNftProvider.js.map +1 -0
- package/dist/lib/nft/OpenSeaNftProvider.d.ts +10 -0
- package/dist/lib/nft/OpenSeaNftProvider.js +67 -0
- package/dist/lib/nft/OpenSeaNftProvider.js.map +1 -0
- package/dist/lib/swap/EvmBaseSwapProvider.d.ts +31 -0
- package/dist/lib/swap/EvmBaseSwapProvider.js +314 -0
- package/dist/lib/swap/EvmBaseSwapProvider.js.map +1 -0
- package/dist/lib/swap/EvmSwapProvider.d.ts +21 -0
- package/dist/lib/swap/EvmSwapProvider.js +205 -0
- package/dist/lib/swap/EvmSwapProvider.js.map +1 -0
- package/dist/lib/typechain/ERC1155.d.ts +187 -0
- package/dist/lib/typechain/ERC1155.js +3 -0
- package/dist/lib/typechain/ERC1155.js.map +1 -0
- package/dist/lib/typechain/ERC165.d.ts +43 -0
- package/dist/lib/typechain/ERC165.js +3 -0
- package/dist/lib/typechain/ERC165.js.map +1 -0
- package/dist/lib/typechain/ERC20.d.ts +193 -0
- package/dist/lib/typechain/ERC20.js +3 -0
- package/dist/lib/typechain/ERC20.js.map +1 -0
- package/dist/lib/typechain/ERC721.d.ts +220 -0
- package/dist/lib/typechain/ERC721.js +3 -0
- package/dist/lib/typechain/ERC721.js.map +1 -0
- package/dist/lib/typechain/IERC1155.d.ts +179 -0
- package/dist/lib/typechain/IERC1155.js +3 -0
- package/dist/lib/typechain/IERC1155.js.map +1 -0
- package/dist/lib/typechain/IERC1155MetadataURI.d.ts +187 -0
- package/dist/lib/typechain/IERC1155MetadataURI.js +3 -0
- package/dist/lib/typechain/IERC1155MetadataURI.js.map +1 -0
- package/dist/lib/typechain/IERC1155Receiver.d.ts +75 -0
- package/dist/lib/typechain/IERC1155Receiver.js +3 -0
- package/dist/lib/typechain/IERC1155Receiver.js.map +1 -0
- package/dist/lib/typechain/IERC165.d.ts +43 -0
- package/dist/lib/typechain/IERC165.js +3 -0
- package/dist/lib/typechain/IERC165.js.map +1 -0
- package/dist/lib/typechain/IERC20.d.ts +137 -0
- package/dist/lib/typechain/IERC20.js +3 -0
- package/dist/lib/typechain/IERC20.js.map +1 -0
- package/dist/lib/typechain/IERC20Metadata.d.ts +161 -0
- package/dist/lib/typechain/IERC20Metadata.js +3 -0
- package/dist/lib/typechain/IERC20Metadata.js.map +1 -0
- package/dist/lib/typechain/IERC721.d.ts +202 -0
- package/dist/lib/typechain/IERC721.js +3 -0
- package/dist/lib/typechain/IERC721.js.map +1 -0
- package/dist/lib/typechain/IERC721Metadata.d.ts +226 -0
- package/dist/lib/typechain/IERC721Metadata.js +3 -0
- package/dist/lib/typechain/IERC721Metadata.js.map +1 -0
- package/dist/lib/typechain/IERC721Receiver.d.ts +51 -0
- package/dist/lib/typechain/IERC721Receiver.js +3 -0
- package/dist/lib/typechain/IERC721Receiver.js.map +1 -0
- package/dist/lib/typechain/ILiqualityHTLC.d.ts +142 -0
- package/dist/lib/typechain/ILiqualityHTLC.js +3 -0
- package/dist/lib/typechain/ILiqualityHTLC.js.map +1 -0
- package/dist/lib/typechain/LiqualityHTLC.d.ts +192 -0
- package/dist/lib/typechain/LiqualityHTLC.js +3 -0
- package/dist/lib/typechain/LiqualityHTLC.js.map +1 -0
- package/dist/lib/typechain/Multicall3.d.ts +293 -0
- package/dist/lib/typechain/Multicall3.js +3 -0
- package/dist/lib/typechain/Multicall3.js.map +1 -0
- package/dist/lib/typechain/TestERC20.d.ts +209 -0
- package/dist/lib/typechain/TestERC20.js +3 -0
- package/dist/lib/typechain/TestERC20.js.map +1 -0
- package/dist/lib/typechain/common.d.ts +21 -0
- package/dist/lib/typechain/common.js +3 -0
- package/dist/lib/typechain/common.js.map +1 -0
- package/dist/lib/typechain/factories/ERC1155__factory.d.ts +60 -0
- package/dist/lib/typechain/factories/ERC1155__factory.js +364 -0
- package/dist/lib/typechain/factories/ERC1155__factory.js.map +1 -0
- package/dist/lib/typechain/factories/ERC165__factory.d.ts +22 -0
- package/dist/lib/typechain/factories/ERC165__factory.js +39 -0
- package/dist/lib/typechain/factories/ERC165__factory.js.map +1 -0
- package/dist/lib/typechain/factories/ERC20__factory.d.ts +60 -0
- package/dist/lib/typechain/factories/ERC20__factory.js +327 -0
- package/dist/lib/typechain/factories/ERC20__factory.js.map +1 -0
- package/dist/lib/typechain/factories/ERC721__factory.d.ts +60 -0
- package/dist/lib/typechain/factories/ERC721__factory.js +387 -0
- package/dist/lib/typechain/factories/ERC721__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC1155MetadataURI__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC1155MetadataURI__factory.js +332 -0
- package/dist/lib/typechain/factories/IERC1155MetadataURI__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC1155Receiver__factory.d.ts +22 -0
- package/dist/lib/typechain/factories/IERC1155Receiver__factory.js +117 -0
- package/dist/lib/typechain/factories/IERC1155Receiver__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC1155__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC1155__factory.js +313 -0
- package/dist/lib/typechain/factories/IERC1155__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC165__factory.d.ts +22 -0
- package/dist/lib/typechain/factories/IERC165__factory.js +39 -0
- package/dist/lib/typechain/factories/IERC165__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC20Metadata__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC20Metadata__factory.js +242 -0
- package/dist/lib/typechain/factories/IERC20Metadata__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC20__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC20__factory.js +203 -0
- package/dist/lib/typechain/factories/IERC20__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC721Metadata__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC721Metadata__factory.js +350 -0
- package/dist/lib/typechain/factories/IERC721Metadata__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC721Receiver__factory.d.ts +22 -0
- package/dist/lib/typechain/factories/IERC721Receiver__factory.js +54 -0
- package/dist/lib/typechain/factories/IERC721Receiver__factory.js.map +1 -0
- package/dist/lib/typechain/factories/IERC721__factory.d.ts +35 -0
- package/dist/lib/typechain/factories/IERC721__factory.js +305 -0
- package/dist/lib/typechain/factories/IERC721__factory.js.map +1 -0
- package/dist/lib/typechain/factories/ILiqualityHTLC__factory.d.ts +69 -0
- package/dist/lib/typechain/factories/ILiqualityHTLC__factory.js +225 -0
- package/dist/lib/typechain/factories/ILiqualityHTLC__factory.js.map +1 -0
- package/dist/lib/typechain/factories/LiqualityHTLC__factory.d.ts +87 -0
- package/dist/lib/typechain/factories/LiqualityHTLC__factory.js +290 -0
- package/dist/lib/typechain/factories/LiqualityHTLC__factory.js.map +1 -0
- package/dist/lib/typechain/factories/Multicall3__factory.d.ts +56 -0
- package/dist/lib/typechain/factories/Multicall3__factory.js +479 -0
- package/dist/lib/typechain/factories/Multicall3__factory.js.map +1 -0
- package/dist/lib/typechain/factories/TestERC20__factory.d.ts +56 -0
- package/dist/lib/typechain/factories/TestERC20__factory.js +334 -0
- package/dist/lib/typechain/factories/TestERC20__factory.js.map +1 -0
- package/dist/lib/typechain/index.d.ts +34 -0
- package/dist/lib/typechain/index.js +38 -0
- package/dist/lib/typechain/index.js.map +1 -0
- package/dist/lib/types.d.ts +107 -0
- package/dist/lib/types.js +9 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/utils.d.ts +35 -0
- package/dist/lib/utils.js +184 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/wallet/EvmBaseWalletProvider.d.ts +19 -0
- package/dist/lib/wallet/EvmBaseWalletProvider.js +153 -0
- package/dist/lib/wallet/EvmBaseWalletProvider.js.map +1 -0
- package/dist/lib/wallet/EvmWalletProvider.d.ts +20 -0
- package/dist/lib/wallet/EvmWalletProvider.js +91 -0
- package/dist/lib/wallet/EvmWalletProvider.js.map +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EthereumFeeParser = void 0;
|
|
4
|
+
const errors_1 = require("@yaswap/errors");
|
|
5
|
+
const utils_1 = require("@yaswap/utils");
|
|
6
|
+
class EthereumFeeParser {
|
|
7
|
+
parse(response) {
|
|
8
|
+
if (response.code === 200) {
|
|
9
|
+
const suggestedBaseFeePerGas = Number(response.raw.etherscan.suggestBaseFee);
|
|
10
|
+
return {
|
|
11
|
+
slow: {
|
|
12
|
+
fee: {
|
|
13
|
+
maxFeePerGas: Number(response.raw.etherscan.SafeGasPrice),
|
|
14
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.raw.etherscan.SafeGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
15
|
+
suggestedBaseFeePerGas,
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
average: {
|
|
19
|
+
fee: {
|
|
20
|
+
maxFeePerGas: Number(response.raw.etherscan.ProposeGasPrice),
|
|
21
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.raw.etherscan.ProposeGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
22
|
+
suggestedBaseFeePerGas,
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
fast: {
|
|
26
|
+
fee: {
|
|
27
|
+
maxFeePerGas: Number(response.raw.etherscan.FastGasPrice),
|
|
28
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.raw.etherscan.FastGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
29
|
+
suggestedBaseFeePerGas,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw new errors_1.NodeError('Could not fetch Ethereum fee data', response);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.EthereumFeeParser = EthereumFeeParser;
|
|
40
|
+
//# sourceMappingURL=ethereum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../../../lib/fee/EIP1559FeeApiProvider/ethereum.ts"],"names":[],"mappings":";;;AAAA,2CAA2C;AAE3C,yCAAqC;AAErC,MAAa,iBAAiB;IACnB,KAAK,CAAC,QAA0B;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE;YACvB,MAAM,sBAAsB,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;YAE7E,OAAO;gBACH,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC;wBACzD,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBACtG,sBAAsB;qBACzB;iBACJ;gBACD,OAAO,EAAE;oBACL,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC;wBAC5D,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBACzG,sBAAsB;qBACzB;iBACJ;gBACD,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC;wBACzD,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBACtG,sBAAsB;qBACzB;iBACJ;aACJ,CAAC;SACL;aAAM;YACH,MAAM,IAAI,kBAAS,CAAC,mCAAmC,EAAE,QAAQ,CAAC,CAAC;SACtE;IACL,CAAC;CACJ;AAhCD,8CAgCC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Fee } from '@yaswap/client';
|
|
2
|
+
import { FeeDetails } from '@yaswap/types';
|
|
3
|
+
export declare class EIP1559FeeApiProvider extends Fee {
|
|
4
|
+
private _httpClient;
|
|
5
|
+
private _chainId;
|
|
6
|
+
constructor(url: string, chainId: number);
|
|
7
|
+
getFees(): Promise<FeeDetails>;
|
|
8
|
+
private parseFeeResponse;
|
|
9
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EIP1559FeeApiProvider = void 0;
|
|
13
|
+
const client_1 = require("@yaswap/client");
|
|
14
|
+
const errors_1 = require("@yaswap/errors");
|
|
15
|
+
const networks_1 = require("../../networks");
|
|
16
|
+
const ethereum_1 = require("./ethereum");
|
|
17
|
+
const polygon_1 = require("./polygon");
|
|
18
|
+
class EIP1559FeeApiProvider extends client_1.Fee {
|
|
19
|
+
constructor(url, chainId) {
|
|
20
|
+
super();
|
|
21
|
+
this._httpClient = new client_1.HttpClient({ baseURL: url });
|
|
22
|
+
this._chainId = chainId;
|
|
23
|
+
}
|
|
24
|
+
getFees() {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
const result = yield this._httpClient.nodeGet('/');
|
|
27
|
+
const fee = this.parseFeeResponse(result);
|
|
28
|
+
return fee;
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
parseFeeResponse(response) {
|
|
32
|
+
switch (this._chainId) {
|
|
33
|
+
case networks_1.EvmNetworks.ethereum_mainnet.chainId: {
|
|
34
|
+
return new ethereum_1.EthereumFeeParser().parse(response);
|
|
35
|
+
}
|
|
36
|
+
case networks_1.EvmNetworks.polygon_mainnet.chainId: {
|
|
37
|
+
return new polygon_1.PolygonFeeParser().parse(response);
|
|
38
|
+
}
|
|
39
|
+
default: {
|
|
40
|
+
throw new errors_1.UnsupportedMethodError(`EIP1559 not supported for ${this._chainId}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.EIP1559FeeApiProvider = EIP1559FeeApiProvider;
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/fee/EIP1559FeeApiProvider/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAiD;AACjD,2CAAwD;AAExD,6CAA6C;AAC7C,yCAAiE;AACjE,uCAA8D;AAE9D,MAAa,qBAAsB,SAAQ,YAAG;IAI1C,YAAY,GAAW,EAAE,OAAe;QACpC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAU,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC5B,CAAC;IAEY,OAAO;;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACnD,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAC1C,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEO,gBAAgB,CAAC,QAAkB;QACvC,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACnB,KAAK,sBAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACvC,OAAO,IAAI,4BAAiB,EAAE,CAAC,KAAK,CAAC,QAA4B,CAAC,CAAC;aACtE;YAED,KAAK,sBAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBACtC,OAAO,IAAI,0BAAgB,EAAE,CAAC,KAAK,CAAC,QAA2B,CAAC,CAAC;aACpE;YAED,OAAO,CAAC,CAAC;gBACL,MAAM,IAAI,+BAAsB,CAAC,6BAA6B,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;aAClF;SACJ;IACL,CAAC;CACJ;AA/BD,sDA+BC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { FeeDetails } from '@yaswap/types';
|
|
2
|
+
export declare class PolygonFeeParser {
|
|
3
|
+
parse(response: PolygonResponse): FeeDetails;
|
|
4
|
+
}
|
|
5
|
+
interface Result {
|
|
6
|
+
LastBlock: string;
|
|
7
|
+
SafeGasPrice: string;
|
|
8
|
+
ProposeGasPrice: string;
|
|
9
|
+
FastGasPrice: string;
|
|
10
|
+
suggestBaseFee: string;
|
|
11
|
+
gasUsedRatio: string;
|
|
12
|
+
UsdPrice: string;
|
|
13
|
+
}
|
|
14
|
+
export interface PolygonResponse {
|
|
15
|
+
status: string;
|
|
16
|
+
message: string;
|
|
17
|
+
result: Result;
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PolygonFeeParser = void 0;
|
|
4
|
+
const errors_1 = require("@yaswap/errors");
|
|
5
|
+
const utils_1 = require("@yaswap/utils");
|
|
6
|
+
class PolygonFeeParser {
|
|
7
|
+
parse(response) {
|
|
8
|
+
if (response.status === '1' && response.message === 'OK') {
|
|
9
|
+
const suggestedBaseFeePerGas = Number(response.result.suggestBaseFee);
|
|
10
|
+
return {
|
|
11
|
+
slow: {
|
|
12
|
+
fee: {
|
|
13
|
+
maxFeePerGas: Number(response.result.SafeGasPrice),
|
|
14
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.result.SafeGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
15
|
+
suggestedBaseFeePerGas,
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
average: {
|
|
19
|
+
fee: {
|
|
20
|
+
maxFeePerGas: Number(response.result.ProposeGasPrice),
|
|
21
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.result.ProposeGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
22
|
+
suggestedBaseFeePerGas,
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
fast: {
|
|
26
|
+
fee: {
|
|
27
|
+
maxFeePerGas: Number(response.result.FastGasPrice),
|
|
28
|
+
maxPriorityFeePerGas: utils_1.Math.sub(response.result.FastGasPrice, suggestedBaseFeePerGas).toNumber(),
|
|
29
|
+
suggestedBaseFeePerGas,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
throw new errors_1.NodeError('Could not fetch Polygon fee data', response);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.PolygonFeeParser = PolygonFeeParser;
|
|
40
|
+
//# sourceMappingURL=polygon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../lib/fee/EIP1559FeeApiProvider/polygon.ts"],"names":[],"mappings":";;;AAAA,2CAA2C;AAE3C,yCAAqC;AAErC,MAAa,gBAAgB;IAClB,KAAK,CAAC,QAAyB;QAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE;YACtD,MAAM,sBAAsB,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAEtE,OAAO;gBACH,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;wBAClD,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBAC/F,sBAAsB;qBACzB;iBACJ;gBACD,OAAO,EAAE;oBACL,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC;wBACrD,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBAClG,sBAAsB;qBACzB;iBACJ;gBACD,IAAI,EAAE;oBACF,GAAG,EAAE;wBACD,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;wBAClD,oBAAoB,EAAE,YAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,QAAQ,EAAE;wBAC/F,sBAAsB;qBACzB;iBACJ;aACJ,CAAC;SACL;aAAM;YACH,MAAM,IAAI,kBAAS,CAAC,kCAAkC,EAAE,QAAQ,CAAC,CAAC;SACrE;IACL,CAAC;CACJ;AAhCD,4CAgCC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Fee } from '@yaswap/client';
|
|
2
|
+
import { BigNumber, FeeDetails } from '@yaswap/types';
|
|
3
|
+
import { Network, StaticJsonRpcProvider } from '@ethersproject/providers';
|
|
4
|
+
export declare class EIP1559FeeProvider extends Fee {
|
|
5
|
+
provider: StaticJsonRpcProvider;
|
|
6
|
+
constructor(provider: StaticJsonRpcProvider | string, network?: Network);
|
|
7
|
+
getBaseFeeMultiplier(baseFeeTrend: number): 1.6 | 1.4 | 1.2 | 1.1;
|
|
8
|
+
calculateMaxFeePerGas(maxPriorityFeePerGas: BigNumber, potentialMaxFee: BigNumber): BigNumber;
|
|
9
|
+
getFees(): Promise<FeeDetails>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EIP1559FeeProvider = void 0;
|
|
13
|
+
const client_1 = require("@yaswap/client");
|
|
14
|
+
const providers_1 = require("@ethersproject/providers");
|
|
15
|
+
const fee_suggestions_1 = require("@liquality/fee-suggestions");
|
|
16
|
+
const utils_1 = require("../utils");
|
|
17
|
+
class EIP1559FeeProvider extends client_1.Fee {
|
|
18
|
+
constructor(provider, network) {
|
|
19
|
+
super();
|
|
20
|
+
if (typeof provider === 'string') {
|
|
21
|
+
this.provider = new providers_1.StaticJsonRpcProvider(provider, network === null || network === void 0 ? void 0 : network.chainId);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.provider = provider;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
getBaseFeeMultiplier(baseFeeTrend) {
|
|
28
|
+
switch (baseFeeTrend) {
|
|
29
|
+
case 2:
|
|
30
|
+
return 1.6;
|
|
31
|
+
case 1:
|
|
32
|
+
return 1.4;
|
|
33
|
+
case 0:
|
|
34
|
+
return 1.2;
|
|
35
|
+
default:
|
|
36
|
+
return 1.1;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
calculateMaxFeePerGas(maxPriorityFeePerGas, potentialMaxFee) {
|
|
40
|
+
return maxPriorityFeePerGas.gt(potentialMaxFee) ? potentialMaxFee.plus(maxPriorityFeePerGas) : potentialMaxFee;
|
|
41
|
+
}
|
|
42
|
+
getFees() {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
const { maxPriorityFeeSuggestions, baseFeeSuggestion, currentBaseFee, baseFeeTrend, confirmationTimeByPriorityFee } = yield (0, fee_suggestions_1.suggestFees)(this.provider);
|
|
45
|
+
const bigCurrentBaseFee = (0, utils_1.toGwei)(currentBaseFee);
|
|
46
|
+
const bigBaseFeeSuggestion = (0, utils_1.toGwei)(baseFeeSuggestion);
|
|
47
|
+
const slowMaxPriorityFeePerGas = (0, utils_1.toGwei)(confirmationTimeByPriorityFee[45]);
|
|
48
|
+
const averageMaxPriorityFeePerGas = (0, utils_1.toGwei)(confirmationTimeByPriorityFee[30]);
|
|
49
|
+
const fastMaxPriorityFeePerGas = (0, utils_1.toGwei)(baseFeeTrend === 2 ? maxPriorityFeeSuggestions.urgent : confirmationTimeByPriorityFee[15]);
|
|
50
|
+
const multiplier = this.getBaseFeeMultiplier(baseFeeTrend);
|
|
51
|
+
const potentialMaxFee = bigBaseFeeSuggestion.times(multiplier);
|
|
52
|
+
const extra = {
|
|
53
|
+
currentBaseFeePerGas: bigCurrentBaseFee.toNumber(),
|
|
54
|
+
suggestedBaseFeePerGas: bigBaseFeeSuggestion.toNumber(),
|
|
55
|
+
baseFeeTrend,
|
|
56
|
+
};
|
|
57
|
+
const fees = {
|
|
58
|
+
slow: {
|
|
59
|
+
fee: Object.assign(Object.assign({}, extra), { maxFeePerGas: this.calculateMaxFeePerGas(slowMaxPriorityFeePerGas, potentialMaxFee).toNumber(), maxPriorityFeePerGas: slowMaxPriorityFeePerGas.toNumber() }),
|
|
60
|
+
},
|
|
61
|
+
average: {
|
|
62
|
+
fee: Object.assign(Object.assign({}, extra), { maxFeePerGas: this.calculateMaxFeePerGas(averageMaxPriorityFeePerGas, potentialMaxFee).toNumber(), maxPriorityFeePerGas: averageMaxPriorityFeePerGas.toNumber() }),
|
|
63
|
+
},
|
|
64
|
+
fast: {
|
|
65
|
+
fee: Object.assign(Object.assign({}, extra), { maxFeePerGas: this.calculateMaxFeePerGas(fastMaxPriorityFeePerGas, potentialMaxFee).toNumber(), maxPriorityFeePerGas: fastMaxPriorityFeePerGas.toNumber() }),
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
return fees;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.EIP1559FeeProvider = EIP1559FeeProvider;
|
|
73
|
+
//# sourceMappingURL=EIP1559FeeProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EIP1559FeeProvider.js","sourceRoot":"","sources":["../../../lib/fee/EIP1559FeeProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Fee } from '@yaswap/client';
|
|
2
|
+
import { FeeDetails } from '@yaswap/types';
|
|
3
|
+
import { Network, StaticJsonRpcProvider } from '@ethersproject/providers';
|
|
4
|
+
import { FeeOptions } from '../types';
|
|
5
|
+
export declare class RpcFeeProvider extends Fee {
|
|
6
|
+
private provider;
|
|
7
|
+
private feeOptions;
|
|
8
|
+
constructor(provider: StaticJsonRpcProvider | string, feeOptions?: FeeOptions, network?: Network);
|
|
9
|
+
getFees(): Promise<FeeDetails>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RpcFeeProvider = void 0;
|
|
13
|
+
const client_1 = require("@yaswap/client");
|
|
14
|
+
const types_1 = require("@yaswap/types");
|
|
15
|
+
const providers_1 = require("@ethersproject/providers");
|
|
16
|
+
const utils_1 = require("../utils");
|
|
17
|
+
class RpcFeeProvider extends client_1.Fee {
|
|
18
|
+
constructor(provider, feeOptions, network) {
|
|
19
|
+
super();
|
|
20
|
+
if (typeof provider === 'string') {
|
|
21
|
+
this.provider = new providers_1.StaticJsonRpcProvider(provider, network === null || network === void 0 ? void 0 : network.chainId);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
this.provider = provider;
|
|
25
|
+
}
|
|
26
|
+
this.feeOptions = {
|
|
27
|
+
slowMultiplier: (feeOptions === null || feeOptions === void 0 ? void 0 : feeOptions.slowMultiplier) || 1,
|
|
28
|
+
averageMultiplier: (feeOptions === null || feeOptions === void 0 ? void 0 : feeOptions.averageMultiplier) || 1.5,
|
|
29
|
+
fastMultiplier: (feeOptions === null || feeOptions === void 0 ? void 0 : feeOptions.fastMultiplier) || 2,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
getFees() {
|
|
33
|
+
var _a;
|
|
34
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
const feeData = yield this.provider.getFeeData();
|
|
36
|
+
const baseGasPrice = new types_1.BigNumber((_a = feeData.gasPrice) === null || _a === void 0 ? void 0 : _a.toString()).div(1e9).toNumber();
|
|
37
|
+
return {
|
|
38
|
+
slow: { fee: (0, utils_1.calculateFee)(baseGasPrice, this.feeOptions.slowMultiplier) },
|
|
39
|
+
average: { fee: (0, utils_1.calculateFee)(baseGasPrice, this.feeOptions.averageMultiplier) },
|
|
40
|
+
fast: { fee: (0, utils_1.calculateFee)(baseGasPrice, this.feeOptions.fastMultiplier) },
|
|
41
|
+
};
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.RpcFeeProvider = RpcFeeProvider;
|
|
46
|
+
//# sourceMappingURL=RpcFeeProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RpcFeeProvider.js","sourceRoot":"","sources":["../../../lib/fee/RpcFeeProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAqC;AACrC,yCAAsD;AACtD,wDAA0E;AAE1E,oCAAwC;AAExC,MAAa,cAAe,SAAQ,YAAG;IAInC,YAAY,QAAwC,EAAE,UAAuB,EAAE,OAAiB;QAC5F,KAAK,EAAE,CAAC;QAER,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,iCAAqB,CAAC,QAAQ,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,CAAC;SACzE;aAAM;YACH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;SAC5B;QAED,IAAI,CAAC,UAAU,GAAG;YACd,cAAc,EAAE,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,cAAc,KAAI,CAAC;YAC/C,iBAAiB,EAAE,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,iBAAiB,KAAI,GAAG;YACvD,cAAc,EAAE,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,cAAc,KAAI,CAAC;SAClD,CAAC;IACN,CAAC;IAEK,OAAO;;;YACT,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YACjD,MAAM,YAAY,GAAG,IAAI,iBAAS,CAAC,MAAA,OAAO,CAAC,QAAQ,0CAAE,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrF,OAAO;gBACH,IAAI,EAAE,EAAE,GAAG,EAAE,IAAA,oBAAY,EAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;gBACzE,OAAO,EAAE,EAAE,GAAG,EAAE,IAAA,oBAAY,EAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE;gBAC/E,IAAI,EAAE,EAAE,GAAG,EAAE,IAAA,oBAAY,EAAC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;aAC5E,CAAC;;KACL;CACJ;AA7BD,wCA6BC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { EvmChainProvider } from './chain/EvmChainProvider';
|
|
2
|
+
export { EvmMulticallProvider } from './chain/EvmMulticallProvider';
|
|
3
|
+
export { OptimismChainProvider } from './chain/OptimismChainProvider';
|
|
4
|
+
export { EIP1559FeeApiProvider } from './fee/EIP1559FeeApiProvider';
|
|
5
|
+
export { EIP1559FeeProvider } from './fee/EIP1559FeeProvider';
|
|
6
|
+
export { RpcFeeProvider } from './fee/RpcFeeProvider';
|
|
7
|
+
export { EnsProvider } from './naming/EnsProvider';
|
|
8
|
+
export { EvmNetworks } from './networks';
|
|
9
|
+
export { CovalentNftProvider } from './nft/CovalentNftProvider';
|
|
10
|
+
export { EvmNftProvider } from './nft/EvmNftProvider';
|
|
11
|
+
export { InfuraNftProvider } from './nft/InfuraNftProvider';
|
|
12
|
+
export { OpenSeaNftProvider } from './nft/OpenSeaNftProvider';
|
|
13
|
+
export { EvmBaseSwapProvider } from './swap/EvmBaseSwapProvider';
|
|
14
|
+
export { EvmSwapProvider } from './swap/EvmSwapProvider';
|
|
15
|
+
export * as Typechain from './typechain';
|
|
16
|
+
export * as EvmTypes from './types';
|
|
17
|
+
export * as EvmUtils from './utils';
|
|
18
|
+
export { EvmBaseWalletProvider } from './wallet/EvmBaseWalletProvider';
|
|
19
|
+
export { EvmWalletProvider } from './wallet/EvmWalletProvider';
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.EvmWalletProvider = exports.EvmBaseWalletProvider = exports.EvmUtils = exports.EvmTypes = exports.Typechain = exports.EvmSwapProvider = exports.EvmBaseSwapProvider = exports.OpenSeaNftProvider = exports.InfuraNftProvider = exports.EvmNftProvider = exports.CovalentNftProvider = exports.EvmNetworks = exports.EnsProvider = exports.RpcFeeProvider = exports.EIP1559FeeProvider = exports.EIP1559FeeApiProvider = exports.OptimismChainProvider = exports.EvmMulticallProvider = exports.EvmChainProvider = void 0;
|
|
27
|
+
var EvmChainProvider_1 = require("./chain/EvmChainProvider");
|
|
28
|
+
Object.defineProperty(exports, "EvmChainProvider", { enumerable: true, get: function () { return EvmChainProvider_1.EvmChainProvider; } });
|
|
29
|
+
var EvmMulticallProvider_1 = require("./chain/EvmMulticallProvider");
|
|
30
|
+
Object.defineProperty(exports, "EvmMulticallProvider", { enumerable: true, get: function () { return EvmMulticallProvider_1.EvmMulticallProvider; } });
|
|
31
|
+
var OptimismChainProvider_1 = require("./chain/OptimismChainProvider");
|
|
32
|
+
Object.defineProperty(exports, "OptimismChainProvider", { enumerable: true, get: function () { return OptimismChainProvider_1.OptimismChainProvider; } });
|
|
33
|
+
var EIP1559FeeApiProvider_1 = require("./fee/EIP1559FeeApiProvider");
|
|
34
|
+
Object.defineProperty(exports, "EIP1559FeeApiProvider", { enumerable: true, get: function () { return EIP1559FeeApiProvider_1.EIP1559FeeApiProvider; } });
|
|
35
|
+
var EIP1559FeeProvider_1 = require("./fee/EIP1559FeeProvider");
|
|
36
|
+
Object.defineProperty(exports, "EIP1559FeeProvider", { enumerable: true, get: function () { return EIP1559FeeProvider_1.EIP1559FeeProvider; } });
|
|
37
|
+
var RpcFeeProvider_1 = require("./fee/RpcFeeProvider");
|
|
38
|
+
Object.defineProperty(exports, "RpcFeeProvider", { enumerable: true, get: function () { return RpcFeeProvider_1.RpcFeeProvider; } });
|
|
39
|
+
var EnsProvider_1 = require("./naming/EnsProvider");
|
|
40
|
+
Object.defineProperty(exports, "EnsProvider", { enumerable: true, get: function () { return EnsProvider_1.EnsProvider; } });
|
|
41
|
+
var networks_1 = require("./networks");
|
|
42
|
+
Object.defineProperty(exports, "EvmNetworks", { enumerable: true, get: function () { return networks_1.EvmNetworks; } });
|
|
43
|
+
var CovalentNftProvider_1 = require("./nft/CovalentNftProvider");
|
|
44
|
+
Object.defineProperty(exports, "CovalentNftProvider", { enumerable: true, get: function () { return CovalentNftProvider_1.CovalentNftProvider; } });
|
|
45
|
+
var EvmNftProvider_1 = require("./nft/EvmNftProvider");
|
|
46
|
+
Object.defineProperty(exports, "EvmNftProvider", { enumerable: true, get: function () { return EvmNftProvider_1.EvmNftProvider; } });
|
|
47
|
+
var InfuraNftProvider_1 = require("./nft/InfuraNftProvider");
|
|
48
|
+
Object.defineProperty(exports, "InfuraNftProvider", { enumerable: true, get: function () { return InfuraNftProvider_1.InfuraNftProvider; } });
|
|
49
|
+
var OpenSeaNftProvider_1 = require("./nft/OpenSeaNftProvider");
|
|
50
|
+
Object.defineProperty(exports, "OpenSeaNftProvider", { enumerable: true, get: function () { return OpenSeaNftProvider_1.OpenSeaNftProvider; } });
|
|
51
|
+
var EvmBaseSwapProvider_1 = require("./swap/EvmBaseSwapProvider");
|
|
52
|
+
Object.defineProperty(exports, "EvmBaseSwapProvider", { enumerable: true, get: function () { return EvmBaseSwapProvider_1.EvmBaseSwapProvider; } });
|
|
53
|
+
var EvmSwapProvider_1 = require("./swap/EvmSwapProvider");
|
|
54
|
+
Object.defineProperty(exports, "EvmSwapProvider", { enumerable: true, get: function () { return EvmSwapProvider_1.EvmSwapProvider; } });
|
|
55
|
+
exports.Typechain = __importStar(require("./typechain"));
|
|
56
|
+
exports.EvmTypes = __importStar(require("./types"));
|
|
57
|
+
exports.EvmUtils = __importStar(require("./utils"));
|
|
58
|
+
var EvmBaseWalletProvider_1 = require("./wallet/EvmBaseWalletProvider");
|
|
59
|
+
Object.defineProperty(exports, "EvmBaseWalletProvider", { enumerable: true, get: function () { return EvmBaseWalletProvider_1.EvmBaseWalletProvider; } });
|
|
60
|
+
var EvmWalletProvider_1 = require("./wallet/EvmWalletProvider");
|
|
61
|
+
Object.defineProperty(exports, "EvmWalletProvider", { enumerable: true, get: function () { return EvmWalletProvider_1.EvmWalletProvider; } });
|
|
62
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAA4D;AAAnD,oHAAA,gBAAgB,OAAA;AACzB,qEAAoE;AAA3D,4HAAA,oBAAoB,OAAA;AAC7B,uEAAsE;AAA7D,8HAAA,qBAAqB,OAAA;AAC9B,qEAAoE;AAA3D,8HAAA,qBAAqB,OAAA;AAC9B,+DAA8D;AAArD,wHAAA,kBAAkB,OAAA;AAC3B,uDAAsD;AAA7C,gHAAA,cAAc,OAAA;AACvB,oDAAmD;AAA1C,0GAAA,WAAW,OAAA;AACpB,uCAAyC;AAAhC,uGAAA,WAAW,OAAA;AACpB,iEAAgE;AAAvD,0HAAA,mBAAmB,OAAA;AAC5B,uDAAsD;AAA7C,gHAAA,cAAc,OAAA;AACvB,6DAA4D;AAAnD,sHAAA,iBAAiB,OAAA;AAC1B,+DAA8D;AAArD,wHAAA,kBAAkB,OAAA;AAC3B,kEAAiE;AAAxD,0HAAA,mBAAmB,OAAA;AAC5B,0DAAyD;AAAhD,kHAAA,eAAe,OAAA;AACxB,yDAAyC;AACzC,oDAAoC;AACpC,oDAAoC;AACpC,wEAAuE;AAA9D,8HAAA,qBAAqB,OAAA;AAC9B,gEAA+D;AAAtD,sHAAA,iBAAiB,OAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { AddressType, NamingProvider } from '@yaswap/types';
|
|
2
|
+
import { StaticJsonRpcProvider } from '@ethersproject/providers';
|
|
3
|
+
export declare class EnsProvider implements NamingProvider {
|
|
4
|
+
private _provider;
|
|
5
|
+
constructor(provider: StaticJsonRpcProvider);
|
|
6
|
+
/**
|
|
7
|
+
* @param address - resolve name to address
|
|
8
|
+
* @returns - address
|
|
9
|
+
*/
|
|
10
|
+
resolveName(name: string): Promise<AddressType>;
|
|
11
|
+
/**
|
|
12
|
+
* @param address - look up address
|
|
13
|
+
* @returns - ens
|
|
14
|
+
*/
|
|
15
|
+
lookupAddress(address: AddressType): Promise<string>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.EnsProvider = void 0;
|
|
13
|
+
class EnsProvider {
|
|
14
|
+
constructor(provider) {
|
|
15
|
+
this._provider = provider;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @param address - resolve name to address
|
|
19
|
+
* @returns - address
|
|
20
|
+
*/
|
|
21
|
+
resolveName(name) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
return this._provider.resolveName(name);
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* @param address - look up address
|
|
28
|
+
* @returns - ens
|
|
29
|
+
*/
|
|
30
|
+
lookupAddress(address) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
return this._provider.lookupAddress(address.toString());
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.EnsProvider = EnsProvider;
|
|
37
|
+
//# sourceMappingURL=EnsProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnsProvider.js","sourceRoot":"","sources":["../../../lib/naming/EnsProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,MAAa,WAAW;IAGpB,YAAY,QAA+B;QACvC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACU,WAAW,CAAC,IAAY;;YACjC,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;KAAA;IAED;;;OAGG;IACU,aAAa,CAAC,OAAoB;;YAC3C,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5D,CAAC;KAAA;CACJ;AAtBD,kCAsBC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Network } from '@yaswap/types';
|
|
2
|
+
declare const EvmNetworks: {
|
|
3
|
+
ethereum_mainnet: Network;
|
|
4
|
+
classic_mainnet: Network;
|
|
5
|
+
ganache: Network;
|
|
6
|
+
ropsten: Network;
|
|
7
|
+
rinkeby: Network;
|
|
8
|
+
kovan: Network;
|
|
9
|
+
goerli: Network;
|
|
10
|
+
rsk_mainnet: Network;
|
|
11
|
+
rsk_testnet: Network;
|
|
12
|
+
rsk_regtest: Network;
|
|
13
|
+
bsc_mainnet: Network;
|
|
14
|
+
bsc_testnet: Network;
|
|
15
|
+
polygon_mainnet: Network;
|
|
16
|
+
polygon_testnet: Network;
|
|
17
|
+
arbitrum_testnet: Network;
|
|
18
|
+
arbitrum_mainnet: Network;
|
|
19
|
+
avax_mainnet: Network;
|
|
20
|
+
avax_testnet: Network;
|
|
21
|
+
fuse_testnet: Network;
|
|
22
|
+
fuse_mainnet: Network;
|
|
23
|
+
optimism_mainnet: Network;
|
|
24
|
+
optimism_testnet: Network;
|
|
25
|
+
local: Network;
|
|
26
|
+
};
|
|
27
|
+
export { EvmNetworks };
|