refactor: Use ESM (#8358)
* wip * wip * fix * clean up * Update tsconfig.json * Update activitypub.ts * wip
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import accept from '@/services/following/requests/accept';
|
||||
import { IFollow } from '../../type';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import { relayAccepted } from '@/services/relay';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import accept from '@/services/following/requests/accept.js';
|
||||
import { IFollow } from '../../type.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
import { relayAccepted } from '@/services/relay.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IFollow): Promise<string> => {
|
||||
// ※ activityはこっちから投げたフォローリクエストなので、activity.actorは存在するローカルユーザーである必要がある
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import Resolver from '../../resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import acceptFollow from './follow';
|
||||
import { IAccept, isFollow, getApType } from '../../type';
|
||||
import { apLogger } from '../../logger';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import acceptFollow from './follow.js';
|
||||
import { IAccept, isFollow, getApType } from '../../type.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IAdd } from '../../type';
|
||||
import { resolveNote } from '../../models/note';
|
||||
import { addPinned } from '@/services/i/pin';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IAdd } from '../../type.js';
|
||||
import { resolveNote } from '../../models/note.js';
|
||||
import { addPinned } from '@/services/i/pin.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IAdd): Promise<void> => {
|
||||
if ('actor' in activity && actor.uri !== activity.actor) {
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import Resolver from '../../resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import announceNote from './note';
|
||||
import { IAnnounce, getApId } from '../../type';
|
||||
import { apLogger } from '../../logger';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import announceNote from './note.js';
|
||||
import { IAnnounce, getApId } from '../../type.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,14 +1,14 @@
|
||||
import Resolver from '../../resolver';
|
||||
import post from '@/services/note/create';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IAnnounce, getApId } from '../../type';
|
||||
import { fetchNote, resolveNote } from '../../models/note';
|
||||
import { apLogger } from '../../logger';
|
||||
import { extractDbHost } from '@/misc/convert-host';
|
||||
import { fetchMeta } from '@/misc/fetch-meta';
|
||||
import { getApLock } from '@/misc/app-lock';
|
||||
import { parseAudience } from '../../audience';
|
||||
import { StatusError } from '@/misc/fetch';
|
||||
import Resolver from '../../resolver.js';
|
||||
import post from '@/services/note/create.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IAnnounce, getApId } from '../../type.js';
|
||||
import { fetchNote, resolveNote } from '../../models/note.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
import { extractDbHost } from '@/misc/convert-host.js';
|
||||
import { fetchMeta } from '@/misc/fetch-meta.js';
|
||||
import { getApLock } from '@/misc/app-lock.js';
|
||||
import { parseAudience } from '../../audience.js';
|
||||
import { StatusError } from '@/misc/fetch.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IBlock } from '../../type';
|
||||
import block from '@/services/blocking/create';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import { IBlock } from '../../type.js';
|
||||
import block from '@/services/blocking/create.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IBlock): Promise<string> => {
|
||||
// ※ activity.objectにブロック対象があり、それは存在するローカルユーザーのはず
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import Resolver from '../../resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import createNote from './note';
|
||||
import { ICreate, getApId, isPost, getApType } from '../../type';
|
||||
import { apLogger } from '../../logger';
|
||||
import { toArray, concat, unique } from '@/prelude/array';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import createNote from './note.js';
|
||||
import { ICreate, getApId, isPost, getApType } from '../../type.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
import { toArray, concat, unique } from '@/prelude/array.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,10 +1,10 @@
|
||||
import Resolver from '../../resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { createNote, fetchNote } from '../../models/note';
|
||||
import { getApId, IObject, ICreate } from '../../type';
|
||||
import { getApLock } from '@/misc/app-lock';
|
||||
import { extractDbHost } from '@/misc/convert-host';
|
||||
import { StatusError } from '@/misc/fetch';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { createNote, fetchNote } from '../../models/note.js';
|
||||
import { getApId, IObject, ICreate } from '../../type.js';
|
||||
import { getApLock } from '@/misc/app-lock.js';
|
||||
import { extractDbHost } from '@/misc/convert-host.js';
|
||||
import { StatusError } from '@/misc/fetch.js';
|
||||
|
||||
/**
|
||||
* 投稿作成アクティビティを捌きます
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { apLogger } from '../../logger';
|
||||
import { createDeleteAccountJob } from '@/queue';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { Users } from '@/models/index';
|
||||
import { apLogger } from '../../logger.js';
|
||||
import { createDeleteAccountJob } from '@/queue/index.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { Users } from '@/models/index.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import deleteNote from './note';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IDelete, getApId, isTombstone, IObject, validPost, validActor } from '../../type';
|
||||
import { toSingle } from '@/prelude/array';
|
||||
import { deleteActor } from './actor';
|
||||
import deleteNote from './note.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IDelete, getApId, isTombstone, IObject, validPost, validActor } from '../../type.js';
|
||||
import { toSingle } from '@/prelude/array.js';
|
||||
import { deleteActor } from './actor.js';
|
||||
|
||||
/**
|
||||
* 削除アクティビティを捌きます
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import deleteNode from '@/services/note/delete';
|
||||
import { apLogger } from '../../logger';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import { getApLock } from '@/misc/app-lock';
|
||||
import { deleteMessage } from '@/services/messages/delete';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import deleteNode from '@/services/note/delete.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
import { getApLock } from '@/misc/app-lock.js';
|
||||
import { deleteMessage } from '@/services/messages/delete.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import config from '@/config/index';
|
||||
import { IFlag, getApIds } from '../../type';
|
||||
import { AbuseUserReports, Users } from '@/models/index';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import config from '@/config/index.js';
|
||||
import { IFlag, getApIds } from '../../type.js';
|
||||
import { AbuseUserReports, Users } from '@/models/index.js';
|
||||
import { In } from 'typeorm';
|
||||
import { genId } from '@/misc/gen-id';
|
||||
import { genId } from '@/misc/gen-id.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IFlag): Promise<string> => {
|
||||
// objectは `(User|Note) | (User|Note)[]` だけど、全パターンDBスキーマと対応させられないので
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import follow from '@/services/following/create';
|
||||
import { IFollow } from '../type';
|
||||
import DbResolver from '../db-resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import follow from '@/services/following/create.js';
|
||||
import { IFollow } from '../type.js';
|
||||
import DbResolver from '../db-resolver.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IFollow): Promise<string> => {
|
||||
const dbResolver = new DbResolver();
|
||||
|
@@ -1,22 +1,22 @@
|
||||
import { IObject, isCreate, isDelete, isUpdate, isRead, isFollow, isAccept, isReject, isAdd, isRemove, isAnnounce, isLike, isUndo, isBlock, isCollectionOrOrderedCollection, isCollection, isFlag } from '../type';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import create from './create/index';
|
||||
import performDeleteActivity from './delete/index';
|
||||
import performUpdateActivity from './update/index';
|
||||
import { performReadActivity } from './read';
|
||||
import follow from './follow';
|
||||
import undo from './undo/index';
|
||||
import like from './like';
|
||||
import announce from './announce/index';
|
||||
import accept from './accept/index';
|
||||
import reject from './reject/index';
|
||||
import add from './add/index';
|
||||
import remove from './remove/index';
|
||||
import block from './block/index';
|
||||
import flag from './flag/index';
|
||||
import { apLogger } from '../logger';
|
||||
import Resolver from '../resolver';
|
||||
import { toArray } from '@/prelude/array';
|
||||
import { IObject, isCreate, isDelete, isUpdate, isRead, isFollow, isAccept, isReject, isAdd, isRemove, isAnnounce, isLike, isUndo, isBlock, isCollectionOrOrderedCollection, isCollection, isFlag } from '../type.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import create from './create/index.js';
|
||||
import performDeleteActivity from './delete/index.js';
|
||||
import performUpdateActivity from './update/index.js';
|
||||
import { performReadActivity } from './read.js';
|
||||
import follow from './follow.js';
|
||||
import undo from './undo/index.js';
|
||||
import like from './like.js';
|
||||
import announce from './announce/index.js';
|
||||
import accept from './accept/index.js';
|
||||
import reject from './reject/index.js';
|
||||
import add from './add/index.js';
|
||||
import remove from './remove/index.js';
|
||||
import block from './block/index.js';
|
||||
import flag from './flag/index.js';
|
||||
import { apLogger } from '../logger.js';
|
||||
import Resolver from '../resolver.js';
|
||||
import { toArray } from '@/prelude/array.js';
|
||||
|
||||
export async function performActivity(actor: IRemoteUser, activity: IObject) {
|
||||
if (isCollectionOrOrderedCollection(activity)) {
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { ILike, getApId } from '../type';
|
||||
import create from '@/services/note/reaction/create';
|
||||
import { fetchNote, extractEmojis } from '../models/note';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { ILike, getApId } from '../type.js';
|
||||
import create from '@/services/note/reaction/create.js';
|
||||
import { fetchNote, extractEmojis } from '../models/note.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: ILike) => {
|
||||
const targetUri = getApId(activity.object);
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IRead, getApId } from '../type';
|
||||
import { isSelfHost, extractDbHost } from '@/misc/convert-host';
|
||||
import { MessagingMessages } from '@/models/index';
|
||||
import { readUserMessagingMessage } from '../../../server/api/common/read-messaging-message';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IRead, getApId } from '../type.js';
|
||||
import { isSelfHost, extractDbHost } from '@/misc/convert-host.js';
|
||||
import { MessagingMessages } from '@/models/index.js';
|
||||
import { readUserMessagingMessage } from '../../../server/api/common/read-messaging-message.js';
|
||||
|
||||
export const performReadActivity = async (actor: IRemoteUser, activity: IRead): Promise<string> => {
|
||||
const id = await getApId(activity.object);
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { remoteReject } from '@/services/following/reject';
|
||||
import { IFollow } from '../../type';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import { relayRejected } from '@/services/relay';
|
||||
import { Users } from '@/models';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { remoteReject } from '@/services/following/reject.js';
|
||||
import { IFollow } from '../../type.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
import { relayRejected } from '@/services/relay.js';
|
||||
import { Users } from '@/models/index.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IFollow): Promise<string> => {
|
||||
// ※ activityはこっちから投げたフォローリクエストなので、activity.actorは存在するローカルユーザーである必要がある
|
||||
|
@@ -1,8 +1,8 @@
|
||||
import Resolver from '../../resolver';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import rejectFollow from './follow';
|
||||
import { IReject, isFollow, getApType } from '../../type';
|
||||
import { apLogger } from '../../logger';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import rejectFollow from './follow.js';
|
||||
import { IReject, isFollow, getApType } from '../../type.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IRemove } from '../../type';
|
||||
import { resolveNote } from '../../models/note';
|
||||
import { removePinned } from '@/services/i/pin';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IRemove } from '../../type.js';
|
||||
import { resolveNote } from '../../models/note.js';
|
||||
import { removePinned } from '@/services/i/pin.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IRemove): Promise<void> => {
|
||||
if ('actor' in activity && actor.uri !== activity.actor) {
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import unfollow from '@/services/following/delete';
|
||||
import cancelRequest from '@/services/following/requests/cancel';
|
||||
import {IAccept} from '../../type';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { Followings } from '@/models/index';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import unfollow from '@/services/following/delete.js';
|
||||
import cancelRequest from '@/services/following/requests/cancel.js';
|
||||
import {IAccept} from '../../type.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { Followings } from '@/models/index.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IAccept): Promise<string> => {
|
||||
const dbResolver = new DbResolver();
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { Notes } from '@/models/index';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { IAnnounce, getApId } from '../../type';
|
||||
import deleteNote from '@/services/note/delete';
|
||||
import { Notes } from '@/models/index.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { IAnnounce, getApId } from '../../type.js';
|
||||
import deleteNote from '@/services/note/delete.js';
|
||||
|
||||
export const undoAnnounce = async (actor: IRemoteUser, activity: IAnnounce): Promise<string> => {
|
||||
const uri = getApId(activity);
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IBlock } from '../../type';
|
||||
import unblock from '@/services/blocking/delete';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import { IBlock } from '../../type.js';
|
||||
import unblock from '@/services/blocking/delete.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IBlock): Promise<string> => {
|
||||
const dbResolver = new DbResolver();
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import unfollow from '@/services/following/delete';
|
||||
import cancelRequest from '@/services/following/requests/cancel';
|
||||
import { IFollow } from '../../type';
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { FollowRequests, Followings } from '@/models/index';
|
||||
import DbResolver from '../../db-resolver';
|
||||
import unfollow from '@/services/following/delete.js';
|
||||
import cancelRequest from '@/services/following/requests/cancel.js';
|
||||
import { IFollow } from '../../type.js';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { FollowRequests, Followings } from '@/models/index.js';
|
||||
import DbResolver from '../../db-resolver.js';
|
||||
|
||||
export default async (actor: IRemoteUser, activity: IFollow): Promise<string> => {
|
||||
const dbResolver = new DbResolver();
|
||||
|
@@ -1,12 +1,12 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import {IUndo, isFollow, isBlock, isLike, isAnnounce, getApType, isAccept} from '../../type';
|
||||
import unfollow from './follow';
|
||||
import unblock from './block';
|
||||
import undoLike from './like';
|
||||
import undoAccept from './accept';
|
||||
import { undoAnnounce } from './announce';
|
||||
import Resolver from '../../resolver';
|
||||
import { apLogger } from '../../logger';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import {IUndo, isFollow, isBlock, isLike, isAnnounce, getApType, isAccept} from '../../type.js';
|
||||
import unfollow from './follow.js';
|
||||
import unblock from './block.js';
|
||||
import undoLike from './like.js';
|
||||
import undoAccept from './accept.js';
|
||||
import { undoAnnounce } from './announce.js';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
|
||||
const logger = apLogger;
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { ILike, getApId } from '../../type';
|
||||
import deleteReaction from '@/services/note/reaction/delete';
|
||||
import { fetchNote } from '../../models/note';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { ILike, getApId } from '../../type.js';
|
||||
import deleteReaction from '@/services/note/reaction/delete.js';
|
||||
import { fetchNote } from '../../models/note.js';
|
||||
|
||||
/**
|
||||
* Process Undo.Like activity
|
||||
|
@@ -1,9 +1,9 @@
|
||||
import { IRemoteUser } from '@/models/entities/user';
|
||||
import { getApType, IUpdate, isActor } from '../../type';
|
||||
import { apLogger } from '../../logger';
|
||||
import { updateQuestion } from '../../models/question';
|
||||
import Resolver from '../../resolver';
|
||||
import { updatePerson } from '../../models/person';
|
||||
import { IRemoteUser } from '@/models/entities/user.js';
|
||||
import { getApType, IUpdate, isActor } from '../../type.js';
|
||||
import { apLogger } from '../../logger.js';
|
||||
import { updateQuestion } from '../../models/question.js';
|
||||
import Resolver from '../../resolver.js';
|
||||
import { updatePerson } from '../../models/person.js';
|
||||
|
||||
/**
|
||||
* Updateアクティビティを捌きます
|
||||
|
Reference in New Issue
Block a user