refactor
This commit is contained in:
parent
31e5c5f69a
commit
ce51ef5df5
|
@ -1,15 +1,15 @@
|
||||||
import renderDocument from './document.js';
|
import { In, IsNull } from 'typeorm';
|
||||||
import renderHashtag from './hashtag.js';
|
|
||||||
import renderMention from './mention.js';
|
|
||||||
import renderEmoji from './emoji.js';
|
|
||||||
import config from '@/config/index.js';
|
import config from '@/config/index.js';
|
||||||
import toHtml from '../misc/get-note-html.js';
|
|
||||||
import { Note, IMentionedRemoteUsers } from '@/models/entities/note.js';
|
import { Note, IMentionedRemoteUsers } from '@/models/entities/note.js';
|
||||||
import { DriveFile } from '@/models/entities/drive-file.js';
|
import { DriveFile } from '@/models/entities/drive-file.js';
|
||||||
import { DriveFiles, Notes, Users, Emojis, Polls } from '@/models/index.js';
|
import { DriveFiles, Notes, Users, Emojis, Polls } from '@/models/index.js';
|
||||||
import { In, IsNull } from 'typeorm';
|
|
||||||
import { Emoji } from '@/models/entities/emoji.js';
|
import { Emoji } from '@/models/entities/emoji.js';
|
||||||
import { Poll } from '@/models/entities/poll.js';
|
import { Poll } from '@/models/entities/poll.js';
|
||||||
|
import toHtml from '../misc/get-note-html.js';
|
||||||
|
import renderEmoji from './emoji.js';
|
||||||
|
import renderMention from './mention.js';
|
||||||
|
import renderHashtag from './hashtag.js';
|
||||||
|
import renderDocument from './document.js';
|
||||||
|
|
||||||
export default async function renderNote(note: Note, dive = true, isTalk = false): Promise<Record<string, unknown>> {
|
export default async function renderNote(note: Note, dive = true, isTalk = false): Promise<Record<string, unknown>> {
|
||||||
const getPromisedFiles = async (ids: string[]) => {
|
const getPromisedFiles = async (ids: string[]) => {
|
||||||
|
@ -83,7 +83,7 @@ export default async function renderNote(note: Note, dive = true, isTalk = false
|
||||||
const files = await getPromisedFiles(note.fileIds);
|
const files = await getPromisedFiles(note.fileIds);
|
||||||
|
|
||||||
const text = note.text;
|
const text = note.text;
|
||||||
let poll: Poll | null;
|
let poll: Poll | null = null;
|
||||||
|
|
||||||
if (note.hasPoll) {
|
if (note.hasPoll) {
|
||||||
poll = await Polls.findOneBy({ noteId: note.id });
|
poll = await Polls.findOneBy({ noteId: note.id });
|
||||||
|
@ -159,7 +159,7 @@ export async function getEmojis(names: string[]): Promise<Emoji[]> {
|
||||||
names.map(name => Emojis.findOneBy({
|
names.map(name => Emojis.findOneBy({
|
||||||
name,
|
name,
|
||||||
host: IsNull(),
|
host: IsNull(),
|
||||||
}))
|
})),
|
||||||
);
|
);
|
||||||
|
|
||||||
return emojis.filter(emoji => emoji != null) as Emoji[];
|
return emojis.filter(emoji => emoji != null) as Emoji[];
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
import { Brackets, In } from 'typeorm';
|
||||||
import { publishNoteStream } from '@/services/stream.js';
|
import { publishNoteStream } from '@/services/stream.js';
|
||||||
import renderDelete from '@/remote/activitypub/renderer/delete.js';
|
import renderDelete from '@/remote/activitypub/renderer/delete.js';
|
||||||
import renderAnnounce from '@/remote/activitypub/renderer/announce.js';
|
import renderAnnounce from '@/remote/activitypub/renderer/announce.js';
|
||||||
|
@ -5,15 +6,14 @@ import renderUndo from '@/remote/activitypub/renderer/undo.js';
|
||||||
import { renderActivity } from '@/remote/activitypub/renderer/index.js';
|
import { renderActivity } from '@/remote/activitypub/renderer/index.js';
|
||||||
import renderTombstone from '@/remote/activitypub/renderer/tombstone.js';
|
import renderTombstone from '@/remote/activitypub/renderer/tombstone.js';
|
||||||
import config from '@/config/index.js';
|
import config from '@/config/index.js';
|
||||||
import { registerOrFetchInstanceDoc } from '../register-or-fetch-instance-doc.js';
|
|
||||||
import { User, ILocalUser, IRemoteUser } from '@/models/entities/user.js';
|
import { User, ILocalUser, IRemoteUser } from '@/models/entities/user.js';
|
||||||
import { Note, IMentionedRemoteUsers } from '@/models/entities/note.js';
|
import { Note, IMentionedRemoteUsers } from '@/models/entities/note.js';
|
||||||
import { Notes, Users, Instances } from '@/models/index.js';
|
import { Notes, Users, Instances } from '@/models/index.js';
|
||||||
import { notesChart, perUserNotesChart, instanceChart } from '@/services/chart/index.js';
|
import { notesChart, perUserNotesChart, instanceChart } from '@/services/chart/index.js';
|
||||||
import { deliverToFollowers, deliverToUser } from '@/remote/activitypub/deliver-manager.js';
|
import { deliverToFollowers, deliverToUser } from '@/remote/activitypub/deliver-manager.js';
|
||||||
import { countSameRenotes } from '@/misc/count-same-renotes.js';
|
import { countSameRenotes } from '@/misc/count-same-renotes.js';
|
||||||
|
import { registerOrFetchInstanceDoc } from '../register-or-fetch-instance-doc.js';
|
||||||
import { deliverToRelays } from '../relay.js';
|
import { deliverToRelays } from '../relay.js';
|
||||||
import { Brackets, In } from 'typeorm';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 投稿を削除します。
|
* 投稿を削除します。
|
||||||
|
@ -40,7 +40,7 @@ export default async function(user: { id: User['id']; uri: User['uri']; host: Us
|
||||||
|
|
||||||
//#region ローカルの投稿なら削除アクティビティを配送
|
//#region ローカルの投稿なら削除アクティビティを配送
|
||||||
if (Users.isLocalUser(user) && !note.localOnly) {
|
if (Users.isLocalUser(user) && !note.localOnly) {
|
||||||
let renote: Note | null;
|
let renote: Note | null = null;
|
||||||
|
|
||||||
// if deletd note is renote
|
// if deletd note is renote
|
||||||
if (note.renoteId && note.text == null && !note.hasPoll && (note.fileIds == null || note.fileIds.length === 0)) {
|
if (note.renoteId && note.text == null && !note.hasPoll && (note.fileIds == null || note.fileIds.length === 0)) {
|
||||||
|
@ -113,7 +113,7 @@ async function getMentionedRemoteUsers(note: Note) {
|
||||||
const uris = (JSON.parse(note.mentionedRemoteUsers) as IMentionedRemoteUsers).map(x => x.uri);
|
const uris = (JSON.parse(note.mentionedRemoteUsers) as IMentionedRemoteUsers).map(x => x.uri);
|
||||||
if (uris.length > 0) {
|
if (uris.length > 0) {
|
||||||
where.push(
|
where.push(
|
||||||
{ uri: In(uris) }
|
{ uri: In(uris) },
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue