This commit is contained in:
syuilo
2025-03-22 18:23:52 +09:00
parent acac58e59c
commit 55dc1d5305
4 changed files with 69 additions and 47 deletions

20
locales/index.d.ts vendored
View File

@@ -5384,6 +5384,26 @@ export interface Locale extends ILocale {
* チャットが使えない状態になっているか、相手がチャットを開放していません。 * チャットが使えない状態になっているか、相手がチャットを開放していません。
*/ */
"cannotChatWithTheUser_description": string; "cannotChatWithTheUser_description": string;
/**
* チャットする
*/
"chatWithThisUser": string;
/**
* このユーザーはフォロワーからのみチャットを受け付けています。
*/
"thisUserAllowsChatOnlyFromFollowers": string;
/**
* このユーザーはフォローしているユーザーからのみチャットを受け付けています。
*/
"thisUserAllowsChatOnlyFromFollowing": string;
/**
* このユーザーは相互フォローのユーザーからのみチャットを受け付けています。
*/
"thisUserAllowsChatOnlyFromMutualFollowing": string;
/**
* このユーザーは誰からもチャットを受け付けていません。
*/
"thisUserNotAllowedChatAnyone": string;
/** /**
* チャットを許可する相手 * チャットを許可する相手
*/ */

View File

@@ -1343,7 +1343,11 @@ _chat:
roomChat_description: "複数人でのチャットができます。\nまた、個人チャットを許可していないユーザーとでも、相手が受け入れればチャットができます。" roomChat_description: "複数人でのチャットができます。\nまた、個人チャットを許可していないユーザーとでも、相手が受け入れればチャットができます。"
cannotChatWithTheUser: "このユーザーとのチャットを開始できません" cannotChatWithTheUser: "このユーザーとのチャットを開始できません"
cannotChatWithTheUser_description: "チャットが使えない状態になっているか、相手がチャットを開放していません。" cannotChatWithTheUser_description: "チャットが使えない状態になっているか、相手がチャットを開放していません。"
chatWithThisUser: "チャットする"
thisUserAllowsChatOnlyFromFollowers: "このユーザーはフォロワーからのみチャットを受け付けています。"
thisUserAllowsChatOnlyFromFollowing: "このユーザーはフォローしているユーザーからのみチャットを受け付けています。"
thisUserAllowsChatOnlyFromMutualFollowing: "このユーザーは相互フォローのユーザーからのみチャットを受け付けています。"
thisUserNotAllowedChatAnyone: "このユーザーは誰からもチャットを受け付けていません。"
chatAllowedUsers: "チャットを許可する相手" chatAllowedUsers: "チャットを許可する相手"
chatAllowedUsers_note: "自分からチャットメッセージを送った相手とはこの設定に関わらずチャットが可能です。" chatAllowedUsers_note: "自分からチャットメッセージを送った相手とはこの設定に関わらずチャットが可能です。"
_chatAllowedUsers: _chatAllowedUsers:

View File

@@ -4,12 +4,7 @@ SPDX-License-Identifier: AGPL-3.0-only
--> -->
<template> <template>
<div style="height: 100%; overflow:auto; display:flex; flex-direction:column-reverse;"> <PageWithHeader reversed>
<MkStickyContainer>
<template #header>
<MkPageHeader/>
</template>
<div ref="rootEl" :class="$style.root"> <div ref="rootEl" :class="$style.root">
<MkSpacer :contentMax="700"> <MkSpacer :contentMax="700">
<MkPagination v-if="pagination" ref="pagingComponent" :key="userId || roomId" :pagination="pagination" :disableAutoLoad="true" :scrollReversed="true"> <MkPagination v-if="pagination" ref="pagingComponent" :key="userId || roomId" :pagination="pagination" :disableAutoLoad="true" :scrollReversed="true">
@@ -48,8 +43,7 @@ SPDX-License-Identifier: AGPL-3.0-only
</div> </div>
</div> </div>
</template> </template>
</MkStickyContainer> </PageWithHeader>
</div>
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
@@ -232,7 +226,6 @@ definePage(computed(() => !fetching.value ? user.value ? {
} }
.root { .root {
min-height: 100cqh;
} }
.more { .more {

View File

@@ -220,13 +220,18 @@ export function getUserMenu(user: Misskey.entities.UserDetailed, router: Router
}); });
if ($i) { if ($i) {
menuItems.push({ menuItems.push({ type: 'divider' }, {
icon: 'ti ti-mail', icon: 'ti ti-mail',
text: i18n.ts.sendMessage, text: i18n.ts.sendMessage,
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} ` });
}, },
}, {
type: 'link',
icon: 'ti ti-messages',
text: i18n.ts._chat.chatWithThisUser,
to: `/chat/user/${user.id}`,
}, { type: 'divider' }, { }, { type: 'divider' }, {
icon: 'ti ti-pencil', icon: 'ti ti-pencil',
text: i18n.ts.editMemo, text: i18n.ts.editMemo,