Add more program labels to explorer (#19630)

This commit is contained in:
Justin Starry 2021-09-06 15:00:13 -07:00 committed by GitHub
parent 46db029a00
commit 37fe5139cc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 85 additions and 16 deletions

View File

@ -25,6 +25,7 @@ export type ProgramName =
export enum PROGRAM_NAMES {
// native built-ins
ADDRESS_MAP = "Address Map Program",
CONFIG = "Config Program",
STAKE = "Stake Program",
SYSTEM = "System Program",
@ -37,20 +38,43 @@ export enum PROGRAM_NAMES {
LENDING = "Lending Program",
MEMO = "Memo Program",
MEMO_2 = "Memo Program v2",
NAME = "Name Service Program",
STAKE_POOL = "Stake Pool Program",
SWAP = "Swap Program",
TOKEN = "Token Program",
TOKEN_METADATA = "Token Metadata Program",
TOKEN_VAULT = "Token Vault Program",
// other
WORMHOLE = "Wormhole",
ACUMEN = "Acumen Program",
BONFIDA_POOL = "Bonfida Pool Program",
BREAK_SOLANA = "Break Solana Program",
RAYDIUM_LIQUIDITY_1 = "Raydium Liquidity Pool Program v1",
RAYDIUM_LIQUIDITY_2 = "Raydium Liquidity Pool Program v2",
MANGO_GOVERNANCE = "Mango Governance Program",
MANGO_ICO = "Mango ICO Program",
MANGO_1 = "Mango Program v1",
MANGO_2 = "Mango Program v2",
MANGO_3 = "Mango Program v3",
MARINADE = "Marinade Staking Program",
METAPLEX = "Metaplex Program",
NFT_AUCTION = "NFT Auction Program",
NFT_CANDY_MACHINE = "NFT Candy Machine Program",
ORCA = "Orca Swap Program",
PORT = "Port Finance Program",
PYTH = "Pyth Oracle Program",
RAYDIUM_AMM = "Raydium AMM Program",
RAYDIUM_IDO = "Raydium IDO Program",
RAYDIUM_LP_1 = "Raydium Liquidity Pool Program v1",
RAYDIUM_LP_2 = "Raydium Liquidity Pool Program v2",
RAYDIUM_STAKING = "Raydium Staking Program",
SABER_SWAP = "Saber Stable Swap Program",
SERUM_1 = "Serum Program v1",
SERUM_2 = "Serum Program v2",
SERUM_3 = "Serum Program v3",
MANGO_3 = "Mango Program v3",
SOLEND = "Solend Program",
STEP_SWAP = "Step Finance Swap Program",
SUNNY = "Sunny Yield Aggregator Program",
SWITCHBOARD = "Switchboard Oracle Program",
WORMHOLE = "Wormhole",
}
const ALL_CLUSTERS = [
@ -61,11 +85,11 @@ const ALL_CLUSTERS = [
];
const LIVE_CLUSTERS = [Cluster.Devnet, Cluster.Testnet, Cluster.MainnetBeta];
const MAINNET_ONLY = [Cluster.MainnetBeta];
export const PROGRAM_DEPLOYMENTS = {
// native built-ins
[PROGRAM_NAMES.ADDRESS_MAP]: ALL_CLUSTERS,
[PROGRAM_NAMES.CONFIG]: ALL_CLUSTERS,
[PROGRAM_NAMES.STAKE]: ALL_CLUSTERS,
[PROGRAM_NAMES.SYSTEM]: ALL_CLUSTERS,
@ -78,24 +102,48 @@ export const PROGRAM_DEPLOYMENTS = {
[PROGRAM_NAMES.LENDING]: LIVE_CLUSTERS,
[PROGRAM_NAMES.MEMO]: ALL_CLUSTERS,
[PROGRAM_NAMES.MEMO_2]: ALL_CLUSTERS,
[PROGRAM_NAMES.NAME]: LIVE_CLUSTERS,
[PROGRAM_NAMES.STAKE_POOL]: [Cluster.Devnet, Cluster.Testnet] as Cluster[],
[PROGRAM_NAMES.SWAP]: LIVE_CLUSTERS,
[PROGRAM_NAMES.TOKEN]: ALL_CLUSTERS,
[PROGRAM_NAMES.TOKEN_METADATA]: LIVE_CLUSTERS,
[PROGRAM_NAMES.TOKEN_VAULT]: LIVE_CLUSTERS,
// other
[PROGRAM_NAMES.WORMHOLE]: MAINNET_ONLY,
[PROGRAM_NAMES.ACUMEN]: MAINNET_ONLY,
[PROGRAM_NAMES.BONFIDA_POOL]: MAINNET_ONLY,
[PROGRAM_NAMES.BREAK_SOLANA]: LIVE_CLUSTERS,
[PROGRAM_NAMES.RAYDIUM_LIQUIDITY_1]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_LIQUIDITY_2]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_GOVERNANCE]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_ICO]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_1]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_2]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_3]: MAINNET_ONLY,
[PROGRAM_NAMES.MARINADE]: MAINNET_ONLY,
[PROGRAM_NAMES.METAPLEX]: LIVE_CLUSTERS,
[PROGRAM_NAMES.NFT_AUCTION]: LIVE_CLUSTERS,
[PROGRAM_NAMES.NFT_CANDY_MACHINE]: LIVE_CLUSTERS,
[PROGRAM_NAMES.ORCA]: MAINNET_ONLY,
[PROGRAM_NAMES.PORT]: MAINNET_ONLY,
[PROGRAM_NAMES.PYTH]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_AMM]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_IDO]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_LP_1]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_LP_2]: MAINNET_ONLY,
[PROGRAM_NAMES.RAYDIUM_STAKING]: MAINNET_ONLY,
[PROGRAM_NAMES.SABER_SWAP]: MAINNET_ONLY,
[PROGRAM_NAMES.SERUM_1]: MAINNET_ONLY,
[PROGRAM_NAMES.SERUM_2]: MAINNET_ONLY,
[PROGRAM_NAMES.SERUM_3]: MAINNET_ONLY,
[PROGRAM_NAMES.MANGO_3]: MAINNET_ONLY,
[PROGRAM_NAMES.SOLEND]: MAINNET_ONLY,
[PROGRAM_NAMES.STEP_SWAP]: MAINNET_ONLY,
[PROGRAM_NAMES.SUNNY]: MAINNET_ONLY,
[PROGRAM_NAMES.SWITCHBOARD]: MAINNET_ONLY,
[PROGRAM_NAMES.WORMHOLE]: MAINNET_ONLY,
} as const;
export const PROGRAM_NAME_BY_ID = {
// native built-ins
AddressMap111111111111111111111111111111111: PROGRAM_NAMES.ADDRESS_MAP,
Config1111111111111111111111111111111111111: PROGRAM_NAMES.CONFIG,
[StakeProgram.programId.toBase58()]: PROGRAM_NAMES.STAKE,
[SystemProgram.programId.toBase58()]: PROGRAM_NAMES.SYSTEM,
@ -105,25 +153,46 @@ export const PROGRAM_NAME_BY_ID = {
// spl
ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL: PROGRAM_NAMES.ASSOCIATED_TOKEN,
Feat1YXHhH6t1juaWF74WLcfv4XoNocjXA6sPWHNgAse: PROGRAM_NAMES.FEATURE_PROPOSAL,
LendZqTs7gn5CTSJU1jWKhKuVpjJGom45nnwPb2AMTi: PROGRAM_NAMES.LENDING,
Memo1UhkJRfHyvLMcVucJwxXeuD728EqVDDwQDxFMNo: PROGRAM_NAMES.MEMO,
MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr: PROGRAM_NAMES.MEMO_2,
namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX: PROGRAM_NAMES.NAME,
SPoo1xuN9wGpxNjGnPNbRPtpQ7mHgKM8d9BeFC549Jya: PROGRAM_NAMES.STAKE_POOL,
SwaPpA9LAaLfeLi3a68M4DjnLqgtticKg6CnyNwgAC8: PROGRAM_NAMES.SWAP,
TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA: PROGRAM_NAMES.TOKEN,
LendZqTs7gn5CTSJU1jWKhKuVpjJGom45nnwPb2AMTi: PROGRAM_NAMES.LENDING,
metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s: PROGRAM_NAMES.TOKEN_METADATA,
vau1zxA2LbssAUEF7Gpw91zMM1LvXrvpzJtmZ58rPsn: PROGRAM_NAMES.TOKEN_VAULT,
// other
WormT3McKhFJ2RkiGpdw9GKvNCrB2aB54gb2uV9MfQC: PROGRAM_NAMES.WORMHOLE,
C64kTdg1Hzv5KoQmZrQRcm2Qz7PkxtFBgw7EpFhvYn8W: PROGRAM_NAMES.ACUMEN,
WvmTNLpGMVbwJVYztYL4Hnsy82cJhQorxjnnXcRm3b6: PROGRAM_NAMES.BONFIDA_POOL,
BrEAK7zGZ6dM71zUDACDqJnekihmwF15noTddWTsknjC: PROGRAM_NAMES.BREAK_SOLANA,
RVKd61ztZW9GUwhRbbLoYVRE5Xf1B2tVscKqwZqXgEr:
PROGRAM_NAMES.RAYDIUM_LIQUIDITY_1,
"27haf8L6oxUeXrHrgEgsexjSY5hbVUWEmvv9Nyxg8vQv":
PROGRAM_NAMES.RAYDIUM_LIQUIDITY_2,
GqTPL6qRf5aUuqscLh8Rg2HTxPUXfhhAXDptTLhp1t2J: PROGRAM_NAMES.MANGO_GOVERNANCE,
"7sPptkymzvayoSbLXzBsXEF8TSf3typNnAWkrKrDizNb": PROGRAM_NAMES.MANGO_ICO,
JD3bq9hGdy38PuWQ4h2YJpELmHVGPPfFSuFkpzAd9zfu: PROGRAM_NAMES.MANGO_1,
"5fNfvyp5czQVX77yoACa3JJVEhdRaWjPuazuWgjhTqEH": PROGRAM_NAMES.MANGO_2,
mv3ekLzLbnVPNxjSKvqBpU3ZeZXPQdEC3bp5MDEBG68: PROGRAM_NAMES.MANGO_3,
MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD: PROGRAM_NAMES.MARINADE,
p1exdMJcjVao65QdewkaZRUnU6VPSXhus9n2GzWfh98: PROGRAM_NAMES.METAPLEX,
auctxRXPeJoc4817jDhf4HbjnhEcr1cCXenosMhK5R8: PROGRAM_NAMES.NFT_AUCTION,
cndyAnrLdpjq1Ssp1z8xxDsB8dxe7u4HL5Nxi2K5WXZ: PROGRAM_NAMES.NFT_CANDY_MACHINE,
Ez52BLSoZw3MxWxMK4ADsJXqzUiYW9sUnwcrrQwQGdLT: PROGRAM_NAMES.ORCA,
Port7uDYB3wk6GJAw4KT1WpTeMtSu9bTcChBHkX2LfR: PROGRAM_NAMES.PORT,
FsJ3A3u2vn5cTVofAjvy6y5kwABJAqYWpe4975bi2epH: PROGRAM_NAMES.PYTH,
"675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8": PROGRAM_NAMES.RAYDIUM_AMM,
"9HzJyW1qZsEiSfMUf6L2jo3CcTKAyBmSyKdwQeYisHrC": PROGRAM_NAMES.RAYDIUM_IDO,
RVKd61ztZW9GUwhRbbLoYVRE5Xf1B2tVscKqwZqXgEr: PROGRAM_NAMES.RAYDIUM_LP_1,
"27haf8L6oxUeXrHrgEgsexjSY5hbVUWEmvv9Nyxg8vQv": PROGRAM_NAMES.RAYDIUM_LP_2,
EhhTKczWMGQt46ynNeRX1WfeagwwJd7ufHvCDjRxjo5Q: PROGRAM_NAMES.RAYDIUM_STAKING,
SSwpkEEcbUqx4vtoEByFjSkhKdCT862DNVb52nZg1UZ: PROGRAM_NAMES.SABER_SWAP,
BJ3jrUzddfuSrZHXSCxMUUQsjKEyLmuuyZebkcaFp2fg: PROGRAM_NAMES.SERUM_1,
EUqojwWA2rd19FZrzeBncJsm38Jm1hEhE3zsmX3bRc2o: PROGRAM_NAMES.SERUM_2,
"9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin": PROGRAM_NAMES.SERUM_3,
mv3ekLzLbnVPNxjSKvqBpU3ZeZXPQdEC3bp5MDEBG68: PROGRAM_NAMES.MANGO_3,
So1endDq2YkqhipRh3WViPa8hdiSpxWy6z3Z6tMCpAo: PROGRAM_NAMES.SOLEND,
"22Y43yTVxuUkoRKdm9thyRhQ3SdgQS7c7kB6UNCiaczD": PROGRAM_NAMES.STEP_SWAP,
Crt7UoUR6QgrFrN7j8rmSQpUTNWNSitSwWvsWGf1qZ5t: PROGRAM_NAMES.SUNNY,
DtmE9D2CSB4L5D6A15mraeEjrGMm6auWVzgaD8hK2tZM: PROGRAM_NAMES.SWITCHBOARD,
WormT3McKhFJ2RkiGpdw9GKvNCrB2aB54gb2uV9MfQC: PROGRAM_NAMES.WORMHOLE,
} as const;
export type LoaderName = typeof LOADER_IDS[keyof typeof LOADER_IDS];