upd: simplify importing of mastoconverter, fix bug

Lets you import stuff into mastoconverter without needing to also import them everywhere else
Fixes not being able to get statuses on accounts
This commit is contained in:
Mar0xy 2023-10-29 02:06:19 +02:00
parent f92773d995
commit 43f27a639f
No known key found for this signature in database
GPG key ID: 56569BBE47D2C828
6 changed files with 39 additions and 54 deletions

View file

@ -5,6 +5,7 @@ import type { FastifyRequest } from 'fastify';
import { NoteEditRepository, NotesRepository, UsersRepository } from '@/models/_.js';
import { UserEntityService } from '@/core/entities/UserEntityService.js';
import type { Config } from '@/config.js';
import { Injectable } from '@nestjs/common';
const relationshipModel = {
id: '',
@ -23,23 +24,16 @@ const relationshipModel = {
note: '',
};
@Injectable()
export class ApiAccountMastodon {
private request: FastifyRequest;
private client: MegalodonInterface;
private BASE_URL: string;
private mastoconverter: MastoConverters;
constructor(request: FastifyRequest, client: MegalodonInterface, BASE_URL: string,
config: Config,
usersrepo: UsersRepository,
notesrepo: NotesRepository,
noteeditrepo: NoteEditRepository,
userentity: UserEntityService,
) {
constructor(request: FastifyRequest, client: MegalodonInterface, BASE_URL: string, private mastoconverter: MastoConverters) {
this.request = request;
this.client = client;
this.BASE_URL = BASE_URL;
this.mastoconverter = new MastoConverters(config, usersrepo, notesrepo, noteeditrepo, userentity);
}
public async verifyCredentials() {
@ -104,7 +98,9 @@ export class ApiAccountMastodon {
public async getStatuses() {
try {
const data = await this.client.getAccountStatuses((this.request.params as any).id, argsToBools(limitToInt(this.request.query as any)));
return data.data.map((status) => this.mastoconverter.convertStatus(status));
const a = await Promise.all(data.data.map(async (status) => await this.mastoconverter.convertStatus(status)));
console.error(a);
return a;
} catch (e: any) {
console.error(e);
console.error(e.response.data);

View file

@ -18,9 +18,9 @@ export class ApiStatusMastodon {
private fastify: FastifyInstance;
private mastoconverter: MastoConverters;
constructor(fastify: FastifyInstance, config: Config, usersrepo: UsersRepository, notesrepo: NotesRepository, noteeditrepo: NoteEditRepository, userentity: UserEntityService) {
constructor(fastify: FastifyInstance, mastoconverter: MastoConverters) {
this.fastify = fastify;
this.mastoconverter = new MastoConverters(config, usersrepo, notesrepo, noteeditrepo, userentity);
this.mastoconverter = mastoconverter;
}
public async getStatus() {

View file

@ -34,11 +34,9 @@ export function argsToBools(q: ParsedUrlQuery) {
export class ApiTimelineMastodon {
private fastify: FastifyInstance;
private mastoconverter: MastoConverters;
constructor(fastify: FastifyInstance, config: Config, usersRepository: UsersRepository, notesRepository: NotesRepository, noteEditRepository: NoteEditRepository, userEntityService: UserEntityService) {
constructor(fastify: FastifyInstance, config: Config, private mastoconverter: MastoConverters) {
this.fastify = fastify;
this.mastoconverter = new MastoConverters(config, usersRepository, notesRepository, noteEditRepository, userEntityService);
}
public async getTL() {