@ledgerhq/evm-tools
Version:
EVM tooling used for coin integrations & app bindings
65 lines (58 loc) • 1.98 kB
text/typescript
/* istanbul ignore file: pure exports */
/**
* List of selectors (hexadecimal representation of the used method's signature) related to
* ERC20 (Tokens), ERC721/ERC1155 (NFT).
* You can verify and/or get more info about them on http://4byte.directory
*/
import {
ARBITRUM_CLEAR_SIGNED_SELECTORS,
AVALANCHE_C_CHAIN_CLEAR_SIGNED_SELECTORS,
BASE_CLEAR_SIGNED_SELECTORS,
BSC_CLEAR_SIGNED_SELECTORS,
ETHEREUM_CLEAR_SIGNED_SELECTORS,
ETHEREUM_GOERLI_CLEAR_SIGNED_SELECTORS,
ETHEREUM_HOLESKY_CLEAR_SIGNED_SELECTORS,
ETHEREUM_ROPSTEN_CLEAR_SIGNED_SELECTORS,
FANTOM_CLEAR_SIGNED_SELECTORS,
OPTIMISM_CLEAR_SIGNED_SELECTORS,
POLYGON_CLEAR_SIGNED_SELECTORS,
POLYGON_ZK_EVM_CLEAR_SIGNED_SELECTORS,
ZKSYNC_CLEAR_SIGNED_SELECTORS,
} from "./dappSelectors";
export enum ERC20_CLEAR_SIGNED_SELECTORS {
APPROVE = "0x095ea7b3",
TRANSFER = "0xa9059cbb",
}
export enum ERC721_CLEAR_SIGNED_SELECTORS {
APPROVE = "0x095ea7b3",
SET_APPROVAL_FOR_ALL = "0xa22cb465",
TRANSFER_FROM = "0x23b872dd",
SAFE_TRANSFER_FROM = "0x42842e0e",
SAFE_TRANSFER_FROM_WITH_DATA = "0xb88d4fde",
}
export enum ERC1155_CLEAR_SIGNED_SELECTORS {
SET_APPROVAL_FOR_ALL = "0xa22cb465",
SAFE_TRANSFER_FROM = "0xf242432a",
SAFE_BATCH_TRANSFER_FROM = "0x2eb2c2d6",
}
export const DAPP_SELECTORS: Record<string, string> = {
...ARBITRUM_CLEAR_SIGNED_SELECTORS,
...AVALANCHE_C_CHAIN_CLEAR_SIGNED_SELECTORS,
...BASE_CLEAR_SIGNED_SELECTORS,
...BSC_CLEAR_SIGNED_SELECTORS,
...ETHEREUM_CLEAR_SIGNED_SELECTORS,
...ETHEREUM_GOERLI_CLEAR_SIGNED_SELECTORS,
...ETHEREUM_HOLESKY_CLEAR_SIGNED_SELECTORS,
...ETHEREUM_ROPSTEN_CLEAR_SIGNED_SELECTORS,
...FANTOM_CLEAR_SIGNED_SELECTORS,
...OPTIMISM_CLEAR_SIGNED_SELECTORS,
...POLYGON_CLEAR_SIGNED_SELECTORS,
...POLYGON_ZK_EVM_CLEAR_SIGNED_SELECTORS,
...ZKSYNC_CLEAR_SIGNED_SELECTORS,
};
export default {
ERC20_CLEAR_SIGNED_SELECTORS,
ERC721_CLEAR_SIGNED_SELECTORS,
ERC1155_CLEAR_SIGNED_SELECTORS,
DAPP_SELECTORS,
};