diff --git a/CHANGELOG.md b/CHANGELOG.md
index a946160a..55da49a9 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,8 @@
- [x] Add search by nip05
- [x] Fix feed to show more variety
+- [x] Beautify notes
+- [x] Add uploads to replies
## 0.2.15
diff --git a/ROADMAP.md b/ROADMAP.md
index 8e9fe43e..f345e580 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -1,6 +1,5 @@
# Current
-- [ ] Strip zero width spaces from compose
- [ ] Fix iOS/safari/firefox
- [ ] Add dynamic title tag
- [ ] Show more link on long notes (rather than just an ellipsis)
diff --git a/src/partials/ImageInput.svelte b/src/partials/ImageInput.svelte
index 24b0e42d..6072e011 100644
--- a/src/partials/ImageInput.svelte
+++ b/src/partials/ImageInput.svelte
@@ -61,9 +61,13 @@
{/if}
- { isOpen = true }}>
-
-
+
diff --git a/src/views/notes/Note.svelte b/src/views/notes/Note.svelte
index a9b18bdb..e752d40c 100644
--- a/src/views/notes/Note.svelte
+++ b/src/views/notes/Note.svelte
@@ -13,6 +13,7 @@
import {formatTimestamp, now, tryJson, stringToColor, formatSats, fetchJson} from 'src/util/misc'
import {extractUrls, copyToClipboard} from "src/util/html"
import ImageCircle from 'src/partials/ImageCircle.svelte'
+ import ImageInput from 'src/partials/ImageInput.svelte'
import Input from 'src/partials/Input.svelte'
import Textarea from 'src/partials/Textarea.svelte'
import Content from 'src/partials/Content.svelte'
@@ -46,6 +47,7 @@
without([user.getPubkey()], uniq(Tags.from(note).type("p").values().all().concat(note.pubkey)))
let zap = null
+ let image = null
let reply = null
let replyMentions = getDefaultReplyMentions()
let replyContainer = null
@@ -197,6 +199,10 @@
const sendReply = async () => {
let {content, mentions, topics} = reply.parse()
+ if (image) {
+ content = (content + '\n' + image).trim()
+ }
+
if (content) {
mentions = uniq(mentions.concat(replyMentions))
@@ -389,16 +395,16 @@
{/if}
-
e.stopPropagation()}>
+
-
+
{$repliesCount}
@@ -406,16 +412,17 @@
class={cx("fa fa-bolt cursor-pointer", {
'pointer-events-none opacity-50': !canZap,
})}
- on:click={startZap} />
+ on:click|stopPropagation={startZap} />
{formatSats($zapsTotal)}
-
{ showRelays = true }}>
+ class="cursor-pointer flex gap-1 items-center"
+ on:click|stopPropagation={() => { showRelays = true }}>
{#if reply}
-
-
+
+
- {#if replyMentions.length > 0}
-
-
-
+ {#if image}
+
+ {/if}
+
+
+
{#each replyMentions as p}
-
+
removeMention(p)} />
{displayPerson(database.getPersonWithFallback(p))}
+ {:else}
+
No mentions
{/each}
- {/if}
{/if}
diff --git a/src/views/notes/NoteCreate.svelte b/src/views/notes/NoteCreate.svelte
index b50b3531..bf4e4ea3 100644
--- a/src/views/notes/NoteCreate.svelte
+++ b/src/views/notes/NoteCreate.svelte
@@ -45,7 +45,7 @@
let {content, mentions, topics} = input.parse()
if (image) {
- content += '\n' + image
+ content = (content + '\n' + image).trim()
}
if (content) {
diff --git a/src/views/notes/NoteDetail.svelte b/src/views/notes/NoteDetail.svelte
index 993f05d3..d1cfae27 100644
--- a/src/views/notes/NoteDetail.svelte
+++ b/src/views/notes/NoteDetail.svelte
@@ -56,7 +56,7 @@
{:else if note.pubkey}
-
+
{/if}