refactor: Use ESM (#8358)

* wip

* wip

* fix

* clean up

* Update tsconfig.json

* Update activitypub.ts

* wip
This commit is contained in:
syuilo
2022-02-27 11:07:39 +09:00
committed by GitHub
parent 0a882471f3
commit d071d18dd7
737 changed files with 4135 additions and 3678 deletions

View File

@@ -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は存在するローカルユーザーである必要がある

View File

@@ -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;

View File

@@ -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) {

View File

@@ -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;

View File

@@ -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;

View File

@@ -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にブロック対象があり、それは存在するローカルユーザーのはず

View File

@@ -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;

View File

@@ -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';
/**
* 投稿作成アクティビティを捌きます

View File

@@ -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;

View File

@@ -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';
/**
* 削除アクティビティを捌きます

View File

@@ -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;

View File

@@ -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スキーマと対応させられないので

View File

@@ -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();

View File

@@ -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)) {

View File

@@ -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);

View File

@@ -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);

View File

@@ -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は存在するローカルユーザーである必要がある

View File

@@ -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;

View File

@@ -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) {

View File

@@ -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();

View File

@@ -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);

View File

@@ -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();

View File

@@ -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();

View File

@@ -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;

View File

@@ -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

View File

@@ -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アクティビティを捌きます