diff --git a/src/components/Group/GroupList.tsx b/src/components/Group/GroupList.tsx index 1057281..2c2e844 100644 --- a/src/components/Group/GroupList.tsx +++ b/src/components/Group/GroupList.tsx @@ -32,6 +32,7 @@ import { import { timeDifferenceForNotificationChats } from './Group'; import { useAtom, useAtomValue } from 'jotai'; +import { useTranslation } from 'react-i18next'; export const GroupList = ({ selectGroupFunc, @@ -49,6 +50,7 @@ export const GroupList = ({ myAddress, }) => { const theme = useTheme(); + const { t } = useTranslation(['auth', 'core', 'group']); const [isRunningPublicNode] = useAtom(isRunningPublicNodeAtom); return ( @@ -86,7 +88,9 @@ export const GroupList = ({ ? theme.palette.text.primary : theme.palette.text.secondary } - label="Groups" + label={t('group:group.group_other', { + postProcess: 'capitalizeFirst', + })} selected={desktopSideView === 'groups'} customWidth="75px" > @@ -102,6 +106,7 @@ export const GroupList = ({ /> + { setDesktopSideView('directs'); @@ -116,7 +121,9 @@ export const GroupList = ({ ? theme.palette.text.primary : theme.palette.text.secondary } - label="Messaging" + label={t('group:group.messaging', { + postProcess: 'capitalizeFirst', + })} selected={desktopSideView === 'directs'} > +
- Group + {t('group:group.group', { postProcess: 'capitalizeFirst' })} {!isRunningPublicNode && ( @@ -273,6 +281,7 @@ const GroupItem = React.memo( )} + + {announcement && !announcement?.seentimestamp && ( )} + )} + {groupProperty?.isOpen === false && ( AVANTI qui sotto.", "choose_password": "scegli una nuova password", @@ -63,8 +63,8 @@ "custom_many": "nodi personalizzati", "use_custom": "usa nodo personalizzato", "use_local": "usa nodo locale", - "using": "utilizzando nodo", - "using_public": "utilizzando nodo pubblico" + "using": "utilizzo nodo", + "using_public": "utilizzo di nodo pubblico" }, "note": "nota", "password": "password", diff --git a/src/i18n/locales/it/group.json b/src/i18n/locales/it/group.json index e53b6c8..510565f 100644 --- a/src/i18n/locales/it/group.json +++ b/src/i18n/locales/it/group.json @@ -16,9 +16,17 @@ "load_members": "carica membri con nomi", "make_admin": "rendi amministratore", "manage_members": "gestisci membri", + "promote_group": "promuovi il gruppo ai non-membri", + "publish_announcement": "pubblica annuncio", + "publish_avatar": "pubblica avatar", "refetch_page": "ricarica pagina", "remove_admin": "rimuovi come amministratore", - "return_to_thread": "torna alle discussioni" + "remove_minting_account": "rimuovi account di conio", + "return_to_thread": "torna alle discussioni", + "scroll_bottom": "vai in fondo", + "scroll_unread_messages": "vai ai messaggi non letti", + "select_group": "seleziona un gruppo", + "visit_q_mintership": "visita Q-Mintership" }, "advanced_options": "opzioni avanzate", "approval_threshold": "soglia di approvazione del gruppo (numero / percentuale di amministratori che devono approvare una transazione)", @@ -28,14 +36,21 @@ "maximum": "ritardo massimo dei blocchi per le approvazioni delle transazioni di gruppo" }, "group": { + "avatar": "avatar del gruppo", "closed": "chiuso (privato) – gli utenti hanno bisogno del permesso per entrare", "description": "descrizione del gruppo", "id": "ID gruppo", "invites": "inviti del gruppo", + "group": "gruppo", + "group_other": "gruppi", "management": "gestione del gruppo", "member_number": "numero di membri", + "messaging": "messaggi", "name": "nome del gruppo", "open": "aperto (pubblico)", + "private": "gruppo privato", + "promotions": "promozione gruppi", + "public": "gruppo pubblico", "type": "tipo di gruppo" }, "invitation_expiry": "tempo di scadenza dell'invito", @@ -46,16 +61,40 @@ "latest_mails": "ultimi Q-Mails", "message": { "generic": { + "avatar_publish_fee": "publishing an Avatar requires {{ fee }}", + "avatar_registered_name": "a registered name is required to set an avatar", + "admin_only": "only groups where you are an admin will be shown", "already_in_group": "sei già in questo gruppo!", "closed_group": "questo è un gruppo chiuso/privato, devi aspettare che un admin accetti la tua richiesta", "descrypt_wallet": "decrittazione portafoglio in corso...", "encryption_key": "la prima chiave di cifratura comune del gruppo è in fase di creazione. Attendere qualche minuto affinché venga recuperata dalla rete. Controllo ogni 2 minuti...", + "group_announcement": "group Announcements", "group_invited_you": "{{group}} ti ha invitato", + "group_key_created": "first group key created.", + "group_member_list_changed": "the group member list has changed. Please re-encrypt the secret key.", + "group_no_secret_key": "there is no group secret key. Be the first admin to publish one!", + "group_secret_key_no_owner": "the latest group secret key was published by a non-owner. As the owner of the group please re-encrypt the key as a safeguard.", + "invalid_content": "invalid content, sender, or timestamp in reaction data", + "invalid_data": "error loading content: Invalid Data", + "latest_promotion": "only the latest promotion from the week will be shown for your group.", "loading_members": "caricamento elenco membri con nomi... attendere.", + "max_chars": "max 200 characters. Publish Fee", + "manage_minting": "manage your minting", + "minter_group": "you are currently not part of the MINTER group", + "mintership_app": "visit the Q-Mintership app to apply to be a minter", + "minting_account": "minting account:", + "minting_keys_per_node": "only 2 minting keys are allowed per node. Please remove one if you would like to mint with this account.", + "minting_keys_per_node_different": "only 2 minting keys are allowed per node. Please remove one if you would like to add a different account.", + "next_level": "blocks remaining until next level:", + "node_minting": "This node is minting:", + "node_minting_account": "node's minting accounts", + "node_minting_key": "you currently have a minting key for this account attached to this node", + "no_announcement": "no announcements", "no_display": "niente da mostrare", "no_selection": "nessun gruppo selezionato", "not_part_group": "non fai parte del gruppo cifrato. Attendi che un amministratore re-critti le chiavi.", "only_encrypted": "verranno mostrati solo i messaggi non cifrati.", + "only_private_groups": "only private groups will be shown", "private_key_copied": "chiave privata copiata", "provide_message": "inserisci un primo messaggio per la discussione", "secure_place": "conserva la tua chiave privata in un luogo sicuro. Non condividerla!", @@ -66,10 +105,15 @@ "descrypt_wallet": "errore nella decrittazione del portafoglio {{ :errorMessage }}", "description_required": "inserisci una descrizione", "group_info": "impossibile accedere alle informazioni del gruppo", + "group_promotion": "error publishing the promotion. Please try again", "group_secret_key": "impossibile ottenere la chiave segreta del gruppo", "name_required": "inserisci un nome", "notify_admins": "prova a contattare un amministratore dalla lista qui sotto:", - "thread_id": "impossibile trovare l'ID della discussione" + "qortals_required": "you need at least {{ quantity }} QORT to send a message", + "timeout_reward": "timeout waiting for reward share confirmation", + "thread_id": "impossibile trovare l'ID della discussione", + "unable_determine_group_private": "unable to determine if group is private", + "unable_minting": "unable to start minting" }, "success": { "group_ban": "membro bannato con successo dal gruppo. Potrebbero volerci alcuni minuti affinché le modifiche si propaghino", @@ -87,19 +131,27 @@ "group_leave_name": "uscito dal gruppo {{group_name}}: in attesa di conferma", "group_leave_label": "uscito dal gruppo {{name}}: successo!", "group_member_admin": "membro nominato amministratore con successo. Potrebbero volerci alcuni minuti affinché le modifiche si propaghino", + "group_promotion": "successfully published promotion. It may take a couple of minutes for the promotion to appear", "group_remove_member": "amministratore rimosso con successo. Potrebbero volerci alcuni minuti affinché le modifiche si propaghino", "invitation_cancellation": "invito annullato con successo. Potrebbero volerci alcuni minuti affinché le modifiche si propaghino", "invitation_request": "richiesta di adesione accettata: in attesa di conferma", "loading_threads": "caricamento discussioni... attendere.", "post_creation": "post creato con successo. Potrebbe volerci un po' per la pubblicazione", + "published_secret_key": "published secret key for group {{ group_id }}: awaiting confirmation", + "published_secret_key_label": "published secret key for group {{ group_id }}: success!", + "registered_name": "successfully registered. It may take a couple of minutes for the changes to propagate", + "registered_name_label": "registered name: awaiting confirmation. This may take a couple minutes.", + "registered_name_success": "registered name: success!", + "rewardshare_add": "add rewardshare: awaiting confirmation", + "rewardshare_add_label": "add rewardshare: success!", + "rewardshare_creation": "confirming creation of rewardshare on chain. Please be patient, this could take up to 90 seconds.", + "rewardshare_confirmed": "rewardshare confirmed. Please click Next.", + "rewardshare_remove": "remove rewardshare: awaiting confirmation", + "rewardshare_remove_label": "remove rewardshare: success!", "thread_creation": "discussione creata con successo. Potrebbe volerci un po' per la pubblicazione", "unbanned_user": "utente sbannato con successo. Potrebbero volerci alcuni minuti affinché le modifiche si propaghino", "user_joined": "utente entrato con successo!" } }, - "question": { - "perform_transaction": "vuoi eseguire una transazione di tipo {{action}}?", - "provide_thread": "inserisci un titolo per la discussione" - }, "thread_posts": "nuovi messaggi nella discussione" }