PHP WebShell
Текущая директория: /opt/BitGoJS/modules/sdk-coin-polygon/src
Просмотр файла: polygonToken.ts
/**
* @prettier
*/
import { EthLikeToken, CoinNames, recoveryBlockchainExplorerQuery } from '@bitgo/abstract-eth';
import { EthLikeTokenConfig, coins } from '@bitgo/statics';
import { BitGoBase, CoinConstructor, MPCAlgorithm, NamedCoinConstructor, common } from '@bitgo/sdk-core';
import { TransactionBuilder } from './lib';
export { EthLikeTokenConfig };
export class PolygonToken extends EthLikeToken {
public readonly tokenConfig: EthLikeTokenConfig;
static coinNames: CoinNames = {
Mainnet: 'polygon',
Testnet: 'tpolygon',
};
constructor(bitgo: BitGoBase, tokenConfig: EthLikeTokenConfig) {
super(bitgo, tokenConfig, PolygonToken.coinNames);
}
static createTokenConstructor(config: EthLikeTokenConfig): CoinConstructor {
return super.createTokenConstructor(config, PolygonToken.coinNames);
}
static createTokenConstructors(): NamedCoinConstructor[] {
return super.createTokenConstructors(PolygonToken.coinNames);
}
protected getTransactionBuilder(): TransactionBuilder {
return new TransactionBuilder(coins.get(this.getBaseChain()));
}
/**
* Make a query to Polygonscan for information such as balance, token balance, solidity calls
* @param {Object} query key-value pairs of parameters to append after /api
* @returns {Promise<Object>} response from Polygonscan
*/
async recoveryBlockchainExplorerQuery(query: Record<string, string>): Promise<Record<string, unknown>> {
const apiToken = common.Environments[this.bitgo.getEnv()].polygonscanApiToken;
const explorerUrl = common.Environments[this.bitgo.getEnv()].polygonscanBaseUrl;
return await recoveryBlockchainExplorerQuery(query, explorerUrl as string, apiToken);
}
/** @inheritDoc */
supportsTss(): boolean {
return true;
}
/** @inheritDoc */
getMPCAlgorithm(): MPCAlgorithm {
return 'ecdsa';
}
getFullName(): string {
return 'Polygon Token';
}
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!