diff --git a/apps/extension/src/ui/apps/popup/components/UnifiedAddressInfoBanner.tsx b/apps/extension/src/ui/apps/popup/components/UnifiedAddressInfoBanner.tsx new file mode 100644 index 000000000..95c3310f1 --- /dev/null +++ b/apps/extension/src/ui/apps/popup/components/UnifiedAddressInfoBanner.tsx @@ -0,0 +1,71 @@ +import { ArrowRightIcon, XIcon } from "@talismn/icons" +import { classNames } from "@talismn/util" +import { FC, useMemo } from "react" +import { Trans, useTranslation } from "react-i18next" +import { IconButton } from "talisman-ui" + +import { useAccounts, useAppState, useFeatureFlag } from "@ui/state" + +export const UnifiedAddressInfoBanner = () => { + const { t } = useTranslation() + const allowBanner = useFeatureFlag("UNIFIED_ADDRESS_BANNER") + const [hideBanner, setHideBanner] = useAppState("hideUnifiedAddressBanner") + const accounts = useAccounts() + + const showBanner = useMemo( + () => allowBanner && !hideBanner && accounts.some((a) => a.type !== "ethereum"), + [accounts, allowBanner, hideBanner], + ) + + if (!showBanner) return null + + return ( +
+
+
+
{t("Unified address format")}
+
+ setHideBanner(true)} + > + + +
+
+

+ +

+
+
+ 5EoJmkBANK...os4rNjjoTt +
+ +
+ 13jbv5SEE6...oDcwQFvFg2 +
+
+
+ +
+ ) +} + +const BgIcon: FC<{ className?: string }> = ({ className }) => ( + + + +) diff --git a/apps/extension/src/ui/apps/popup/pages/Portfolio/PortfolioAccounts.tsx b/apps/extension/src/ui/apps/popup/pages/Portfolio/PortfolioAccounts.tsx index 7252975df..829f17577 100644 --- a/apps/extension/src/ui/apps/popup/pages/Portfolio/PortfolioAccounts.tsx +++ b/apps/extension/src/ui/apps/popup/pages/Portfolio/PortfolioAccounts.tsx @@ -44,6 +44,7 @@ import { useBalances } from "@ui/state" import { AuthorisedSiteToolbar } from "../../components/AuthorisedSiteToolbar" import { useQuickSettingsOpenClose } from "../../components/Navigation/QuickSettings" +import { UnifiedAddressInfoBanner } from "../../components/UnifiedAddressInfoBanner" const portfolioAccountsSearch$ = new BehaviorSubject("") @@ -296,6 +297,7 @@ const Accounts = ({ <> + )} diff --git a/packages/extension-core/src/domains/app/store.app.ts b/packages/extension-core/src/domains/app/store.app.ts index e4d35bae5..dd50c3837 100644 --- a/packages/extension-core/src/domains/app/store.app.ts +++ b/packages/extension-core/src/domains/app/store.app.ts @@ -37,6 +37,7 @@ export type AppStoreData = { hideManageAccountsWelcome?: boolean hideGetStarted?: boolean bittensorUnbondBlockNumber: DelegatorsBlockNumberByAccount + hideUnifiedAddressBanner?: boolean } const ANALYTICS_VERSION = "1.5.0" @@ -114,6 +115,7 @@ if (DEBUG) { hideBackupWarningUntil: undefined, hideManageAccountsWelcome: false, hideGetStarted: false, + hideUnifiedAddressBanner: false, }) } hostObj.setAppSettings = (settings: Partial) => {