upd: change deps, fix a few bugs, update converter
Fixes User and Notes count bug (transfem-org/Sharkey#113) Fixes build issues due to types (transfem-org/Sharkey#111) Return accounts and notes like Iceshrimp Use MFM class from Iceshrimp to fix HTML output for mastodon
This commit is contained in:
parent
b0a7fd6ddb
commit
82c10de265
14 changed files with 421 additions and 242 deletions
|
|
@ -8,7 +8,7 @@ import { DI } from '@/di-symbols.js';
|
|||
import { bindThis } from '@/decorators.js';
|
||||
import type { Config } from '@/config.js';
|
||||
import { MetaService } from '@/core/MetaService.js';
|
||||
import { convertId, IdConvertType as IdType, convertAccount, convertAnnouncement, convertFilter, convertAttachment, convertFeaturedTag, convertList } from './converters.js';
|
||||
import { convertAccount, convertAnnouncement, convertFilter, convertAttachment, convertFeaturedTag, convertList } from './converters.js';
|
||||
import { getInstance } from './endpoints/meta.js';
|
||||
import { ApiAuthMastodon, ApiAccountMastodon, ApiFilterMastodon, ApiNotifyMastodon, ApiSearchMastodon, ApiTimelineMastodon, ApiStatusMastodon } from './endpoints.js';
|
||||
import type { FastifyInstance, FastifyPluginOptions } from 'fastify';
|
||||
|
|
@ -128,7 +128,7 @@ export class MastodonApiServerService {
|
|||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const data = await client.dismissInstanceAnnouncement(
|
||||
convertId(_request.body['id'], IdType.SharkeyId),
|
||||
_request.body['id'],
|
||||
);
|
||||
reply.send(data.data);
|
||||
} catch (e: any) {
|
||||
|
|
@ -236,7 +236,7 @@ export class MastodonApiServerService {
|
|||
const client = getClient(BASE_URL, accessTokens); // we are using this here, because in private mode some info isnt
|
||||
// displayed without being logged in
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.verifyCredentials());
|
||||
} catch (e: any) {
|
||||
/* console.error(e); */
|
||||
|
|
@ -286,7 +286,7 @@ export class MastodonApiServerService {
|
|||
ids = [ids];
|
||||
}
|
||||
users = ids;
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getRelationships(users));
|
||||
} catch (e: any) {
|
||||
/* console.error(e); */
|
||||
|
|
@ -302,7 +302,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const sharkId = convertId(_request.params.id, IdType.SharkeyId);
|
||||
const sharkId = _request.params.id;
|
||||
const data = await client.getAccount(sharkId);
|
||||
const profile = await this.userProfilesRepository.findOneBy({ userId: sharkId });
|
||||
data.data.fields = profile?.fields.map(f => ({ ...f, verified_at: null })) || [];
|
||||
|
|
@ -319,7 +319,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getStatuses());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -347,7 +347,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getFollowers());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -361,7 +361,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getFollowing());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -375,7 +375,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const data = await client.getAccountLists(convertId(_request.params.id, IdType.SharkeyId));
|
||||
const data = await client.getAccountLists(_request.params.id);
|
||||
reply.send(data.data.map((list) => convertList(list)));
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -389,7 +389,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.addFollow());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -403,7 +403,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.rmFollow());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -417,7 +417,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.addBlock());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -431,7 +431,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.rmBlock());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -445,7 +445,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.addMute());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -459,7 +459,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.rmMute());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -487,7 +487,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getBookmarks());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -501,7 +501,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getFavourites());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -515,7 +515,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getMutes());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -529,7 +529,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.getBlocks());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -557,7 +557,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.acceptFollow());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -571,7 +571,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL);
|
||||
const account = new ApiAccountMastodon(_request, client, BASE_URL, this.config, this.usersRepository, this.notesRepository, this.noteEditRepository, this.userEntityService);
|
||||
reply.send(await account.rejectFollow());
|
||||
} catch (e: any) {
|
||||
/* console.error(e);
|
||||
|
|
@ -813,7 +813,7 @@ export class MastodonApiServerService {
|
|||
const accessTokens = _request.headers.authorization;
|
||||
const client = getClient(BASE_URL, accessTokens);
|
||||
try {
|
||||
const data = await client.updateMedia(convertId(_request.params.id, IdType.SharkeyId), _request.body!);
|
||||
const data = await client.updateMedia(_request.params.id, _request.body!);
|
||||
reply.send(convertAttachment(data.data));
|
||||
} catch (e: any) {
|
||||
/* console.error(e); */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue