ssb: prettier.

This commit is contained in:
Cory McWilliams 2024-12-23 11:08:27 -05:00
parent 5051cecb84
commit eb6753afe1
3 changed files with 62 additions and 53 deletions

View File

@ -155,9 +155,15 @@ export async function picker(callback, anchor, author) {
<style>
${styles}
</style>
<div class="w3-modal" style="display: block; box-sizing: border-box; z-index: 10">
<div
class="w3-modal"
style="display: block; box-sizing: border-box; z-index: 10"
>
<div class="w3-modal-content w3-card-4">
<div class="w3-content w3-theme-d1" style="display: flex; flex-direction: column; max-height: 50vh">
<div
class="w3-content w3-theme-d1"
style="display: flex; flex-direction: column; max-height: 50vh"
>
<header class="w3-container" style="flex: 0 0">
<h1>Choose a Reaction</h1>
<span class="w3-button w3-display-topright" @click=${cleanup}

View File

@ -271,10 +271,13 @@ class TfElement extends LitElement {
}
async get_latest_private(following) {
let latest = (await tfrpc.rpc.query('SELECT MAX(rowid) AS latest FROM messages'))[0].latest;
let latest = (
await tfrpc.rpc.query('SELECT MAX(rowid) AS latest FROM messages')
)[0].latest;
const k_chunk_count = 256;
while (latest - k_chunk_count >= 0) {
let messages = await tfrpc.rpc.query(`
let messages = await tfrpc.rpc.query(
`
SELECT messages.rowid, messages.id, previous, author, sequence, timestamp, hash, json(content) AS content, signature
FROM messages
JOIN json_each(?1) AS following ON messages.author = following.value
@ -284,17 +287,14 @@ class TfElement extends LitElement {
json(messages.content) LIKE '"%'
ORDER BY sequence DESC
`,
[
JSON.stringify(following),
latest - k_chunk_count,
latest,
]);
messages = (await this.decrypt(messages)).filter(x => x.decrypted);
[JSON.stringify(following), latest - k_chunk_count, latest]
);
messages = (await this.decrypt(messages)).filter((x) => x.decrypted);
if (messages.length) {
return Math.max(...messages.map(x => x.rowid));
return Math.max(...messages.map((x) => x.rowid));
}
latest -= k_chunk_count;
};
}
return -1;
}
@ -331,8 +331,10 @@ class TfElement extends LitElement {
console.log('unread', this.channels_unread);
console.log('channels took', (new Date() - start_time) / 1000.0);
let self = this;
latest_private.then(function(latest) {
self.channels_latest = Object.assign({}, self.channels_latest, {'🔐': latest});
latest_private.then(function (latest) {
self.channels_latest = Object.assign({}, self.channels_latest, {
'🔐': latest,
});
console.log('private took', (new Date() - start_time) / 1000.0);
});
} finally {
@ -398,26 +400,28 @@ class TfElement extends LitElement {
async decrypt(messages) {
let whoami = this.whoami;
return Promise.all(messages.map(async function (message) {
let content;
try {
content = JSON.parse(message?.content);
} catch {}
if (typeof content === 'string') {
let decrypted;
return Promise.all(
messages.map(async function (message) {
let content;
try {
decrypted = await tfrpc.rpc.try_decrypt(whoami, content);
content = JSON.parse(message?.content);
} catch {}
if (decrypted) {
if (typeof content === 'string') {
let decrypted;
try {
message.decrypted = JSON.parse(decrypted);
} catch {
message.decrypted = decrypted;
decrypted = await tfrpc.rpc.try_decrypt(whoami, content);
} catch {}
if (decrypted) {
try {
message.decrypted = JSON.parse(decrypted);
} catch {
message.decrypted = decrypted;
}
}
}
}
return message;
}));
return message;
})
);
}
render_tab() {

View File

@ -199,30 +199,29 @@ class TfNewsElement extends LitElement {
return html`
<div>
${final_messages.map(
(x) =>
html`
<tf-message
.message=${x}
whoami=${this.whoami}
.users=${this.users}
.drafts=${this.drafts}
.expanded=${this.expanded}
collapsed="true"
channel=${this.channel}
channel_unread=${this.channel_unread}
></tf-message>
${x.rowid == unread_rowid && x != final_messages[0]
? html`<div style="display: flex; flex-direction: row">
<div
style="border-bottom: 1px solid #f00; flex: 1; align-self: center; height: 1px"
></div>
<div style="color: #f00; padding: 8px">unread</div>
<div
style="border-bottom: 1px solid #f00; flex: 1; align-self: center; height: 1px"
></div>
</div>`
: undefined}
`
(x) => html`
<tf-message
.message=${x}
whoami=${this.whoami}
.users=${this.users}
.drafts=${this.drafts}
.expanded=${this.expanded}
collapsed="true"
channel=${this.channel}
channel_unread=${this.channel_unread}
></tf-message>
${x.rowid == unread_rowid && x != final_messages[0]
? html`<div style="display: flex; flex-direction: row">
<div
style="border-bottom: 1px solid #f00; flex: 1; align-self: center; height: 1px"
></div>
<div style="color: #f00; padding: 8px">unread</div>
<div
style="border-bottom: 1px solid #f00; flex: 1; align-self: center; height: 1px"
></div>
</div>`
: undefined}
`
)}
</div>
`;