fix: ensure we are loading events properly during fsdb scan

fix: various styling issues on smaller screens
fix: map z-index
This commit is contained in:
Andy Burke 2026-02-24 15:54:56 -08:00
parent 873773bc91
commit 2d12104875
10 changed files with 126 additions and 38 deletions

View file

@ -73,18 +73,18 @@
padding: 0;
}
.user-tock.time-tock:has(+ .user-tock.time-tick),
.user-tock.time-tick:has(+ .user-tock.time-tock),
.user-tick.time-tock:has(+ .user-tick.time-tick),
.user-tick.time-tick:has(+ .user-tick.time-tock),
.user-tock.time-tock:has(+ .user-tick.time-tick),
.user-tock.time-tick:has(+ .user-tick.time-tock),
.user-tick.time-tock:has(+ .user-tock.time-tick),
.user-tick.time-tick:has(+ .user-tock.time-tock),
.user-tock.time-tock:last-of-type,
.user-tock.time-tick:last-of-type,
.user-tick.time-tock:last-of-type,
.user-tick.time-tick:last-of-type {
#chat-container .user-tock.time-tock:has(+ .user-tock.time-tick),
#chat-container .user-tock.time-tick:has(+ .user-tock.time-tock),
#chat-container .user-tick.time-tock:has(+ .user-tick.time-tick),
#chat-container .user-tick.time-tick:has(+ .user-tick.time-tock),
#chat-container .user-tock.time-tock:has(+ .user-tick.time-tick),
#chat-container .user-tock.time-tick:has(+ .user-tick.time-tock),
#chat-container .user-tick.time-tock:has(+ .user-tock.time-tick),
#chat-container .user-tick.time-tick:has(+ .user-tock.time-tock),
#chat-container .user-tock.time-tock:last-of-type,
#chat-container .user-tock.time-tick:last-of-type,
#chat-container .user-tick.time-tock:last-of-type,
#chat-container .user-tick.time-tick:last-of-type {
/* border: 1px dotted red; */
margin-bottom: 1rem !important;
padding-bottom: 0.25rem !important;
@ -92,31 +92,31 @@
margin-top: 0.5rem !important;
}
.user-tock.time-tock:has(+ .user-tock.time-tock),
.user-tock.time-tick:has(+ .user-tock.time-tick),
.user-tick.time-tock:has(+ .user-tick.time-tock),
.user-tick.time-tick:has(+ .user-tick.time-tick) {
#chat-container .user-tock.time-tock:has(+ .user-tock.time-tock),
#chat-container .user-tock.time-tick:has(+ .user-tock.time-tick),
#chat-container .user-tick.time-tock:has(+ .user-tick.time-tock),
#chat-container .user-tick.time-tick:has(+ .user-tick.time-tick) {
/* border: 1px dotted blue; */
margin-bottom: -0.75rem !important;
padding-top: 0 !important;
}
.user-tock.time-tock+.user-tock.time-tick:has(+ .user-tock.time-tick),
.user-tock.time-tick+.user-tock.time-tock:has(+ .user-tock.time-tock),
.user-tick.time-tock+.user-tick.time-tick:has(+ .user-tick.time-tick),
.user-tick.time-tick+.user-tick.time-tock:has(+ .user-tick.time-tock),
.user-tock.time-tock+.user-tick.time-tick:has(+ .user-tick.time-tick),
.user-tock.time-tick+.user-tick.time-tock:has(+ .user-tick.time-tock),
.user-tick.time-tock+.user-tock.time-tick:has(+ .user-tock.time-tick),
.user-tick.time-tick+.user-tock.time-tock:has(+ .user-tock.time-tock) {
#chat-container .user-tock.time-tock+.user-tock.time-tick:has(+ .user-tock.time-tick),
#chat-container .user-tock.time-tick+.user-tock.time-tock:has(+ .user-tock.time-tock),
#chat-container .user-tick.time-tock+.user-tick.time-tick:has(+ .user-tick.time-tick),
#chat-container .user-tick.time-tick+.user-tick.time-tock:has(+ .user-tick.time-tock),
#chat-container .user-tock.time-tock+.user-tick.time-tick:has(+ .user-tick.time-tick),
#chat-container .user-tock.time-tick+.user-tick.time-tock:has(+ .user-tick.time-tock),
#chat-container .user-tick.time-tock+.user-tock.time-tick:has(+ .user-tock.time-tick),
#chat-container .user-tick.time-tick+.user-tock.time-tock:has(+ .user-tock.time-tock) {
/* border: 1px dotted green; */
margin-bottom: -0.75rem !important;
}
#chat .message-container.user-tick.time-tick+.message-container.user-tick.time-tick .info-container,
#chat .message-container.user-tick.time-tock+.message-container.user-tick.time-tock .info-container,
#chat .message-container.user-tock.time-tick+.message-container.user-tock.time-tick .info-container,
#chat .message-container.user-tock.time-tock+.message-container.user-tock.time-tock .info-container {
#chat-container .message-container.user-tick.time-tick+.message-container.user-tick.time-tick .info-container,
#chat-container .message-container.user-tick.time-tock+.message-container.user-tick.time-tock .info-container,
#chat-container .message-container.user-tock.time-tick+.message-container.user-tock.time-tick .info-container,
#chat-container .message-container.user-tock.time-tock+.message-container.user-tock.time-tock .info-container {
opacity: 0;
visibility: hidden;
height: 0;
@ -170,7 +170,7 @@
display: none;
}
#chat .message-container .message-actions-container input[type="checkbox"]:checked~.message-action {
#chat-container .message-container .message-actions-container input[type="checkbox"]:checked~.message-action {
opacity: 1;
width: 3.25rem;
margin-right: 1.25rem;

View file

@ -14,6 +14,7 @@
"preview"
"title"
"info"
"reactions"
"content"
"newessay"
"replies";
@ -71,6 +72,10 @@
font-size: xx-large;
}
.essay-container .reactions-container {
grid-area: reactions;
}
.essay-container .content-container {
grid-area: content;
padding-left: 0.25rem;
@ -78,6 +83,10 @@
font-size: large;
}
.essay-container .content-container .html-from-markdown {
padding: 1em;
}
.essay-container button[commandfor="eventactionspopover"] {
position: absolute;
bottom: 0.25rem;
@ -189,11 +198,11 @@
<span class="short">${context.essay_datetime.short}</span>
</div>
</div>
<div class="reactions-container"></div>
<div class="title-container">${context.essay.data.title}</div>
<div class="content-container">
${htmlify(md_to_html(context.essay.data.essay))}
</div>
<div class="reactions-container"></div>
<button class="icon more" commandfor="eventactionspopover"></button>
</div>
</template>

View file

@ -11,6 +11,7 @@
grid-template-areas:
"expander preview info"
"expander preview subject"
". . reactions"
". . content"
". . newpost"
". . replies";
@ -111,6 +112,10 @@
margin-top: 2rem;
}
.post-container .reactions-container {
grid-area: reactions;
}
.post-container button[commandfor="eventactionspopover"] {
position: absolute;
bottom: 0.25rem;
@ -125,6 +130,35 @@
.post-container .replies-container {
grid-area: replies;
}
@media screen and (max-width: 480px) {
.post-container {
grid-template-rows: 120px auto auto auto 1fr;
grid-template-columns: auto 1fr;
grid-template-areas:
". preview"
"expander info"
"expander subject"
". reactions"
". content"
". newpost"
". replies";
max-height: 16rem;
}
.post-container .media-preview-container {
overflow: hidden;
display: grid;
align-content: center;
width: 100%;
height: 7rem;
}
.post-container .media-preview-container img {
object-fit: cover;
}
}
</style>
<input

View file

@ -26,6 +26,7 @@
left: 4em;
right: 4em;
bottom: 4em;
z-index: 0;
}
@media screen and (max-width: 640px) {

View file

@ -8,6 +8,7 @@
});
APP.on( 'load', () => {
console.log( 'loaded' );
const tab_switchers = document.querySelectorAll(".tabswitch");
for (const tab_switch of tab_switchers) {
tab_switch.addEventListener("input", (event) => {
@ -15,7 +16,7 @@
const view = tab_selector.dataset.view;
if (view) {
window.location.hash = `/${view}${ document.body.dataset.channel ? `/channel/${ document.body.dataset.channel }` : '' }`;
window.location.hash = `/${view}`;
}
});
}