enhance(frontend): チャットの日本語名称をダイレクトメッセージに & ベータを外す

This commit is contained in:
syuilo 2025-09-16 16:24:10 +09:00
parent df3e44f62e
commit b231da7c7c
10 changed files with 111 additions and 90 deletions

View File

@ -4,6 +4,7 @@
- Enhance: 広告ごとにセンシティブフラグを設定できるようになりました - Enhance: 広告ごとにセンシティブフラグを設定できるようになりました
### Client ### Client
- Enhance: チャットの日本語名称がダイレクトメッセージに戻るとともに、ベータ版機能ではなくなりました
- Enhance: 時刻計算のための基準値を一か所で管理するようにし、パフォーマンスを向上 - Enhance: 時刻計算のための基準値を一か所で管理するようにし、パフォーマンスを向上
### Server ### Server

96
locales/index.d.ts vendored
View File

@ -1227,7 +1227,7 @@ export interface Locale extends ILocale {
*/ */
"noMoreHistory": string; "noMoreHistory": string;
/** /**
* *
*/ */
"startChat": string; "startChat": string;
/** /**
@ -1927,7 +1927,7 @@ export interface Locale extends ILocale {
*/ */
"markAsReadAllUnreadNotes": string; "markAsReadAllUnreadNotes": string;
/** /**
* *
*/ */
"markAsReadAllTalkMessages": string; "markAsReadAllTalkMessages": string;
/** /**
@ -5390,6 +5390,14 @@ export interface Locale extends ILocale {
* *
*/ */
"chat": string; "chat": string;
/**
*
*/
"directMessage": string;
/**
*
*/
"directMessage_short": string;
/** /**
* *
*/ */
@ -5529,6 +5537,10 @@ export interface Locale extends ILocale {
* *
*/ */
"thankYouForTestingBeta": string; "thankYouForTestingBeta": string;
/**
*
*/
"createUserSpecifiedNote": string;
"_order": { "_order": {
/** /**
* *
@ -5540,6 +5552,10 @@ export interface Locale extends ILocale {
"oldest": string; "oldest": string;
}; };
"_chat": { "_chat": {
/**
*
*/
"messages": string;
/** /**
* *
*/ */
@ -5549,36 +5565,36 @@ export interface Locale extends ILocale {
*/ */
"newMessage": string; "newMessage": string;
/** /**
* *
*/ */
"individualChat": string; "individualChat": string;
/** /**
* *
*/ */
"individualChat_description": string; "individualChat_description": string;
/** /**
* *
*/ */
"roomChat": string; "roomChat": string;
/** /**
* *
* *
*/ */
"roomChat_description": string; "roomChat_description": string;
/** /**
* *
*/ */
"createRoom": string; "createRoom": string;
/** /**
* *
*/ */
"inviteUserToChat": string; "inviteUserToChat": string;
/** /**
* *
*/ */
"yourRooms": string; "yourRooms": string;
/** /**
* *
*/ */
"joiningRooms": string; "joiningRooms": string;
/** /**
@ -5598,7 +5614,7 @@ export interface Locale extends ILocale {
*/ */
"noHistory": string; "noHistory": string;
/** /**
* *
*/ */
"noRooms": string; "noRooms": string;
/** /**
@ -5618,7 +5634,7 @@ export interface Locale extends ILocale {
*/ */
"ignore": string; "ignore": string;
/** /**
* 退 * 退
*/ */
"leave": string; "leave": string;
/** /**
@ -5642,35 +5658,35 @@ export interface Locale extends ILocale {
*/ */
"newline": string; "newline": string;
/** /**
* *
*/ */
"muteThisRoom": string; "muteThisRoom": string;
/** /**
* *
*/ */
"deleteRoom": string; "deleteRoom": string;
/** /**
* *
*/ */
"chatNotAvailableForThisAccountOrServer": string; "chatNotAvailableForThisAccountOrServer": string;
/** /**
* *
*/ */
"chatIsReadOnlyForThisAccountOrServer": string; "chatIsReadOnlyForThisAccountOrServer": string;
/** /**
* 使 * 使
*/ */
"chatNotAvailableInOtherAccount": string; "chatNotAvailableInOtherAccount": string;
/** /**
* *
*/ */
"cannotChatWithTheUser": string; "cannotChatWithTheUser": string;
/** /**
* 使 * 使
*/ */
"cannotChatWithTheUser_description": string; "cannotChatWithTheUser_description": string;
/** /**
* *
*/ */
"youAreNotAMemberOfThisRoomButInvited": string; "youAreNotAMemberOfThisRoomButInvited": string;
/** /**
@ -5678,31 +5694,31 @@ export interface Locale extends ILocale {
*/ */
"doYouAcceptInvitation": string; "doYouAcceptInvitation": string;
/** /**
* *
*/ */
"chatWithThisUser": string; "chatWithThisUser": string;
/** /**
* *
*/ */
"thisUserAllowsChatOnlyFromFollowers": string; "thisUserAllowsChatOnlyFromFollowers": string;
/** /**
* *
*/ */
"thisUserAllowsChatOnlyFromFollowing": string; "thisUserAllowsChatOnlyFromFollowing": string;
/** /**
* *
*/ */
"thisUserAllowsChatOnlyFromMutualFollowing": string; "thisUserAllowsChatOnlyFromMutualFollowing": string;
/** /**
* *
*/ */
"thisUserNotAllowedChatAnyone": string; "thisUserNotAllowedChatAnyone": string;
/** /**
* *
*/ */
"chatAllowedUsers": string; "chatAllowedUsers": string;
/** /**
* *
*/ */
"chatAllowedUsers_note": string; "chatAllowedUsers_note": string;
"_chatAllowedUsers": { "_chatAllowedUsers": {
@ -7856,7 +7872,7 @@ export interface Locale extends ILocale {
*/ */
"canImportUserLists": string; "canImportUserLists": string;
/** /**
* *
*/ */
"chatAvailability": string; "chatAvailability": string;
/** /**
@ -8706,7 +8722,7 @@ export interface Locale extends ILocale {
*/ */
"badge": string; "badge": string;
/** /**
* *
*/ */
"messageBg": string; "messageBg": string;
/** /**
@ -8733,7 +8749,7 @@ export interface Locale extends ILocale {
*/ */
"reaction": string; "reaction": string;
/** /**
* *
*/ */
"chatMessage": string; "chatMessage": string;
}; };
@ -9017,11 +9033,11 @@ export interface Locale extends ILocale {
*/ */
"write:following": string; "write:following": string;
/** /**
* *
*/ */
"read:messaging": string; "read:messaging": string;
/** /**
* *
*/ */
"write:messaging": string; "write:messaging": string;
/** /**
@ -9313,11 +9329,11 @@ export interface Locale extends ILocale {
*/ */
"write:report-abuse": string; "write:report-abuse": string;
/** /**
* *
*/ */
"write:chat": string; "write:chat": string;
/** /**
* *
*/ */
"read:chat": string; "read:chat": string;
}; };
@ -9543,7 +9559,7 @@ export interface Locale extends ILocale {
*/ */
"birthdayFollowings": string; "birthdayFollowings": string;
/** /**
* *
*/ */
"chat": string; "chat": string;
}; };
@ -10283,7 +10299,7 @@ export interface Locale extends ILocale {
*/ */
"roleAssigned": string; "roleAssigned": string;
/** /**
* *
*/ */
"chatRoomInvitationReceived": string; "chatRoomInvitationReceived": string;
/** /**
@ -10396,7 +10412,7 @@ export interface Locale extends ILocale {
*/ */
"roleAssigned": string; "roleAssigned": string;
/** /**
* *
*/ */
"chatRoomInvitationReceived": string; "chatRoomInvitationReceived": string;
/** /**
@ -10578,7 +10594,7 @@ export interface Locale extends ILocale {
*/ */
"roleTimeline": string; "roleTimeline": string;
/** /**
* *
*/ */
"chat": string; "chat": string;
}; };
@ -10945,7 +10961,7 @@ export interface Locale extends ILocale {
*/ */
"deleteGalleryPost": string; "deleteGalleryPost": string;
/** /**
* *
*/ */
"deleteChatRoom": string; "deleteChatRoom": string;
/** /**

View File

@ -302,7 +302,7 @@ uploadNFiles: "{n}個のファイルをアップロード"
explore: "みつける" explore: "みつける"
messageRead: "既読" messageRead: "既読"
noMoreHistory: "これより過去の履歴はありません" noMoreHistory: "これより過去の履歴はありません"
startChat: "チャットを始める" startChat: "メッセージを送る"
nUsersRead: "{n}人が読みました" nUsersRead: "{n}人が読みました"
agreeTo: "{0}に同意" agreeTo: "{0}に同意"
agree: "同意する" agree: "同意する"
@ -477,7 +477,7 @@ notFoundDescription: "指定されたURLに該当するページはありませ
uploadFolder: "既定アップロード先" uploadFolder: "既定アップロード先"
markAsReadAllNotifications: "すべての通知を既読にする" markAsReadAllNotifications: "すべての通知を既読にする"
markAsReadAllUnreadNotes: "すべての投稿を既読にする" markAsReadAllUnreadNotes: "すべての投稿を既読にする"
markAsReadAllTalkMessages: "すべてのチャットを既読にする" markAsReadAllTalkMessages: "すべてのダイレクトメッセージを既読にする"
help: "ヘルプ" help: "ヘルプ"
inputMessageHere: "ここにメッセージを入力" inputMessageHere: "ここにメッセージを入力"
close: "閉じる" close: "閉じる"
@ -1343,6 +1343,8 @@ postForm: "投稿フォーム"
textCount: "文字数" textCount: "文字数"
information: "情報" information: "情報"
chat: "チャット" chat: "チャット"
directMessage: "ダイレクトメッセージ"
directMessage_short: "メッセージ"
migrateOldSettings: "旧設定情報を移行" migrateOldSettings: "旧設定情報を移行"
migrateOldSettings_description: "通常これは自動で行われていますが、何らかの理由により上手く移行されなかった場合は手動で移行処理をトリガーできます。現在の設定情報は上書きされます。" migrateOldSettings_description: "通常これは自動で行われていますが、何らかの理由により上手く移行されなかった場合は手動で移行処理をトリガーできます。現在の設定情報は上書きされます。"
compress: "圧縮" compress: "圧縮"
@ -1377,53 +1379,55 @@ pluginsAreDisabledBecauseSafeMode: "セーフモードが有効なため、プ
customCssIsDisabledBecauseSafeMode: "セーフモードが有効なため、カスタムCSSは適用されていません。" customCssIsDisabledBecauseSafeMode: "セーフモードが有効なため、カスタムCSSは適用されていません。"
themeIsDefaultBecauseSafeMode: "セーフモードが有効な間はデフォルトのテーマが使用されます。セーフモードをオフにすると元に戻ります。" themeIsDefaultBecauseSafeMode: "セーフモードが有効な間はデフォルトのテーマが使用されます。セーフモードをオフにすると元に戻ります。"
thankYouForTestingBeta: "ベータ版の検証にご協力いただきありがとうございます!" thankYouForTestingBeta: "ベータ版の検証にご協力いただきありがとうございます!"
createUserSpecifiedNote: "ユーザー指定ノートを作成"
_order: _order:
newest: "新しい順" newest: "新しい順"
oldest: "古い順" oldest: "古い順"
_chat: _chat:
messages: "メッセージ"
noMessagesYet: "まだメッセージはありません" noMessagesYet: "まだメッセージはありません"
newMessage: "新しいメッセージ" newMessage: "新しいメッセージ"
individualChat: "個人チャット" individualChat: "個"
individualChat_description: "特定ユーザーとの一対一のチャットができます。" individualChat_description: "特定ユーザーと個別にメッセージのやりとりができます。"
roomChat: "ルームチャット" roomChat: "グループ"
roomChat_description: "複数人でのチャットができます。\nまた、個人チャットを許可していないユーザーとでも、相手が受け入れればチャットができます。" roomChat_description: "複数人でメッセージのやりとりができます。\nまた、個別のメッセージを許可していないユーザーとでも、相手が受け入れればやりとりできます。"
createRoom: "ルームを作成" createRoom: "グループを作成"
inviteUserToChat: "ユーザーを招待してチャットを始めましょう" inviteUserToChat: "ユーザーを招待してメッセージを送信しましょう"
yourRooms: "作成したルーム" yourRooms: "作成したグループ"
joiningRooms: "参加中のルーム" joiningRooms: "参加中のグループ"
invitations: "招待" invitations: "招待"
noInvitations: "招待はありません" noInvitations: "招待はありません"
history: "履歴" history: "履歴"
noHistory: "履歴はありません" noHistory: "履歴はありません"
noRooms: "ルームはありません" noRooms: "グループはありません"
inviteUser: "ユーザーを招待" inviteUser: "ユーザーを招待"
sentInvitations: "送信した招待" sentInvitations: "送信した招待"
join: "参加" join: "参加"
ignore: "無視" ignore: "無視"
leave: "ルームから退出" leave: "グループから退出"
members: "メンバー" members: "メンバー"
searchMessages: "メッセージを検索" searchMessages: "メッセージを検索"
home: "ホーム" home: "ホーム"
send: "送信" send: "送信"
newline: "改行" newline: "改行"
muteThisRoom: "このルームをミュート" muteThisRoom: "このグループをミュート"
deleteRoom: "ルームを削除" deleteRoom: "グループを削除"
chatNotAvailableForThisAccountOrServer: "このサーバー、またはこのアカウントでチャットは有効化されていません。" chatNotAvailableForThisAccountOrServer: "このサーバー、またはこのアカウントでダイレクトメッセージは有効化されていません。"
chatIsReadOnlyForThisAccountOrServer: "このサーバー、またはこのアカウントでチャットは読み取り専用となっています。新たに書き込んだり、チャットルームを作成・参加したりすることはできません。" chatIsReadOnlyForThisAccountOrServer: "このサーバー、またはこのアカウントでダイレクトメッセージは読み取り専用となっています。新たに書き込んだり、グループを作成・参加したりすることはできません。"
chatNotAvailableInOtherAccount: "相手のアカウントでチャット機能が使えない状態になっています。" chatNotAvailableInOtherAccount: "相手のアカウントでダイレクトメッセージが使えない状態になっています。"
cannotChatWithTheUser: "このユーザーとのチャットを開始できません" cannotChatWithTheUser: "このユーザーとのダイレクトメッセージを開始できません"
cannotChatWithTheUser_description: "チャットが使えない状態になっているか、相手がチャットを開放していません。" cannotChatWithTheUser_description: "ダイレクトメッセージが使えない状態になっているか、相手がダイレクトメッセージを開放していません。"
youAreNotAMemberOfThisRoomButInvited: "あなたはこのルームの参加者ではありませんが、招待が届いています。参加するには、招待を承認してください。" youAreNotAMemberOfThisRoomButInvited: "あなたはこのグループの参加者ではありませんが、招待が届いています。参加するには、招待を承認してください。"
doYouAcceptInvitation: "招待を承認しますか?" doYouAcceptInvitation: "招待を承認しますか?"
chatWithThisUser: "チャットする" chatWithThisUser: "ダイレクトメッセージ"
thisUserAllowsChatOnlyFromFollowers: "このユーザーはフォロワーからのみチャットを受け付けています。" thisUserAllowsChatOnlyFromFollowers: "このユーザーはフォロワーからのみメッセージを受け付けています。"
thisUserAllowsChatOnlyFromFollowing: "このユーザーは、このユーザーがフォローしているユーザーからのみチャットを受け付けています。" thisUserAllowsChatOnlyFromFollowing: "このユーザーは、このユーザーがフォローしているユーザーからのみメッセージを受け付けています。"
thisUserAllowsChatOnlyFromMutualFollowing: "このユーザーは相互フォローのユーザーからのみチャットを受け付けています。" thisUserAllowsChatOnlyFromMutualFollowing: "このユーザーは相互フォローのユーザーからのみメッセージを受け付けています。"
thisUserNotAllowedChatAnyone: "このユーザーは誰からもチャットを受け付けていません。" thisUserNotAllowedChatAnyone: "このユーザーは誰からもメッセージを受け付けていません。"
chatAllowedUsers: "チャットを許可する相手" chatAllowedUsers: "メッセージを許可する相手"
chatAllowedUsers_note: "自分からチャットメッセージを送った相手とはこの設定に関わらずチャットが可能です。" chatAllowedUsers_note: "自分からメッセージを送った相手とはこの設定に関わらずメッセージの送受信が可能です。"
_chatAllowedUsers: _chatAllowedUsers:
everyone: "誰でも" everyone: "誰でも"
followers: "自分のフォロワーのみ" followers: "自分のフォロワーのみ"
@ -2034,7 +2038,7 @@ _role:
canImportFollowing: "フォローのインポートを許可" canImportFollowing: "フォローのインポートを許可"
canImportMuting: "ミュートのインポートを許可" canImportMuting: "ミュートのインポートを許可"
canImportUserLists: "リストのインポートを許可" canImportUserLists: "リストのインポートを許可"
chatAvailability: "チャットを許可" chatAvailability: "ダイレクトメッセージを許可"
uploadableFileTypes: "アップロード可能なファイル種別" uploadableFileTypes: "アップロード可能なファイル種別"
uploadableFileTypes_caption: "MIMEタイプを指定します。改行で区切って複数指定できるほか、アスタリスク(*)でワイルドカード指定できます。(例: image/*)" uploadableFileTypes_caption: "MIMEタイプを指定します。改行で区切って複数指定できるほか、アスタリスク(*)でワイルドカード指定できます。(例: image/*)"
uploadableFileTypes_caption2: "ファイルによっては種別を判定できないことがあります。そのようなファイルを許可する場合は {x} を指定に追加してください。" uploadableFileTypes_caption2: "ファイルによっては種別を判定できないことがあります。そのようなファイルを許可する場合は {x} を指定に追加してください。"
@ -2281,7 +2285,7 @@ _theme:
buttonHoverBg: "ボタンの背景 (ホバー)" buttonHoverBg: "ボタンの背景 (ホバー)"
inputBorder: "入力ボックスの縁取り" inputBorder: "入力ボックスの縁取り"
badge: "バッジ" badge: "バッジ"
messageBg: "チャットの背景" messageBg: "メッセージの背景"
fgHighlighted: "強調された文字" fgHighlighted: "強調された文字"
_sfx: _sfx:
@ -2289,7 +2293,7 @@ _sfx:
noteMy: "ノート(自分)" noteMy: "ノート(自分)"
notification: "通知" notification: "通知"
reaction: "リアクション選択時" reaction: "リアクション選択時"
chatMessage: "チャットのメッセージ" chatMessage: "ダイレクトメッセージ"
_soundSettings: _soundSettings:
driveFile: "ドライブの音声を使用" driveFile: "ドライブの音声を使用"
@ -2369,8 +2373,8 @@ _permissions:
"write:favorites": "お気に入りを操作する" "write:favorites": "お気に入りを操作する"
"read:following": "フォローの情報を見る" "read:following": "フォローの情報を見る"
"write:following": "フォロー・フォロー解除する" "write:following": "フォロー・フォロー解除する"
"read:messaging": "チャットを見る" "read:messaging": "ダイレクトメッセージを見る"
"write:messaging": "チャットを操作する" "write:messaging": "ダイレクトメッセージを操作する"
"read:mutes": "ミュートを見る" "read:mutes": "ミュートを見る"
"write:mutes": "ミュートを操作する" "write:mutes": "ミュートを操作する"
"write:notes": "ノートを作成・削除する" "write:notes": "ノートを作成・削除する"
@ -2443,8 +2447,8 @@ _permissions:
"read:clip-favorite": "クリップのいいねを見る" "read:clip-favorite": "クリップのいいねを見る"
"read:federation": "連合に関する情報を取得する" "read:federation": "連合に関する情報を取得する"
"write:report-abuse": "違反を報告する" "write:report-abuse": "違反を報告する"
"write:chat": "チャットを操作する" "write:chat": "ダイレクトメッセージを操作する"
"read:chat": "チャットを閲覧する" "read:chat": "ダイレクトメッセージを閲覧する"
_auth: _auth:
shareAccessTitle: "アプリへのアクセス許可" shareAccessTitle: "アプリへのアクセス許可"
@ -2507,7 +2511,7 @@ _widgets:
chooseList: "リストを選択" chooseList: "リストを選択"
clicker: "クリッカー" clicker: "クリッカー"
birthdayFollowings: "今日誕生日のユーザー" birthdayFollowings: "今日誕生日のユーザー"
chat: "チャット" chat: "ダイレクトメッセージ"
_cw: _cw:
hide: "隠す" hide: "隠す"
@ -2714,7 +2718,7 @@ _notification:
newNote: "新しい投稿" newNote: "新しい投稿"
unreadAntennaNote: "アンテナ {name}" unreadAntennaNote: "アンテナ {name}"
roleAssigned: "ロールが付与されました" roleAssigned: "ロールが付与されました"
chatRoomInvitationReceived: "チャットルームへ招待されました" chatRoomInvitationReceived: "ダイレクトメッセージのグループへ招待されました"
emptyPushNotificationMessage: "プッシュ通知の更新をしました" emptyPushNotificationMessage: "プッシュ通知の更新をしました"
achievementEarned: "実績を獲得" achievementEarned: "実績を獲得"
testNotification: "通知テスト" testNotification: "通知テスト"
@ -2744,7 +2748,7 @@ _notification:
receiveFollowRequest: "フォロー申請を受け取った" receiveFollowRequest: "フォロー申請を受け取った"
followRequestAccepted: "フォローが受理された" followRequestAccepted: "フォローが受理された"
roleAssigned: "ロールが付与された" roleAssigned: "ロールが付与された"
chatRoomInvitationReceived: "チャットルームへ招待された" chatRoomInvitationReceived: "ダイレクトメッセージのグループへ招待された"
achievementEarned: "実績の獲得" achievementEarned: "実績の獲得"
exportCompleted: "エクスポートが完了した" exportCompleted: "エクスポートが完了した"
login: "ログイン" login: "ログイン"
@ -2794,7 +2798,7 @@ _deck:
mentions: "メンション" mentions: "メンション"
direct: "指名" direct: "指名"
roleTimeline: "ロールタイムライン" roleTimeline: "ロールタイムライン"
chat: "チャット" chat: "ダイレクトメッセージ"
_dialog: _dialog:
charactersExceeded: "最大文字数を超えています! 現在 {current} / 制限 {max}" charactersExceeded: "最大文字数を超えています! 現在 {current} / 制限 {max}"
@ -2897,7 +2901,7 @@ _moderationLogTypes:
deletePage: "ページを削除" deletePage: "ページを削除"
deleteFlash: "Playを削除" deleteFlash: "Playを削除"
deleteGalleryPost: "ギャラリーの投稿を削除" deleteGalleryPost: "ギャラリーの投稿を削除"
deleteChatRoom: "チャットルームを削除" deleteChatRoom: "ダイレクトメッセージのグループを削除"
updateProxyAccountDescription: "プロキシアカウントの説明を更新" updateProxyAccountDescription: "プロキシアカウントの説明を更新"
_fileViewer: _fileViewer:

View File

@ -111,7 +111,7 @@ export const navbarItemDef = reactive({
to: '/channels', to: '/channels',
}, },
chat: { chat: {
title: i18n.ts.chat, title: i18n.ts.directMessage_short,
icon: 'ti ti-messages', icon: 'ti ti-messages',
to: '/chat', to: '/chat',
show: computed(() => $i != null && $i.policies.chatAvailability !== 'unavailable'), show: computed(() => $i != null && $i.policies.chatAvailability !== 'unavailable'),

View File

@ -48,7 +48,7 @@ const headerTabs = computed(() => [{
}]); }]);
definePage(() => ({ definePage(() => ({
title: i18n.ts.chat + ' (beta)', title: i18n.ts.directMessage,
icon: 'ti ti-messages', icon: 'ti ti-messages',
})); }));
</script> </script>

View File

@ -46,6 +46,6 @@ onMounted(() => {
}); });
definePage({ definePage({
title: i18n.ts.chat, title: i18n.ts.directMessage,
}); });
</script> </script>

View File

@ -421,7 +421,7 @@ const tab = ref('chat');
const headerTabs = computed(() => room.value ? [{ const headerTabs = computed(() => room.value ? [{
key: 'chat', key: 'chat',
title: i18n.ts.chat, title: i18n.ts._chat.messages,
icon: 'ti ti-messages', icon: 'ti ti-messages',
}, { }, {
key: 'members', key: 'members',
@ -437,7 +437,7 @@ const headerTabs = computed(() => room.value ? [{
icon: 'ti ti-info-circle', icon: 'ti ti-info-circle',
}] : [{ }] : [{
key: 'chat', key: 'chat',
title: i18n.ts.chat, title: i18n.ts._chat.messages,
icon: 'ti ti-messages', icon: 'ti ti-messages',
}, { }, {
key: 'search', key: 'search',
@ -466,12 +466,12 @@ definePage(computed(() => {
}; };
} else { } else {
return { return {
title: i18n.ts.chat, title: i18n.ts.directMessage,
}; };
} }
} else { } else {
return { return {
title: i18n.ts.chat, title: i18n.ts.directMessage,
}; };
} }
})); }));

View File

@ -414,7 +414,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<template v-if="$i.policies.chatAvailability !== 'unavailable'"> <template v-if="$i.policies.chatAvailability !== 'unavailable'">
<SearchMarker v-slot="slotProps" :keywords="['chat', 'messaging']"> <SearchMarker v-slot="slotProps" :keywords="['chat', 'messaging']">
<MkFolder :defaultOpen="slotProps.isParentOfTarget"> <MkFolder :defaultOpen="slotProps.isParentOfTarget">
<template #label><SearchLabel>{{ i18n.ts.chat }}</SearchLabel></template> <template #label><SearchLabel>{{ i18n.ts.directMessage }}</SearchLabel></template>
<template #icon><SearchIcon><i class="ti ti-messages"></i></SearchIcon></template> <template #icon><SearchIcon><i class="ti ti-messages"></i></SearchIcon></template>
<div class="_gaps_s"> <div class="_gaps_s">

View File

@ -74,7 +74,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<SearchMarker :keywords="['chat']"> <SearchMarker :keywords="['chat']">
<FormSection> <FormSection>
<template #label><SearchLabel>{{ i18n.ts.chat }}</SearchLabel></template> <template #label><SearchLabel>{{ i18n.ts.directMessage }}</SearchLabel></template>
<div class="_gaps_m"> <div class="_gaps_m">
<MkInfo v-if="$i.policies.chatAvailability === 'unavailable'">{{ i18n.ts._chat.chatNotAvailableForThisAccountOrServer }}</MkInfo> <MkInfo v-if="$i.policies.chatAvailability === 'unavailable'">{{ i18n.ts._chat.chatNotAvailableForThisAccountOrServer }}</MkInfo>

View File

@ -366,8 +366,8 @@ export function getUserMenu(user: Misskey.entities.UserDetailed, router: Router
//} //}
menuItems.push({ type: 'divider' }, { menuItems.push({ type: 'divider' }, {
icon: 'ti ti-mail', icon: 'ti ti-pencil-heart',
text: i18n.ts.sendMessage, text: i18n.ts.createUserSpecifiedNote,
action: () => { action: () => {
const canonical = user.host === null ? `@${user.username}` : `@${user.username}@${user.host}`; const canonical = user.host === null ? `@${user.username}` : `@${user.username}@${user.host}`;
os.post({ specified: user, initialText: `${canonical} ` }); os.post({ specified: user, initialText: `${canonical} ` });