diff --git a/CHANGELOG.md b/CHANGELOG.md index 18f217bc5..11fa4d404 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## [4.2.36] - 2024.7.2 + +### Added + +- Support for Optimism Notifications + ## [4.2.35] - 2024.6.18 ### Updated diff --git a/package.json b/package.json index f4ae6629c..011cb62bd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tatumio/tatum", - "version": "4.2.35", + "version": "4.2.36", "description": "Tatum JS SDK", "author": "Tatum", "repository": "https://github.com/tatumio/tatum-js", diff --git a/src/dto/AddressEventNotificationChain.ts b/src/dto/AddressEventNotificationChain.ts index 6fe8f3122..239499fad 100644 --- a/src/dto/AddressEventNotificationChain.ts +++ b/src/dto/AddressEventNotificationChain.ts @@ -18,4 +18,5 @@ export enum AddressEventNotificationChain { CRO = 'CRO', BASE = 'BASE', AVAX = 'AVAX', + OPTIMISM = 'OPTIMISM', } diff --git a/src/e2e/e2e.constant.ts b/src/e2e/e2e.constant.ts index ca513a804..710ea33a5 100644 --- a/src/e2e/e2e.constant.ts +++ b/src/e2e/e2e.constant.ts @@ -42,6 +42,8 @@ export const AddressEventNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const IncomingNativeTxNetworks = [ @@ -81,6 +83,8 @@ export const IncomingNativeTxNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const OutgoingNativeTxNetworks = [ @@ -118,6 +122,8 @@ export const OutgoingNativeTxNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const OutgoingFailedNetworks = [ @@ -143,6 +149,8 @@ export const OutgoingFailedNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const PaidFeeNetworks = [ @@ -172,6 +180,8 @@ export const PaidFeeNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const FungibleTxNetworks = [ @@ -201,6 +211,8 @@ export const FungibleTxNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const NftNetworks = [ @@ -230,6 +242,8 @@ export const NftNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const MultitokenNetworks = [ @@ -254,6 +268,8 @@ export const MultitokenNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const FailedTxPerBlockNetworks = [ @@ -283,6 +299,8 @@ export const FailedTxPerBlockNetworks = [ Network.BASE_SEPOLIA, Network.AVALANCHE_C, Network.AVALANCHE_C_TESTNET, + Network.OPTIMISM, + Network.OPTIMISM_TESTNET, ] export const ContractAddressLogEventNetworks = [ @@ -320,4 +338,5 @@ export const InternalTxNetworks = [ Network.CRONOS, Network.BASE, Network.AVALANCHE_C, + Network.OPTIMISM, ] diff --git a/src/e2e/e2e.util.ts b/src/e2e/e2e.util.ts index 40c2cdd21..45424226e 100644 --- a/src/e2e/e2e.util.ts +++ b/src/e2e/e2e.util.ts @@ -39,6 +39,8 @@ export const e2eUtil = { case Network.BASE_SEPOLIA: case Network.AVALANCHE_C: case Network.AVALANCHE_C_TESTNET: + case Network.OPTIMISM: + case Network.OPTIMISM_TESTNET: return '0xdb4C3b4350EE869F2D0a2F43ce0292865E2Aa149' case Network.CELO_ALFAJORES: return '0xdf083B077F1FD890fC71feCaBbd3F68F94cD21Bf' diff --git a/src/service/tatum/tatum.evm.ts b/src/service/tatum/tatum.evm.ts index 9a45bb89c..57590f541 100644 --- a/src/service/tatum/tatum.evm.ts +++ b/src/service/tatum/tatum.evm.ts @@ -61,7 +61,7 @@ export class Haqq extends BaseEvm {} export class HarmonyOne extends BaseEvm {} export class Kucoin extends BaseEvm {} export class Oasis extends BaseEvm {} -export class Optimism extends BaseEvm {} +export class Optimism extends NotificationEvm {} export class Palm extends BaseEvm {} export class Vechain extends BaseEvm {} export class XinFin extends BaseEvm {} diff --git a/src/util/util.shared.ts b/src/util/util.shared.ts index b67467b78..833a74f44 100644 --- a/src/util/util.shared.ts +++ b/src/util/util.shared.ts @@ -562,6 +562,8 @@ export const Utils = { return Network.BASE case AddressEventNotificationChain.AVAX: return Network.AVALANCHE_C + case AddressEventNotificationChain.OPTIMISM: + return Network.OPTIMISM default: throw new Error(`Chain ${chain} is not supported.`) } @@ -625,6 +627,9 @@ export const Utils = { case Network.AVALANCHE_C: case Network.AVALANCHE_C_TESTNET: return AddressEventNotificationChain.AVAX + case Network.OPTIMISM: + case Network.OPTIMISM_TESTNET: + return AddressEventNotificationChain.OPTIMISM default: throw new Error(`Network ${network} is not supported.`) }