summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMar0xy <marie@kaifa.ch>2023-10-01 02:06:04 +0200
committerMar0xy <marie@kaifa.ch>2023-10-01 02:06:04 +0200
commit099b86ff3c5f63c0471bcd5e5624bbbcd27ab2f9 (patch)
tree8a7bb4df37c2a6f344a056f9cb7941ac43ffcbd8
parentupd: add MFM to HTML support and Mentions parsing to mastodon api (#33) (diff)
downloadsharkey-099b86ff3c5f63c0471bcd5e5624bbbcd27ab2f9.tar.gz
sharkey-099b86ff3c5f63c0471bcd5e5624bbbcd27ab2f9.tar.bz2
sharkey-099b86ff3c5f63c0471bcd5e5624bbbcd27ab2f9.zip
chore: lint
-rw-r--r--packages/backend/src/core/MfmService.ts7
-rw-r--r--packages/backend/src/server/api/mastodon/MastodonApiServerService.ts8
-rw-r--r--packages/backend/src/server/api/mastodon/converters.ts4
-rw-r--r--packages/frontend/src/components/MkNoteSub.vue2
4 files changed, 7 insertions, 14 deletions
diff --git a/packages/backend/src/core/MfmService.ts b/packages/backend/src/core/MfmService.ts
index 19e2288100..b275d1b142 100644
--- a/packages/backend/src/core/MfmService.ts
+++ b/packages/backend/src/core/MfmService.ts
@@ -339,13 +339,6 @@ export class MfmService {
mention: (node) => {
const a = doc.createElement('a');
const { username, host, acct } = node.props;
-/* if (mastodon) {
- const splitacct = acct.split("@");
- a.setAttribute('href', splitacct[2] !== this.config.host && splitacct[2] !== undefined ? `https://${splitacct[2]}/@${splitacct[1]}` : `https://${this.config.host}/${acct}`);
- a.className = 'u-url mention';
- a.textContent = acct;
- return a;
- } */
const remoteUserInfo = mentionedRemoteUsers.find(remoteUser => remoteUser.username === username && remoteUser.host === host);
a.setAttribute('href', remoteUserInfo ? (remoteUserInfo.url ? remoteUserInfo.url : remoteUserInfo.uri) : `${this.config.url}/${acct}`);
a.className = 'u-url mention';
diff --git a/packages/backend/src/server/api/mastodon/MastodonApiServerService.ts b/packages/backend/src/server/api/mastodon/MastodonApiServerService.ts
index 2653bbdbdf..b0b5147a48 100644
--- a/packages/backend/src/server/api/mastodon/MastodonApiServerService.ts
+++ b/packages/backend/src/server/api/mastodon/MastodonApiServerService.ts
@@ -263,8 +263,8 @@ export class MastodonApiServerService {
// displayed without being logged in
try {
const data = await client.search((_request.query as any).acct, { type: 'accounts' });
- const profile = await this.userProfilesRepository.findOneBy({userId: data.data.accounts[0].id});
- data.data.accounts[0].fields = profile?.fields.map(f => ({...f, verified_at: null})) || [];
+ const profile = await this.userProfilesRepository.findOneBy({ userId: data.data.accounts[0].id });
+ data.data.accounts[0].fields = profile?.fields.map(f => ({ ...f, verified_at: null })) || [];
reply.send(convertAccount(data.data.accounts[0]));
} catch (e: any) {
/* console.error(e); */
@@ -302,8 +302,8 @@ export class MastodonApiServerService {
try {
const sharkId = convertId(_request.params.id, IdType.SharkeyId);
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})) || [];
+ const profile = await this.userProfilesRepository.findOneBy({ userId: sharkId });
+ data.data.fields = profile?.fields.map(f => ({ ...f, verified_at: null })) || [];
reply.send(convertAccount(data.data));
} catch (e: any) {
/* console.error(e);
diff --git a/packages/backend/src/server/api/mastodon/converters.ts b/packages/backend/src/server/api/mastodon/converters.ts
index 4f4524736d..69b0ad93ff 100644
--- a/packages/backend/src/server/api/mastodon/converters.ts
+++ b/packages/backend/src/server/api/mastodon/converters.ts
@@ -67,7 +67,7 @@ export class MastoConverters {
public async getUser(id: string): Promise<MiUser> {
return this.GetterService.getUser(id).then(p => {
return p;
- })
+ });
}
public async convertStatus(status: Entity.Status) {
@@ -94,7 +94,7 @@ export class MastoConverters {
id: convertId(mention.id, IdConvertType.MastodonId),
}));
const convertedMFM = this.MfmService.toHtml(parse(status.content), JSON.parse(note.mentionedRemoteUsers));
- status.content = status.content ? convertedMFM?.replace(/&amp;/g , "&").replaceAll(`<span>&</span><a href="${this.config.url}/tags/39;" rel="tag">#39;</a>` , "<span>\'</span>")! : status.content;
+ status.content = status.content ? convertedMFM?.replace(/&amp;/g, "&").replaceAll(`<span>&</span><a href="${this.config.url}/tags/39;" rel="tag">#39;</a>`, "<span>\'</span>") as string : status.content;
if (status.poll) status.poll = convertPoll(status.poll);
if (status.reblog) status.reblog = convertStatus(status.reblog);
diff --git a/packages/frontend/src/components/MkNoteSub.vue b/packages/frontend/src/components/MkNoteSub.vue
index 36e7c694c4..a5213e1ccc 100644
--- a/packages/frontend/src/components/MkNoteSub.vue
+++ b/packages/frontend/src/components/MkNoteSub.vue
@@ -4,7 +4,7 @@ SPDX-License-Identifier: AGPL-3.0-only
-->
<template>
-<div ref="el" v-if="!muted" :class="[$style.root, { [$style.children]: depth > 1 }]">
+<div v-if="!muted" ref="el" :class="[$style.root, { [$style.children]: depth > 1 }]">
<div :class="$style.main">
<div v-if="note.channel" :class="$style.colorBar" :style="{ background: note.channel.color }"></div>
<MkAvatar :class="$style.avatar" :user="note.user" link preview/>