diff --git a/package.json b/package.json
index 3e458e2e5eb..10049625465 100644
--- a/package.json
+++ b/package.json
@@ -106,7 +106,6 @@
"tailwind-variants": "^3.2.2",
"tw-animate-css": "^1.4.0",
"usehooks-ts": "^3.1.0",
- "vaul": "^1.0.0",
"viem": "^2.23.3",
"wagmi": "^2.14.11",
"yaml-loader": "^0.8.0"
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 7d536e5531e..38b6af901ae 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -228,9 +228,6 @@ importers:
usehooks-ts:
specifier: ^3.1.0
version: 3.1.1(react@19.2.4)
- vaul:
- specifier: ^1.0.0
- version: 1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
viem:
specifier: ^2.23.3
version: 2.30.6(bufferutil@4.0.9)(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.76)
@@ -11022,12 +11019,6 @@ packages:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
- vaul@1.1.2:
- resolution: {integrity: sha512-ZFkClGpWyI2WUQjdLJ/BaGuV6AVQiJ3uELGk3OYtP+B6yCO7Cmn9vPFXVJkRaGkOJu3m8bQMgtyzNHixULceQA==}
- peerDependencies:
- react: ^19.2.4
- react-dom: ^19.2.4
-
vfile-matter@5.0.1:
resolution: {integrity: sha512-o6roP82AiX0XfkyTHyRCMXgHfltUNlXSEqCIS80f+mbAyiQBE2fxtDVMtseyytGx75sihiJFo/zR6r/4LTs2Cw==}
@@ -25252,15 +25243,6 @@ snapshots:
vary@1.1.2: {}
- vaul@1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4):
- dependencies:
- '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
- react: 19.2.4
- react-dom: 19.2.4(react@19.2.4)
- transitivePeerDependencies:
- - '@types/react'
- - '@types/react-dom'
-
vfile-matter@5.0.1:
dependencies:
vfile: 6.0.3
diff --git a/public/content/translations/bn/dapps/index.md b/public/content/translations/bn/dapps/index.md
deleted file mode 100644
index 6f39d2787fc..00000000000
--- a/public/content/translations/bn/dapps/index.md
+++ /dev/null
@@ -1,32 +0,0 @@
----
-title: "ইথেরিয়াম অ্যাপ্লিকেশন (dapps) ব্যবহার করুন"
-description: "ইথেরিয়াম ব্যবহার শুরু করার জন্য আপনার যে মৌলিক তথ্য প্রয়োজন।"
-lang: bn
----
-
-# ইথেরিয়াম ব্যবহার করা {#using-ethereum}
-
-
-
-**ইথেরিয়াম ব্যবহার শুরু করতে চান?** ইথেরিয়ামে তৈরি করা কয়েক শত বিকেন্দ্রীভূত অ্যাপ্লিকেশন (ড্যাপ) আছে যেগুলো আপনি আজই ব্যবহার করতে পারেন।
-
-
-
-## কীভাবে ইথেরিয়ামে নির্মিত একটি অ্যাপ্লিকেশন ব্যবহার করতে হয় {#how-to-use-an-application-built-on-ethereum}
-
-ইথেরিয়াম দিয়ে শুরু করার সর্বোত্তম উপায় হ'ল এখনই ঝাঁপিয়ে পড়া!
-
-এখানে ইথেরিয়ামে নির্মিত মাত্র কয়েকটি অ্যাপ দেওয়া হল - আমরা এই তালিকাটি ঘন ঘন পালটাই!
-
-
-
-ইথেরিয়ামে নির্মিত আরও অ্যাপ্লিকেশনগুলি দেখতে আগ্রহী?
-
-- [90টির বেশি ইথেরিয়াম অ্যাপ যা আপনি এখনই ব্যবহার করতে পারেন_এপ্রিল](https://media.consensys.net/40-ethereum-apps-you-can-use-right-now-d643333769f7) _24, 2019 - ConsenSys_
-- [Ethereum Dapps](https://www.stateofthedapps.com/rankings/platform/ethereum) _ স্টেট অফ দ্যাপস দ্বারা প্রায়শই আপডেট করা হয়।_
-- [ইথেরিয়াম ডিফাই (DeFI) ইকোসিস্টেম](https://defiprime.com/ethereum)_প্রায়শই আপডেট করা হয় - Defiprime_
-- [DeFi Llama](https://defillama.com/) _অ্যানালিটিক্স+ DeFi প্রোটোকলগুলির র্যাঙ্কিং- Defi Llama_
-
-কিছু ইথেরিয়াম অ্যাপ্লিকেশনের একটি ওয়ালেট প্রয়োজন - [ইথেরিয়াম ওয়ালেট সম্পর্কে এখানে আরও জানুন](/wallets/)।
-
-কিছু ইথেরিয়াম অ্যাপ্লিকেশনের ETH প্রয়োজন হবে - [ETH সম্পর্কে এখানে আরও জানুন](/what-is-ether/)।
diff --git a/src/components/AdoptionChart/index.tsx b/src/components/AdoptionChart/index.tsx
deleted file mode 100644
index c3b2f00a136..00000000000
--- a/src/components/AdoptionChart/index.tsx
+++ /dev/null
@@ -1,100 +0,0 @@
-"use client"
-
-import { useTheme } from "next-themes"
-
-import type { ChildOnlyProp } from "@/lib/types"
-
-import { Flex } from "@/components/ui/flex"
-
-import { cn } from "@/lib/utils/cn"
-
-import useTranslation from "@/hooks/useTranslation"
-
-type CellProps = ChildOnlyProp & {
- color?: string
- className?: string
-}
-
-const Column = ({ children }: ChildOnlyProp) => (
- {children}
-)
-
-const Cell = ({ children, color, className, ...props }: CellProps) => (
-
- {children}
-
-)
-
-const ColumnName = ({ children }: ChildOnlyProp) => (
- {children} |
-)
-
-const AdoptionChart = () => {
- const { t } = useTranslation("page-what-is-ethereum")
- const { resolvedTheme } = useTheme()
- const isDark = resolvedTheme === "dark"
-
- return (
-
-
- 2010
-
- {t("adoption-chart-investors-label")}
- |
-
-
-
- 2014
-
- {t("adoption-chart-investors-label")}
- |
-
- {t("adoption-chart-developers-label")}
- |
-
- {t("adoption-chart-companies-label")}
- |
-
-
-
- {t("adoption-chart-column-now-label")}
-
- {t("adoption-chart-investors-label")}
- |
-
- {t("adoption-chart-developers-label")}
- |
-
- {t("adoption-chart-companies-label")}
- |
-
- {t("adoption-chart-artists-label")}
- |
-
- {t("adoption-chart-musicians-label")}
- |
-
- {t("adoption-chart-writers-label")}
- |
-
- {t("adoption-chart-gamers-label")}
- |
-
- {t("adoption-chart-refugees-label")}
- |
-
-
- )
-}
-
-export default AdoptionChart
diff --git a/src/components/AdoptionChart/lazy.tsx b/src/components/AdoptionChart/lazy.tsx
deleted file mode 100644
index 5733a36989e..00000000000
--- a/src/components/AdoptionChart/lazy.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-"use client"
-
-import dynamic from "next/dynamic"
-
-import Loading from "./loading"
-
-export default dynamic(() => import("./index"), {
- ssr: false,
- loading: Loading,
-})
diff --git a/src/components/AdoptionChart/loading.tsx b/src/components/AdoptionChart/loading.tsx
deleted file mode 100644
index 402e1a7ed4b..00000000000
--- a/src/components/AdoptionChart/loading.tsx
+++ /dev/null
@@ -1,28 +0,0 @@
-import { Skeleton } from "@/components/ui/skeleton"
-
-const Loading = () => (
-
-
-
-
-
- {Array.from({ length: 3 }).map((_, idx) => (
-
-
-
- ))}
-
-
- {Array.from({ length: 8 }).map((_, idx) => (
-
-
-
- ))}
-
-
-
-
-
-)
-
-export default Loading
diff --git a/src/components/AreaChart/index.tsx b/src/components/AreaChart/index.tsx
deleted file mode 100644
index a450b474e23..00000000000
--- a/src/components/AreaChart/index.tsx
+++ /dev/null
@@ -1,142 +0,0 @@
-"use client"
-
-import { TrendingUp } from "lucide-react"
-import {
- Area,
- AreaChart as RechartsAreaChart,
- CartesianGrid,
- XAxis,
-} from "recharts"
-
-import {
- Card,
- CardContent,
- CardFooter,
- CardHeader,
- CardParagraph,
- CardTitle,
-} from "@/components/ui/card"
-import {
- ChartConfig,
- ChartContainer,
- ChartTooltip,
- ChartTooltipContent,
-} from "@/components/ui/chart"
-
-type AreaChartDataPoint = { xValue: string; yValue: number }
-
-/**
- * AreaChartProps defines the properties for the AreaChart component.
- *
- * @property {AreaChartDataPoint[]} data - The data to be displayed in the chart. Each object should have an `xValue` and `yValue` property.
- * @property {string} [title] - The title of the chart.
- * @property {string} [description] - The description of the chart.
- * @property {string} [footerText] - The footer text of the chart.
- * @property {string} [footerSubText] - The footer subtext of the chart.
- */
-type AreaChartProps = {
- data: AreaChartDataPoint[]
- title?: string
- description?: string
- footerText?: string
- footerSubText?: string
-}
-
-const defaultChartConfig = {
- value: {
- label: "Value",
- color: "hsl(var(--accent-a))",
- },
-} satisfies ChartConfig
-
-/**
- * AreaChart component renders an area chart with the provided data and optional title, description, footer text, and footer subtext.
- *
- * @param {AreaChartProps} props - The properties for the AreaChart component.
- * @returns {JSX.Element} The rendered AreaChart component.
- */
-export function AreaChart({
- data,
- title,
- description,
- footerText,
- footerSubText,
-}: AreaChartProps) {
- return (
-
-
- {title && {title} }
- {description && (
-
- {description}
-
- )}
-
-
-
-
-
- value.slice(0, 3)}
- />
- } />
-
-
-
-
-
-
-
-
-
-
- {(footerText || footerSubText) && (
-
-
-
- {footerText && (
-
- {footerText}
-
- )}
- {footerSubText && (
-
- {footerSubText}
-
- )}
-
-
-
- )}
-
- )
-}
diff --git a/src/components/Banners/DismissableBanner/DismissableBanner.stories.tsx b/src/components/Banners/DismissableBanner/DismissableBanner.stories.tsx
deleted file mode 100644
index 5bf9f9e92ad..00000000000
--- a/src/components/Banners/DismissableBanner/DismissableBanner.stories.tsx
+++ /dev/null
@@ -1,57 +0,0 @@
-import React from "react"
-import { Info } from "lucide-react"
-import { Meta, StoryObj } from "@storybook/nextjs"
-
-import { Center } from "@/components/ui/flex"
-
-import DismissableBanner from "."
-
-const meta = {
- title: "Molecules / Navigation / DismissableBanner",
- component: DismissableBanner,
- parameters: {
- layout: "fullscreen",
- },
- decorators: [
- (Story) => (
-
-
-
- ),
- ],
-} satisfies Meta
-
-export default meta
-type Story = StoryObj
-
-export const Basic: Story = {
- args: {
- storageKey: "dismissable-banner-1",
- children: This is a dismissable banner notification.
,
- },
-}
-
-export const WithLongText: Story = {
- args: {
- storageKey: "dismissable-banner-2",
- children: (
-
- This is a dismissable banner with a very long text content to see how it
- handles overflow and wrapping. It should be able to manage the text
- properly without breaking the layout.
-
- ),
- },
-}
-
-export const WithIcon: Story = {
- args: {
- storageKey: "dismissable-banner-3",
- children: (
-
-
- This banner includes an icon.
-
- ),
- },
-}
diff --git a/src/components/Banners/DismissableBanner/index.tsx b/src/components/Banners/DismissableBanner/index.tsx
deleted file mode 100644
index b184b3cc847..00000000000
--- a/src/components/Banners/DismissableBanner/index.tsx
+++ /dev/null
@@ -1,52 +0,0 @@
-"use client"
-
-import { useEffect, useState } from "react"
-import { X } from "lucide-react"
-
-import { Button } from "@/components/ui/buttons/Button"
-import { Center } from "@/components/ui/flex"
-
-import { cn } from "@/lib/utils/cn"
-
-import BannerNotification from "../BannerNotification"
-
-import { useTranslation } from "@/hooks/useTranslation"
-
-type DismissableBannerProps = React.HTMLAttributes & {
- storageKey: string
-}
-
-const DismissableBanner = ({
- children,
- storageKey,
- className,
-}: DismissableBannerProps) => {
- const { t } = useTranslation("common")
- const [show, setShow] = useState(false)
-
- useEffect(() => {
- const isDismissed = localStorage.getItem(storageKey) === "true"
- setShow(!isDismissed)
- }, [storageKey])
-
- const onClose = () => {
- localStorage.setItem(storageKey, "true")
- setShow(false)
- }
-
- return (
-
- {children}
-
-
-
-
- )
-}
-
-export default DismissableBanner
diff --git a/src/components/Banners/EventsOrganizerBanner.tsx b/src/components/Banners/EventsOrganizerBanner.tsx
deleted file mode 100644
index 70c256dd623..00000000000
--- a/src/components/Banners/EventsOrganizerBanner.tsx
+++ /dev/null
@@ -1,59 +0,0 @@
-import { cn } from "@/lib/utils/cn"
-
-import { Image } from "../Image"
-import { ButtonLink } from "../ui/buttons/Button"
-import { Flex, Stack } from "../ui/flex"
-
-import PeopleLearning from "@/public/images/people-learning.png"
-
-// TODO: refactor to use CalloutBanner component
-function EventsOrganizerBanner({
- className,
- ...props
-}: React.HTMLAttributes) {
- return (
-
-
-
-
-
-
-
- Planning an Ethereum event?
-
- Check out the Ethereum event guide built by the community, for the
- community.
-
-
-
-
- Read the guide
-
-
-
-
- )
-}
-
-export default EventsOrganizerBanner
diff --git a/src/components/Banners/UpgradeBannerNotification.tsx b/src/components/Banners/UpgradeBannerNotification.tsx
deleted file mode 100644
index af535369c21..00000000000
--- a/src/components/Banners/UpgradeBannerNotification.tsx
+++ /dev/null
@@ -1,21 +0,0 @@
-import Emoji from "../Emoji"
-import InlineLink from "../ui/Link"
-
-import BannerNotification from "./BannerNotification"
-
-const UpgradeBannerNotification = () => (
-
-
-
-
- We've deprecated our use of 'Eth1' and 'Eth2'
- terms.
- {" "}
-
- Read the full announcement
-
-
-
-)
-
-export default UpgradeBannerNotification
diff --git a/src/components/BarChart/index.tsx b/src/components/BarChart/index.tsx
deleted file mode 100644
index d4c2985a0db..00000000000
--- a/src/components/BarChart/index.tsx
+++ /dev/null
@@ -1,124 +0,0 @@
-"use client"
-
-import { TrendingUp } from "lucide-react"
-import {
- Bar,
- BarChart as RechartsBarChart,
- CartesianGrid,
- XAxis,
-} from "recharts"
-
-import {
- Card,
- CardContent,
- CardFooter,
- CardHeader,
- CardParagraph,
- CardTitle,
-} from "@/components/ui/card"
-import {
- ChartConfig,
- ChartContainer,
- ChartTooltip,
- ChartTooltipContent,
-} from "@/components/ui/chart"
-
-type BarChartDataPoint = { category: string; value: number }
-
-/**
- * BarChartProps defines the properties for the BarChart component.
- *
- * @property {BarChartItem[]} data - The data to be displayed in the chart. Each object should have a `category` and `value` property.
- * @property {string} [title] - The title of the chart.
- * @property {string} [description] - The description of the chart.
- * @property {string} [footerText] - The footer text of the chart.
- * @property {string} [footerSubText] - The footer subtext of the chart.
- */
-type BarChartProps = {
- data: BarChartDataPoint[]
- title?: string
- description?: string
- footerText?: string
- footerSubText?: string
-}
-
-const defaultChartConfig = {
- value: {
- label: "Value",
- color: "hsl(var(--accent-a))",
- },
-} satisfies ChartConfig
-
-/**
- * BarChart component renders a bar chart with the provided data and optional title, description, footer text, and footer subtext.
- *
- * @param {BarChartProps} props - The properties for the BarChart component.
- * @returns {JSX.Element} The rendered BarChart component.
- */
-export function BarChart({
- data,
- title,
- description,
- footerText,
- footerSubText,
-}: BarChartProps) {
- return (
-
-
- {title && {title} }
- {description && (
-
- {description}
-
- )}
-
-
-
-
-
-
- } />
-
-
-
-
- {(footerText || footerSubText) && (
-
-
-
- {footerText && (
-
- {footerText}
-
- )}
- {footerSubText && (
-
- {footerSubText}
-
- )}
-
-
-
- )}
-
- )
-}
diff --git a/src/components/BoxGrid.tsx b/src/components/BoxGrid.tsx
deleted file mode 100644
index a1a1a44bf16..00000000000
--- a/src/components/BoxGrid.tsx
+++ /dev/null
@@ -1,98 +0,0 @@
-import React, { useState } from "react"
-
-import type { MatomoEventOptions } from "@/lib/types"
-
-import { cn } from "@/lib/utils/cn"
-import { trackCustomEvent } from "@/lib/utils/matomo"
-
-import { Flex } from "./ui/flex"
-import Emoji from "./Emoji"
-
-export interface BoxItem {
- emoji: string
- title: string
- description: string
- matomo: MatomoEventOptions
-}
-
-export type BoxGridProps = {
- items: Array
-}
-
-// Represent string as 32-bit integer
-const hashCode = (stringPhrase: string): number => {
- let hash = 0
- for (const char of stringPhrase) {
- const code = char.charCodeAt(0)
- hash = (hash << 5) - hash + code
- hash |= 0
- }
- return Math.abs(hash)
-}
-
-// Theme variables from Theme.js
-const colors = [
- "bg-[#ffe78e]",
- "bg-[#ef7d7d]",
- "bg-[#a7d0f4]",
- "bg-[#6fc4a0]",
- "bg-[#ffe3d3]",
- "bg-[#ffa1c3]",
- "bg-[#a4a4ff]",
-]
-
-const BoxGrid = ({ items }: BoxGridProps) => {
- const [indexOpen, setOpenIndex] = useState(0)
-
- return (
-
- {items.map((item, idx: number) => {
- const colorIdx = hashCode(item.emoji) % colors.length
- const color = colors[colorIdx]
- const isOpen = idx === indexOpen
-
- return (
-
{
- setOpenIndex(idx)
- trackCustomEvent({
- eventCategory: item.matomo.eventCategory,
- eventAction: item.matomo.eventAction,
- eventName: item.matomo.eventName,
- })
- }}
- key={idx}
- >
-
-
-
- {item.title}
-
- {isOpen && (
-
- {item.description}
-
- )}
-
-
- )
- })}
-
- )
-}
-
-export default BoxGrid
diff --git a/src/components/EthVideo.tsx b/src/components/EthVideo.tsx
deleted file mode 100644
index 66f477b33c9..00000000000
--- a/src/components/EthVideo.tsx
+++ /dev/null
@@ -1,25 +0,0 @@
-import useColorModeValue from "@/hooks/useColorModeValue"
-
-const EthVideo = () => {
- const src = useColorModeValue(
- "/images/ethereum-hero-light.mp4",
- "/images/ethereum-hero-dark.mp4"
- )
-
- return (
-
-
-
- )
-}
-
-export default EthVideo
diff --git a/src/components/Layer2ProductCard.tsx b/src/components/Layer2ProductCard.tsx
deleted file mode 100644
index c5f7e1dbe65..00000000000
--- a/src/components/Layer2ProductCard.tsx
+++ /dev/null
@@ -1,113 +0,0 @@
-import { StaticImageData } from "next/image"
-
-import { Card, CardContent, CardFooter, CardHeader } from "@/components/ui/card"
-
-import { ButtonLink } from "./ui/buttons/Button"
-import InlineLink from "./ui/Link"
-import { Image } from "./Image"
-
-import { useTranslation } from "@/hooks/useTranslation"
-
-export type Layer2ProductCardProps = {
- children?: React.ReactNode
- url?: string
- background: string
- image: StaticImageData
- name: string
- description: string
- note?: string
- alt?: string
- bridge?: string
- tokenLists?: string
- ecosystemPortal?: string
-}
-
-const Layer2ProductCard = ({
- url,
- background,
- image,
- name,
- description,
- note = "",
- alt = "",
- children,
- bridge,
- tokenLists,
- ecosystemPortal,
-}: Layer2ProductCardProps) => {
- const { t } = useTranslation("page-layer-2")
-
- return (
-
-
-
-
-
-
-
-
{name}
- {children &&
{children}
}
-
-
-
-
-
-
{description}
-
- {note && (
-
- {t("layer-2-note")} {note}
-
- )}
-
-
-
- {bridge && (
-
- {name} {t("layer-2-bridge")}
-
- )}
-
- {ecosystemPortal && (
-
- {name} {t("layer-2-ecosystem-portal")}
-
- )}
-
- {tokenLists && (
-
- {name} {t("layer-2-token-lists")}
-
- )}
-
-
-
-
- {url && (
-
- {t("layer-2-explore")} {name}
-
- )}
-
-
- )
-}
-
-export default Layer2ProductCard
diff --git a/src/components/RandomAppList.tsx b/src/components/RandomAppList.tsx
deleted file mode 100644
index 15c9579ee40..00000000000
--- a/src/components/RandomAppList.tsx
+++ /dev/null
@@ -1,73 +0,0 @@
-import { useEffect, useState } from "react"
-import { shuffle } from "lodash"
-
-import type { TranslationKey } from "@/lib/types"
-
-import InlineLink from "./ui/Link"
-import Translation from "./Translation"
-
-interface App {
- name: string
- url: string
- description: TranslationKey
-}
-
-const appList: Array = [
- {
- name: "Gitcoin",
- url: "https://gitcoin.co",
- description: "page-apps-dapp-description-gitcoin",
- },
- {
- name: "Cent",
- url: "https://beta.cent.co",
- description: "page-apps-dapp-description-cent",
- },
- {
- name: "Gods Unchained",
- url: "https://godsunchained.com/",
- description: "page-apps-dapp-description-gods-unchained",
- },
- {
- name: "DAI",
- url: "https://makerdao.com/en/",
- description: "page-stablecoins-accordion-earn-project-2-description",
- },
- {
- name: "Decentraland",
- url: "https://decentraland.org/",
- description: "page-apps-dapp-description-decentraland",
- },
- {
- name: "Augur",
- url: "https://www.augur.net/",
- description: "page-apps-dapp-description-augur",
- },
- {
- name: "Ethereum Name Service",
- url: "http://ens.domains/",
- description: "page-apps-dapp-description-ens",
- },
-]
-
-const RandomAppList = () => {
- const [randomAppList, setRandomAppList] = useState>([])
-
- useEffect(() => {
- const list = shuffle(appList)
- setRandomAppList(list)
- }, [])
-
- return (
-
- {randomAppList.map((item, idx) => (
-
- {item.name}
- ,
-
- ))}
-
- )
-}
-
-export default RandomAppList
diff --git a/src/components/Simulator/PathButton.tsx b/src/components/Simulator/PathButton.tsx
index c3a90c03faa..ef7f70b68b8 100644
--- a/src/components/Simulator/PathButton.tsx
+++ b/src/components/Simulator/PathButton.tsx
@@ -9,7 +9,6 @@ type PathButtonProps = {
}
export const PathButton = ({ pathSummary, handleClick }: PathButtonProps) => {
const { primaryText, secondaryText, Icon } = pathSummary
- // TODO: Convert this component to use ButtonLinkTwoLines
return (
-
-export default meta
-
-type Story = StoryObj
-
-export const Stat: Story = {
- args: {
- tooltipProps: {
- content: "Tooltip content",
- },
- isError: false,
- label: "Label",
- value: "000",
- },
- argTypes: {
- isError: {
- table: {
- disable: true,
- },
- },
- },
-}
-
-export const StatError: Story = {
- args: {
- ...Stat.args,
- isError: true,
- value: undefined,
- },
- argTypes: {
- value: {
- table: {
- disable: true,
- },
- },
- },
-}
diff --git a/src/components/Stat/index.tsx b/src/components/Stat/index.tsx
deleted file mode 100644
index d7ce0cefdb9..00000000000
--- a/src/components/Stat/index.tsx
+++ /dev/null
@@ -1,58 +0,0 @@
-import { type JSX, useEffect, useState } from "react"
-import { AlertTriangle, Info, type LucideIcon } from "lucide-react"
-
-import { Flex } from "@/components/ui/flex"
-
-import { NULL_VALUE } from "@/lib/constants"
-
-import Tooltip, { type TooltipProps } from "../Tooltip"
-
-const initialContent = {
- contentValue: NULL_VALUE,
- tooltipIcon: Info,
-}
-
-export type StatProps = {
- tooltipProps?: TooltipProps
- value: string | undefined
- label: string
- isError: boolean
-}
-
-const Stat = ({ tooltipProps, value, label, isError }: StatProps) => {
- const [content, setContent] = useState<{
- contentValue: string | JSX.Element
- tooltipIcon: LucideIcon
- }>(initialContent)
-
- useEffect(() => {
- if (isError) {
- return setContent({
- contentValue: NULL_VALUE,
- tooltipIcon: AlertTriangle,
- })
- }
-
- if (!value) return
-
- return setContent({ ...initialContent, contentValue: value })
- }, [isError, value])
-
- return (
-
-
- {label}
- {!!tooltipProps && (
-
-
-
-
-
- )}
-
- {content.contentValue}
-
- )
-}
-
-export default Stat
diff --git a/src/components/ui/__stories__/ButtonLinkTwoLines.stories.tsx b/src/components/ui/__stories__/ButtonLinkTwoLines.stories.tsx
deleted file mode 100644
index 42cb66db992..00000000000
--- a/src/components/ui/__stories__/ButtonLinkTwoLines.stories.tsx
+++ /dev/null
@@ -1,35 +0,0 @@
-import { Circle } from "lucide-react"
-import type { Meta, StoryObj } from "@storybook/nextjs"
-
-import { ButtonLinkTwoLines as ButtonLinkTwoLinesComponent } from "../buttons/ButtonTwoLines"
-import { Stack } from "../flex"
-
-const meta = {
- title: "Atoms / Form / Buttons / ButtonTwoLines",
- component: ButtonLinkTwoLinesComponent,
-} satisfies Meta
-
-export default meta
-
-type Story = StoryObj
-
-export const ButtonLinkTwoLines: Story = {
- args: {
- icon: Circle,
- mainText: "Main Text",
- helperText: "Helper Text",
- className: "w-[300px]",
- href: "#",
- },
- render: (args) => (
-
-
-
-
- ),
-}
diff --git a/src/components/ui/__stories__/ButtonTwoLines.stories.tsx b/src/components/ui/__stories__/ButtonTwoLines.stories.tsx
deleted file mode 100644
index fd2f5cf0648..00000000000
--- a/src/components/ui/__stories__/ButtonTwoLines.stories.tsx
+++ /dev/null
@@ -1,46 +0,0 @@
-import { Circle } from "lucide-react"
-import { Meta, StoryObj } from "@storybook/nextjs"
-
-import { ButtonTwoLines as ButtonTwoLinesComponent } from "../buttons/ButtonTwoLines"
-import { HStack, Stack } from "../flex"
-
-const meta = {
- title: "Atoms / Form / Buttons / ButtonTwoLines",
- component: ButtonTwoLinesComponent,
-} satisfies Meta
-
-export default meta
-
-type Story = StoryObj
-
-export const ButtonTwoLines: Story = {
- args: {
- icon: Circle,
- mainText: "Main Text",
- helperText: "Helper Text",
- className: "w-[300px]",
- },
- render: (args) => (
-
-
-
-
-
-
-
-
-
-
- ),
-}
diff --git a/src/components/ui/__stories__/RadioGroup.stories.tsx b/src/components/ui/__stories__/RadioGroup.stories.tsx
deleted file mode 100644
index f682ee66326..00000000000
--- a/src/components/ui/__stories__/RadioGroup.stories.tsx
+++ /dev/null
@@ -1,68 +0,0 @@
-import type { Meta, StoryObj } from "@storybook/nextjs"
-
-import { HStack } from "../flex"
-import {
- RadioGroup,
- RadioGroupItem,
- type RadioGroupItemProps,
-} from "../radio-group"
-
-const meta = {
- title: "Atoms / Form / Radio",
- component: RadioGroup,
-} satisfies Meta
-
-export default meta
-
-const DEFAULT_CHECKED = "checked"
-
-const radioSet: Array = [
- {
- id: "default",
- value: "default",
- label: "default",
- },
- {
- id: DEFAULT_CHECKED,
- value: DEFAULT_CHECKED,
- label: DEFAULT_CHECKED,
- },
- {
- id: "disabled",
- value: "disabled",
- disabled: true,
- label: "disabled",
- },
- {
- id: "disabled-checked",
- value: "disabled-checked",
- disabled: true,
- checked: true,
- label: "disabled-checked",
- },
- {
- id: "invalid",
- value: "invalid",
- "aria-invalid": true,
- label: "invalid",
- },
-]
-
-export const Radio: StoryObj = {
- args: {
- defaultValue: DEFAULT_CHECKED,
- className: "gap-4",
- },
- render: (args) => (
-
- {radioSet.map((radio) => (
-
-
-
- {radio.label}
-
-
- ))}
-
- ),
-}
diff --git a/src/components/ui/buttons/ButtonTwoLines.tsx b/src/components/ui/buttons/ButtonTwoLines.tsx
deleted file mode 100644
index 5f6336ae937..00000000000
--- a/src/components/ui/buttons/ButtonTwoLines.tsx
+++ /dev/null
@@ -1,207 +0,0 @@
-import type { LucideIcon } from "lucide-react"
-
-import { cn } from "@/lib/utils/cn"
-
-import { Stack } from "../flex"
-
-import {
- Button,
- ButtonLink,
- type ButtonLinkProps,
- type ButtonProps,
-} from "./Button"
-
-type CommonProps = {
- icon: LucideIcon | React.FC>
- iconAlignment?: "left" | "right" | "start" | "end"
- /**
- * Reduced choices of the button variant.
- *
- * This component only accepts the `solid` or `outline` variant
- */
- variant?: "solid" | "outline"
- /**
- * Reduced choices of the button size
- *
- * This component only accepts the `md` or `sm` sizes
- */
- size?: "md" | "sm"
- mainText: string
- helperText: string
- /**
- * Should the main text be below the helper text instead of ab?
- */
- reverseTextOrder?: boolean
-}
-
-type OmittedTypes = "variant" | "size" | "children"
-
-type ButtonTwoLinesProps = Omit & CommonProps
-
-/**
- * Button that renders two styled lines of text
- */
-export const ButtonTwoLines = ({
- className,
- iconAlignment = "start",
- size = "md",
- variant,
- ...props
-}: ButtonTwoLinesProps) => {
- const isIconLeft = ["left", "start"].includes(iconAlignment)
-
- const [childProps, ownProps] = createSplitProps()(
- { ...props, isIconLeft, size, variant },
- [
- "reverseTextOrder",
- "mainText",
- "helperText",
- "variant",
- "icon",
- "isIconLeft",
- "isSecondary",
- "size",
- ]
- )
-
- return (
-
-
-
- )
-}
-
-type ButtonLinkTwoLinesProps = Omit & CommonProps
-
-/**
- * ButtonLink that renders two styled lines of text
- */
-export const ButtonLinkTwoLines = ({
- className,
- iconAlignment = "start",
- size = "md",
- variant,
- ...props
-}: ButtonLinkTwoLinesProps) => {
- const isIconLeft = ["left", "start"].includes(iconAlignment)
-
- const [childProps, ownProps] = createSplitProps()(
- { ...props, isIconLeft, size, variant },
- [
- "reverseTextOrder",
- "mainText",
- "helperText",
- "variant",
- "icon",
- "isIconLeft",
- "isSecondary",
- "size",
- ]
- )
-
- return (
-
-
-
- )
-}
-
-type ChildContentProps = Omit & {
- isIconLeft: boolean
- isSecondary?: boolean
-}
-
-const ChildContent = ({
- helperText,
- icon: Icon,
- mainText,
- reverseTextOrder = false,
- size,
- variant,
- isIconLeft,
- isSecondary,
-}: ChildContentProps) => {
- const ButtonIcon = () => (
-
- )
- return (
- <>
- {isIconLeft && }
-
-
- {mainText}
-
-
- {helperText}
-
-
- {!isIconLeft && }
- >
- )
-}
-
-/**
- * Split props ripped from Ark UI and simplified:
- * https://github.com/chakra-ui/ark/blob/main/packages/react/src/utils/create-split-props.ts
- */
-type EnsureKeys =
- keyof ChildContentProps extends ExpectedKeys[number]
- ? unknown
- : `Missing required keys: ${Exclude & string}`
-
-function createSplitProps() {
- return <
- Keys extends (keyof ChildContentProps)[],
- Props = Required,
- >(
- props: Props,
- keys: Keys & EnsureKeys
- ) =>
- (keys as string[]).reduce<
- [ChildContentProps, Omit>]
- >(
- (previousValue, currentValue) => {
- const [target, source] = previousValue
- const key = currentValue
- if (source[key] !== undefined) {
- target[key] = source[key]
- }
- delete source[key]
- return [target, source]
- },
- [{} as ChildContentProps, { ...props }]
- )
-}
diff --git a/src/components/ui/buttons/SvgButtonLink.tsx b/src/components/ui/buttons/SvgButtonLink.tsx
deleted file mode 100644
index 54bb8b1b4f4..00000000000
--- a/src/components/ui/buttons/SvgButtonLink.tsx
+++ /dev/null
@@ -1,71 +0,0 @@
-import type { FC, SVGProps } from "react"
-import { tv, type VariantProps } from "tailwind-variants"
-
-import { cn } from "@/lib/utils/cn"
-
-import { BaseLink, LinkProps } from "../Link"
-
-const variants = tv({
- base: "flex items-center gap-3.5",
- variants: {
- variant: {
- col: "flex-col text-center [&_.body]:text-center",
- row: "flex-row text-start [&_.body]:text-start [&_.header]:self-start",
- },
- },
- defaultVariants: {
- variant: "row",
- },
-})
-
-type Variants = VariantProps
-
-export type SvgButtonLinkProps = LinkProps & {
- Svg: FC>
- label?: string
- size?: number
-} & Variants
-
-const SvgButtonLink = ({
- label,
- children,
- Svg,
- className,
- variant,
- ...props
-}: SvgButtonLinkProps) => (
-
-
-
-
-
-
- {label &&
{label}
}
- {children}
-
-
-
-)
-
-export default SvgButtonLink
diff --git a/src/components/ui/drawer.tsx b/src/components/ui/drawer.tsx
deleted file mode 100644
index 071bd6d63b3..00000000000
--- a/src/components/ui/drawer.tsx
+++ /dev/null
@@ -1,115 +0,0 @@
-import * as React from "react"
-import { Drawer as DrawerPrimitive } from "vaul"
-
-import { cn } from "@/lib/utils/cn"
-
-const Drawer = ({
- shouldScaleBackground = true,
- ...props
-}: React.ComponentProps) => (
-
-)
-Drawer.displayName = "Drawer"
-
-const DrawerTrigger = DrawerPrimitive.Trigger
-
-const DrawerPortal = DrawerPrimitive.Portal
-
-const DrawerClose = DrawerPrimitive.Close
-
-const DrawerOverlay = React.forwardRef<
- React.ComponentRef,
- React.ComponentPropsWithoutRef
->(({ className, ...props }, ref) => (
-
-))
-DrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName
-
-const DrawerContent = React.forwardRef<
- React.ComponentRef,
- React.ComponentPropsWithoutRef
->(({ className, children, ...props }, ref) => (
-
-
-
- {children}
-
-
-))
-DrawerContent.displayName = "DrawerContent"
-
-const DrawerHeader = ({
- className,
- ...props
-}: React.HTMLAttributes) => (
-
-)
-DrawerHeader.displayName = "DrawerHeader"
-
-const DrawerFooter = ({
- className,
- ...props
-}: React.HTMLAttributes) => (
-
-)
-DrawerFooter.displayName = "DrawerFooter"
-
-const DrawerTitle = React.forwardRef<
- React.ComponentRef,
- React.ComponentPropsWithoutRef
->(({ className, ...props }, ref) => (
-
-))
-DrawerTitle.displayName = DrawerPrimitive.Title.displayName
-
-const DrawerDescription = React.forwardRef<
- React.ComponentRef,
- React.ComponentPropsWithoutRef
->(({ className, ...props }, ref) => (
-
-))
-DrawerDescription.displayName = DrawerPrimitive.Description.displayName
-
-export {
- Drawer,
- DrawerClose,
- DrawerContent,
- DrawerDescription,
- DrawerFooter,
- DrawerHeader,
- DrawerOverlay,
- DrawerPortal,
- DrawerTitle,
- DrawerTrigger,
-}
diff --git a/src/components/ui/radio-group.tsx b/src/components/ui/radio-group.tsx
deleted file mode 100644
index 6ec4740a4c1..00000000000
--- a/src/components/ui/radio-group.tsx
+++ /dev/null
@@ -1,45 +0,0 @@
-import * as React from "react"
-import { Circle } from "lucide-react"
-import * as RadioGroupPrimitive from "@radix-ui/react-radio-group"
-
-import { cn } from "@/lib/utils/cn"
-
-import { commonControlClasses } from "./checkbox"
-
-const RadioGroup = React.forwardRef<
- React.ComponentRef,
- React.ComponentPropsWithoutRef
->(({ className, ...props }, ref) => {
- return (
-
- )
-})
-RadioGroup.displayName = RadioGroupPrimitive.Root.displayName
-
-type RadioGroupItemProps = React.ComponentPropsWithoutRef<
- typeof RadioGroupPrimitive.Item
->
-
-const RadioGroupItem = React.forwardRef<
- React.ComponentRef,
- RadioGroupItemProps
->(({ className, ...props }, ref) => {
- return (
-
-
-
-
-
- )
-})
-RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName
-
-export { RadioGroup, RadioGroupItem, type RadioGroupItemProps }
diff --git a/src/intl/ar/page-energy-consumption.json b/src/intl/ar/page-energy-consumption.json
index ce8592fd09f..39e97494511 100644
--- a/src/intl/ar/page-energy-consumption.json
+++ b/src/intl/ar/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "الفنانون",
- "adoption-chart-column-now-label": "الآن",
- "adoption-chart-companies-label": "الشركات",
- "adoption-chart-developers-label": "المبرمجون",
- "adoption-chart-gamers-label": "اللاعبون",
- "adoption-chart-investors-label": "المستثمرون",
- "adoption-chart-musicians-label": "الموسيقيون",
- "adoption-chart-refugees-label": "اللاجئون",
- "adoption-chart-writers-label": "الكُتّاب",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/bn/page-energy-consumption.json b/src/intl/bn/page-energy-consumption.json
index 6d3d519c24c..07fcd37ee4a 100644
--- a/src/intl/bn/page-energy-consumption.json
+++ b/src/intl/bn/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "শিল্পীরা",
- "adoption-chart-column-now-label": "এখন",
- "adoption-chart-companies-label": "কোম্পানিগুলো",
- "adoption-chart-developers-label": "ডেভেলপাররা",
- "adoption-chart-gamers-label": "গেমাররা",
- "adoption-chart-investors-label": "বিনিয়োগকারীরা",
- "adoption-chart-musicians-label": "সঙ্গীতশিল্পীরা",
- "adoption-chart-refugees-label": "শরণার্থীরা",
- "adoption-chart-writers-label": "লেখকরা",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "স্বর্ণ উত্তোলন",
"energy-consumption-chart-legend": "TWh/yr-এ বার্ষিক শক্তি খরচ"
-}
\ No newline at end of file
+}
diff --git a/src/intl/cs/page-energy-consumption.json b/src/intl/cs/page-energy-consumption.json
index d4b1cab592f..2de9575a6b7 100644
--- a/src/intl/cs/page-energy-consumption.json
+++ b/src/intl/cs/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Umělci",
- "adoption-chart-column-now-label": "Nyní",
- "adoption-chart-companies-label": "Společnosti",
- "adoption-chart-developers-label": "Vývojáři",
- "adoption-chart-gamers-label": "Hráči",
- "adoption-chart-investors-label": "Investoři",
- "adoption-chart-musicians-label": "Hudebníci",
- "adoption-chart-refugees-label": "Uprchlíci",
- "adoption-chart-writers-label": "Spisovatelé",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/de/page-energy-consumption.json b/src/intl/de/page-energy-consumption.json
index ac45105160f..54b61b5596d 100644
--- a/src/intl/de/page-energy-consumption.json
+++ b/src/intl/de/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Künstler",
- "adoption-chart-column-now-label": "Jetzt",
- "adoption-chart-companies-label": "Unternehmen",
- "adoption-chart-developers-label": "Entwickler",
- "adoption-chart-gamers-label": "Gamer",
- "adoption-chart-investors-label": "Investoren",
- "adoption-chart-musicians-label": "Musiker",
- "adoption-chart-refugees-label": "Geflüchtete",
- "adoption-chart-writers-label": "Autoren",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "Goldabbau",
"energy-consumption-chart-legend": "Jährlicher Energieverbrauch in TWh/Jahr"
-}
\ No newline at end of file
+}
diff --git a/src/intl/en/page-energy-consumption.json b/src/intl/en/page-energy-consumption.json
index dacef9f0a3e..ed8bcaacb61 100644
--- a/src/intl/en/page-energy-consumption.json
+++ b/src/intl/en/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artists",
- "adoption-chart-column-now-label": "Now",
- "adoption-chart-companies-label": "Companies",
- "adoption-chart-developers-label": "Developers",
- "adoption-chart-gamers-label": "Gamers",
- "adoption-chart-investors-label": "Investors",
- "adoption-chart-musicians-label": "Musicians",
- "adoption-chart-refugees-label": "Refugees",
- "adoption-chart-writers-label": "Writers",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/es/page-energy-consumption.json b/src/intl/es/page-energy-consumption.json
index 8121757166e..5ce2d4691fb 100644
--- a/src/intl/es/page-energy-consumption.json
+++ b/src/intl/es/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artistas",
- "adoption-chart-column-now-label": "Ahora",
- "adoption-chart-companies-label": "Empresas",
- "adoption-chart-developers-label": "Desarrolladores",
- "adoption-chart-gamers-label": "Jugadores",
- "adoption-chart-investors-label": "Inversores",
- "adoption-chart-musicians-label": "Músicos",
- "adoption-chart-refugees-label": "Refugiados",
- "adoption-chart-writers-label": "Escritores",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "PoW de BTC",
"energy-consumption-chart-eth-pos-label": "PoS de ETH",
diff --git a/src/intl/fr/page-energy-consumption.json b/src/intl/fr/page-energy-consumption.json
index 2942ea59d38..d13a9acc05c 100644
--- a/src/intl/fr/page-energy-consumption.json
+++ b/src/intl/fr/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artistes",
- "adoption-chart-column-now-label": "Maintenant",
- "adoption-chart-companies-label": "Sociétés",
- "adoption-chart-developers-label": "Développeurs",
- "adoption-chart-gamers-label": "Gamers",
- "adoption-chart-investors-label": "Investisseurs",
- "adoption-chart-musicians-label": "Musiciens",
- "adoption-chart-refugees-label": "Réfugiés",
- "adoption-chart-writers-label": "Auteurs",
"energy-consumption-chart-airbnb-label": "Airbnb",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/hi/page-energy-consumption.json b/src/intl/hi/page-energy-consumption.json
index 63a6113c7b2..ddcca286546 100644
--- a/src/intl/hi/page-energy-consumption.json
+++ b/src/intl/hi/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "कलाकार",
- "adoption-chart-column-now-label": "अभी",
- "adoption-chart-companies-label": "कंपनियां",
- "adoption-chart-developers-label": "डेवलपर",
- "adoption-chart-gamers-label": "खिलाड़ी",
- "adoption-chart-investors-label": "निवेशक",
- "adoption-chart-musicians-label": "संगीतकार",
- "adoption-chart-refugees-label": "शरणार्थी",
- "adoption-chart-writers-label": "लेखक",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/id/page-energy-consumption.json b/src/intl/id/page-energy-consumption.json
index 28c939a0471..81a4770f103 100644
--- a/src/intl/id/page-energy-consumption.json
+++ b/src/intl/id/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Seniman",
- "adoption-chart-column-now-label": "Sekarang",
- "adoption-chart-companies-label": "Perusahaan",
- "adoption-chart-developers-label": "Pengembang",
- "adoption-chart-gamers-label": "Gamer",
- "adoption-chart-investors-label": "Investor",
- "adoption-chart-musicians-label": "Musisi",
- "adoption-chart-refugees-label": "Pengungsi",
- "adoption-chart-writers-label": "Penulis",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "Penambangan emas",
"energy-consumption-chart-legend": "Konsumsi Energi Tahunan dalam TWh/tahun"
-}
\ No newline at end of file
+}
diff --git a/src/intl/it/page-energy-consumption.json b/src/intl/it/page-energy-consumption.json
index 00c5a90d28a..279bfff96e2 100644
--- a/src/intl/it/page-energy-consumption.json
+++ b/src/intl/it/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artisti",
- "adoption-chart-column-now-label": "Ora",
- "adoption-chart-companies-label": "Aziende",
- "adoption-chart-developers-label": "Sviluppatori",
- "adoption-chart-gamers-label": "Giocatori",
- "adoption-chart-investors-label": "Investitori",
- "adoption-chart-musicians-label": "Musicisti",
- "adoption-chart-refugees-label": "Rifugiati",
- "adoption-chart-writers-label": "Scrittori",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "Estrazione dell'oro",
"energy-consumption-chart-legend": "Consumo energetico annuale in TWh/anno"
-}
\ No newline at end of file
+}
diff --git a/src/intl/ja/page-energy-consumption.json b/src/intl/ja/page-energy-consumption.json
index d6515a8546e..1edc8bba746 100644
--- a/src/intl/ja/page-energy-consumption.json
+++ b/src/intl/ja/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "アーティスト",
- "adoption-chart-column-now-label": "現在",
- "adoption-chart-companies-label": "企業",
- "adoption-chart-developers-label": "デベロッパー",
- "adoption-chart-gamers-label": "ゲーマー",
- "adoption-chart-investors-label": "投資家",
- "adoption-chart-musicians-label": "ミュージシャン",
- "adoption-chart-refugees-label": "難民",
- "adoption-chart-writers-label": "ライター",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/ko/page-energy-consumption.json b/src/intl/ko/page-energy-consumption.json
index 4d46d150adb..6bc352b9f9d 100644
--- a/src/intl/ko/page-energy-consumption.json
+++ b/src/intl/ko/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "아티스트",
- "adoption-chart-column-now-label": "현재",
- "adoption-chart-companies-label": "기업",
- "adoption-chart-developers-label": "개발자",
- "adoption-chart-gamers-label": "게이머",
- "adoption-chart-investors-label": "투자자",
- "adoption-chart-musicians-label": "뮤지션",
- "adoption-chart-refugees-label": "피난민",
- "adoption-chart-writers-label": "작가",
"energy-consumption-chart-airbnb-label": "에어비앤비",
"energy-consumption-chart-btc-pow-label": "BTC 작업 증명",
"energy-consumption-chart-eth-pos-label": "ETH 지분 증명",
diff --git a/src/intl/mr/page-energy-consumption.json b/src/intl/mr/page-energy-consumption.json
index 54ebc5c6334..a5445468cde 100644
--- a/src/intl/mr/page-energy-consumption.json
+++ b/src/intl/mr/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "कलाकार",
- "adoption-chart-column-now-label": "आता",
- "adoption-chart-companies-label": "कंपन्या",
- "adoption-chart-developers-label": "विकासक",
- "adoption-chart-gamers-label": "गेमर्स",
- "adoption-chart-investors-label": "गुंतवणूकदार",
- "adoption-chart-musicians-label": "संगीतकार",
- "adoption-chart-refugees-label": "निर्वासित",
- "adoption-chart-writers-label": "लेखक",
"energy-consumption-chart-airbnb-label": "एअर बीएनबी",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/pl/page-energy-consumption.json b/src/intl/pl/page-energy-consumption.json
index 1265b1d1704..ebe66540cf3 100644
--- a/src/intl/pl/page-energy-consumption.json
+++ b/src/intl/pl/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artyści",
- "adoption-chart-column-now-label": "Teraz",
- "adoption-chart-companies-label": "Firmy",
- "adoption-chart-developers-label": "Deweloperzy",
- "adoption-chart-gamers-label": "Gracze",
- "adoption-chart-investors-label": "Inwestorzy",
- "adoption-chart-musicians-label": "Muzycy",
- "adoption-chart-refugees-label": "Uchodźcy",
- "adoption-chart-writers-label": "Pisarze",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/pt-br/page-energy-consumption.json b/src/intl/pt-br/page-energy-consumption.json
index c3bc2508243..4f03b0b67fb 100644
--- a/src/intl/pt-br/page-energy-consumption.json
+++ b/src/intl/pt-br/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Artistas",
- "adoption-chart-column-now-label": "Agora",
- "adoption-chart-companies-label": "Empresas",
- "adoption-chart-developers-label": "Desenvolvedores",
- "adoption-chart-gamers-label": "Jogadores",
- "adoption-chart-investors-label": "Investidores",
- "adoption-chart-musicians-label": "Músicos",
- "adoption-chart-refugees-label": "Refugiados",
- "adoption-chart-writers-label": "Escritores",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/ru/page-energy-consumption.json b/src/intl/ru/page-energy-consumption.json
index 2462451487a..5541a3ea497 100644
--- a/src/intl/ru/page-energy-consumption.json
+++ b/src/intl/ru/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Художники",
- "adoption-chart-column-now-label": "Сейчас",
- "adoption-chart-companies-label": "Компании",
- "adoption-chart-developers-label": "Разработчикам",
- "adoption-chart-gamers-label": "Геймеры",
- "adoption-chart-investors-label": "Инвесторы",
- "adoption-chart-musicians-label": "Музыканты",
- "adoption-chart-refugees-label": "Беженцы",
- "adoption-chart-writers-label": "Писатели",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/sw/page-energy-consumption.json b/src/intl/sw/page-energy-consumption.json
index b9d4e4d5e0a..928fd98fa5c 100644
--- a/src/intl/sw/page-energy-consumption.json
+++ b/src/intl/sw/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Wasanii",
- "adoption-chart-column-now-label": "Sasa",
- "adoption-chart-companies-label": "Makampuni",
- "adoption-chart-developers-label": "Wasanidi programu",
- "adoption-chart-gamers-label": "Wachezaji",
- "adoption-chart-investors-label": "Wawekezaji",
- "adoption-chart-musicians-label": "Waimbaji",
- "adoption-chart-refugees-label": "Wakimbizi",
- "adoption-chart-writers-label": "Waandishi",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "Uthibitisho-wa-Kazi wa Bitcoin",
"energy-consumption-chart-eth-pos-label": "Uthibitisho-wa-Hisa wa Ethereum",
diff --git a/src/intl/ta/page-energy-consumption.json b/src/intl/ta/page-energy-consumption.json
index a1306539fb9..437838398b1 100644
--- a/src/intl/ta/page-energy-consumption.json
+++ b/src/intl/ta/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "கலைஞர்கள்",
- "adoption-chart-column-now-label": "இப்போது",
- "adoption-chart-companies-label": "நிறுவனங்கள்",
- "adoption-chart-developers-label": "உருவாக்குநர்கள்",
- "adoption-chart-gamers-label": "விளையாட்டாளர்கள்",
- "adoption-chart-investors-label": "முதலீட்டாளர்கள்",
- "adoption-chart-musicians-label": "இசைக்கலைஞர்கள்",
- "adoption-chart-refugees-label": "அகதிகள்",
- "adoption-chart-writers-label": "எழுத்தாளர்கள்",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "தங்கச் சுரங்கம்",
"energy-consumption-chart-legend": "ஆண்டு ஆற்றல் நுகர்வு TWh/yr இல்"
-}
\ No newline at end of file
+}
diff --git a/src/intl/te/page-energy-consumption.json b/src/intl/te/page-energy-consumption.json
index 52a3ac8f8fd..d9d5732e829 100644
--- a/src/intl/te/page-energy-consumption.json
+++ b/src/intl/te/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "కళాకారులు",
- "adoption-chart-column-now-label": "ఇప్పుడు",
- "adoption-chart-companies-label": "కంపెనీలు",
- "adoption-chart-developers-label": "డెవలపర్లు",
- "adoption-chart-gamers-label": "గేమర్లు",
- "adoption-chart-investors-label": "పెట్టుబడిదారులు",
- "adoption-chart-musicians-label": "సంగీత విద్వాంసులు",
- "adoption-chart-refugees-label": "శరణార్థులు",
- "adoption-chart-writers-label": "రచయితలు",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH ప్రూఫ్ ఆఫ్ స్టేక్",
diff --git a/src/intl/tr/page-energy-consumption.json b/src/intl/tr/page-energy-consumption.json
index 1ef1eddefd6..be5ba89c7c0 100644
--- a/src/intl/tr/page-energy-consumption.json
+++ b/src/intl/tr/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Sanatçılar",
- "adoption-chart-column-now-label": "Şimdi",
- "adoption-chart-companies-label": "Şirketler",
- "adoption-chart-developers-label": "Geliştiriciler",
- "adoption-chart-gamers-label": "Oyuncular",
- "adoption-chart-investors-label": "Yatırımcılar",
- "adoption-chart-musicians-label": "Müzisyenler",
- "adoption-chart-refugees-label": "Mülteciler",
- "adoption-chart-writers-label": "Yazarlar",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/uk/page-energy-consumption.json b/src/intl/uk/page-energy-consumption.json
index 6de36547d0b..80822d99928 100644
--- a/src/intl/uk/page-energy-consumption.json
+++ b/src/intl/uk/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Художники",
- "adoption-chart-column-now-label": "Зараз",
- "adoption-chart-companies-label": "Компанії",
- "adoption-chart-developers-label": "Розробникам",
- "adoption-chart-gamers-label": "Любителі ігор",
- "adoption-chart-investors-label": "Інвестори",
- "adoption-chart-musicians-label": "Музиканти",
- "adoption-chart-refugees-label": "Біженці",
- "adoption-chart-writers-label": "Письменники",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/ur/page-energy-consumption.json b/src/intl/ur/page-energy-consumption.json
index e2d2a732c80..65ea2afcf3a 100644
--- a/src/intl/ur/page-energy-consumption.json
+++ b/src/intl/ur/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "فنکار",
- "adoption-chart-column-now-label": "اب",
- "adoption-chart-companies-label": "کمپنیاں",
- "adoption-chart-developers-label": "ڈیولپرز",
- "adoption-chart-gamers-label": "گیمرز",
- "adoption-chart-investors-label": "سرمایہ کار",
- "adoption-chart-musicians-label": "موسیقار",
- "adoption-chart-refugees-label": "پناہ گزین",
- "adoption-chart-writers-label": "مصنفین",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
@@ -18,4 +9,4 @@
"energy-consumption-chart-paypal-label": "PayPal",
"energy-consumption-gold-mining-cbeci-label": "سونے کی کان کنی",
"energy-consumption-chart-legend": "سالانہ توانائی کی کھپت TWh/yr میں"
-}
\ No newline at end of file
+}
diff --git a/src/intl/vi/page-energy-consumption.json b/src/intl/vi/page-energy-consumption.json
index c0ae4c9afec..e3362d1cdae 100644
--- a/src/intl/vi/page-energy-consumption.json
+++ b/src/intl/vi/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "Nghệ sĩ",
- "adoption-chart-column-now-label": "Hiện tại",
- "adoption-chart-companies-label": "Doanh nghiệp",
- "adoption-chart-developers-label": "Nhà phát triển",
- "adoption-chart-gamers-label": "Game thủ",
- "adoption-chart-investors-label": "Nhà đầu tư",
- "adoption-chart-musicians-label": "Nhạc sĩ",
- "adoption-chart-refugees-label": "Người tị nạn",
- "adoption-chart-writers-label": "Nhà văn",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "BTC PoW",
"energy-consumption-chart-eth-pos-label": "ETH PoS",
diff --git a/src/intl/zh-tw/page-energy-consumption.json b/src/intl/zh-tw/page-energy-consumption.json
index 48d508da347..186197a8feb 100644
--- a/src/intl/zh-tw/page-energy-consumption.json
+++ b/src/intl/zh-tw/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "藝術家",
- "adoption-chart-column-now-label": "現在",
- "adoption-chart-companies-label": "公司",
- "adoption-chart-developers-label": "開發者",
- "adoption-chart-gamers-label": "遊戲玩家",
- "adoption-chart-investors-label": "投資者",
- "adoption-chart-musicians-label": "音樂家",
- "adoption-chart-refugees-label": "難民",
- "adoption-chart-writers-label": "作家",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "比特幣工作量證明",
"energy-consumption-chart-eth-pos-label": "以太幣權益證明",
diff --git a/src/intl/zh/page-energy-consumption.json b/src/intl/zh/page-energy-consumption.json
index 3ea7341d518..7be776c3acb 100644
--- a/src/intl/zh/page-energy-consumption.json
+++ b/src/intl/zh/page-energy-consumption.json
@@ -1,13 +1,4 @@
{
- "adoption-chart-artists-label": "艺术家",
- "adoption-chart-column-now-label": "当前",
- "adoption-chart-companies-label": "公司",
- "adoption-chart-developers-label": "开发者",
- "adoption-chart-gamers-label": "玩家",
- "adoption-chart-investors-label": "投资者",
- "adoption-chart-musicians-label": "音乐家",
- "adoption-chart-refugees-label": "难民",
- "adoption-chart-writers-label": "作者",
"energy-consumption-chart-airbnb-label": "AirBnB",
"energy-consumption-chart-btc-pow-label": "比特币工作量证明",
"energy-consumption-chart-eth-pos-label": "以太坊权益证明",
diff --git a/src/layouts/Static.tsx b/src/layouts/Static.tsx
index 0a263b81f3f..3fadc553230 100644
--- a/src/layouts/Static.tsx
+++ b/src/layouts/Static.tsx
@@ -4,7 +4,6 @@ import type { HTMLAttributes } from "react"
import type { ChildOnlyProp, Lang } from "@/lib/types"
import type { MdPageContent, StaticFrontmatter } from "@/lib/interfaces"
-import EventsOrganizerBanner from "@/components/Banners/EventsOrganizerBanner"
import Breadcrumbs from "@/components/Breadcrumbs"
import Callout from "@/components/Callout"
import Contributors from "@/components/Contributors"
@@ -62,7 +61,6 @@ export const staticComponents = {
Callout,
Contributors,
EnergyConsumptionChart,
- EventsOrganizerBanner,
GlossaryDefinition,
GlossaryTooltip,
Link,