diff --git a/src/app/note/note.html b/src/app/note/note.html
index 4607739..901a252 100644
--- a/src/app/note/note.html
+++ b/src/app/note/note.html
@@ -40,6 +40,16 @@
-->
+
+
-
diff --git a/src/app/services/event.ts b/src/app/services/event.ts
index 4de4abf..ad5a0f1 100644
--- a/src/app/services/event.ts
+++ b/src/app/services/event.ts
@@ -57,6 +57,20 @@ export class EventService {
return eTags;
}
+ parentEventId(event: NostrEventDocument | undefined) {
+ if (!event) {
+ return;
+ }
+
+ const eTags = event.tags.filter((t) => t[0] === 'e');
+
+ if (eTags.length == 0) {
+ return undefined;
+ }
+
+ return eTags[eTags.length - 1][1];
+ }
+
/** Returns the root event, first looks for "root" attribute on the e tag element or picks first in array. */
rootEventId(event: NostrEventDocument | null) {
if (!event) {
diff --git a/src/app/services/profile.ts b/src/app/services/profile.ts
index 8ee196c..ca76164 100644
--- a/src/app/services/profile.ts
+++ b/src/app/services/profile.ts
@@ -485,9 +485,6 @@ export class ProfileService {
existingProfile.followed = now;
existingProfile.circle = circle;
existingProfile.status = ProfileStatus.Follow;
-
- console.log('Created new empty profile: ', existingProfile);
-
existingProfile.npub = this.utilities.getNostrIdentifier(existingProfile.pubkey);
// Save directly, don't put in cache.
diff --git a/src/app/services/thread.ts b/src/app/services/thread.ts
index ddc5415..f0c6666 100644
--- a/src/app/services/thread.ts
+++ b/src/app/services/thread.ts
@@ -22,6 +22,10 @@ export class ThreadService {
#events: NostrEventDocument[] | undefined = [];
#eventsChanged: BehaviorSubject = new BehaviorSubject(this.#events);
+ above: NostrEventDocument | undefined = undefined;
+ #aboveChanged: BehaviorSubject = new BehaviorSubject(this.above);
+ above$ = this.#aboveChanged.asObservable();
+
hasLoaded = false;
get before$(): Observable {
@@ -146,6 +150,20 @@ export class ThreadService {
rootEventId = event.id!;
}
+ // Grab the immediate parent, which will be clickable.
+ const parentId = this.eventService.parentEventId(event);
+
+ this.above = undefined;
+ this.#aboveChanged.next(this.above);
+
+ // If not parent Id, it means user is looking at root so we don't need to load additional events.
+ if (parentId) {
+ this.dataService.downloadEvent(parentId).subscribe((event) => {
+ this.above = event;
+ this.#aboveChanged.next(this.above);
+ });
+ }
+
// this.feedService
// .downloadThread(rootEventId)
// // .pipe(