From 47fc8e1414de5187206da911f08c6453f6d1f389 Mon Sep 17 00:00:00 2001 From: Martti Malmi Date: Sat, 13 Jan 2024 15:25:21 +0200 Subject: [PATCH] fix polls --- packages/app/src/Components/Event/Poll.tsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/app/src/Components/Event/Poll.tsx b/packages/app/src/Components/Event/Poll.tsx index b85b6e06..f767ecfb 100644 --- a/packages/app/src/Components/Event/Poll.tsx +++ b/packages/app/src/Components/Event/Poll.tsx @@ -33,12 +33,12 @@ export default function Poll(props: PollProps) { const [error, setError] = useState(""); const [invoice, setInvoice] = useState(""); const [voting, setVoting] = useState(); - const didVote = props.zaps.some(a => a.sender === myPubKey); + const didVote = props.zaps?.some(a => a.sender === myPubKey); const isMyPoll = props.ev.pubkey === myPubKey; const showResults = didVote || isMyPoll; const options = props.ev.tags - .filter(a => a[0] === "poll_option") + ?.filter(a => a[0] === "poll_option") .sort((a, b) => (Number(a[1]) > Number(b[1]) ? 1 : -1)); async function zapVote(ev: React.MouseEvent, opt: number) { @@ -107,9 +107,9 @@ export default function Poll(props: PollProps) { const totalVotes = (() => { switch (tallyBy) { case "zaps": - return props.zaps.filter(a => a.pollOption !== undefined).reduce((acc, v) => (acc += v.amount), 0); + return props.zaps?.filter(a => a.pollOption !== undefined).reduce((acc, v) => (acc += v.amount), 0) ?? 0; case "pubkeys": - return new Set(props.zaps.filter(a => a.pollOption !== undefined).map(a => unwrap(a.sender))).size; + return new Set(props.zaps?.filter(a => a.pollOption !== undefined).map(a => unwrap(a.sender)) ?? []).size; } })(); @@ -141,10 +141,10 @@ export default function Poll(props: PollProps) {
- {options.map(a => { + {options?.map(a => { const opt = Number(a[1]); const desc = a[2]; - const zapsOnOption = props.zaps.filter(b => b.pollOption === opt); + const zapsOnOption = props.zaps?.filter(b => b.pollOption === opt) ?? []; const total = (() => { switch (tallyBy) { case "zaps":