diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index f81338922..139643f72 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -857,6 +857,7 @@ check: "チェック"
isSystemAccount: "システムにより自動で作成・管理されているアカウントです。"
typeToConfirm: "この操作を行うには {x} と入力してください"
deleteAccount: "アカウント削除"
+document: "ドキュメント"
_emailUnavailable:
used: "既に使用されています"
diff --git a/packages/client/src/components/launch-pad.vue b/packages/client/src/components/launch-pad.vue
index ffefc1b08..a6025f8b2 100644
--- a/packages/client/src/components/launch-pad.vue
+++ b/packages/client/src/components/launch-pad.vue
@@ -16,13 +16,13 @@
-
+
+
- {{ $t('aboutX', { x: instanceName }) }}
+ {{ $ts.instanceInfo }}
@@ -34,13 +34,14 @@
diff --git a/packages/client/src/pages/about.vue b/packages/client/src/pages/about.vue
index c0226bdb6..bacfab771 100644
--- a/packages/client/src/pages/about.vue
+++ b/packages/client/src/pages/about.vue
@@ -67,6 +67,12 @@
+
+
+
+
+
+
@@ -75,6 +81,8 @@
-
-
diff --git a/packages/client/src/pages/federation.vue b/packages/client/src/pages/federation.vue
deleted file mode 100644
index 07c5a32bd..000000000
--- a/packages/client/src/pages/federation.vue
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
-
-
-
-
-
-
- {{ $ts.host }}
-
-
-
- {{ $ts.state }}
-
-
-
-
-
-
-
-
-
- {{ $ts.sort }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/client/src/pages/mentions.vue b/packages/client/src/pages/mentions.vue
deleted file mode 100644
index 0835f1f01..000000000
--- a/packages/client/src/pages/mentions.vue
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/packages/client/src/pages/messages.vue b/packages/client/src/pages/messages.vue
deleted file mode 100644
index e443b5c46..000000000
--- a/packages/client/src/pages/messages.vue
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/packages/client/src/pages/notifications.vue b/packages/client/src/pages/notifications.vue
index 52cb298fa..3df1a3f17 100644
--- a/packages/client/src/pages/notifications.vue
+++ b/packages/client/src/pages/notifications.vue
@@ -2,8 +2,14 @@
-
-
+
+
+
+
+
+
+
+
@@ -13,12 +19,27 @@
import { computed } from 'vue';
import { notificationTypes } from 'misskey-js';
import XNotifications from '@/components/notifications.vue';
+import XNotes from '@/components/notes.vue';
import * as os from '@/os';
import { i18n } from '@/i18n';
import { definePageMetadata } from '@/scripts/page-metadata';
let tab = $ref('all');
let includeTypes = $ref
(null);
+let unreadOnly = $computed(() => tab === 'unread');
+
+const mentionsPagination = {
+ endpoint: 'notes/mentions' as const,
+ limit: 10,
+};
+
+const directNotesPagination = {
+ endpoint: 'notes/mentions' as const,
+ limit: 10,
+ params: {
+ visibility: 'specified',
+ },
+};
function setFilter(ev) {
const typeItems = notificationTypes.map(t => ({
@@ -38,18 +59,18 @@ function setFilter(ev) {
os.popupMenu(items, ev.currentTarget ?? ev.target);
}
-const headerActions = $computed(() => [{
+const headerActions = $computed(() => [tab === 'all' ? {
text: i18n.ts.filter,
icon: 'fas fa-filter',
highlighted: includeTypes != null,
handler: setFilter,
-}, {
+} : undefined, tab === 'all' ? {
text: i18n.ts.markAllAsRead,
icon: 'fas fa-check',
handler: () => {
os.apiWithDialog('notifications/mark-all-as-read');
},
-}]);
+} : undefined].filter(x => x !== undefined));
const headerTabs = $computed(() => [{
key: 'all',
@@ -57,6 +78,14 @@ const headerTabs = $computed(() => [{
}, {
key: 'unread',
title: i18n.ts.unread,
+}, {
+ key: 'mentions',
+ title: i18n.ts.mentions,
+ icon: 'fas fa-at',
+}, {
+ key: 'directNotes',
+ title: i18n.ts.directNotes,
+ icon: 'fas fa-envelope',
}]);
definePageMetadata(computed(() => ({
@@ -65,8 +94,3 @@ definePageMetadata(computed(() => ({
bg: 'var(--bg)',
})));
-
-
diff --git a/packages/client/src/pages/user/index.activity.vue b/packages/client/src/pages/user/index.activity.vue
index aecd25d6b..8a7a86e0f 100644
--- a/packages/client/src/pages/user/index.activity.vue
+++ b/packages/client/src/pages/user/index.activity.vue
@@ -1,6 +1,6 @@
- {{ $ts.activity }}
+ {{ $ts.activity }}