add kind 30023 to initial data

This commit is contained in:
Ren Amamiya
2023-05-07 11:13:46 +07:00
parent f46f4530a6
commit 730f3be016
4 changed files with 70 additions and 10 deletions

View File

@@ -4,6 +4,7 @@ import { READONLY_RELAYS } from '@lume/stores/constants';
import { dateToUnix, hoursAgo } from '@lume/utils/getDate';
import {
addToBlacklist,
countTotalLongNotes,
countTotalNotes,
createChat,
createNote,
@@ -28,19 +29,31 @@ export function Page() {
const account = await getActiveAccount();
const lastLogin = await getLastLogin();
const notes = await countTotalNotes();
const longNotes = await countTotalLongNotes();
const follows = nip02ToArray(JSON.parse(account.follows));
const query = [];
let since: number;
let sinceNotes: number;
let sinceLongNotes: number;
if (notes === 0) {
since = dateToUnix(hoursAgo(24, now.current));
sinceNotes = dateToUnix(hoursAgo(48, now.current));
} else {
if (parseInt(lastLogin) > 0) {
since = parseInt(lastLogin);
sinceNotes = parseInt(lastLogin);
} else {
since = dateToUnix(hoursAgo(24, now.current));
sinceNotes = dateToUnix(hoursAgo(48, now.current));
}
}
if (longNotes === 0) {
sinceLongNotes = 0;
} else {
if (parseInt(lastLogin) > 0) {
sinceLongNotes = parseInt(lastLogin);
} else {
sinceLongNotes = 0;
}
}
@@ -48,7 +61,7 @@ export function Page() {
query.push({
kinds: [1, 6],
authors: follows,
since: since,
since: sinceNotes,
until: dateToUnix(now.current),
});
@@ -68,6 +81,13 @@ export function Page() {
until: dateToUnix(now.current),
});
// kind 30023 (long post) query
query.push({
kinds: [30023],
since: sinceLongNotes,
until: dateToUnix(now.current),
});
// subscribe relays
unsubscribe = pool.subscribe(
query,
@@ -113,11 +133,27 @@ export function Page() {
if (event.tags[0][0] === 'e') {
addToBlacklist(account.id, event.tags[0][1], 43, 1);
}
break;
// mute user (channel only)
case 44:
if (event.tags[0][0] === 'p') {
addToBlacklist(account.id, event.tags[0][1], 44, 1);
}
break;
// long post
case 30023:
// insert event to local database
createNote(
event.id,
account.id,
event.pubkey,
event.kind,
event.tags,
event.content,
event.created_at,
''
);
break;
default:
break;
}