refactor: Use ESM (#8358)
* wip * wip * fix * clean up * Update tsconfig.json * Update activitypub.ts * wip
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export default (object: any, user: { id: User['id']; host: null }) => ({
|
||||
type: 'Accept',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { ILocalUser } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { ILocalUser } from '@/models/entities/user.js';
|
||||
|
||||
export default (user: ILocalUser, target: any, object: any) => ({
|
||||
type: 'Add',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { Note } from '@/models/entities/note';
|
||||
import config from '@/config/index.js';
|
||||
import { Note } from '@/models/entities/note.js';
|
||||
|
||||
export default (object: any, note: Note) => {
|
||||
const attributedTo = `${config.url}/users/${note.userId}`;
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { ILocalUser, IRemoteUser } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { ILocalUser, IRemoteUser } from '@/models/entities/user.js';
|
||||
|
||||
export default (blocker: ILocalUser, blockee: IRemoteUser) => ({
|
||||
type: 'Block',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { Note } from '@/models/entities/note';
|
||||
import config from '@/config/index.js';
|
||||
import { Note } from '@/models/entities/note.js';
|
||||
|
||||
export default (object: any, note: Note) => {
|
||||
const activity = {
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export default (object: any, user: { id: User['id']; host: null }) => ({
|
||||
type: 'Delete',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { DriveFile } from '@/models/entities/drive-file';
|
||||
import { DriveFiles } from '@/models/index';
|
||||
import { DriveFile } from '@/models/entities/drive-file.js';
|
||||
import { DriveFiles } from '@/models/index.js';
|
||||
|
||||
export default (file: DriveFile) => ({
|
||||
type: 'Document',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { Emoji } from '@/models/entities/emoji';
|
||||
import config from '@/config/index.js';
|
||||
import { Emoji } from '@/models/entities/emoji.js';
|
||||
|
||||
export default (emoji: Emoji) => ({
|
||||
id: `${config.url}/emojis/${emoji.name}`,
|
||||
|
@ -1,7 +1,7 @@
|
||||
import config from '@/config/index';
|
||||
import { IObject, IActivity } from '@/remote/activitypub/type';
|
||||
import { ILocalUser, IRemoteUser } from '@/models/entities/user';
|
||||
import { getInstanceActor } from '@/services/instance-actor';
|
||||
import config from '@/config/index.js';
|
||||
import { IObject, IActivity } from '@/remote/activitypub/type.js';
|
||||
import { ILocalUser, IRemoteUser } from '@/models/entities/user.js';
|
||||
import { getInstanceActor } from '@/services/instance-actor.js';
|
||||
|
||||
// to anonymise reporters, the reporting actor must be a system user
|
||||
// object has to be a uri or array of uris
|
||||
|
@ -1,6 +1,6 @@
|
||||
import config from '@/config/index';
|
||||
import { Relay } from '@/models/entities/relay';
|
||||
import { ILocalUser } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { Relay } from '@/models/entities/relay.js';
|
||||
import { ILocalUser } from '@/models/entities/user.js';
|
||||
|
||||
export function renderFollowRelay(relay: Relay, relayActor: ILocalUser) {
|
||||
const follow = {
|
||||
|
@ -1,6 +1,6 @@
|
||||
import config from '@/config/index';
|
||||
import { Users } from '@/models/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { Users } from '@/models/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
/**
|
||||
* Convert (local|remote)(Follower|Followee)ID to URL
|
||||
|
@ -1,6 +1,6 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import { Users } from '@/models/index';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
import { Users } from '@/models/index.js';
|
||||
|
||||
export default (follower: { id: User['id']; host: User['host']; uri: User['host'] }, followee: { id: User['id']; host: User['host']; uri: User['host'] }, requestId?: string) => {
|
||||
const follow = {
|
||||
|
@ -1,4 +1,4 @@
|
||||
import config from '@/config/index';
|
||||
import config from '@/config/index.js';
|
||||
|
||||
export default (tag: string) => ({
|
||||
type: 'Hashtag',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { DriveFile } from '@/models/entities/drive-file';
|
||||
import { DriveFiles } from '@/models/index';
|
||||
import { DriveFile } from '@/models/entities/drive-file.js';
|
||||
import { DriveFiles } from '@/models/index.js';
|
||||
|
||||
export default (file: DriveFile) => ({
|
||||
type: 'Image',
|
||||
|
@ -1,9 +1,9 @@
|
||||
import config from '@/config/index';
|
||||
import config from '@/config/index.js';
|
||||
import { v4 as uuid } from 'uuid';
|
||||
import { IActivity } from '../type';
|
||||
import { LdSignature } from '../misc/ld-signature';
|
||||
import { getUserKeypair } from '@/misc/keypair-store';
|
||||
import { User } from '@/models/entities/user';
|
||||
import { IActivity } from '../type.js';
|
||||
import { LdSignature } from '../misc/ld-signature.js';
|
||||
import { getUserKeypair } from '@/misc/keypair-store.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export const renderActivity = (x: any): IActivity | null => {
|
||||
if (x == null) return null;
|
||||
|
@ -1,7 +1,7 @@
|
||||
import config from '@/config/index';
|
||||
import { ILocalUser } from '@/models/entities/user';
|
||||
import { UserKeypair } from '@/models/entities/user-keypair';
|
||||
import { createPublicKey } from 'crypto';
|
||||
import config from '@/config/index.js';
|
||||
import { ILocalUser } from '@/models/entities/user.js';
|
||||
import { UserKeypair } from '@/models/entities/user-keypair.js';
|
||||
import { createPublicKey } from 'node:crypto';
|
||||
|
||||
export default (user: ILocalUser, key: UserKeypair, postfix?: string) => ({
|
||||
id: `${config.url}/users/${user.id}${postfix || '/publickey'}`,
|
||||
|
@ -1,8 +1,8 @@
|
||||
import config from '@/config/index';
|
||||
import { NoteReaction } from '@/models/entities/note-reaction';
|
||||
import { Note } from '@/models/entities/note';
|
||||
import { Emojis } from '@/models/index';
|
||||
import renderEmoji from './emoji';
|
||||
import config from '@/config/index.js';
|
||||
import { NoteReaction } from '@/models/entities/note-reaction.js';
|
||||
import { Note } from '@/models/entities/note.js';
|
||||
import { Emojis } from '@/models/index.js';
|
||||
import renderEmoji from './emoji.js';
|
||||
|
||||
export const renderLike = async (noteReaction: NoteReaction, note: Note) => {
|
||||
const reaction = noteReaction.reaction;
|
||||
|
@ -1,6 +1,6 @@
|
||||
import config from '@/config/index';
|
||||
import { User, ILocalUser } from '@/models/entities/user';
|
||||
import { Users } from '@/models/index';
|
||||
import config from '@/config/index.js';
|
||||
import { User, ILocalUser } from '@/models/entities/user.js';
|
||||
import { Users } from '@/models/index.js';
|
||||
|
||||
export default (mention: User) => ({
|
||||
type: 'Mention',
|
||||
|
@ -1,15 +1,15 @@
|
||||
import renderDocument from './document';
|
||||
import renderHashtag from './hashtag';
|
||||
import renderMention from './mention';
|
||||
import renderEmoji from './emoji';
|
||||
import config from '@/config/index';
|
||||
import toHtml from '../misc/get-note-html';
|
||||
import { Note, IMentionedRemoteUsers } from '@/models/entities/note';
|
||||
import { DriveFile } from '@/models/entities/drive-file';
|
||||
import { DriveFiles, Notes, Users, Emojis, Polls } from '@/models/index';
|
||||
import renderDocument from './document.js';
|
||||
import renderHashtag from './hashtag.js';
|
||||
import renderMention from './mention.js';
|
||||
import renderEmoji from './emoji.js';
|
||||
import config from '@/config/index.js';
|
||||
import toHtml from '../misc/get-note-html.js';
|
||||
import { Note, IMentionedRemoteUsers } from '@/models/entities/note.js';
|
||||
import { DriveFile } from '@/models/entities/drive-file.js';
|
||||
import { DriveFiles, Notes, Users, Emojis, Polls } from '@/models/index.js';
|
||||
import { In } from 'typeorm';
|
||||
import { Emoji } from '@/models/entities/emoji';
|
||||
import { Poll } from '@/models/entities/poll';
|
||||
import { Emoji } from '@/models/entities/emoji.js';
|
||||
import { Poll } from '@/models/entities/poll.js';
|
||||
|
||||
export default async function renderNote(note: Note, dive = true, isTalk = false): Promise<Record<string, unknown>> {
|
||||
const getPromisedFiles = async (ids: string[]) => {
|
||||
|
@ -1,16 +1,16 @@
|
||||
import { URL } from 'url';
|
||||
import { URL } from 'node:url';
|
||||
import * as mfm from 'mfm-js';
|
||||
import renderImage from './image';
|
||||
import renderKey from './key';
|
||||
import config from '@/config/index';
|
||||
import { ILocalUser } from '@/models/entities/user';
|
||||
import { toHtml } from '../../../mfm/to-html';
|
||||
import { getEmojis } from './note';
|
||||
import renderEmoji from './emoji';
|
||||
import { IIdentifier } from '../models/identifier';
|
||||
import renderHashtag from './hashtag';
|
||||
import { DriveFiles, UserProfiles } from '@/models/index';
|
||||
import { getUserKeypair } from '@/misc/keypair-store';
|
||||
import renderImage from './image.js';
|
||||
import renderKey from './key.js';
|
||||
import config from '@/config/index.js';
|
||||
import { ILocalUser } from '@/models/entities/user.js';
|
||||
import { toHtml } from '../../../mfm/to-html.js';
|
||||
import { getEmojis } from './note.js';
|
||||
import renderEmoji from './emoji.js';
|
||||
import { IIdentifier } from '../models/identifier.js';
|
||||
import renderHashtag from './hashtag.js';
|
||||
import { DriveFiles, UserProfiles } from '@/models/index.js';
|
||||
import { getUserKeypair } from '@/misc/keypair-store.js';
|
||||
|
||||
export async function renderPerson(user: ILocalUser) {
|
||||
const id = `${config.url}/users/${user.id}`;
|
||||
|
@ -1,7 +1,7 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import { Note } from '@/models/entities/note';
|
||||
import { Poll } from '@/models/entities/poll';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
import { Note } from '@/models/entities/note.js';
|
||||
import { Poll } from '@/models/entities/poll.js';
|
||||
|
||||
export default async function renderQuestion(user: { id: User['id'] }, note: Note, poll: Poll) {
|
||||
const question = {
|
||||
|
@ -1,6 +1,6 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import { MessagingMessage } from '@/models/entities/messaging-message';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
import { MessagingMessage } from '@/models/entities/messaging-message.js';
|
||||
|
||||
export const renderReadActivity = (user: { id: User['id'] }, message: MessagingMessage) => ({
|
||||
type: 'Read',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export default (object: any, user: { id: User['id'] }) => ({
|
||||
type: 'Reject',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export default (user: { id: User['id'] }, target: any, object: any) => ({
|
||||
type: 'Remove',
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { ILocalUser, User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { ILocalUser, User } from '@/models/entities/user.js';
|
||||
|
||||
export default (object: any, user: { id: User['id'] }) => {
|
||||
if (object == null) return null;
|
||||
|
@ -1,5 +1,5 @@
|
||||
import config from '@/config/index';
|
||||
import { User } from '@/models/entities/user';
|
||||
import config from '@/config/index.js';
|
||||
import { User } from '@/models/entities/user.js';
|
||||
|
||||
export default (object: any, user: { id: User['id'] }) => {
|
||||
const activity = {
|
||||
|
@ -1,8 +1,8 @@
|
||||
import config from '@/config/index';
|
||||
import { Note } from '@/models/entities/note';
|
||||
import { IRemoteUser, User } from '@/models/entities/user';
|
||||
import { PollVote } from '@/models/entities/poll-vote';
|
||||
import { Poll } from '@/models/entities/poll';
|
||||
import config from '@/config/index.js';
|
||||
import { Note } from '@/models/entities/note.js';
|
||||
import { IRemoteUser, User } from '@/models/entities/user.js';
|
||||
import { PollVote } from '@/models/entities/poll-vote.js';
|
||||
import { Poll } from '@/models/entities/poll.js';
|
||||
|
||||
export default async function renderVote(user: { id: User['id'] }, vote: PollVote, note: Note, poll: Poll, pollOwner: IRemoteUser): Promise<any> {
|
||||
return {
|
||||
|
Reference in New Issue
Block a user