Merge remote-tracking branch 'origin/main' into nip05-request
This commit is contained in:
commit
4d0b869bd7
|
@ -14,7 +14,7 @@ import { lookupAccount } from '@/utils/lookup.ts';
|
||||||
import { renderAccounts, renderEventAccounts, renderStatuses } from '@/views.ts';
|
import { renderAccounts, renderEventAccounts, renderStatuses } from '@/views.ts';
|
||||||
import { accountFromPubkey, renderAccount } from '@/views/mastodon/accounts.ts';
|
import { accountFromPubkey, renderAccount } from '@/views/mastodon/accounts.ts';
|
||||||
import { renderRelationship } from '@/views/mastodon/relationships.ts';
|
import { renderRelationship } from '@/views/mastodon/relationships.ts';
|
||||||
import { renderStatus } from '@/views/mastodon/statuses.ts';
|
import { renderReblog, renderStatus } from '@/views/mastodon/statuses.ts';
|
||||||
import { hydrateEvents } from '@/storages/hydrate.ts';
|
import { hydrateEvents } from '@/storages/hydrate.ts';
|
||||||
import { bech32ToPubkey } from '@/utils.ts';
|
import { bech32ToPubkey } from '@/utils.ts';
|
||||||
import { addTag, deleteTag, findReplyTag, getTagSet } from '@/utils/tags.ts';
|
import { addTag, deleteTag, findReplyTag, getTagSet } from '@/utils/tags.ts';
|
||||||
|
@ -192,7 +192,7 @@ const accountStatusesController: AppController = async (c) => {
|
||||||
|
|
||||||
const filter: NostrFilter = {
|
const filter: NostrFilter = {
|
||||||
authors: [pubkey],
|
authors: [pubkey],
|
||||||
kinds: [1],
|
kinds: [1, 6],
|
||||||
since,
|
since,
|
||||||
until,
|
until,
|
||||||
limit,
|
limit,
|
||||||
|
@ -206,7 +206,10 @@ const accountStatusesController: AppController = async (c) => {
|
||||||
.then((events) => hydrateEvents({ events, store, signal }))
|
.then((events) => hydrateEvents({ events, store, signal }))
|
||||||
.then((events) => {
|
.then((events) => {
|
||||||
if (exclude_replies) {
|
if (exclude_replies) {
|
||||||
return events.filter((event) => !findReplyTag(event.tags));
|
return events.filter((event) => {
|
||||||
|
if (event.kind === 1) return !findReplyTag(event.tags);
|
||||||
|
return true;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
return events;
|
return events;
|
||||||
});
|
});
|
||||||
|
@ -214,7 +217,10 @@ const accountStatusesController: AppController = async (c) => {
|
||||||
const viewerPubkey = await c.get('signer')?.getPublicKey();
|
const viewerPubkey = await c.get('signer')?.getPublicKey();
|
||||||
|
|
||||||
const statuses = await Promise.all(
|
const statuses = await Promise.all(
|
||||||
events.map((event) => renderStatus(event, { viewerPubkey })),
|
events.map((event) => {
|
||||||
|
if (event.kind === 6) return renderReblog(event, { viewerPubkey });
|
||||||
|
return renderStatus(event, { viewerPubkey });
|
||||||
|
}),
|
||||||
);
|
);
|
||||||
return paginated(c, events, statuses);
|
return paginated(c, events, statuses);
|
||||||
};
|
};
|
||||||
|
|
|
@ -104,6 +104,11 @@ const createStatusController: AppController = async (c) => {
|
||||||
tags.push(['subject', data.spoiler_text]);
|
tags.push(['subject', data.spoiler_text]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (data.language) {
|
||||||
|
tags.push(['L', 'ISO-639-1']);
|
||||||
|
tags.push(['l', data.language, 'ISO-639-1']);
|
||||||
|
}
|
||||||
|
|
||||||
const media = data.media_ids?.length ? await getUnattachedMediaByIds(kysely, data.media_ids) : [];
|
const media = data.media_ids?.length ? await getUnattachedMediaByIds(kysely, data.media_ids) : [];
|
||||||
|
|
||||||
const imeta: string[][] = media.map(({ data }) => {
|
const imeta: string[][] = media.map(({ data }) => {
|
||||||
|
|
|
@ -100,7 +100,7 @@ async function renderStatus(event: DittoEvent, opts: RenderStatusOpts): Promise<
|
||||||
sensitive: !!cw,
|
sensitive: !!cw,
|
||||||
spoiler_text: (cw ? cw[1] : subject?.[1]) || '',
|
spoiler_text: (cw ? cw[1] : subject?.[1]) || '',
|
||||||
visibility: 'public',
|
visibility: 'public',
|
||||||
language: event.tags.find((tag) => tag[0] === 'lang')?.[1] || null,
|
language: event.tags.find((tag) => tag[0] === 'l' && tag[2] === 'ISO-639-1')?.[1] || null,
|
||||||
replies_count: event.event_stats?.replies_count ?? 0,
|
replies_count: event.event_stats?.replies_count ?? 0,
|
||||||
reblogs_count: event.event_stats?.reposts_count ?? 0,
|
reblogs_count: event.event_stats?.reposts_count ?? 0,
|
||||||
favourites_count: event.event_stats?.reactions['+'] ?? 0,
|
favourites_count: event.event_stats?.reactions['+'] ?? 0,
|
||||||
|
|
Loading…
Reference in New Issue