diff --git a/apps/web/src/app/[locale]/(space)/polls/page.tsx b/apps/web/src/app/[locale]/(space)/polls/page.tsx index e751b69b9..70846990a 100644 --- a/apps/web/src/app/[locale]/(space)/polls/page.tsx +++ b/apps/web/src/app/[locale]/(space)/polls/page.tsx @@ -1,6 +1,6 @@ import type { PollStatus } from "@rallly/database"; import { Button } from "@rallly/ui/button"; -import { shortUrl } from "@rallly/utils/absolute-url"; +import { absoluteUrl, shortUrl } from "@rallly/utils/absolute-url"; import { InboxIcon } from "lucide-react"; import Link from "next/link"; import { z } from "zod"; @@ -186,6 +186,7 @@ export default async function Page({ title={poll.title} status={poll.status} participants={poll.participants} + pollLink={absoluteUrl(`/poll/${poll.id}`)} inviteLink={shortUrl(`/invite/${poll.id}`)} /> ))} diff --git a/apps/web/src/app/[locale]/invite/[urlId]/invite-page.tsx b/apps/web/src/app/[locale]/invite/[urlId]/invite-page.tsx index 4b4f305fe..d059d4d7c 100644 --- a/apps/web/src/app/[locale]/invite/[urlId]/invite-page.tsx +++ b/apps/web/src/app/[locale]/invite/[urlId]/invite-page.tsx @@ -54,18 +54,21 @@ export function InvitePage() { const poll = usePoll(); return ( -
- {/* Track poll views */} +
- - - - - - - - +
+
+ + + + + + + + +
+
); } diff --git a/apps/web/src/app/[locale]/poll/[urlId]/admin-page.tsx b/apps/web/src/app/[locale]/poll/[urlId]/admin-page.tsx index 5395d6f2a..ab4a51c07 100644 --- a/apps/web/src/app/[locale]/poll/[urlId]/admin-page.tsx +++ b/apps/web/src/app/[locale]/poll/[urlId]/admin-page.tsx @@ -2,7 +2,6 @@ import Discussion from "@/components/discussion"; import { EventCard } from "@/components/event-card"; import { PollFooter } from "@/components/poll/poll-footer"; -import { PollHeader } from "@/components/poll/poll-header"; import { PollViewTracker } from "@/components/poll/poll-view-tracker"; import { ResponsiveResults } from "@/components/poll/responsive-results"; import { ScheduledEvent } from "@/components/poll/scheduled-event"; @@ -21,7 +20,6 @@ export function AdminPage() { {/* Track poll views */} - diff --git a/apps/web/src/components/layouts/poll-layout.tsx b/apps/web/src/components/layouts/poll-layout.tsx index a179ec8d7..b3201f37f 100644 --- a/apps/web/src/components/layouts/poll-layout.tsx +++ b/apps/web/src/components/layouts/poll-layout.tsx @@ -7,14 +7,12 @@ import { LogInIcon, LogOutIcon, ShieldCloseIcon, - XIcon, } from "lucide-react"; import Link from "next/link"; import { useParams, usePathname } from "next/navigation"; import React from "react"; import { LogoutButton } from "@/app/components/logout-button"; -import { PollPageIcon } from "@/app/components/page-icons"; import { InviteDialog } from "@/components/invite-dialog"; import { LoginLink } from "@/components/login-link"; import { @@ -46,37 +44,41 @@ const Layout = ({ children }: React.PropsWithChildren) => { const pollLink = `/poll/${poll.id}`; const pathname = usePathname(); return ( -
-
-
- {pathname === pollLink ? ( - - ) : ( - - )} -
- +
+
+
+
+ {pathname === pollLink ? ( + + ) : ( + + )} +
+
+
-

{poll.title}

-
-
-
-
- {children} +
+
{children}
); diff --git a/apps/web/src/components/poll/manage-poll.tsx b/apps/web/src/components/poll/manage-poll.tsx index 0874633b3..ed15bd4d7 100644 --- a/apps/web/src/components/poll/manage-poll.tsx +++ b/apps/web/src/components/poll/manage-poll.tsx @@ -151,11 +151,13 @@ const ManagePoll: React.FunctionComponent<{ <> - + + + )} +
); diff --git a/apps/web/src/features/poll/components/poll-list.tsx b/apps/web/src/features/poll/components/poll-list.tsx index d66db0f5f..6a0b1d543 100644 --- a/apps/web/src/features/poll/components/poll-list.tsx +++ b/apps/web/src/features/poll/components/poll-list.tsx @@ -14,11 +14,13 @@ export function PollListItem({ status, participants, inviteLink, + pollLink, }: { title: string; status: PollStatus; participants: { id: string; name: string; image?: string }[]; inviteLink: string; + pollLink: string; }) { return ( @@ -26,7 +28,7 @@ export function PollListItem({ {title}