+
{#each images as image (image)}
{/each}
diff --git a/src/app/core/commands.ts b/src/app/core/commands.ts
index cf6e9249..a169d6a3 100644
--- a/src/app/core/commands.ts
+++ b/src/app/core/commands.ts
@@ -531,7 +531,6 @@ export const uploadFile = async (file: File, options: UploadFileOptions = {}) =>
const ext = "." + type.split("/")[1]
const server = await getBlossomServer(options)
- console.log("====", server)
const hashes = [await sha256(await file.arrayBuffer())]
const $signer = signer.get() || Nip01Signer.ephemeral()
const authTemplate = makeBlossomAuthEvent({action: "upload", server, hashes})
diff --git a/src/app/util/notifications.ts b/src/app/util/notifications.ts
index 6b2b54dd..8d842eed 100644
--- a/src/app/util/notifications.ts
+++ b/src/app/util/notifications.ts
@@ -232,13 +232,13 @@ export const notifications = derived(
}
}
- const commentsByClassifiedId = groupBy(
- e => getTagValue("E", e.tags),
+ const commentsByClassifiedAddress = groupBy(
+ e => getTagValue("A", e.tags),
classifiedComments.filter(spec({kind: COMMENT})),
)
- for (const [classifiedId, [comment]] of commentsByClassifiedId.entries()) {
- const classifiedItemPath = makeClassifiedPath(url, classifiedId)
+ for (const [address, [comment]] of commentsByClassifiedAddress.entries()) {
+ const classifiedItemPath = makeClassifiedPath(url, address)
if (hasNotification(classifiedPath, comment)) {
paths.add(spacePathMobile)
@@ -250,13 +250,13 @@ export const notifications = derived(
}
}
- const commentsByEventId = groupBy(
- e => getTagValue("E", e.tags),
+ const commentsByEventAddress = groupBy(
+ e => getTagValue("A", e.tags),
calendarComments.filter(spec({kind: COMMENT})),
)
- for (const [eventId, [comment]] of commentsByEventId.entries()) {
- const calendarItemPath = makeCalendarPath(url, eventId)
+ for (const [address, [comment]] of commentsByEventAddress.entries()) {
+ const calendarItemPath = makeCalendarPath(url, address)
if (hasNotification(calendarPath, comment)) {
paths.add(spacePathMobile)
diff --git a/src/app/util/routes.ts b/src/app/util/routes.ts
index 8cc89a68..418bcbf5 100644
--- a/src/app/util/routes.ts
+++ b/src/app/util/routes.ts
@@ -62,16 +62,13 @@ export const makeRoomPath = (url: string, h: string) => `/spaces/${encodeRelay(u
export const makeSpaceChatPath = (url: string) => makeRoomPath(url, "chat")
-export const makeGoalPath = (url: string, eventId?: string) => makeSpacePath(url, "goals", eventId)
+export const makeGoalPath = (url: string, id?: string) => makeSpacePath(url, "goals", id)
-export const makeThreadPath = (url: string, eventId?: string) =>
- makeSpacePath(url, "threads", eventId)
+export const makeThreadPath = (url: string, id?: string) => makeSpacePath(url, "threads", id)
-export const makeClassifiedPath = (url: string, eventId?: string) =>
- makeSpacePath(url, "classifieds", eventId)
+export const makeClassifiedPath = (url: string, address?: string) => makeSpacePath(url, "classifieds", address)
-export const makeCalendarPath = (url: string, eventId?: string) =>
- makeSpacePath(url, "calendar", eventId)
+export const makeCalendarPath = (url: string, address?: string) => makeSpacePath(url, "calendar", address)
export const getPrimaryNavItem = ($page: Page) => $page.route?.id?.split("/")[1]
@@ -126,17 +123,18 @@ export const getEventPath = async (event: TrustedEvent, urls: string[]) => {
}
if (event.kind === CLASSIFIED) {
- return makeClassifiedPath(url, event.id)
+ return makeClassifiedPath(url, getAddress(event))
}
if (event.kind === EVENT_TIME) {
- return makeCalendarPath(url, event.id)
+ return makeCalendarPath(url, getAddress(event))
}
if (event.kind === MESSAGE) {
return h ? makeRoomPath(url, h) : makeSpacePath(url, "chat")
}
+ const address = event.tags.find(nthEq(0, "A"))?.[1]
const kind = event.tags.find(nthEq(0, "K"))?.[1]
const id = event.tags.find(nthEq(0, "E"))?.[1]
@@ -149,18 +147,21 @@ export const getEventPath = async (event: TrustedEvent, urls: string[]) => {
return makeThreadPath(url, id)
}
- if (parseInt(kind) === CLASSIFIED) {
- return makeClassifiedPath(url, id)
- }
-
- if (parseInt(kind) === EVENT_TIME) {
- return makeCalendarPath(url, id)
- }
-
if (parseInt(kind) === MESSAGE) {
return h ? makeRoomPath(url, h) : makeSpacePath(url, "chat")
}
}
+
+ if (address && kind) {
+ if (parseInt(kind) === CLASSIFIED) {
+ return makeClassifiedPath(url, address)
+ }
+
+ if (parseInt(kind) === EVENT_TIME) {
+ return makeCalendarPath(url, address)
+ }
+
+ }
}
return entityLink(nip19.neventEncode({id: event.id, relays: urls}))
@@ -171,10 +172,10 @@ export const getRoomItemPath = (url: string, event: TrustedEvent) => {
case THREAD:
return makeThreadPath(url, event.id)
case CLASSIFIED:
- return makeClassifiedPath(url, event.id)
+ return makeClassifiedPath(url, getAddress(event))
case ZAP_GOAL:
return makeGoalPath(url, event.id)
case EVENT_TIME:
- return makeCalendarPath(url, event.id)
+ return makeCalendarPath(url, getAddress(event))
}
}
diff --git a/src/routes/spaces/[relay]/calendar/[id]/+page.svelte b/src/routes/spaces/[relay]/calendar/[address]/+page.svelte
similarity index 100%
rename from src/routes/spaces/[relay]/calendar/[id]/+page.svelte
rename to src/routes/spaces/[relay]/calendar/[address]/+page.svelte
diff --git a/src/routes/spaces/[relay]/classifieds/[id]/+page.svelte b/src/routes/spaces/[relay]/classifieds/[address]/+page.svelte
similarity index 90%
rename from src/routes/spaces/[relay]/classifieds/[id]/+page.svelte
rename to src/routes/spaces/[relay]/classifieds/[address]/+page.svelte
index 99c4a13c..dd1ba4f4 100644
--- a/src/routes/spaces/[relay]/classifieds/[id]/+page.svelte
+++ b/src/routes/spaces/[relay]/classifieds/[address]/+page.svelte
@@ -24,10 +24,10 @@
import {deriveEvent, decodeRelay} from "@app/core/state"
import {setChecked} from "@app/util/notifications"
- const {relay, id} = $page.params as MakeNonOptional
+ const {relay, address} = $page.params as MakeNonOptional
const url = decodeRelay(relay)
- const event = deriveEvent(id, [url])
- const filters = [{kinds: [COMMENT], "#E": [id]}]
+ const event = deriveEvent(address, [url])
+ const filters = [{kinds: [COMMENT], "#A": [address]}]
const replies = deriveEventsAsc(deriveEventsById({filters, repository}))
const back = () => history.back()
@@ -115,10 +115,12 @@
{/if}
{:else}
- {#await sleep(5000)}
-
Loading listing...
- {:then}
-
Failed to load classified listing.
- {/await}
+
+ {#await sleep(5000)}
+
Loading listing...
+ {:then}
+
Failed to load classified listing.
+ {/await}
+
{/if}
diff --git a/src/routes/spaces/[relay]/recent/+page.svelte b/src/routes/spaces/[relay]/recent/+page.svelte
index d85bb612..fb25a6e8 100644
--- a/src/routes/spaces/[relay]/recent/+page.svelte
+++ b/src/routes/spaces/[relay]/recent/+page.svelte
@@ -140,7 +140,7 @@
{:else if event.kind === CLASSIFIED}
-
+
View Listing
@@ -150,7 +150,7 @@
{:else if event.kind === EVENT_TIME}
-
+
View Event