From 24045a7e2a6e5b3b84be0ded6ed795a598e0eabe Mon Sep 17 00:00:00 2001
From: Jon Staab
Date: Mon, 3 Feb 2025 17:21:46 -0800
Subject: [PATCH] Fix more stuff, particularly event handlers
---
src/app/components/AppContainer.svelte | 2 +-
src/app/components/ChannelCompose.svelte | 6 ++--
.../components/ChannelComposeParent.svelte | 4 +--
src/app/components/ChannelMessage.svelte | 8 ++---
.../ChannelMessageEmojiButton.svelte | 2 +-
src/app/components/ChannelMessageMenu.svelte | 8 ++---
.../ChannelMessageMenuButton.svelte | 4 +--
.../ChannelMessageMenuMobile.svelte | 10 +++---
src/app/components/ChannelName.svelte | 2 +-
src/app/components/Chat.svelte | 15 ++-------
src/app/components/ChatEnable.svelte | 4 +--
src/app/components/ChatItem.svelte | 2 +-
src/app/components/ChatMenuMobile.svelte | 4 +--
src/app/components/ChatMessage.svelte | 9 ++----
.../components/ChatMessageEmojiButton.svelte | 2 +-
src/app/components/ChatMessageMenu.svelte | 6 ++--
.../components/ChatMessageMenuMobile.svelte | 8 ++---
src/app/components/ChatStart.svelte | 2 +-
src/app/components/ConfirmDelete.svelte | 2 +-
src/app/components/Content.svelte | 15 +++++----
src/app/components/ContentCode.svelte | 2 +-
src/app/components/ContentLinkBlock.svelte | 2 +-
src/app/components/ContentLinkDetail.svelte | 4 +--
src/app/components/ContentLinkInline.svelte | 2 +-
src/app/components/ContentMention.svelte | 4 +--
src/app/components/ContentNewline.svelte | 2 +-
src/app/components/ContentQuote.svelte | 8 ++---
src/app/components/ContentToken.svelte | 4 +--
src/app/components/ContentTopic.svelte | 2 +-
src/app/components/EmailConfirm.svelte | 4 +--
src/app/components/EventCreate.svelte | 6 ++--
src/app/components/EventInfo.svelte | 10 +++---
src/app/components/EventItem.svelte | 14 ++++----
src/app/components/EventReport.svelte | 4 +--
src/app/components/EventReportDetails.svelte | 6 ++--
src/app/components/InfoBunker.svelte | 2 +-
src/app/components/InfoHandle.svelte | 2 +-
src/app/components/InfoKeys.svelte | 6 ++--
src/app/components/InfoNostr.svelte | 2 +-
src/app/components/InfoRelay.svelte | 2 +-
src/app/components/Landing.svelte | 4 +--
src/app/components/LogIn.svelte | 20 ++++++------
src/app/components/LogInBunker.svelte | 14 ++++----
src/app/components/LogInPassword.svelte | 4 +--
src/app/components/LogOut.svelte | 2 +-
src/app/components/MenuSettings.svelte | 2 +-
src/app/components/MenuSpace.svelte | 16 +++++-----
src/app/components/MenuSpaceButton.svelte | 4 +--
src/app/components/MenuSpaceRoomItem.svelte | 2 +-
src/app/components/MenuSpaces.svelte | 2 +-
src/app/components/MenuSpacesItem.svelte | 2 +-
src/app/components/ModalContainer.svelte | 6 ++--
src/app/components/NoteCard.svelte | 24 +++++++++-----
src/app/components/NoteItem.svelte | 2 +-
src/app/components/PasswordReset.svelte | 2 +-
.../components/PasswordResetRequest.svelte | 2 +-
src/app/components/PeopleItem.svelte | 2 +-
src/app/components/PrimaryNav.svelte | 18 +++++------
src/app/components/PrimaryNavItemSpace.svelte | 2 +-
src/app/components/Profile.svelte | 8 ++---
src/app/components/ProfileCircle.svelte | 2 +-
src/app/components/ProfileCircles.svelte | 2 +-
src/app/components/ProfileDetail.svelte | 8 ++---
src/app/components/ProfileEdit.svelte | 5 ++-
src/app/components/ProfileEject.svelte | 6 ++--
src/app/components/ProfileInfo.svelte | 2 +-
src/app/components/ProfileList.svelte | 6 ++--
src/app/components/ProfileMultiSelect.svelte | 5 ++-
src/app/components/ProfileName.svelte | 2 +-
src/app/components/QRCode.svelte | 4 +--
src/app/components/ReactionSummary.svelte | 6 ++--
src/app/components/RelayAdd.svelte | 8 ++---
src/app/components/RelayDescription.svelte | 2 +-
src/app/components/RelayItem.svelte | 4 +--
src/app/components/RelayName.svelte | 2 +-
src/app/components/RoomCreate.svelte | 4 +--
src/app/components/SignUp.svelte | 4 +--
src/app/components/SignUpSuccess.svelte | 4 +--
src/app/components/SpaceAdd.svelte | 4 +--
src/app/components/SpaceAuthError.svelte | 4 +--
src/app/components/SpaceAvatar.svelte | 2 +-
src/app/components/SpaceCheck.svelte | 4 +--
src/app/components/SpaceCreate.svelte | 4 +--
src/app/components/SpaceCreateExternal.svelte | 2 +-
src/app/components/SpaceExit.svelte | 4 +--
src/app/components/SpaceInvite.svelte | 6 ++--
src/app/components/SpaceInviteAccept.svelte | 6 ++--
src/app/components/SpaceJoin.svelte | 4 +--
src/app/components/ThreadActions.svelte | 6 ++--
src/app/components/ThreadCreate.svelte | 6 ++--
src/app/components/ThreadItem.svelte | 2 +-
src/app/components/ThreadMenu.svelte | 10 +++---
src/app/components/ThreadReply.svelte | 6 ++--
src/app/components/ThreadShare.svelte | 4 +--
src/app/components/ThunkStatus.svelte | 31 ++++++++++--------
src/app/components/ThunkStatusDetail.svelte | 2 +-
src/app/components/Toast.svelte | 2 +-
src/app/editor/EditMention.svelte | 2 +-
src/app/editor/ProfileSuggestion.svelte | 4 +--
src/lib/components/Avatar.svelte | 2 +-
src/lib/components/Button.svelte | 32 +++++++++++++++----
src/lib/components/CardButton.svelte | 2 +-
src/lib/components/Collapse.svelte | 2 +-
src/lib/components/Confirm.svelte | 6 ++--
src/lib/components/ContentSearch.svelte | 2 +-
src/lib/components/DateTimeInput.svelte | 4 +--
src/lib/components/Dialog.svelte | 4 +--
src/lib/components/Divider.svelte | 2 +-
src/lib/components/Drawer.svelte | 2 +-
src/lib/components/EmojiButton.svelte | 4 +--
src/lib/components/EmojiPicker.svelte | 2 +-
src/lib/components/Field.svelte | 2 +-
src/lib/components/FieldInline.svelte | 2 +-
src/lib/components/Icon.svelte | 14 ++++----
src/lib/components/InputPicture.svelte | 12 +++----
src/lib/components/Link.svelte | 25 ++++++++++-----
src/lib/components/LongPress.svelte | 2 +-
src/lib/components/ModalFooter.svelte | 2 +-
src/lib/components/ModalHeader.svelte | 2 +-
src/lib/components/Page.svelte | 2 +-
src/lib/components/PageBar.svelte | 2 +-
src/lib/components/PageHeader.svelte | 2 +-
src/lib/components/Popover.svelte | 2 +-
src/lib/components/PrimaryNavItem.svelte | 16 +++++++---
src/lib/components/SearchSelect.svelte | 13 +++++---
src/lib/components/SecondaryNav.svelte | 2 +-
src/lib/components/SecondaryNavHeader.svelte | 2 +-
src/lib/components/SecondaryNavItem.svelte | 8 ++---
src/lib/components/SecondaryNavSection.svelte | 2 +-
src/lib/components/Spinner.svelte | 2 +-
src/lib/components/Tippy.svelte | 2 +-
src/lib/components/WotScore.svelte | 10 +++---
src/routes/+layout.svelte | 4 +--
src/routes/chat/+layout.svelte | 6 ++--
src/routes/chat/+page.svelte | 8 ++---
src/routes/discover/+page.svelte | 2 +-
src/routes/home/+page.svelte | 4 +--
src/routes/people/+page.svelte | 2 +-
src/routes/settings/+layout.svelte | 4 +--
src/routes/settings/+page.svelte | 2 +-
src/routes/settings/about/+page.svelte | 2 +-
src/routes/settings/profile/+page.svelte | 8 ++---
src/routes/settings/relays/+page.svelte | 12 +++----
src/routes/spaces/+layout.svelte | 2 +-
src/routes/spaces/[relay]/+layout.svelte | 2 +-
src/routes/spaces/[relay]/+page.svelte | 6 ++--
src/routes/spaces/[relay]/[room]/+page.svelte | 8 ++---
.../spaces/[relay]/calendar/+page.svelte | 4 +--
.../spaces/[relay]/threads/+page.svelte | 4 +--
.../spaces/[relay]/threads/[id]/+page.svelte | 14 ++++----
150 files changed, 424 insertions(+), 392 deletions(-)
diff --git a/src/app/components/AppContainer.svelte b/src/app/components/AppContainer.svelte
index 10c690be..1add074d 100644
--- a/src/app/components/AppContainer.svelte
+++ b/src/app/components/AppContainer.svelte
@@ -14,7 +14,7 @@
children: Snippet
}
- let {children}: Props = $props()
+ const {children}: Props = $props()
if (BURROW_URL && !$pubkey) {
if ($page.url.pathname === "/confirm-email") {
diff --git a/src/app/components/ChannelCompose.svelte b/src/app/components/ChannelCompose.svelte
index c2b49660..23c914da 100644
--- a/src/app/components/ChannelCompose.svelte
+++ b/src/app/components/ChannelCompose.svelte
@@ -14,7 +14,7 @@
content?: string
}
- let {onSubmit, content = ""}: Props = $props()
+ const {onSubmit, content = ""}: Props = $props()
export const focus = () => $editor.chain().focus().run()
@@ -47,7 +47,7 @@
data-tip="Add an image"
class="center tooltip tooltip-right h-10 w-10 min-w-10 rounded-box bg-base-300 transition-colors hover:bg-base-200"
disabled={$uploading}
- on:click={uploadFiles}>
+ onclick={uploadFiles}>
{#if $uploading}
{:else}
@@ -61,7 +61,7 @@
data-tip="{window.navigator.platform.includes('Mac') ? 'cmd' : 'ctrl'}+enter to send"
class="center tooltip tooltip-left absolute right-4 h-10 w-10 min-w-10 rounded-full"
disabled={$uploading}
- on:click={submit}>
+ onclick={submit}>
diff --git a/src/app/components/ChannelComposeParent.svelte b/src/app/components/ChannelComposeParent.svelte
index f727bc4a..85337c35 100644
--- a/src/app/components/ChannelComposeParent.svelte
+++ b/src/app/components/ChannelComposeParent.svelte
@@ -11,7 +11,7 @@
clear: () => void
}
- let {event, clear}: Props = $props()
+ const {event, clear}: Props = $props()
{/key}
-
+
diff --git a/src/app/components/ChannelMessage.svelte b/src/app/components/ChannelMessage.svelte
index deea5412..01fa7e77 100644
--- a/src/app/components/ChannelMessage.svelte
+++ b/src/app/components/ChannelMessage.svelte
@@ -38,7 +38,7 @@
inert?: boolean
}
- let {url, room, event, replyTo = undefined, showPubkey = false, inert = false}: Props = $props()
+ const {url, room, event, replyTo = undefined, showPubkey = false, inert = false}: Props = $props()
const thunk = $thunks[event.id]
const today = formatTimestampAsDate(now())
@@ -69,7 +69,7 @@
class="group relative flex w-full cursor-default flex-col p-2 pb-3 text-left">
{#if showPubkey}
-
+
{:else}
@@ -78,7 +78,7 @@
{#if showPubkey}
-
+
{$profileDisplay}
@@ -108,7 +108,7 @@
onclick={stopPropagation(bubble("click"))}>
{#if replyTo}
-
+
{/if}
diff --git a/src/app/components/ChannelMessageEmojiButton.svelte b/src/app/components/ChannelMessageEmojiButton.svelte
index e5af475b..a72ca182 100644
--- a/src/app/components/ChannelMessageEmojiButton.svelte
+++ b/src/app/components/ChannelMessageEmojiButton.svelte
@@ -5,7 +5,7 @@
import Icon from "@lib/components/Icon.svelte"
import {publishReaction} from "@app/commands"
- let {url, room, event} = $props()
+ const {url, room, event} = $props()
// Tell svelte-check to shut up
noop(room)
diff --git a/src/app/components/ChannelMessageMenu.svelte b/src/app/components/ChannelMessageMenu.svelte
index 99b492d4..d224c9ef 100644
--- a/src/app/components/ChannelMessageMenu.svelte
+++ b/src/app/components/ChannelMessageMenu.svelte
@@ -7,7 +7,7 @@
import ConfirmDelete from "@app/components/ConfirmDelete.svelte"
import {pushModal} from "@app/modal"
- let {url, event, onClick} = $props()
+ const {url, event, onClick} = $props()
const report = () => {
onClick()
@@ -27,21 +27,21 @@
-
+
Message Details
{#if event.pubkey === $pubkey}
-
+
Delete Message
{:else}
-
+
Report Content
diff --git a/src/app/components/ChannelMessageMenuButton.svelte b/src/app/components/ChannelMessageMenuButton.svelte
index 6fe3262c..033b7498 100644
--- a/src/app/components/ChannelMessageMenuButton.svelte
+++ b/src/app/components/ChannelMessageMenuButton.svelte
@@ -6,7 +6,7 @@
import Tippy from "@lib/components/Tippy.svelte"
import ChannelMessageMenu from "@app/components/ChannelMessageMenu.svelte"
- let {url, event} = $props()
+ const {url, event} = $props()
const open = () => popover?.show()
@@ -28,7 +28,7 @@
-
+
{
history.back()
@@ -29,20 +29,20 @@
-
+
Send Reaction
-
+
Send Reply
-
+
Message Details
{#if event.pubkey === $pubkey}
-
+
Delete Message
diff --git a/src/app/components/ChannelName.svelte b/src/app/components/ChannelName.svelte
index ae0de0d0..5199bb73 100644
--- a/src/app/components/ChannelName.svelte
+++ b/src/app/components/ChannelName.svelte
@@ -1,7 +1,7 @@
{#if room === GENERAL}
diff --git a/src/app/components/Chat.svelte b/src/app/components/Chat.svelte
index 16a952cb..373532f5 100644
--- a/src/app/components/Chat.svelte
+++ b/src/app/components/Chat.svelte
@@ -1,12 +1,3 @@
-
-
-
+
Start chat
-
+
Mark all read
diff --git a/src/app/components/ChatMessage.svelte b/src/app/components/ChatMessage.svelte
index eeb58302..c81deb1a 100644
--- a/src/app/components/ChatMessage.svelte
+++ b/src/app/components/ChatMessage.svelte
@@ -32,7 +32,7 @@
showPubkey?: boolean
}
- let {event, replyTo = undefined, pubkeys, showPubkey = false}: Props = $props()
+ const {event, replyTo = undefined, pubkeys, showPubkey = false}: Props = $props()
const thunk = $thunks[event.id]
const isOwn = event.pubkey === $pubkey
@@ -101,16 +101,13 @@
{#if showPubkey}
{#if !isOwn}
-
+
-
+
{$profileDisplay}
diff --git a/src/app/components/ChatMessageEmojiButton.svelte b/src/app/components/ChatMessageEmojiButton.svelte
index 7dedc63c..8530da03 100644
--- a/src/app/components/ChatMessageEmojiButton.svelte
+++ b/src/app/components/ChatMessageEmojiButton.svelte
@@ -10,7 +10,7 @@
pubkeys: string[]
}
- let {event, pubkeys}: Props = $props()
+ const {event, pubkeys}: Props = $props()
const onEmoji = (emoji: NativeEmoji) =>
sendWrapped({template: makeReaction({event, content: emoji.unicode}), pubkeys})
diff --git a/src/app/components/ChatMessageMenu.svelte b/src/app/components/ChatMessageMenu.svelte
index 24106aff..2059c53f 100644
--- a/src/app/components/ChatMessageMenu.svelte
+++ b/src/app/components/ChatMessageMenu.svelte
@@ -5,7 +5,7 @@
import EventInfo from "@app/components/EventInfo.svelte"
import {pushModal} from "@app/modal"
- let {event, pubkeys, popover, replyTo} = $props()
+ const {event, pubkeys, popover, replyTo} = $props()
const reply = () => replyTo(event)
@@ -18,11 +18,11 @@
{#if replyTo}
-
+
{/if}
-
+
diff --git a/src/app/components/ChatMessageMenuMobile.svelte b/src/app/components/ChatMessageMenuMobile.svelte
index 7b4fa9dc..33e635f7 100644
--- a/src/app/components/ChatMessageMenuMobile.svelte
+++ b/src/app/components/ChatMessageMenuMobile.svelte
@@ -8,7 +8,7 @@
import {pushModal} from "@app/modal"
import {clip} from "@app/toast"
- let {event, pubkeys} = $props()
+ const {event, pubkeys} = $props()
const onEmoji = (emoji: NativeEmoji) => {
history.back()
@@ -26,15 +26,15 @@
-
+
Send Reaction
-
+
Copy Text
-
+
Message Details
diff --git a/src/app/components/ChatStart.svelte b/src/app/components/ChatStart.svelte
index 57803ed8..773ad5f2 100644
--- a/src/app/components/ChatStart.svelte
+++ b/src/app/components/ChatStart.svelte
@@ -35,7 +35,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/ConfirmDelete.svelte b/src/app/components/ConfirmDelete.svelte
index c13bf6cd..3ca22a92 100644
--- a/src/app/components/ConfirmDelete.svelte
+++ b/src/app/components/ConfirmDelete.svelte
@@ -3,7 +3,7 @@
import {publishDelete} from "@app/commands"
import {clearModals} from "@app/modal"
- let {url, event} = $props()
+ const {url, event} = $props()
const confirm = async () => {
await publishDelete({event, relays: [url]})
diff --git a/src/app/components/Content.svelte b/src/app/components/Content.svelte
index b5ab60ce..f0db98b9 100644
--- a/src/app/components/Content.svelte
+++ b/src/app/components/Content.svelte
@@ -2,6 +2,7 @@
import Content from "./Content.svelte"
import {preventDefault, stopPropagation} from "svelte/legacy"
+ import type {TrustedEvent} from "@welshman/util"
import {fromNostrURI} from "@welshman/util"
import {nthEq} from "@welshman/lib"
import {
@@ -102,7 +103,7 @@
$userSettingValues.hide_sensitive && event.tags.find(nthEq(0, "content-warning"))?.[1],
)
- let shortContent = $derived(
+ const shortContent = $derived(
showEntire
? fullContent
: truncate(fullContent, {
@@ -112,9 +113,9 @@
}),
)
- let hasEllipsis = $derived(shortContent.some(isEllipsis))
- let expandInline = $derived(hasEllipsis && expandMode === "inline")
- let expandBlock = $derived(hasEllipsis && expandMode === "block")
+ const hasEllipsis = $derived(shortContent.some(isEllipsis))
+ const expandInline = $derived(hasEllipsis && expandMode === "inline")
+ const expandBlock = $derived(hasEllipsis && expandMode === "block")
@@ -123,7 +124,7 @@
This note has been flagged by the author as "{warning}".
- Show anyway
+ Show anyway
{:else}
@@ -151,8 +152,8 @@
{:else if isEvent(parsed) || isAddress(parsed)}
{#if isBlock(i)}
-
- {#snippet noteContent({event})}
+
+ {#snippet noteContent({event}: {event: TrustedEvent})}
{/snippet}
diff --git a/src/app/components/ContentCode.svelte b/src/app/components/ContentCode.svelte
index 1b4447d7..8c9674b4 100644
--- a/src/app/components/ContentCode.svelte
+++ b/src/app/components/ContentCode.svelte
@@ -1,5 +1,5 @@
history.back()
-
+
diff --git a/src/app/components/ContentLinkInline.svelte b/src/app/components/ContentLinkInline.svelte
index 5f01f980..d4d4e739 100644
--- a/src/app/components/ContentLinkInline.svelte
+++ b/src/app/components/ContentLinkInline.svelte
@@ -7,7 +7,7 @@
import ContentLinkDetail from "@app/components/ContentLinkDetail.svelte"
import {pushModal} from "@app/modal"
- let {value} = $props()
+ const {value} = $props()
const url = value.url.toString()
diff --git a/src/app/components/ContentMention.svelte b/src/app/components/ContentMention.svelte
index 29fcaf6b..84c8e203 100644
--- a/src/app/components/ContentMention.svelte
+++ b/src/app/components/ContentMention.svelte
@@ -5,13 +5,13 @@
import ProfileDetail from "@app/components/ProfileDetail.svelte"
import {pushModal} from "@app/modal"
- let {value} = $props()
+ const {value} = $props()
const profile = deriveProfile(value.pubkey)
const openProfile = () => pushModal(ProfileDetail, {pubkey: value.pubkey})
-
+
@{displayProfile($profile)}
diff --git a/src/app/components/ContentNewline.svelte b/src/app/components/ContentNewline.svelte
index c6b839b3..67da4cf6 100644
--- a/src/app/components/ContentNewline.svelte
+++ b/src/app/components/ContentNewline.svelte
@@ -1,5 +1,5 @@
{#each value as _}
diff --git a/src/app/components/ContentQuote.svelte b/src/app/components/ContentQuote.svelte
index 10a01d06..07afde28 100644
--- a/src/app/components/ContentQuote.svelte
+++ b/src/app/components/ContentQuote.svelte
@@ -10,7 +10,7 @@
import {deriveEvent, entityLink, ROOM} from "@app/state"
import {makeThreadPath, makeRoomPath} from "@app/routes"
- let props = ({value, event, depth = 0, relays = [], minimal = false, ...restProps} = $props())
+ const {value, event, noteContent, relays = [], minimal = false} = $props()
const {id, identifier, kind, pubkey, relays: relayHints = []} = value
const idOrAddress = id || new Address(kind, pubkey, identifier).toString()
@@ -56,7 +56,7 @@
return Boolean(event)
}
- const onClick = (e: Event) => {
+ const onclick = () => {
if ($quote) {
if ($quote.kind === DIRECT_MESSAGE) {
return scrollToEvent($quote.id)
@@ -93,10 +93,10 @@
}
-
+
{#if $quote}
- {@render noteContent({event: $quote, depth})}
+ {@render noteContent({event: $quote})}
{:else}
diff --git a/src/app/components/ContentToken.svelte b/src/app/components/ContentToken.svelte
index f1b0317d..2217ede4 100644
--- a/src/app/components/ContentToken.svelte
+++ b/src/app/components/ContentToken.svelte
@@ -3,12 +3,12 @@
import Button from "@lib/components/Button.svelte"
import {clip} from "@app/toast"
- let {value} = $props()
+ const {value} = $props()
const copy = () => clip(value)
-
+
{value.slice(0, 16)}...
diff --git a/src/app/components/ContentTopic.svelte b/src/app/components/ContentTopic.svelte
index 4509b41e..8f12a467 100644
--- a/src/app/components/ContentTopic.svelte
+++ b/src/app/components/ContentTopic.svelte
@@ -1,5 +1,5 @@
diff --git a/src/app/components/EmailConfirm.svelte b/src/app/components/EmailConfirm.svelte
index dae20077..a989182d 100644
--- a/src/app/components/EmailConfirm.svelte
+++ b/src/app/components/EmailConfirm.svelte
@@ -7,7 +7,7 @@
import {pushModal} from "@app/modal"
import {BURROW_URL} from "@app/state"
- let {email, confirm_token} = $props()
+ const {email, confirm_token} = $props()
const login = () => {
pushModal(LogInPassword, {email}, {path: "/"})
@@ -48,5 +48,5 @@
{/if}
- Continue to Login
+ Continue to Login
diff --git a/src/app/components/EventCreate.svelte b/src/app/components/EventCreate.svelte
index cca74347..48c961a6 100644
--- a/src/app/components/EventCreate.svelte
+++ b/src/app/components/EventCreate.svelte
@@ -16,7 +16,7 @@
import {makeEditor} from "@app/editor"
import {pushToast} from "@app/toast"
- let {url} = $props()
+ const {url} = $props()
const uploading = writable(false)
@@ -95,7 +95,7 @@
$editor.chain().selectFiles().run()}>
+ onclick={() => $editor.chain().selectFiles().run()}>
{#if $uploading}
{:else}
@@ -131,7 +131,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/EventInfo.svelte b/src/app/components/EventInfo.svelte
index a1f355eb..f142cb77 100644
--- a/src/app/components/EventInfo.svelte
+++ b/src/app/components/EventInfo.svelte
@@ -7,7 +7,7 @@
import ModalHeader from "@lib/components/ModalHeader.svelte"
import {clip} from "@app/toast"
- let {event} = $props()
+ const {event} = $props()
const relays = ctx.app.router.Event(event).getUrls()
const nevent1 = nip19.neventEncode({...event, relays})
@@ -35,7 +35,7 @@
-
+
@@ -49,7 +49,7 @@
-
+
@@ -58,10 +58,10 @@
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/EventItem.svelte b/src/app/components/EventItem.svelte
index 397bd4e0..c37fb30e 100644
--- a/src/app/components/EventItem.svelte
+++ b/src/app/components/EventItem.svelte
@@ -3,14 +3,14 @@
import {formatTimestamp, formatTimestampAsDate, formatTimestampAsTime} from "@welshman/app"
import Icon from "@lib/components/Icon.svelte"
- let {event} = $props()
+ const {event} = $props()
- let meta = $derived(fromPairs(event.tags) as Record)
- let end = $derived(parseInt(meta.end))
- let start = $derived(parseInt(meta.start))
- let startDateDisplay = $derived(formatTimestampAsDate(start))
- let endDateDisplay = $derived(formatTimestampAsDate(end))
- let isSingleDay = $derived(startDateDisplay === endDateDisplay)
+ const meta = $derived(fromPairs(event.tags) as Record)
+ const end = $derived(parseInt(meta.end))
+ const start = $derived(parseInt(meta.start))
+ const startDateDisplay = $derived(formatTimestampAsDate(start))
+ const endDateDisplay = $derived(formatTimestampAsDate(end))
+ const isSingleDay = $derived(startDateDisplay === endDateDisplay)
diff --git a/src/app/components/EventReport.svelte b/src/app/components/EventReport.svelte
index a2a1813f..ce5069c2 100644
--- a/src/app/components/EventReport.svelte
+++ b/src/app/components/EventReport.svelte
@@ -10,7 +10,7 @@
import {pushToast} from "@app/toast"
import {publishReport} from "@app/commands"
- let {url, event} = $props()
+ const {url, event} = $props()
const back = () => history.back()
@@ -78,7 +78,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/EventReportDetails.svelte b/src/app/components/EventReportDetails.svelte
index 67fb82e7..0708bf17 100644
--- a/src/app/components/EventReportDetails.svelte
+++ b/src/app/components/EventReportDetails.svelte
@@ -8,7 +8,7 @@
import Profile from "@app/components/Profile.svelte"
import {publishDelete} from "@app/commands"
- let {url, event} = $props()
+ const {url, event} = $props()
const reports = deriveEvents(repository, {
filters: [{kinds: [REPORT], "#e": [event.id]}],
@@ -46,7 +46,7 @@
Reported this event as "{reason}"
{#if report.pubkey === $pubkey}
- Delete Report
+ Delete Report
{/if}
{#if report.content}
@@ -54,5 +54,5 @@
{/if}
{/each}
- Got it
+ Got it
diff --git a/src/app/components/InfoBunker.svelte b/src/app/components/InfoBunker.svelte
index 8fe253e6..b5163022 100644
--- a/src/app/components/InfoBunker.svelte
+++ b/src/app/components/InfoBunker.svelte
@@ -35,5 +35,5 @@
href="https://nostrapps.com#signers">nostrapps.com.
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/InfoHandle.svelte b/src/app/components/InfoHandle.svelte
index 8da8a6b8..3136125f 100644
--- a/src/app/components/InfoHandle.svelte
+++ b/src/app/components/InfoHandle.svelte
@@ -25,5 +25,5 @@
class="underline">nostr.how.
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/InfoKeys.svelte b/src/app/components/InfoKeys.svelte
index 7c869300..611554f7 100644
--- a/src/app/components/InfoKeys.svelte
+++ b/src/app/components/InfoKeys.svelte
@@ -38,16 +38,16 @@
If you'd like to switch to self-custody, please click below to get started.
-
+
Go back
-
+
I want to hold my own keys
{:else}
-
Got it
+
Got it
{/if}
diff --git a/src/app/components/InfoNostr.svelte b/src/app/components/InfoNostr.svelte
index a236225a..274e201f 100644
--- a/src/app/components/InfoNostr.svelte
+++ b/src/app/components/InfoNostr.svelte
@@ -26,5 +26,5 @@
To learn more about how to manage your keys, or to set up an account, try
nosta.me.
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/InfoRelay.svelte b/src/app/components/InfoRelay.svelte
index 1f4b5929..fd6d9c20 100644
--- a/src/app/components/InfoRelay.svelte
+++ b/src/app/components/InfoRelay.svelte
@@ -22,5 +22,5 @@
Different relays have different policies for access control and content retention. Be sure to
double check that you have access to the relays you try to use by visiting their website.
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/Landing.svelte b/src/app/components/Landing.svelte
index 79ec0b70..74d08882 100644
--- a/src/app/components/Landing.svelte
+++ b/src/app/components/Landing.svelte
@@ -20,7 +20,7 @@
Welcome to {PLATFORM_NAME}!
The chat app built for self-hosted communities.
-
+
{#snippet icon()}
@@ -33,7 +33,7 @@
{/snippet}
-
+
{#snippet icon()}
diff --git a/src/app/components/LogIn.svelte b/src/app/components/LogIn.svelte
index 2f2ba76b..dae42e36 100644
--- a/src/app/components/LogIn.svelte
+++ b/src/app/components/LogIn.svelte
@@ -73,7 +73,7 @@
let signers: any[] = $state([])
let loading: string | undefined = $state()
- let hasSigner = $derived(getNip07() || signers.length > 0)
+ const hasSigner = $derived(getNip07() || signers.length > 0)
onMount(async () => {
if (Capacitor.isNativePlatform()) {
@@ -86,11 +86,11 @@
Log in with Nostr
{PLATFORM_NAME} is built using the
- pushModal(InfoNostr)}>nostr protocol , which allows
+ pushModal(InfoNostr)}>nostr protocol , which allows
you to own your social identity.
{#if getNip07()}
-
+
{#if loading === "nip07"}
{:else}
@@ -100,7 +100,7 @@
{/if}
{#each signers as app}
- loginWithNip55(app)}>
+ loginWithNip55(app)}>
{#if loading === "nip55"}
{:else}
@@ -110,7 +110,7 @@
{/each}
{#if BURROW_URL && !hasSigner}
-
+
{#if loading === "password"}
{:else}
@@ -120,14 +120,14 @@
{/if}
Log in with Remote Signer
{#if BURROW_URL && hasSigner}
-
+
{#if loading === "password"}
{:else}
@@ -139,7 +139,7 @@
{#if !hasSigner || !BURROW_URL}
@@ -148,6 +148,6 @@
{/if}
Need an account?
- Register instead
+ Register instead
diff --git a/src/app/components/LogInBunker.svelte b/src/app/components/LogInBunker.svelte
index 09070ea1..b849f0b2 100644
--- a/src/app/components/LogInBunker.svelte
+++ b/src/app/components/LogInBunker.svelte
@@ -28,7 +28,7 @@
const back = () => history.back()
const onSubmit = async () => {
- const {signerPubkey, connectSecret, relays} = Nip46Broker.parseBunkerUrl(input)
+ const {signerPubkey, connectSecret, relays} = Nip46Broker.parseBunkerUrl(bunker)
if (loading) {
return
@@ -62,12 +62,12 @@
}
let url = $state("")
- let input = $state("")
+ let bunker = $state("")
let loading = $state(false)
run(() => {
// For testing and for play store reviewers
- if (input === "reviewkey") {
+ if (bunker === "reviewkey") {
const secret = makeSecret()
addSession({method: "nip01", secret, pubkey: getPubkey(secret)})
@@ -144,22 +144,22 @@
{#snippet input()}
-
+
{/snippet}
{#snippet info()}
A login link provided by a nostr signing app.
- pushModal(InfoBunker)}>What is a bunker link?
+ pushModal(InfoBunker)}>What is a bunker link?
{/snippet}
-
+
Go back
-
+
Next
diff --git a/src/app/components/LogInPassword.svelte b/src/app/components/LogInPassword.svelte
index 170bbc00..203468ef 100644
--- a/src/app/components/LogInPassword.svelte
+++ b/src/app/components/LogInPassword.svelte
@@ -139,11 +139,11 @@
Your email and password only work to log in to {PLATFORM_NAME}. To use your key on other nostr
- applications, visit your settings page. Forgot your password?
-
+
Go back
diff --git a/src/app/components/LogOut.svelte b/src/app/components/LogOut.svelte
index f3c27497..83c38dae 100644
--- a/src/app/components/LogOut.svelte
+++ b/src/app/components/LogOut.svelte
@@ -32,7 +32,7 @@
Your local database will be cleared.
-
+
Go back
diff --git a/src/app/components/MenuSettings.svelte b/src/app/components/MenuSettings.svelte
index 79bd6b84..6db07ee5 100644
--- a/src/app/components/MenuSettings.svelte
+++ b/src/app/components/MenuSettings.svelte
@@ -63,7 +63,7 @@
{/snippet}
-
+
Log Out
diff --git a/src/app/components/MenuSpace.svelte b/src/app/components/MenuSpace.svelte
index a4fd5926..e2bfc51a 100644
--- a/src/app/components/MenuSpace.svelte
+++ b/src/app/components/MenuSpace.svelte
@@ -26,7 +26,7 @@
import {pushModal} from "@app/modal"
import {makeSpacePath} from "@app/routes"
- let {url} = $props()
+ const {url} = $props()
const threadsPath = makeSpacePath(url, "threads")
const userRooms = deriveUserRooms(url)
@@ -59,7 +59,7 @@
let replaceState = false
let element: Element | undefined = $state()
- let members = $derived(
+ const members = $derived(
$memberships.filter(l => hasMembershipUrl(l, url)).map(l => l.event.pubkey),
)
@@ -72,7 +72,7 @@
-
+
{displayRelayUrl(url)}
@@ -82,25 +82,25 @@
transition:fly
class="menu absolute z-popover mt-2 w-full rounded-box bg-base-100 p-2 shadow-xl">
-
+
View Members ({members.length})
-
+
Create Invite
{#if $userRoomsByUrl.has(url)}
-
+
Leave Space
{:else}
-
+
Join Space
@@ -135,7 +135,7 @@
{#each $otherRooms as room, i (room)}
{/each}
-
+
Create room
diff --git a/src/app/components/MenuSpaceButton.svelte b/src/app/components/MenuSpaceButton.svelte
index 62dd8648..5ad73872 100644
--- a/src/app/components/MenuSpaceButton.svelte
+++ b/src/app/components/MenuSpaceButton.svelte
@@ -6,14 +6,14 @@
import {makeSpacePath} from "@app/routes"
import {pushDrawer} from "@app/modal"
- let {url} = $props()
+ const {url} = $props()
const path = makeSpacePath(url)
const openMenu = () => pushDrawer(MenuSpace, {url})
-
+
{#if $notifications.has(path)}
diff --git a/src/app/components/MenuSpaceRoomItem.svelte b/src/app/components/MenuSpaceRoomItem.svelte
index f199e4f1..d286eb2c 100644
--- a/src/app/components/MenuSpaceRoomItem.svelte
+++ b/src/app/components/MenuSpaceRoomItem.svelte
@@ -12,7 +12,7 @@
notify?: boolean
}
- let {url, room, notify = false}: Props = $props()
+ const {url, room, notify = false}: Props = $props()
const path = makeRoomPath(url, room)
const channel = deriveChannel(url, room)
diff --git a/src/app/components/MenuSpaces.svelte b/src/app/components/MenuSpaces.svelte
index ce3e9f38..3275c13a 100644
--- a/src/app/components/MenuSpaces.svelte
+++ b/src/app/components/MenuSpaces.svelte
@@ -22,7 +22,7 @@
{/if}
{#if !PLATFORM_RELAY}
-
+
{#snippet icon()}
diff --git a/src/app/components/MenuSpacesItem.svelte b/src/app/components/MenuSpacesItem.svelte
index d64f5897..08bf2e88 100644
--- a/src/app/components/MenuSpacesItem.svelte
+++ b/src/app/components/MenuSpacesItem.svelte
@@ -7,7 +7,7 @@
import {makeSpacePath} from "@app/routes"
import {notifications} from "@app/notifications"
- let {url} = $props()
+ const {url} = $props()
const path = makeSpacePath(url)
diff --git a/src/app/components/ModalContainer.svelte b/src/app/components/ModalContainer.svelte
index c3d48225..070f1282 100644
--- a/src/app/components/ModalContainer.svelte
+++ b/src/app/components/ModalContainer.svelte
@@ -1,6 +1,4 @@
@@ -36,7 +44,7 @@
You have muted this person.
- Show anyway
+ Show anyway
{:else}
diff --git a/src/app/components/NoteItem.svelte b/src/app/components/NoteItem.svelte
index 9150fb3f..4bc96c4a 100644
--- a/src/app/components/NoteItem.svelte
+++ b/src/app/components/NoteItem.svelte
@@ -9,7 +9,7 @@
import ReactionSummary from "@app/components/ReactionSummary.svelte"
import {publishDelete, publishReaction} from "@app/commands"
- let {url, event} = $props()
+ const {url, event} = $props()
const onReactionClick = (content: string, events: TrustedEvent[]) => {
const reaction = events.find(e => e.pubkey === $pubkey)
diff --git a/src/app/components/PasswordReset.svelte b/src/app/components/PasswordReset.svelte
index 7e8b1d0d..a1fa6633 100644
--- a/src/app/components/PasswordReset.svelte
+++ b/src/app/components/PasswordReset.svelte
@@ -12,7 +12,7 @@
import {pushToast} from "@app/toast"
import {BURROW_URL} from "@app/state"
- let {email, reset_token} = $props()
+ const {email, reset_token} = $props()
const onSubmit = async () => {
loading = true
diff --git a/src/app/components/PasswordResetRequest.svelte b/src/app/components/PasswordResetRequest.svelte
index 650f0d65..b739855a 100644
--- a/src/app/components/PasswordResetRequest.svelte
+++ b/src/app/components/PasswordResetRequest.svelte
@@ -65,7 +65,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/PeopleItem.svelte b/src/app/components/PeopleItem.svelte
index bed820d7..8d06176a 100644
--- a/src/app/components/PeopleItem.svelte
+++ b/src/app/components/PeopleItem.svelte
@@ -10,7 +10,7 @@
import ProfileInfo from "@app/components/ProfileInfo.svelte"
import {makeChatPath} from "@app/routes"
- let {pubkey} = $props()
+ const {pubkey} = $props()
const filters: Filter[] = [{authors: [pubkey], limit: 1}]
const events = deriveEvents(repository, {filters})
diff --git a/src/app/components/PrimaryNav.svelte b/src/app/components/PrimaryNav.svelte
index 372895f3..1402a407 100644
--- a/src/app/components/PrimaryNav.svelte
+++ b/src/app/components/PrimaryNav.svelte
@@ -18,7 +18,7 @@
children?: import("svelte").Snippet
}
- let {children}: Props = $props()
+ const {children}: Props = $props()
const addSpace = () => pushModal(SpaceAdd)
@@ -28,9 +28,9 @@
const openChat = () => ($canDecrypt ? goto("/chat") : pushModal(ChatEnable, {next: "/chat"}))
- let spaceUrls = $derived(Array.from($userRoomsByUrl.keys()))
- let spacePaths = $derived(spaceUrls.map(url => makeSpacePath(url)))
- let anySpaceNotifications = $derived(
+ const spaceUrls = $derived(Array.from($userRoomsByUrl.keys()))
+ const spacePaths = $derived(spaceUrls.map(url => makeSpacePath(url)))
+ const anySpaceNotifications = $derived(
spacePaths.some(path => !$page.url.pathname.startsWith(path) && $notifications.has(path)),
)
@@ -48,7 +48,7 @@
{#each spaceUrls as url (url)}
{/each}
-
+
{/if}
@@ -63,7 +63,7 @@
@@ -88,15 +88,15 @@
-
+
-
+
diff --git a/src/app/components/PrimaryNavItemSpace.svelte b/src/app/components/PrimaryNavItemSpace.svelte
index 71c70895..5d7ed5ca 100644
--- a/src/app/components/PrimaryNavItemSpace.svelte
+++ b/src/app/components/PrimaryNavItemSpace.svelte
@@ -5,7 +5,7 @@
import {makeSpacePath} from "@app/routes"
import {notifications} from "@app/notifications"
- let {url} = $props()
+ const {url} = $props()
const path = makeSpacePath(url)
diff --git a/src/app/components/Profile.svelte b/src/app/components/Profile.svelte
index 25f8b8f2..0cf29363 100644
--- a/src/app/components/Profile.svelte
+++ b/src/app/components/Profile.svelte
@@ -15,7 +15,7 @@
import ProfileDetail from "@app/components/ProfileDetail.svelte"
import {pushModal} from "@app/modal"
- let {pubkey} = $props()
+ const {pubkey} = $props()
const profile = deriveProfile(pubkey)
const profileDisplay = deriveProfileDisplay(pubkey)
@@ -24,18 +24,18 @@
const openProfile = () => pushModal(ProfileDetail, {pubkey})
- let following = $derived(
+ const following = $derived(
pubkey === $session!.pubkey || getPubkeyTagValues(getListTags($userFollows)).includes(pubkey),
)
-
+
-
+
{$profileDisplay}
diff --git a/src/app/components/ProfileCircle.svelte b/src/app/components/ProfileCircle.svelte
index 19f902b8..db463e36 100644
--- a/src/app/components/ProfileCircle.svelte
+++ b/src/app/components/ProfileCircle.svelte
@@ -2,7 +2,7 @@
import {deriveProfile} from "@welshman/app"
import Avatar from "@lib/components/Avatar.svelte"
- let {...props} = $props()
+ const {...props} = $props()
const profile = deriveProfile(props.pubkey)
diff --git a/src/app/components/ProfileCircles.svelte b/src/app/components/ProfileCircles.svelte
index 9ff313d6..e687195a 100644
--- a/src/app/components/ProfileCircles.svelte
+++ b/src/app/components/ProfileCircles.svelte
@@ -1,7 +1,7 @@
diff --git a/src/app/components/ProfileDetail.svelte b/src/app/components/ProfileDetail.svelte
index a1c71984..74a6f790 100644
--- a/src/app/components/ProfileDetail.svelte
+++ b/src/app/components/ProfileDetail.svelte
@@ -22,7 +22,7 @@
import {pushModal} from "@app/modal"
import {makeChatPath} from "@app/routes"
- let {pubkey} = $props()
+ const {pubkey} = $props()
const profile = deriveProfile(pubkey)
const profileDisplay = deriveProfileDisplay(pubkey)
@@ -35,7 +35,7 @@
const openChat = () => ($canDecrypt ? goto(chatPath) : pushModal(ChatEnable, {next: chatPath}))
- let following = $derived(
+ const following = $derived(
pubkey === $session!.pubkey || getPubkeyTagValues(getListTags($userFollows)).includes(pubkey),
)
@@ -59,7 +59,7 @@
-
+
Go back
@@ -68,7 +68,7 @@
See Complete Profile
-
+
Open Chat
diff --git a/src/app/components/ProfileEdit.svelte b/src/app/components/ProfileEdit.svelte
index 40dcc568..9af78fd8 100644
--- a/src/app/components/ProfileEdit.svelte
+++ b/src/app/components/ProfileEdit.svelte
@@ -71,13 +71,12 @@
{/snippet}
{#snippet info()}
- pushModal(InfoHandle)}
- >What is a nostr address?
+ pushModal(InfoHandle)}>What is a nostr address?
{/snippet}
- Discard Changes
+ Discard Changes
Save Changes
diff --git a/src/app/components/ProfileEject.svelte b/src/app/components/ProfileEject.svelte
index 9a1b815b..e646bdd1 100644
--- a/src/app/components/ProfileEject.svelte
+++ b/src/app/components/ProfileEject.svelte
@@ -89,17 +89,17 @@
{/if}
-
+
Go back
{#if success}
-
+
Refresh the page
{:else}
-
+
I understand, send me my private key
diff --git a/src/app/components/ProfileInfo.svelte b/src/app/components/ProfileInfo.svelte
index 23f2f3b2..393329e0 100644
--- a/src/app/components/ProfileInfo.svelte
+++ b/src/app/components/ProfileInfo.svelte
@@ -2,7 +2,7 @@
import {deriveProfile} from "@welshman/app"
import Content from "@app/components/Content.svelte"
- let {pubkey} = $props()
+ const {pubkey} = $props()
const profile = deriveProfile(pubkey)
diff --git a/src/app/components/ProfileList.svelte b/src/app/components/ProfileList.svelte
index e394e725..4129d47a 100644
--- a/src/app/components/ProfileList.svelte
+++ b/src/app/components/ProfileList.svelte
@@ -9,13 +9,13 @@
pubkeys: any
}
- let {title, subtitle = "", pubkeys}: Props = $props()
+ const {subtitle = "", pubkeys, ...restProps}: Props = $props()
{#snippet title()}
- {title}
+ {restProps.title}
{/snippet}
{#snippet info()}
{subtitle}
@@ -26,5 +26,5 @@
{/each}
- history.back()}>Got it
+ history.back()}>Got it
diff --git a/src/app/components/ProfileMultiSelect.svelte b/src/app/components/ProfileMultiSelect.svelte
index 36d3159f..43431ae2 100644
--- a/src/app/components/ProfileMultiSelect.svelte
+++ b/src/app/components/ProfileMultiSelect.svelte
@@ -1,5 +1,4 @@
diff --git a/src/app/components/QRCode.svelte b/src/app/components/QRCode.svelte
index 49d31f84..fc9abd5c 100644
--- a/src/app/components/QRCode.svelte
+++ b/src/app/components/QRCode.svelte
@@ -4,7 +4,7 @@
import Button from "@lib/components/Button.svelte"
import {clip} from "@app/toast"
- let {code} = $props()
+ const {code} = $props()
let canvas: Element | undefined = $state()
let wrapper: Element | undefined = $state()
@@ -26,7 +26,7 @@
})
-
+
pushModal(EventReportDetails, {url, event})
- let reportReasons = $derived(uniq($reports.map(e => getTag("e", e.tags)?.[2])))
+ const reportReasons = $derived(uniq($reports.map(e => getTag("e", e.tags)?.[2])))
- let groupedReactions = $derived(
+ const groupedReactions = $derived(
groupBy(
e => e.content,
uniqBy(e => e.pubkey + e.content, $reactions),
diff --git a/src/app/components/RelayAdd.svelte b/src/app/components/RelayAdd.svelte
index 23ef2f5d..69a06e8f 100644
--- a/src/app/components/RelayAdd.svelte
+++ b/src/app/components/RelayAdd.svelte
@@ -14,13 +14,13 @@
addRelay: (url: string) => void
}
- let {relays, addRelay}: Props = $props()
+ const {relays, addRelay}: Props = $props()
let term = $state("")
let limit = $state(20)
let element: Element | undefined = $state()
- let customUrl = $derived(tryCatch(() => normalizeRelayUrl(term)))
+ const customUrl = $derived(tryCatch(() => normalizeRelayUrl(term)))
onMount(() => {
const scroller = createScroller({
@@ -44,7 +44,7 @@
{#if customUrl && isShareableRelayUrl(customUrl) && !$relays.includes(normalizeRelayUrl(customUrl))}
- addRelay(customUrl)}>
+ addRelay(customUrl)}>
Add Relay
@@ -55,7 +55,7 @@
.filter(url => !$relays.includes(url))
.slice(0, limit) as url (url)}
- addRelay(url)}>
+ addRelay(url)}>
Add Relay
diff --git a/src/app/components/RelayDescription.svelte b/src/app/components/RelayDescription.svelte
index de1d7b5a..e6bc19e1 100644
--- a/src/app/components/RelayDescription.svelte
+++ b/src/app/components/RelayDescription.svelte
@@ -1,7 +1,7 @@
diff --git a/src/app/components/RelayItem.svelte b/src/app/components/RelayItem.svelte
index 2653d178..307f71e6 100644
--- a/src/app/components/RelayItem.svelte
+++ b/src/app/components/RelayItem.svelte
@@ -5,11 +5,11 @@
import {displayRelayUrl} from "@welshman/util"
import {deriveRelay} from "@welshman/app"
- let {url, children} = $props()
+ const {url, children} = $props()
const relay = deriveRelay(url)
- let connections = $derived($relay?.stats?.open_count || 0)
+ const connections = $derived($relay?.stats?.open_count || 0)
diff --git a/src/app/components/RelayName.svelte b/src/app/components/RelayName.svelte
index 178989ab..560a881f 100644
--- a/src/app/components/RelayName.svelte
+++ b/src/app/components/RelayName.svelte
@@ -1,7 +1,7 @@
diff --git a/src/app/components/RoomCreate.svelte b/src/app/components/RoomCreate.svelte
index b9176d40..d7b8b024 100644
--- a/src/app/components/RoomCreate.svelte
+++ b/src/app/components/RoomCreate.svelte
@@ -16,7 +16,7 @@
import {makeSpacePath} from "@app/routes"
import {pushToast} from "@app/toast"
- let {url} = $props()
+ const {url} = $props()
const room = randomId()
const relay = deriveRelay(url)
@@ -85,7 +85,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/SignUp.svelte b/src/app/components/SignUp.svelte
index 96e0f03d..d983cc10 100644
--- a/src/app/components/SignUp.svelte
+++ b/src/app/components/SignUp.svelte
@@ -54,7 +54,7 @@
Sign up with Nostr
{PLATFORM_NAME} is built using the
- pushModal(InfoNostr)}>nostr protocol , which allows
+ pushModal(InfoNostr)}>nostr protocol , which allows
you to own your social identity.
{#if BURROW_URL}
@@ -97,6 +97,6 @@
Already have an account?
- Log in instead
+ Log in instead
diff --git a/src/app/components/SignUpSuccess.svelte b/src/app/components/SignUpSuccess.svelte
index b418da87..0ef1639e 100644
--- a/src/app/components/SignUpSuccess.svelte
+++ b/src/app/components/SignUpSuccess.svelte
@@ -3,7 +3,7 @@
import LogInPassword from "@app/components/LogInPassword.svelte"
import {pushModal} from "@app/modal"
- let {email} = $props()
+ const {email} = $props()
const login = () => pushModal(LogInPassword)
@@ -14,5 +14,5 @@
A confirmation email has been sent to {email}.
Once you've confirmed your account you'll be redirected to the login page.
- Back to Login
+ Back to Login
diff --git a/src/app/components/SpaceAdd.svelte b/src/app/components/SpaceAdd.svelte
index 6e16920e..cc1c8938 100644
--- a/src/app/components/SpaceAdd.svelte
+++ b/src/app/components/SpaceAdd.svelte
@@ -35,7 +35,7 @@
{/snippet}
-
+
{#snippet icon()}
@@ -48,7 +48,7 @@
{/snippet}
-
+
{#snippet icon()}
diff --git a/src/app/components/SpaceAuthError.svelte b/src/app/components/SpaceAuthError.svelte
index 49bcbbac..67b09110 100644
--- a/src/app/components/SpaceAuthError.svelte
+++ b/src/app/components/SpaceAuthError.svelte
@@ -12,7 +12,7 @@
import {clearModals} from "@app/modal"
import {attemptRelayAccess} from "@app/commands"
- let {url, error} = $props()
+ const {url, error} = $props()
const back = () => history.back()
@@ -75,7 +75,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/SpaceAvatar.svelte b/src/app/components/SpaceAvatar.svelte
index 8acb2d01..f9608930 100644
--- a/src/app/components/SpaceAvatar.svelte
+++ b/src/app/components/SpaceAvatar.svelte
@@ -7,7 +7,7 @@
url?: string
}
- let {url = ""}: Props = $props()
+ const {url = ""}: Props = $props()
const relay = deriveRelay(url)
diff --git a/src/app/components/SpaceCheck.svelte b/src/app/components/SpaceCheck.svelte
index a50bb237..8908ae2c 100644
--- a/src/app/components/SpaceCheck.svelte
+++ b/src/app/components/SpaceCheck.svelte
@@ -15,7 +15,7 @@
import {makeSpacePath} from "@app/routes"
import {pushModal} from "@app/modal"
- let {url} = $props()
+ const {url} = $props()
const back = () => history.back()
@@ -71,7 +71,7 @@
{/if}
-
+
Go back
diff --git a/src/app/components/SpaceCreate.svelte b/src/app/components/SpaceCreate.svelte
index a285b715..6c4ab993 100644
--- a/src/app/components/SpaceCreate.svelte
+++ b/src/app/components/SpaceCreate.svelte
@@ -56,12 +56,12 @@
{#snippet info()}
This can be any nostr relay where you'd like to host your space.
- pushModal(InfoRelay)}>What is a relay?
+ pushModal(InfoRelay)}>What is a relay?
{/snippet}
-
+
Go back
diff --git a/src/app/components/SpaceCreateExternal.svelte b/src/app/components/SpaceCreateExternal.svelte
index c74f4158..6abd882c 100644
--- a/src/app/components/SpaceCreateExternal.svelte
+++ b/src/app/components/SpaceCreateExternal.svelte
@@ -37,7 +37,7 @@
Once you've created a relay of your own, come back here to link {PLATFORM_NAME} with your new relay.
-
+
Go back
diff --git a/src/app/components/SpaceExit.svelte b/src/app/components/SpaceExit.svelte
index 98dd0bd6..8b2d9d9f 100644
--- a/src/app/components/SpaceExit.svelte
+++ b/src/app/components/SpaceExit.svelte
@@ -10,7 +10,7 @@
import ModalFooter from "@lib/components/ModalFooter.svelte"
import {removeSpaceMembership} from "@app/commands"
- let {url} = $props()
+ const {url} = $props()
const back = () => history.back()
@@ -39,7 +39,7 @@
Are you sure you want to leave?
-
+
Go back
diff --git a/src/app/components/SpaceInvite.svelte b/src/app/components/SpaceInvite.svelte
index 46f5975b..f3fbe402 100644
--- a/src/app/components/SpaceInvite.svelte
+++ b/src/app/components/SpaceInvite.svelte
@@ -12,7 +12,7 @@
import ModalFooter from "@lib/components/ModalFooter.svelte"
import {clip} from "@app/toast"
- let {url} = $props()
+ const {url} = $props()
const back = () => history.back()
@@ -62,7 +62,7 @@
-
+
@@ -81,6 +81,6 @@
{/if}
- Done
+ Done
diff --git a/src/app/components/SpaceInviteAccept.svelte b/src/app/components/SpaceInviteAccept.svelte
index f9fa0bbd..122c484b 100644
--- a/src/app/components/SpaceInviteAccept.svelte
+++ b/src/app/components/SpaceInviteAccept.svelte
@@ -64,7 +64,7 @@
let url = $state("")
let loading = $state(false)
- let linkIsValid = $derived(
+ const linkIsValid = $derived(
Boolean(tryCatch(() => isRelayUrl(normalizeRelayUrl(url.split("|")[0])))),
)
@@ -91,12 +91,12 @@
{#snippet info()}
You can also directly join any relay by entering its URL here.
- pushModal(InfoRelay)}>What is a relay?
+ pushModal(InfoRelay)}>What is a relay?
{/snippet}
-
+
Go back
diff --git a/src/app/components/SpaceJoin.svelte b/src/app/components/SpaceJoin.svelte
index 874728c0..0223cdbb 100644
--- a/src/app/components/SpaceJoin.svelte
+++ b/src/app/components/SpaceJoin.svelte
@@ -10,7 +10,7 @@
import {clearModals} from "@app/modal"
import {addSpaceMembership} from "@app/commands"
- let {url} = $props()
+ const {url} = $props()
const back = () => history.back()
@@ -45,7 +45,7 @@
{/snippet}
-
+
Go back
diff --git a/src/app/components/ThreadActions.svelte b/src/app/components/ThreadActions.svelte
index 0052b453..0278ab93 100644
--- a/src/app/components/ThreadActions.svelte
+++ b/src/app/components/ThreadActions.svelte
@@ -24,7 +24,7 @@
showActivity?: boolean
}
- let {url, event, showActivity = false}: Props = $props()
+ const {url, event, showActivity = false}: Props = $props()
const thunk = $thunks[event.id]
const deleted = deriveIsDeleted(repository, event)
@@ -51,7 +51,7 @@
let popover: Instance | undefined = $state()
- let lastActive = $derived(max([...$replies, event].map(e => e.created_at)))
+ const lastActive = $derived(max([...$replies, event].map(e => e.created_at)))
onMount(() => {
load({relays: [url], filters})
@@ -87,7 +87,7 @@
component={ThreadMenu}
props={{url, event, onClick: hidePopover}}
params={{trigger: "manual", interactive: true}}>
-
+
diff --git a/src/app/components/ThreadCreate.svelte b/src/app/components/ThreadCreate.svelte
index 9eedcdac..624d7be0 100644
--- a/src/app/components/ThreadCreate.svelte
+++ b/src/app/components/ThreadCreate.svelte
@@ -15,7 +15,7 @@
import {GENERAL, tagRoom, PROTECTED} from "@app/state"
import {makeEditor} from "@app/editor"
- let {url} = $props()
+ const {url} = $props()
const uploading = writable(false)
@@ -99,7 +99,7 @@
+ onclick={$editor.commands.selectFiles}>
{#if $uploading}
{:else}
@@ -108,7 +108,7 @@
-
+
Go back
diff --git a/src/app/components/ThreadItem.svelte b/src/app/components/ThreadItem.svelte
index 1a75476e..69cff1d2 100644
--- a/src/app/components/ThreadItem.svelte
+++ b/src/app/components/ThreadItem.svelte
@@ -17,7 +17,7 @@
hideActions?: boolean
}
- let {url, event, hideActions = false}: Props = $props()
+ const {url, event, hideActions = false}: Props = $props()
const title = event.tags.find(nthEq(0, "title"))?.[1]
diff --git a/src/app/components/ThreadMenu.svelte b/src/app/components/ThreadMenu.svelte
index ec502c39..c3af3e84 100644
--- a/src/app/components/ThreadMenu.svelte
+++ b/src/app/components/ThreadMenu.svelte
@@ -9,7 +9,7 @@
import ConfirmDelete from "@app/components/ConfirmDelete.svelte"
import {pushModal} from "@app/modal"
- let {url, event, onClick} = $props()
+ const {url, event, onClick} = $props()
const isRoot = event.kind !== COMMENT
@@ -37,28 +37,28 @@
{#if isRoot}
-
+
Share to Chat
{/if}
-
+
Message Details
{#if event.pubkey === $pubkey}
-
+
Delete Message
{:else}
-
+
Report Content
diff --git a/src/app/components/ThreadReply.svelte b/src/app/components/ThreadReply.svelte
index 91fbaaac..d71473de 100644
--- a/src/app/components/ThreadReply.svelte
+++ b/src/app/components/ThreadReply.svelte
@@ -13,7 +13,7 @@
import {makeEditor} from "@app/editor"
import {pushToast} from "@app/toast"
- let {url, event, onClose, onSubmit} = $props()
+ const {url, event, onClose, onSubmit} = $props()
const uploading = writable(false)
@@ -48,7 +48,7 @@
+ onclick={$editor.commands.selectFiles}>
{#if $uploading}
{:else}
@@ -57,7 +57,7 @@
- Cancel
+ Cancel
Post Reply
diff --git a/src/app/components/ThreadShare.svelte b/src/app/components/ThreadShare.svelte
index 6693b40f..08c0c07f 100644
--- a/src/app/components/ThreadShare.svelte
+++ b/src/app/components/ThreadShare.svelte
@@ -14,7 +14,7 @@
import {makeRoomPath} from "@app/routes"
import {setKey} from "@app/implicit"
- let {url, event} = $props()
+ const {url, event} = $props()
const relays = ctx.app.router.Event(event).getUrls()
const nevent = nip19.neventEncode({id: event.id, relays})
@@ -55,7 +55,7 @@
{/each}
-
+
Go back
diff --git a/src/app/components/ThunkStatus.svelte b/src/app/components/ThunkStatus.svelte
index e787e7bc..b7183ca0 100644
--- a/src/app/components/ThunkStatus.svelte
+++ b/src/app/components/ThunkStatus.svelte
@@ -12,9 +12,10 @@
interface Props {
thunk: Thunk | MergedThunk
+ class?: string
}
- let {thunk} = $props()
+ let {thunk, ...restProps}: Props = $props()
const {Pending, Failure, Timeout} = PublishStatus
@@ -26,16 +27,18 @@
: publishThunk((thunk as Thunk).request)
}
- let isPending = Object.values(get(thunk.status)).some(s => s.status == Pending)
+ const status = throttled(300, thunk.status)
+ const ps = $derived(Object.values($status))
+ const canCancel = $derived(ps.length === 0 && $userSettingValues.send_delay > 0)
+ const isFailure = $derived(!canCancel && ps.every(s => [Failure, Timeout].includes(s.status)))
+ const failure = $derived(
+ Object.entries($status).find(([url, s]) => [Failure, Timeout].includes(s.status)),
+ )
- $: status = throttled(300, thunk.status)
- $: ps = Object.values($status)
- $: canCancel = ps.length === 0 && $userSettingValues.send_delay > 0
- $: isFailure = !canCancel && ps.every(s => [Failure, Timeout].includes(s.status))
- $: failure = Object.entries($status).find(([url, s]) => [Failure, Timeout].includes(s.status))
+ let isPending = $state(Object.values(get(thunk.status)).some(s => s.status == Pending))
// Delay updating isPending so users can see that the message is sent
- $: {
+ $effect(() => {
isPending = isPending || ps.some(s => s.status === Pending)
if (!ps.some(s => s.status === Pending)) {
@@ -43,14 +46,14 @@
isPending = false
}, 2000)
}
- }
+ })
{#if isFailure && failure}
{@const [url, {message, status}] = failure}
-
+
@@ -63,12 +66,12 @@
{:else if canCancel || isPending}
-
-
+
+
Sending...
{#if canCancel}
- Cancel
+ Cancel
{/if}
diff --git a/src/app/components/ThunkStatusDetail.svelte b/src/app/components/ThunkStatusDetail.svelte
index 4c76b95e..bf1d6479 100644
--- a/src/app/components/ThunkStatusDetail.svelte
+++ b/src/app/components/ThunkStatusDetail.svelte
@@ -29,5 +29,5 @@
Failed to publish to {displayRelayUrl(url)}: {message}.
- Retry
+ Retry
diff --git a/src/app/components/Toast.svelte b/src/app/components/Toast.svelte
index 15bc7e8e..655afc5d 100644
--- a/src/app/components/Toast.svelte
+++ b/src/app/components/Toast.svelte
@@ -16,7 +16,7 @@
class:text-base-content={theme === "info"}
class:alert-error={theme === "error"}>
{$toast.message}
-
popToast($toast.id)}>
+ popToast($toast.id)}>
diff --git a/src/app/editor/EditMention.svelte b/src/app/editor/EditMention.svelte
index fb0ec5c4..b7378d1a 100644
--- a/src/app/editor/EditMention.svelte
+++ b/src/app/editor/EditMention.svelte
@@ -8,7 +8,7 @@
selected: NodeViewProps["selected"]
}
- let {node, selected}: Props = $props()
+ const {node, selected}: Props = $props()
const display = deriveProfileDisplay(node.attrs.pubkey)
diff --git a/src/app/editor/ProfileSuggestion.svelte b/src/app/editor/ProfileSuggestion.svelte
index 7d44c21d..8aeae37a 100644
--- a/src/app/editor/ProfileSuggestion.svelte
+++ b/src/app/editor/ProfileSuggestion.svelte
@@ -10,14 +10,14 @@
import WotScore from "@lib/components/WotScore.svelte"
import ProfileCircle from "@app/components/ProfileCircle.svelte"
- let {value} = $props()
+ const {value} = $props()
const pubkey = value
const profileDisplay = deriveProfileDisplay(pubkey)
const handle = deriveHandleForPubkey(pubkey)
const score = deriveUserWotScore(pubkey)
- let following = $derived(getPubkeyTagValues(getListTags($userFollows)).includes(pubkey))
+ const following = $derived(getPubkeyTagValues(getListTags($userFollows)).includes(pubkey))
diff --git a/src/lib/components/Avatar.svelte b/src/lib/components/Avatar.svelte
index 3dd38af5..372e3e0a 100644
--- a/src/lib/components/Avatar.svelte
+++ b/src/lib/components/Avatar.svelte
@@ -2,7 +2,7 @@
import {onMount} from "svelte"
import Icon from "@lib/components/Icon.svelte"
- let {src = "", size = 7, icon = "user-rounded", style = "", ...restProps} = $props()
+ const {src = "", size = 7, icon = "user-rounded", style = "", ...restProps} = $props()
let element: HTMLElement
diff --git a/src/lib/components/Button.svelte b/src/lib/components/Button.svelte
index 65588b9e..c031ff8f 100644
--- a/src/lib/components/Button.svelte
+++ b/src/lib/components/Button.svelte
@@ -1,19 +1,37 @@
{#if type === "submit"}
-
+ {@render children?.()}
{:else}
-
-
+
+ {@render children?.()}
{/if}
diff --git a/src/lib/components/CardButton.svelte b/src/lib/components/CardButton.svelte
index acaae6f2..fbde8cd1 100644
--- a/src/lib/components/CardButton.svelte
+++ b/src/lib/components/CardButton.svelte
@@ -7,7 +7,7 @@
[key: string]: any
}
- let {...props}: Props = $props()
+ const {...props}: Props = $props()
diff --git a/src/lib/components/Collapse.svelte b/src/lib/components/Collapse.svelte
index b2d8c99e..017fa60d 100644
--- a/src/lib/components/Collapse.svelte
+++ b/src/lib/components/Collapse.svelte
@@ -8,7 +8,7 @@
[key: string]: any
}
- let {...props}: Props = $props()
+ const {...props}: Props = $props()
const toggle = () => {
isOpen = !isOpen
diff --git a/src/lib/components/Confirm.svelte b/src/lib/components/Confirm.svelte
index 2a907a2d..84fa70b0 100644
--- a/src/lib/components/Confirm.svelte
+++ b/src/lib/components/Confirm.svelte
@@ -14,7 +14,7 @@
confirm: any
}
- let {title = "Are you sure?", subtitle = "", message, confirm}: Props = $props()
+ const {subtitle = "", message, confirm, ...restProps}: Props = $props()
let loading = $state(false)
@@ -34,7 +34,7 @@