fix: clarify user sent box naming

This commit is contained in:
dreamhunter2333
2026-08-23 20:16:55 +08:00
parent e37c851e12
commit 21c5390723
8 changed files with 18 additions and 17 deletions
+2 -1
View File
@@ -116,7 +116,8 @@ test.describe('User send mail page', () => {
expect((await sendboxResponse).ok()).toBe(true); expect((await sendboxResponse).ok()).toBe(true);
await expect(page.locator('.n-tabs-tab--active')).toHaveText('Sent'); await expect(page.locator('.n-tabs-tab--active')).toHaveText('Sent');
await expect(page.getByText(subject, { exact: true })).toBeVisible({ timeout: 15_000 }); await expect(page.locator('.n-thing-header__title').filter({ hasText: subject }))
.toHaveText(subject, { timeout: 15_000 });
} finally { } finally {
try { try {
await Promise.allSettled(addresses.map((address) => deleteAddress(request, address.jwt))); await Promise.allSettled(addresses.map((address) => deleteAddress(request, address.jwt)));
+2 -2
View File
@@ -652,6 +652,6 @@ export const deMessages = {
"components.AddressCredentialModal.title": "Adresszugangsdaten & Verbindungsmethoden", "components.AddressCredentialModal.title": "Adresszugangsdaten & Verbindungsmethoden",
"components.AddressCredentialModal.username": "Benutzername", "components.AddressCredentialModal.username": "Benutzername",
"views.User.send_mail": "E-Mail senden", "views.User.send_mail": "E-Mail senden",
"views.user.UserMailClient.noAddress": "Wähle eine verknüpfte E-Mail-Adresse aus", "views.user.UserSendBox.noAddress": "Wähle eine verknüpfte E-Mail-Adresse aus",
"views.user.UserMailClient.sendbox": "Gesendet" "views.user.UserSendBox.sendbox": "Gesendet"
} }
+2 -2
View File
@@ -652,6 +652,6 @@ export const esMessages = {
"components.AddressCredentialModal.title": "Credenciales de dirección y métodos de conexión", "components.AddressCredentialModal.title": "Credenciales de dirección y métodos de conexión",
"components.AddressCredentialModal.username": "Usuario", "components.AddressCredentialModal.username": "Usuario",
"views.User.send_mail": "Enviar correo", "views.User.send_mail": "Enviar correo",
"views.user.UserMailClient.noAddress": "Selecciona una dirección de correo vinculada", "views.user.UserSendBox.noAddress": "Selecciona una dirección de correo vinculada",
"views.user.UserMailClient.sendbox": "Enviados" "views.user.UserSendBox.sendbox": "Enviados"
} }
+2 -2
View File
@@ -652,6 +652,6 @@ export const jaMessages = {
"components.AddressCredentialModal.title": "アドレス認証情報と接続方法", "components.AddressCredentialModal.title": "アドレス認証情報と接続方法",
"components.AddressCredentialModal.username": "ユーザー名", "components.AddressCredentialModal.username": "ユーザー名",
"views.User.send_mail": "メール送信", "views.User.send_mail": "メール送信",
"views.user.UserMailClient.noAddress": "紐付け済みのメールアドレスを選択してください", "views.user.UserSendBox.noAddress": "紐付け済みのメールアドレスを選択してください",
"views.user.UserMailClient.sendbox": "送信済み" "views.user.UserSendBox.sendbox": "送信済み"
} }
+2 -2
View File
@@ -652,6 +652,6 @@ export const ptBRMessages = {
"components.AddressCredentialModal.title": "Credenciais do endereço e métodos de conexão", "components.AddressCredentialModal.title": "Credenciais do endereço e métodos de conexão",
"components.AddressCredentialModal.username": "Nome de usuário", "components.AddressCredentialModal.username": "Nome de usuário",
"views.User.send_mail": "Enviar e-mail", "views.User.send_mail": "Enviar e-mail",
"views.user.UserMailClient.noAddress": "Selecione um endereço de e-mail vinculado", "views.user.UserSendBox.noAddress": "Selecione um endereço de e-mail vinculado",
"views.user.UserMailClient.sendbox": "Enviados" "views.user.UserSendBox.sendbox": "Enviados"
} }
+1 -1
View File
@@ -751,7 +751,7 @@ export const MESSAGE_REGISTRY = {
"zh": "用户设置" "zh": "用户设置"
} }
}, },
"views.user.UserMailClient": { "views.user.UserSendBox": {
"noAddress": { "noAddress": {
"en": "Select a bound email address to continue", "en": "Select a bound email address to continue",
"zh": "请选择一个已绑定的邮箱地址" "zh": "请选择一个已绑定的邮箱地址"
+4 -4
View File
@@ -8,14 +8,14 @@ import UserSettingsPage from './user/UserSettings.vue';
import UserBar from './user/UserBar.vue'; import UserBar from './user/UserBar.vue';
import BindAddress from './user/BindAddress.vue'; import BindAddress from './user/BindAddress.vue';
import UserMailBox from './user/UserMailBox.vue'; import UserMailBox from './user/UserMailBox.vue';
import UserMailClient from './user/UserMailClient.vue'; import UserSendBox from './user/UserSendBox.vue';
const { const {
userTab, globalTabplacement, userSettings, openSettings userTab, globalTabplacement, userSettings, openSettings
} = useGlobalState() } = useGlobalState()
const { t } = useScopedI18n('views.User') const { t } = useScopedI18n('views.User')
const { t: userMailT } = useScopedI18n('views.user.UserMailClient') const { t: userMailT } = useScopedI18n('views.user.UserSendBox')
</script> </script>
@@ -30,10 +30,10 @@ const { t: userMailT } = useScopedI18n('views.user.UserMailClient')
<UserMailBox /> <UserMailBox />
</n-tab-pane> </n-tab-pane>
<n-tab-pane v-if="openSettings.enableSendMail" name="user_sendbox" :tab="userMailT('sendbox')"> <n-tab-pane v-if="openSettings.enableSendMail" name="user_sendbox" :tab="userMailT('sendbox')">
<UserMailClient mode="sendbox" /> <UserSendBox mode="sendbox" />
</n-tab-pane> </n-tab-pane>
<n-tab-pane v-if="openSettings.enableSendMail" name="user_send_mail" :tab="t('send_mail')"> <n-tab-pane v-if="openSettings.enableSendMail" name="user_send_mail" :tab="t('send_mail')">
<UserMailClient mode="send_mail" @sent="userTab = 'user_sendbox'" /> <UserSendBox mode="send_mail" @sent="userTab = 'user_sendbox'" />
</n-tab-pane> </n-tab-pane>
<n-tab-pane name="user_settings" :tab="t('user_settings')"> <n-tab-pane name="user_settings" :tab="t('user_settings')">
<UserSettingsPage /> <UserSettingsPage />
@@ -21,7 +21,7 @@ const emit = defineEmits(['sent'])
const message = useMessage() const message = useMessage()
const { openSettings } = useGlobalState() const { openSettings } = useGlobalState()
const { t } = useScopedI18n('views.user.UserMailClient') const { t } = useScopedI18n('views.user.UserSendBox')
const { t: mailboxT } = useScopedI18n('views.user.UserMailBox') const { t: mailboxT } = useScopedI18n('views.user.UserMailBox')
const selectedAddressId = ref(null) const selectedAddressId = ref(null)
@@ -94,7 +94,7 @@ onMounted(fetchAddresses)
</script> </script>
<template> <template>
<div class="user-mail-client"> <div class="user-send-box">
<template v-if="mode === 'send_mail'"> <template v-if="mode === 'send_mail'">
<n-empty v-if="!selectedAddressId" class="address-empty" :description="t('noAddress')" /> <n-empty v-if="!selectedAddressId" class="address-empty" :description="t('noAddress')" />
<SendMail v-else :key="selectedAddressId" v-model:address-id="selectedAddressId" <SendMail v-else :key="selectedAddressId" v-model:address-id="selectedAddressId"
@@ -119,7 +119,7 @@ onMounted(fetchAddresses)
</template> </template>
<style scoped> <style scoped>
.user-mail-client { .user-send-box {
padding-top: 10px; padding-top: 10px;
text-align: left; text-align: left;
} }