diff --git a/src/Home.tsx b/src/Home.tsx
index d4f3afa..fc969a2 100644
--- a/src/Home.tsx
+++ b/src/Home.tsx
@@ -54,6 +54,11 @@ const Home: React.FC = () => {
>
Search
+
+
+ Check the special dashboard for EIP-1559
+
+
{latestBlock && (
= ({
+ provider,
+ currentBlock,
+ targetBlock,
+}) => {
+ const [targetTimestamp, setTargetTimestamp] = useState();
+
+ useEffect(() => {
+ const calcTime = async () => {
+ const diff = targetBlock - currentBlock.number;
+ const _prevBlock = await provider.getBlock(currentBlock.number - diff);
+ const _targetTimestamp =
+ currentBlock.timestamp +
+ (currentBlock.timestamp - _prevBlock.timestamp);
+ setTargetTimestamp(_targetTimestamp);
+ };
+ calcTime();
+ }, [provider, currentBlock, targetBlock]);
+
+ return (
+
+
+
London Network Upgrade
+
+ {ethers.utils.commify(targetBlock - currentBlock.number)}
+
+
Block remaining
+
+
Current block: {ethers.utils.commify(currentBlock.number)}
+ Target block: {ethers.utils.commify(targetBlock)}
+
+ {targetTimestamp && (
+
+ {new Date(targetTimestamp * 1000).toLocaleDateString()} @{" "}
+ {new Date(targetTimestamp * 1000).toLocaleTimeString()} (Estimative)
+
+ )}
+
+
+ );
+};
+
+export default React.memo(Countdown);
diff --git a/src/special/London.tsx b/src/special/London.tsx
new file mode 100644
index 0000000..77b48cc
--- /dev/null
+++ b/src/special/London.tsx
@@ -0,0 +1,29 @@
+import React, { useContext } from "react";
+import { useLatestBlock } from "../useLatestBlock";
+import { RuntimeContext } from "../useRuntime";
+import Countdown from "./Countdown";
+
+const londonBlockNumber = 12965000;
+
+const London: React.FC = () => {
+ const { provider } = useContext(RuntimeContext);
+ const block = useLatestBlock(provider);
+ if (!block) {
+ return <>>;
+ }
+
+ // Display countdown
+ if (provider && block.number < londonBlockNumber) {
+ return (
+
+ );
+ }
+
+ return ;
+};
+
+export default React.memo(London);