diff --git a/src/app/shared/EventDate.svelte b/src/app/shared/EventDate.svelte
index b6164701..9766c3a9 100644
--- a/src/app/shared/EventDate.svelte
+++ b/src/app/shared/EventDate.svelte
@@ -4,9 +4,10 @@
export let event
- const date = secondsToDate(Tags.fromEvent(event).get("start")?.value())
const monthFmt = new Intl.DateTimeFormat(getLocale(), {month: "short"})
const dayFmt = new Intl.DateTimeFormat(getLocale(), {day: "numeric"})
+
+ $: date = secondsToDate(Tags.fromEvent(event).get("start")?.value())
diff --git a/src/app/shared/EventInfo.svelte b/src/app/shared/EventInfo.svelte
index bb48a109..a9504bf8 100644
--- a/src/app/shared/EventInfo.svelte
+++ b/src/app/shared/EventInfo.svelte
@@ -10,29 +10,30 @@
import EventActions from "src/app/shared/EventActions.svelte"
import NoteContentKind1 from "src/app/shared/NoteContentKind1.svelte"
import {router} from "src/app/util/router"
- import {deriveIsDeleted, getSetting, pubkey} from "src/engine"
+ import {deriveIsDeletedByAddress, getSetting, pubkey} from "src/engine"
export let event
export let showDate = false
export let actionsInline = false
+ const address = getAddress(event)
const timeFmt = new Intl.DateTimeFormat(getLocale(), {timeStyle: "short"})
const datetimeFmt = new Intl.DateTimeFormat(getLocale(), {dateStyle: "short", timeStyle: "short"})
- const tags = Tags.fromEvent(event)
- const groupAddrs = tags.context().values().valueOf()
- const {name, title, location} = fromPairs(event.tags)
- const end = parseInt(tags.get("end")?.value())
- const start = parseInt(tags.get("start")?.value())
- const startDate = secondsToDate(start)
- const endDate = secondsToDate(end)
- const startDateDisplay = formatTimestampAsDate(start)
- const endDateDisplay = formatTimestampAsDate(end)
- const isSingleDay = startDateDisplay === endDateDisplay
- const address = getAddress(event)
const detailPath = router.at("events").of(address).toString()
const editLink = router.at("events").of(address).at("edit").toString()
const deleteLink = router.at("events").of(address).at("delete").toString()
- const deleted = deriveIsDeleted(event)
+ const deleted = deriveIsDeletedByAddress(event)
+
+ $: tags = Tags.fromEvent(event)
+ $: groupAddrs = tags.context().values().valueOf()
+ $: ({name, title, location} = fromPairs(event.tags))
+ $: end = parseInt(tags.get("end")?.value())
+ $: start = parseInt(tags.get("start")?.value())
+ $: startDate = secondsToDate(start)
+ $: endDate = secondsToDate(end)
+ $: startDateDisplay = formatTimestampAsDate(start)
+ $: endDateDisplay = formatTimestampAsDate(end)
+ $: isSingleDay = startDateDisplay === endDateDisplay
diff --git a/src/app/shared/NoteContentKind30402.svelte b/src/app/shared/NoteContentKind30402.svelte
index 8663e77e..60c3a66f 100644
--- a/src/app/shared/NoteContentKind30402.svelte
+++ b/src/app/shared/NoteContentKind30402.svelte
@@ -11,7 +11,7 @@
import NoteContentTopics from "src/app/shared/NoteContentTopics.svelte"
import NoteContentKind1 from "src/app/shared/NoteContentKind1.svelte"
import {router} from "src/app/util/router"
- import {hints, pubkey, deriveIsDeleted} from "src/engine"
+ import {hints, pubkey, deriveIsDeletedByAddress} from "src/engine"
export let note
export let showMedia = false
@@ -24,7 +24,7 @@
const address = Address.fromEvent(note, hints.Event(note).redundancy(3).getUrls())
const editLink = router.at("listings").of(address.toString()).at("edit").toString()
const deleteLink = router.at("listings").of(address.toString()).at("delete").toString()
- const deleted = deriveIsDeleted(note)
+ const deleted = deriveIsDeletedByAddress(note)
const sendMessage = () => {
const naddr = address.toNaddr()
diff --git a/src/app/views/EventDetail.svelte b/src/app/views/EventDetail.svelte
index cad32b74..91099113 100644
--- a/src/app/views/EventDetail.svelte
+++ b/src/app/views/EventDetail.svelte
@@ -1,6 +1,6 @@
{#if loading}
-{:else if event}
+{:else if $event}
{:else}
diff --git a/src/engine/repository.ts b/src/engine/repository.ts
index 233fc101..c1992e0d 100644
--- a/src/engine/repository.ts
+++ b/src/engine/repository.ts
@@ -121,11 +121,11 @@ export const deriveEvents = (opts: {filters: Filter[]; includeDeleted?: boolean}
export const deriveEvent = (idOrAddress: string) =>
derived(deriveEvents({filters: getIdFilters([idOrAddress]), includeDeleted: true}), first)
-export const deriveIsDeleted = (event: TrustedEvent) =>
+export const deriveIsDeletedByAddress = (event: TrustedEvent) =>
custom
(setter => {
- setter(repository.isDeleted(event))
+ setter(repository.isDeletedByAddress(event))
- const onUpdate = batch(300, () => setter(repository.isDeleted(event)))
+ const onUpdate = batch(300, () => setter(repository.isDeletedByAddress(event)))
repository.on("update", onUpdate)