About: present inbuxa as the suite, not only the webmail #18

Merged
jcoffey-dev merged 1 commits from fork/about-suite into main 2026-09-26 04:21:58 +00:00
11 changed files with 63 additions and 11 deletions

No files matched your search

+5 -1
View File
@@ -1059,7 +1059,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Wählen Sie eine Konversation, um sie hier zu lesen · {key} für Tastenkürzel", "Select a conversation to read it here · Press {key} for shortcuts": "Wählen Sie eine Konversation, um sie hier zu lesen · {key} für Tastenkürzel",
"Select a message to read it here · Press {key} for shortcuts": "Wählen Sie eine Nachricht, um sie hier zu lesen · {key} für Tastenkürzel", "Select a message to read it here · Press {key} for shortcuts": "Wählen Sie eine Nachricht, um sie hier zu lesen · {key} für Tastenkürzel",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Tipp: Drücken Sie {key} auf einer Konversation, um Labels zu vergeben. Suchen Sie mit {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Tipp: Drücken Sie {key} auf einer Konversation, um Labels zu vergeben. Suchen Sie mit {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Eine schnelle, freundliche Open-Source-Webmail für {server}, auf JMAP aufgebaut.",
"Defaults for the calendar views and new events.": "Vorgaben für die Kalenderansichten und neue Termine.", "Defaults for the calendar views and new events.": "Vorgaben für die Kalenderansichten und neue Termine.",
"Replies will go to this address instead of the From address": "Antworten gehen an diese Adresse statt an die Absenderadresse", "Replies will go to this address instead of the From address": "Antworten gehen an diese Adresse statt an die Absenderadresse",
"Replies to mail sent from this identity go here instead of the From address.": "Antworten auf Nachrichten von dieser Identität gehen hierhin statt an die Absenderadresse.", "Replies to mail sent from this identity go here instead of the From address.": "Antworten auf Nachrichten von dieser Identität gehen hierhin statt an die Absenderadresse.",
@@ -1740,6 +1739,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Zur Bestätigung {phrase} eingeben", "To confirm, type {phrase}": "Zur Bestätigung {phrase} eingeben",
"Turn off legacy protocols": "Ältere Mailprotokolle ausschalten", "Turn off legacy protocols": "Ältere Mailprotokolle ausschalten",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Ältere Mailprotokolle sind für Ihre Organisation ausgeschaltet. Nur {app} und JMAP-Apps können sich anmelden.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Ältere Mailprotokolle sind für Ihre Organisation ausgeschaltet. Nur {app} und JMAP-Apps können sich anmelden.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} ist eine komplette Mail-Suite: ein Mailserver, die Konsole, mit der er verwaltet wird, und dieses Webmail – jedes ein eigenes Programm, gemeinsam installiert und frei unter der AGPL.",
"The suite": "Die Suite",
"Administration console": "Verwaltungskonsole",
"Webmail": "Webmail",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Webmail-Knoten", "Webmail node": "Webmail-Knoten",
"Mail server node": "Mailserver-Knoten", "Mail server node": "Mailserver-Knoten",
+5 -1
View File
@@ -1121,7 +1121,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Seleccione una conversación para leerla aquí · {key} para los atajos", "Select a conversation to read it here · Press {key} for shortcuts": "Seleccione una conversación para leerla aquí · {key} para los atajos",
"Select a message to read it here · Press {key} for shortcuts": "Seleccione un mensaje para leerlo aquí · {key} para los atajos", "Select a message to read it here · Press {key} for shortcuts": "Seleccione un mensaje para leerlo aquí · {key} para los atajos",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Consejo: pulse {key} sobre una conversación para aplicar etiquetas. Busque con {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Consejo: pulse {key} sobre una conversación para aplicar etiquetas. Busque con {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Un webmail libre, rápido y agradable para {server}, construido sobre JMAP.",
"Defaults for the calendar views and new events.": "Valores predeterminados de las vistas del calendario y de los eventos nuevos.", "Defaults for the calendar views and new events.": "Valores predeterminados de las vistas del calendario y de los eventos nuevos.",
"Replies will go to this address instead of the From address": "Las respuestas irán a esta dirección en lugar de a la del remitente", "Replies will go to this address instead of the From address": "Las respuestas irán a esta dirección en lugar de a la del remitente",
"Replies to mail sent from this identity go here instead of the From address.": "Las respuestas al correo enviado desde esta identidad llegan aquí en lugar de a la dirección del remitente.", "Replies to mail sent from this identity go here instead of the From address.": "Las respuestas al correo enviado desde esta identidad llegan aquí en lugar de a la dirección del remitente.",
@@ -1713,6 +1712,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Para confirmar, escriba {phrase}", "To confirm, type {phrase}": "Para confirmar, escriba {phrase}",
"Turn off legacy protocols": "Desactivar los protocolos de correo heredados", "Turn off legacy protocols": "Desactivar los protocolos de correo heredados",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Los protocolos de correo heredados están desactivados para su organización. Solo {app} y las aplicaciones JMAP pueden iniciar sesión.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Los protocolos de correo heredados están desactivados para su organización. Solo {app} y las aplicaciones JMAP pueden iniciar sesión.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} es una suite de correo completa: un servidor de correo, la consola que lo administra y este webmail, cada uno un programa propio, instalados juntos y libres bajo la AGPL.",
"The suite": "La suite",
"Administration console": "Consola de administración",
"Webmail": "Webmail",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Nodo del webmail", "Webmail node": "Nodo del webmail",
"Mail server node": "Nodo del servidor de correo", "Mail server node": "Nodo del servidor de correo",
+5 -1
View File
@@ -1126,7 +1126,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Sélectionnez une conversation pour la lire ici · {key} pour les raccourcis", "Select a conversation to read it here · Press {key} for shortcuts": "Sélectionnez une conversation pour la lire ici · {key} pour les raccourcis",
"Select a message to read it here · Press {key} for shortcuts": "Sélectionnez un message pour le lire ici · {key} pour les raccourcis", "Select a message to read it here · Press {key} for shortcuts": "Sélectionnez un message pour le lire ici · {key} pour les raccourcis",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Astuce : appuyez sur {key} sur une conversation pour appliquer des libellés. Recherchez avec {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Astuce : appuyez sur {key} sur une conversation pour appliquer des libellés. Recherchez avec {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Un webmail libre, rapide et agréable pour {server}, bâti sur JMAP.",
"Defaults for the calendar views and new events.": "Valeurs par défaut des vues d'agenda et des nouveaux événements.", "Defaults for the calendar views and new events.": "Valeurs par défaut des vues d'agenda et des nouveaux événements.",
"Replies will go to this address instead of the From address": "Les réponses iront à cette adresse plutôt qu'à l'adresse d'expédition", "Replies will go to this address instead of the From address": "Les réponses iront à cette adresse plutôt qu'à l'adresse d'expédition",
"Replies to mail sent from this identity go here instead of the From address.": "Les réponses aux messages envoyés depuis cette identité arrivent ici plutôt qu'à l'adresse d'expédition.", "Replies to mail sent from this identity go here instead of the From address.": "Les réponses aux messages envoyés depuis cette identité arrivent ici plutôt qu'à l'adresse d'expédition.",
@@ -1718,6 +1717,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Pour confirmer, saisissez {phrase}", "To confirm, type {phrase}": "Pour confirmer, saisissez {phrase}",
"Turn off legacy protocols": "Désactiver les protocoles de messagerie historiques", "Turn off legacy protocols": "Désactiver les protocoles de messagerie historiques",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Les protocoles de messagerie historiques sont désactivés pour votre organisation. Seuls {app} et les applications JMAP peuvent se connecter.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Les protocoles de messagerie historiques sont désactivés pour votre organisation. Seuls {app} et les applications JMAP peuvent se connecter.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} est une suite de messagerie complète : un serveur de messagerie, la console qui l’administre et ce webmail, chacun étant un programme à part entière, installés ensemble et libres sous licence AGPL.",
"The suite": "La suite",
"Administration console": "Console d’administration",
"Webmail": "Webmail",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Nœud du webmail", "Webmail node": "Nœud du webmail",
"Mail server node": "Nœud du serveur de messagerie", "Mail server node": "Nœud du serveur de messagerie",
+5 -1
View File
@@ -1046,7 +1046,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "スレッドを選ぶとここに表示されます · {key} でショートカット一覧", "Select a conversation to read it here · Press {key} for shortcuts": "スレッドを選ぶとここに表示されます · {key} でショートカット一覧",
"Select a message to read it here · Press {key} for shortcuts": "メールを選ぶとここに表示されます · {key} でショートカット一覧", "Select a message to read it here · Press {key} for shortcuts": "メールを選ぶとここに表示されます · {key} でショートカット一覧",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "ヒント: スレッド上で {key} を押すとラベルを付けられます。検索には {operator} が使えます。", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "ヒント: スレッド上で {key} を押すとラベルを付けられます。検索には {operator} が使えます。",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "{server} のための、軽快で使いやすいオープンソースのウェブメール。JMAP で動作します。",
// ── Filters, vacation, capability notices ────────────────────────── // ── Filters, vacation, capability notices ──────────────────────────
"Thanks for your message. I'm away until … and will reply when I'm back.": "メールをありがとうございます。……まで不在にしており、戻り次第ご返信いたします。", "Thanks for your message. I'm away until … and will reply when I'm back.": "メールをありがとうございます。……まで不在にしており、戻り次第ご返信いたします。",
@@ -1721,6 +1720,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "確認のため {phrase} と入力してください", "To confirm, type {phrase}": "確認のため {phrase} と入力してください",
"Turn off legacy protocols": "従来のメールプロトコルをオフにする", "Turn off legacy protocols": "従来のメールプロトコルをオフにする",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "組織では従来のメールプロトコルがオフになっています。サインインできるのは {app} と JMAP アプリのみです。", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "組織では従来のメールプロトコルがオフになっています。サインインできるのは {app} と JMAP アプリのみです。",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} は完全なメールスイートです。メールサーバー、それを管理するコンソール、そしてこのWebメール。それぞれ独立したプログラムで、まとめてインストールでき、AGPLのもとで自由に使えます。",
"The suite": "スイート",
"Administration console": "管理コンソール",
"Webmail": "Webメール",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Webメールのノード", "Webmail node": "Webメールのノード",
"Mail server node": "メールサーバーのノード", "Mail server node": "メールサーバーのノード",
+5 -1
View File
@@ -1118,7 +1118,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Selecteer een gesprek om het hier te lezen · {key} voor sneltoetsen", "Select a conversation to read it here · Press {key} for shortcuts": "Selecteer een gesprek om het hier te lezen · {key} voor sneltoetsen",
"Select a message to read it here · Press {key} for shortcuts": "Selecteer een bericht om het hier te lezen · {key} voor sneltoetsen", "Select a message to read it here · Press {key} for shortcuts": "Selecteer een bericht om het hier te lezen · {key} voor sneltoetsen",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Tip: druk op {key} bij een gesprek om labels toe te wijzen. Zoek met {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Tip: druk op {key} bij een gesprek om labels toe te wijzen. Zoek met {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Een snelle, prettige, opensource webmail voor {server}, gebouwd op JMAP.",
"Defaults for the calendar views and new events.": "Standaardwaarden voor de agendaweergaven en nieuwe afspraken.", "Defaults for the calendar views and new events.": "Standaardwaarden voor de agendaweergaven en nieuwe afspraken.",
"Replies will go to this address instead of the From address": "Antwoorden gaan naar dit adres in plaats van naar het afzenderadres", "Replies will go to this address instead of the From address": "Antwoorden gaan naar dit adres in plaats van naar het afzenderadres",
"Replies to mail sent from this identity go here instead of the From address.": "Antwoorden op post die vanaf deze identiteit is verzonden, komen hier aan in plaats van bij het afzenderadres.", "Replies to mail sent from this identity go here instead of the From address.": "Antwoorden op post die vanaf deze identiteit is verzonden, komen hier aan in plaats van bij het afzenderadres.",
@@ -1710,6 +1709,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Typ ter bevestiging {phrase}", "To confirm, type {phrase}": "Typ ter bevestiging {phrase}",
"Turn off legacy protocols": "Verouderde mailprotocollen uitschakelen", "Turn off legacy protocols": "Verouderde mailprotocollen uitschakelen",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Verouderde mailprotocollen zijn uitgeschakeld voor uw organisatie. Alleen {app} en JMAP-apps kunnen inloggen.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Verouderde mailprotocollen zijn uitgeschakeld voor uw organisatie. Alleen {app} en JMAP-apps kunnen inloggen.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} is een complete mailsuite: een mailserver, de console waarmee je hem beheert en deze webmail, elk een eigen programma, samen geïnstalleerd en vrij onder de AGPL.",
"The suite": "De suite",
"Administration console": "Beheerconsole",
"Webmail": "Webmail",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Webmailnode", "Webmail node": "Webmailnode",
"Mail server node": "Mailservernode", "Mail server node": "Mailservernode",
+5 -1
View File
@@ -1124,7 +1124,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Selecione uma conversa para lê-la aqui · {key} para os atalhos", "Select a conversation to read it here · Press {key} for shortcuts": "Selecione uma conversa para lê-la aqui · {key} para os atalhos",
"Select a message to read it here · Press {key} for shortcuts": "Selecione uma mensagem para lê-la aqui · {key} para os atalhos", "Select a message to read it here · Press {key} for shortcuts": "Selecione uma mensagem para lê-la aqui · {key} para os atalhos",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Dica: pressione {key} em uma conversa para aplicar marcadores. Pesquise com {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Dica: pressione {key} em uma conversa para aplicar marcadores. Pesquise com {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Um webmail livre, rápido e agradável para {server}, feito sobre JMAP.",
"Defaults for the calendar views and new events.": "Padrões das visualizações da agenda e dos eventos novos.", "Defaults for the calendar views and new events.": "Padrões das visualizações da agenda e dos eventos novos.",
"Replies will go to this address instead of the From address": "As respostas irão para este endereço em vez do endereço do remetente", "Replies will go to this address instead of the From address": "As respostas irão para este endereço em vez do endereço do remetente",
"Replies to mail sent from this identity go here instead of the From address.": "As respostas às mensagens enviadas por esta identidade chegam aqui em vez do endereço do remetente.", "Replies to mail sent from this identity go here instead of the From address.": "As respostas às mensagens enviadas por esta identidade chegam aqui em vez do endereço do remetente.",
@@ -1716,6 +1715,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Para confirmar, digite {phrase}", "To confirm, type {phrase}": "Para confirmar, digite {phrase}",
"Turn off legacy protocols": "Desativar os protocolos de e-mail legados", "Turn off legacy protocols": "Desativar os protocolos de e-mail legados",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Os protocolos de e-mail legados estão desativados para sua organização. Só {app} e aplicativos JMAP podem entrar.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Os protocolos de e-mail legados estão desativados para sua organização. Só {app} e aplicativos JMAP podem entrar.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} é uma suíte de e-mail completa: um servidor de e-mail, o console que o administra e este webmail, cada um um programa próprio, instalados juntos e livres sob a AGPL.",
"The suite": "A suíte",
"Administration console": "Console de administração",
"Webmail": "Webmail",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Nó do webmail", "Webmail node": "Nó do webmail",
"Mail server node": "Nó do servidor de e-mail", "Mail server node": "Nó do servidor de e-mail",
+5 -1
View File
@@ -1123,7 +1123,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Выберите цепочку, чтобы прочитать её здесь · {key} — сочетания клавиш", "Select a conversation to read it here · Press {key} for shortcuts": "Выберите цепочку, чтобы прочитать её здесь · {key} — сочетания клавиш",
"Select a message to read it here · Press {key} for shortcuts": "Выберите письмо, чтобы прочитать его здесь · {key} — сочетания клавиш", "Select a message to read it here · Press {key} for shortcuts": "Выберите письмо, чтобы прочитать его здесь · {key} — сочетания клавиш",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Совет: нажмите {key} на цепочке, чтобы присвоить ярлыки. Ищите через {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Совет: нажмите {key} на цепочке, чтобы присвоить ярлыки. Ищите через {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Быстрая и удобная веб-почта с открытым кодом для {server}, построенная на JMAP.",
"Defaults for the calendar views and new events.": "Значения по умолчанию для видов календаря и новых событий.", "Defaults for the calendar views and new events.": "Значения по умолчанию для видов календаря и новых событий.",
"Replies will go to this address instead of the From address": "Ответы будут приходить на этот адрес, а не на адрес отправителя", "Replies will go to this address instead of the From address": "Ответы будут приходить на этот адрес, а не на адрес отправителя",
"Replies to mail sent from this identity go here instead of the From address.": "Ответы на письма из этого профиля приходят сюда, а не на адрес отправителя.", "Replies to mail sent from this identity go here instead of the From address.": "Ответы на письма из этого профиля приходят сюда, а не на адрес отправителя.",
@@ -1715,6 +1714,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Для подтверждения введите {phrase}", "To confirm, type {phrase}": "Для подтверждения введите {phrase}",
"Turn off legacy protocols": "Отключить устаревшие почтовые протоколы", "Turn off legacy protocols": "Отключить устаревшие почтовые протоколы",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Устаревшие почтовые протоколы отключены для вашей организации. Входить могут только {app} и приложения JMAP.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Устаревшие почтовые протоколы отключены для вашей организации. Входить могут только {app} и приложения JMAP.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} — полноценный почтовый пакет: почтовый сервер, консоль для его администрирования и эта веб-почта. Каждый компонент — отдельная программа; устанавливаются они вместе и свободно распространяются по лицензии AGPL.",
"The suite": "Пакет",
"Administration console": "Консоль администрирования",
"Webmail": "Веб-почта",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Узел веб-почты", "Webmail node": "Узел веб-почты",
"Mail server node": "Узел почтового сервера", "Mail server node": "Узел почтового сервера",
+5 -1
View File
@@ -1117,7 +1117,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "Виберіть листування, щоб прочитати його тут · {key} — сполучення клавіш", "Select a conversation to read it here · Press {key} for shortcuts": "Виберіть листування, щоб прочитати його тут · {key} — сполучення клавіш",
"Select a message to read it here · Press {key} for shortcuts": "Виберіть лист, щоб прочитати його тут · {key} — сполучення клавіш", "Select a message to read it here · Press {key} for shortcuts": "Виберіть лист, щоб прочитати його тут · {key} — сполучення клавіш",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Порада: натисніть {key} на листуванні, щоб додати мітки. Шукайте через {operator}.", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "Порада: натисніть {key} на листуванні, щоб додати мітки. Шукайте через {operator}.",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "Швидка та зручна вебпошта з відкритим кодом для {server}, побудована на JMAP.",
"Defaults for the calendar views and new events.": "Значення за замовчуванням для виглядів календаря та нових подій.", "Defaults for the calendar views and new events.": "Значення за замовчуванням для виглядів календаря та нових подій.",
"Replies will go to this address instead of the From address": "Відповіді надходитимуть на цю адресу, а не на адресу відправника", "Replies will go to this address instead of the From address": "Відповіді надходитимуть на цю адресу, а не на адресу відправника",
"Replies to mail sent from this identity go here instead of the From address.": "Відповіді на листи з цього профілю надходять сюди, а не на адресу відправника.", "Replies to mail sent from this identity go here instead of the From address.": "Відповіді на листи з цього профілю надходять сюди, а не на адресу відправника.",
@@ -1709,6 +1708,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "Для підтвердження введіть {phrase}", "To confirm, type {phrase}": "Для підтвердження введіть {phrase}",
"Turn off legacy protocols": "Вимкнути застарілі поштові протоколи", "Turn off legacy protocols": "Вимкнути застарілі поштові протоколи",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Застарілі поштові протоколи вимкнено для вашої організації. Входити можуть лише {app} і програми JMAP.", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "Застарілі поштові протоколи вимкнено для вашої організації. Входити можуть лише {app} і програми JMAP.",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} — повноцінний поштовий пакет: поштовий сервер, консоль для його адміністрування і ця вебпошта. Кожен компонент — окрема програма; встановлюються вони разом і вільно поширюються за ліцензією AGPL.",
"The suite": "Пакет",
"Administration console": "Консоль адміністрування",
"Webmail": "Вебпошта",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "Вузол вебпошти", "Webmail node": "Вузол вебпошти",
"Mail server node": "Вузол поштового сервера", "Mail server node": "Вузол поштового сервера",
+5 -1
View File
@@ -1045,7 +1045,6 @@ export const catalog: Catalog = {
"Select a conversation to read it here · Press {key} for shortcuts": "选择一个会话即可在此阅读 · 按 {key} 查看快捷键", "Select a conversation to read it here · Press {key} for shortcuts": "选择一个会话即可在此阅读 · 按 {key} 查看快捷键",
"Select a message to read it here · Press {key} for shortcuts": "选择一封邮件即可在此阅读 · 按 {key} 查看快捷键", "Select a message to read it here · Press {key} for shortcuts": "选择一封邮件即可在此阅读 · 按 {key} 查看快捷键",
"Tip: press {key} on a conversation to apply labels. Search with {operator}.": "提示:在会话上按 {key} 可添加标签。使用 {operator} 搜索。", "Tip: press {key} on a conversation to apply labels. Search with {operator}.": "提示:在会话上按 {key} 可添加标签。使用 {operator} 搜索。",
"A fast, friendly, open-source webmail for {server}, built on JMAP.": "一款面向 {server} 的快速、友好的开源网页邮箱,基于 JMAP 构建。",
// ── Filters, vacation, capability notices ────────────────────────── // ── Filters, vacation, capability notices ──────────────────────────
"Thanks for your message. I'm away until … and will reply when I'm back.": "感谢您的来信。我将外出至……,回来后会尽快回复。", "Thanks for your message. I'm away until … and will reply when I'm back.": "感谢您的来信。我将外出至……,回来后会尽快回复。",
@@ -1720,6 +1719,11 @@ export const catalog: Catalog = {
"To confirm, type {phrase}": "请输入 {phrase} 以确认", "To confirm, type {phrase}": "请输入 {phrase} 以确认",
"Turn off legacy protocols": "关闭传统邮件协议", "Turn off legacy protocols": "关闭传统邮件协议",
"Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "您的组织已关闭传统邮件协议。只有 {app} 和 JMAP 应用可以登录。", "Legacy mail protocols are off for your organization. Only {app} and JMAP apps can sign in.": "您的组织已关闭传统邮件协议。只有 {app} 和 JMAP 应用可以登录。",
// ── About: inbuxa, the suite ────────────────────────────────────
"{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.": "{inbuxa} 是一套完整的邮件套件:邮件服务器、管理它的控制台,以及这个网页邮箱。三者各自是独立的程序,一起安装,并以 AGPL 许可证自由使用。",
"The suite": "套件",
"Administration console": "管理控制台",
"Webmail": "网页邮箱",
// ── About: webmail and mail server nodes (inbuxa) ────────────── // ── About: webmail and mail server nodes (inbuxa) ──────────────
"Webmail node": "网页邮箱节点", "Webmail node": "网页邮箱节点",
"Mail server node": "邮件服务器节点", "Mail server node": "邮件服务器节点",
+2
View File
@@ -1682,6 +1682,8 @@ select optgroup { background-color: var(--bg-elev); color: var(--fg); }
.shortcut-grid h3 { margin: 0 0 6px; font-size: .9em; text-transform: uppercase; letter-spacing: .05em; color: var(--fg-faint); } .shortcut-grid h3 { margin: 0 0 6px; font-size: .9em; text-transform: uppercase; letter-spacing: .05em; color: var(--fg-faint); }
.shortcut-row { display: flex; justify-content: space-between; align-items: center; padding: 4px 0; gap: 12px; } .shortcut-row { display: flex; justify-content: space-between; align-items: center; padding: 4px 0; gap: 12px; }
.shortcut-row .keys { display: flex; gap: 4px; } .shortcut-row .keys { display: flex; gap: 4px; }
/* ihasmail-inbuxa: the product name in a sentence, set apart in the brand teal. */
.brand-inbuxa { color: #14b8a6; font-weight: 700; }
.sessions-table { width: 100%; border-collapse: collapse; font-size: .92em; } .sessions-table { width: 100%; border-collapse: collapse; font-size: .92em; }
.sessions-table th, .sessions-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--border); } .sessions-table th, .sessions-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--border); }
.sessions-table th { color: var(--fg-muted); font-weight: 600; font-size: .85em; } .sessions-table th { color: var(--fg-muted); font-weight: 600; font-size: .85em; }
+16 -2
View File
@@ -32,6 +32,8 @@ export function AboutSettings() {
const nodeCell = (v: (n: Nodes) => string) => const nodeCell = (v: (n: Nodes) => string) =>
nodes === null ? t("Loading…") : nodes === "error" ? t("unavailable") : <span className="mono notranslate" translate="no">{v(nodes)}</span>; nodes === null ? t("Loading…") : nodes === "error" ? t("unavailable") : <span className="mono notranslate" translate="no">{v(nodes)}</span>;
const caps = Object.keys(session?.capabilities ?? {}); const caps = Object.keys(session?.capabilities ?? {});
// Only a session that may administer is told where the console is.
const adminUrl = session?.ihasmail?.server?.adminUrl ?? null;
// A deployment running modified code should offer its own source, not ours. // A deployment running modified code should offer its own source, not ours.
const sourceUrl = session?.ihasmail?.sourceUrl ?? DEFAULT_SOURCE_URL; const sourceUrl = session?.ihasmail?.sourceUrl ?? DEFAULT_SOURCE_URL;
return ( return (
@@ -41,7 +43,9 @@ export function AboutSettings() {
The name comes from APP_NAME now, so a renamed deployment is named The name comes from APP_NAME now, so a renamed deployment is named
here too. */} here too. */}
<h1>{t("About {app}", { app: appName })}</h1> <h1>{t("About {app}", { app: appName })}</h1>
<p className="lead">{tNode("A fast, friendly, open-source webmail for {server}, built on JMAP.", { server: <span className="notranslate" translate="no">{appName}</span> })}</p> {/* inbuxa is the suite, not only this webmail: the product name here is
inbuxa's own, not APP_NAME. */}
<p className="lead">{tNode("{inbuxa} is a complete mail suite: a mail server, the console that administers it, and this webmail, each its own program, installed together and free under the AGPL.", { inbuxa: <strong className="brand-inbuxa notranslate" translate="no">inbuxa</strong> })}</p>
<div className="row" style={{ gap: 16, alignItems: "center", marginBottom: 16 }}> <div className="row" style={{ gap: 16, alignItems: "center", marginBottom: 16 }}>
<img src={withBase("/img/inbuxa-mark.png")} alt="" width={80} /> <img src={withBase("/img/inbuxa-mark.png")} alt="" width={80} />
<div> <div>
@@ -52,11 +56,21 @@ export function AboutSettings() {
<div className="hint">{tNode("AGPL-3.0-or-later · {source}", { source: <a href={sourceUrl} target="_blank" rel="noopener noreferrer" className="notranslate" translate="no">{sourceUrl.replace(/^https?:\/\//, "")}</a> })}</div> <div className="hint">{tNode("AGPL-3.0-or-later · {source}", { source: <a href={sourceUrl} target="_blank" rel="noopener noreferrer" className="notranslate" translate="no">{sourceUrl.replace(/^https?:\/\//, "")}</a> })}</div>
</div> </div>
</div> </div>
<h2>{t("The suite")}</h2>
<table className="sessions-table">
<tbody>
<tr><td>{t("Mail server")}</td><td className="notranslate" translate="no">inbuxa</td></tr>
{adminUrl && (
<tr><td>{t("Administration console")}</td><td><a href={adminUrl} target="_blank" rel="noopener noreferrer" className="notranslate" translate="no">{adminUrl.replace(/^https?:\/\//, "").replace(/\/$/, "")}</a></td></tr>
)}
<tr><td>{t("Webmail")}</td><td className="notranslate" translate="no">v{APP_VERSION}</td></tr>
<tr><td>{t("Website")}</td><td><a href="https://inbuxa.org" target="_blank" rel="noopener noreferrer" className="notranslate" translate="no">inbuxa.org</a></td></tr>
</tbody>
</table>
<h2>{t("Server")}</h2> <h2>{t("Server")}</h2>
<table className="sessions-table"> <table className="sessions-table">
<tbody> <tbody>
<tr><td>{t("Signed in as")}</td><td>{session?.username}</td></tr> <tr><td>{t("Signed in as")}</td><td>{session?.username}</td></tr>
<tr><td>{t("Mail server")}</td><td className="notranslate" translate="no">inbuxa</td></tr>
<tr><td>{t("Webmail node")}</td><td>{nodeCell((n) => n.webmail)}</td></tr> <tr><td>{t("Webmail node")}</td><td>{nodeCell((n) => n.webmail)}</td></tr>
<tr><td>{t("Mail server node")}</td><td>{nodeCell((n) => mailNodeLabel(n.mailServer))}</td></tr> <tr><td>{t("Mail server node")}</td><td>{nodeCell((n) => mailNodeLabel(n.mailServer))}</td></tr>
<tr><td>{t("Accounts")}</td><td>{Object.values(session?.accounts ?? {}).map((a) => a.name).join(", ")}</td></tr> <tr><td>{t("Accounts")}</td><td>{Object.values(session?.accounts ?? {}).map((a) => a.name).join(", ")}</td></tr>