Skip to content

Commit b16342b

Browse files
committed
update table and feedlist to support accordian streams verifier table
1 parent bf3eff7 commit b16342b

File tree

4 files changed

+273
-148
lines changed

4 files changed

+273
-148
lines changed

src/features/feeds/components/FeedList.tsx

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,15 @@ export const FeedList = ({
3131
dataFeedType = "default",
3232
ecosystem = "",
3333
initialCache,
34+
allowNetworkTableExpansion = false,
35+
defaultNetworkTableExpanded = false,
3436
}: {
3537
initialNetwork: string
3638
dataFeedType: DataFeedType
3739
ecosystem?: string
3840
initialCache?: Record<string, ChainMetadata>
41+
allowNetworkTableExpansion?: boolean
42+
defaultNetworkTableExpanded?: boolean
3943
}) => {
4044
const chains = ecosystem === "deprecating" ? ALL_CHAINS : CHAINS
4145
const isStreams =
@@ -610,9 +614,21 @@ export const FeedList = ({
610614

611615
return (
612616
<>
613-
<SectionWrapper title="Streams Verifier Network Addresses" depth={2}>
614-
<StreamsNetworkAddressesTable />
615-
</SectionWrapper>
617+
{allowNetworkTableExpansion ? (
618+
<div style={{ marginBottom: "var(--space-2x)" }}>
619+
<StreamsNetworkAddressesTable
620+
allowExpansion={allowNetworkTableExpansion}
621+
defaultExpanded={defaultNetworkTableExpanded}
622+
/>
623+
</div>
624+
) : (
625+
<SectionWrapper title="Streams Verifier Network Addresses" depth={2}>
626+
<StreamsNetworkAddressesTable
627+
allowExpansion={allowNetworkTableExpansion}
628+
defaultExpanded={defaultNetworkTableExpanded}
629+
/>
630+
</SectionWrapper>
631+
)}
616632

617633
<SectionWrapper
618634
title={streamsMainnetSectionTitle}

src/features/feeds/components/FeedPage.astro

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,15 @@ export type Props = {
1515
| "smartdata"
1616
| "default"
1717
| "rates"
18+
allowNetworkTableExpansion?: boolean
19+
defaultNetworkTableExpanded?: boolean
1820
}
1921
import { getServerSideChainMetadata } from "~/features/data/api/backend"
2022
import { CHAINS, ALL_CHAINS } from "~/features/data/chains"
2123
import { CheckHeartbeat } from "./pause-notice/CheckHeartbeat"
2224
import { FeedDataItem, monitoredFeeds } from "~/features/data"
2325
24-
const { initialNetwork, ecosystem, dataFeedType } = Astro.props
26+
const { initialNetwork, ecosystem, dataFeedType, allowNetworkTableExpansion, defaultNetworkTableExpanded } = Astro.props
2527
2628
const initialCache = await getServerSideChainMetadata([...CHAINS, ...ALL_CHAINS])
2729
const feedItems: FeedDataItem[] = monitoredFeeds.mainnet
@@ -90,6 +92,7 @@ const feedItems: FeedDataItem[] = monitoredFeeds.mainnet
9092
For LINK token and Faucet details, see the{" "}
9193
<a href="/resources/link-token-contracts?parent=dataFeeds">LINK Token Contracts</a> page.
9294
</p>
95+
9396
<Aside type="note" title="Talk to an expert">
9497
<p>
9598
<a href="https://chainlinkcommunity.typeform.com/datastreams?#ref_id=docs">Contact us</a> to talk to an
@@ -211,4 +214,6 @@ const feedItems: FeedDataItem[] = monitoredFeeds.mainnet
211214
dataFeedType={dataFeedType ?? "default"}
212215
ecosystem={ecosystem ?? ""}
213216
initialCache={initialCache}
217+
allowNetworkTableExpansion={allowNetworkTableExpansion}
218+
defaultNetworkTableExpanded={defaultNetworkTableExpanded}
214219
/>

src/features/feeds/components/Tables.module.css

Lines changed: 69 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,67 @@
4949
margin-right: var(--space-1x);
5050
}
5151

52+
/* Expandable header */
53+
.expandableHeader {
54+
display: flex;
55+
align-items: center;
56+
gap: var(--space-2x);
57+
padding: var(--space-3x);
58+
cursor: pointer;
59+
background-color: var(--gray-50);
60+
border-radius: var(--border-radius);
61+
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
62+
transition: box-shadow 0.2s ease;
63+
user-select: none;
64+
}
65+
66+
.expandableHeader:hover {
67+
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
68+
}
69+
70+
.expandableHeader:active {
71+
transform: translateY(1px);
72+
}
73+
74+
.expandableHeaderContent {
75+
flex: 1;
76+
min-width: 0;
77+
}
78+
79+
.expandableHeaderContent h2 {
80+
margin: 0 0 var(--space-1x) 0;
81+
}
82+
83+
.expandableDescription {
84+
font-size: var(--font-size-sm, 0.875rem);
85+
color: var(--gray-600);
86+
margin: 0;
87+
line-height: 1.5;
88+
}
89+
90+
.expandableArrow {
91+
display: flex;
92+
align-items: center;
93+
justify-content: center;
94+
width: var(--space-6x);
95+
height: var(--space-6x);
96+
flex-shrink: 0;
97+
background-image: url("/images/quickstarts/arrow-down.svg");
98+
background-repeat: no-repeat;
99+
background-position: center;
100+
background-size: 20px 20px;
101+
filter: brightness(0);
102+
transition: transform 0.2s ease;
103+
}
104+
105+
.expandableArrow span {
106+
display: none;
107+
}
108+
109+
.expandableArrowExpanded {
110+
transform: rotate(180deg);
111+
}
112+
52113
.assetPair {
53114
color: var(--color-text-heading);
54115
width: 100%;
@@ -228,10 +289,13 @@
228289
/* Compact & full networks table */
229290
.compactNetworksTable {
230291
width: 100%;
231-
margin: 0 auto 2rem;
292+
margin: var(--space-4x) auto 2rem;
232293
overflow-x: auto;
233-
border: 1px solid var(--border-color, #e5e7eb);
234-
border-radius: 4px;
294+
}
295+
296+
.staticHeader {
297+
font-size: var(--font-size-h3);
298+
margin: 0 0 var(--space-2x) 0;
235299
}
236300

237301
.networksTable {
@@ -240,6 +304,8 @@
240304
font-size: 0.875rem;
241305
margin-bottom: 0;
242306
table-layout: fixed !important;
307+
border: 1px solid var(--border-color, #e5e7eb);
308+
border-radius: 4px;
243309
}
244310

245311
.networksTable,

0 commit comments

Comments
 (0)