Partially fix replies
This commit is contained in:
parent
640179587c
commit
8b6a712a62
@ -52,6 +52,7 @@ class PostCache {
|
|||||||
const comments = [...await this.fetchCommentsByType(), ...await this.fetchCommentsByType("webmention")];
|
const comments = [...await this.fetchCommentsByType(), ...await this.fetchCommentsByType("webmention")];
|
||||||
|
|
||||||
comments.forEach(comment => {
|
comments.forEach(comment => {
|
||||||
|
console.log(comment.post);
|
||||||
if (this.posts[comment.post]) {
|
if (this.posts[comment.post]) {
|
||||||
this.posts[comment.post].comments[comment.id] = comment;
|
this.posts[comment.post].comments[comment.id] = comment;
|
||||||
}
|
}
|
||||||
@ -94,7 +95,7 @@ const mapComment = comment => ({
|
|||||||
url: comment.meta.semantic_linkbacks_author_url,
|
url: comment.meta.semantic_linkbacks_author_url,
|
||||||
},
|
},
|
||||||
content: comment.content.rendered,
|
content: comment.content.rendered,
|
||||||
canonical: comment.meta.semantic_linkbacks_canonical,
|
canonical: comment.meta.url,
|
||||||
date: comment.date,
|
date: comment.date,
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -102,20 +103,25 @@ const mapComment = comment => ({
|
|||||||
module.exports = async () => {
|
module.exports = async () => {
|
||||||
const cache = new PostCache();
|
const cache = new PostCache();
|
||||||
await cache.fetchLatest();
|
await cache.fetchLatest();
|
||||||
|
|
||||||
return Object.values(cache.posts)
|
const posts = Object.values(cache.posts)
|
||||||
.sort(dateSort)
|
.sort(dateSort)
|
||||||
.map(post => ({
|
.map(post => ({
|
||||||
...post,
|
...post,
|
||||||
comments: Object.values(post.comments)
|
comments: Object.values(post.comments)
|
||||||
.sort(dateSort)
|
.sort(dateSort)
|
||||||
.reduce((comments, comment) => {
|
.reduce((comments, comment) => {
|
||||||
if (!comments[comment.meta.semantic_linkbacks_type]) {
|
if (!comments[comment.type]) {
|
||||||
comments[comment.meta.semantic_linkbacks_type] = [];
|
comments[comment.type] = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
comments[comment.meta.semantic_linkbacks_type].push(mapComment(comment));
|
comments[comment.type].push(mapComment(comment));
|
||||||
return comments;
|
return comments;
|
||||||
}, { like: [], reply: [], repost: [] })
|
}, { like: [], reply: [], repost: [] })
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
||||||
|
console.log(cache.posts[24].comments);
|
||||||
|
console.log(posts.find(post => post.id === 24)?.comments);
|
||||||
|
return posts;
|
||||||
};
|
};
|
||||||
|
@ -30,6 +30,7 @@ eleventyComputed:
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if post.comments.repost | length %}
|
{% if post.comments.repost | length %}
|
||||||
<div class="stack-xs">
|
<div class="stack-xs">
|
||||||
<h3 class="block w-full">Reposts</h3>
|
<h3 class="block w-full">Reposts</h3>
|
||||||
@ -44,20 +45,18 @@ eleventyComputed:
|
|||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if post.comments.reply | length %}
|
{% if post.comments.comment | length %}
|
||||||
<div class="stack-xs">
|
<div class="stack-xs">
|
||||||
<h3 class="block w-full">Replies</h3>
|
<h3 class="block w-full">Replies</h3>
|
||||||
|
|
||||||
<ol class="stack-md">
|
<ol class="stack-md">
|
||||||
{% for reply in post.comments.reply | reverse %}
|
{% for reply in post.comments.comment | reverse %}
|
||||||
|
|
||||||
<li class="sidebar items-center">
|
<li class="sidebar items-center">
|
||||||
<a href="{{ like.author.url }}" class="self-start" rel="noreferrer" target="_blank">
|
|
||||||
<img src="{{ reply.author.avatars["96"] }}" alt="{{ reply.author.name }}" class="max-w-[4rem] box" />
|
|
||||||
</a>
|
|
||||||
<div class="stack-2xs basis-[50ch]">
|
<div class="stack-2xs basis-[50ch]">
|
||||||
{% set date = reply.date | parseDate %}
|
{% set date = reply.date | parseDate %}
|
||||||
<h4>{{ reply.author.name }} <span class="font-normal">on</span> {{ date | dateDisplay }} <span class="font-normal">at</span> {{ date | timeDisplay }}</h4>
|
<h4><a href="{{ reply.author.url }}" rel="noreferrer" target="_blank">{{ reply.author.name }}</a> <span class="font-normal">on</span> {{ date | dateDisplay }} <span class="font-normal">at</span> {{ date | timeDisplay }}</h4>
|
||||||
<a href="{{ reply.canonical }}" rel="noreferrer" target="_blank">Original comment</a>
|
<a href="{{ reply.canonical }}" rel="noreferrer" target="_blank">Original comment</a>
|
||||||
<p>{{ reply.content | safe }}</p>
|
<p>{{ reply.content | safe }}</p>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user