diff --git a/apps/web/src/app/core/services/wallet.service.ts b/apps/web/src/app/core/services/wallet.service.ts index 86b2253..d464c86 100644 --- a/apps/web/src/app/core/services/wallet.service.ts +++ b/apps/web/src/app/core/services/wallet.service.ts @@ -50,6 +50,10 @@ export class SolanaWalletService { this.account.set(null); } + HasWallet(): boolean { + return this.wallet() !== null; + } + GetAddress(): string { const connectedAccount = this.account(); if (!connectedAccount) return ''; diff --git a/apps/web/src/app/features/checkout/checkout.component.html b/apps/web/src/app/features/checkout/checkout.component.html index c0e7da1..fd3c344 100644 --- a/apps/web/src/app/features/checkout/checkout.component.html +++ b/apps/web/src/app/features/checkout/checkout.component.html @@ -137,6 +137,39 @@ } + } @else { @if (NeedsMobileWalletHandoff()) { +
+
+ +
+

+ Open in a wallet +

+

+ Choose a Solana wallet to continue this checkout securely in its + mobile browser. +

+
+ @for (walletOption of MobileWalletOptions(); track walletOption.name) + { + + {{ walletOption.name }} + + + } +
+

+ After your wallet opens, review the checkout details and approve the + USDC payment. +

+
} @else {
Contact details
@@ -431,7 +464,7 @@ Privacy }.
- } + } }