diff --git a/packages/app-extension/src/components/Onboarding/pages/RecoverAccount.tsx b/packages/app-extension/src/components/Onboarding/pages/RecoverAccount.tsx
index 0c0ec4e7c..6abc50055 100644
--- a/packages/app-extension/src/components/Onboarding/pages/RecoverAccount.tsx
+++ b/packages/app-extension/src/components/Onboarding/pages/RecoverAccount.tsx
@@ -19,6 +19,7 @@ import { AlreadyOnboarded } from "./AlreadyOnboarded";
import { Finish } from "./Finish";
import { KeyringTypeSelector } from "./KeyringTypeSelector";
import { MnemonicSearch } from "./MnemonicSearch";
+import { NotificationsPermission } from "./NotificationsPermission";
import { RecoverAccountUsernameForm } from "./RecoverAccountUsernameForm";
import { TwitterConnect } from "./TwitterConnect";
@@ -151,6 +152,7 @@ export const RecoverAccount = ({
/>,
]
: []),
+ ,
,
];
diff --git a/packages/app-extension/src/components/Unlocked/Apps/index.tsx b/packages/app-extension/src/components/Unlocked/Apps/index.tsx
index 298d7bc3d..179f2f1f9 100644
--- a/packages/app-extension/src/components/Unlocked/Apps/index.tsx
+++ b/packages/app-extension/src/components/Unlocked/Apps/index.tsx
@@ -15,7 +15,17 @@ import {
} from "@coral-xyz/recoil";
import { HOVER_OPACITY, styles, useCustomTheme } from "@coral-xyz/themes";
import { Block as BlockIcon } from "@mui/icons-material";
-import { Button, Grid, Skeleton, Typography } from "@mui/material";
+import type {
+ TooltipProps} from "@mui/material";
+import {
+ Button,
+ Grid,
+ Skeleton,
+ Tooltip,
+ tooltipClasses,
+ Typography,
+} from "@mui/material";
+import { styled } from "@mui/system";
import { getSvgPath } from "figma-squircle";
import { useRecoilValue, waitForAll } from "recoil";
@@ -170,7 +180,7 @@ function WalletXnftGrid({
);
return !isLoading && plugins.length === 0 ? (
- <>>
+
) : (
{
openPlugin(p.install.account.xnft.toString());
};
+ const xNFTPlugin: { title: string; icon: string; url: string } = {
+ title: "xNFT.gg \u2197",
+ icon: "https://www.xnft.gg/logo.svg",
+ url: "https://xnft.gg",
+ };
+ const onClickXnftPlugin = (url: string) => {
+ window.open(url, "_blank");
+ };
const iconsPerRow = isXs ? 4 : 6;
return (
<>
- {showContent ?
-
- {isLoading
- ? Array.from(Array(iconsPerRow).keys()).map((_, idx) => {
- return (
- = iconsPerRow ? "24px" : 0,
- }}
- >
-
-
- );
- })
- : plugins.map((p: any, idx: number) => {
+
+ {isLoading ? (
+ Array.from(Array(iconsPerRow).keys()).map((_, idx) => {
+ return (
+ = iconsPerRow ? "24px" : 0,
+ }}
+ >
+
+
+ );
+ })
+ ) : (
+ <>
+
+ = iconsPerRow ? "24px" : 0,
+ }}
+ >
+ onClickXnftPlugin(xNFTPlugin.url)}
+ />
+
+
+ {plugins.map((p: any, idx: number) => {
return (
);
})}
-
- : null}
+ >
+ )}
+
+
+ ) : null}
>
);
}
+function BootstrapTooltip(props: TooltipProps) {
+ const { className, ...other } = props;
+ return ;
+}
+
+const BootstrapTooltipStyled = styled(BootstrapTooltip)(({ theme }) => ({
+ [`& .${tooltipClasses.arrow}`]: {
+ color: theme.palette.common.black,
+ },
+ [`& .${tooltipClasses.tooltip}`]: {
+ backgroundColor: theme.palette.common.black,
+ },
+}));
+
function PluginIcon({ plugin, onClick }: any) {
return (
);
}
+function PluginIconCustom({ plugin, onClick }: any) {
+ return (
+
+ );
+}
+
function AppIcon({
title,
iconUrl,