Files
smom-dbis-138/frontend-dapp/src/config/contracts.ts
defiQUG c336809676
Some checks failed
CI/CD Pipeline / Solidity Contracts (push) Failing after 1m3s
CI/CD Pipeline / Security Scanning (push) Successful in 2m18s
CI/CD Pipeline / Lint and Format (push) Failing after 34s
CI/CD Pipeline / Terraform Validation (push) Failing after 20s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 22s
Deploy ChainID 138 / Deploy ChainID 138 (push) Failing after 40s
HYBX OMNL TypeScript & anchor / token-aggregation build + reconcile artifact (push) Failing after 49s
OMNL reconcile anchor / Run omnl:reconcile and upload artifacts (push) Failing after 21s
Validation / validate-genesis (push) Successful in 25s
Validation / validate-terraform (push) Failing after 21s
Validation / validate-kubernetes (push) Failing after 8s
Validation / validate-smart-contracts (push) Failing after 8s
Validation / validate-security (push) Failing after 1m11s
Validation / validate-documentation (push) Failing after 14s
Verify Deployment / Verify Deployment (push) Failing after 45s
Add mainnet checkpoint stack: ISO attestation, participant Etherscan surface, and services.
Ship AddressActivityRegistry V1/V2, ISO20022IntakeGateway, Chain138ParticipantSurface,
checkpoint hub contracts, checkpoint-core package, aggregator/indexer/sdk services,
relay profile guards, M00 diamond bridge facet, and OMNL compliance contracts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-25 00:30:45 -07:00

54 lines
2.2 KiB
TypeScript

import { mainnet } from 'wagmi/chains'
import type { Address } from 'viem'
import { TRUSTLESS } from './bridge'
import { chain138 as chain138Network, chain2138Testnet } from './networks'
// Contract addresses on Ethereum Mainnet and Chain 138
// Trustless bridge (Lockbox, Inbox, LP, Coordinators, ChallengeManager) — use TRUSTLESS from bridge.ts as single source of truth
export const CONTRACT_ADDRESSES = {
mainnet: {
MAINNET_TETHER: '0x15DF1D5BFDD8Aa4b380445D4e3E9B38d34283619' as Address,
TRANSACTION_MIRROR: '0x4CF42c4F1dBa748601b8938be3E7ABD732E87cE9' as Address,
PAYMENT_CHANNEL_MANAGER: undefined as Address | undefined,
GENERIC_STATE_CHANNEL_MANAGER: undefined as Address | undefined,
TWOWAY_BRIDGE_L1: undefined as Address | undefined,
INBOX_ETH: TRUSTLESS.mainnet.INBOX_ETH as Address,
LIQUIDITY_POOL: TRUSTLESS.mainnet.LIQUIDITY_POOL as Address,
BRIDGE_SWAP_COORDINATOR: TRUSTLESS.mainnet.BRIDGE_SWAP_COORDINATOR as Address,
DUAL_ROUTER_BRIDGE_SWAP_COORDINATOR: TRUSTLESS.mainnet.DUAL_ROUTER_BRIDGE_SWAP_COORDINATOR as Address,
CHALLENGE_MANAGER: TRUSTLESS.mainnet.CHALLENGE_MANAGER as Address,
},
chain138: {
// Chain 138 local mirror (PMM/DODO); mainnet Etherscan mirror is mainnet.TRANSACTION_MIRROR
TRANSACTION_MIRROR: '0x7131F887DBEEb2e44c1Ed267D2A68b5b83285afc' as Address,
PAYMENT_CHANNEL_MANAGER: undefined as Address | undefined,
GENERIC_STATE_CHANNEL_MANAGER: undefined as Address | undefined,
TWOWAY_BRIDGE_L2: undefined as Address | undefined,
LOCKBOX_138: TRUSTLESS.chain138.LOCKBOX_138 as Address,
},
chain2138: {
TRANSACTION_MIRROR: (import.meta.env.VITE_TRANSACTION_MIRROR_CHAIN2138 || undefined) as Address | undefined,
PAYMENT_CHANNEL_MANAGER: undefined as Address | undefined,
GENERIC_STATE_CHANNEL_MANAGER: undefined as Address | undefined,
TWOWAY_BRIDGE_L2: undefined as Address | undefined,
LOCKBOX_2138: TRUSTLESS.chain2138.LOCKBOX_2138 as Address,
},
} as const
export { TRUSTLESS } from './bridge'
// Chain 138 for wagmi (custom chain)
export const chain138 = {
...chain138Network,
} as const
export const chain2138 = {
...chain2138Testnet,
} as const
export const SUPPORTED_CHAINS = {
mainnet,
chain138,
chain2138,
} as const