Skip to content

Commit fca2b17

Browse files
committed
Sync upstream
1 parent 991cdb9 commit fca2b17

File tree

7 files changed

+18
-13
lines changed

7 files changed

+18
-13
lines changed

public/static/og_placeholder.png

Loading
-122 KB
Binary file not shown.

types/api/address.ts

-4
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,6 @@ export interface AddressZilliqaParams {
3939
is_scilla_contract: boolean;
4040
}
4141

42-
export interface AddressZilliqaParams {
43-
is_scilla_contract: boolean;
44-
}
45-
4642
export interface AddressCounters {
4743
transactions_count: string;
4844
token_transfers_count: string;

ui/address/contract/methods/ContractMethodsProxy.tsx

+4-2
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { useRouter } from 'next/router';
33
import React from 'react';
44

55
import type { AddressImplementation } from 'types/api/addressParams';
6+
import type { SmartContractProxyType } from 'types/api/contract';
67

78
import useApiQuery from 'lib/api/useApiQuery';
89
import getQueryParamString from 'lib/router/getQueryParamString';
@@ -18,9 +19,10 @@ import { formatAbi } from './utils';
1819
interface Props {
1920
implementations: Array<AddressImplementation>;
2021
isLoading?: boolean;
22+
proxyType?: SmartContractProxyType;
2123
}
2224

23-
const ContractMethodsProxy = ({ implementations, isLoading: isInitialLoading }: Props) => {
25+
const ContractMethodsProxy = ({ implementations, isLoading: isInitialLoading, proxyType }: Props) => {
2426
const router = useRouter();
2527
const sourceAddress = getQueryParamString(router.query.source_address);
2628
const tab = getQueryParamString(router.query.tab);
@@ -48,7 +50,7 @@ const ContractMethodsProxy = ({ implementations, isLoading: isInitialLoading }:
4850
selectedItem={ selectedItem }
4951
onItemSelect={ setSelectedItem }
5052
isLoading={ isInitialLoading }
51-
label="Implementation address"
53+
label={ proxyType === 'eip7702' ? 'Delegate address' : 'Implementation address' }
5254
mb={ 3 }
5355
/>
5456
<ContractMethodsFilters

ui/pages/Address.tsx

+11-4
Original file line numberDiff line numberDiff line change
@@ -239,16 +239,18 @@ const AddressPageContent = () => {
239239
addressQuery.data?.is_contract ? {
240240
id: 'contract',
241241
title: () => {
242+
const tabName = addressQuery.data.proxy_type === 'eip7702' ? 'Code' : 'Contract';
243+
242244
if (addressQuery.data.is_verified) {
243245
return (
244246
<>
245-
<span>Contract</span>
247+
<span>{ tabName }</span>
246248
<IconSvg name="status/success" boxSize="14px" color="green.500" ml={ 1 }/>
247249
</>
248250
);
249251
}
250252

251-
return 'Contract';
253+
return tabName;
252254
},
253255
component: (
254256
<AddressContract
@@ -279,7 +281,12 @@ const AddressPageContent = () => {
279281
config.features.validators.isEnabled && addressQuery.data?.has_validated_blocks ?
280282
{ slug: 'validator', name: 'Validator', tagType: 'custom' as const, ordinal: PREDEFINED_TAG_PRIORITY } :
281283
undefined,
282-
addressQuery.data?.implementations?.length ? { slug: 'proxy', name: 'Proxy', tagType: 'custom' as const, ordinal: PREDEFINED_TAG_PRIORITY } : undefined,
284+
addressQuery.data?.implementations?.length && addressQuery.data?.proxy_type !== 'eip7702' ?
285+
{ slug: 'proxy', name: 'Proxy', tagType: 'custom' as const, ordinal: PREDEFINED_TAG_PRIORITY } :
286+
undefined,
287+
addressQuery.data?.implementations?.length && addressQuery.data?.proxy_type === 'eip7702' ?
288+
{ slug: 'eip7702', name: 'EOA+code', tagType: 'custom' as const, ordinal: PREDEFINED_TAG_PRIORITY } :
289+
undefined,
283290
addressQuery.data?.token ? { slug: 'token', name: 'Token', tagType: 'custom' as const, ordinal: PREDEFINED_TAG_PRIORITY } : undefined,
284291
isSafeAddress ? { slug: 'safe', name: 'Multisig: Safe', tagType: 'custom' as const, ordinal: -10 } : undefined,
285292
addressProfileAPIFeature.isEnabled && usernameApiTag ? {
@@ -417,7 +424,7 @@ const AddressPageContent = () => {
417424
<>
418425
<TextAd mb={ 6 }/>
419426
<PageTitle
420-
title={ `${ addressQuery.data?.is_contract ? 'Contract' : 'Address' } details` }
427+
title={ `${ addressQuery.data?.is_contract && addressQuery.data?.proxy_type !== 'eip7702' ? 'Contract' : 'Address' } details` }
421428
backLink={ backLink }
422429
contentAfter={ titleContentAfter }
423430
secondRow={ titleSecondRow }

ui/shared/layout/components/MainColumn.tsx

-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ interface Props {
1111
const MainColumn = ({ children, className }: Props) => {
1212
return (
1313
<Flex
14-
id="MAIN_COLUMN"
1514
className={ className }
1615
flexDir="column"
1716
flexGrow={ 1 }

ui/snippets/footer/Footer.tsx

+3-2
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,8 @@ const Footer = () => {
119119
return (
120120
<Box gridArea={ gridArea }>
121121
<Flex columnGap={ 2 } fontSize="xs" lineHeight={ 5 } alignItems="center" color="text">
122-
<Link href="https://explore.lux.network" isExternal display="inline-flex" color={ logoColor } _hover={{ color: logoColor }}>
122+
<span>Made with</span>
123+
<Link href="https://www.blockscout.com" isExternal display="inline-flex" color={ logoColor } _hover={{ color: logoColor }}>
123124
<IconSvg
124125
name="networks/logo-placeholder"
125126
width="80px"
@@ -128,7 +129,7 @@ const Footer = () => {
128129
</Link>
129130
</Flex>
130131
<Text mt={ 3 } fontSize="xs">
131-
Explore is a tool for inspecting and analyzing EVM based blockchains. Blockchain explorer for Lux Networks.
132+
Blockscout is a tool for inspecting and analyzing EVM based blockchains. Blockchain explorer for Ethereum Networks.
132133
</Text>
133134
<Box mt={ 6 } alignItems="start" fontSize="xs" lineHeight={ 5 }>
134135
{ apiVersionUrl && (

0 commit comments

Comments
 (0)