Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ export interface ConfigInfoItemProps {
export interface ConfigInfoFeatureProps {
label: string;
description: ReactNode;
isActivated?: boolean;
icon: ReactElement;
}

Expand Down Expand Up @@ -69,12 +68,7 @@ export function ConfigInfoItem({ label, value, additionalInfo }: ConfigInfoItemP
/**
* ConfigInfoFeature - Renders a single feature badge with tooltip
*/
export function ConfigInfoFeature({
label,
description,
isActivated = true,
icon,
}: ConfigInfoFeatureProps) {
export function ConfigInfoFeature({ label, description, icon }: ConfigInfoFeatureProps) {
return (
<div className="max-sm:w-full flex flex-row flex-nowrap justify-start max-sm:justify-between items-center gap-1">
<div className={featureActivationsWrapperStyles}>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,61 @@ function ENSNodeConfigCardContent({
</p>
);

const healReverseAddressesFeature = (
<ConfigInfoFeature
label="Heal Reverse Addresses"
key="ENSIndexer Heal Reverse Addresses feature"
description={healReverseAddressesDescription}
icon={<HealIcon width={15} height={15} className="flex-shrink-0" />}
/>
);

const indexAdditionalRecordsFeature = (
<ConfigInfoFeature
label="Index Additional Resolver Records"
key="ENSIndexer Index Additional Resolver Records feature"
description={indexAdditionalRecordsDescription}
icon={<IndexAdditionalRecordsIcon width={15} height={15} className="flex-shrink-0" />}
/>
);

const replaceUnnormalizedLabelsFeature = (
<ConfigInfoFeature
label="Replace Unnormalized Labels"
key="ENSIndexer Replace Unnormalized Labels feature"
description={replaceUnnormalizedLabelsDescription}
icon={<Replace width={15} height={15} stroke="#3F3F46" className="flex-shrink-0" />}
/>
);

const subgraphCompatabilityFeature = (
<ConfigInfoFeature
label="Subgraph Compatibility"
key="ENSIndexer Subgraph Compatibility feature"
description={subgraphCompatibilityDescription}
icon={<IconGraphNetwork width={15} height={15} className="text-[#3F3F46] flex-shrink-0" />}
/>
);

const ensIndexerFeatures = [
{
isActivated: healReverseAddressesActivated,
feature: healReverseAddressesFeature,
},
{
isActivated: indexAdditionalRecordsActivated,
feature: indexAdditionalRecordsFeature,
},
{
isActivated: replaceUnnormalizedLabelsActivated,
feature: replaceUnnormalizedLabelsFeature,
},
{
isActivated: subgraphCompatibilityActivated,
feature: subgraphCompatabilityFeature,
},
];

const ensRootChainId = getENSRootChainId(ensIndexerPublicConfig.namespace);

return (
Expand Down Expand Up @@ -285,7 +340,7 @@ function ENSNodeConfigCardContent({
}
/>
</ConfigInfoItems>
<ConfigInfoFeatures>
<ConfigInfoFeatures activated={ensApiPublicConfig.theGraphFallback.canFallback}>
<ConfigInfoFeature
label="Subgraph API Fallback"
description={
Expand All @@ -312,7 +367,6 @@ function ENSNodeConfigCardContent({
</p>
)
}
isActivated={ensApiPublicConfig.theGraphFallback.canFallback}
icon={<History width={15} height={15} className="flex-shrink-0" />}
/>
</ConfigInfoFeatures>
Expand Down Expand Up @@ -471,33 +525,15 @@ function ENSNodeConfigCardContent({
}
/>
</ConfigInfoItems>
<ConfigInfoFeatures>
<ConfigInfoFeature
label="Heal Reverse Addresses"
description={healReverseAddressesDescription}
isActivated={healReverseAddressesActivated}
icon={<HealIcon width={15} height={15} className="flex-shrink-0" />}
/>
<ConfigInfoFeature
label="Index Additional Resolver Records"
description={indexAdditionalRecordsDescription}
isActivated={indexAdditionalRecordsActivated}
icon={<IndexAdditionalRecordsIcon width={15} height={15} className="flex-shrink-0" />}
/>
<ConfigInfoFeature
label="Replace Unnormalized Labels"
description={replaceUnnormalizedLabelsDescription}
isActivated={replaceUnnormalizedLabelsActivated}
icon={<Replace width={15} height={15} stroke="#3F3F46" className="flex-shrink-0" />}
/>
<ConfigInfoFeature
label="Subgraph Compatibility"
description={subgraphCompatibilityDescription}
isActivated={subgraphCompatibilityActivated}
icon={
<IconGraphNetwork width={15} height={15} className="text-[#3F3F46] flex-shrink-0" />
}
/>
<ConfigInfoFeatures activated={true}>
{ensIndexerFeatures
.filter((feature) => feature.isActivated)
.map((feature) => feature.feature)}
</ConfigInfoFeatures>
<ConfigInfoFeatures activated={false}>
{ensIndexerFeatures
.filter((feature) => !feature.isActivated)
.map((feature) => feature.feature)}
</ConfigInfoFeatures>
<ConfigInfoItems>
<ConfigInfoItem
Expand Down
Loading