From 48a45f3a3a64bee8f7175f12b45b3e9dfc500ae0 Mon Sep 17 00:00:00 2001
From: Jon Staab
Date: Tue, 28 Jan 2025 14:44:43 -0800
Subject: [PATCH] Add media server settings
---
CHANGELOG.md | 1 +
src/app/components/ContentLinkBlock.svelte | 2 +-
src/lib/components/SearchSelect.svelte | 4 ++--
src/routes/settings/+page.svelte | 19 +++++++++++++++++++
src/routes/spaces/[relay]/[room]/+page.svelte | 9 +++++++--
5 files changed, 30 insertions(+), 5 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index aa979b5e..31dadfbb 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,7 @@
* Fix @-mentions
* Replace nsec.app signup with njump.me
* Add new messages button in rooms
+* Add media server settings
# 0.2.5
diff --git a/src/app/components/ContentLinkBlock.svelte b/src/app/components/ContentLinkBlock.svelte
index 0d40a135..855d330e 100644
--- a/src/app/components/ContentLinkBlock.svelte
+++ b/src/app/components/ContentLinkBlock.svelte
@@ -30,7 +30,7 @@
{:else if url.match(/\.(jpe?g|png|gif|webp)$/)}
{:else}
{#await loadPreview()}
diff --git a/src/lib/components/SearchSelect.svelte b/src/lib/components/SearchSelect.svelte
index bcaa51c3..4c0c41d7 100644
--- a/src/lib/components/SearchSelect.svelte
+++ b/src/lib/components/SearchSelect.svelte
@@ -9,7 +9,7 @@
import Tippy from "@lib/components/Tippy.svelte"
export let value: string
- export let options: string[]
+ export let options: string[] = []
export let allowCreate = false
let input: Element
@@ -20,7 +20,7 @@
createSearch(options, {
getValue: identity,
fuseOptions: {keys: [""]},
- }),
+ }).searchValues,
)
const select = (newValue: string) => {
diff --git a/src/routes/settings/+page.svelte b/src/routes/settings/+page.svelte
index decf62ca..842a5b79 100644
--- a/src/routes/settings/+page.svelte
+++ b/src/routes/settings/+page.svelte
@@ -4,6 +4,7 @@
import {pubkey, signer, userMutes, tagPubkey, publishThunk} from "@welshman/app"
import Field from "@lib/components/Field.svelte"
import FieldInline from "@lib/components/FieldInline.svelte"
+ import Icon from "@lib/components/Icon.svelte"
import Button from "@lib/components/Button.svelte"
import ProfileMultiSelect from "@app/components/ProfileMultiSelect.svelte"
import {pushToast} from "@app/toast"
@@ -79,6 +80,24 @@
{settings.send_delay === 1000 ? "second" : "seconds"}.
+
+ Media Server
+
+
+
+
+ Choose a media server type and url for files you upload to flotilla.
+
diff --git a/src/routes/spaces/[relay]/[room]/+page.svelte b/src/routes/spaces/[relay]/[room]/+page.svelte
index 71917e7c..e0258440 100644
--- a/src/routes/spaces/[relay]/[room]/+page.svelte
+++ b/src/routes/spaces/[relay]/[room]/+page.svelte
@@ -5,7 +5,7 @@
import {now} from "@welshman/lib"
import type {TrustedEvent, EventContent} from "@welshman/util"
import {createEvent, MESSAGE, DELETE, REACTION} from "@welshman/util"
- import {formatTimestampAsDate, publishThunk, deriveRelay, repository} from "@welshman/app"
+ import {formatTimestampAsDate, pubkey, publishThunk, deriveRelay, repository} from "@welshman/app"
import {slide, fade, fly} from "@lib/transition"
import Icon from "@lib/components/Icon.svelte"
import Button from "@lib/components/Button.svelte"
@@ -142,7 +142,12 @@
const date = formatTimestampAsDate(created_at)
- if (!newMessagesSeen && lastChecked && created_at > lastChecked) {
+ if (
+ !newMessagesSeen &&
+ event.pubkey !== $pubkey &&
+ lastChecked &&
+ created_at > lastChecked
+ ) {
elements.push({type: "new-messages", id: "new-messages"})
newMessagesSeen = true
}