From bb68e94f7466a335883a3aa2cc8f51f546ffa062 Mon Sep 17 00:00:00 2001 From: Cho Young-Hwi Date: Sun, 15 Mar 2026 12:53:02 +0000 Subject: [PATCH] [#112] Add inline ConnectWallet CTA to wallet-gated pages Co-Authored-By: Claude Opus 4.6 (1M context) --- src/app/chain/page.tsx | 2 ++ src/app/create/page.tsx | 2 ++ src/app/dashboard/reader/page.tsx | 2 ++ src/app/dashboard/writer/page.tsx | 2 ++ 4 files changed, 8 insertions(+) diff --git a/src/app/chain/page.tsx b/src/app/chain/page.tsx index c28db283..aedf8edb 100644 --- a/src/app/chain/page.tsx +++ b/src/app/chain/page.tsx @@ -12,6 +12,7 @@ import { supabase, type Storyline } from "../../../lib/supabase"; import { useChainPlot } from "../../hooks/useChainPlot"; import type { PublishState } from "../../hooks/usePublish"; import Link from "next/link"; +import { ConnectWallet } from "../../components/ConnectWallet"; const STATE_LABELS: Record = { idle: "", @@ -60,6 +61,7 @@ export default function ChainPlotPage() {

Connect your wallet to chain a plot.

+ ); } diff --git a/src/app/create/page.tsx b/src/app/create/page.tsx index 1a7f6870..e54f60f1 100644 --- a/src/app/create/page.tsx +++ b/src/app/create/page.tsx @@ -11,6 +11,7 @@ import { usePublish, type PublishState } from "../../hooks/usePublish"; import { storyFactoryAbi } from "../../../lib/contracts/abi"; import { STORY_FACTORY } from "../../../lib/contracts/constants"; import Link from "next/link"; +import { ConnectWallet } from "../../components/ConnectWallet"; const STATE_LABELS: Record = { idle: "", @@ -42,6 +43,7 @@ export default function CreateStorylinePage() {

Connect your wallet to create a storyline.

+ ); } diff --git a/src/app/dashboard/reader/page.tsx b/src/app/dashboard/reader/page.tsx index 8dd0f401..15bc3643 100644 --- a/src/app/dashboard/reader/page.tsx +++ b/src/app/dashboard/reader/page.tsx @@ -6,6 +6,7 @@ import { useQuery } from "@tanstack/react-query"; import { supabase, type Donation } from "../../../../lib/supabase"; import { ReaderPortfolio } from "../../../components/ReaderPortfolio"; import { formatUnits } from "viem"; +import { ConnectWallet } from "../../../components/ConnectWallet"; const PAGE_SIZE = 50; @@ -56,6 +57,7 @@ export default function ReaderDashboard() {

Connect your wallet to view your dashboard.

+ ); } diff --git a/src/app/dashboard/writer/page.tsx b/src/app/dashboard/writer/page.tsx index c14a1c99..d20c5df2 100644 --- a/src/app/dashboard/writer/page.tsx +++ b/src/app/dashboard/writer/page.tsx @@ -7,6 +7,7 @@ import { DeadlineCountdown } from "../../../components/DeadlineCountdown"; import { ClaimRoyalties } from "../../../components/ClaimRoyalties"; import { WriterTradingStats } from "../../../components/WriterTradingStats"; import Link from "next/link"; +import { ConnectWallet } from "../../../components/ConnectWallet"; import { type Address } from "viem"; async function fetchWriterStorylines( @@ -39,6 +40,7 @@ export default function WriterDashboard() {

Connect your wallet to view your dashboard.

+ ); }