From c6ee922391f82e81b271266b1385c62a7d5b291d Mon Sep 17 00:00:00 2001 From: zmeyer44 Date: Thu, 19 Oct 2023 13:37:20 -0400 Subject: [PATCH] added zapping functionality on event cards and sidebar --- app/(app)/_layout/Header.tsx | 5 +- app/(app)/_layout/Sidebar.tsx | 15 +++- .../_layout/components/CommandDialog.tsx | 70 ++++++++++++++++++ app/(app)/_layout/components/Search.tsx | 9 ++- app/(app)/_layout/index.tsx | 5 ++ bun.lockb | Bin 333586 -> 333972 bytes components/KindCard/1.tsx | 2 - components/KindCard/30023.tsx | 4 +- components/KindCard/30311.tsx | 7 +- components/KindCard/3745.tsx | 2 +- components/KindCard/components/Actions.tsx | 22 +++++- components/KindCard/components/Container.tsx | 51 ++++++++++--- components/KindCard/default.tsx | 3 +- components/Modals/ZapPicker.tsx | 59 +++++++++------ components/ui/command.tsx | 64 ++++++++-------- components/ui/dialog.tsx | 58 +++++++-------- lib/actions/zap.ts | 2 +- lib/utils/index.ts | 7 +- package.json | 1 + 19 files changed, 272 insertions(+), 114 deletions(-) create mode 100644 app/(app)/_layout/components/CommandDialog.tsx diff --git a/app/(app)/_layout/Header.tsx b/app/(app)/_layout/Header.tsx index 83064fd..abda113 100644 --- a/app/(app)/_layout/Header.tsx +++ b/app/(app)/_layout/Header.tsx @@ -1,7 +1,10 @@ -import { Search } from "./components/Search"; import AuthActions from "./components/AuthActions"; import Logo from "@/assets/Logo"; +import dynamic from "next/dynamic"; +const Search = dynamic(() => import("./components/Search"), { + ssr: false, +}); export default function Header() { return (
diff --git a/app/(app)/_layout/Sidebar.tsx b/app/(app)/_layout/Sidebar.tsx index 6c010e2..80c5ad8 100644 --- a/app/(app)/_layout/Sidebar.tsx +++ b/app/(app)/_layout/Sidebar.tsx @@ -43,6 +43,19 @@ type NavigationElement = { current: boolean; active: boolean; } & (NavigationLink | NavigationButton); +const flockstrEvent = { + created_at: 1697736945, + content: + "Officially announcing Flockstr. Check it out at https://flockstr.com", + tags: [ + ["r", "https://flockstr.com"], + ["client", "flockstr"], + ], + kind: 1, + pubkey: "17717ad4d20e2a425cda0a2195624a0a4a73c4f6975f16b1593fc87fa46f2d58", + id: "a867ff28711eeab4767fb6bacbb33dfe17b2b5bbbff98f8e57f90a85ea684b0a", + sig: "37d8918e6da88d989467021a1f5809a3fbcab941ca1044d109ce261f29270d2d545aaa84297b7f224ae1ad7760263e50c317c24abc809034bcdb5c3260faf4b0", +}; export default function Sidebar() { const modal = useModal(); @@ -76,7 +89,7 @@ export default function Sidebar() { active: false, }, { - onClick: () => modal?.show(), + onClick: () => modal?.show(), name: "zap", label: "Zap Flockstr", icon: HiOutlineLightningBolt, diff --git a/app/(app)/_layout/components/CommandDialog.tsx b/app/(app)/_layout/components/CommandDialog.tsx new file mode 100644 index 0000000..9eb87bc --- /dev/null +++ b/app/(app)/_layout/components/CommandDialog.tsx @@ -0,0 +1,70 @@ +"use client"; + +import { useKeyboardShortcut } from "@/lib/hooks/useKeyboardShortcut"; +import { + CalendarIcon, + EnvelopeClosedIcon, + FaceIcon, + GearIcon, + PersonIcon, + RocketIcon, +} from "@radix-ui/react-icons"; +import { + CommandDialog, + CommandEmpty, + CommandGroup, + CommandInput, + CommandItem, + CommandList, + CommandSeparator, + CommandShortcut, +} from "@/components/ui/command"; +import { atom, useAtom } from "jotai"; + +export const commandDialogAtom = atom(false); + +export default function CommandDialogComponent() { + const [open, setOpen] = useAtom(commandDialogAtom); + useKeyboardShortcut(["ctrl", "k"], () => setOpen((open) => !open)); + + return ( + + + + No results found. + + + + Calendar + + + + Search Emoji + + + + Launch + + + + + + + Profile + ⌘P + + + + Mail + ⌘B + + + + Settings + ⌘S + + + + + ); +} diff --git a/app/(app)/_layout/components/Search.tsx b/app/(app)/_layout/components/Search.tsx index 87b8c20..d106856 100644 --- a/app/(app)/_layout/components/Search.tsx +++ b/app/(app)/_layout/components/Search.tsx @@ -1,12 +1,17 @@ -import { Input } from "@/components/ui/input"; +"use client"; -export function Search() { +import { Input } from "@/components/ui/input"; +import { commandDialogAtom } from "./CommandDialog"; +import { useAtom } from "jotai"; +export default function Search() { + const [open, setOpen] = useAtom(commandDialogAtom); return (
setOpen(true)} />
); diff --git a/app/(app)/_layout/index.tsx b/app/(app)/_layout/index.tsx index 48ce7d4..fb75fa7 100644 --- a/app/(app)/_layout/index.tsx +++ b/app/(app)/_layout/index.tsx @@ -3,7 +3,11 @@ import Header from "./Header"; import Keystone from "./Keystone"; import MobileBanner from "./MobileBanner"; import Sidebar from "./Sidebar"; +import dynamic from "next/dynamic"; +const CommandDialog = dynamic(() => import("./components/CommandDialog"), { + ssr: false, +}); export default function AppLayout({ children }: { children: React.ReactNode }) { return (
@@ -23,6 +27,7 @@ export default function AppLayout({ children }: { children: React.ReactNode }) { {/* BottomNav */} +
); } diff --git a/bun.lockb b/bun.lockb index d0f357593bd3de910b38281bae325713bf2f71e9..d56a77b3eb0f77d9b9789abfeeca9f33fc4e3c84 100755 GIT binary patch delta 56146 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%0A7+se<`B_9 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 diff --git a/components/KindCard/1.tsx b/components/KindCard/1.tsx index 320e872..2e976eb 100644 --- a/components/KindCard/1.tsx +++ b/components/KindCard/1.tsx @@ -15,8 +15,6 @@ export default function Kind1(props: Event) { return ( ; } return ( - +
diff --git a/components/KindCard/components/Actions.tsx b/components/KindCard/components/Actions.tsx index 9cd3f22..275ab31 100644 --- a/components/KindCard/components/Actions.tsx +++ b/components/KindCard/components/Actions.tsx @@ -1,11 +1,21 @@ +"use client"; + import { Button } from "@/components/ui/button"; import { HiOutlineHandThumbUp, HiOutlineChatBubbleLeftEllipsis, } from "react-icons/hi2"; import { HiOutlineLightningBolt } from "react-icons/hi"; +import ZapPicker from "@/components/Modals/ZapPicker"; +import { useModal } from "@/app/_providers/modal/provider"; +import { NostrEvent } from "@nostr-dev-kit/ndk"; +import { stopPropagation } from "@/lib/utils"; -export default function Actions() { +type ActionProps = { + event: NostrEvent; +}; +export default function Actions({ event }: ActionProps) { + const modal = useModal(); return (
@@ -17,7 +27,15 @@ export default function Actions() {
- diff --git a/components/KindCard/components/Container.tsx b/components/KindCard/components/Container.tsx index 713896a..0e7fb48 100644 --- a/components/KindCard/components/Container.tsx +++ b/components/KindCard/components/Container.tsx @@ -7,10 +7,12 @@ import { formatDate } from "@/lib/utils/dates"; import { Button } from "@/components/ui/button"; import { ReactNode } from "react"; import ProfileHeader, { LoadingProfileHeader } from "./ProfileHeader"; +import { getTagValues, getTagsValues } from "@/lib/nostr/utils"; import Actions from "./Actions"; import Tags from "./Tags"; import DropDownMenu from "@/components/DropDownMenu"; - +import { NostrEvent } from "@nostr-dev-kit/ndk"; +import { removeDuplicates } from "@/lib/utils"; type OptionLink = { href: string; type: "link"; @@ -24,25 +26,54 @@ type Option = { } & (OptionLink | OptionButton); type CreatorCardProps = { - pubkey?: string; - contentTags?: string[]; - createdAt?: number; children: ReactNode; actionOptions?: Option[]; + event?: NostrEvent; }; export default function Container({ children, - createdAt, - contentTags, - pubkey, actionOptions = [], + event, }: CreatorCardProps) { + if (!event) { + return ( + + + +
+ + + +
+
+ + {children} +
+
+
+ ); + } + const { pubkey, tags, created_at: createdAt } = event; + const contentTags = removeDuplicates(getTagsValues("t", tags)).filter( + Boolean, + ); + return ( - + { + console.log("CLICK IN CONTAINER"); + }} + className="relative flex h-full w-full flex-col overflow-hidden @container" + > {pubkey ? : } -
{!!createdAt && formatDate(new Date(createdAt * 1000), "MMM Do, h:mm a")} @@ -68,7 +99,7 @@ export default function Container({
)}
- +
diff --git a/components/KindCard/default.tsx b/components/KindCard/default.tsx index 555b01b..c37d7a1 100644 --- a/components/KindCard/default.tsx +++ b/components/KindCard/default.tsx @@ -16,8 +16,7 @@ export default function KindDefault(props: Event) { return ( { @@ -48,6 +46,18 @@ export default function ZapPicker() { }); } + async function handleSendZap() { + try { + setIsLoading(true); + const result = await sendZap(ndk!, sats, event, note); + toast.success("Zap Sent!"); + } catch (err) { + console.log("error sending zap", err); + } finally { + setIsLoading(false); + } + } + return (