Skip to content

Commit 9e30aa6

Browse files
authored
Table network status improvement (#2745)
* draft: dynamic status and explorer links * simplified approach * removed opBNB status page: 404 * added new status pages * unichain domain fix * refactor
1 parent 8f26188 commit 9e30aa6

File tree

2 files changed

+32
-12
lines changed

2 files changed

+32
-12
lines changed

src/features/feeds/components/Tables.tsx

Lines changed: 29 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,22 @@ const CopyableAddress = ({
166166
)
167167
}
168168

169+
const getNetworkStatusUrl = (network: NetworkData): string | null => {
170+
if (network.networkStatus) {
171+
return network.networkStatus
172+
}
173+
174+
if (network.mainnet?.explorerUrl) {
175+
try {
176+
return new URL(network.mainnet.explorerUrl.replace("%s", "")).origin
177+
} catch {
178+
return null
179+
}
180+
}
181+
182+
return null
183+
}
184+
169185
const DefaultTHead = ({ showExtraDetails, networkName }: { showExtraDetails: boolean; networkName: string }) => {
170186
const isAptosNetwork = networkName === "Aptos Mainnet" || networkName === "Aptos Testnet"
171187

@@ -495,6 +511,7 @@ export const StreamsNetworkAddressesTable = () => {
495511
</thead>
496512
<tbody>
497513
{filteredNetworks.map((network: NetworkData, index: number) => {
514+
const statusUrl = getNetworkStatusUrl(network)
498515
return (
499516
<Fragment key={network.network}>
500517
{network.mainnet &&
@@ -598,18 +615,19 @@ export const StreamsNetworkAddressesTable = () => {
598615
</td>
599616
</tr>
600617
)}
601-
602-
{network.networkStatus && (
603-
<tr key={`${network.network}-status`} className={tableStyles.statusRow}>
618+
{statusUrl && (
619+
<tr key={`${network.network}-status-explorer`} className={tableStyles.statusRow}>
604620
<td colSpan={3} className={tableStyles.statusCell}>
605-
<a
606-
href={network.networkStatus}
607-
target="_blank"
608-
rel="noopener noreferrer"
609-
className={tableStyles.statusLink}
610-
>
611-
View {network.network} Network Status →
612-
</a>
621+
<div style={{ display: "flex", gap: "1rem", justifyContent: "flex-end" }}>
622+
<a
623+
href={statusUrl}
624+
target="_blank"
625+
rel="noopener noreferrer"
626+
className={tableStyles.statusLink}
627+
>
628+
View {network.network} Network Status →
629+
</a>
630+
</div>
613631
</td>
614632
</tr>
615633
)}

src/features/feeds/data/StreamsNetworksData.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,6 @@ export const StreamsNetworksData: NetworkData[] = [
323323
{
324324
network: "opBNB",
325325
logoUrl: "/assets/chains/opbnb.svg",
326-
networkStatus: "https://opbnb-status.bnbchain.org/",
327326
mainnet: {
328327
label: "opBNB Mainnet",
329328
verifierProxy: "0x7D543D1a715ED544f7e3Ae9e3b1777BCdA56bF8e",
@@ -381,6 +380,7 @@ export const StreamsNetworksData: NetworkData[] = [
381380
},
382381
{
383382
network: "Scroll",
383+
networkStatus: "https://status.scroll.io/",
384384
logoUrl: "/assets/chains/scroll.svg",
385385
mainnet: {
386386
label: "Scroll Mainnet",
@@ -470,6 +470,7 @@ export const StreamsNetworksData: NetworkData[] = [
470470
{
471471
network: "Unichain",
472472
logoUrl: "/assets/chains/unichain.svg",
473+
networkStatus: "https://status.unichain.org/",
473474
mainnet: {
474475
label: "Unichain Mainnet",
475476
verifierProxy: "0x60fAa7faC949aF392DFc858F5d97E3EEfa07E9EB",
@@ -484,6 +485,7 @@ export const StreamsNetworksData: NetworkData[] = [
484485
{
485486
network: "World Chain",
486487
logoUrl: "/assets/chains/worldchain.svg",
488+
networkStatus: "https://worldchain-mainnet-status.alchemy.com/",
487489
mainnet: {
488490
label: "World Chain Mainnet",
489491
verifierProxy: "0x6733e9106094b0C794e8E0297c96611fF60460Bf",

0 commit comments

Comments
 (0)