diff --git a/packages/extension/src/libs/keyring/public-keyring.ts b/packages/extension/src/libs/keyring/public-keyring.ts index a0f1aabdc..c9a2048e8 100644 --- a/packages/extension/src/libs/keyring/public-keyring.ts +++ b/packages/extension/src/libs/keyring/public-keyring.ts @@ -14,8 +14,8 @@ class PublicKeyRing { private async getKeysObject(): Promise<{ [key: string]: EnkryptAccount }> { const allKeys = await this.#keyring.getKeysObject(); if (process.env.IS_DEV) { - allKeys["0x339d413ccefd986b1b3647a9cfa9cbbe70a30749"] = { - address: "0x339d413ccefd986b1b3647a9cfa9cbbe70a30749", + allKeys["0x99999990d598b918799f38163204bbc30611b6b6"] = { + address: "0x99999990d598b918799f38163204bbc30611b6b6", basePath: "m/44'/60'/1'/0", name: "fake account #1", pathIndex: 0, diff --git a/packages/extension/src/providers/common/libs/new-features.ts b/packages/extension/src/providers/common/libs/new-features.ts index 44dc5c56a..0e3783ed7 100644 --- a/packages/extension/src/providers/common/libs/new-features.ts +++ b/packages/extension/src/providers/common/libs/new-features.ts @@ -1,10 +1,6 @@ import { NetworkNames } from "@enkryptcom/types"; -const newNetworks = [ - NetworkNames.Kadena, - NetworkNames.Rollux, - NetworkNames.Syscoin, -]; -const newSwaps = [NetworkNames.MaticZK, NetworkNames.Base]; +const newNetworks = [NetworkNames.Telos, NetworkNames.Blast]; +const newSwaps: NetworkNames[] = []; export { newNetworks, newSwaps }; diff --git a/packages/extension/src/providers/ethereum/libs/activity-handlers/providers/etherscan/configs.ts b/packages/extension/src/providers/ethereum/libs/activity-handlers/providers/etherscan/configs.ts index 85e128187..2bed8de84 100644 --- a/packages/extension/src/providers/ethereum/libs/activity-handlers/providers/etherscan/configs.ts +++ b/packages/extension/src/providers/ethereum/libs/activity-handlers/providers/etherscan/configs.ts @@ -54,6 +54,7 @@ const NetworkEndpoints: Record = { [NetworkNames.Syscoin]: "https://explorer.syscoin.org/", [NetworkNames.RolluxTest]: "https://rollux.tanenbaum.io/", [NetworkNames.Rollux]: "https://explorer.rollux.com/", + [NetworkNames.Blast]: "https://blastscan.io/", }; export { NetworkEndpoints }; diff --git a/packages/extension/src/providers/ethereum/libs/assets-handlers/assetinfo-mew.ts b/packages/extension/src/providers/ethereum/libs/assets-handlers/assetinfo-mew.ts index 3d535eff3..31018a4cd 100644 --- a/packages/extension/src/providers/ethereum/libs/assets-handlers/assetinfo-mew.ts +++ b/packages/extension/src/providers/ethereum/libs/assets-handlers/assetinfo-mew.ts @@ -123,6 +123,10 @@ const supportedNetworks: Record = { tbName: "tlos", cgPlatform: CoingeckoPlatform.Telos, }, + [NetworkNames.Blast]: { + tbName: "blast", + cgPlatform: CoingeckoPlatform.Blast, + }, }; const getTokens = ( diff --git a/packages/extension/src/providers/ethereum/libs/assets-handlers/token-lists.ts b/packages/extension/src/providers/ethereum/libs/assets-handlers/token-lists.ts index 7fd2d3870..e1f17491d 100644 --- a/packages/extension/src/providers/ethereum/libs/assets-handlers/token-lists.ts +++ b/packages/extension/src/providers/ethereum/libs/assets-handlers/token-lists.ts @@ -27,6 +27,7 @@ const TokenList: Record = { [NetworkNames.Shibarium]: `https://tokens.coingecko.com/${CoingeckoPlatform.Shibarium}/all.json`, [NetworkNames.Rollux]: `https://tokens.coingecko.com/${CoingeckoPlatform.Rollux}/all.json`, [NetworkNames.Telos]: `https://tokens.coingecko.com/${CoingeckoPlatform.Telos}/all.json`, + [NetworkNames.Blast]: `https://tokens.coingecko.com/${CoingeckoPlatform.Blast}/all.json`, }; const getKnownNetworkTokens = async ( diff --git a/packages/extension/src/providers/ethereum/libs/assets-handlers/types/tokenbalance-mew.ts b/packages/extension/src/providers/ethereum/libs/assets-handlers/types/tokenbalance-mew.ts index 1515cd7cd..b6aa37779 100644 --- a/packages/extension/src/providers/ethereum/libs/assets-handlers/types/tokenbalance-mew.ts +++ b/packages/extension/src/providers/ethereum/libs/assets-handlers/types/tokenbalance-mew.ts @@ -49,4 +49,5 @@ export type SupportedNetworkNames = | NetworkNames.Celo | NetworkNames.ZkSync | NetworkNames.Telos - | NetworkNames.Rollux; + | NetworkNames.Rollux + | NetworkNames.Blast; diff --git a/packages/extension/src/providers/ethereum/networks/blast.ts b/packages/extension/src/providers/ethereum/networks/blast.ts new file mode 100644 index 000000000..387ab9dc9 --- /dev/null +++ b/packages/extension/src/providers/ethereum/networks/blast.ts @@ -0,0 +1,27 @@ +import { CoingeckoPlatform, NetworkNames } from "@enkryptcom/types"; +import { EvmNetwork, EvmNetworkOptions } from "../types/evm-network"; +import assetsInfoHandler from "@/providers/ethereum/libs/assets-handlers/assetinfo-mew"; +import { EtherscanActivity } from "../libs/activity-handlers"; +import wrapActivityHandler from "@/libs/activity-state/wrap-activity-handler"; + +const ethOptions: EvmNetworkOptions = { + name: NetworkNames.Blast, + name_long: "Blast", + homePage: "https://blast.io/en", + blockExplorerTX: "https://blastscan.io/tx/[[txHash]]", + blockExplorerAddr: "https://blastscan.io/address/[[address]]", + chainID: "0x13e31", + isTestNetwork: false, + currencyName: "ETH", + currencyNameLong: "Ethereum", + node: "wss://blast-rpc.publicnode.com", + icon: require("./icons/blast.webp"), + coingeckoID: "ethereum", + coingeckoPlatform: CoingeckoPlatform.Blast, + assetsInfoHandler, + activityHandler: wrapActivityHandler(EtherscanActivity), +}; + +const eth = new EvmNetwork(ethOptions); + +export default eth; diff --git a/packages/extension/src/providers/ethereum/networks/icons/blast.webp b/packages/extension/src/providers/ethereum/networks/icons/blast.webp new file mode 100644 index 000000000..8fdf07632 Binary files /dev/null and b/packages/extension/src/providers/ethereum/networks/icons/blast.webp differ diff --git a/packages/extension/src/providers/ethereum/networks/index.ts b/packages/extension/src/providers/ethereum/networks/index.ts index 8f8596ceb..a8536081e 100644 --- a/packages/extension/src/providers/ethereum/networks/index.ts +++ b/packages/extension/src/providers/ethereum/networks/index.ts @@ -39,6 +39,7 @@ import rolluxTestNode from "./trlx"; import rolluxNode from "./rlx"; import cagaAnkara from "./cagaAnkara"; import telosNode from "./tlos"; +import blastNode from "./blast"; export default { sepolia: sepoliaNode, @@ -91,4 +92,5 @@ export default { rollux: rolluxNode, cagaAnkara: cagaAnkara, telos: telosNode, + blast: blastNode, }; diff --git a/packages/types/src/networks.ts b/packages/types/src/networks.ts index cb7f49134..c35445557 100644 --- a/packages/types/src/networks.ts +++ b/packages/types/src/networks.ts @@ -72,7 +72,8 @@ export enum NetworkNames { RolluxTest = "TRLX", Rollux = "RLX", CagaAnkara = "CagaAnkara", - Telos = "TLOS" + Telos = "TLOS", + Blast = "blast", } export enum CoingeckoPlatform { @@ -115,5 +116,6 @@ export enum CoingeckoPlatform { Kadena = "kadena", Syscoin = "syscoin", Rollux = "rollux", - Telos = "telos" + Telos = "telos", + Blast = "blast", }