diff --git a/locales/index.d.ts b/locales/index.d.ts
index ebb48095f9..5618c2d5a1 100644
--- a/locales/index.d.ts
+++ b/locales/index.d.ts
@@ -2033,6 +2033,7 @@ export interface Locale {
"e": string;
"f": string;
};
+ "guidelineInfo": string;
};
"_profile": {
"name": string;
diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index fcf06f8403..e0d4e356c6 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -1948,6 +1948,7 @@ _postForm:
d: "言いたいことは?"
e: "ここに書いてください"
f: "あなたが書くのを待っています..."
+ guidelineInfo: "[NSFWガイドライン]({nsfwGuideUrl})を必ずお読みになってからご利用ください。"
_profile:
name: "名前"
diff --git a/packages/backend/src/server/api/stream/channels/role-timeline.ts b/packages/backend/src/server/api/stream/channels/role-timeline.ts
index 38d3604cc5..870764fa49 100644
--- a/packages/backend/src/server/api/stream/channels/role-timeline.ts
+++ b/packages/backend/src/server/api/stream/channels/role-timeline.ts
@@ -46,6 +46,19 @@ class RoleTimelineChannel extends Channel {
}
if (note.visibility !== 'public') return;
+ // リプライなら再pack
+ if (note.replyId != null) {
+ note.reply = await this.noteEntityService.pack(note.replyId, this.user, {
+ detail: true,
+ });
+ }
+ // Renoteなら再pack
+ if (note.renoteId != null) {
+ note.renote = await this.noteEntityService.pack(note.renoteId, this.user, {
+ detail: true,
+ });
+ }
+
// 流れてきたNoteがミュートしているユーザーが関わるものだったら無視する
if (isUserRelated(note, this.userIdsWhoMeMuting)) return;
// 流れてきたNoteがブロックされているユーザーが関わるものだったら無視する
diff --git a/packages/frontend/src/components/MkDialog.vue b/packages/frontend/src/components/MkDialog.vue
index a83c18c0b3..29a11c3b00 100644
--- a/packages/frontend/src/components/MkDialog.vue
+++ b/packages/frontend/src/components/MkDialog.vue
@@ -27,13 +27,22 @@ SPDX-License-Identifier: AGPL-3.0-only