Merge branch 'develop' into multiple-reactions

This commit is contained in:
syuilo 2024-08-18 13:22:22 +09:00
commit 0ddd4bc545
12 changed files with 35 additions and 17 deletions

View file

@ -17,7 +17,7 @@
- Fix: 特定の条件下でノートの削除ボタンが出ないのを修正 - Fix: 特定の条件下でノートの削除ボタンが出ないのを修正
### Server ### Server
- enhance: 照会時にURLがhtmlかつheadタグ内に`rel="alternate"`, `type="application/activity+json"`の`link`タグがある場合に追ってリンク先を照会できるように - Enhance: 照会時にURLがhtmlかつheadタグ内に`rel="alternate"`, `type="application/activity+json"`の`link`タグがある場合に追ってリンク先を照会できるように
- Enhance: 凍結されたアカウントのフォローリクエストを表示しないように - Enhance: 凍結されたアカウントのフォローリクエストを表示しないように
- Fix: WSの`readAllNotifications` メッセージが `body` を持たない場合に動作しない問題 #14374 - Fix: WSの`readAllNotifications` メッセージが `body` を持たない場合に動作しない問題 #14374
- 通知ページや通知カラム(デッキ)を開いている状態において、新たに発生した通知が既読されない問題が修正されます。 - 通知ページや通知カラム(デッキ)を開いている状態において、新たに発生した通知が既読されない問題が修正されます。

View file

@ -2499,6 +2499,7 @@ _moderationLogTypes:
createAbuseReportNotificationRecipient: "Create a recipient for abuse reports" createAbuseReportNotificationRecipient: "Create a recipient for abuse reports"
updateAbuseReportNotificationRecipient: "Update recipients for abuse reports" updateAbuseReportNotificationRecipient: "Update recipients for abuse reports"
deleteAbuseReportNotificationRecipient: "Delete a recipient for abuse reports" deleteAbuseReportNotificationRecipient: "Delete a recipient for abuse reports"
deleteFlash: "Delete Play"
_fileViewer: _fileViewer:
title: "File details" title: "File details"
type: "File type" type: "File type"

View file

@ -2316,6 +2316,7 @@ _pages:
eyeCatchingImageSet: "设置封面图片" eyeCatchingImageSet: "设置封面图片"
eyeCatchingImageRemove: "删除封面图片" eyeCatchingImageRemove: "删除封面图片"
chooseBlock: "添加块" chooseBlock: "添加块"
enterSectionTitle: "输入会话标题"
selectType: "选择类型" selectType: "选择类型"
contentBlocks: "内容" contentBlocks: "内容"
inputBlocks: "输入" inputBlocks: "输入"
@ -2499,6 +2500,10 @@ _moderationLogTypes:
createAbuseReportNotificationRecipient: "新建了举报通知" createAbuseReportNotificationRecipient: "新建了举报通知"
updateAbuseReportNotificationRecipient: "更新了举报通知" updateAbuseReportNotificationRecipient: "更新了举报通知"
deleteAbuseReportNotificationRecipient: "删除了举报通知" deleteAbuseReportNotificationRecipient: "删除了举报通知"
deleteAccount: "删除了账户"
deletePage: "删除了页面"
deleteFlash: "删除了 Play"
deleteGalleryPost: "删除了图库稿件"
_fileViewer: _fileViewer:
title: "文件信息" title: "文件信息"
type: "文件类型" type: "文件类型"

View file

@ -2316,6 +2316,7 @@ _pages:
eyeCatchingImageSet: "設定封面影像" eyeCatchingImageSet: "設定封面影像"
eyeCatchingImageRemove: "刪除封面影像" eyeCatchingImageRemove: "刪除封面影像"
chooseBlock: "新增方塊" chooseBlock: "新增方塊"
enterSectionTitle: "輸入區段的標題"
selectType: "選擇類型" selectType: "選擇類型"
contentBlocks: "內容" contentBlocks: "內容"
inputBlocks: "輸入" inputBlocks: "輸入"
@ -2499,6 +2500,10 @@ _moderationLogTypes:
createAbuseReportNotificationRecipient: "建立接收檢舉的通知對象" createAbuseReportNotificationRecipient: "建立接收檢舉的通知對象"
updateAbuseReportNotificationRecipient: "更新接收檢舉的通知對象" updateAbuseReportNotificationRecipient: "更新接收檢舉的通知對象"
deleteAbuseReportNotificationRecipient: "刪除接收檢舉的通知對象" deleteAbuseReportNotificationRecipient: "刪除接收檢舉的通知對象"
deleteAccount: "刪除帳戶"
deletePage: "刪除頁面"
deleteFlash: "刪除 Play"
deleteGalleryPost: "刪除相簿的貼文"
_fileViewer: _fileViewer:
title: "檔案詳細資訊" title: "檔案詳細資訊"
type: "檔案類型 " type: "檔案類型 "

View file

@ -203,7 +203,9 @@ export class ApRequestService {
}); });
//#region リクエスト先がhtmlかつactivity+jsonへのalternate linkタグがあるとき //#region リクエスト先がhtmlかつactivity+jsonへのalternate linkタグがあるとき
if (res.headers.get('Content-type')?.startsWith('text/html;') && _followAlternate === true) { const contentType = res.headers.get('content-type');
if ((contentType ?? '').split(';')[0].trimEnd().toLowerCase() === 'text/html' && _followAlternate === true) {
const html = await res.text(); const html = await res.text();
const window = new Window(); const window = new Window();
const document = window.document; const document = window.document;

View file

@ -5,7 +5,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template> <template>
<div :class="$style.preview"> <div :class="$style.preview">
<div :class="$style.preview__content1"> <div>
<MkInput v-model="text"> <MkInput v-model="text">
<template #label>Text</template> <template #label>Text</template>
</MkInput> </MkInput>

View file

@ -25,7 +25,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<span :class="$style.bodyName">{{ role.name }}</span> <span :class="$style.bodyName">{{ role.name }}</span>
<template v-if="detailed"> <template v-if="detailed">
<span v-if="role.target === 'manual'" :class="$style.bodyUsers">{{ role.usersCount }} users</span> <span v-if="role.target === 'manual'" :class="$style.bodyUsers">{{ role.usersCount }} users</span>
<span v-else-if="role.target === 'conditional'" :class="$style.bodyUsers">({{ i18n.ts._role.conditional }})</span> <span v-else-if="role.target === 'conditional'" :class="$style.bodyUsers">? users</span>
</template> </template>
</div> </div>
<div :class="$style.bodyDescription">{{ role.description }}</div> <div :class="$style.bodyDescription">{{ role.description }}</div>

View file

@ -72,10 +72,6 @@ SPDX-License-Identifier: AGPL-3.0-only
<img src="https://avatars.githubusercontent.com/u/4439005?v=4" :class="$style.contributorAvatar"> <img src="https://avatars.githubusercontent.com/u/4439005?v=4" :class="$style.contributorAvatar">
<span :class="$style.contributorUsername">@syuilo</span> <span :class="$style.contributorUsername">@syuilo</span>
</a> </a>
<a href="https://github.com/tamaina" target="_blank" :class="$style.contributor">
<img src="https://avatars.githubusercontent.com/u/7973572?v=4" :class="$style.contributorAvatar">
<span :class="$style.contributorUsername">@tamaina</span>
</a>
<a href="https://github.com/acid-chicken" target="_blank" :class="$style.contributor"> <a href="https://github.com/acid-chicken" target="_blank" :class="$style.contributor">
<img src="https://avatars.githubusercontent.com/u/20679825?v=4" :class="$style.contributorAvatar"> <img src="https://avatars.githubusercontent.com/u/20679825?v=4" :class="$style.contributorAvatar">
<span :class="$style.contributorUsername">@acid-chicken</span> <span :class="$style.contributorUsername">@acid-chicken</span>

View file

@ -236,10 +236,12 @@ function reportAbuse() {
const pageUrl = `${url}/play/${flash.value.id}`; const pageUrl = `${url}/play/${flash.value.id}`;
os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), { const { dispose } = os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), {
user: flash.value.user, user: flash.value.user,
initialComment: `Play: ${pageUrl}\n-----\n`, initialComment: `Play: ${pageUrl}\n-----\n`,
}, {}, 'closed'); }, {
closed: () => dispose(),
});
} }
function showMenu(ev: MouseEvent) { function showMenu(ev: MouseEvent) {

View file

@ -160,10 +160,12 @@ function reportAbuse() {
const pageUrl = `${url}/gallery/${post.value.id}`; const pageUrl = `${url}/gallery/${post.value.id}`;
os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), { const { dispose } = os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), {
user: post.value.user, user: post.value.user,
initialComment: `Post: ${pageUrl}\n-----\n`, initialComment: `Post: ${pageUrl}\n-----\n`,
}, {}, 'closed'); }, {
closed: () => dispose(),
});
} }
function showMenu(ev: MouseEvent) { function showMenu(ev: MouseEvent) {

View file

@ -245,10 +245,12 @@ function reportAbuse() {
const pageUrl = `${url}/@${props.username}/pages/${props.pageName}`; const pageUrl = `${url}/@${props.username}/pages/${props.pageName}`;
os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), { const { dispose } = os.popup(defineAsyncComponent(() => import('@/components/MkAbuseReportWindow.vue')), {
user: page.value.user, user: page.value.user,
initialComment: `Page: ${pageUrl}\n-----\n`, initialComment: `Page: ${pageUrl}\n-----\n`,
}, {}, 'closed'); }, {
closed: () => dispose(),
});
} }
function showMenu(ev: MouseEvent) { function showMenu(ev: MouseEvent) {

View file

@ -4,9 +4,12 @@ import type {
Ad, Ad,
Announcement, Announcement,
EmojiDetailed, EmojiDetailed,
Flash,
GalleryPost,
InviteCode, InviteCode,
MetaDetailed, MetaDetailed,
Note, Note,
Page,
Role, Role,
ReversiGameDetailed, ReversiGameDetailed,
SystemWebhook, SystemWebhook,
@ -405,18 +408,18 @@ export type ModerationLogPayloads = {
pageId: string; pageId: string;
pageUserId: string; pageUserId: string;
pageUserUsername: string; pageUserUsername: string;
page: any; page: Page;
}; };
deleteFlash: { deleteFlash: {
flashId: string; flashId: string;
flashUserId: string; flashUserId: string;
flashUserUsername: string; flashUserUsername: string;
flash: any; flash: Flash;
}; };
deleteGalleryPost: { deleteGalleryPost: {
postId: string; postId: string;
postUserId: string; postUserId: string;
postUserUsername: string; postUserUsername: string;
post: any; post: GalleryPost;
}; };
}; };