From 56ba0ecc2a288e88ae4b287020a666017ec1f7d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ti=E1=BA=BFn=20Nguy=E1=BB=85n=20Kh=E1=BA=AFc?= Date: Wed, 19 Feb 2025 16:15:42 +1300 Subject: [PATCH] fix: nova wallet detection --- .changeset/clean-trainers-push.md | 5 +++++ packages/dot-connect/src/wallets/nova.ts | 7 +++++-- packages/dot-connect/src/wallets/polkadot-js.ts | 7 +++++-- 3 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 .changeset/clean-trainers-push.md diff --git a/.changeset/clean-trainers-push.md b/.changeset/clean-trainers-push.md new file mode 100644 index 0000000..9380b73 --- /dev/null +++ b/.changeset/clean-trainers-push.md @@ -0,0 +1,5 @@ +--- +"dot-connect": patch +--- + +Fixed Nova Wallet detection. diff --git a/packages/dot-connect/src/wallets/nova.ts b/packages/dot-connect/src/wallets/nova.ts index 3540da5..44eedaf 100644 --- a/packages/dot-connect/src/wallets/nova.ts +++ b/packages/dot-connect/src/wallets/nova.ts @@ -1,10 +1,13 @@ -import { urlFromSvg } from "../utils.js"; +import { identifyBrowser, urlFromSvg } from "../utils.js"; import type { InjectedWalletInfo, WalletConfig } from "./types.js"; import type { Wallet } from "@reactive-dot/core/wallets.js"; import { html } from "lit"; export const nova: WalletConfig = { - selector: (_wallet: Wallet) => false, + selector: (wallet: Wallet) => + wallet.id === "injected/polkadot-js" && + // TODO: remove once Nova is fixed + ["ios", "android"].includes(identifyBrowser()!), name: "Nova Wallet", platforms: ["ios", "android"], logo: urlFromSvg( diff --git a/packages/dot-connect/src/wallets/polkadot-js.ts b/packages/dot-connect/src/wallets/polkadot-js.ts index da46aec..c0219a7 100644 --- a/packages/dot-connect/src/wallets/polkadot-js.ts +++ b/packages/dot-connect/src/wallets/polkadot-js.ts @@ -1,10 +1,13 @@ -import { urlFromSvg } from "../utils.js"; +import { identifyBrowser, urlFromSvg } from "../utils.js"; import type { InjectedWalletInfo, WalletConfig } from "./types.js"; import type { Wallet } from "@reactive-dot/core/wallets.js"; import { html } from "lit"; export const polkadotJs: WalletConfig = { - selector: (wallet: Wallet) => wallet.id === "injected/polkadot-js", + selector: (wallet: Wallet) => + wallet.id === "injected/polkadot-js" && + // TODO: remove once Nova is fixed + !["ios", "android"].includes(identifyBrowser()!), name: "Polkadot{.js}", platforms: ["chrome", "firefox"], logo: urlFromSvg(