From 11ee741716393b5044d3aa808849ccc10e926c95 Mon Sep 17 00:00:00 2001 From: Captain <92152627+chatwoot-bot@users.noreply.github.com> Date: Mon, 16 Mar 2026 15:44:32 -0700 Subject: [PATCH] chore: Update translations (#13227) Co-authored-by: Sojan Jose --- .../dashboard/i18n/locale/am/agentBots.json | 6 +- .../dashboard/i18n/locale/am/agentMgmt.json | 3 + .../i18n/locale/am/attributesMgmt.json | 7 + .../dashboard/i18n/locale/am/automation.json | 12 +- .../dashboard/i18n/locale/am/bulkActions.json | 4 + .../dashboard/i18n/locale/am/cannedMgmt.json | 3 + .../dashboard/i18n/locale/am/chatlist.json | 3 + .../dashboard/i18n/locale/am/contact.json | 12 +- .../i18n/locale/am/conversation.json | 15 +- .../dashboard/i18n/locale/am/customRole.json | 3 + .../dashboard/i18n/locale/am/datePicker.json | 5 + .../dashboard/i18n/locale/am/general.json | 9 +- .../i18n/locale/am/generalSettings.json | 1 + .../dashboard/i18n/locale/am/helpCenter.json | 10 + .../dashboard/i18n/locale/am/inboxMgmt.json | 94 +++- .../i18n/locale/am/integrationApps.json | 4 + .../i18n/locale/am/integrations.json | 48 +- .../dashboard/i18n/locale/am/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/am/macros.json | 6 +- .../dashboard/i18n/locale/am/mfa.json | 2 +- .../dashboard/i18n/locale/am/report.json | 84 +++- .../dashboard/i18n/locale/am/settings.json | 134 +++++- .../dashboard/i18n/locale/am/signup.json | 1 + .../dashboard/i18n/locale/am/sla.json | 13 +- .../dashboard/i18n/locale/am/snooze.json | 72 +++ .../i18n/locale/am/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ar/agentBots.json | 6 +- .../dashboard/i18n/locale/ar/agentMgmt.json | 3 + .../i18n/locale/ar/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ar/automation.json | 12 +- .../dashboard/i18n/locale/ar/bulkActions.json | 4 + .../dashboard/i18n/locale/ar/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ar/chatlist.json | 5 +- .../dashboard/i18n/locale/ar/companies.json | 20 +- .../dashboard/i18n/locale/ar/contact.json | 18 +- .../i18n/locale/ar/conversation.json | 31 +- .../dashboard/i18n/locale/ar/customRole.json | 3 + .../dashboard/i18n/locale/ar/datePicker.json | 5 + .../dashboard/i18n/locale/ar/general.json | 9 +- .../i18n/locale/ar/generalSettings.json | 1 + .../dashboard/i18n/locale/ar/helpCenter.json | 10 + .../dashboard/i18n/locale/ar/inboxMgmt.json | 142 ++++-- .../i18n/locale/ar/integrationApps.json | 4 + .../i18n/locale/ar/integrations.json | 48 +- .../dashboard/i18n/locale/ar/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ar/macros.json | 6 +- .../dashboard/i18n/locale/ar/mfa.json | 2 +- .../dashboard/i18n/locale/ar/report.json | 84 +++- .../dashboard/i18n/locale/ar/search.json | 34 +- .../dashboard/i18n/locale/ar/settings.json | 138 +++++- .../dashboard/i18n/locale/ar/signup.json | 1 + .../dashboard/i18n/locale/ar/sla.json | 13 +- .../dashboard/i18n/locale/ar/snooze.json | 72 +++ .../i18n/locale/ar/teamsSettings.json | 5 +- .../dashboard/i18n/locale/az/agentBots.json | 6 +- .../dashboard/i18n/locale/az/agentMgmt.json | 3 + .../i18n/locale/az/attributesMgmt.json | 7 + .../dashboard/i18n/locale/az/automation.json | 12 +- .../dashboard/i18n/locale/az/bulkActions.json | 4 + .../dashboard/i18n/locale/az/cannedMgmt.json | 3 + .../dashboard/i18n/locale/az/chatlist.json | 3 + .../dashboard/i18n/locale/az/contact.json | 12 +- .../i18n/locale/az/conversation.json | 15 +- .../dashboard/i18n/locale/az/customRole.json | 3 + .../dashboard/i18n/locale/az/datePicker.json | 5 + .../dashboard/i18n/locale/az/general.json | 9 +- .../i18n/locale/az/generalSettings.json | 1 + .../dashboard/i18n/locale/az/helpCenter.json | 10 + .../dashboard/i18n/locale/az/inboxMgmt.json | 94 +++- .../i18n/locale/az/integrationApps.json | 4 + .../i18n/locale/az/integrations.json | 48 +- .../dashboard/i18n/locale/az/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/az/macros.json | 6 +- .../dashboard/i18n/locale/az/mfa.json | 2 +- .../dashboard/i18n/locale/az/report.json | 84 +++- .../dashboard/i18n/locale/az/settings.json | 134 +++++- .../dashboard/i18n/locale/az/signup.json | 1 + .../dashboard/i18n/locale/az/sla.json | 13 +- .../dashboard/i18n/locale/az/snooze.json | 72 +++ .../i18n/locale/az/teamsSettings.json | 7 +- .../dashboard/i18n/locale/bg/agentBots.json | 6 +- .../dashboard/i18n/locale/bg/agentMgmt.json | 3 + .../i18n/locale/bg/attributesMgmt.json | 7 + .../dashboard/i18n/locale/bg/automation.json | 12 +- .../dashboard/i18n/locale/bg/bulkActions.json | 4 + .../dashboard/i18n/locale/bg/cannedMgmt.json | 3 + .../dashboard/i18n/locale/bg/chatlist.json | 3 + .../dashboard/i18n/locale/bg/contact.json | 12 +- .../i18n/locale/bg/conversation.json | 15 +- .../dashboard/i18n/locale/bg/customRole.json | 3 + .../dashboard/i18n/locale/bg/datePicker.json | 5 + .../dashboard/i18n/locale/bg/general.json | 9 +- .../i18n/locale/bg/generalSettings.json | 1 + .../dashboard/i18n/locale/bg/helpCenter.json | 10 + .../dashboard/i18n/locale/bg/inboxMgmt.json | 94 +++- .../i18n/locale/bg/integrationApps.json | 4 + .../i18n/locale/bg/integrations.json | 48 +- .../dashboard/i18n/locale/bg/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/bg/macros.json | 6 +- .../dashboard/i18n/locale/bg/mfa.json | 2 +- .../dashboard/i18n/locale/bg/report.json | 84 +++- .../dashboard/i18n/locale/bg/settings.json | 134 +++++- .../dashboard/i18n/locale/bg/signup.json | 1 + .../dashboard/i18n/locale/bg/sla.json | 13 +- .../dashboard/i18n/locale/bg/snooze.json | 72 +++ .../i18n/locale/bg/teamsSettings.json | 7 +- .../dashboard/i18n/locale/bn/agentBots.json | 6 +- .../dashboard/i18n/locale/bn/agentMgmt.json | 3 + .../i18n/locale/bn/attributesMgmt.json | 7 + .../dashboard/i18n/locale/bn/automation.json | 12 +- .../dashboard/i18n/locale/bn/bulkActions.json | 4 + .../dashboard/i18n/locale/bn/cannedMgmt.json | 3 + .../dashboard/i18n/locale/bn/chatlist.json | 3 + .../dashboard/i18n/locale/bn/contact.json | 12 +- .../i18n/locale/bn/conversation.json | 15 +- .../dashboard/i18n/locale/bn/customRole.json | 3 + .../dashboard/i18n/locale/bn/datePicker.json | 5 + .../dashboard/i18n/locale/bn/general.json | 9 +- .../i18n/locale/bn/generalSettings.json | 1 + .../dashboard/i18n/locale/bn/helpCenter.json | 10 + .../dashboard/i18n/locale/bn/inboxMgmt.json | 94 +++- .../i18n/locale/bn/integrationApps.json | 4 + .../i18n/locale/bn/integrations.json | 48 +- .../dashboard/i18n/locale/bn/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/bn/macros.json | 6 +- .../dashboard/i18n/locale/bn/mfa.json | 2 +- .../dashboard/i18n/locale/bn/report.json | 84 +++- .../dashboard/i18n/locale/bn/settings.json | 134 +++++- .../dashboard/i18n/locale/bn/signup.json | 1 + .../dashboard/i18n/locale/bn/sla.json | 13 +- .../dashboard/i18n/locale/bn/snooze.json | 72 +++ .../i18n/locale/bn/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ca/agentBots.json | 6 +- .../dashboard/i18n/locale/ca/agentMgmt.json | 3 + .../i18n/locale/ca/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ca/automation.json | 12 +- .../dashboard/i18n/locale/ca/bulkActions.json | 4 + .../dashboard/i18n/locale/ca/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ca/chatlist.json | 3 + .../dashboard/i18n/locale/ca/contact.json | 12 +- .../i18n/locale/ca/conversation.json | 15 +- .../dashboard/i18n/locale/ca/customRole.json | 3 + .../dashboard/i18n/locale/ca/datePicker.json | 5 + .../dashboard/i18n/locale/ca/general.json | 9 +- .../i18n/locale/ca/generalSettings.json | 1 + .../dashboard/i18n/locale/ca/helpCenter.json | 10 + .../dashboard/i18n/locale/ca/inboxMgmt.json | 94 +++- .../i18n/locale/ca/integrationApps.json | 4 + .../i18n/locale/ca/integrations.json | 48 +- .../dashboard/i18n/locale/ca/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ca/macros.json | 6 +- .../dashboard/i18n/locale/ca/mfa.json | 2 +- .../dashboard/i18n/locale/ca/report.json | 84 +++- .../dashboard/i18n/locale/ca/settings.json | 134 +++++- .../dashboard/i18n/locale/ca/signup.json | 1 + .../dashboard/i18n/locale/ca/sla.json | 13 +- .../dashboard/i18n/locale/ca/snooze.json | 72 +++ .../i18n/locale/ca/teamsSettings.json | 5 +- .../dashboard/i18n/locale/cs/agentBots.json | 6 +- .../dashboard/i18n/locale/cs/agentMgmt.json | 3 + .../i18n/locale/cs/attributesMgmt.json | 7 + .../dashboard/i18n/locale/cs/automation.json | 12 +- .../dashboard/i18n/locale/cs/bulkActions.json | 4 + .../dashboard/i18n/locale/cs/cannedMgmt.json | 3 + .../dashboard/i18n/locale/cs/chatlist.json | 3 + .../dashboard/i18n/locale/cs/contact.json | 12 +- .../i18n/locale/cs/conversation.json | 15 +- .../dashboard/i18n/locale/cs/customRole.json | 3 + .../dashboard/i18n/locale/cs/datePicker.json | 5 + .../dashboard/i18n/locale/cs/general.json | 9 +- .../i18n/locale/cs/generalSettings.json | 1 + .../dashboard/i18n/locale/cs/helpCenter.json | 10 + .../dashboard/i18n/locale/cs/inboxMgmt.json | 94 +++- .../i18n/locale/cs/integrationApps.json | 4 + .../i18n/locale/cs/integrations.json | 48 +- .../dashboard/i18n/locale/cs/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/cs/macros.json | 6 +- .../dashboard/i18n/locale/cs/mfa.json | 2 +- .../dashboard/i18n/locale/cs/report.json | 84 +++- .../dashboard/i18n/locale/cs/settings.json | 134 +++++- .../dashboard/i18n/locale/cs/signup.json | 1 + .../dashboard/i18n/locale/cs/sla.json | 13 +- .../dashboard/i18n/locale/cs/snooze.json | 72 +++ .../i18n/locale/cs/teamsSettings.json | 7 +- .../dashboard/i18n/locale/da/agentBots.json | 6 +- .../dashboard/i18n/locale/da/agentMgmt.json | 3 + .../i18n/locale/da/attributesMgmt.json | 7 + .../dashboard/i18n/locale/da/automation.json | 12 +- .../dashboard/i18n/locale/da/bulkActions.json | 4 + .../dashboard/i18n/locale/da/cannedMgmt.json | 3 + .../dashboard/i18n/locale/da/chatlist.json | 3 + .../dashboard/i18n/locale/da/contact.json | 12 +- .../i18n/locale/da/conversation.json | 15 +- .../dashboard/i18n/locale/da/customRole.json | 3 + .../dashboard/i18n/locale/da/datePicker.json | 5 + .../dashboard/i18n/locale/da/general.json | 9 +- .../i18n/locale/da/generalSettings.json | 1 + .../dashboard/i18n/locale/da/helpCenter.json | 10 + .../dashboard/i18n/locale/da/inboxMgmt.json | 94 +++- .../i18n/locale/da/integrationApps.json | 4 + .../i18n/locale/da/integrations.json | 48 +- .../dashboard/i18n/locale/da/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/da/macros.json | 6 +- .../dashboard/i18n/locale/da/mfa.json | 2 +- .../dashboard/i18n/locale/da/report.json | 84 +++- .../dashboard/i18n/locale/da/settings.json | 134 +++++- .../dashboard/i18n/locale/da/signup.json | 1 + .../dashboard/i18n/locale/da/sla.json | 13 +- .../dashboard/i18n/locale/da/snooze.json | 72 +++ .../i18n/locale/da/teamsSettings.json | 7 +- .../dashboard/i18n/locale/de/agentBots.json | 6 +- .../dashboard/i18n/locale/de/agentMgmt.json | 3 + .../i18n/locale/de/attributesMgmt.json | 7 + .../dashboard/i18n/locale/de/automation.json | 12 +- .../dashboard/i18n/locale/de/bulkActions.json | 4 + .../dashboard/i18n/locale/de/cannedMgmt.json | 3 + .../dashboard/i18n/locale/de/chatlist.json | 3 + .../dashboard/i18n/locale/de/companies.json | 16 +- .../dashboard/i18n/locale/de/contact.json | 12 +- .../i18n/locale/de/conversation.json | 15 +- .../dashboard/i18n/locale/de/customRole.json | 3 + .../dashboard/i18n/locale/de/datePicker.json | 5 + .../dashboard/i18n/locale/de/general.json | 9 +- .../i18n/locale/de/generalSettings.json | 1 + .../dashboard/i18n/locale/de/helpCenter.json | 10 + .../dashboard/i18n/locale/de/inboxMgmt.json | 98 +++- .../i18n/locale/de/integrationApps.json | 4 + .../i18n/locale/de/integrations.json | 48 +- .../dashboard/i18n/locale/de/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/de/macros.json | 6 +- .../dashboard/i18n/locale/de/mfa.json | 2 +- .../dashboard/i18n/locale/de/report.json | 84 +++- .../dashboard/i18n/locale/de/settings.json | 136 +++++- .../dashboard/i18n/locale/de/signup.json | 1 + .../dashboard/i18n/locale/de/sla.json | 13 +- .../dashboard/i18n/locale/de/snooze.json | 72 +++ .../i18n/locale/de/teamsSettings.json | 3 + .../dashboard/i18n/locale/el/agentBots.json | 6 +- .../dashboard/i18n/locale/el/agentMgmt.json | 3 + .../i18n/locale/el/attributesMgmt.json | 7 + .../dashboard/i18n/locale/el/automation.json | 12 +- .../dashboard/i18n/locale/el/bulkActions.json | 4 + .../dashboard/i18n/locale/el/cannedMgmt.json | 3 + .../dashboard/i18n/locale/el/chatlist.json | 3 + .../dashboard/i18n/locale/el/contact.json | 12 +- .../i18n/locale/el/conversation.json | 15 +- .../dashboard/i18n/locale/el/customRole.json | 3 + .../dashboard/i18n/locale/el/datePicker.json | 5 + .../dashboard/i18n/locale/el/general.json | 9 +- .../i18n/locale/el/generalSettings.json | 1 + .../dashboard/i18n/locale/el/helpCenter.json | 10 + .../dashboard/i18n/locale/el/inboxMgmt.json | 94 +++- .../i18n/locale/el/integrationApps.json | 4 + .../i18n/locale/el/integrations.json | 48 +- .../dashboard/i18n/locale/el/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/el/macros.json | 6 +- .../dashboard/i18n/locale/el/mfa.json | 2 +- .../dashboard/i18n/locale/el/report.json | 84 +++- .../dashboard/i18n/locale/el/settings.json | 134 +++++- .../dashboard/i18n/locale/el/signup.json | 1 + .../dashboard/i18n/locale/el/sla.json | 13 +- .../dashboard/i18n/locale/el/snooze.json | 72 +++ .../i18n/locale/el/teamsSettings.json | 7 +- .../dashboard/i18n/locale/es/agentBots.json | 6 +- .../dashboard/i18n/locale/es/agentMgmt.json | 3 + .../i18n/locale/es/attributesMgmt.json | 7 + .../dashboard/i18n/locale/es/automation.json | 12 +- .../dashboard/i18n/locale/es/bulkActions.json | 4 + .../dashboard/i18n/locale/es/cannedMgmt.json | 3 + .../dashboard/i18n/locale/es/chatlist.json | 3 + .../dashboard/i18n/locale/es/companies.json | 2 +- .../dashboard/i18n/locale/es/contact.json | 12 +- .../i18n/locale/es/conversation.json | 15 +- .../dashboard/i18n/locale/es/customRole.json | 3 + .../dashboard/i18n/locale/es/datePicker.json | 5 + .../dashboard/i18n/locale/es/general.json | 9 +- .../i18n/locale/es/generalSettings.json | 1 + .../dashboard/i18n/locale/es/helpCenter.json | 10 + .../dashboard/i18n/locale/es/inboxMgmt.json | 94 +++- .../i18n/locale/es/integrationApps.json | 4 + .../i18n/locale/es/integrations.json | 48 +- .../dashboard/i18n/locale/es/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/es/macros.json | 6 +- .../dashboard/i18n/locale/es/mfa.json | 2 +- .../dashboard/i18n/locale/es/report.json | 84 +++- .../dashboard/i18n/locale/es/settings.json | 134 +++++- .../dashboard/i18n/locale/es/signup.json | 1 + .../dashboard/i18n/locale/es/sla.json | 13 +- .../dashboard/i18n/locale/es/snooze.json | 72 +++ .../i18n/locale/es/teamsSettings.json | 7 +- .../i18n/locale/es/yearInReview.json | 2 +- .../dashboard/i18n/locale/et/agentBots.json | 6 +- .../dashboard/i18n/locale/et/agentMgmt.json | 3 + .../i18n/locale/et/attributesMgmt.json | 7 + .../dashboard/i18n/locale/et/automation.json | 12 +- .../dashboard/i18n/locale/et/bulkActions.json | 4 + .../dashboard/i18n/locale/et/cannedMgmt.json | 3 + .../dashboard/i18n/locale/et/chatlist.json | 3 + .../dashboard/i18n/locale/et/contact.json | 12 +- .../i18n/locale/et/conversation.json | 15 +- .../dashboard/i18n/locale/et/customRole.json | 3 + .../dashboard/i18n/locale/et/datePicker.json | 5 + .../dashboard/i18n/locale/et/general.json | 9 +- .../i18n/locale/et/generalSettings.json | 1 + .../dashboard/i18n/locale/et/helpCenter.json | 10 + .../dashboard/i18n/locale/et/inboxMgmt.json | 94 +++- .../i18n/locale/et/integrationApps.json | 4 + .../i18n/locale/et/integrations.json | 48 +- .../dashboard/i18n/locale/et/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/et/macros.json | 6 +- .../dashboard/i18n/locale/et/mfa.json | 2 +- .../dashboard/i18n/locale/et/report.json | 84 +++- .../dashboard/i18n/locale/et/settings.json | 134 +++++- .../dashboard/i18n/locale/et/signup.json | 1 + .../dashboard/i18n/locale/et/sla.json | 13 +- .../dashboard/i18n/locale/et/snooze.json | 72 +++ .../i18n/locale/et/teamsSettings.json | 7 +- .../dashboard/i18n/locale/fa/agentBots.json | 6 +- .../dashboard/i18n/locale/fa/agentMgmt.json | 3 + .../i18n/locale/fa/attributesMgmt.json | 7 + .../dashboard/i18n/locale/fa/automation.json | 12 +- .../dashboard/i18n/locale/fa/bulkActions.json | 4 + .../dashboard/i18n/locale/fa/cannedMgmt.json | 3 + .../dashboard/i18n/locale/fa/chatlist.json | 3 + .../dashboard/i18n/locale/fa/contact.json | 12 +- .../i18n/locale/fa/conversation.json | 15 +- .../dashboard/i18n/locale/fa/customRole.json | 3 + .../dashboard/i18n/locale/fa/datePicker.json | 5 + .../dashboard/i18n/locale/fa/general.json | 9 +- .../i18n/locale/fa/generalSettings.json | 1 + .../dashboard/i18n/locale/fa/helpCenter.json | 10 + .../dashboard/i18n/locale/fa/inboxMgmt.json | 94 +++- .../i18n/locale/fa/integrationApps.json | 4 + .../i18n/locale/fa/integrations.json | 48 +- .../dashboard/i18n/locale/fa/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/fa/macros.json | 6 +- .../dashboard/i18n/locale/fa/mfa.json | 2 +- .../dashboard/i18n/locale/fa/report.json | 84 +++- .../dashboard/i18n/locale/fa/settings.json | 134 +++++- .../dashboard/i18n/locale/fa/signup.json | 1 + .../dashboard/i18n/locale/fa/sla.json | 13 +- .../dashboard/i18n/locale/fa/snooze.json | 72 +++ .../i18n/locale/fa/teamsSettings.json | 3 + .../dashboard/i18n/locale/fi/agentBots.json | 6 +- .../dashboard/i18n/locale/fi/agentMgmt.json | 3 + .../i18n/locale/fi/attributesMgmt.json | 7 + .../dashboard/i18n/locale/fi/automation.json | 12 +- .../dashboard/i18n/locale/fi/bulkActions.json | 4 + .../dashboard/i18n/locale/fi/cannedMgmt.json | 3 + .../dashboard/i18n/locale/fi/chatlist.json | 3 + .../dashboard/i18n/locale/fi/contact.json | 12 +- .../i18n/locale/fi/conversation.json | 15 +- .../dashboard/i18n/locale/fi/customRole.json | 3 + .../dashboard/i18n/locale/fi/datePicker.json | 5 + .../dashboard/i18n/locale/fi/general.json | 9 +- .../i18n/locale/fi/generalSettings.json | 1 + .../dashboard/i18n/locale/fi/helpCenter.json | 10 + .../dashboard/i18n/locale/fi/inboxMgmt.json | 94 +++- .../i18n/locale/fi/integrationApps.json | 4 + .../i18n/locale/fi/integrations.json | 48 +- .../dashboard/i18n/locale/fi/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/fi/macros.json | 6 +- .../dashboard/i18n/locale/fi/mfa.json | 2 +- .../dashboard/i18n/locale/fi/report.json | 84 +++- .../dashboard/i18n/locale/fi/settings.json | 134 +++++- .../dashboard/i18n/locale/fi/signup.json | 1 + .../dashboard/i18n/locale/fi/sla.json | 13 +- .../dashboard/i18n/locale/fi/snooze.json | 72 +++ .../i18n/locale/fi/teamsSettings.json | 5 +- .../dashboard/i18n/locale/fr/agentBots.json | 6 +- .../dashboard/i18n/locale/fr/agentMgmt.json | 3 + .../i18n/locale/fr/attributesMgmt.json | 7 + .../dashboard/i18n/locale/fr/automation.json | 12 +- .../dashboard/i18n/locale/fr/bulkActions.json | 4 + .../dashboard/i18n/locale/fr/cannedMgmt.json | 3 + .../dashboard/i18n/locale/fr/chatlist.json | 3 + .../dashboard/i18n/locale/fr/contact.json | 12 +- .../i18n/locale/fr/conversation.json | 15 +- .../dashboard/i18n/locale/fr/customRole.json | 3 + .../dashboard/i18n/locale/fr/datePicker.json | 5 + .../dashboard/i18n/locale/fr/general.json | 9 +- .../i18n/locale/fr/generalSettings.json | 1 + .../dashboard/i18n/locale/fr/helpCenter.json | 10 + .../dashboard/i18n/locale/fr/inboxMgmt.json | 94 +++- .../i18n/locale/fr/integrationApps.json | 4 + .../i18n/locale/fr/integrations.json | 48 +- .../dashboard/i18n/locale/fr/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/fr/macros.json | 6 +- .../dashboard/i18n/locale/fr/mfa.json | 2 +- .../dashboard/i18n/locale/fr/report.json | 84 +++- .../dashboard/i18n/locale/fr/settings.json | 134 +++++- .../dashboard/i18n/locale/fr/signup.json | 1 + .../dashboard/i18n/locale/fr/sla.json | 13 +- .../dashboard/i18n/locale/fr/snooze.json | 72 +++ .../i18n/locale/fr/teamsSettings.json | 7 +- .../dashboard/i18n/locale/he/agentBots.json | 6 +- .../dashboard/i18n/locale/he/agentMgmt.json | 3 + .../i18n/locale/he/attributesMgmt.json | 7 + .../dashboard/i18n/locale/he/automation.json | 12 +- .../dashboard/i18n/locale/he/bulkActions.json | 4 + .../dashboard/i18n/locale/he/cannedMgmt.json | 3 + .../dashboard/i18n/locale/he/chatlist.json | 3 + .../dashboard/i18n/locale/he/contact.json | 12 +- .../i18n/locale/he/conversation.json | 15 +- .../dashboard/i18n/locale/he/customRole.json | 3 + .../dashboard/i18n/locale/he/datePicker.json | 5 + .../dashboard/i18n/locale/he/general.json | 9 +- .../i18n/locale/he/generalSettings.json | 1 + .../dashboard/i18n/locale/he/helpCenter.json | 10 + .../dashboard/i18n/locale/he/inboxMgmt.json | 94 +++- .../i18n/locale/he/integrationApps.json | 4 + .../i18n/locale/he/integrations.json | 48 +- .../dashboard/i18n/locale/he/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/he/macros.json | 6 +- .../dashboard/i18n/locale/he/mfa.json | 2 +- .../dashboard/i18n/locale/he/report.json | 84 +++- .../dashboard/i18n/locale/he/settings.json | 134 +++++- .../dashboard/i18n/locale/he/signup.json | 1 + .../dashboard/i18n/locale/he/sla.json | 13 +- .../dashboard/i18n/locale/he/snooze.json | 72 +++ .../i18n/locale/he/teamsSettings.json | 5 +- .../dashboard/i18n/locale/hi/agentBots.json | 6 +- .../dashboard/i18n/locale/hi/agentMgmt.json | 3 + .../i18n/locale/hi/attributesMgmt.json | 7 + .../dashboard/i18n/locale/hi/automation.json | 12 +- .../dashboard/i18n/locale/hi/bulkActions.json | 4 + .../dashboard/i18n/locale/hi/cannedMgmt.json | 3 + .../dashboard/i18n/locale/hi/chatlist.json | 3 + .../dashboard/i18n/locale/hi/contact.json | 12 +- .../i18n/locale/hi/conversation.json | 15 +- .../dashboard/i18n/locale/hi/customRole.json | 3 + .../dashboard/i18n/locale/hi/datePicker.json | 5 + .../dashboard/i18n/locale/hi/general.json | 9 +- .../i18n/locale/hi/generalSettings.json | 1 + .../dashboard/i18n/locale/hi/helpCenter.json | 10 + .../dashboard/i18n/locale/hi/inboxMgmt.json | 94 +++- .../i18n/locale/hi/integrationApps.json | 4 + .../i18n/locale/hi/integrations.json | 48 +- .../dashboard/i18n/locale/hi/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/hi/macros.json | 6 +- .../dashboard/i18n/locale/hi/mfa.json | 2 +- .../dashboard/i18n/locale/hi/report.json | 84 +++- .../dashboard/i18n/locale/hi/settings.json | 134 +++++- .../dashboard/i18n/locale/hi/signup.json | 1 + .../dashboard/i18n/locale/hi/sla.json | 13 +- .../dashboard/i18n/locale/hi/snooze.json | 72 +++ .../i18n/locale/hi/teamsSettings.json | 7 +- .../dashboard/i18n/locale/hr/agentBots.json | 6 +- .../dashboard/i18n/locale/hr/agentMgmt.json | 3 + .../i18n/locale/hr/attributesMgmt.json | 7 + .../dashboard/i18n/locale/hr/automation.json | 12 +- .../dashboard/i18n/locale/hr/bulkActions.json | 4 + .../dashboard/i18n/locale/hr/cannedMgmt.json | 3 + .../dashboard/i18n/locale/hr/chatlist.json | 3 + .../dashboard/i18n/locale/hr/contact.json | 12 +- .../i18n/locale/hr/conversation.json | 15 +- .../dashboard/i18n/locale/hr/customRole.json | 3 + .../dashboard/i18n/locale/hr/datePicker.json | 5 + .../dashboard/i18n/locale/hr/general.json | 9 +- .../i18n/locale/hr/generalSettings.json | 1 + .../dashboard/i18n/locale/hr/helpCenter.json | 10 + .../dashboard/i18n/locale/hr/inboxMgmt.json | 94 +++- .../i18n/locale/hr/integrationApps.json | 4 + .../i18n/locale/hr/integrations.json | 48 +- .../dashboard/i18n/locale/hr/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/hr/macros.json | 6 +- .../dashboard/i18n/locale/hr/mfa.json | 2 +- .../dashboard/i18n/locale/hr/report.json | 84 +++- .../dashboard/i18n/locale/hr/settings.json | 134 +++++- .../dashboard/i18n/locale/hr/signup.json | 1 + .../dashboard/i18n/locale/hr/sla.json | 13 +- .../dashboard/i18n/locale/hr/snooze.json | 72 +++ .../i18n/locale/hr/teamsSettings.json | 7 +- .../dashboard/i18n/locale/hu/agentBots.json | 6 +- .../dashboard/i18n/locale/hu/agentMgmt.json | 3 + .../i18n/locale/hu/attributesMgmt.json | 7 + .../dashboard/i18n/locale/hu/automation.json | 12 +- .../dashboard/i18n/locale/hu/bulkActions.json | 4 + .../dashboard/i18n/locale/hu/cannedMgmt.json | 3 + .../dashboard/i18n/locale/hu/chatlist.json | 3 + .../dashboard/i18n/locale/hu/contact.json | 12 +- .../i18n/locale/hu/conversation.json | 15 +- .../dashboard/i18n/locale/hu/customRole.json | 3 + .../dashboard/i18n/locale/hu/datePicker.json | 5 + .../dashboard/i18n/locale/hu/general.json | 9 +- .../i18n/locale/hu/generalSettings.json | 1 + .../dashboard/i18n/locale/hu/helpCenter.json | 10 + .../dashboard/i18n/locale/hu/inboxMgmt.json | 94 +++- .../i18n/locale/hu/integrationApps.json | 4 + .../i18n/locale/hu/integrations.json | 48 +- .../dashboard/i18n/locale/hu/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/hu/macros.json | 6 +- .../dashboard/i18n/locale/hu/mfa.json | 2 +- .../dashboard/i18n/locale/hu/report.json | 84 +++- .../dashboard/i18n/locale/hu/settings.json | 134 +++++- .../dashboard/i18n/locale/hu/signup.json | 1 + .../dashboard/i18n/locale/hu/sla.json | 13 +- .../dashboard/i18n/locale/hu/snooze.json | 72 +++ .../i18n/locale/hu/teamsSettings.json | 7 +- .../dashboard/i18n/locale/hy/agentBots.json | 6 +- .../dashboard/i18n/locale/hy/agentMgmt.json | 3 + .../i18n/locale/hy/attributesMgmt.json | 7 + .../dashboard/i18n/locale/hy/automation.json | 12 +- .../dashboard/i18n/locale/hy/bulkActions.json | 4 + .../dashboard/i18n/locale/hy/cannedMgmt.json | 3 + .../dashboard/i18n/locale/hy/chatlist.json | 3 + .../dashboard/i18n/locale/hy/contact.json | 12 +- .../i18n/locale/hy/conversation.json | 15 +- .../dashboard/i18n/locale/hy/customRole.json | 3 + .../dashboard/i18n/locale/hy/datePicker.json | 5 + .../dashboard/i18n/locale/hy/general.json | 9 +- .../i18n/locale/hy/generalSettings.json | 1 + .../dashboard/i18n/locale/hy/helpCenter.json | 10 + .../dashboard/i18n/locale/hy/inboxMgmt.json | 94 +++- .../i18n/locale/hy/integrationApps.json | 4 + .../i18n/locale/hy/integrations.json | 48 +- .../dashboard/i18n/locale/hy/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/hy/macros.json | 6 +- .../dashboard/i18n/locale/hy/mfa.json | 2 +- .../dashboard/i18n/locale/hy/report.json | 84 +++- .../dashboard/i18n/locale/hy/settings.json | 134 +++++- .../dashboard/i18n/locale/hy/signup.json | 1 + .../dashboard/i18n/locale/hy/sla.json | 13 +- .../dashboard/i18n/locale/hy/snooze.json | 72 +++ .../i18n/locale/hy/teamsSettings.json | 7 +- .../dashboard/i18n/locale/id/agentBots.json | 6 +- .../dashboard/i18n/locale/id/agentMgmt.json | 3 + .../i18n/locale/id/attributesMgmt.json | 7 + .../dashboard/i18n/locale/id/automation.json | 12 +- .../dashboard/i18n/locale/id/bulkActions.json | 4 + .../dashboard/i18n/locale/id/cannedMgmt.json | 3 + .../dashboard/i18n/locale/id/chatlist.json | 3 + .../dashboard/i18n/locale/id/contact.json | 12 +- .../i18n/locale/id/conversation.json | 15 +- .../dashboard/i18n/locale/id/customRole.json | 3 + .../dashboard/i18n/locale/id/datePicker.json | 5 + .../dashboard/i18n/locale/id/general.json | 9 +- .../i18n/locale/id/generalSettings.json | 1 + .../dashboard/i18n/locale/id/helpCenter.json | 10 + .../dashboard/i18n/locale/id/inboxMgmt.json | 94 +++- .../i18n/locale/id/integrationApps.json | 4 + .../i18n/locale/id/integrations.json | 48 +- .../dashboard/i18n/locale/id/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/id/macros.json | 6 +- .../dashboard/i18n/locale/id/mfa.json | 2 +- .../dashboard/i18n/locale/id/report.json | 84 +++- .../dashboard/i18n/locale/id/settings.json | 134 +++++- .../dashboard/i18n/locale/id/signup.json | 1 + .../dashboard/i18n/locale/id/sla.json | 13 +- .../dashboard/i18n/locale/id/snooze.json | 72 +++ .../i18n/locale/id/teamsSettings.json | 3 + .../dashboard/i18n/locale/is/agentBots.json | 6 +- .../dashboard/i18n/locale/is/agentMgmt.json | 3 + .../i18n/locale/is/attributesMgmt.json | 7 + .../dashboard/i18n/locale/is/automation.json | 12 +- .../dashboard/i18n/locale/is/bulkActions.json | 4 + .../dashboard/i18n/locale/is/cannedMgmt.json | 3 + .../dashboard/i18n/locale/is/chatlist.json | 3 + .../dashboard/i18n/locale/is/contact.json | 12 +- .../i18n/locale/is/conversation.json | 15 +- .../dashboard/i18n/locale/is/customRole.json | 3 + .../dashboard/i18n/locale/is/datePicker.json | 5 + .../dashboard/i18n/locale/is/general.json | 9 +- .../i18n/locale/is/generalSettings.json | 1 + .../dashboard/i18n/locale/is/helpCenter.json | 10 + .../dashboard/i18n/locale/is/inboxMgmt.json | 94 +++- .../i18n/locale/is/integrationApps.json | 4 + .../i18n/locale/is/integrations.json | 48 +- .../dashboard/i18n/locale/is/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/is/macros.json | 6 +- .../dashboard/i18n/locale/is/mfa.json | 2 +- .../dashboard/i18n/locale/is/report.json | 84 +++- .../dashboard/i18n/locale/is/settings.json | 134 +++++- .../dashboard/i18n/locale/is/signup.json | 1 + .../dashboard/i18n/locale/is/sla.json | 13 +- .../dashboard/i18n/locale/is/snooze.json | 72 +++ .../i18n/locale/is/teamsSettings.json | 7 +- .../dashboard/i18n/locale/it/agentBots.json | 6 +- .../dashboard/i18n/locale/it/agentMgmt.json | 3 + .../i18n/locale/it/attributesMgmt.json | 7 + .../dashboard/i18n/locale/it/automation.json | 12 +- .../dashboard/i18n/locale/it/bulkActions.json | 4 + .../dashboard/i18n/locale/it/cannedMgmt.json | 3 + .../dashboard/i18n/locale/it/chatlist.json | 3 + .../dashboard/i18n/locale/it/companies.json | 2 +- .../dashboard/i18n/locale/it/contact.json | 12 +- .../i18n/locale/it/conversation.json | 15 +- .../dashboard/i18n/locale/it/customRole.json | 3 + .../dashboard/i18n/locale/it/datePicker.json | 5 + .../dashboard/i18n/locale/it/general.json | 9 +- .../i18n/locale/it/generalSettings.json | 1 + .../dashboard/i18n/locale/it/helpCenter.json | 10 + .../dashboard/i18n/locale/it/inboxMgmt.json | 94 +++- .../i18n/locale/it/integrationApps.json | 4 + .../i18n/locale/it/integrations.json | 48 +- .../dashboard/i18n/locale/it/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/it/macros.json | 6 +- .../dashboard/i18n/locale/it/mfa.json | 2 +- .../dashboard/i18n/locale/it/report.json | 82 +++- .../dashboard/i18n/locale/it/settings.json | 134 +++++- .../dashboard/i18n/locale/it/signup.json | 1 + .../dashboard/i18n/locale/it/sla.json | 13 +- .../dashboard/i18n/locale/it/snooze.json | 72 +++ .../i18n/locale/it/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ja/agentBots.json | 6 +- .../dashboard/i18n/locale/ja/agentMgmt.json | 3 + .../i18n/locale/ja/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ja/automation.json | 12 +- .../dashboard/i18n/locale/ja/bulkActions.json | 4 + .../dashboard/i18n/locale/ja/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ja/chatlist.json | 3 + .../dashboard/i18n/locale/ja/contact.json | 12 +- .../i18n/locale/ja/conversation.json | 15 +- .../dashboard/i18n/locale/ja/customRole.json | 3 + .../dashboard/i18n/locale/ja/datePicker.json | 5 + .../dashboard/i18n/locale/ja/general.json | 9 +- .../i18n/locale/ja/generalSettings.json | 1 + .../dashboard/i18n/locale/ja/helpCenter.json | 10 + .../dashboard/i18n/locale/ja/inboxMgmt.json | 94 +++- .../i18n/locale/ja/integrationApps.json | 4 + .../i18n/locale/ja/integrations.json | 48 +- .../dashboard/i18n/locale/ja/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ja/macros.json | 6 +- .../dashboard/i18n/locale/ja/mfa.json | 2 +- .../dashboard/i18n/locale/ja/report.json | 82 +++- .../dashboard/i18n/locale/ja/settings.json | 134 +++++- .../dashboard/i18n/locale/ja/signup.json | 1 + .../dashboard/i18n/locale/ja/sla.json | 13 +- .../dashboard/i18n/locale/ja/snooze.json | 72 +++ .../i18n/locale/ja/teamsSettings.json | 3 + .../dashboard/i18n/locale/ka/agentBots.json | 6 +- .../dashboard/i18n/locale/ka/agentMgmt.json | 3 + .../i18n/locale/ka/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ka/automation.json | 12 +- .../dashboard/i18n/locale/ka/bulkActions.json | 4 + .../dashboard/i18n/locale/ka/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ka/chatlist.json | 3 + .../dashboard/i18n/locale/ka/contact.json | 12 +- .../i18n/locale/ka/conversation.json | 15 +- .../dashboard/i18n/locale/ka/customRole.json | 3 + .../dashboard/i18n/locale/ka/datePicker.json | 5 + .../dashboard/i18n/locale/ka/general.json | 9 +- .../i18n/locale/ka/generalSettings.json | 1 + .../dashboard/i18n/locale/ka/helpCenter.json | 10 + .../dashboard/i18n/locale/ka/inboxMgmt.json | 94 +++- .../i18n/locale/ka/integrationApps.json | 4 + .../i18n/locale/ka/integrations.json | 48 +- .../dashboard/i18n/locale/ka/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ka/macros.json | 6 +- .../dashboard/i18n/locale/ka/mfa.json | 2 +- .../dashboard/i18n/locale/ka/report.json | 84 +++- .../dashboard/i18n/locale/ka/settings.json | 134 +++++- .../dashboard/i18n/locale/ka/signup.json | 1 + .../dashboard/i18n/locale/ka/sla.json | 13 +- .../dashboard/i18n/locale/ka/snooze.json | 72 +++ .../i18n/locale/ka/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ko/agentBots.json | 6 +- .../dashboard/i18n/locale/ko/agentMgmt.json | 3 + .../i18n/locale/ko/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ko/automation.json | 12 +- .../dashboard/i18n/locale/ko/bulkActions.json | 4 + .../dashboard/i18n/locale/ko/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ko/chatlist.json | 5 +- .../dashboard/i18n/locale/ko/contact.json | 12 +- .../i18n/locale/ko/conversation.json | 15 +- .../dashboard/i18n/locale/ko/customRole.json | 3 + .../dashboard/i18n/locale/ko/datePicker.json | 5 + .../dashboard/i18n/locale/ko/general.json | 9 +- .../i18n/locale/ko/generalSettings.json | 1 + .../dashboard/i18n/locale/ko/helpCenter.json | 10 + .../dashboard/i18n/locale/ko/inboxMgmt.json | 94 +++- .../i18n/locale/ko/integrationApps.json | 4 + .../i18n/locale/ko/integrations.json | 48 +- .../dashboard/i18n/locale/ko/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ko/macros.json | 6 +- .../dashboard/i18n/locale/ko/mfa.json | 2 +- .../dashboard/i18n/locale/ko/report.json | 84 +++- .../dashboard/i18n/locale/ko/settings.json | 134 +++++- .../dashboard/i18n/locale/ko/signup.json | 1 + .../dashboard/i18n/locale/ko/sla.json | 13 +- .../dashboard/i18n/locale/ko/snooze.json | 72 +++ .../i18n/locale/ko/teamsSettings.json | 3 + .../dashboard/i18n/locale/lt/agentBots.json | 6 +- .../dashboard/i18n/locale/lt/agentMgmt.json | 3 + .../i18n/locale/lt/attributesMgmt.json | 7 + .../dashboard/i18n/locale/lt/automation.json | 12 +- .../dashboard/i18n/locale/lt/bulkActions.json | 4 + .../dashboard/i18n/locale/lt/cannedMgmt.json | 3 + .../dashboard/i18n/locale/lt/chatlist.json | 3 + .../dashboard/i18n/locale/lt/contact.json | 12 +- .../i18n/locale/lt/conversation.json | 15 +- .../dashboard/i18n/locale/lt/customRole.json | 3 + .../dashboard/i18n/locale/lt/datePicker.json | 5 + .../dashboard/i18n/locale/lt/general.json | 9 +- .../i18n/locale/lt/generalSettings.json | 1 + .../dashboard/i18n/locale/lt/helpCenter.json | 10 + .../dashboard/i18n/locale/lt/inboxMgmt.json | 94 +++- .../i18n/locale/lt/integrationApps.json | 4 + .../i18n/locale/lt/integrations.json | 48 +- .../dashboard/i18n/locale/lt/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/lt/macros.json | 6 +- .../dashboard/i18n/locale/lt/mfa.json | 2 +- .../dashboard/i18n/locale/lt/report.json | 84 +++- .../dashboard/i18n/locale/lt/settings.json | 134 +++++- .../dashboard/i18n/locale/lt/signup.json | 1 + .../dashboard/i18n/locale/lt/sla.json | 13 +- .../dashboard/i18n/locale/lt/snooze.json | 72 +++ .../i18n/locale/lt/teamsSettings.json | 3 + .../dashboard/i18n/locale/lv/agentBots.json | 6 +- .../dashboard/i18n/locale/lv/agentMgmt.json | 3 + .../i18n/locale/lv/attributesMgmt.json | 7 + .../dashboard/i18n/locale/lv/automation.json | 12 +- .../dashboard/i18n/locale/lv/bulkActions.json | 4 + .../dashboard/i18n/locale/lv/cannedMgmt.json | 3 + .../dashboard/i18n/locale/lv/chatlist.json | 3 + .../dashboard/i18n/locale/lv/contact.json | 12 +- .../i18n/locale/lv/conversation.json | 15 +- .../dashboard/i18n/locale/lv/customRole.json | 3 + .../dashboard/i18n/locale/lv/datePicker.json | 5 + .../dashboard/i18n/locale/lv/general.json | 9 +- .../i18n/locale/lv/generalSettings.json | 1 + .../dashboard/i18n/locale/lv/helpCenter.json | 10 + .../dashboard/i18n/locale/lv/inboxMgmt.json | 94 +++- .../i18n/locale/lv/integrationApps.json | 4 + .../i18n/locale/lv/integrations.json | 48 +- .../dashboard/i18n/locale/lv/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/lv/macros.json | 6 +- .../dashboard/i18n/locale/lv/mfa.json | 2 +- .../dashboard/i18n/locale/lv/report.json | 84 +++- .../dashboard/i18n/locale/lv/settings.json | 134 +++++- .../dashboard/i18n/locale/lv/signup.json | 1 + .../dashboard/i18n/locale/lv/sla.json | 13 +- .../dashboard/i18n/locale/lv/snooze.json | 72 +++ .../i18n/locale/lv/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ml/agentBots.json | 6 +- .../dashboard/i18n/locale/ml/agentMgmt.json | 3 + .../i18n/locale/ml/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ml/automation.json | 12 +- .../dashboard/i18n/locale/ml/bulkActions.json | 4 + .../dashboard/i18n/locale/ml/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ml/chatlist.json | 3 + .../dashboard/i18n/locale/ml/contact.json | 12 +- .../i18n/locale/ml/conversation.json | 15 +- .../dashboard/i18n/locale/ml/customRole.json | 3 + .../dashboard/i18n/locale/ml/datePicker.json | 5 + .../dashboard/i18n/locale/ml/general.json | 9 +- .../i18n/locale/ml/generalSettings.json | 1 + .../dashboard/i18n/locale/ml/helpCenter.json | 10 + .../dashboard/i18n/locale/ml/inboxMgmt.json | 94 +++- .../i18n/locale/ml/integrationApps.json | 4 + .../i18n/locale/ml/integrations.json | 48 +- .../dashboard/i18n/locale/ml/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ml/macros.json | 6 +- .../dashboard/i18n/locale/ml/mfa.json | 2 +- .../dashboard/i18n/locale/ml/report.json | 84 +++- .../dashboard/i18n/locale/ml/settings.json | 134 +++++- .../dashboard/i18n/locale/ml/signup.json | 1 + .../dashboard/i18n/locale/ml/sla.json | 13 +- .../dashboard/i18n/locale/ml/snooze.json | 72 +++ .../i18n/locale/ml/teamsSettings.json | 5 +- .../dashboard/i18n/locale/ms/agentBots.json | 6 +- .../dashboard/i18n/locale/ms/agentMgmt.json | 3 + .../i18n/locale/ms/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ms/automation.json | 12 +- .../dashboard/i18n/locale/ms/bulkActions.json | 4 + .../dashboard/i18n/locale/ms/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ms/chatlist.json | 3 + .../dashboard/i18n/locale/ms/contact.json | 12 +- .../i18n/locale/ms/conversation.json | 15 +- .../dashboard/i18n/locale/ms/customRole.json | 3 + .../dashboard/i18n/locale/ms/datePicker.json | 5 + .../dashboard/i18n/locale/ms/general.json | 9 +- .../i18n/locale/ms/generalSettings.json | 1 + .../dashboard/i18n/locale/ms/helpCenter.json | 10 + .../dashboard/i18n/locale/ms/inboxMgmt.json | 94 +++- .../i18n/locale/ms/integrationApps.json | 4 + .../i18n/locale/ms/integrations.json | 48 +- .../dashboard/i18n/locale/ms/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ms/macros.json | 6 +- .../dashboard/i18n/locale/ms/mfa.json | 2 +- .../dashboard/i18n/locale/ms/report.json | 84 +++- .../dashboard/i18n/locale/ms/settings.json | 134 +++++- .../dashboard/i18n/locale/ms/signup.json | 1 + .../dashboard/i18n/locale/ms/sla.json | 13 +- .../dashboard/i18n/locale/ms/snooze.json | 72 +++ .../i18n/locale/ms/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ne/agentBots.json | 6 +- .../dashboard/i18n/locale/ne/agentMgmt.json | 3 + .../i18n/locale/ne/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ne/automation.json | 12 +- .../dashboard/i18n/locale/ne/bulkActions.json | 4 + .../dashboard/i18n/locale/ne/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ne/chatlist.json | 3 + .../dashboard/i18n/locale/ne/contact.json | 12 +- .../i18n/locale/ne/conversation.json | 15 +- .../dashboard/i18n/locale/ne/customRole.json | 3 + .../dashboard/i18n/locale/ne/datePicker.json | 5 + .../dashboard/i18n/locale/ne/general.json | 9 +- .../i18n/locale/ne/generalSettings.json | 1 + .../dashboard/i18n/locale/ne/helpCenter.json | 10 + .../dashboard/i18n/locale/ne/inboxMgmt.json | 94 +++- .../i18n/locale/ne/integrationApps.json | 4 + .../i18n/locale/ne/integrations.json | 48 +- .../dashboard/i18n/locale/ne/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ne/macros.json | 6 +- .../dashboard/i18n/locale/ne/mfa.json | 2 +- .../dashboard/i18n/locale/ne/report.json | 84 +++- .../dashboard/i18n/locale/ne/settings.json | 134 +++++- .../dashboard/i18n/locale/ne/signup.json | 1 + .../dashboard/i18n/locale/ne/sla.json | 13 +- .../dashboard/i18n/locale/ne/snooze.json | 72 +++ .../i18n/locale/ne/teamsSettings.json | 7 +- .../dashboard/i18n/locale/nl/agentBots.json | 6 +- .../dashboard/i18n/locale/nl/agentMgmt.json | 3 + .../i18n/locale/nl/attributesMgmt.json | 7 + .../dashboard/i18n/locale/nl/automation.json | 12 +- .../dashboard/i18n/locale/nl/bulkActions.json | 4 + .../dashboard/i18n/locale/nl/cannedMgmt.json | 3 + .../dashboard/i18n/locale/nl/chatlist.json | 3 + .../dashboard/i18n/locale/nl/contact.json | 12 +- .../i18n/locale/nl/conversation.json | 15 +- .../dashboard/i18n/locale/nl/customRole.json | 3 + .../dashboard/i18n/locale/nl/datePicker.json | 5 + .../dashboard/i18n/locale/nl/general.json | 9 +- .../i18n/locale/nl/generalSettings.json | 1 + .../dashboard/i18n/locale/nl/helpCenter.json | 10 + .../dashboard/i18n/locale/nl/inboxMgmt.json | 94 +++- .../i18n/locale/nl/integrationApps.json | 4 + .../i18n/locale/nl/integrations.json | 48 +- .../dashboard/i18n/locale/nl/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/nl/macros.json | 6 +- .../dashboard/i18n/locale/nl/mfa.json | 2 +- .../dashboard/i18n/locale/nl/report.json | 84 +++- .../dashboard/i18n/locale/nl/settings.json | 134 +++++- .../dashboard/i18n/locale/nl/signup.json | 1 + .../dashboard/i18n/locale/nl/sla.json | 13 +- .../dashboard/i18n/locale/nl/snooze.json | 72 +++ .../i18n/locale/nl/teamsSettings.json | 5 +- .../dashboard/i18n/locale/no/agentBots.json | 6 +- .../dashboard/i18n/locale/no/agentMgmt.json | 3 + .../i18n/locale/no/attributesMgmt.json | 7 + .../dashboard/i18n/locale/no/automation.json | 12 +- .../dashboard/i18n/locale/no/bulkActions.json | 4 + .../dashboard/i18n/locale/no/cannedMgmt.json | 3 + .../dashboard/i18n/locale/no/chatlist.json | 3 + .../dashboard/i18n/locale/no/contact.json | 12 +- .../i18n/locale/no/conversation.json | 15 +- .../dashboard/i18n/locale/no/customRole.json | 3 + .../dashboard/i18n/locale/no/datePicker.json | 5 + .../dashboard/i18n/locale/no/general.json | 9 +- .../i18n/locale/no/generalSettings.json | 1 + .../dashboard/i18n/locale/no/helpCenter.json | 10 + .../dashboard/i18n/locale/no/inboxMgmt.json | 94 +++- .../i18n/locale/no/integrationApps.json | 4 + .../i18n/locale/no/integrations.json | 48 +- .../dashboard/i18n/locale/no/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/no/macros.json | 6 +- .../dashboard/i18n/locale/no/mfa.json | 2 +- .../dashboard/i18n/locale/no/report.json | 84 +++- .../dashboard/i18n/locale/no/settings.json | 134 +++++- .../dashboard/i18n/locale/no/signup.json | 1 + .../dashboard/i18n/locale/no/sla.json | 13 +- .../dashboard/i18n/locale/no/snooze.json | 72 +++ .../i18n/locale/no/teamsSettings.json | 7 +- .../dashboard/i18n/locale/pl/agentBots.json | 6 +- .../dashboard/i18n/locale/pl/agentMgmt.json | 3 + .../i18n/locale/pl/attributesMgmt.json | 7 + .../dashboard/i18n/locale/pl/automation.json | 12 +- .../dashboard/i18n/locale/pl/bulkActions.json | 4 + .../dashboard/i18n/locale/pl/cannedMgmt.json | 3 + .../dashboard/i18n/locale/pl/chatlist.json | 3 + .../dashboard/i18n/locale/pl/contact.json | 12 +- .../i18n/locale/pl/conversation.json | 15 +- .../dashboard/i18n/locale/pl/customRole.json | 3 + .../dashboard/i18n/locale/pl/datePicker.json | 5 + .../dashboard/i18n/locale/pl/general.json | 9 +- .../i18n/locale/pl/generalSettings.json | 1 + .../dashboard/i18n/locale/pl/helpCenter.json | 10 + .../dashboard/i18n/locale/pl/inboxMgmt.json | 94 +++- .../i18n/locale/pl/integrationApps.json | 4 + .../i18n/locale/pl/integrations.json | 48 +- .../dashboard/i18n/locale/pl/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/pl/macros.json | 6 +- .../dashboard/i18n/locale/pl/mfa.json | 2 +- .../dashboard/i18n/locale/pl/report.json | 84 +++- .../dashboard/i18n/locale/pl/settings.json | 134 +++++- .../dashboard/i18n/locale/pl/signup.json | 1 + .../dashboard/i18n/locale/pl/sla.json | 13 +- .../dashboard/i18n/locale/pl/snooze.json | 72 +++ .../i18n/locale/pl/teamsSettings.json | 7 +- .../dashboard/i18n/locale/pt/agentBots.json | 6 +- .../dashboard/i18n/locale/pt/agentMgmt.json | 3 + .../i18n/locale/pt/attributesMgmt.json | 7 + .../dashboard/i18n/locale/pt/automation.json | 12 +- .../dashboard/i18n/locale/pt/bulkActions.json | 4 + .../dashboard/i18n/locale/pt/cannedMgmt.json | 3 + .../dashboard/i18n/locale/pt/chatlist.json | 3 + .../dashboard/i18n/locale/pt/contact.json | 12 +- .../i18n/locale/pt/conversation.json | 15 +- .../dashboard/i18n/locale/pt/customRole.json | 3 + .../dashboard/i18n/locale/pt/datePicker.json | 5 + .../dashboard/i18n/locale/pt/general.json | 9 +- .../i18n/locale/pt/generalSettings.json | 1 + .../dashboard/i18n/locale/pt/helpCenter.json | 10 + .../dashboard/i18n/locale/pt/inboxMgmt.json | 94 +++- .../i18n/locale/pt/integrationApps.json | 4 + .../i18n/locale/pt/integrations.json | 48 +- .../dashboard/i18n/locale/pt/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/pt/macros.json | 6 +- .../dashboard/i18n/locale/pt/mfa.json | 2 +- .../dashboard/i18n/locale/pt/report.json | 84 +++- .../dashboard/i18n/locale/pt/settings.json | 134 +++++- .../dashboard/i18n/locale/pt/signup.json | 1 + .../dashboard/i18n/locale/pt/sla.json | 13 +- .../dashboard/i18n/locale/pt/snooze.json | 72 +++ .../i18n/locale/pt/teamsSettings.json | 7 +- .../i18n/locale/pt_BR/agentBots.json | 6 +- .../i18n/locale/pt_BR/agentMgmt.json | 3 + .../i18n/locale/pt_BR/attributesMgmt.json | 15 +- .../i18n/locale/pt_BR/automation.json | 12 +- .../i18n/locale/pt_BR/bulkActions.json | 4 + .../i18n/locale/pt_BR/cannedMgmt.json | 3 + .../dashboard/i18n/locale/pt_BR/chatlist.json | 3 + .../i18n/locale/pt_BR/companies.json | 4 +- .../i18n/locale/pt_BR/components.json | 2 +- .../dashboard/i18n/locale/pt_BR/contact.json | 40 +- .../i18n/locale/pt_BR/conversation.json | 47 +- .../i18n/locale/pt_BR/customRole.json | 3 + .../i18n/locale/pt_BR/datePicker.json | 5 + .../dashboard/i18n/locale/pt_BR/general.json | 9 +- .../i18n/locale/pt_BR/generalSettings.json | 1 + .../i18n/locale/pt_BR/helpCenter.json | 80 ++-- .../i18n/locale/pt_BR/inboxMgmt.json | 112 ++++- .../i18n/locale/pt_BR/integrationApps.json | 6 +- .../i18n/locale/pt_BR/integrations.json | 162 ++++--- .../i18n/locale/pt_BR/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/pt_BR/login.json | 2 +- .../dashboard/i18n/locale/pt_BR/macros.json | 6 +- .../dashboard/i18n/locale/pt_BR/mfa.json | 144 +++--- .../dashboard/i18n/locale/pt_BR/report.json | 96 +++- .../dashboard/i18n/locale/pt_BR/search.json | 2 +- .../dashboard/i18n/locale/pt_BR/settings.json | 422 ++++++++++++------ .../dashboard/i18n/locale/pt_BR/signup.json | 13 +- .../dashboard/i18n/locale/pt_BR/sla.json | 13 +- .../dashboard/i18n/locale/pt_BR/snooze.json | 72 +++ .../i18n/locale/pt_BR/teamsSettings.json | 7 +- .../i18n/locale/pt_BR/whatsappTemplates.json | 2 +- .../i18n/locale/pt_BR/yearInReview.json | 2 +- .../dashboard/i18n/locale/ro/agentBots.json | 6 +- .../dashboard/i18n/locale/ro/agentMgmt.json | 3 + .../i18n/locale/ro/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ro/automation.json | 12 +- .../dashboard/i18n/locale/ro/bulkActions.json | 4 + .../dashboard/i18n/locale/ro/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ro/chatlist.json | 3 + .../dashboard/i18n/locale/ro/contact.json | 12 +- .../i18n/locale/ro/conversation.json | 15 +- .../dashboard/i18n/locale/ro/customRole.json | 3 + .../dashboard/i18n/locale/ro/datePicker.json | 5 + .../dashboard/i18n/locale/ro/general.json | 9 +- .../i18n/locale/ro/generalSettings.json | 1 + .../dashboard/i18n/locale/ro/helpCenter.json | 10 + .../dashboard/i18n/locale/ro/inboxMgmt.json | 94 +++- .../i18n/locale/ro/integrationApps.json | 4 + .../i18n/locale/ro/integrations.json | 48 +- .../dashboard/i18n/locale/ro/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ro/macros.json | 6 +- .../dashboard/i18n/locale/ro/mfa.json | 2 +- .../dashboard/i18n/locale/ro/report.json | 84 +++- .../dashboard/i18n/locale/ro/settings.json | 134 +++++- .../dashboard/i18n/locale/ro/signup.json | 1 + .../dashboard/i18n/locale/ro/sla.json | 13 +- .../dashboard/i18n/locale/ro/snooze.json | 72 +++ .../i18n/locale/ro/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ru/agentBots.json | 6 +- .../dashboard/i18n/locale/ru/agentMgmt.json | 3 + .../i18n/locale/ru/attributesMgmt.json | 11 +- .../dashboard/i18n/locale/ru/automation.json | 12 +- .../dashboard/i18n/locale/ru/bulkActions.json | 4 + .../dashboard/i18n/locale/ru/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ru/chatlist.json | 5 +- .../dashboard/i18n/locale/ru/companies.json | 4 +- .../dashboard/i18n/locale/ru/contact.json | 18 +- .../i18n/locale/ru/conversation.json | 23 +- .../dashboard/i18n/locale/ru/customRole.json | 3 + .../dashboard/i18n/locale/ru/datePicker.json | 5 + .../dashboard/i18n/locale/ru/general.json | 9 +- .../i18n/locale/ru/generalSettings.json | 1 + .../dashboard/i18n/locale/ru/helpCenter.json | 10 + .../dashboard/i18n/locale/ru/inboxMgmt.json | 94 +++- .../i18n/locale/ru/integrationApps.json | 4 + .../i18n/locale/ru/integrations.json | 48 +- .../dashboard/i18n/locale/ru/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ru/macros.json | 6 +- .../dashboard/i18n/locale/ru/mfa.json | 2 +- .../dashboard/i18n/locale/ru/report.json | 84 +++- .../dashboard/i18n/locale/ru/settings.json | 134 +++++- .../dashboard/i18n/locale/ru/signup.json | 1 + .../dashboard/i18n/locale/ru/sla.json | 13 +- .../dashboard/i18n/locale/ru/snooze.json | 72 +++ .../i18n/locale/ru/teamsSettings.json | 3 + .../dashboard/i18n/locale/sh/agentBots.json | 6 +- .../dashboard/i18n/locale/sh/agentMgmt.json | 3 + .../i18n/locale/sh/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sh/automation.json | 12 +- .../dashboard/i18n/locale/sh/bulkActions.json | 4 + .../dashboard/i18n/locale/sh/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sh/chatlist.json | 3 + .../dashboard/i18n/locale/sh/contact.json | 12 +- .../i18n/locale/sh/conversation.json | 15 +- .../dashboard/i18n/locale/sh/customRole.json | 3 + .../dashboard/i18n/locale/sh/datePicker.json | 5 + .../dashboard/i18n/locale/sh/general.json | 9 +- .../i18n/locale/sh/generalSettings.json | 1 + .../dashboard/i18n/locale/sh/helpCenter.json | 10 + .../dashboard/i18n/locale/sh/inboxMgmt.json | 94 +++- .../i18n/locale/sh/integrationApps.json | 4 + .../i18n/locale/sh/integrations.json | 48 +- .../dashboard/i18n/locale/sh/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sh/macros.json | 6 +- .../dashboard/i18n/locale/sh/mfa.json | 2 +- .../dashboard/i18n/locale/sh/report.json | 84 +++- .../dashboard/i18n/locale/sh/settings.json | 134 +++++- .../dashboard/i18n/locale/sh/signup.json | 1 + .../dashboard/i18n/locale/sh/sla.json | 13 +- .../dashboard/i18n/locale/sh/snooze.json | 72 +++ .../i18n/locale/sh/teamsSettings.json | 7 +- .../dashboard/i18n/locale/sk/agentBots.json | 6 +- .../dashboard/i18n/locale/sk/agentMgmt.json | 3 + .../i18n/locale/sk/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sk/automation.json | 12 +- .../dashboard/i18n/locale/sk/bulkActions.json | 4 + .../dashboard/i18n/locale/sk/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sk/chatlist.json | 3 + .../dashboard/i18n/locale/sk/contact.json | 12 +- .../i18n/locale/sk/conversation.json | 15 +- .../dashboard/i18n/locale/sk/customRole.json | 3 + .../dashboard/i18n/locale/sk/datePicker.json | 5 + .../dashboard/i18n/locale/sk/general.json | 9 +- .../i18n/locale/sk/generalSettings.json | 1 + .../dashboard/i18n/locale/sk/helpCenter.json | 10 + .../dashboard/i18n/locale/sk/inboxMgmt.json | 94 +++- .../i18n/locale/sk/integrationApps.json | 4 + .../i18n/locale/sk/integrations.json | 48 +- .../dashboard/i18n/locale/sk/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sk/macros.json | 6 +- .../dashboard/i18n/locale/sk/mfa.json | 2 +- .../dashboard/i18n/locale/sk/report.json | 84 +++- .../dashboard/i18n/locale/sk/settings.json | 134 +++++- .../dashboard/i18n/locale/sk/signup.json | 1 + .../dashboard/i18n/locale/sk/sla.json | 13 +- .../dashboard/i18n/locale/sk/snooze.json | 72 +++ .../i18n/locale/sk/teamsSettings.json | 7 +- .../dashboard/i18n/locale/sl/agentBots.json | 6 +- .../dashboard/i18n/locale/sl/agentMgmt.json | 3 + .../i18n/locale/sl/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sl/automation.json | 12 +- .../dashboard/i18n/locale/sl/bulkActions.json | 4 + .../dashboard/i18n/locale/sl/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sl/chatlist.json | 3 + .../dashboard/i18n/locale/sl/contact.json | 12 +- .../i18n/locale/sl/conversation.json | 15 +- .../dashboard/i18n/locale/sl/customRole.json | 3 + .../dashboard/i18n/locale/sl/datePicker.json | 5 + .../dashboard/i18n/locale/sl/general.json | 9 +- .../i18n/locale/sl/generalSettings.json | 1 + .../dashboard/i18n/locale/sl/helpCenter.json | 10 + .../dashboard/i18n/locale/sl/inboxMgmt.json | 94 +++- .../i18n/locale/sl/integrationApps.json | 4 + .../i18n/locale/sl/integrations.json | 48 +- .../dashboard/i18n/locale/sl/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sl/macros.json | 6 +- .../dashboard/i18n/locale/sl/mfa.json | 2 +- .../dashboard/i18n/locale/sl/report.json | 84 +++- .../dashboard/i18n/locale/sl/settings.json | 134 +++++- .../dashboard/i18n/locale/sl/signup.json | 1 + .../dashboard/i18n/locale/sl/sla.json | 13 +- .../dashboard/i18n/locale/sl/snooze.json | 72 +++ .../i18n/locale/sl/teamsSettings.json | 7 +- .../dashboard/i18n/locale/sq/agentBots.json | 6 +- .../dashboard/i18n/locale/sq/agentMgmt.json | 3 + .../i18n/locale/sq/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sq/automation.json | 12 +- .../dashboard/i18n/locale/sq/bulkActions.json | 4 + .../dashboard/i18n/locale/sq/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sq/chatlist.json | 3 + .../dashboard/i18n/locale/sq/contact.json | 12 +- .../i18n/locale/sq/conversation.json | 15 +- .../dashboard/i18n/locale/sq/customRole.json | 3 + .../dashboard/i18n/locale/sq/datePicker.json | 5 + .../dashboard/i18n/locale/sq/general.json | 9 +- .../i18n/locale/sq/generalSettings.json | 1 + .../dashboard/i18n/locale/sq/helpCenter.json | 10 + .../dashboard/i18n/locale/sq/inboxMgmt.json | 94 +++- .../i18n/locale/sq/integrationApps.json | 4 + .../i18n/locale/sq/integrations.json | 48 +- .../dashboard/i18n/locale/sq/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sq/macros.json | 6 +- .../dashboard/i18n/locale/sq/mfa.json | 2 +- .../dashboard/i18n/locale/sq/report.json | 84 +++- .../dashboard/i18n/locale/sq/settings.json | 134 +++++- .../dashboard/i18n/locale/sq/signup.json | 1 + .../dashboard/i18n/locale/sq/sla.json | 13 +- .../dashboard/i18n/locale/sq/snooze.json | 72 +++ .../i18n/locale/sq/teamsSettings.json | 7 +- .../dashboard/i18n/locale/sr/agentBots.json | 6 +- .../dashboard/i18n/locale/sr/agentMgmt.json | 3 + .../i18n/locale/sr/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sr/automation.json | 12 +- .../dashboard/i18n/locale/sr/bulkActions.json | 4 + .../dashboard/i18n/locale/sr/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sr/chatlist.json | 3 + .../dashboard/i18n/locale/sr/contact.json | 12 +- .../i18n/locale/sr/conversation.json | 15 +- .../dashboard/i18n/locale/sr/customRole.json | 3 + .../dashboard/i18n/locale/sr/datePicker.json | 5 + .../dashboard/i18n/locale/sr/general.json | 9 +- .../i18n/locale/sr/generalSettings.json | 1 + .../dashboard/i18n/locale/sr/helpCenter.json | 10 + .../dashboard/i18n/locale/sr/inboxMgmt.json | 94 +++- .../i18n/locale/sr/integrationApps.json | 4 + .../i18n/locale/sr/integrations.json | 48 +- .../dashboard/i18n/locale/sr/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sr/macros.json | 6 +- .../dashboard/i18n/locale/sr/mfa.json | 2 +- .../dashboard/i18n/locale/sr/report.json | 84 +++- .../dashboard/i18n/locale/sr/settings.json | 134 +++++- .../dashboard/i18n/locale/sr/signup.json | 1 + .../dashboard/i18n/locale/sr/sla.json | 13 +- .../dashboard/i18n/locale/sr/snooze.json | 72 +++ .../i18n/locale/sr/teamsSettings.json | 7 +- .../dashboard/i18n/locale/sv/agentBots.json | 6 +- .../dashboard/i18n/locale/sv/agentMgmt.json | 3 + .../i18n/locale/sv/attributesMgmt.json | 7 + .../dashboard/i18n/locale/sv/automation.json | 12 +- .../dashboard/i18n/locale/sv/bulkActions.json | 4 + .../dashboard/i18n/locale/sv/cannedMgmt.json | 3 + .../dashboard/i18n/locale/sv/chatlist.json | 3 + .../dashboard/i18n/locale/sv/contact.json | 12 +- .../i18n/locale/sv/conversation.json | 15 +- .../dashboard/i18n/locale/sv/customRole.json | 3 + .../dashboard/i18n/locale/sv/datePicker.json | 5 + .../dashboard/i18n/locale/sv/general.json | 9 +- .../i18n/locale/sv/generalSettings.json | 1 + .../dashboard/i18n/locale/sv/helpCenter.json | 10 + .../dashboard/i18n/locale/sv/inboxMgmt.json | 94 +++- .../i18n/locale/sv/integrationApps.json | 4 + .../i18n/locale/sv/integrations.json | 48 +- .../dashboard/i18n/locale/sv/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/sv/macros.json | 6 +- .../dashboard/i18n/locale/sv/mfa.json | 2 +- .../dashboard/i18n/locale/sv/report.json | 84 +++- .../dashboard/i18n/locale/sv/settings.json | 134 +++++- .../dashboard/i18n/locale/sv/signup.json | 1 + .../dashboard/i18n/locale/sv/sla.json | 13 +- .../dashboard/i18n/locale/sv/snooze.json | 72 +++ .../i18n/locale/sv/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ta/agentBots.json | 6 +- .../dashboard/i18n/locale/ta/agentMgmt.json | 3 + .../i18n/locale/ta/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ta/automation.json | 12 +- .../dashboard/i18n/locale/ta/bulkActions.json | 4 + .../dashboard/i18n/locale/ta/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ta/chatlist.json | 3 + .../dashboard/i18n/locale/ta/contact.json | 12 +- .../i18n/locale/ta/conversation.json | 15 +- .../dashboard/i18n/locale/ta/customRole.json | 3 + .../dashboard/i18n/locale/ta/datePicker.json | 5 + .../dashboard/i18n/locale/ta/general.json | 9 +- .../i18n/locale/ta/generalSettings.json | 1 + .../dashboard/i18n/locale/ta/helpCenter.json | 10 + .../dashboard/i18n/locale/ta/inboxMgmt.json | 94 +++- .../i18n/locale/ta/integrationApps.json | 4 + .../i18n/locale/ta/integrations.json | 48 +- .../dashboard/i18n/locale/ta/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ta/macros.json | 6 +- .../dashboard/i18n/locale/ta/mfa.json | 2 +- .../dashboard/i18n/locale/ta/report.json | 84 +++- .../dashboard/i18n/locale/ta/settings.json | 134 +++++- .../dashboard/i18n/locale/ta/signup.json | 1 + .../dashboard/i18n/locale/ta/sla.json | 13 +- .../dashboard/i18n/locale/ta/snooze.json | 72 +++ .../i18n/locale/ta/teamsSettings.json | 7 +- .../dashboard/i18n/locale/th/agentBots.json | 6 +- .../dashboard/i18n/locale/th/agentMgmt.json | 3 + .../i18n/locale/th/attributesMgmt.json | 7 + .../dashboard/i18n/locale/th/automation.json | 12 +- .../dashboard/i18n/locale/th/bulkActions.json | 4 + .../dashboard/i18n/locale/th/cannedMgmt.json | 3 + .../dashboard/i18n/locale/th/chatlist.json | 3 + .../dashboard/i18n/locale/th/contact.json | 12 +- .../i18n/locale/th/conversation.json | 15 +- .../dashboard/i18n/locale/th/customRole.json | 3 + .../dashboard/i18n/locale/th/datePicker.json | 5 + .../dashboard/i18n/locale/th/general.json | 9 +- .../i18n/locale/th/generalSettings.json | 1 + .../dashboard/i18n/locale/th/helpCenter.json | 10 + .../dashboard/i18n/locale/th/inboxMgmt.json | 94 +++- .../i18n/locale/th/integrationApps.json | 4 + .../i18n/locale/th/integrations.json | 48 +- .../dashboard/i18n/locale/th/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/th/macros.json | 6 +- .../dashboard/i18n/locale/th/mfa.json | 2 +- .../dashboard/i18n/locale/th/report.json | 84 +++- .../dashboard/i18n/locale/th/settings.json | 134 +++++- .../dashboard/i18n/locale/th/signup.json | 1 + .../dashboard/i18n/locale/th/sla.json | 13 +- .../dashboard/i18n/locale/th/snooze.json | 72 +++ .../i18n/locale/th/teamsSettings.json | 3 + .../dashboard/i18n/locale/tl/agentBots.json | 6 +- .../dashboard/i18n/locale/tl/agentMgmt.json | 3 + .../i18n/locale/tl/attributesMgmt.json | 7 + .../dashboard/i18n/locale/tl/automation.json | 12 +- .../dashboard/i18n/locale/tl/bulkActions.json | 4 + .../dashboard/i18n/locale/tl/cannedMgmt.json | 3 + .../dashboard/i18n/locale/tl/chatlist.json | 3 + .../dashboard/i18n/locale/tl/contact.json | 12 +- .../i18n/locale/tl/conversation.json | 15 +- .../dashboard/i18n/locale/tl/customRole.json | 3 + .../dashboard/i18n/locale/tl/datePicker.json | 5 + .../dashboard/i18n/locale/tl/general.json | 9 +- .../i18n/locale/tl/generalSettings.json | 1 + .../dashboard/i18n/locale/tl/helpCenter.json | 10 + .../dashboard/i18n/locale/tl/inboxMgmt.json | 94 +++- .../i18n/locale/tl/integrationApps.json | 4 + .../i18n/locale/tl/integrations.json | 48 +- .../dashboard/i18n/locale/tl/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/tl/macros.json | 6 +- .../dashboard/i18n/locale/tl/mfa.json | 2 +- .../dashboard/i18n/locale/tl/report.json | 84 +++- .../dashboard/i18n/locale/tl/settings.json | 134 +++++- .../dashboard/i18n/locale/tl/signup.json | 1 + .../dashboard/i18n/locale/tl/sla.json | 13 +- .../dashboard/i18n/locale/tl/snooze.json | 72 +++ .../i18n/locale/tl/teamsSettings.json | 7 +- .../dashboard/i18n/locale/tr/agentBots.json | 6 +- .../dashboard/i18n/locale/tr/agentMgmt.json | 3 + .../i18n/locale/tr/attributesMgmt.json | 9 +- .../dashboard/i18n/locale/tr/automation.json | 12 +- .../dashboard/i18n/locale/tr/bulkActions.json | 4 + .../dashboard/i18n/locale/tr/campaign.json | 12 +- .../dashboard/i18n/locale/tr/cannedMgmt.json | 5 +- .../dashboard/i18n/locale/tr/chatlist.json | 3 + .../dashboard/i18n/locale/tr/contact.json | 14 +- .../i18n/locale/tr/conversation.json | 15 +- .../dashboard/i18n/locale/tr/customRole.json | 15 +- .../dashboard/i18n/locale/tr/datePicker.json | 5 + .../dashboard/i18n/locale/tr/general.json | 9 +- .../i18n/locale/tr/generalSettings.json | 1 + .../dashboard/i18n/locale/tr/helpCenter.json | 22 +- .../dashboard/i18n/locale/tr/inboxMgmt.json | 110 ++++- .../i18n/locale/tr/integrationApps.json | 4 + .../i18n/locale/tr/integrations.json | 66 ++- .../dashboard/i18n/locale/tr/labelsMgmt.json | 8 +- .../dashboard/i18n/locale/tr/macros.json | 6 +- .../dashboard/i18n/locale/tr/mfa.json | 2 +- .../dashboard/i18n/locale/tr/report.json | 84 +++- .../dashboard/i18n/locale/tr/settings.json | 218 +++++++-- .../dashboard/i18n/locale/tr/signup.json | 1 + .../dashboard/i18n/locale/tr/sla.json | 13 +- .../dashboard/i18n/locale/tr/snooze.json | 72 +++ .../i18n/locale/tr/teamsSettings.json | 5 +- .../dashboard/i18n/locale/uk/agentBots.json | 6 +- .../dashboard/i18n/locale/uk/agentMgmt.json | 3 + .../i18n/locale/uk/attributesMgmt.json | 11 +- .../dashboard/i18n/locale/uk/automation.json | 12 +- .../dashboard/i18n/locale/uk/bulkActions.json | 4 + .../dashboard/i18n/locale/uk/cannedMgmt.json | 3 + .../dashboard/i18n/locale/uk/chatlist.json | 5 +- .../dashboard/i18n/locale/uk/companies.json | 22 +- .../dashboard/i18n/locale/uk/contact.json | 18 +- .../i18n/locale/uk/contentTemplates.json | 2 +- .../i18n/locale/uk/conversation.json | 23 +- .../dashboard/i18n/locale/uk/customRole.json | 3 + .../dashboard/i18n/locale/uk/datePicker.json | 5 + .../dashboard/i18n/locale/uk/general.json | 9 +- .../i18n/locale/uk/generalSettings.json | 1 + .../dashboard/i18n/locale/uk/helpCenter.json | 10 + .../dashboard/i18n/locale/uk/inboxMgmt.json | 144 ++++-- .../i18n/locale/uk/integrationApps.json | 4 + .../i18n/locale/uk/integrations.json | 48 +- .../dashboard/i18n/locale/uk/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/uk/macros.json | 6 +- .../dashboard/i18n/locale/uk/mfa.json | 2 +- .../dashboard/i18n/locale/uk/report.json | 84 +++- .../dashboard/i18n/locale/uk/settings.json | 136 +++++- .../dashboard/i18n/locale/uk/signup.json | 1 + .../dashboard/i18n/locale/uk/sla.json | 13 +- .../dashboard/i18n/locale/uk/snooze.json | 72 +++ .../i18n/locale/uk/teamsSettings.json | 7 +- .../dashboard/i18n/locale/ur/agentBots.json | 6 +- .../dashboard/i18n/locale/ur/agentMgmt.json | 3 + .../i18n/locale/ur/attributesMgmt.json | 7 + .../dashboard/i18n/locale/ur/automation.json | 12 +- .../dashboard/i18n/locale/ur/bulkActions.json | 4 + .../dashboard/i18n/locale/ur/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ur/chatlist.json | 3 + .../dashboard/i18n/locale/ur/contact.json | 12 +- .../i18n/locale/ur/conversation.json | 15 +- .../dashboard/i18n/locale/ur/customRole.json | 3 + .../dashboard/i18n/locale/ur/datePicker.json | 5 + .../dashboard/i18n/locale/ur/general.json | 9 +- .../i18n/locale/ur/generalSettings.json | 1 + .../dashboard/i18n/locale/ur/helpCenter.json | 10 + .../dashboard/i18n/locale/ur/inboxMgmt.json | 94 +++- .../i18n/locale/ur/integrationApps.json | 4 + .../i18n/locale/ur/integrations.json | 48 +- .../dashboard/i18n/locale/ur/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ur/macros.json | 6 +- .../dashboard/i18n/locale/ur/mfa.json | 2 +- .../dashboard/i18n/locale/ur/report.json | 84 +++- .../dashboard/i18n/locale/ur/settings.json | 134 +++++- .../dashboard/i18n/locale/ur/signup.json | 1 + .../dashboard/i18n/locale/ur/sla.json | 13 +- .../dashboard/i18n/locale/ur/snooze.json | 72 +++ .../i18n/locale/ur/teamsSettings.json | 7 +- .../i18n/locale/ur_IN/agentBots.json | 6 +- .../i18n/locale/ur_IN/agentMgmt.json | 3 + .../i18n/locale/ur_IN/attributesMgmt.json | 7 + .../i18n/locale/ur_IN/automation.json | 12 +- .../i18n/locale/ur_IN/bulkActions.json | 4 + .../i18n/locale/ur_IN/cannedMgmt.json | 3 + .../dashboard/i18n/locale/ur_IN/chatlist.json | 3 + .../dashboard/i18n/locale/ur_IN/contact.json | 12 +- .../i18n/locale/ur_IN/conversation.json | 15 +- .../i18n/locale/ur_IN/customRole.json | 3 + .../i18n/locale/ur_IN/datePicker.json | 5 + .../dashboard/i18n/locale/ur_IN/general.json | 9 +- .../i18n/locale/ur_IN/generalSettings.json | 1 + .../i18n/locale/ur_IN/helpCenter.json | 10 + .../i18n/locale/ur_IN/inboxMgmt.json | 94 +++- .../i18n/locale/ur_IN/integrationApps.json | 4 + .../i18n/locale/ur_IN/integrations.json | 48 +- .../i18n/locale/ur_IN/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/ur_IN/macros.json | 6 +- .../dashboard/i18n/locale/ur_IN/mfa.json | 2 +- .../dashboard/i18n/locale/ur_IN/report.json | 84 +++- .../dashboard/i18n/locale/ur_IN/settings.json | 134 +++++- .../dashboard/i18n/locale/ur_IN/signup.json | 1 + .../dashboard/i18n/locale/ur_IN/sla.json | 13 +- .../dashboard/i18n/locale/ur_IN/snooze.json | 72 +++ .../i18n/locale/ur_IN/teamsSettings.json | 7 +- .../dashboard/i18n/locale/vi/agentBots.json | 6 +- .../dashboard/i18n/locale/vi/agentMgmt.json | 3 + .../i18n/locale/vi/attributesMgmt.json | 7 + .../dashboard/i18n/locale/vi/automation.json | 12 +- .../dashboard/i18n/locale/vi/bulkActions.json | 4 + .../dashboard/i18n/locale/vi/cannedMgmt.json | 3 + .../dashboard/i18n/locale/vi/chatlist.json | 3 + .../dashboard/i18n/locale/vi/contact.json | 12 +- .../i18n/locale/vi/conversation.json | 15 +- .../dashboard/i18n/locale/vi/customRole.json | 3 + .../dashboard/i18n/locale/vi/datePicker.json | 5 + .../dashboard/i18n/locale/vi/general.json | 9 +- .../i18n/locale/vi/generalSettings.json | 1 + .../dashboard/i18n/locale/vi/helpCenter.json | 10 + .../dashboard/i18n/locale/vi/inboxMgmt.json | 94 +++- .../i18n/locale/vi/integrationApps.json | 4 + .../i18n/locale/vi/integrations.json | 48 +- .../dashboard/i18n/locale/vi/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/vi/macros.json | 6 +- .../dashboard/i18n/locale/vi/mfa.json | 2 +- .../dashboard/i18n/locale/vi/report.json | 84 +++- .../dashboard/i18n/locale/vi/settings.json | 134 +++++- .../dashboard/i18n/locale/vi/signup.json | 1 + .../dashboard/i18n/locale/vi/sla.json | 13 +- .../dashboard/i18n/locale/vi/snooze.json | 72 +++ .../i18n/locale/vi/teamsSettings.json | 7 +- .../i18n/locale/zh_CN/agentBots.json | 6 +- .../i18n/locale/zh_CN/agentMgmt.json | 3 + .../i18n/locale/zh_CN/attributesMgmt.json | 7 + .../i18n/locale/zh_CN/automation.json | 12 +- .../i18n/locale/zh_CN/bulkActions.json | 4 + .../i18n/locale/zh_CN/cannedMgmt.json | 3 + .../dashboard/i18n/locale/zh_CN/chatlist.json | 3 + .../i18n/locale/zh_CN/companies.json | 16 +- .../dashboard/i18n/locale/zh_CN/contact.json | 16 +- .../i18n/locale/zh_CN/conversation.json | 15 +- .../i18n/locale/zh_CN/customRole.json | 3 + .../i18n/locale/zh_CN/datePicker.json | 5 + .../dashboard/i18n/locale/zh_CN/general.json | 9 +- .../i18n/locale/zh_CN/generalSettings.json | 1 + .../i18n/locale/zh_CN/helpCenter.json | 10 + .../i18n/locale/zh_CN/inboxMgmt.json | 94 +++- .../i18n/locale/zh_CN/integrationApps.json | 4 + .../i18n/locale/zh_CN/integrations.json | 48 +- .../i18n/locale/zh_CN/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/zh_CN/macros.json | 6 +- .../dashboard/i18n/locale/zh_CN/mfa.json | 2 +- .../dashboard/i18n/locale/zh_CN/report.json | 84 +++- .../dashboard/i18n/locale/zh_CN/search.json | 34 +- .../dashboard/i18n/locale/zh_CN/settings.json | 136 +++++- .../dashboard/i18n/locale/zh_CN/signup.json | 1 + .../dashboard/i18n/locale/zh_CN/sla.json | 13 +- .../dashboard/i18n/locale/zh_CN/snooze.json | 72 +++ .../i18n/locale/zh_CN/teamsSettings.json | 7 +- .../i18n/locale/zh_CN/yearInReview.json | 2 +- .../i18n/locale/zh_TW/agentBots.json | 6 +- .../i18n/locale/zh_TW/agentMgmt.json | 3 + .../i18n/locale/zh_TW/attributesMgmt.json | 7 + .../i18n/locale/zh_TW/automation.json | 12 +- .../i18n/locale/zh_TW/bulkActions.json | 4 + .../i18n/locale/zh_TW/cannedMgmt.json | 3 + .../dashboard/i18n/locale/zh_TW/chatlist.json | 3 + .../dashboard/i18n/locale/zh_TW/contact.json | 12 +- .../i18n/locale/zh_TW/conversation.json | 15 +- .../i18n/locale/zh_TW/customRole.json | 3 + .../i18n/locale/zh_TW/datePicker.json | 5 + .../dashboard/i18n/locale/zh_TW/general.json | 9 +- .../i18n/locale/zh_TW/generalSettings.json | 1 + .../i18n/locale/zh_TW/helpCenter.json | 10 + .../i18n/locale/zh_TW/inboxMgmt.json | 94 +++- .../i18n/locale/zh_TW/integrationApps.json | 4 + .../i18n/locale/zh_TW/integrations.json | 48 +- .../i18n/locale/zh_TW/labelsMgmt.json | 6 +- .../dashboard/i18n/locale/zh_TW/macros.json | 6 +- .../dashboard/i18n/locale/zh_TW/mfa.json | 2 +- .../dashboard/i18n/locale/zh_TW/report.json | 84 +++- .../dashboard/i18n/locale/zh_TW/settings.json | 134 +++++- .../dashboard/i18n/locale/zh_TW/signup.json | 1 + .../dashboard/i18n/locale/zh_TW/sla.json | 13 +- .../dashboard/i18n/locale/zh_TW/snooze.json | 72 +++ .../i18n/locale/zh_TW/teamsSettings.json | 5 +- config/locales/am.yml | 30 +- config/locales/ar.yml | 30 +- config/locales/az.yml | 30 +- config/locales/bg.yml | 30 +- config/locales/bn.yml | 30 +- config/locales/ca.yml | 30 +- config/locales/cs.yml | 30 +- config/locales/da.yml | 30 +- config/locales/de.yml | 30 +- config/locales/el.yml | 30 +- config/locales/es.yml | 30 +- config/locales/et.yml | 30 +- config/locales/fa.yml | 30 +- config/locales/fi.yml | 30 +- config/locales/fr.yml | 30 +- config/locales/he.yml | 30 +- config/locales/hi.yml | 30 +- config/locales/hr.yml | 30 +- config/locales/hu.yml | 30 +- config/locales/hy.yml | 30 +- config/locales/id.yml | 30 +- config/locales/is.yml | 30 +- config/locales/it.yml | 30 +- config/locales/ja.yml | 30 +- config/locales/ka.yml | 30 +- config/locales/ko.yml | 32 +- config/locales/lt.yml | 30 +- config/locales/lv.yml | 30 +- config/locales/ml.yml | 30 +- config/locales/ms.yml | 30 +- config/locales/ne.yml | 30 +- config/locales/nl.yml | 30 +- config/locales/no.yml | 30 +- config/locales/pl.yml | 30 +- config/locales/pt.yml | 30 +- config/locales/pt_BR.yml | 50 ++- config/locales/ro.yml | 30 +- config/locales/ru.yml | 52 ++- config/locales/sh.yml | 30 +- config/locales/sk.yml | 30 +- config/locales/sl.yml | 30 +- config/locales/sq.yml | 30 +- config/locales/sr.yml | 30 +- config/locales/sv.yml | 30 +- config/locales/ta.yml | 30 +- config/locales/th.yml | 30 +- config/locales/tl.yml | 30 +- config/locales/tr.yml | 30 +- config/locales/uk.yml | 30 +- config/locales/ur.yml | 30 +- config/locales/ur_IN.yml | 30 +- config/locales/vi.yml | 30 +- config/locales/zh_CN.yml | 30 +- config/locales/zh_TW.yml | 30 +- 1477 files changed, 30262 insertions(+), 3046 deletions(-) create mode 100644 app/javascript/dashboard/i18n/locale/am/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ar/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/az/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/bg/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/bn/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ca/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/cs/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/da/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/de/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/el/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/es/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/et/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/fa/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/fi/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/fr/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/he/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/hi/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/hr/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/hu/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/hy/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/id/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/is/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/it/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ja/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ka/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ko/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/lt/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/lv/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ml/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ms/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ne/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/nl/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/no/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/pl/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/pt/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/pt_BR/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ro/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ru/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sh/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sk/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sl/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sq/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sr/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/sv/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ta/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/th/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/tl/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/tr/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/uk/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ur/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/ur_IN/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/vi/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/zh_CN/snooze.json create mode 100644 app/javascript/dashboard/i18n/locale/zh_TW/snooze.json diff --git a/app/javascript/dashboard/i18n/locale/am/agentBots.json b/app/javascript/dashboard/i18n/locale/am/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/am/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/am/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/am/agentMgmt.json b/app/javascript/dashboard/i18n/locale/am/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/am/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/am/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/am/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/am/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/am/automation.json b/app/javascript/dashboard/i18n/locale/am/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/am/automation.json +++ b/app/javascript/dashboard/i18n/locale/am/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/am/bulkActions.json b/app/javascript/dashboard/i18n/locale/am/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/am/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/am/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/am/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/am/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/am/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/am/chatlist.json b/app/javascript/dashboard/i18n/locale/am/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/am/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/am/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/am/contact.json b/app/javascript/dashboard/i18n/locale/am/contact.json index 0c1ecd380..cb7465350 100644 --- a/app/javascript/dashboard/i18n/locale/am/contact.json +++ b/app/javascript/dashboard/i18n/locale/am/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "በአሁኑ ጊዜ ንቁ እውቂያዎች የሉም 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/am/conversation.json b/app/javascript/dashboard/i18n/locale/am/conversation.json index f82d4ba23..5e417a884 100644 --- a/app/javascript/dashboard/i18n/locale/am/conversation.json +++ b/app/javascript/dashboard/i18n/locale/am/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "ውይይት በተሳካ ሁኔታ ተሰርዟል", "FAIL_DELETE_CONVERSATION": "ውይይትን መሰረዝ አልተቻለም! እንደገና ይሞክሩ", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/am/customRole.json b/app/javascript/dashboard/i18n/locale/am/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/am/customRole.json +++ b/app/javascript/dashboard/i18n/locale/am/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/am/datePicker.json b/app/javascript/dashboard/i18n/locale/am/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/am/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/am/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/am/general.json b/app/javascript/dashboard/i18n/locale/am/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/am/general.json +++ b/app/javascript/dashboard/i18n/locale/am/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/am/generalSettings.json b/app/javascript/dashboard/i18n/locale/am/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/am/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/am/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/am/helpCenter.json b/app/javascript/dashboard/i18n/locale/am/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/am/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/am/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json index 2efba4716..1cfc95ef0 100644 --- a/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/am/integrationApps.json b/app/javascript/dashboard/i18n/locale/am/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/am/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/am/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/am/integrations.json b/app/javascript/dashboard/i18n/locale/am/integrations.json index ef3e94e42..fe1891064 100644 --- a/app/javascript/dashboard/i18n/locale/am/integrations.json +++ b/app/javascript/dashboard/i18n/locale/am/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/am/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/am/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/am/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/am/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/am/macros.json b/app/javascript/dashboard/i18n/locale/am/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/am/macros.json +++ b/app/javascript/dashboard/i18n/locale/am/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/am/mfa.json b/app/javascript/dashboard/i18n/locale/am/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/am/mfa.json +++ b/app/javascript/dashboard/i18n/locale/am/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/am/report.json b/app/javascript/dashboard/i18n/locale/am/report.json index dbf59f603..2ffa0ef11 100644 --- a/app/javascript/dashboard/i18n/locale/am/report.json +++ b/app/javascript/dashboard/i18n/locale/am/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/am/settings.json b/app/javascript/dashboard/i18n/locale/am/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/am/settings.json +++ b/app/javascript/dashboard/i18n/locale/am/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/am/signup.json b/app/javascript/dashboard/i18n/locale/am/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/am/signup.json +++ b/app/javascript/dashboard/i18n/locale/am/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/am/sla.json b/app/javascript/dashboard/i18n/locale/am/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/am/sla.json +++ b/app/javascript/dashboard/i18n/locale/am/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/am/snooze.json b/app/javascript/dashboard/i18n/locale/am/snooze.json new file mode 100644 index 000000000..2d9a876aa --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/am/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/am/teamsSettings.json b/app/javascript/dashboard/i18n/locale/am/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/am/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/am/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ar/agentBots.json b/app/javascript/dashboard/i18n/locale/ar/agentBots.json index 4fec1e414..97fd7d87e 100644 --- a/app/javascript/dashboard/i18n/locale/ar/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ar/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "جار جلب المحرر...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "النظام", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "جار جلب الروبوتات...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "رابط Webhook" + "URL": "رابط Webhook", + "ACTIONS": "الإجراءات" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json index b24281d42..dbe3fbfb0 100644 --- a/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "المدير", "AGENT": "وكيل الدعم" }, + "COUNT": "", "LIST": { "404": "لا يوجد وكلاء دعم مرتبطين بهذا الحساب", "TITLE": "إدارة وكلاء الدعم في فريقك", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "تعذر الاتصال بالخادم، الرجاء المحاولة مرة أخرى لاحقاً" } }, + "SEARCH_PLACEHOLDER": "البحث عن وكلاء...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "لم يتم العثور على النتائج." }, diff --git a/app/javascript/dashboard/i18n/locale/ar/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ar/attributesMgmt.json index f78e0672c..0b28c1a80 100644 --- a/app/javascript/dashboard/i18n/locale/ar/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "جلب الصفات المخصصة", "DESCRIPTION": "سمة مخصصة تتتبع تفاصيل إضافية حول جهات الاتصال أو المحادثات الخاصة بك - مثل خطة الاشتراك أو تاريخ الشراء الأول. يمكنك إضافة أنواع مختلفة من السمات المخصصة، مثل النص أو القوائم أو الأرقام، لالتقاط المعلومات المحددة التي تحتاجها.", "LEARN_MORE": "تعرف على المزيد حول السمات المخصصة", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "البحث عن صفات...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "المحادثات", "CONTACT": "جهات الاتصال" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "تمكين التحقق من صحة regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ar/automation.json b/app/javascript/dashboard/i18n/locale/ar/automation.json index abdbcbe32..509cd7313 100644 --- a/app/javascript/dashboard/i18n/locale/ar/automation.json +++ b/app/javascript/dashboard/i18n/locale/ar/automation.json @@ -3,8 +3,11 @@ "HEADER": "الأتمتة", "DESCRIPTION": "ويمكن للأتمتة أن تحل محل وتبسط العمليات القائمة التي تتطلب جهداً يدوياً، مثل إضافة تسميات وتعيين المحادثات إلى أنسب وكيل. ويسمح ذلك للفريق بالتركيز على مواطن قوتهم مع تقليل الوقت الذي يقضيه في المهام الروتينية.", "LEARN_MORE": "تعلم المزيد عن الأتمتة", - "HEADER_BTN_TXT": "إضافة قاعدة أتمتة", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "جلب قواعد الأتمتة", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "إضافة قاعدة أتمتة", "SUBMIT": "إنشاء", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "الاسم", - "DESCRIPTION": "الوصف", "ACTIVE": "مفعل", - "CREATED_ON": "تم إنشاؤها في" + "CREATED_ON": "تم إنشاؤها في", + "ACTIONS": "الإجراءات" }, "404": "لم يتم العثور على قواعد أتمتة" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "تغيير الأولوية", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "فتح المحادثة" + "OPEN_CONVERSATION": "فتح المحادثة", + "PENDING_CONVERSATION": "تحديد المحادثة كمعلقة" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ar/bulkActions.json b/app/javascript/dashboard/i18n/locale/ar/bulkActions.json index 474983317..a5f566a44 100644 --- a/app/javascript/dashboard/i18n/locale/ar/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ar/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "تم تحديث حالة المحادثة بنجاح.", "UPDATE_FAILED": "فشل تحديث المحادثات، الرجاء المحاولة مرة أخرى." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "لا يمكن حل المحادثات بسبب عدم وجود السمات المطلوبة", + "PARTIAL_SUCCESS": "بعض المحادثات تحتاج إلى سمات مطلوبة قبل الحل وتم تخطيها" + }, "LABELS": { "ASSIGN_LABELS": "إضافة وسم", "NO_LABELS_FOUND": "لم يتم العثور على تصنيفات", diff --git a/app/javascript/dashboard/i18n/locale/ar/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ar/cannedMgmt.json index e7e61b3ad..8bd936746 100644 --- a/app/javascript/dashboard/i18n/locale/ar/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "الردود الجاهزة", "LEARN_MORE": "معرفة المزيد عن الاستجابات المعلبة", "DESCRIPTION": "الردود المسبقة هي قوالب رد مكتوبة مسبقاً تساعدك على الرد بسرعة على محادثة. يمكن للوكلاء كتابة حرف '/' يتبعه الرمز المختصر لإدراج رد مسبق أثناء محادثة. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "إضافة رد جاهز", "LOADING": "جاري جلب الردود الجاهزة...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "لا توجد عناصر مطابقة لهذا الاستعلام.", "LIST": { "404": "لا توجد ردود جاهزة متوفرة في هذا الحساب.", diff --git a/app/javascript/dashboard/i18n/locale/ar/chatlist.json b/app/javascript/dashboard/i18n/locale/ar/chatlist.json index 09b34efaa..ef2f62bd9 100644 --- a/app/javascript/dashboard/i18n/locale/ar/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ar/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "الرد المعلق: الأقصر أولاً" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { @@ -104,7 +107,7 @@ "CONTENT": "Shared contact" }, "embed": { - "CONTENT": "Embedded content" + "CONTENT": "المحتوى المضمن" } }, "CHAT_SORT_BY_FILTER": { diff --git a/app/javascript/dashboard/i18n/locale/ar/companies.json b/app/javascript/dashboard/i18n/locale/ar/companies.json index 95a078caa..e76f8a8fa 100644 --- a/app/javascript/dashboard/i18n/locale/ar/companies.json +++ b/app/javascript/dashboard/i18n/locale/ar/companies.json @@ -1,33 +1,33 @@ { "COMPANIES": { - "HEADER": "Companies", + "HEADER": "الشركات", "SORT_BY": { "LABEL": "ترتيب حسب", "OPTIONS": { "NAME": "الاسم", "DOMAIN": "النطاق", "CREATED_AT": "تم إنشاؤها في", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "عدد جهات الاتصال" } }, "ORDER": { - "LABEL": "Order", + "LABEL": "ترتيب", "OPTIONS": { - "ASCENDING": "Ascending", + "ASCENDING": "تصاعدي", "DESCENDING": "Descending" } }, - "SEARCH_PLACEHOLDER": "Search companies...", - "LOADING": "Loading companies...", - "UNNAMED": "Unnamed Company", - "CONTACTS_COUNT": "{n} contact | {n} contacts", + "SEARCH_PLACEHOLDER": "البحث في الشركات...", + "LOADING": "جاري تحميل الشركات...", + "UNNAMED": "شركة بلا اسم", + "CONTACTS_COUNT": "جهة اتصال {n} | {n} جهات الاتصال", "EMPTY_STATE": { - "TITLE": "No companies found" + "TITLE": "لم يتم العثور على شركات" } }, "COMPANIES_LAYOUT": { "PAGINATION_FOOTER": { - "SHOWING": "Showing {startItem} – {endItem} of {totalItems} company | Showing {startItem} – {endItem} of {totalItems} companies" + "SHOWING": "عرض {startItem} - {endItem} من {totalItems} شركة | عرض {startItem} – {endItem} من الشركات {totalItems}" } } } diff --git a/app/javascript/dashboard/i18n/locale/ar/contact.json b/app/javascript/dashboard/i18n/locale/ar/contact.json index f9b059614..23e370fe1 100644 --- a/app/javascript/dashboard/i18n/locale/ar/contact.json +++ b/app/javascript/dashboard/i18n/locale/ar/contact.json @@ -18,8 +18,8 @@ "CREATED_AT_LABEL": "تم إنشاؤها", "NEW_MESSAGE": "رسالة جديدة", "CALL": "Call", - "CALL_INITIATED": "Calling the contact…", - "CALL_FAILED": "Unable to start the call. Please try again.", + "CALL_INITIATED": "جار الاتصال بجهة الاتصال…", + "CALL_FAILED": "تعذر بدء المكالمة. الرجاء المحاولة مرة أخرى.", "VOICE_INBOX_PICKER": { "TITLE": "Choose a voice inbox" }, @@ -457,8 +457,11 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { - "PLACEHOLDER": "Add TikTok" + "PLACEHOLDER": "إضافة TikTok" }, "LINKEDIN": { "PLACEHOLDER": "Add LinkedIn" @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "لا توجد جهات اتصال تطابق بحثك 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "تحميل المزيد" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "تعيين التسميات", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "إلى:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "الموضوع :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "نسخة من البريد:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "نسخة خفية من البريد:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "نسخة خفية من البريد" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ar/conversation.json b/app/javascript/dashboard/i18n/locale/ar/conversation.json index 493471c82..9c8c54480 100644 --- a/app/javascript/dashboard/i18n/locale/ar/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ar/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "هذه الرسالة غير مدعومة، يمكنك مشاهدة هذه الرسالة على تطبيق فيسبوك (Messenger).", "UNSUPPORTED_MESSAGE_INSTAGRAM": "هذه الرسالة غير مدعومة، يمكنك عرض هذه الرسالة على تطبيق Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "هذه الرسالة غير مدعومة. يمكنك مشاهدة هذه الرسالة على تطبيق TikTok.", "SUCCESS_DELETE_MESSAGE": "تم حذف الرسالة بنجاح", "FAIL_DELETE_MESSSAGE": "تعذر حذف الرسالة! حاول مرة أخرى", "NO_RESPONSE": "لا توجد استجابة", @@ -173,6 +174,10 @@ "SUCCESFUL": "تعيين تسمية ##{labelName} لمعرف المحادثة {conversationId}", "FAILED": "تعذر تعيين التسمية. الرجاء المحاولة مرة أخرى." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "الفريق المعين \"{team}\" لمعرف المحادثة {conversationId}", "FAILED": "تعذر تعيين الفريق. الرجاء المحاولة مرة أخرى." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "تعطيل التوقيع", "MSG_INPUT": "زر Shift + Enter لإضافة سطر جديد. ابدأ بزر / للاختيار من الردود الجاهزة.", "PRIVATE_MSG_INPUT": "زر Shift + Enter لإضافة سطر جديد. سيكون هذا مرئياً للوكلاء فقط", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "لم يتم تكوين توقيع الرسالة، الرجاء تكوينه في إعدادات الملف الشخصي.", + "COPILOT_MSG_INPUT": "إعطاء copilot أوامر إضافية، أو السؤال عن أي شيء آخر... اضغط على مفتاح الإدخال لإرسال المتابعة", "CLICK_HERE": "انقر هنا للتحديث", "WHATSAPP_TEMPLATES": "قوالب الواتساب" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "اسحب و أسقط هنا للإرفاق", "START_AUDIO_RECORDING": "بدء التسجيل الصوتي", "STOP_AUDIO_RECORDING": "إيقاف التسجيل الصوتي", - "": "", + "COPILOT_THINKING": "Copilot يفكر", "EMAIL_HEAD": { "TO": "إلى", "ADD_BCC": "إضافة bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "حجم الملف يتجاوز حد الاقصى وهو {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}", + "FILE_TYPE_NOT_SUPPORTED": "هذا النوع من الملفات {fileName} غير مدعوم في هذه المحادثة", "MESSAGE_ERROR": "غير قادر على إرسال هذه الرسالة، الرجاء المحاولة مرة أخرى لاحقاً", "SENT_BY": "أرسلت بواسطة:", "BOT": "رد آلي", + "NATIVE_APP": "تطبيق الجوال", + "NATIVE_APP_ADVISORY": "تم إرسال هذه الرسالة من تطبيق الجوال. رد من Chatwoot للحفاظ على نافذة الرسالة.", "SEND_FAILED": "تعذر إرسال الرسالة! حاول مرة أخرى", "TRY_AGAIN": "إعادة المحاولة", "ASSIGNMENT": { @@ -277,14 +289,14 @@ "COPILOT": "Copilot" }, "VOICE_WIDGET": { - "INCOMING_CALL": "Incoming call", - "OUTGOING_CALL": "Outgoing call", - "CALL_IN_PROGRESS": "Call in progress", - "NOT_ANSWERED_YET": "Not answered yet", - "HANDLED_IN_ANOTHER_TAB": "Being handled in another tab", - "REJECT_CALL": "Reject", - "JOIN_CALL": "Join call", - "END_CALL": "End call" + "INCOMING_CALL": "مكالمة واردة", + "OUTGOING_CALL": "مكالمة صادرة", + "CALL_IN_PROGRESS": "مكالمة قيد الاتصال", + "NOT_ANSWERED_YET": "لم يتم الرد بعد", + "HANDLED_IN_ANOTHER_TAB": "يتم التعامل معها في علامة تبويب أخرى", + "REJECT_CALL": "رفض", + "JOIN_CALL": "انضم إلى المكالمة", + "END_CALL": "إنهاء المكالمة" } }, "EMAIL_TRANSCRIPT": { @@ -294,6 +306,7 @@ "CANCEL": "إلغاء", "SEND_EMAIL_SUCCESS": "تم إرسال نص المحادثة بنجاح", "SEND_EMAIL_ERROR": "حدث خطأ، الرجاء المحاولة مرة أخرى", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "إرسال نص المحادثة إلى العميل", "SEND_TO_AGENT": "إرسال نص المحادثة إلى وكيل خدمة العملاء المعين", diff --git a/app/javascript/dashboard/i18n/locale/ar/customRole.json b/app/javascript/dashboard/i18n/locale/ar/customRole.json index 501a01e77..54b87ef1f 100644 --- a/app/javascript/dashboard/i18n/locale/ar/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ar/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "لا توجد عناصر مطابقة لهذا الاستعلام.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ar/datePicker.json b/app/javascript/dashboard/i18n/locale/ar/datePicker.json index bef157e73..6c89206b5 100644 --- a/app/javascript/dashboard/i18n/locale/ar/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ar/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "تطبيق", "CLEAR_BUTTON": "مسح", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "آخر 3 أشهر", "LAST_6_MONTHS": "آخر 6 أشهر", "LAST_YEAR": "العام الماضي", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "تحديد نطاق التاريخ" } } diff --git a/app/javascript/dashboard/i18n/locale/ar/general.json b/app/javascript/dashboard/i18n/locale/ar/general.json index 4c5df986b..39319483a 100644 --- a/app/javascript/dashboard/i18n/locale/ar/general.json +++ b/app/javascript/dashboard/i18n/locale/ar/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "أغلق", "BETA": "تجريبي", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "قبول", + "DISCARD": "Discard", + "PREFERRED": "المفضلة" + }, + "CHOICE_TOGGLE": { + "YES": "نعم", + "NO": "لا" } } diff --git a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json index 5616421fd..0a4e56628 100644 --- a/app/javascript/dashboard/i18n/locale/ar/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ar/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "البحث أو القفز إلى", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "عام", "REPORTS": "التقارير", diff --git a/app/javascript/dashboard/i18n/locale/ar/helpCenter.json b/app/javascript/dashboard/i18n/locale/ar/helpCenter.json index 13265de6c..29ae64c9b 100644 --- a/app/javascript/dashboard/i18n/locale/ar/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ar/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json index e3d8f0549..da0aeb78f 100644 --- a/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "قنوات التواصل", "DESCRIPTION": "القناة هي وضع الاتصال الذي يختاره العميل للتفاعل معك. صندوق الوارد هو المكان الذي تدير فيه التفاعلات لقناة معينة. ويمكن أن تشمل الاتصالات من مصادر مختلفة مثل البريد الإلكتروني، والمحادثة الحية، ووسائط الإعلام الاجتماعية.", "LEARN_MORE": "تعلم المزيد عن صناديق البريد", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -58,11 +61,11 @@ "DUPLICATE_INBOX_BANNER": "This Instagram account was migrated to the new Instagram channel inbox. You won’t be able to send/receive Instagram messages from this inbox anymore." }, "TIKTOK": { - "CONTINUE_WITH_TIKTOK": "Continue with TikTok", - "CONNECT_YOUR_TIKTOK_PROFILE": "Connect your TikTok Profile", - "HELP": "To add your TikTok profile as a channel, you need to authenticate your TikTok Profile by clicking on 'Continue with TikTok' ", - "ERROR_MESSAGE": "There was an error connecting to TikTok, please try again", - "ERROR_AUTH": "There was an error connecting to TikTok, please try again" + "CONTINUE_WITH_TIKTOK": "المتابعة مع تيكتوك", + "CONNECT_YOUR_TIKTOK_PROFILE": "الاتصال بحسابك في تيكتوك", + "HELP": "لإضافة ملفك الشخصي على TikTok كقناة، عليك مصادقة ملفك الشخصي على TikTok بالنقر على \"متابعة مع TikTok\".", + "ERROR_MESSAGE": "حدث خطأ أثناء الاتصال بـ TikTok، يرجى المحاولة مرة أخرى", + "ERROR_AUTH": "حدث خطأ أثناء الاتصال بـ TikTok، يرجى المحاولة مرة أخرى" }, "TWITTER": { "HELP": "لإضافة حساب تويتر الخاص بك كقناة تواصل، تحتاج إلى مصادقة حسابك على تويتر بك بالنقر على زر \"تسجيل الدخول باستخدام تويتر\" ", @@ -389,10 +392,10 @@ "ERROR_MESSAGE": "لم نتمكن من حفظ قناة البريد الإلكتروني" }, "FINISH_MESSAGE": "بدء إعادة توجيه رسائل البريد الإلكتروني الخاصة بك إلى عنوان البريد الإلكتروني التالي.", - "FINISH_MESSAGE_NO_FORWARDING": "Your email inbox has been created successfully! You need to configure SMTP and IMAP credentials to send and receive emails. Without these settings, no emails will be processed.", - "FORWARDING_ADDRESS_LABEL": "Forward emails to this address:", + "FINISH_MESSAGE_NO_FORWARDING": "تم إنشاء بريدك الإلكتروني بنجاح! تحتاج إلى تكوين بيانات اعتماد SMTP و IMAP لإرسال واستقبال رسائل البريد الإلكتروني. بدون هذه الإعدادات، لن يتم معالجة رسائل البريد الإلكتروني.", + "FORWARDING_ADDRESS_LABEL": "إعادة توجيه رسائل البريد الإلكتروني إلى هذا العنوان", "CONFIGURE_SMTP_IMAP_LINK": "اضغط هنا", - "CONFIGURE_SMTP_IMAP_TEXT": " to configure IMAP and SMTP settings" + "CONFIGURE_SMTP_IMAP_TEXT": " لتهيئة إعدادات IMAP و SMTP" }, "LINE_CHANNEL": { "TITLE": "قناة LINE", @@ -480,7 +483,7 @@ }, "TIKTOK": { "TITLE": "TikTok", - "DESCRIPTION": "Connect your TikTok account" + "DESCRIPTION": "ربط حسابك في TikTok" }, "VOICE": { "TITLE": "Voice", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "حفظ" } @@ -589,8 +592,10 @@ "DISABLED": "معطّل" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "مفعل", - "DISABLED": "معطّل" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "تفعيل" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "تقييم رضاء العملاء" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "تمكين/تعطيل إظهار اسم الوكيل في البريد الإلكتروني، إذا تم تعطيله فسيظهر اسم المنشأة", "ENABLE_CONTINUITY_VIA_EMAIL": "تمكين استمرارية المحادثة عبر البريد الإلكتروني", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "المحادثات ستستمر عبر البريد الإلكتروني إذا كان عنوان البريد الإلكتروني لجهة الاتصال متاحاً.", - "LOCK_TO_SINGLE_CONVERSATION": "قفل إلى محادثة واحدة", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "تمكين أو تعطيل محادثات متعددة لنفس جهة الاتصال في هذا البريد الوارد", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "إعدادات قناة التواصل", "INBOX_UPDATE_SUB_TEXT": "تحديث إعدادات قناة التواصل", "AUTO_ASSIGNMENT_SUB_TEXT": "تمكين أو تعطيل الإسناد التلقائي للمحادثات الجديدة إلى الموظفين المضافين إلى قناة التواصل هذه.", @@ -758,6 +765,7 @@ "LABEL": "مركز المساعدة", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "لا شيء", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "الرجاء إدخال قيمة أكبر من 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "تحديد الحد الأقصى لعدد المحادثات من علبة الوارد هذه التي يمكن تعيينها تلقائياً إلى وكيل" }, + "ASSIGNMENT": { + "TITLE": "تعيين المحادثة", + "DESCRIPTION": "تعيين المحادثات الواردة تلقائياً إلى الوكلاء المتاحين استناداً إلى سياسات التعيين", + "ENABLE_AUTO_ASSIGNMENT": "تمكين تعيين المحادثة تلقائياً", + "DEFAULT_RULES_TITLE": "قواعد التعيين الافتراضية", + "DEFAULT_RULES_DESCRIPTION": "استخدام سلوك التعيين الافتراضي لجميع المحادثات", + "DEFAULT_RULE_1": "المحادثات التي تم إنشاؤها أولاً", + "DEFAULT_RULE_2": "توزيع الجدولة الدائرية (Round robin)", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "استخدام سياسة التعيين المخصصة لهذه القناة", + "CUSTOMIZE_POLICY": "التخصيص وفقًا لسياسة التعيين", + "DELETE_POLICY": "حذف سياسة", + "POLICY_LABEL": "سياسة التعيين", + "ASSIGNMENT_ORDER_LABEL": "ترتيب التعيين", + "ASSIGNMENT_METHOD_LABEL": "طريقة التعيين", + "POLICY_STATUS": { + "ACTIVE": "مفعل", + "INACTIVE": "غير نشط" + }, + "PRIORITY": { + "EARLIEST_CREATED": "تم إنشاؤها في وقت سابق", + "LONGEST_WAITING": "أطول انتظار" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "تعيين متوازن" + }, + "UPGRADE_PROMPT": "سياسة التعيين المخصصة متاحى في الخطة (Business) ", + "UPGRADE_TO_BUSINESS": "الترقية إلى (Business)", + "DEFAULT_POLICY_LINKED": "السياسة الافتراضية المرتبطة", + "DEFAULT_POLICY_DESCRIPTION": "ربط سياسة تعيين مخصصة لتخصيص كيفية تعيين المحادثات إلى الوكلاء في هذه القناه", + "LINK_EXISTING_POLICY": "ربط السياسة الحالية", + "CREATE_NEW_POLICY": "إنشاء سياسة جديدة", + "NO_POLICIES": "لم يتم العثور على سياسات التعيين", + "VIEW_ALL_POLICIES": "عرض جميع السياسات", + "CURRENT_BEHAVIOR": "حاليا يستخدم سلوك التعيين الافتراضي:", + "LINK_SUCCESS": "تم ربط سياسة التعيين بنجاح", + "LINK_ERROR": "فشل في ربط سياسة التعيين" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "حذف سياسة التعيين؟", + "DELETE_CONFIRM_MESSAGE": "هل أنت متأكد من أنك تريد إزالة سياسة التعيين هذه من صندوق الوارد هذا؟ صندوق الوارد سوف يعود إلى قواعد التعيين الافتراضية.", + "CANCEL": "إلغاء", + "CONFIRM_DELETE": "حذف", + "DELETE_SUCCESS": "تمت إزالة سياسة التعيين بنجاح", + "DELETE_ERROR": "فشل في إزالة سياسة التعيين" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "إعادة التصريح", "SUBTITLE": "انتهت صلاحية اتصال الفيسبوك الخاص بك، يرجى إعادة الاتصال بصفحة الفيسبوك الخاصة بك لمواصلة الخدمات", @@ -809,34 +864,48 @@ "PLACEHOLDER": "Please enter a message to show users with the form" }, "BUTTON_TEXT": { - "LABEL": "Button text", - "PLACEHOLDER": "Please rate us" + "LABEL": "نص الزر", + "PLACEHOLDER": "يرجى تقييمنا" }, "LANGUAGE": { "LABEL": "اللغة", - "PLACEHOLDER": "Select template language" + "PLACEHOLDER": "اختر لغة القالب" }, "MESSAGE_PREVIEW": { - "LABEL": "Message preview", - "TOOLTIP": "This may vary slightly when rendered on WhatsApp's platform." + "LABEL": "معاينة الرسالة", + "TOOLTIP": "قد يختلف هذا قليلاً عند تقديمه على منصة WhatsApp." }, "TEMPLATE_STATUS": { - "APPROVED": "Approved by WhatsApp", - "PENDING": "Pending WhatsApp approval", - "REJECTED": "Meta rejected the template", - "DEFAULT": "Needs WhatsApp approval", - "NOT_FOUND": "The template does not exist in the Meta platform." + "APPROVED": "معتمد بواسطة WhatsApp", + "PENDING": "في انتظار موافقة WhatsApp", + "REJECTED": "Meta رفضت القالب", + "DEFAULT": "يحتاج موافقة WhatsApp", + "NOT_FOUND": "هذا القالب غير موجود في منصة ميتا." }, "TEMPLATE_CREATION": { - "SUCCESS_MESSAGE": "WhatsApp template created successfully and sent for approval", - "ERROR_MESSAGE": "Failed to create WhatsApp template" + "SUCCESS_MESSAGE": "تم إنشاء قالب WhatsApp بنجاح وإرساله للموافقة عليه", + "ERROR_MESSAGE": "فشل إنشاء قالب WhatsApp" }, "TEMPLATE_UPDATE_DIALOG": { - "TITLE": "Edit survey details", - "DESCRIPTION": "We will delete the previous template and make a new one which will be sent again for WhatsApp approval", - "CONFIRM": "Create new template", + "TITLE": "تعديل تفاصيل الاستبيان", + "DESCRIPTION": "سوف نقوم بحذف القالب السابق ونقوم بإنشاء قالب جديد حيث سيتم إرساله مرة أخرى للاعتماد من قبل Whatsapp", + "CONFIRM": "إنشاء قالب جديد", "CANCEL": "العودة للخلف" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "رسالة غير متاح للزائرين", "TOGGLE_HELP": "تمكين توفر العمل سيظهر الساعات المتاحة على أداة الدردشة المباشرة حتى لو كان جميع الوكلاء غير متصلين بالإنترنت. خارج الساعات المتاحة يمكن تحذير الزوار برسالة ونموذج ما قبل الدردشة.", "DAY": { + "DAY": "اليوم", + "AVAILABILITY": "التوفر", + "HOURS": "Hours", "ENABLE": "تمكين التوفر لهذا اليوم", "UNAVAILABLE": "غير متوفر", - "HOURS": "ساعات", "VALIDATION_ERROR": "يجب أن يكون وقت البدء قبل وقت الإغلاق.", "CHOOSE": "اختر" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "خلال يوم" }, "WIDGET_COLOR_LABEL": "لون صندوق الدردشة", - "WIDGET_BUBBLE_POSITION_LABEL": "موقع شعار اللايف شات", - "WIDGET_BUBBLE_TYPE_LABEL": "شكل عرض اللايف شات", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "النوع:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "تحدث الينا", - "LABEL": "عنوان ايقونة اللايف شات", + "LABEL": "Launcher Title", "PLACE_HOLDER": "تحدث الينا" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "افتراضي", - "CHAT": "محادثة" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "عادة نقوم بالرد خلال بضع دقائق", diff --git a/app/javascript/dashboard/i18n/locale/ar/integrationApps.json b/app/javascript/dashboard/i18n/locale/ar/integrationApps.json index 112f8b750..bf102d23b 100644 --- a/app/javascript/dashboard/i18n/locale/ar/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ar/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "جلب التكاملات", "NO_HOOK_CONFIGURED": "لا يوجد {integrationId} تكاملات مكونة في هذا الحساب.", "HEADER": "التطبيقات", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "مفعل", "DISABLED": "معطّل" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "جلب روابط التكامل", "INBOX": "صندوق الوارد", + "ACTIONS": "الإجراءات", "DELETE": { "BUTTON_TEXT": "حذف" } diff --git a/app/javascript/dashboard/i18n/locale/ar/integrations.json b/app/javascript/dashboard/i18n/locale/ar/integrations.json index 9b9f957d8..c3f5e5b99 100644 --- a/app/javascript/dashboard/i18n/locale/ar/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ar/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot تتكامل مع أدوات وخدمات متعددة لتحسين كفاءة فريقك. استكشف القائمة أدناه لتكوين تطبيقاتك المفضلة.", "LEARN_MORE": "معرفة المزيد عن التكاملات", "LOADING": "جاري جلب التكاملات", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "لم يتم تمكين الكابتن على حسابك.", "CLICK_HERE_TO_CONFIGURE": "انقر هنا للتهيئة", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "الأحداث المشتركة", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "إلغاء", "DESC": "أحداث Webhook توفر لك معلومات في الوقت الحقيقي حول ما يحدث في حساب Chatwoot الخاص بك. الرجاء إدخال عنوان URL صالح لتكوين callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "حذف", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "تبسيط" + "SIMPLIFY": "تبسيط", + "CONFIDENT": "استخدام نبرة لطيفة", + "PROFESSIONAL": "استخدام نبرة احترافية", + "CASUAL": "استخدم نبرة عادية", + "STRAIGHTFORWARD": "استخدام نبرة مباشرة" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "تحسين الرد", + "IMPROVE_REPLY_SELECTION": "تحسين عملية الاختيار", + "CHANGE_TONE": { + "TITLE": "تغيير النبرة", + "OPTIONS": { + "PROFESSIONAL": "مهني", + "CASUAL": "عادية", + "STRAIGHTFORWARD": "مباشر", + "CONFIDENT": "لطيفة", + "FRIENDLY": "ودي" + } + }, + "GRAMMAR": "أصلاح القواعد النحوية والإملائية", + "SUGGESTION": "اقترح رداً", + "SUMMARIZE": "تلخيص المحادثة", + "ASK_COPILOT": "إسأل المساعد" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "تسمح تطبيقات لوحة التحكم للمنظمات بتضمين تطبيق داخل لوحة التحكم لتوفير السياق لوكلاء دعم العملاء. هذه الميزة تسمح لك بإنشاء تطبيق بشكل مستقل وإدراج لتوفير معلومات المستخدم أو طلباتهم أو سجل الدفع السابق.", "LEARN_MORE": "معرفة المزيد حول تطبيقات لوحة التحكم", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "لا توجد تطبيقات لوحة التحكم التي تم تكوينها على هذا الحساب حتى الآن", "LOADING": "جلب تطبيقات لوحة التحكم...", "TABLE_HEADER": { "NAME": "الاسم", - "ENDPOINT": "نقطة الوصول" + "ENDPOINT": "نقطة الوصول", + "ACTIONS": "الإجراءات" }, "EDIT_TOOLTIP": "تعديل التطبيق", "DELETE_TOOLTIP": "حذف التطبيق" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "جلب مشاكل من Linear...", "LOADING_ERROR": "حدث خطأ أثناء جلب المشكلات من Linear، الرجاء المحاولة مرة أخرى", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "نوشن", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "ولا يتوفر الكابتن AI إلا في خطط المؤسسة.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ar/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ar/labelsMgmt.json index bdbe10c33..e7acd7b1c 100644 --- a/app/javascript/dashboard/i18n/locale/ar/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ar/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "جار جلب الوسوم", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "معرفة المزيد حول التسميات", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "ابحث عن تصنيفات...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "لا توجد عناصر مطابقة لهذا الاستعلام", "LIST": { "404": "لا توجد وسوم متوفرة في هذا الحساب.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "الاسم", "DESCRIPTION": "الوصف", - "COLOR": "اللون" + "COLOR": "اللون", + "ACTION": "الإجراءات" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ar/macros.json b/app/javascript/dashboard/i18n/locale/ar/macros.json index 323309916..496a9eea3 100644 --- a/app/javascript/dashboard/i18n/locale/ar/macros.json +++ b/app/javascript/dashboard/i18n/locale/ar/macros.json @@ -3,9 +3,12 @@ "HEADER": "ماكروس", "DESCRIPTION": "الماكرو هو مجموعة من الإجراءات المحفوظة التي تساعد وكلاء خدمة العملاء على إكمال المهام بسهولة. يمكن للوكلاء تحديد مجموعة من الإجراءات مثل وضع علامة على محادثة مع تسمية، وإرسال نص بريد إلكتروني، وتحديث سمة مخصصة، إلخ. ويمكنهم تنفيذ هذه الإجراءات بنقرة واحدة.", "LEARN_MORE": "تعلم المزيد حول الماكرو", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "إضافة ماكرو جديد", "HEADER_BTN_TXT_SAVE": "حفظ الماكرو", "LOADING": "جاري جلب الماكروس", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "حدث خطأ ما. الرجاء المحاولة مرة أخرى", "ORDER_INFO": "سيتم تشغيل الماكرو بالترتيب الذي تضيفه إجراءاتك. يمكنك إعادة ترتيبهم بسحبهم بواسطة المعالج بجانب كل عقدة.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "الاسم", "CREATED BY": "تم إنشاؤها بواسطة", "LAST_UPDATED_BY": "آخر تحديث بواسطة", - "VISIBILITY": "الظهور" + "VISIBILITY": "الظهور", + "ACTIONS": "الإجراءات" }, "404": "لم يتم العثور على الماكروس" }, diff --git a/app/javascript/dashboard/i18n/locale/ar/mfa.json b/app/javascript/dashboard/i18n/locale/ar/mfa.json index bffa8cefe..d4348e323 100644 --- a/app/javascript/dashboard/i18n/locale/ar/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ar/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ar/report.json b/app/javascript/dashboard/i18n/locale/ar/report.json index ac8e46365..735d2ca13 100644 --- a/app/javascript/dashboard/i18n/locale/ar/report.json +++ b/app/javascript/dashboard/i18n/locale/ar/report.json @@ -3,7 +3,7 @@ "HEADER": "المحادثات", "LOADING_CHART": "تحميل بيانات الرسم البياني...", "NO_ENOUGH_DATA": "لم يتم جمع بيانات بقدر كافي لإنشاء التقرير، الرجاء المحاولة مرة أخرى لاحقاً.", - "DOWNLOAD_AGENT_REPORTS": "تحميل تقارير وكيل", + "DOWNLOAD_CONVERSATION_REPORTS": "تنزيل تقارير المحادثات", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "نظرة عامة للوكلاء", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "جاري جلب بيانات الرسم البياني...", "NO_ENOUGH_DATA": "لم يتم جمع بيانات بقدر كافي لإنشاء التقرير، الرجاء المحاولة مرة أخرى لاحقاً.", "DOWNLOAD_AGENT_REPORTS": "تنزيل تقارير الوكيل", "FILTER_DROPDOWN_LABEL": "اختر وكيل", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "البحث عن وكلاء" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "المحادثات", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "لم يتم جمع بيانات بقدر كافي لإنشاء التقرير، الرجاء المحاولة مرة أخرى لاحقاً.", "DOWNLOAD_LABEL_REPORTS": "تحميل تقارير التسمية", "FILTER_DROPDOWN_LABEL": "حدد التسمية", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "ابحث عن تصنيفات" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "المحادثات", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "اختر صندوق الوارد", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "المحادثات", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "نظرة عامة للفريق", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "تحميل بيانات الرسم البياني...", "NO_ENOUGH_DATA": "لم يتم جمع بيانات بقدر كافي لإنشاء التقرير، الرجاء المحاولة مرة أخرى لاحقاً.", "DOWNLOAD_TEAM_REPORTS": "تحميل تقارير الفريق", "FILTER_DROPDOWN_LABEL": "اختيار فريق", + "FILTERS": { + "ADD_FILTER": "إضافة تصفية", + "CLEAR_ALL": "مسح الكل", + "NO_FILTER": "لا توجد عوامل تصفية متوفرة", + "INPUT_PLACEHOLDER": { + "TEAMS": "البحث عن فريق" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "المحادثات", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "تقارير CSAT", - "NO_RECORDS": "لا توجد ردود متوفرة على الدراسة الاستقصائية CSAT.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "تحميل تقرير رضاء خدمة العملاء", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "إضافة تصفية", + "CLEAR_ALL": "مسح الكل", + "NO_FILTER": "لا توجد عوامل تصفية متوفرة", + "INPUT_PLACEHOLDER": { + "AGENTS": "البحث عن وكلاء", + "INBOXES": "Search inboxes", + "TEAMS": "البحث عن فريق", + "RATINGS": "البحث في التقييمات" + }, "AGENTS": { - "PLACEHOLDER": "اختر الوكلاء" + "LABEL": "وكيل الدعم" + }, + "INBOXES": { + "LABEL": "صندوق الوارد" + }, + "TEAMS": { + "LABEL": "الفريق" + }, + "RATINGS": { + "LABEL": "التقييم" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "جهات الاتصال", - "AGENT_NAME": "الوكيل المكلف", + "AGENT_NAME": "وكيل الدعم", "RATING": "التقييم", - "FEEDBACK_TEXT": "تعليق الملاحظات" - } + "FEEDBACK_TEXT": "تعليق الملاحظات", + "CONVERSATION": "المحادثات", + "CUSTOMER": "عميل", + "RESPONSE": "الردود", + "HANDLED_BY": "تمت معالجتها بواسطة" + }, + "UNKNOWN_CUSTOMER": "عميل غير معروف" }, + "NO_AGENT": "لم يتم تعيين وكيل", + "NO_FEEDBACK": "لا توجد ملاحظات مقدمة", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "إجمالي الردود", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "معدل الاستجابة", "TOOLTIP": "العدد الإجمالي للردود / العدد الإجمالي لرسائل الاستقصاء التي أرسلتها CSAT * 100" + }, + "RATING_DISTRIBUTION": "توزيع التقييم" + }, + "REVIEW_NOTES": { + "TITLE": "ملاحظات المراجعة", + "PLACEHOLDER": "إضافة ملاحظات مراجعة حول هذا التقييم...", + "SAVE": "حفظ", + "CANCEL": "إلغاء", + "SAVING": "جاري الحفظ...", + "SAVED": "تم حفظ الملاحظات بنجاح", + "SAVE_ERROR": "فشل في حفظ الملاحظات", + "UPDATED_BY": "تم التحديث بواسطة {name} {time}", + "UPDATED_BY_LABEL": "تم التحديث بواسطة", + "PAYWALL": { + "TITLE": "قم بالترقية لإضافة ملاحظات المراجعة", + "AVAILABLE_ON": "ميزة مراجعة الملاحظات متاحة فقط في الخطط Business و Enterprise.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "الترقية الآن", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ar/search.json b/app/javascript/dashboard/i18n/locale/ar/search.json index e653f7934..eea4b1718 100644 --- a/app/javascript/dashboard/i18n/locale/ar/search.json +++ b/app/javascript/dashboard/i18n/locale/ar/search.json @@ -1,7 +1,7 @@ { "SEARCH": { "TABS": { - "ALL": "All results", + "ALL": "كل النتائج", "CONTACTS": "جهات الاتصال", "CONVERSATIONS": "المحادثات", "MESSAGES": "الرسائل", @@ -21,48 +21,48 @@ "EMPTY_STATE_FULL": "لم يتم العثور على نتائج للطلب '{query}'", "PLACEHOLDER_KEYBINDING": "/للتركيز", "INPUT_PLACEHOLDER": "أكتب 3 أحرف أو أكثر للبحث", - "RECENT_SEARCHES": "Recent searches", + "RECENT_SEARCHES": "عمليات البحث الأخيرة", "CLEAR_ALL": "Clear all", - "MOST_RECENT": "Most recent", + "MOST_RECENT": "الأحدث", "EMPTY_STATE_DEFAULT": "البحث عن طريق معرف المحادثة أو البريد الإلكتروني أو رقم الهاتف أو الرسائل للحصول على نتائج بحث أفضل. ", "BOT_LABEL": "رد آلي", "READ_MORE": "اقرأ المزيد", - "READ_LESS": "Read less", + "READ_LESS": "قراءة أقل", "WROTE": "كتب:", "FROM": "من", "EMAIL": "البريد الإلكتروني", "EMAIL_SUBJECT": "الموضوع", - "PRIVATE": "Private note", - "TRANSCRIPT": "Transcript", + "PRIVATE": "ملاحظة خاصة", + "TRANSCRIPT": "النص", "CREATED_AT": "created {time}", - "UPDATED_AT": "updated {time}", + "UPDATED_AT": "تم التحديث {time}", "SORT_BY": { - "RELEVANCE": "Relevance" + "RELEVANCE": "ذات صلة" }, "DATE_RANGE": { "LAST_7_DAYS": "آخر 7 أيام", "LAST_30_DAYS": "آخر 30 يوماً", "LAST_60_DAYS": "آخر 60 يوماً", "LAST_90_DAYS": "آخر 90 يوماً", - "CUSTOM_RANGE": "Custom range:", - "CREATED_BETWEEN": "Created between", + "CUSTOM_RANGE": "نطاق مخصص:", + "CREATED_BETWEEN": "تم الإنشاء بين", "AND": "و", "APPLY": "تطبيق", - "BEFORE_DATE": "Before {date}", - "AFTER_DATE": "After {date}", - "TIME_RANGE": "Filter by time", - "CLEAR_FILTER": "Clear filter" + "BEFORE_DATE": "قبل {date}", + "AFTER_DATE": "بعد {date}", + "TIME_RANGE": "التصفية حسب الوقت", + "CLEAR_FILTER": "مسح عامل التصفية" }, "FILTERS": { - "FILTER_MESSAGE": "Filter messages by:", + "FILTER_MESSAGE": "تصفية الرسائل بواسطة:", "FROM": "المرسل", "IN": "صندوق الوارد", "AGENTS": "الوكلاء", "CONTACTS": "جهات الاتصال", "INBOXES": "قنوات التواصل", "NO_AGENTS": "لم يتم العثور على وكلاء", - "NO_CONTACTS": "Start by searching to see results", - "NO_INBOXES": "No inboxes found" + "NO_CONTACTS": "ابدأ بالبحث لمشاهدة النتائج", + "NO_INBOXES": "لم يتم العثور على صناديق الوارد" } } } diff --git a/app/javascript/dashboard/i18n/locale/ar/settings.json b/app/javascript/dashboard/i18n/locale/ar/settings.json index 94133a087..20b2a7faa 100644 --- a/app/javascript/dashboard/i18n/locale/ar/settings.json +++ b/app/javascript/dashboard/i18n/locale/ar/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "تنزيل", "UPLOADING": "جاري الرفع...", - "INSTAGRAM_STORY_UNAVAILABLE": "هذه القصة لم تعد متاحة." + "INSTAGRAM_STORY_UNAVAILABLE": "هذه القصة لم تعد متاحة.", + "INSTAGRAM_STORY_REPLY": "رد على قصتك:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "مشاهدة على الخريطة" @@ -307,8 +308,8 @@ "SETTINGS": "الإعدادات", "CONTACTS": "جهات الاتصال", "ACTIVE": "مفعل", - "COMPANIES": "Companies", - "ALL_COMPANIES": "All Companies", + "COMPANIES": "الشركات", + "ALL_COMPANIES": "كل الحملات", "CAPTAIN": "قائد", "CAPTAIN_ASSISTANTS": "Assistants", "CAPTAIN_DOCUMENTS": "Documents", @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "قراءة المستندات", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "قائد", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "الخصائص", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "الفواتير", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "البحث عن صفات" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "حل المحادثة", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "حل المحادثة", + "CANCEL": "إلغاء" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "نعم", + "NO": "لا" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "أوه! لم نتمكن من العثور على الحساب. الرجاء إنشاء حساب جديد للمتابعة.", "NEW_ACCOUNT": "حساب جديد", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "إلغاء" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ar/signup.json b/app/javascript/dashboard/i18n/locale/ar/signup.json index 150312da6..89ff33ca5 100644 --- a/app/javascript/dashboard/i18n/locale/ar/signup.json +++ b/app/javascript/dashboard/i18n/locale/ar/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "تسجيل حساب", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "تسجيل", "TESTIMONIAL_HEADER": "إن كل ما يلزم هو خطوة واحدة للمضي قدما", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ar/sla.json b/app/javascript/dashboard/i18n/locale/ar/sla.json index b7bf27180..fb92154e2 100644 --- a/app/javascript/dashboard/i18n/locale/ar/sla.json +++ b/app/javascript/dashboard/i18n/locale/ar/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ar/snooze.json b/app/javascript/dashboard/i18n/locale/ar/snooze.json new file mode 100644 index 000000000..47d01ffe8 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ar/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "ساعات", + "DAY": "اليوم", + "DAYS": "days", + "WEEK": "اليوم", + "WEEKS": "weeks", + "MONTH": "الأسبوع", + "MONTHS": "months", + "YEAR": "الشهر", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "التالي", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "غداً", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "الأسبوع القادم", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "اليوم", + "DAY": "اليوم" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ar/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ar/teamsSettings.json index cff408294..54e7ed33d 100644 --- a/app/javascript/dashboard/i18n/locale/ar/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ar/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "الفرق تتيح لك تنظيم الوكلاء في مجموعات بناءً على مسؤولياتهم. يمكن للوكيل أن يكون عضوًا في أكثر من فريق. لتحقيق التعاون في العمل, يمكنك إسناد المحادثات لفرق محددة.", "LEARN_MORE": "لمعرفة المزيد حول الفرق", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "البحث عن فريق...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "لا يوجد موظفي دعم مرتبطين بهذا الحساب.", "EDIT_TEAM": "تعديل الفريق", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "تعذر حفظ تفاصيل الفريق. حاول مرة أخرى." }, "AGENTS": { - "AGENT": "وكيل", + "AGENT": "وكيل الدعم", "EMAIL": "البريد الإلكتروني", "BUTTON_TEXT": "إضافة وكلاء", "ADD_AGENTS": "إضافة وكلاء إلى فريقك...", diff --git a/app/javascript/dashboard/i18n/locale/az/agentBots.json b/app/javascript/dashboard/i18n/locale/az/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/az/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/az/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/az/agentMgmt.json b/app/javascript/dashboard/i18n/locale/az/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/az/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/az/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/az/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/az/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/az/automation.json b/app/javascript/dashboard/i18n/locale/az/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/az/automation.json +++ b/app/javascript/dashboard/i18n/locale/az/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/az/bulkActions.json b/app/javascript/dashboard/i18n/locale/az/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/az/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/az/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/az/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/az/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/az/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/az/chatlist.json b/app/javascript/dashboard/i18n/locale/az/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/az/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/az/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/az/contact.json b/app/javascript/dashboard/i18n/locale/az/contact.json index 7cad3b433..10841bbbf 100644 --- a/app/javascript/dashboard/i18n/locale/az/contact.json +++ b/app/javascript/dashboard/i18n/locale/az/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/az/conversation.json b/app/javascript/dashboard/i18n/locale/az/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/az/conversation.json +++ b/app/javascript/dashboard/i18n/locale/az/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/az/customRole.json b/app/javascript/dashboard/i18n/locale/az/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/az/customRole.json +++ b/app/javascript/dashboard/i18n/locale/az/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/az/datePicker.json b/app/javascript/dashboard/i18n/locale/az/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/az/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/az/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/az/general.json b/app/javascript/dashboard/i18n/locale/az/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/az/general.json +++ b/app/javascript/dashboard/i18n/locale/az/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/az/generalSettings.json b/app/javascript/dashboard/i18n/locale/az/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/az/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/az/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/az/helpCenter.json b/app/javascript/dashboard/i18n/locale/az/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/az/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/az/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json index 2efba4716..1cfc95ef0 100644 --- a/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/az/integrationApps.json b/app/javascript/dashboard/i18n/locale/az/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/az/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/az/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/az/integrations.json b/app/javascript/dashboard/i18n/locale/az/integrations.json index ef3e94e42..fe1891064 100644 --- a/app/javascript/dashboard/i18n/locale/az/integrations.json +++ b/app/javascript/dashboard/i18n/locale/az/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/az/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/az/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/az/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/az/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/az/macros.json b/app/javascript/dashboard/i18n/locale/az/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/az/macros.json +++ b/app/javascript/dashboard/i18n/locale/az/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/az/mfa.json b/app/javascript/dashboard/i18n/locale/az/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/az/mfa.json +++ b/app/javascript/dashboard/i18n/locale/az/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/az/report.json b/app/javascript/dashboard/i18n/locale/az/report.json index dbf59f603..2ffa0ef11 100644 --- a/app/javascript/dashboard/i18n/locale/az/report.json +++ b/app/javascript/dashboard/i18n/locale/az/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/az/settings.json b/app/javascript/dashboard/i18n/locale/az/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/az/settings.json +++ b/app/javascript/dashboard/i18n/locale/az/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/az/signup.json b/app/javascript/dashboard/i18n/locale/az/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/az/signup.json +++ b/app/javascript/dashboard/i18n/locale/az/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/az/sla.json b/app/javascript/dashboard/i18n/locale/az/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/az/sla.json +++ b/app/javascript/dashboard/i18n/locale/az/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/az/snooze.json b/app/javascript/dashboard/i18n/locale/az/snooze.json new file mode 100644 index 000000000..2d9a876aa --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/az/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/az/teamsSettings.json b/app/javascript/dashboard/i18n/locale/az/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/az/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/az/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/bg/agentBots.json b/app/javascript/dashboard/i18n/locale/bg/agentBots.json index aeb619327..c44a8024b 100644 --- a/app/javascript/dashboard/i18n/locale/bg/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/bg/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Действия" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/bg/agentMgmt.json b/app/javascript/dashboard/i18n/locale/bg/agentMgmt.json index 8f6eadbcf..deda2adc4 100644 --- a/app/javascript/dashboard/i18n/locale/bg/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Администратор", "AGENT": "Агент" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Няма асоцирани агенти към този акаунт", "TITLE": "Управлявайте агентите в екипа си", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Не можа да се свърже с Woot сървър. Моля, опитайте отново по-късно" } }, + "SEARCH_PLACEHOLDER": "Търсете агенти...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Няма намерени резултати." }, diff --git a/app/javascript/dashboard/i18n/locale/bg/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/bg/attributesMgmt.json index 1ee1c83d6..c8f0dfe9b 100644 --- a/app/javascript/dashboard/i18n/locale/bg/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Търсене на атрибути...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Разговор", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/bg/automation.json b/app/javascript/dashboard/i18n/locale/bg/automation.json index d953bad7f..97bf7be40 100644 --- a/app/javascript/dashboard/i18n/locale/bg/automation.json +++ b/app/javascript/dashboard/i18n/locale/bg/automation.json @@ -3,8 +3,11 @@ "HEADER": "Автоматизация", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Добавяне правило за автоматизация", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Добавяне правило за автоматизация", "SUBMIT": "Създаване", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Име", - "DESCRIPTION": "Описание", "ACTIVE": "Активен", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Действия" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/bg/bulkActions.json b/app/javascript/dashboard/i18n/locale/bg/bulkActions.json index 845af02d1..69862e409 100644 --- a/app/javascript/dashboard/i18n/locale/bg/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/bg/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Няма намерени етикети", diff --git a/app/javascript/dashboard/i18n/locale/bg/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/bg/cannedMgmt.json index ceda07273..5dac04392 100644 --- a/app/javascript/dashboard/i18n/locale/bg/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Готови отговори", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Няма резултати отговарящи на тази заявка.", "LIST": { "404": "Няма налични готови отговори в този акаунт.", diff --git a/app/javascript/dashboard/i18n/locale/bg/chatlist.json b/app/javascript/dashboard/i18n/locale/bg/chatlist.json index 8cda6800a..9e18ecda8 100644 --- a/app/javascript/dashboard/i18n/locale/bg/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/bg/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/bg/contact.json b/app/javascript/dashboard/i18n/locale/bg/contact.json index 4c59e4184..a253b49ff 100644 --- a/app/javascript/dashboard/i18n/locale/bg/contact.json +++ b/app/javascript/dashboard/i18n/locale/bg/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Няма контакти отговарящи на търсенети ви 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "До:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Тема :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/bg/conversation.json b/app/javascript/dashboard/i18n/locale/bg/conversation.json index 8b0cd5413..d655068da 100644 --- a/app/javascript/dashboard/i18n/locale/bg/conversation.json +++ b/app/javascript/dashboard/i18n/locale/bg/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Бот", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Отмени", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/bg/customRole.json b/app/javascript/dashboard/i18n/locale/bg/customRole.json index a000e4cbe..86481d532 100644 --- a/app/javascript/dashboard/i18n/locale/bg/customRole.json +++ b/app/javascript/dashboard/i18n/locale/bg/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Няма резултати отговарящи на тази заявка.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/bg/datePicker.json b/app/javascript/dashboard/i18n/locale/bg/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/bg/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/bg/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/bg/general.json b/app/javascript/dashboard/i18n/locale/bg/general.json index 2ce281780..d9f377bdc 100644 --- a/app/javascript/dashboard/i18n/locale/bg/general.json +++ b/app/javascript/dashboard/i18n/locale/bg/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/bg/generalSettings.json b/app/javascript/dashboard/i18n/locale/bg/generalSettings.json index abe6e4f87..9b89ae948 100644 --- a/app/javascript/dashboard/i18n/locale/bg/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/bg/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/bg/helpCenter.json b/app/javascript/dashboard/i18n/locale/bg/helpCenter.json index 863df4e5c..af512d278 100644 --- a/app/javascript/dashboard/i18n/locale/bg/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/bg/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json index 78b0901e2..0038d1192 100644 --- a/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Изключен" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Включен", - "DISABLED": "Изключен" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Активен", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Отмени", + "CONFIRM_DELETE": "Изтрий", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Тип:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Чатете с нас", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Чатете с нас" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Обикновено отговаряме до няколко минути", diff --git a/app/javascript/dashboard/i18n/locale/bg/integrationApps.json b/app/javascript/dashboard/i18n/locale/bg/integrationApps.json index bcda218f3..70717f9df 100644 --- a/app/javascript/dashboard/i18n/locale/bg/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/bg/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Включен", "DISABLED": "Изключен" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Входяща кутия", + "ACTIONS": "Действия", "DELETE": { "BUTTON_TEXT": "Изтрий" } diff --git a/app/javascript/dashboard/i18n/locale/bg/integrations.json b/app/javascript/dashboard/i18n/locale/bg/integrations.json index ae4e76c2e..999d389ea 100644 --- a/app/javascript/dashboard/i18n/locale/bg/integrations.json +++ b/app/javascript/dashboard/i18n/locale/bg/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Отмени", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Изтрий", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Име", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Действия" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/bg/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/bg/labelsMgmt.json index 314031aa8..00d569edf 100644 --- a/app/javascript/dashboard/i18n/locale/bg/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bg/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Търсене на етикети...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Няма резултати отговарящи на тази заявка", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Име", "DESCRIPTION": "Описание", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Действия" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/bg/macros.json b/app/javascript/dashboard/i18n/locale/bg/macros.json index 48f462ac4..2a3604f3f 100644 --- a/app/javascript/dashboard/i18n/locale/bg/macros.json +++ b/app/javascript/dashboard/i18n/locale/bg/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Име", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Действия" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/bg/mfa.json b/app/javascript/dashboard/i18n/locale/bg/mfa.json index cc58c4378..660983c58 100644 --- a/app/javascript/dashboard/i18n/locale/bg/mfa.json +++ b/app/javascript/dashboard/i18n/locale/bg/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/bg/report.json b/app/javascript/dashboard/i18n/locale/bg/report.json index fb1f34d3c..1192c874e 100644 --- a/app/javascript/dashboard/i18n/locale/bg/report.json +++ b/app/javascript/dashboard/i18n/locale/bg/report.json @@ -3,7 +3,7 @@ "HEADER": "Разговори", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Търсете агенти" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Разговори", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Търсене на етикети" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Разговори", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Разговори", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Търсете екипи" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Разговори", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Търсете агенти", + "INBOXES": "Search inboxes", + "TEAMS": "Търсете екипи", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Агент" + }, + "INBOXES": { + "LABEL": "Входяща кутия" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Агент", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Разговор", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Отмени", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/bg/settings.json b/app/javascript/dashboard/i18n/locale/bg/settings.json index 46176d993..46772a425 100644 --- a/app/javascript/dashboard/i18n/locale/bg/settings.json +++ b/app/javascript/dashboard/i18n/locale/bg/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Качване...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Търсене на атрибути" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Отмени" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Отмени" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/bg/signup.json b/app/javascript/dashboard/i18n/locale/bg/signup.json index 7e3e67bf1..d9f7b04f0 100644 --- a/app/javascript/dashboard/i18n/locale/bg/signup.json +++ b/app/javascript/dashboard/i18n/locale/bg/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/bg/sla.json b/app/javascript/dashboard/i18n/locale/bg/sla.json index ae8460145..25ca0f4bf 100644 --- a/app/javascript/dashboard/i18n/locale/bg/sla.json +++ b/app/javascript/dashboard/i18n/locale/bg/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/bg/snooze.json b/app/javascript/dashboard/i18n/locale/bg/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/bg/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/bg/teamsSettings.json b/app/javascript/dashboard/i18n/locale/bg/teamsSettings.json index bd39b68d0..f44bd0720 100644 --- a/app/javascript/dashboard/i18n/locale/bg/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/bg/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Търсете екипи...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "ИМЕЙЛ", + "AGENT": "Агент", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/bn/agentBots.json b/app/javascript/dashboard/i18n/locale/bn/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/bn/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/bn/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/bn/agentMgmt.json b/app/javascript/dashboard/i18n/locale/bn/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/bn/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/bn/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/bn/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/bn/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/bn/automation.json b/app/javascript/dashboard/i18n/locale/bn/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/bn/automation.json +++ b/app/javascript/dashboard/i18n/locale/bn/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/bn/bulkActions.json b/app/javascript/dashboard/i18n/locale/bn/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/bn/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/bn/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/bn/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/bn/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/bn/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/bn/chatlist.json b/app/javascript/dashboard/i18n/locale/bn/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/bn/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/bn/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/bn/contact.json b/app/javascript/dashboard/i18n/locale/bn/contact.json index 7cad3b433..10841bbbf 100644 --- a/app/javascript/dashboard/i18n/locale/bn/contact.json +++ b/app/javascript/dashboard/i18n/locale/bn/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/bn/conversation.json b/app/javascript/dashboard/i18n/locale/bn/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/bn/conversation.json +++ b/app/javascript/dashboard/i18n/locale/bn/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/bn/customRole.json b/app/javascript/dashboard/i18n/locale/bn/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/bn/customRole.json +++ b/app/javascript/dashboard/i18n/locale/bn/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/bn/datePicker.json b/app/javascript/dashboard/i18n/locale/bn/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/bn/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/bn/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/bn/general.json b/app/javascript/dashboard/i18n/locale/bn/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/bn/general.json +++ b/app/javascript/dashboard/i18n/locale/bn/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/bn/generalSettings.json b/app/javascript/dashboard/i18n/locale/bn/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/bn/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/bn/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/bn/helpCenter.json b/app/javascript/dashboard/i18n/locale/bn/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/bn/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/bn/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json index 2efba4716..1cfc95ef0 100644 --- a/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/bn/integrationApps.json b/app/javascript/dashboard/i18n/locale/bn/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/bn/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/bn/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/bn/integrations.json b/app/javascript/dashboard/i18n/locale/bn/integrations.json index ef3e94e42..fe1891064 100644 --- a/app/javascript/dashboard/i18n/locale/bn/integrations.json +++ b/app/javascript/dashboard/i18n/locale/bn/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/bn/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/bn/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/bn/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/bn/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/bn/macros.json b/app/javascript/dashboard/i18n/locale/bn/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/bn/macros.json +++ b/app/javascript/dashboard/i18n/locale/bn/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/bn/mfa.json b/app/javascript/dashboard/i18n/locale/bn/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/bn/mfa.json +++ b/app/javascript/dashboard/i18n/locale/bn/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/bn/report.json b/app/javascript/dashboard/i18n/locale/bn/report.json index dbf59f603..2ffa0ef11 100644 --- a/app/javascript/dashboard/i18n/locale/bn/report.json +++ b/app/javascript/dashboard/i18n/locale/bn/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/bn/settings.json b/app/javascript/dashboard/i18n/locale/bn/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/bn/settings.json +++ b/app/javascript/dashboard/i18n/locale/bn/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/bn/signup.json b/app/javascript/dashboard/i18n/locale/bn/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/bn/signup.json +++ b/app/javascript/dashboard/i18n/locale/bn/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/bn/sla.json b/app/javascript/dashboard/i18n/locale/bn/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/bn/sla.json +++ b/app/javascript/dashboard/i18n/locale/bn/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/bn/snooze.json b/app/javascript/dashboard/i18n/locale/bn/snooze.json new file mode 100644 index 000000000..2d9a876aa --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/bn/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/bn/teamsSettings.json b/app/javascript/dashboard/i18n/locale/bn/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/bn/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/bn/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ca/agentBots.json b/app/javascript/dashboard/i18n/locale/ca/agentBots.json index a7d3e02df..4937aa1a7 100644 --- a/app/javascript/dashboard/i18n/locale/ca/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ca/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "S'està carregant l'editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Sistema", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "S'estan obtenint bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "URL del webhook" + "URL": "URL del webhook", + "ACTIONS": "Accions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ca/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ca/agentMgmt.json index 421b1717f..bf6a477b3 100644 --- a/app/javascript/dashboard/i18n/locale/ca/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrador/a", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "No hi ha agents associats a aquest compte", "TITLE": "Gestiona agents en el teu equip", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "No s'ha pogut connectar amb el servidor Woot. Torna-ho a provar més endavant" } }, + "SEARCH_PLACEHOLDER": "Cerca agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No s'ha trobat agents." }, diff --git a/app/javascript/dashboard/i18n/locale/ca/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ca/attributesMgmt.json index a6ec2713f..a1abb9d2c 100644 --- a/app/javascript/dashboard/i18n/locale/ca/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "S'estan recollint atributs personalitzats", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Cerca atributs...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversa", "CONTACT": "Contacte" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Activa la validació d'expressions regulars" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ca/automation.json b/app/javascript/dashboard/i18n/locale/ca/automation.json index 6482bea60..6e3970cd7 100644 --- a/app/javascript/dashboard/i18n/locale/ca/automation.json +++ b/app/javascript/dashboard/i18n/locale/ca/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatització", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Afegeix una regla d'automatització", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "S'estan recollint regles d'automatització", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Afegeix una regla d'automatització", "SUBMIT": "Crear", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nom", - "DESCRIPTION": "Descripció", "ACTIVE": "Actiu", - "CREATED_ON": "Creat el" + "CREATED_ON": "Creat el", + "ACTIONS": "Accions" }, "404": "No s'han trobat regles d'automatització" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Canvia la prioritat", "ADD_SLA": "Afegeix SLA", - "OPEN_CONVERSATION": "Obrir conversa" + "OPEN_CONVERSATION": "Obrir conversa", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ca/bulkActions.json b/app/javascript/dashboard/i18n/locale/ca/bulkActions.json index 59eefd84d..5d4683fde 100644 --- a/app/javascript/dashboard/i18n/locale/ca/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ca/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "L'estat de les converses s'ha actualitzat correctament.", "UPDATE_FAILED": "No s'han pogut actualitzar les converses. Torna-ho a provar." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assignar etiquetes", "NO_LABELS_FOUND": "No s'han trobat etiquetes", diff --git a/app/javascript/dashboard/i18n/locale/ca/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ca/cannedMgmt.json index 99d9e7e83..a7565279a 100644 --- a/app/javascript/dashboard/i18n/locale/ca/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Respostes predeterminades", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Afegir resposta predeterminada", "LOADING": "S'estan recollint les respostes predeterminades...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "No hi ha cap resposta que coincideixi amb aquesta consulta.", "LIST": { "404": "No hi ha respostes predeterminades disponibles en aquest compte.", diff --git a/app/javascript/dashboard/i18n/locale/ca/chatlist.json b/app/javascript/dashboard/i18n/locale/ca/chatlist.json index 49681a0fd..665f794f1 100644 --- a/app/javascript/dashboard/i18n/locale/ca/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ca/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Resposta pendent: el més curt primer" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ca/contact.json b/app/javascript/dashboard/i18n/locale/ca/contact.json index 291a3ccf2..a6d25ca42 100644 --- a/app/javascript/dashboard/i18n/locale/ca/contact.json +++ b/app/javascript/dashboard/i18n/locale/ca/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No hi ha cap contacte que coincideixi amb la vostra cerca 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Per:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Assumpte :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Cco:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Cco" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ca/conversation.json b/app/javascript/dashboard/i18n/locale/ca/conversation.json index c297f78dc..e37174518 100644 --- a/app/javascript/dashboard/i18n/locale/ca/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ca/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Aquest missatge no està suportat. Pots veure aquest missatge a l'aplicació Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Aquest missatge no està suportat. Pots veure aquest missatge a l'aplicació d'Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "El missatge s'ha suprimit correctament", "FAIL_DELETE_MESSSAGE": "No s'ha pogut suprimir el missatge! Torna-ho a provar", "NO_RESPONSE": "Sense resposta", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "No s'ha pogut assignar l'etiqueta. Torna-ho a provar." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "S'ha assignat l'equip \"{team}\" a l'id de conversa {conversationId}", "FAILED": "No s'ha pogut assignar l'equip. Torna-ho a provar." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Desactiva la signatura", "MSG_INPUT": "Shift + enter per a una línia nova. Comença amb '/' per seleccionar una resposta predeterminada.", "PRIVATE_MSG_INPUT": "Shift + enter per una línia nova. Això serà visible només per als Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "La signatura del missatge no està configurada, configura-la a la configuració del perfil.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Fes clic aquí per actualitzar", "WHATSAPP_TEMPLATES": "Plantilles de Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Arrossega i deixa anar aquí per adjuntar-lo", "START_AUDIO_RECORDING": "Inicia la gravació d'àudio", "STOP_AUDIO_RECORDING": "Atura la gravació d'àudio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "A", "ADD_BCC": "Afegeix cco", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "El fitxer supera el límit de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB fitxers adjunts", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "No es pot enviar aquest missatge, torna-ho a provar més tard", "SENT_BY": "Enviat per:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "No s'ha pogut enviar el missatge! Torna-ho a provar", "TRY_AGAIN": "reintenta", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel·la", "SEND_EMAIL_SUCCESS": "La transcripció del xat s'ha enviat correctament", "SEND_EMAIL_ERROR": "S'ha produït un error; tornau-ho a provar", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Envia la transcripció al client", "SEND_TO_AGENT": "Envia la transcripció a l'agent assignat", diff --git a/app/javascript/dashboard/i18n/locale/ca/customRole.json b/app/javascript/dashboard/i18n/locale/ca/customRole.json index a395093e3..d508cff53 100644 --- a/app/javascript/dashboard/i18n/locale/ca/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ca/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "No hi ha cap resposta que coincideixi amb aquesta consulta.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ca/datePicker.json b/app/javascript/dashboard/i18n/locale/ca/datePicker.json index 37bc1bec7..8dcbbf682 100644 --- a/app/javascript/dashboard/i18n/locale/ca/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ca/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Aplica", "CLEAR_BUTTON": "Neteja", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Últims tres mesos", "LAST_6_MONTHS": "Últims sis mesos", "LAST_YEAR": "Darrer any", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Interval de dates personalitzat" } } diff --git a/app/javascript/dashboard/i18n/locale/ca/general.json b/app/javascript/dashboard/i18n/locale/ca/general.json index 189b6a388..f08cdd56f 100644 --- a/app/javascript/dashboard/i18n/locale/ca/general.json +++ b/app/javascript/dashboard/i18n/locale/ca/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Tanca", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Si", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ca/generalSettings.json b/app/javascript/dashboard/i18n/locale/ca/generalSettings.json index 7f6b166fa..06d551545 100644 --- a/app/javascript/dashboard/i18n/locale/ca/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ca/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Cerca o salta a", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Informes", diff --git a/app/javascript/dashboard/i18n/locale/ca/helpCenter.json b/app/javascript/dashboard/i18n/locale/ca/helpCenter.json index f7d247cf5..631ebd6b0 100644 --- a/app/javascript/dashboard/i18n/locale/ca/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ca/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "S'ha produït un error en suprimir l'article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Afegiu l'encapçalament i el contingut de l'article i llavors pots actualitzar la configuració" }, diff --git a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json index 287b5bcc6..8c63fabc7 100644 --- a/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Safates d'entrada", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "La teva safata d'entrada està desconnectada. No rebràs missatges nous fins que no els tornis a autoritzar.", "CLICK_TO_RECONNECT": "Fes clic aquí per tornar a connectar-te.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Utilitza només el nom de l'empresa configurat com a nom del remitent a la capçalera del correu electrònic." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configura el nom del teu negoci", + "BUTTON_TEXT": "Configura el nom del teu negoci", "PLACEHOLDER": "Introdueix el nom de la teva empresa", "SAVE_BUTTON_TEXT": "Desar" } @@ -589,8 +592,10 @@ "DISABLED": "Inhabilita" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Habilita", - "DISABLED": "Inhabilita" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Habilita" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Activa/Desactiva la mostra del nom de l'agent al correu electrònic, si està desactivat, mostrarà el nom de l'empresa", "ENABLE_CONTINUITY_VIA_EMAIL": "Activa la continuïtat de la conversa per correu electrònic", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Les converses continuaran per correu electrònic si l'adreça electrònica de contacte està disponible.", - "LOCK_TO_SINGLE_CONVERSATION": "Bloqueja a una sola conversa", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Activa o desactiva diverses converses per al mateix contacte en aquesta safata d'entrada", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Configuració de la safata d'entrada", "INBOX_UPDATE_SUB_TEXT": "Actualitza la configuració de la safata d'entrada", "AUTO_ASSIGNMENT_SUB_TEXT": "Activa o desactiva l'assignació automàtica d'agents disponibles a les noves converses", @@ -758,6 +765,7 @@ "LABEL": "Centre d'ajuda", "PLACEHOLDER": "Selecciona Centre d'ajuda", "SELECT_PLACEHOLDER": "Selecciona Centre d'ajuda", + "NONE": "Ningú", "REMOVE": "Suprimeix Centre d'ajuda", "SUB_TEXT": "Adjunta un Centre d'ajuda amb la safata d'entrada" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Introdueix un valor superior a 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limita el nombre màxim de converses d'aquesta safata d'entrada que es poden assignar automàticament a un agent" }, + "ASSIGNMENT": { + "TITLE": "Conversació Assignada", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Actiu", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel·la", + "CONFIRM_DELETE": "Esborrar", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautoritza", "SUBTITLE": "La teva connexió a Facebook ha caducat, torna a connectar la vostra pàgina de Facebook per continuar els serveis", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Torna" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Missatge no disponible per als visitants", "TOGGLE_HELP": "Si activeu la disponibilitat comercial, es mostraran les hores disponibles al giny del xat en directe, encara que tots els agents estiguin fora de línia. Fora de l'horari disponible, els visitants poden ser avisats amb un missatge i un formulari de xat previ.", "DAY": { + "DAY": "Dia", + "AVAILABILITY": "Disponibilitat", + "HOURS": "Hours", "ENABLE": "Activa la disponibilitat per a aquest dia", "UNAVAILABLE": "No disponible", - "HOURS": "hores", "VALIDATION_ERROR": "L'hora d'inici ha de ser abans de l'hora de tancament.", "CHOOSE": "Tria" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "En un dia" }, "WIDGET_COLOR_LABEL": "Color del Widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posició de la bombolla del widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Tipus de bombolla de widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipus:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Xateja amb nosaltres", - "LABEL": "Títol del llançador de bombolles de widget", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Xateja amb nosaltres" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Per defecte", - "CHAT": "Xat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Normalment responem en pocs minuts", diff --git a/app/javascript/dashboard/i18n/locale/ca/integrationApps.json b/app/javascript/dashboard/i18n/locale/ca/integrationApps.json index 6bf16a8ef..a2a60a59c 100644 --- a/app/javascript/dashboard/i18n/locale/ca/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ca/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "S'estan obtenint integracions", "NO_HOOK_CONFIGURED": "No hi ha integracions {integrationId} configurades en aquest compte.", "HEADER": "Aplicacions", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Habilita", "DISABLED": "Inhabilita" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Recollint els hooks d'integració", "INBOX": "Safata d'entrada", + "ACTIONS": "Accions", "DELETE": { "BUTTON_TEXT": "Esborrar" } diff --git a/app/javascript/dashboard/i18n/locale/ca/integrations.json b/app/javascript/dashboard/i18n/locale/ca/integrations.json index f754e0530..d3d6fde73 100644 --- a/app/javascript/dashboard/i18n/locale/ca/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ca/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Esdeveniments subscrits", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel·la", "DESC": "Els esdeveniments de Webhook us proporcionen informació en temps real sobre el que passa al vostre compte de Chatwoot. Introduïu una URL vàlid per configurar un callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Esborrar", "DELETE_CONFIRMATION": { "TITLE": "Suprimeix la integració", @@ -145,7 +160,29 @@ "EXPAND": "Expandeix", "MAKE_FRIENDLY": "Canvia el to del missatge a amigable", "MAKE_FORMAL": "Utilitza un to formal", - "SIMPLIFY": "Simplifica" + "SIMPLIFY": "Simplifica", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Amable" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Esborrany de contingut", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplicacions del tauler de control

Les aplicacions del tauler de control permeten a les organitzacions incrustar una aplicació dins del tauler de control de Chatwoot per proporcionar el context als agents d'atenció al client. Aquesta funció et permet crear una aplicació de manera independent i inserir-la dins del tauler per proporcionar informació de l'usuari, les seves comandes o el seu historial de pagaments anteriors.

Quan incrusteu la teva aplicació mitjançant el tauler de control de Chatwoot, la teva aplicació obté el context de la conversa i el contacte com a esdeveniment de finestra. Implementa un oient per a l'esdeveniment del missatge a la teva pàgina per rebre el context.

Per afegir una aplicació de tauler nova, feu clic al botó \"Afegeix una aplicació de tauler nova\".

", "DESCRIPTION": "Les aplicacions del tauler permeten a les organitzacions incrustar una aplicació dins del tauler per proporcionar el context als agents d'atenció al client. Aquesta funció et permet crear una aplicació de manera independent i incorporar-la per proporcionar informació de l'usuari, les seves comandes o el seu historial de pagaments anterior.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Encara no hi ha cap aplicació de tauler configurada en aquest compte", "LOADING": "S'estan obtenint les aplicacions del tauler de control...", "TABLE_HEADER": { "NAME": "Nom", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Accions" }, "EDIT_TOOLTIP": "Edita l'aplicació", "DELETE_TOOLTIP": "Suprimeix l'aplicació" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Crear/enllaçar una issue en Linear", "LOADING": "S'estan buscant issues en Linear...", "LOADING_ERROR": "S'ha produït un error en obtenir les issues en Linear, torna-ho a provar", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Pots canviar o cancel·lar el teu pla en qualsevol moment" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Posa't en contacte amb el vostre administrador per obtenir l'actualització." }, diff --git a/app/javascript/dashboard/i18n/locale/ca/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ca/labelsMgmt.json index 99852b125..cf644d7e1 100644 --- a/app/javascript/dashboard/i18n/locale/ca/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ca/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Obtenció d’etiquetes", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Cerca etiquetes...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "No hi ha cap resposta que coincideixi amb aquesta consulta", "LIST": { "404": "No hi ha etiquetes disponibles en aquest compte.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nom", "DESCRIPTION": "Descripció", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Accions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ca/macros.json b/app/javascript/dashboard/i18n/locale/ca/macros.json index 4a4ca3ceb..ae4ca38a3 100644 --- a/app/javascript/dashboard/i18n/locale/ca/macros.json +++ b/app/javascript/dashboard/i18n/locale/ca/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Afegeix una nova macro", "HEADER_BTN_TXT_SAVE": "Desa la macro", "LOADING": "Obtenció de macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Alguna cosa ha anat malament, torna-ho a provar", "ORDER_INFO": "Les macros s'executaran en l'ordre en què afegeixis les teves accions. Pots reorganitzar-los arrossegant-los per l'identificador al costat de cada node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nom", "CREATED BY": "Creat per", "LAST_UPDATED_BY": "Última actualització per", - "VISIBILITY": "Visibilitat" + "VISIBILITY": "Visibilitat", + "ACTIONS": "Accions" }, "404": "No s'han trobat macros" }, diff --git a/app/javascript/dashboard/i18n/locale/ca/mfa.json b/app/javascript/dashboard/i18n/locale/ca/mfa.json index f3d135d40..2724f73ab 100644 --- a/app/javascript/dashboard/i18n/locale/ca/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ca/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ca/report.json b/app/javascript/dashboard/i18n/locale/ca/report.json index 1db2cca6a..0c33997d1 100644 --- a/app/javascript/dashboard/i18n/locale/ca/report.json +++ b/app/javascript/dashboard/i18n/locale/ca/report.json @@ -3,7 +3,7 @@ "HEADER": "Converses", "LOADING_CHART": "S'estan carregant dades del gràfic...", "NO_ENOUGH_DATA": "No hem rebut suficients punts de dades per generar l'informe. Torneu-ho a provar més endavant.", - "DOWNLOAD_AGENT_REPORTS": "Descarregar Informes d'Agent", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "No s'han pogut obtenir les dades. Intenta-ho més tard.", "SUMMARY_FETCHING_FAILED": "No s'ha pogut obtenir el resum; torna-ho a provar més tard.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Visió general dels agents", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "S'estan carregant dades del gràfic...", "NO_ENOUGH_DATA": "No hem rebut suficients punts de dades per generar l'informe. Torneu-ho a provar més endavant.", "DOWNLOAD_AGENT_REPORTS": "Descarregar Informes d'Agent", "FILTER_DROPDOWN_LABEL": "Seleccionar Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Cerca agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Converses", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "No hem rebut suficients punts de dades per generar l'informe. Torneu-ho a provar més endavant.", "DOWNLOAD_LABEL_REPORTS": "Descarregar Informes d'etiquetes", "FILTER_DROPDOWN_LABEL": "Selecciona l'etiqueta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Cerca etiquetes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Converses", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Selecciona Safata d'entrada", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Converses", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Visió general de l'equip", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "S'estan carregant dades del gràfic...", "NO_ENOUGH_DATA": "No hem rebut suficients punts de dades per generar l'informe. Torneu-ho a provar més endavant.", "DOWNLOAD_TEAM_REPORTS": "Descarregar Informes d'equip", "FILTER_DROPDOWN_LABEL": "Selecciona equip", + "FILTERS": { + "ADD_FILTER": "Afegeix un filtre", + "CLEAR_ALL": "Esborrar tot", + "NO_FILTER": "No hi ha filtres disponibles", + "INPUT_PLACEHOLDER": { + "TEAMS": "Cerca equips" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Converses", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Informes CSAT", - "NO_RECORDS": "No hi ha respostes de l'enquesta CSAT disponibles.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Descarregar informes CSAT", "DOWNLOAD_FAILED": "No s'han pogut baixar els informes CSAT", "FILTERS": { + "ADD_FILTER": "Afegeix un filtre", + "CLEAR_ALL": "Esborrar tot", + "NO_FILTER": "No hi ha filtres disponibles", + "INPUT_PLACEHOLDER": { + "AGENTS": "Cerca agents", + "INBOXES": "Search inboxes", + "TEAMS": "Cerca equips", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Escull agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Safata d'entrada" + }, + "TEAMS": { + "LABEL": "Equip" + }, + "RATINGS": { + "LABEL": "Valoració" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contacte", - "AGENT_NAME": "Agent assignat", + "AGENT_NAME": "Agent", "RATING": "Valoració", - "FEEDBACK_TEXT": "Comentaris" - } + "FEEDBACK_TEXT": "Comentaris", + "CONVERSATION": "Conversa", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Respostes totals", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Taxa de resposta", "TOOLTIP": "Nombre total de respostes / Nombre total de missatges d'enquesta CSAT enviats * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Desar", + "CANCEL": "Cancel·la", + "SAVING": "S'està desant...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Actualitza ara", + "CANCEL_ANYTIME": "Pots canviar o cancel·lar el teu pla en qualsevol moment" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ca/settings.json b/app/javascript/dashboard/i18n/locale/ca/settings.json index b69e3542d..95ff685d2 100644 --- a/app/javascript/dashboard/i18n/locale/ca/settings.json +++ b/app/javascript/dashboard/i18n/locale/ca/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Descarrega", "UPLOADING": "S'està carregant...", - "INSTAGRAM_STORY_UNAVAILABLE": "Aquesta història ja no està disponible." + "INSTAGRAM_STORY_UNAVAILABLE": "Aquesta història ja no està disponible.", + "INSTAGRAM_STORY_REPLY": "Va respondre a la teva història:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Veure al mapa" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Llegir documents", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Característiques", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Facturació", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Cerca atributs" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resol la conversa", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resol la conversa", + "CANCEL": "Cancel·la" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Si", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Actualitza ara", + "CANCEL_ANYTIME": "Pots canviar o cancel·lar el teu pla en qualsevol moment" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Posa't en contacte amb el vostre administrador per obtenir l'actualització." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! No hem trobat cap compte de Chatwoot. Crea un compte nou per continuar.", "NEW_ACCOUNT": "Compte nou", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel·la" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ca/signup.json b/app/javascript/dashboard/i18n/locale/ca/signup.json index 0d3a1ba02..9afee22c6 100644 --- a/app/javascript/dashboard/i18n/locale/ca/signup.json +++ b/app/javascript/dashboard/i18n/locale/ca/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Crear un compte", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registre", "TESTIMONIAL_HEADER": "Només cal un pas per avançar", "TESTIMONIAL_CONTENT": "Esteu a un pas de captar els vostres clients, retenir-los i trobar-ne de nous.", diff --git a/app/javascript/dashboard/i18n/locale/ca/sla.json b/app/javascript/dashboard/i18n/locale/ca/sla.json index f79836f02..64dd58e02 100644 --- a/app/javascript/dashboard/i18n/locale/ca/sla.json +++ b/app/javascript/dashboard/i18n/locale/ca/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Crea una nova política de SLA", "DESCRIPTION": "Els acords de nivell de servei (SLA) són contractes que defineixen expectatives clares entre el vostre equip i els clients. Estableixen estàndards de temps de resposta i resolució, creen un marc de responsabilitat i garanteixen una experiència coherent i d'alta qualitat.", "LEARN_MORE": "Més informació sobre SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "S'estan obtenint SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Actualitza per crear SLA", "AVAILABLE_ON": "La funció SLA només està disponible als plans Business i Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "No hi ha cap SLA disponible en aquest compte.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Empresa P0", "DESC_1": "Problemes plantejats pels clients empresarials, que requereixen atenció immediata.", "TITLE_2": "Empresa P1", "DESC_2": "Problemes plantejats pels clients empresarials, que cal reconèixer ràpidament." }, - "BUSINESS_HOURS_ON": "Horari comercial activat", - "BUSINESS_HOURS_OFF": "Horari comercial desactivat", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Primer llindar de temps de resposta", "NRT": "Següent llindar de temps de resposta", diff --git a/app/javascript/dashboard/i18n/locale/ca/snooze.json b/app/javascript/dashboard/i18n/locale/ca/snooze.json new file mode 100644 index 000000000..9a71a1e74 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ca/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hores", + "DAY": "dia", + "DAYS": "days", + "WEEK": "setmana", + "WEEKS": "weeks", + "MONTH": "mes", + "MONTHS": "months", + "YEAR": "any", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "demà", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "pròxima setmana", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "setmana", + "DAY": "dia" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ca/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ca/teamsSettings.json index 0c9a89985..90d580c77 100644 --- a/app/javascript/dashboard/i18n/locale/ca/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ca/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Cerca equips...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "No hi ha cap equip creat en aquest compte.", "EDIT_TEAM": "Edita l'equip", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "No s'han pogut desar els detalls de l'equip. Torna-ho a provar." }, "AGENTS": { - "AGENT": "AGENT", + "AGENT": "Agent", "EMAIL": "Correu electrònic", "BUTTON_TEXT": "Afegir agents", "ADD_AGENTS": "S'estan afegint agents al teu equip...", diff --git a/app/javascript/dashboard/i18n/locale/cs/agentBots.json b/app/javascript/dashboard/i18n/locale/cs/agentBots.json index 18ec3788b..638cbb5fe 100644 --- a/app/javascript/dashboard/i18n/locale/cs/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/cs/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "URL webového háčku" + "URL": "URL webového háčku", + "ACTIONS": "Akce" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/cs/agentMgmt.json b/app/javascript/dashboard/i18n/locale/cs/agentMgmt.json index 91726682b..85056ae17 100644 --- a/app/javascript/dashboard/i18n/locale/cs/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrátor", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "K tomuto účtu nejsou přiřazeni žádní agenti", "TITLE": "Spravujte agenty ve vašem týmu", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nelze se připojit k Woot serveru, opakujte akci později" } }, + "SEARCH_PLACEHOLDER": "Hledat agenty...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Žádné výsledky." }, diff --git a/app/javascript/dashboard/i18n/locale/cs/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/cs/attributesMgmt.json index e2b9fa128..69bcfc9d1 100644 --- a/app/javascript/dashboard/i18n/locale/cs/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/cs/automation.json b/app/javascript/dashboard/i18n/locale/cs/automation.json index 372a89c15..b50c78434 100644 --- a/app/javascript/dashboard/i18n/locale/cs/automation.json +++ b/app/javascript/dashboard/i18n/locale/cs/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Název", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Akce" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Přidat soukromou poznámku", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/cs/bulkActions.json b/app/javascript/dashboard/i18n/locale/cs/bulkActions.json index 35d498708..fc2e3fdff 100644 --- a/app/javascript/dashboard/i18n/locale/cs/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/cs/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/cs/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/cs/cannedMgmt.json index b88117c68..ef11bb64a 100644 --- a/app/javascript/dashboard/i18n/locale/cs/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Konzervované odpovědi", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Neexistují žádné položky odpovídající tomuto dotazu.", "LIST": { "404": "V tomto účtu nejsou k dispozici žádné konzervované odpovědi.", diff --git a/app/javascript/dashboard/i18n/locale/cs/chatlist.json b/app/javascript/dashboard/i18n/locale/cs/chatlist.json index 7be33dbe2..561982ec3 100644 --- a/app/javascript/dashboard/i18n/locale/cs/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/cs/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/cs/contact.json b/app/javascript/dashboard/i18n/locale/cs/contact.json index 21301519d..073e61e18 100644 --- a/app/javascript/dashboard/i18n/locale/cs/contact.json +++ b/app/javascript/dashboard/i18n/locale/cs/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Vašemu hledání neodpovídají žádné kontakty 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Komu:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Předmět :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/cs/conversation.json b/app/javascript/dashboard/i18n/locale/cs/conversation.json index ebba05695..64d01e69d 100644 --- a/app/javascript/dashboard/i18n/locale/cs/conversation.json +++ b/app/javascript/dashboard/i18n/locale/cs/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Zpráva byla úspěšně smazána", "FAIL_DELETE_MESSSAGE": "Zpráva se nepodařilo odstranit! Zkuste to znovu", "NO_RESPONSE": "Bez odpovědi", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nelze přiřadit štítek. Zkuste to prosím znovu." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Přiřazený tým #{team} ke konverzaci id {conversationId}", "FAILED": "Nelze přiřadit tým. Zkuste to prosím znovu." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Zakázat podpis", "MSG_INPUT": "Shift + zadejte pro nový řádek. Začněte '/' pro výběr zrušené odpovědi.", "PRIVATE_MSG_INPUT": "Shift + zadejte pro nový řádek. Toto bude viditelné pouze pro agenty", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Podpis zprávy není nakonfigurován, prosím nakonfigurujte jej v nastavení profilu.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klikněte zde pro aktualizaci", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Přetažením sem připojíte", "START_AUDIO_RECORDING": "Spustit nahrávání zvuku", "STOP_AUDIO_RECORDING": "Zastavit nahrávání zvuku", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Přidat bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nepodařilo se odeslat tuto zprávu, zkuste to prosím později", "SENT_BY": "Odeslal:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Odeslání zprávy se nezdařilo! Zkuste to znovu", "TRY_AGAIN": "opakovat", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Zrušit", "SEND_EMAIL_SUCCESS": "Přepis chatu byl úspěšně odeslán", "SEND_EMAIL_ERROR": "Došlo k chybě, zkuste to prosím znovu", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Poslat přepis zákazníkovi", "SEND_TO_AGENT": "Zašlete přepis přidělenému agentovi", diff --git a/app/javascript/dashboard/i18n/locale/cs/customRole.json b/app/javascript/dashboard/i18n/locale/cs/customRole.json index bb87bde1f..a94d89139 100644 --- a/app/javascript/dashboard/i18n/locale/cs/customRole.json +++ b/app/javascript/dashboard/i18n/locale/cs/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Neexistují žádné položky odpovídající tomuto dotazu.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/cs/datePicker.json b/app/javascript/dashboard/i18n/locale/cs/datePicker.json index b5af13d7d..b1cfe0e4e 100644 --- a/app/javascript/dashboard/i18n/locale/cs/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/cs/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Použít", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Poslední 3 měsíce", "LAST_6_MONTHS": "Posledních 6 měsíců", "LAST_YEAR": "Poslední rok", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Vlastní časové rozmezí" } } diff --git a/app/javascript/dashboard/i18n/locale/cs/general.json b/app/javascript/dashboard/i18n/locale/cs/general.json index 44f1bc85c..ad4bb4731 100644 --- a/app/javascript/dashboard/i18n/locale/cs/general.json +++ b/app/javascript/dashboard/i18n/locale/cs/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Zavřít", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ano", + "NO": "Ne" } } diff --git a/app/javascript/dashboard/i18n/locale/cs/generalSettings.json b/app/javascript/dashboard/i18n/locale/cs/generalSettings.json index 1a1f43848..6af6232cf 100644 --- a/app/javascript/dashboard/i18n/locale/cs/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/cs/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Zprávy", diff --git a/app/javascript/dashboard/i18n/locale/cs/helpCenter.json b/app/javascript/dashboard/i18n/locale/cs/helpCenter.json index eb059daec..d58f88a20 100644 --- a/app/javascript/dashboard/i18n/locale/cs/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/cs/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json index 8e51f4050..b877b96e7 100644 --- a/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Schránky", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Zakázáno" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Povoleno", - "DISABLED": "Zakázáno" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Nastavení doručené pošty", "INBOX_UPDATE_SUB_TEXT": "Aktualizujte nastavení doručené pošty", "AUTO_ASSIGNMENT_SUB_TEXT": "Povolit nebo zakázat automatické přiřazování nových konverzací agentům přidaným do této schránky.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Nic", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Zrušit", + "CONFIRM_DELETE": "Vymazat", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Znovu autorizovat", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Den", + "AVAILABILITY": "Dostupnost", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Nedostupný", - "HOURS": "hodiny", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Vyberte" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Do dne" }, "WIDGET_COLOR_LABEL": "Barva widgetu", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Napiště nám", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Napiště nám" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Většinou odpovíme během pár minut", diff --git a/app/javascript/dashboard/i18n/locale/cs/integrationApps.json b/app/javascript/dashboard/i18n/locale/cs/integrationApps.json index a907da3ea..a5b65294d 100644 --- a/app/javascript/dashboard/i18n/locale/cs/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/cs/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Povoleno", "DISABLED": "Zakázáno" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Akce", "DELETE": { "BUTTON_TEXT": "Vymazat" } diff --git a/app/javascript/dashboard/i18n/locale/cs/integrations.json b/app/javascript/dashboard/i18n/locale/cs/integrations.json index 88f86abd7..3d0253213 100644 --- a/app/javascript/dashboard/i18n/locale/cs/integrations.json +++ b/app/javascript/dashboard/i18n/locale/cs/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Zrušit", "DESC": "Události webhooku vám poskytují reálné informace o tom, co se děje ve vašem Chatwoot účtu. Zadejte prosím platnou URL pro nastavení hovoru.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Vymazat", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Název", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Akce" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/cs/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/cs/labelsMgmt.json index 1f4e1ddd4..5814c0f1a 100644 --- a/app/javascript/dashboard/i18n/locale/cs/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/cs/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Neexistují žádné položky odpovídající tomuto dotazu", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Název", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Akce" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/cs/macros.json b/app/javascript/dashboard/i18n/locale/cs/macros.json index de63b2618..3ce6bb7c1 100644 --- a/app/javascript/dashboard/i18n/locale/cs/macros.json +++ b/app/javascript/dashboard/i18n/locale/cs/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Název", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Akce" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/cs/mfa.json b/app/javascript/dashboard/i18n/locale/cs/mfa.json index 7729b0c9a..55ea26066 100644 --- a/app/javascript/dashboard/i18n/locale/cs/mfa.json +++ b/app/javascript/dashboard/i18n/locale/cs/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/cs/report.json b/app/javascript/dashboard/i18n/locale/cs/report.json index 2831eeeb0..62369df5e 100644 --- a/app/javascript/dashboard/i18n/locale/cs/report.json +++ b/app/javascript/dashboard/i18n/locale/cs/report.json @@ -3,7 +3,7 @@ "HEADER": "Konverzace", "LOADING_CHART": "Načítání dat mapy...", "NO_ENOUGH_DATA": "Pro vytvoření hlášení jsme neobdrželi dostatek dat, zkuste to prosím později.", - "DOWNLOAD_AGENT_REPORTS": "Stáhnout reporty agentů", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Načítání dat mapy...", "NO_ENOUGH_DATA": "Pro vytvoření hlášení jsme neobdrželi dostatek dat, zkuste to prosím později.", "DOWNLOAD_AGENT_REPORTS": "Stáhnout reporty agentů", "FILTER_DROPDOWN_LABEL": "Vybrat agenta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Hledat agenty" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konverzace", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Pro vytvoření hlášení jsme neobdrželi dostatek dat, zkuste to prosím později.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konverzace", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konverzace", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Načítání dat mapy...", "NO_ENOUGH_DATA": "Pro vytvoření hlášení jsme neobdrželi dostatek dat, zkuste to prosím později.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Hledat týmy" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konverzace", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Hledat agenty", + "INBOXES": "Search inboxes", + "TEAMS": "Hledat týmy", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Hodnocení" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Hodnocení", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Zrušit", + "SAVING": "Ukládání...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/cs/settings.json b/app/javascript/dashboard/i18n/locale/cs/settings.json index 5d72c850d..a1086aef7 100644 --- a/app/javascript/dashboard/i18n/locale/cs/settings.json +++ b/app/javascript/dashboard/i18n/locale/cs/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Stáhnout", "UPLOADING": "Nahrávání...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funkce", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Zrušit" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ano", + "NO": "Ne" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "Nový účet", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Zrušit" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/cs/signup.json b/app/javascript/dashboard/i18n/locale/cs/signup.json index 4e0f5ffb9..37eb87541 100644 --- a/app/javascript/dashboard/i18n/locale/cs/signup.json +++ b/app/javascript/dashboard/i18n/locale/cs/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrovat se", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/cs/sla.json b/app/javascript/dashboard/i18n/locale/cs/sla.json index 7e6038abb..9b58ac9f5 100644 --- a/app/javascript/dashboard/i18n/locale/cs/sla.json +++ b/app/javascript/dashboard/i18n/locale/cs/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/cs/snooze.json b/app/javascript/dashboard/i18n/locale/cs/snooze.json new file mode 100644 index 000000000..7cdcc5866 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/cs/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hodiny", + "DAY": "day", + "DAYS": "days", + "WEEK": "den", + "WEEKS": "weeks", + "MONTH": "týden", + "MONTHS": "months", + "YEAR": "měsíc", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "zítra", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "příští týden", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "den", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/cs/teamsSettings.json b/app/javascript/dashboard/i18n/locale/cs/teamsSettings.json index 1cdcb0c2b..60cabe29f 100644 --- a/app/javascript/dashboard/i18n/locale/cs/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/cs/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Hledat týmy...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-MAIL", + "AGENT": "Agent", + "EMAIL": "E-mailová adresa", "BUTTON_TEXT": "Přidat agenty", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/da/agentBots.json b/app/javascript/dashboard/i18n/locale/da/agentBots.json index 7b44f5897..725095d9a 100644 --- a/app/javascript/dashboard/i18n/locale/da/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/da/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Handlinger" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/da/agentMgmt.json b/app/javascript/dashboard/i18n/locale/da/agentMgmt.json index 766ea1bde..011a97816 100644 --- a/app/javascript/dashboard/i18n/locale/da/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Der er ingen agenter tilknyttet denne konto", "TITLE": "Administrer agenter i dit team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Kunne ikke oprette forbindelse til Woot Server, Prøv igen senere" } }, + "SEARCH_PLACEHOLDER": "Søg agenter...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Ingen resultater fundet." }, diff --git a/app/javascript/dashboard/i18n/locale/da/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/da/attributesMgmt.json index b0ee8f27c..b1d0fd6ad 100644 --- a/app/javascript/dashboard/i18n/locale/da/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Henter brugerdefinerede attributter", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Søg attributter...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Samtale", "CONTACT": "Kontakt" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/da/automation.json b/app/javascript/dashboard/i18n/locale/da/automation.json index 833c7a0a4..c1636f2b9 100644 --- a/app/javascript/dashboard/i18n/locale/da/automation.json +++ b/app/javascript/dashboard/i18n/locale/da/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatisering", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Tilføj Automatiseringsregel", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Henter automatiseringsregler", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Tilføj Automatiseringsregel", "SUBMIT": "Opret", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Navn", - "DESCRIPTION": "Beskrivelse", "ACTIVE": "Aktiv", - "CREATED_ON": "Oprettet den" + "CREATED_ON": "Oprettet den", + "ACTIONS": "Handlinger" }, "404": "Ingen automatiseringsregler fundet" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Åbn samtale" + "OPEN_CONVERSATION": "Åbn samtale", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/da/bulkActions.json b/app/javascript/dashboard/i18n/locale/da/bulkActions.json index f5fc5d031..aeb9f341d 100644 --- a/app/javascript/dashboard/i18n/locale/da/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/da/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Samtalens status blev opdateret.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Ingen labels fundet", diff --git a/app/javascript/dashboard/i18n/locale/da/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/da/cannedMgmt.json index ec44285ec..4b0185cb1 100644 --- a/app/javascript/dashboard/i18n/locale/da/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Standardsvar Svar", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Der er ingen elementer, der matcher denne forespørgsel.", "LIST": { "404": "Der er ingen tilgængelige standardsvar på denne konto.", diff --git a/app/javascript/dashboard/i18n/locale/da/chatlist.json b/app/javascript/dashboard/i18n/locale/da/chatlist.json index 4685360f3..cc48a872b 100644 --- a/app/javascript/dashboard/i18n/locale/da/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/da/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/da/contact.json b/app/javascript/dashboard/i18n/locale/da/contact.json index 4c98427b0..46e8d0cd9 100644 --- a/app/javascript/dashboard/i18n/locale/da/contact.json +++ b/app/javascript/dashboard/i18n/locale/da/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Ingen kontakter matcher din søgning 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Tildel Etiketter", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Til:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Emne :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/da/conversation.json b/app/javascript/dashboard/i18n/locale/da/conversation.json index 1cc101304..2e5d34a7b 100644 --- a/app/javascript/dashboard/i18n/locale/da/conversation.json +++ b/app/javascript/dashboard/i18n/locale/da/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Besked slettet", "FAIL_DELETE_MESSSAGE": "Kunne ikke slette beskeden! Prøv igen", "NO_RESPONSE": "Intet svar", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Kunne ikke tildele etiket. Prøv venligst igen." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Tildelt team \"{team}\" til samtale-id {conversationId}", "FAILED": "Kunne ikke tildele team. Prøv venligst igen." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Deaktivér signatur", "MSG_INPUT": "Shift + enter for ny linje. Start med '/' for at vælge et standardsvar.", "PRIVATE_MSG_INPUT": "Shift + enter for ny linje. Dette vil kun være synligt for Agenter", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Beskedsignatur er ikke konfigureret, konfigurer den i profilindstillinger.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klik her for at opdatere", "WHATSAPP_TEMPLATES": "Whatsapp Skabeloner" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Træk og slip her for at vedhæfte", "START_AUDIO_RECORDING": "Start lydoptagelse", "STOP_AUDIO_RECORDING": "Stop lydoptagelse", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Tilføj bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Filen overskrider grænsen på {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} for vedhæftede filer", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Kunne ikke sende denne besked, prøv igen senere", "SENT_BY": "Sendt af:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Kunne ikke sende besked! Prøv igen", "TRY_AGAIN": "prøv igen", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Annuller", "SEND_EMAIL_SUCCESS": "Chatudskriften blev sendt med succes", "SEND_EMAIL_ERROR": "Der opstod en fejl. Prøv venligst igen", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send udskrift til kunden", "SEND_TO_AGENT": "Send udskrift til den tildelte agent", diff --git a/app/javascript/dashboard/i18n/locale/da/customRole.json b/app/javascript/dashboard/i18n/locale/da/customRole.json index b6e341616..21bed9856 100644 --- a/app/javascript/dashboard/i18n/locale/da/customRole.json +++ b/app/javascript/dashboard/i18n/locale/da/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Der er ingen elementer, der matcher denne forespørgsel.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/da/datePicker.json b/app/javascript/dashboard/i18n/locale/da/datePicker.json index 29d598c4d..5fb859bef 100644 --- a/app/javascript/dashboard/i18n/locale/da/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/da/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Anvend", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Seneste 3 måneder", "LAST_6_MONTHS": "Seneste 6 måneder", "LAST_YEAR": "Sidste år", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Tilpasset datointerval" } } diff --git a/app/javascript/dashboard/i18n/locale/da/general.json b/app/javascript/dashboard/i18n/locale/da/general.json index eb36a5a73..ab081ca60 100644 --- a/app/javascript/dashboard/i18n/locale/da/general.json +++ b/app/javascript/dashboard/i18n/locale/da/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Luk", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ja", + "NO": "Nej" } } diff --git a/app/javascript/dashboard/i18n/locale/da/generalSettings.json b/app/javascript/dashboard/i18n/locale/da/generalSettings.json index cf8279ecb..9ad9eb70d 100644 --- a/app/javascript/dashboard/i18n/locale/da/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/da/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Søg eller hop til", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Generelt", "REPORTS": "Rapporter", diff --git a/app/javascript/dashboard/i18n/locale/da/helpCenter.json b/app/javascript/dashboard/i18n/locale/da/helpCenter.json index 4d7d68b9c..0cc945e86 100644 --- a/app/javascript/dashboard/i18n/locale/da/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/da/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Fejl under sletning af artikel" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Tilføj venligst artiklens overskrift og indhold, så kun du kan opdatere indstillingerne" }, diff --git a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json index a2d3cf391..54c759fd0 100644 --- a/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Indbakker", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Deaktiveret" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Aktiveret", - "DISABLED": "Deaktiveret" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Aktiver" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Aktivér konversationskontinuitet via e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Samtaler vil fortsætte via e-mail, hvis kontaktpersonens e-mailadresse er tilgængelig.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Indbakke Indstillinger", "INBOX_UPDATE_SUB_TEXT": "Opdater dine indbakkeindstillinger", "AUTO_ASSIGNMENT_SUB_TEXT": "Aktiver eller deaktiver automatisk tildeling af nye samtaler til agenter tilføjet til denne indbakke.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Ingen", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Indtast en værdi større end 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Begræns det maksimale antal samtaler fra denne indbakke, der kan være auto tildelt en agent" }, + "ASSIGNMENT": { + "TITLE": "Samtale Tildeling", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktiv", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Annuller", + "CONFIRM_DELETE": "Slet", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Genautorisér", "SUBTITLE": "Din Facebook-forbindelse er udløbet, tilslut venligst din Facebook-side igen for at fortsætte tjenesterne", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Gå tilbage" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Utilgængelig besked til besøgende", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Dag", + "AVAILABILITY": "Tilgængelighed", + "HOURS": "Hours", "ENABLE": "Aktiver tilgængelighed for denne dag", "UNAVAILABLE": "Unavailable", - "HOURS": "timer", "VALIDATION_ERROR": "Starttidspunkt bør være før lukketid.", "CHOOSE": "Vælg" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "På en dag" }, "WIDGET_COLOR_LABEL": "Widget Farve", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat med os", - "LABEL": "Widget Bubble Launcher Titel", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat med os" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Standard", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Svarer typisk på et par minutter", diff --git a/app/javascript/dashboard/i18n/locale/da/integrationApps.json b/app/javascript/dashboard/i18n/locale/da/integrationApps.json index de5265e07..45e0ff27a 100644 --- a/app/javascript/dashboard/i18n/locale/da/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/da/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Henter Integrationer", "NO_HOOK_CONFIGURED": "Der er ingen {integrationId} integrationer konfigureret på denne konto.", "HEADER": "Applikationer", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Aktiveret", "DISABLED": "Deaktiveret" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Henter integrationshoks", "INBOX": "Indbakke", + "ACTIONS": "Handlinger", "DELETE": { "BUTTON_TEXT": "Slet" } diff --git a/app/javascript/dashboard/i18n/locale/da/integrations.json b/app/javascript/dashboard/i18n/locale/da/integrations.json index b27b5f270..3babb0dc5 100644 --- a/app/javascript/dashboard/i18n/locale/da/integrations.json +++ b/app/javascript/dashboard/i18n/locale/da/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Abonnerede Begivenheder", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Annuller", "DESC": "Webhook-begivenheder giver dig realtidsoplysninger om, hvad der sker på din Chatwoot-konto. Angiv en gyldig URL for at konfigurere et callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Slet", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps tillader organisationer at integrere en applikation i Chatwoot-dashboardet for at give konteksten til kundesupportagenter. Denne funktion giver dig mulighed for at oprette et program uafhængigt og integrere at inde i instrumentbrættet til at give brugerinformation, deres ordrer eller deres tidligere betalingshistorie.

Når du indlejrer din applikation ved hjælp af instrumentbrættet i Chatwoot, dit program vil få konteksten af samtalen og kontakt som en vinduesbegivenhed. Gennemfør en lytter til besked begivenheden på din side for at modtage konteksten.

For at tilføje en ny dashboard app, klik på knappen 'Tilføj en ny dashboard app'.

", "DESCRIPTION": "Dashboard Apps giver organisationer mulighed for at integrere et program i instrumentbrættet for at give konteksten for kundesupportagenter. Denne funktion giver dig mulighed for at oprette et program uafhængigt og integrere at give brugeroplysninger, deres ordrer, eller deres tidligere betalingshistorik.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Der er ingen dashboard apps konfigureret på denne konto endnu", "LOADING": "Henter dashboard apps...", "TABLE_HEADER": { "NAME": "Navn", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Handlinger" }, "EDIT_TOOLTIP": "Rediger app", "DELETE_TOOLTIP": "Slet app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/da/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/da/labelsMgmt.json index 73913432a..946c90de5 100644 --- a/app/javascript/dashboard/i18n/locale/da/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/da/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Henter etiketter", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Søg efter labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Der er ingen elementer, der matcher denne forespørgsel", "LIST": { "404": "Der er ingen tilgængelige etiketter på denne konto.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Navn", "DESCRIPTION": "Beskrivelse", - "COLOR": "Farve" + "COLOR": "Farve", + "ACTION": "Handlinger" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/da/macros.json b/app/javascript/dashboard/i18n/locale/da/macros.json index 1335941c9..d31a4138d 100644 --- a/app/javascript/dashboard/i18n/locale/da/macros.json +++ b/app/javascript/dashboard/i18n/locale/da/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Gem macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Navn", "CREATED BY": "Oprettet af", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Synlighed" + "VISIBILITY": "Synlighed", + "ACTIONS": "Handlinger" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/da/mfa.json b/app/javascript/dashboard/i18n/locale/da/mfa.json index 440c89657..99940ab7d 100644 --- a/app/javascript/dashboard/i18n/locale/da/mfa.json +++ b/app/javascript/dashboard/i18n/locale/da/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/da/report.json b/app/javascript/dashboard/i18n/locale/da/report.json index fb93cb681..8ecb08ffa 100644 --- a/app/javascript/dashboard/i18n/locale/da/report.json +++ b/app/javascript/dashboard/i18n/locale/da/report.json @@ -3,7 +3,7 @@ "HEADER": "Samtaler", "LOADING_CHART": "Indlæser diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke modtaget nok datapunkter til at generere rapport. Prøv igen senere.", - "DOWNLOAD_AGENT_REPORTS": "Download agentrapporter", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agenter Oversigt", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Indlæser diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke modtaget nok datapunkter til at generere rapport. Prøv igen senere.", "DOWNLOAD_AGENT_REPORTS": "Download agentrapporter", "FILTER_DROPDOWN_LABEL": "Vælg Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Søg agenter" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Vi har ikke modtaget nok datapunkter til at generere rapport. Prøv igen senere.", "DOWNLOAD_LABEL_REPORTS": "Download etiketrapporter", "FILTER_DROPDOWN_LABEL": "Vælg Etiket", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Søg efter labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Vælg Indbakke", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Oversigt", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Indlæser diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke modtaget nok datapunkter til at generere rapport. Prøv igen senere.", "DOWNLOAD_TEAM_REPORTS": "Download teamrapporter", "FILTER_DROPDOWN_LABEL": "Vælg Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Søg i teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Rapporter", - "NO_RECORDS": "Der er ingen CSAT undersøgelse svar til rådighed.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Rapporter", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Søg agenter", + "INBOXES": "Search inboxes", + "TEAMS": "Søg i teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Vælg Agenter" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Indbakke" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Bedømmelse" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontakt", - "AGENT_NAME": "Tildelt agent", + "AGENT_NAME": "Agent", "RATING": "Bedømmelse", - "FEEDBACK_TEXT": "Kommentar til feedback" - } + "FEEDBACK_TEXT": "Kommentar til feedback", + "CONVERSATION": "Samtale", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Svar i alt", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Respons rate", "TOOLTIP": "Samlet antal svar / Samlet antal CSAT undersøgelsesmeddelelser sendt * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Annuller", + "SAVING": "Gemmer...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/da/settings.json b/app/javascript/dashboard/i18n/locale/da/settings.json index b27835635..01a64899b 100644 --- a/app/javascript/dashboard/i18n/locale/da/settings.json +++ b/app/javascript/dashboard/i18n/locale/da/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploader...", - "INSTAGRAM_STORY_UNAVAILABLE": "Denne historie er ikke længere tilgængelig." + "INSTAGRAM_STORY_UNAVAILABLE": "Denne historie er ikke længere tilgængelig.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Se på kort" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Læs dokumenter", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funktioner", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Fakturering", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Søg attributter" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Løs samtale", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Løs samtale", + "CANCEL": "Annuller" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ja", + "NO": "Nej" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! Vi kunne ikke finde nogen Chatwoot-konti. Opret venligst en ny konto for at fortsætte.", "NEW_ACCOUNT": "Ny Konto", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Annuller" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/da/signup.json b/app/javascript/dashboard/i18n/locale/da/signup.json index 553d18fd3..250e5672f 100644 --- a/app/javascript/dashboard/i18n/locale/da/signup.json +++ b/app/javascript/dashboard/i18n/locale/da/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Opret en konto", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrer", "TESTIMONIAL_HEADER": "Alt, hvad der skal til, er blot et skridt for at komme videre", "TESTIMONIAL_CONTENT": "Du er et skridt fra at engagere dine kunder, fastholde dem og finde nye kunder.", diff --git a/app/javascript/dashboard/i18n/locale/da/sla.json b/app/javascript/dashboard/i18n/locale/da/sla.json index d95b1dc28..689ffe7f8 100644 --- a/app/javascript/dashboard/i18n/locale/da/sla.json +++ b/app/javascript/dashboard/i18n/locale/da/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/da/snooze.json b/app/javascript/dashboard/i18n/locale/da/snooze.json new file mode 100644 index 000000000..c3b99e8cd --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/da/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "timer", + "DAY": "dag", + "DAYS": "days", + "WEEK": "dag", + "WEEKS": "weeks", + "MONTH": "uge", + "MONTHS": "months", + "YEAR": "måned", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "i Morgen", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "næste uge", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "dag", + "DAY": "dag" + } +} diff --git a/app/javascript/dashboard/i18n/locale/da/teamsSettings.json b/app/javascript/dashboard/i18n/locale/da/teamsSettings.json index 190ffba22..174ab57df 100644 --- a/app/javascript/dashboard/i18n/locale/da/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/da/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Henter hold", "DESCRIPTION": "Teams giver dig mulighed for at organisere agenter i grupper baseret på deres ansvar. En agent kan tilhøre flere hold. Når du arbejder sammen, kan du tildele samtaler til bestemte teams.", "LEARN_MORE": "Få flere oplysninger om hold funktionen", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Søg i teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Der er ingen teams oprettet på denne konto.", "EDIT_TEAM": "Rediger team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Kunne ikke gemme teamdetaljerne. Prøv igen." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-MAIL", + "AGENT": "Agent", + "EMAIL": "E-mail", "BUTTON_TEXT": "Tilføj agenter", "ADD_AGENTS": "Tilføjer agenter til dit Team...", "SELECT": "vælg", diff --git a/app/javascript/dashboard/i18n/locale/de/agentBots.json b/app/javascript/dashboard/i18n/locale/de/agentBots.json index a5119b531..39ed7cfcf 100644 --- a/app/javascript/dashboard/i18n/locale/de/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/de/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Lade Editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Bots werden geladen...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook-URL" + "URL": "Webhook-URL", + "ACTIONS": "Aktionen" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/de/agentMgmt.json b/app/javascript/dashboard/i18n/locale/de/agentMgmt.json index 6ec5352fb..0ed891af8 100644 --- a/app/javascript/dashboard/i18n/locale/de/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Diesem Konto sind keine Agenten zugeordnet", "TITLE": "Verwalten Sie Agenten in Ihrem Team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Es konnte keine Verbindung zum Woot Server hergestellt werden. Bitte versuchen Sie es später erneut" } }, + "SEARCH_PLACEHOLDER": "Agenten suchen...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Keine Ergebnisse gefunden." }, diff --git a/app/javascript/dashboard/i18n/locale/de/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/de/attributesMgmt.json index 90f2a2d51..c69c141fd 100644 --- a/app/javascript/dashboard/i18n/locale/de/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Benutzerdefinierte Attribute abrufen", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Attribut suchen...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Konversation", "CONTACT": "Kontakt" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Regex Validierung aktivieren" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/de/automation.json b/app/javascript/dashboard/i18n/locale/de/automation.json index b93b39656..dfec1022c 100644 --- a/app/javascript/dashboard/i18n/locale/de/automation.json +++ b/app/javascript/dashboard/i18n/locale/de/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatisierung", "DESCRIPTION": "Mittels Automatisierung können bestehende Prozesse ersetzt und rationalisiert werden, die manuellen Aufwand erfordern, z. B. das Hinzufügen von Etiketten und die Zuweisung von Gesprächen an den am besten geeigneten Agenten. So kann sich das Team auf seine Stärken konzentrieren und gleichzeitig den Zeitaufwand für Routineaufgaben reduzieren.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Automatisierungsregel hinzufügen", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Automatisierungsregeln abrufen", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Automatisierungsregel hinzufügen", "SUBMIT": "Erstellen", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Beschreibung", "ACTIVE": "Aktiv", - "CREATED_ON": "Erstellt am" + "CREATED_ON": "Erstellt am", + "ACTIONS": "Aktionen" }, "404": "Keine Automatisierungsregeln gefunden" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Priorität ändern", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Unterhaltung öffnen" + "OPEN_CONVERSATION": "Unterhaltung öffnen", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/de/bulkActions.json b/app/javascript/dashboard/i18n/locale/de/bulkActions.json index b29f17fdd..ed6a77908 100644 --- a/app/javascript/dashboard/i18n/locale/de/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/de/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Der Konversationsstatus wurde erfolgreich aktualisiert.", "UPDATE_FAILED": "Konversationen konnten nicht aktualisiert werden. Bitte versuchen Sie es erneut." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Konversationen können aufgrund fehlender notwendiger Attribute nicht gelöst werden", + "PARTIAL_SUCCESS": "Einige Konversationen benötigen zum Lösen erforderliche Attribute und wurden übersprungen" + }, "LABELS": { "ASSIGN_LABELS": "Labels zuweisen", "NO_LABELS_FOUND": "Keine Labels gefunden", diff --git a/app/javascript/dashboard/i18n/locale/de/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/de/cannedMgmt.json index 3ddd8de23..e26e3dede 100644 --- a/app/javascript/dashboard/i18n/locale/de/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Vorgefertigte Antworten", "LEARN_MORE": "Erfahren Sie mehr über vorgefertigte Antworten", "DESCRIPTION": "Vorgefertigte Antworten sind vorgeschriebene Antwortvorlagen, die Ihnen helfen, schnell auf eine Konversation zu reagieren. Agenten können das Zeichen '/' gefolgt von dem Kurzbefehl eingeben, um während einer Konversation eine vorgefertigte Antwort einzufügen. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Vorgefertigte Antwort hinzufügen", "LOADING": "Lade vorgefertigte Antworten...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Es existieren keine Elemente, die dieser Abfrage entsprechen.", "LIST": { "404": "In diesem Konto sind keine gespeicherten Antworten verfügbar.", diff --git a/app/javascript/dashboard/i18n/locale/de/chatlist.json b/app/javascript/dashboard/i18n/locale/de/chatlist.json index 459e3f3a9..ce4456067 100644 --- a/app/javascript/dashboard/i18n/locale/de/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/de/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Ausstehende Antwort: Kürzeste zuerst" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/de/companies.json b/app/javascript/dashboard/i18n/locale/de/companies.json index 0144ac7d3..3dcd8ee07 100644 --- a/app/javascript/dashboard/i18n/locale/de/companies.json +++ b/app/javascript/dashboard/i18n/locale/de/companies.json @@ -1,13 +1,13 @@ { "COMPANIES": { - "HEADER": "Companies", + "HEADER": "Unternehmen", "SORT_BY": { "LABEL": "Sortieren nach", "OPTIONS": { "NAME": "Name", "DOMAIN": "Domain", "CREATED_AT": "Erstellt am", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Anzahl Kontakte" } }, "ORDER": { @@ -17,17 +17,17 @@ "DESCENDING": "Absteigend" } }, - "SEARCH_PLACEHOLDER": "Search companies...", - "LOADING": "Loading companies...", - "UNNAMED": "Unnamed Company", - "CONTACTS_COUNT": "{n} contact | {n} contacts", + "SEARCH_PLACEHOLDER": "Unternehmen suchen...", + "LOADING": "Unternehmen werden geladen...", + "UNNAMED": "Unbenanntes Unternehmen", + "CONTACTS_COUNT": "{n} Kontakt | {n} Kontakte", "EMPTY_STATE": { - "TITLE": "No companies found" + "TITLE": "Keine Unternehmen gefunden" } }, "COMPANIES_LAYOUT": { "PAGINATION_FOOTER": { - "SHOWING": "Showing {startItem} – {endItem} of {totalItems} company | Showing {startItem} – {endItem} of {totalItems} companies" + "SHOWING": "Zeige {startItem} – {endItem} von {totalItems} Unternehmen | Zeige {startItem} – {endItem} von {totalItems} Unternehmen" } } } diff --git a/app/javascript/dashboard/i18n/locale/de/contact.json b/app/javascript/dashboard/i18n/locale/de/contact.json index f7e71a75e..36d003067 100644 --- a/app/javascript/dashboard/i18n/locale/de/contact.json +++ b/app/javascript/dashboard/i18n/locale/de/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Instagram hinzufügen" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Keine Kontakte entsprechen Ihrer Suche 🔍", "LIST_EMPTY_STATE_TITLE": "Keine Kontakte verfügbar in dieser Ansicht 📋", "ACTIVE_EMPTY_STATE_TITLE": "Im Moment sind keine Kontakte aktiv 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Labels zuweisen", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "Es sind keine Posteingänge vorhanden, um eine Unterhaltung mit diesem Kontakt zu starten.", "CONTACT_SELECTOR": { "LABEL": "An:", - "TAG_INPUT_PLACEHOLDER": "Suche nach Kontakten mit Name, E-Mail oder Telefonnummer", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Neuen Kontakt erstellen..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Betreff :", "SUBJECT_PLACEHOLDER": "E-Mail Betreff hier eingeben", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Suche nach einem Kontakt mit seiner E-Mail-Adresse", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Suche nach einem Kontakt mit seiner E-Mail-Adresse", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/de/conversation.json b/app/javascript/dashboard/i18n/locale/de/conversation.json index 86cc4d002..091120b1d 100644 --- a/app/javascript/dashboard/i18n/locale/de/conversation.json +++ b/app/javascript/dashboard/i18n/locale/de/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "Diese Nachricht wird nicht unterstützt. Sie können diese Nachricht in der Facebook/Instagram-App sehen.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Diese Nachricht wird nicht unterstützt. Sie können diese Nachricht in der Facebook-Messenger-App sehen.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Diese Nachricht wird nicht unterstützt. Sie können diese Nachricht in der Instagram-App sehen.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Nachricht erfolgreich gelöscht", "FAIL_DELETE_MESSSAGE": "Nachricht konnte nicht gelöscht werden! Versuchen Sie es erneut", "NO_RESPONSE": "Keine Antwort", @@ -173,6 +174,10 @@ "SUCCESFUL": "Label #{labelName} der Konversations-ID {conversationId} zugewiesen", "FAILED": "Label konnte nicht zugewiesen werden. Bitte versuche es erneut." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Das Team\"{team}\" wurde der Konversations-ID {conversationId} zugewiesen", "FAILED": "Team konnte nicht zugewiesen werden. Bitte versuche es erneut." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Signatur deaktivieren", "MSG_INPUT": "Umschalt + Eingabetaste für neue Zeile. Beginnen Sie mit '/', um eine vordefinierte Antwort auszuwählen.", "PRIVATE_MSG_INPUT": "Umschalt + Eingabetaste für neue Zeile. Dies ist nur für Agenten sichtbar", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Die Nachrichtensignatur ist nicht konfiguriert, bitte konfigurieren Sie sie in den Profileinstellungen.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klicken Sie hier, um zu aktualisieren", "WHATSAPP_TEMPLATES": "WhatsApp-Vorlagen" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Zum Anhängen hierher ziehen und ablegen", "START_AUDIO_RECORDING": "Audioaufzeichnung starten", "STOP_AUDIO_RECORDING": "Audioaufzeichnung stoppen", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "An", "ADD_BCC": "BCC hinzufügen", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Unterhaltung erfolgreich gelöscht", "FAIL_DELETE_CONVERSATION": "Unterhaltung konnte nicht gelöscht werden! Erneut versuchen", "FILE_SIZE_LIMIT": "Die Datei überschreitet das Anhangslimit von {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nachricht konnte nicht gesendet werden, bitte versuchen Sie es später erneut", "SENT_BY": "Gesendet von:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nachricht konnte nicht gesendet werden! Versuchen Sie es noch einmal", "TRY_AGAIN": "neu versuchen", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Abbrechen", "SEND_EMAIL_SUCCESS": "Das Chat-Protokoll wurde erfolgreich gesendet", "SEND_EMAIL_ERROR": "Es ist ein Fehler aufgetreten, bitte versuchen Sie es erneut", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Das Transkript an den Kunden senden", "SEND_TO_AGENT": "Transkript an den zugewiesenen Agenten senden", diff --git a/app/javascript/dashboard/i18n/locale/de/customRole.json b/app/javascript/dashboard/i18n/locale/de/customRole.json index 152217dca..11b6e8c6a 100644 --- a/app/javascript/dashboard/i18n/locale/de/customRole.json +++ b/app/javascript/dashboard/i18n/locale/de/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Es existieren keine Elemente, die dieser Abfrage entsprechen.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/de/datePicker.json b/app/javascript/dashboard/i18n/locale/de/datePicker.json index 53fe1d957..eab957fad 100644 --- a/app/javascript/dashboard/i18n/locale/de/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/de/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Übernehmen", "CLEAR_BUTTON": "Leeren", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Letzte 3 Monate", "LAST_6_MONTHS": "Letzte 6 Monate", "LAST_YEAR": "Letztes Jahr", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Benutzerdefinierter Zeitraum" } } diff --git a/app/javascript/dashboard/i18n/locale/de/general.json b/app/javascript/dashboard/i18n/locale/de/general.json index a0b8ac977..0197be8d6 100644 --- a/app/javascript/dashboard/i18n/locale/de/general.json +++ b/app/javascript/dashboard/i18n/locale/de/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Schließen", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Verwerfen", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ja", + "NO": "Nein" } } diff --git a/app/javascript/dashboard/i18n/locale/de/generalSettings.json b/app/javascript/dashboard/i18n/locale/de/generalSettings.json index 33c2c2843..ecf1109ab 100644 --- a/app/javascript/dashboard/i18n/locale/de/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/de/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Suchen oder springen zu", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Generell", "REPORTS": "Berichte", diff --git a/app/javascript/dashboard/i18n/locale/de/helpCenter.json b/app/javascript/dashboard/i18n/locale/de/helpCenter.json index 3be2485d1..4a2cc23a2 100644 --- a/app/javascript/dashboard/i18n/locale/de/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/de/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Fehler beim Löschen des Artikels" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Bitte fügen Sie die Überschrift und den Inhalt des Artikels hinzu, dann können nur Sie die Einstellungen aktualisieren" }, diff --git a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json index 43cd5f23e..88ec50dd5 100644 --- a/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Posteingänge", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Mehr über Posteingänge erfahren", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Ihr Posteingang ist nicht verbunden. Sie erhalten keine neuen Nachrichten, bis Sie ihn erneut autorisieren.", "CLICK_TO_RECONNECT": "Klicken Sie hier, um die Verbindung wiederherzustellen.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Verwenden Sie nur den konfigurierten Firmennamen als Absendernamen in der E-Mail-Kopfzeile." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Konfigurieren Sie Ihren Firmennamen", + "BUTTON_TEXT": "Konfigurieren Sie Ihren Firmennamen", "PLACEHOLDER": "Geben Sie Ihren Firmennamen ein", "SAVE_BUTTON_TEXT": "Speichern" } @@ -589,8 +592,10 @@ "DISABLED": "Deaktiviert" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Aktiviert", - "DISABLED": "Deaktiviert" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Aktivieren" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Aktivieren/Deaktivieren Sie die Anzeige des Agentennamens in der E-Mail. Wenn deaktiviert, wird der Firmenname angezeigt", "ENABLE_CONTINUITY_VIA_EMAIL": "Konversationskontinuität per E-Mail aktivieren", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Konversationen werden per E-Mail fortgesetzt, wenn die Kontakt-E-Mail-Adresse verfügbar ist.", - "LOCK_TO_SINGLE_CONVERSATION": "Mehrere Konversationen zulassen", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Mehrere gleichzeitige Unterhaltungen für denselben Kontakt in diesem Posteingang aktivieren oder deaktivieren", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Posteingangseinstellungen", "INBOX_UPDATE_SUB_TEXT": "Posteingangseinstellungen aktualisieren", "AUTO_ASSIGNMENT_SUB_TEXT": "Aktivieren oder deaktivieren Sie die automatische Zuweisung verfügbarer Agenten für neue Konversationen", @@ -758,6 +765,7 @@ "LABEL": "Hilfezentrum", "PLACEHOLDER": "Hilfezentrum auswählen", "SELECT_PLACEHOLDER": "Hilfezentrum auswählen", + "NONE": "Keine", "REMOVE": "Hilfezentrum entfernen", "SUB_TEXT": "Ein Hilfezentrum am Posteingang anhängen" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Bitte geben Sie einen Wert größer als 0 ein", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Beschränken Sie die maximale Anzahl von Konversationen aus diesem Posteingang, die einem Agenten automatisch zugewiesen werden können" }, + "ASSIGNMENT": { + "TITLE": "Konversationssauftrag", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktiv", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Stornieren", + "CONFIRM_DELETE": "Löschen", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Neu autorisieren", "SUBTITLE": "Ihre Facebook-Verbindung ist abgelaufen, bitte verbinden Sie sich neu, um die Dienste fortzuführen", @@ -825,7 +880,7 @@ "PENDING": "Pending WhatsApp approval", "REJECTED": "Meta rejected the template", "DEFAULT": "Needs WhatsApp approval", - "NOT_FOUND": "The template does not exist in the Meta platform." + "NOT_FOUND": "Die Voralge ist auf der Meta-Plattform nicht vorhanden." }, "TEMPLATE_CREATION": { "SUCCESS_MESSAGE": "WhatsApp template created successfully and sent for approval", @@ -833,10 +888,24 @@ }, "TEMPLATE_UPDATE_DIALOG": { "TITLE": "Edit survey details", - "DESCRIPTION": "We will delete the previous template and make a new one which will be sent again for WhatsApp approval", + "DESCRIPTION": "Wir löschen die vorherige Vorlage und erstellen eine neue, die erneut zur Genehmigung durch WhatsApp gesendet wird", "CONFIRM": "Create new template", "CANCEL": "Zurück" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Nachricht für Besucher außerhalb Geschäftszeiten", "TOGGLE_HELP": "Wenn die Geschäftsverfügbarkeit aktiviert ist, werden die verfügbaren Stunden im Live-Chat-Widget angezeigt, auch wenn alle Agenten offline sind. Außerhalb der verfügbaren Stunden können Besucher mit einer Nachricht und einem Chat-Formular gewarnt werden.", "DAY": { + "DAY": "Tag", + "AVAILABILITY": "Verfügbarkeit", + "HOURS": "Hours", "ENABLE": "Verfügbarkeit für diesen Tag aktivieren", "UNAVAILABLE": "Nicht verfügbar", - "HOURS": "Stunden", "VALIDATION_ERROR": "Die Startzeit sollte vor der Schließzeit liegen.", "CHOOSE": "Auswählen" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Innerhalb eines Tages" }, "WIDGET_COLOR_LABEL": "Widget Farbe", - "WIDGET_BUBBLE_POSITION_LABEL": "Position der Widget-Blase", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget-Blasentyp", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Typ:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chatten Sie mit uns", - "LABEL": "Widget Bubble Launcher-Titel", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chatten Sie mit uns" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Standard", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Wir antworten üblicherweise innerhalb weniger Minuten", diff --git a/app/javascript/dashboard/i18n/locale/de/integrationApps.json b/app/javascript/dashboard/i18n/locale/de/integrationApps.json index 7b60198f8..65566b625 100644 --- a/app/javascript/dashboard/i18n/locale/de/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/de/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Integrationen werden abgerufen", "NO_HOOK_CONFIGURED": "Es wurden keine {integrationId} Integrationen in diesem Konto konfiguriert.", "HEADER": "Anwendungen", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Aktiviert", "DISABLED": "Deaktiviert" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Hooks werden abgerufen", "INBOX": "Posteingang", + "ACTIONS": "Aktionen", "DELETE": { "BUTTON_TEXT": "Löschen" } diff --git a/app/javascript/dashboard/i18n/locale/de/integrations.json b/app/javascript/dashboard/i18n/locale/de/integrations.json index c9f751b30..96686c45e 100644 --- a/app/javascript/dashboard/i18n/locale/de/integrations.json +++ b/app/javascript/dashboard/i18n/locale/de/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integriert sich mit mehreren Tools und Diensten, um die Effizienz Ihres Teams zu verbessern. Erkunden Sie die folgende Liste, um Ihre Lieblingsapps zu konfigurieren.", "LEARN_MORE": "Mehr über Integrationen erfahren", "LOADING": "Integrationen werden abgerufen", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain ist auf Ihrem Konto nicht aktiviert.", "CLICK_HERE_TO_CONFIGURE": "Hier klicken, um zu konfigurieren", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Abonnierte Events", "LEARN_MORE": "Mehr über Webhooks erfahren", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Stornieren", "DESC": "Webhook-Ereignisse bieten Ihnen Echtzeitinformationen darüber, was in Ihrem Chatwoot-Konto passiert. Bitte geben Sie eine gültige URL ein, um einen Rückruf zu konfigurieren.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Löschen", "DELETE_CONFIRMATION": { "TITLE": "Integration löschen", @@ -145,7 +160,29 @@ "EXPAND": "Erweitern", "MAKE_FRIENDLY": "Nachrichtenton in freundlich ändern", "MAKE_FORMAL": "Formellen Ton verwenden", - "SIMPLIFY": "Vereinfachen" + "SIMPLIFY": "Vereinfachen", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professionell", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Freundlich" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Inhalt entwerfen", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard-Apps ermöglichen es Unternehmen, eine Anwendung in das Chatwoot-Dashboard einzubetten, um den Kontext für Kundendienstmitarbeiter bereitzustellen. Mit dieser Funktion können Sie eine Anwendung unabhängig erstellen und diese in das Dashboard einbetten, um Benutzerinformationen, ihre Bestellungen oder ihren bisherigen Zahlungsverlauf bereitzustellen.

Wenn Sie Ihre Anwendung über das Dashboard in Chatwoot einbetten, erhält Ihre Anwendung den Kontext der Unterhaltung und des Kontakts als Fensterereignis. Implementieren Sie einen Listener für das Nachrichtenereignis auf Ihrer Seite, um den Kontext zu erhalten.

Um eine neue Dashboard-App hinzuzufügen, klicken Sie auf die Schaltfläche „Neue Dashboard-App hinzufügen“.

", "DESCRIPTION": "Dashboard-Apps ermöglichen es Unternehmen, eine Anwendung in das Dashboard einzubetten, um den Kontext für Kundendienstmitarbeiter bereitzustellen. Mit dieser Funktion können Sie eine Anwendung unabhängig erstellen und diese einbetten, um Benutzerinformationen, ihre Bestellungen oder ihren bisherigen Zahlungsverlauf bereitzustellen.", "LEARN_MORE": "Mehr über Dashboard-Apps erfahren", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Für dieses Konto sind noch keine Dashboard-Apps konfiguriert", "LOADING": "Dashboard-Apps werden abgerufen...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpunkt" + "ENDPOINT": "Endpunkt", + "ACTIONS": "Aktionen" }, "EDIT_TOOLTIP": "App bearbeiten", "DELETE_TOOLTIP": "Anwendung löschen" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Lineares Problem erstellen/verknüpfen", "LOADING": "Lineare Probleme werden abgerufen...", "LOADING_ERROR": "Beim Abrufen der linearen Probleme ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Sie können Ihr Paket jederzeit ändern oder kündigen" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Tarif upgraden, um Zugang zu unseren Assistenten, Copilot und mehr zu erhalten.", "ASK_ADMIN": "Bitte kontaktieren Sie Ihren Administrator für das Upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/de/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/de/labelsMgmt.json index e3a85ef2c..3e7d8c811 100644 --- a/app/javascript/dashboard/i18n/locale/de/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/de/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Label werden abgerufen", "DESCRIPTION": "Labels helfen Ihnen, Konversationen und Leads zu kategorisieren und zu priorisieren. Sie können einer Konversation oder einem Kontakt über das Seitenpanel ein Label zuweisen.", "LEARN_MORE": "Mehr über Labels erfahren", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Labels suchen...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Es existieren keine Elemente, die dieser Abfrage entsprechen", "LIST": { "404": "In diesem Konto sind keine Labels verfügbar.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Beschreibung", - "COLOR": "Farbe" + "COLOR": "Farbe", + "ACTION": "Aktionen" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/de/macros.json b/app/javascript/dashboard/i18n/locale/de/macros.json index 829c5c79a..f39444991 100644 --- a/app/javascript/dashboard/i18n/locale/de/macros.json +++ b/app/javascript/dashboard/i18n/locale/de/macros.json @@ -3,9 +3,12 @@ "HEADER": "Makros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Neues Makro hinzufügen", "HEADER_BTN_TXT_SAVE": "Makro speichern", "LOADING": "Makros abrufen", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Etwas ist schiefgelaufen. Bitte versuche es erneut", "ORDER_INFO": "Makros werden in der Reihenfolge ausgeführt, in der Sie Ihre Aktionen hinzufügen. Sie können sie neu anordnen, indem Sie sie am Griff neben jedem Knoten ziehen.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Erstellt von", "LAST_UPDATED_BY": "Zuletzt aktualisiert von", - "VISIBILITY": "Sichtbarkeit" + "VISIBILITY": "Sichtbarkeit", + "ACTIONS": "Aktionen" }, "404": "Keine Makros gefunden" }, diff --git a/app/javascript/dashboard/i18n/locale/de/mfa.json b/app/javascript/dashboard/i18n/locale/de/mfa.json index de9b27cf7..c0e97be83 100644 --- a/app/javascript/dashboard/i18n/locale/de/mfa.json +++ b/app/javascript/dashboard/i18n/locale/de/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/de/report.json b/app/javascript/dashboard/i18n/locale/de/report.json index b61ce23eb..8e83a1346 100644 --- a/app/javascript/dashboard/i18n/locale/de/report.json +++ b/app/javascript/dashboard/i18n/locale/de/report.json @@ -3,7 +3,7 @@ "HEADER": "Gespräche", "LOADING_CHART": "Diagrammdaten laden ...", "NO_ENOUGH_DATA": "Wir haben nicht genügend Datenpunkte erhalten, um einen Bericht zu erstellen. Bitte versuchen Sie es später erneut.", - "DOWNLOAD_AGENT_REPORTS": "Agenten-Berichte herunterladen", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Daten konnten nicht abgerufen werden. Bitte versuchen Sie es später erneut.", "SUMMARY_FETCHING_FAILED": "Zusammenfassung konnte nicht abgerufen werden. Bitte versuchen Sie es später erneut.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agenten-Übersicht", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Diagrammdaten laden ...", "NO_ENOUGH_DATA": "Wir haben nicht genügend Datenpunkte erhalten, um einen Bericht zu erstellen. Bitte versuchen Sie es später erneut.", "DOWNLOAD_AGENT_REPORTS": "Agenten-Berichte herunterladen", "FILTER_DROPDOWN_LABEL": "Agent auswählen", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Agenten suchen" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationen", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Wir haben nicht genügend Datenpunkte erhalten, um einen Bericht zu erstellen. Bitte versuchen Sie es später erneut.", "DOWNLOAD_LABEL_REPORTS": "Label-Berichte herunterladen", "FILTER_DROPDOWN_LABEL": "Label auswählen", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Labels suchen" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationen", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Eingang auswählen", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationen", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team-Übersicht", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Diagrammdaten laden ...", "NO_ENOUGH_DATA": "Wir haben nicht genügend Datenpunkte erhalten, um einen Bericht zu erstellen. Bitte versuchen Sie es später erneut.", "DOWNLOAD_TEAM_REPORTS": "Team-Berichte herunterladen", "FILTER_DROPDOWN_LABEL": "Team auswählen", + "FILTERS": { + "ADD_FILTER": "Filter hinzufügen", + "CLEAR_ALL": "Alle löschen", + "NO_FILTER": "Keine Filter verfügbar", + "INPUT_PLACEHOLDER": { + "TEAMS": "Teams suchen" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationen", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT-Berichte", - "NO_RECORDS": "Es sind keine Antworten zu CSAT Umfragen verfügbar.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "CSAT-Berichte herunterladen", "DOWNLOAD_FAILED": "CSAT-Berichte konnten nicht heruntergeladen werden", "FILTERS": { + "ADD_FILTER": "Filter hinzufügen", + "CLEAR_ALL": "Alle löschen", + "NO_FILTER": "Keine Filter verfügbar", + "INPUT_PLACEHOLDER": { + "AGENTS": "Agenten suchen", + "INBOXES": "Search inboxes", + "TEAMS": "Teams suchen", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Agenten wählen" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Posteingang" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Bewertung" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontakt", - "AGENT_NAME": "Zugewiesener Agent", + "AGENT_NAME": "Agent", "RATING": "Bewertung", - "FEEDBACK_TEXT": "Feedback-Kommentar" - } + "FEEDBACK_TEXT": "Feedback-Kommentar", + "CONVERSATION": "Konversation", + "CUSTOMER": "Customer", + "RESPONSE": "Antwort", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Antworten gesamt", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Antwortrate", "TOOLTIP": "Anzahl aller Antworten / Anzahl der gesendeten CSAT-Umfrage * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Speichern", + "CANCEL": "Stornieren", + "SAVING": "Speichern...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/de/settings.json b/app/javascript/dashboard/i18n/locale/de/settings.json index a0afa092b..24e13e3e0 100644 --- a/app/javascript/dashboard/i18n/locale/de/settings.json +++ b/app/javascript/dashboard/i18n/locale/de/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Herunterladen", "UPLOADING": "Wird hochgeladen...", - "INSTAGRAM_STORY_UNAVAILABLE": "Diese Geschichte ist nicht mehr verfügbar." + "INSTAGRAM_STORY_UNAVAILABLE": "Diese Geschichte ist nicht mehr verfügbar.", + "INSTAGRAM_STORY_REPLY": "Auf deine Geschichte geantwortet:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Auf Karte ansehen" @@ -307,7 +308,7 @@ "SETTINGS": "Einstellungen", "CONTACTS": "Kontakte", "ACTIVE": "Aktiv", - "COMPANIES": "Companies", + "COMPANIES": "Unternehmen", "ALL_COMPANIES": "All Companies", "CAPTAIN": "Kapitän", "CAPTAIN_ASSISTANTS": "Assistants", @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Dokumente lesen", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Kapitän", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funktionen", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Rechnungen", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Attribut suchen" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Konversation lösen", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Konversation lösen", + "CANCEL": "Stornieren" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ja", + "NO": "Nein" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Oh oh! Wir konnten keine Chatwoot-Konten finden. Bitte erstellen Sie ein neues Konto um fortzufahren.", "NEW_ACCOUNT": "Neuer Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Stornieren" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/de/signup.json b/app/javascript/dashboard/i18n/locale/de/signup.json index 57e885325..d6718df1e 100644 --- a/app/javascript/dashboard/i18n/locale/de/signup.json +++ b/app/javascript/dashboard/i18n/locale/de/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Konto erstellen", + "GET_STARTED": "Mit Chatwoot loslegen", "TITLE": "Registrieren", "TESTIMONIAL_HEADER": "Alles, was er braucht, ist ein Schritt, um vorwärtszugehen", "TESTIMONIAL_CONTENT": "Sie sind nur noch einen Schritt davon entfernt, Ihre Kunden zu gewinnen, zu binden und neue zu finden.", diff --git a/app/javascript/dashboard/i18n/locale/de/sla.json b/app/javascript/dashboard/i18n/locale/de/sla.json index e97eec9f6..f58aa659c 100644 --- a/app/javascript/dashboard/i18n/locale/de/sla.json +++ b/app/javascript/dashboard/i18n/locale/de/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/de/snooze.json b/app/javascript/dashboard/i18n/locale/de/snooze.json new file mode 100644 index 000000000..a475722e4 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/de/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "Minute", + "MINUTES": "minutes", + "HOUR": "Stunde", + "HOURS": "Stunden", + "DAY": "Tag", + "DAYS": "days", + "WEEK": "tag", + "WEEKS": "Wochen", + "MONTH": "woche", + "MONTHS": "Monate", + "YEAR": "monat", + "YEARS": "Jahre" + }, + "HALF": "halb", + "NEXT": "nächste", + "THIS": "diese", + "AT": "um", + "IN": "in", + "FROM_NOW": "ab jetzt", + "NEXT_YEAR": "nächstes Jahr", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "morgen", + "DAY_AFTER_TOMORROW": "übermorgen", + "NEXT_WEEK": "nächste Woche", + "NEXT_MONTH": "nächsten Monat", + "THIS_WEEKEND": "dieses Wochenende", + "NEXT_WEEKEND": "nächstes Wochenende" + }, + "TIME_OF_DAY": { + "MORNING": "Morgen", + "AFTERNOON": "Nachmittag", + "EVENING": "Abend", + "NIGHT": "Nacht", + "NOON": "Mittag", + "MIDNIGHT": "Mitternacht" + }, + "WORD_NUMBERS": { + "ONE": "eins", + "TWO": "zwei", + "THREE": "drei", + "FOUR": "vier", + "FIVE": "fünf", + "SIX": "sechs", + "SEVEN": "sieben", + "EIGHT": "acht", + "NINE": "neun", + "TEN": "zehn", + "TWELVE": "zwölf", + "FIFTEEN": "fünfzehn", + "TWENTY": "zwanzig", + "THIRTY": "dreißig" + }, + "ORDINALS": { + "FIRST": "erste", + "SECOND": "zweite", + "THIRD": "dritte", + "FOURTH": "vierte", + "FIFTH": "fünfte" + }, + "OF": "von", + "AFTER": "nach", + "WEEK": "tag", + "DAY": "Tag" + } +} diff --git a/app/javascript/dashboard/i18n/locale/de/teamsSettings.json b/app/javascript/dashboard/i18n/locale/de/teamsSettings.json index 0589c28b0..ced13b942 100644 --- a/app/javascript/dashboard/i18n/locale/de/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/de/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Teams werden abgerufen", "DESCRIPTION": "Teams ermöglichen es Ihnen, Agenten basierend auf ihren Aufgaben in Gruppen zu organisieren. Ein Agent kann mehreren Teams angehören. Bei der Zusammenarbeit können Sie Unterhaltungen bestimmten Teams zuweisen.", "LEARN_MORE": "Erfahren Sie mehr über Teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Teams suchen...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Es wurden noch keine Teams auf diesem Konto erstellt.", "EDIT_TEAM": "Team bearbeiten", diff --git a/app/javascript/dashboard/i18n/locale/el/agentBots.json b/app/javascript/dashboard/i18n/locale/el/agentBots.json index b2b475816..fcf146f3d 100644 --- a/app/javascript/dashboard/i18n/locale/el/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/el/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Σύνδεσμος Webhook" + "URL": "Σύνδεσμος Webhook", + "ACTIONS": "Ενέργειες" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/el/agentMgmt.json b/app/javascript/dashboard/i18n/locale/el/agentMgmt.json index fddb0d1f2..c3963ae5d 100644 --- a/app/javascript/dashboard/i18n/locale/el/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Διαχειριστής", "AGENT": "Πράκτορας" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Δεν υπάρχουν πράκτορες σε αυτόν τον λογαριασμό", "TITLE": "Διαχείριση πρακτόρων της ομάδας σας", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Αδυναμία σύνδεσης με τον Woot Server, Παρακαλώ προσπαθήστε αργότερα" } }, + "SEARCH_PLACEHOLDER": "Αναζήτηση πράκτορων...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Δεν βρέθηκαν αποτελέσματα." }, diff --git a/app/javascript/dashboard/i18n/locale/el/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/el/attributesMgmt.json index fe3744f31..7f8029977 100644 --- a/app/javascript/dashboard/i18n/locale/el/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Λήψη προσαρμοσμένων ιδιοτήτων", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Αναζήτηση ιδιοτήτων...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Συνομιλία", "CONTACT": "Επαφές" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/el/automation.json b/app/javascript/dashboard/i18n/locale/el/automation.json index 67ffae506..8a1ae42d5 100644 --- a/app/javascript/dashboard/i18n/locale/el/automation.json +++ b/app/javascript/dashboard/i18n/locale/el/automation.json @@ -3,8 +3,11 @@ "HEADER": "Αυτοματισμός", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Προσθήκη Κανόνα Αυτοματισμού", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Λήψη κανόνων αυτοματισμού", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Προσθήκη Κανόνα Αυτοματισμού", "SUBMIT": "Δημιουργία", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Όνομα", - "DESCRIPTION": "Περιγραφή", "ACTIVE": "Ενεργή", - "CREATED_ON": "Δημιουργήθηκε στις" + "CREATED_ON": "Δημιουργήθηκε στις", + "ACTIONS": "Ενέργειες" }, "404": "Δεν βρέθηκαν κανόνες αυτοματισμού" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Άνοιγμα συνομιλίας" + "OPEN_CONVERSATION": "Άνοιγμα συνομιλίας", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/el/bulkActions.json b/app/javascript/dashboard/i18n/locale/el/bulkActions.json index 0d908df18..3012f6582 100644 --- a/app/javascript/dashboard/i18n/locale/el/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/el/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Η κατάσταση συνομιλίας ενημερώθηκε με επιτυχία.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Δεν βρέθηκαν ετικέτες", diff --git a/app/javascript/dashboard/i18n/locale/el/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/el/cannedMgmt.json index b7826ccac..ecd7f893f 100644 --- a/app/javascript/dashboard/i18n/locale/el/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Έτοιμες Απαντήσεις", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Δεν υπάρχουν δεδομένα που να ταιριάζουν με αυτό το ερώτημα.", "LIST": { "404": "Δεν υπάρχουν τυποποιημένες απαντήσεις σε αυτόν τον λογαριασμό.", diff --git a/app/javascript/dashboard/i18n/locale/el/chatlist.json b/app/javascript/dashboard/i18n/locale/el/chatlist.json index 434da2f2e..a8da62090 100644 --- a/app/javascript/dashboard/i18n/locale/el/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/el/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/el/contact.json b/app/javascript/dashboard/i18n/locale/el/contact.json index cc4f70304..aaae1286c 100644 --- a/app/javascript/dashboard/i18n/locale/el/contact.json +++ b/app/javascript/dashboard/i18n/locale/el/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Δεν υπάρχουν επαφές που να αντιστοιχούν με την αναζήτησή σας 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Ανάθεση Ετικετών", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Προς:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Θέμα :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/el/conversation.json b/app/javascript/dashboard/i18n/locale/el/conversation.json index 6be18fc2f..42e633acf 100644 --- a/app/javascript/dashboard/i18n/locale/el/conversation.json +++ b/app/javascript/dashboard/i18n/locale/el/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Το μήνυμα διαγράφηκε επιτυχώς", "FAIL_DELETE_MESSSAGE": "Δεν ήταν δυνατή η διαγραφή μηνύματος! Προσπαθήστε ξανά", "NO_RESPONSE": "Καμία ανταπόκριση", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Αποτυχία στην εκχώρηση ετικέτας, παρακαλώ δοκιμάστε αργότερα." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Η συνομιλία με αριθμό {conversationId} ανατέθηκε στην ομάδα \"{team}\"", "FAILED": "Αδυναμία αντιστοίχισης ομάδας. Παρακαλώ δοκιμάστε ξανά." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Απενεργοποίηση υπογραφής", "MSG_INPUT": "Shift + enter για νέα γραμμή. Ξεκινήστε με '/' για να επιλέξτε Τυποποιημένη Απάντηση.", "PRIVATE_MSG_INPUT": "Shift + enter για νέα γραμμή. Το κείμενο θα μπορούν να το δουν μόνο οι υπόλοιποι πράκτορες.", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Δεν έχει ρυθμιστεί η υπογραφή μηνύματος, παρακαλώ ρυθμίστε την στις ρυθμίσεις προφίλ.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Πατήστε εδώ για ενημέρωση", "WHATSAPP_TEMPLATES": "Πρότυπα Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Σύρετε και αφήστε εδώ για επισύναψη", "START_AUDIO_RECORDING": "Έναρξη ηχογράφησης", "STOP_AUDIO_RECORDING": "Διακοπή ηχογράφησης", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Προσθήκη bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Το αρχείο υπερβαίνει το όριο συνημμένου {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Δεν είναι δυνατή η αποστολή του μηνύματος, παρακαλώ προσπαθήστε ξανά αργότερα", "SENT_BY": "Αποστολή από:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Δεν ήταν δυνατή η αποστολή μηνύματος! Προσπαθήστε ξανά", "TRY_AGAIN": "επανάληψη", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Άκυρο", "SEND_EMAIL_SUCCESS": "Η μεταγραφή της συνομιλίας έχει αποσταλεί επιτυχώς", "SEND_EMAIL_ERROR": "Υπήρξε ένα σφάλμα, παρακαλώ προσπαθήστε ξανά", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Στείλτε το αντίγραφο στον πελάτη", "SEND_TO_AGENT": "Στείλε το αντίγραφο στον αντιστοιχισμένο πράκτορα", diff --git a/app/javascript/dashboard/i18n/locale/el/customRole.json b/app/javascript/dashboard/i18n/locale/el/customRole.json index 564aef729..26e80edd3 100644 --- a/app/javascript/dashboard/i18n/locale/el/customRole.json +++ b/app/javascript/dashboard/i18n/locale/el/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Δεν υπάρχουν δεδομένα που να ταιριάζουν με αυτό το ερώτημα.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/el/datePicker.json b/app/javascript/dashboard/i18n/locale/el/datePicker.json index f07088e23..f5f3f7b78 100644 --- a/app/javascript/dashboard/i18n/locale/el/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/el/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Εφαρμογή", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Τελευταίοι 3 μήνες", "LAST_6_MONTHS": "Τελευταίοι 6 μήνες", "LAST_YEAR": "Τελευταίο έτος", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Προσαρμοσμένο εύρος ημερομηνιών" } } diff --git a/app/javascript/dashboard/i18n/locale/el/general.json b/app/javascript/dashboard/i18n/locale/el/general.json index 759bd7ea0..ee03858ee 100644 --- a/app/javascript/dashboard/i18n/locale/el/general.json +++ b/app/javascript/dashboard/i18n/locale/el/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Κλείσιμο", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ναι", + "NO": "Όχι" } } diff --git a/app/javascript/dashboard/i18n/locale/el/generalSettings.json b/app/javascript/dashboard/i18n/locale/el/generalSettings.json index 16145434d..d54572642 100644 --- a/app/javascript/dashboard/i18n/locale/el/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/el/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Αναζήτηση ή μετάβαση σε", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Γενικά", "REPORTS": "Αναφορές", diff --git a/app/javascript/dashboard/i18n/locale/el/helpCenter.json b/app/javascript/dashboard/i18n/locale/el/helpCenter.json index 40ecccb93..dce621f00 100644 --- a/app/javascript/dashboard/i18n/locale/el/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/el/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Σφάλμα κατά τη διαγραφή άρθρου" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Παρακαλώ προσθέστε την επικεφαλίδα και το περιεχόμενο του άρθρου για να μπορείτε να ενημερώσετε τις ρυθμίσεις" }, diff --git a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json index d635b83aa..e243660f5 100644 --- a/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Κιβώτια Εισερχομένων", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Ανενεργό" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Ενεργό", - "DISABLED": "Ανενεργό" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Ενεργοποίηση" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Ενεργοποίηση της συνέχειας συνομιλίας μέσω email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Οι συζητήσεις θα συνεχίσουν μέσω email αν η διεύθυνση ηλεκτρονικού ταχυδρομείου επαφής είναι διαθέσιμη.", - "LOCK_TO_SINGLE_CONVERSATION": "Κλείδωμα σε μία μόνο συζήτηση", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Ενεργοποίηση ή απενεργοποίηση πολλαπλών συνομιλιών για την ίδια επαφή σε αυτά τα εισερχόμενα", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Ρυθμίσεις Κιβωτίου", "INBOX_UPDATE_SUB_TEXT": "Ενημερώστε τις ρυθμίσεις του κιβωτίου σας", "AUTO_ASSIGNMENT_SUB_TEXT": "Ενεργοποιήστε ή απενεργοποιήστε την αυτόματη αντιστοίχιση των νέων συζητήσεων στους πράκτορες αυτού του κιβωτίου.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Κανένα", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Παρακαλώ εισάγετε μια τιμή μεγαλύτερη από 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Περιορισμός του μέγιστου αριθμού συνομιλιών από αυτά τα εισερχόμενα που μπορούν να εκχωρηθούν αυτόματα σε έναν πράκτορα" }, + "ASSIGNMENT": { + "TITLE": "Ανάθεση Συνομιλίας", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Ενεργή", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Άκυρο", + "CONFIRM_DELETE": "Διαγραφή", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Εκ νέου εξουσιοδότηση", "SUBTITLE": "Η σύνδεση Facebook έχει λήξει, παρακαλώ ξανασυνδεθείτε στο Facebook για να συνεχίσετε", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Πίσω" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Μήνυμα μη διαθεσιμότητας για τους επισκέπτες", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Ημέρα", + "AVAILABILITY": "Διαθεσιμότητα", + "HOURS": "Hours", "ENABLE": "Ενεργοποιήσετε τη διαθεσιμότητα για αυτήν την ημέρα", "UNAVAILABLE": "Μη διαθέσιμος", - "HOURS": "ώρες", "VALIDATION_ERROR": "Ο χρόνος έναρξης πρέπει να είναι πριν το χρόνο λήξης.", "CHOOSE": "Επιλέξτε" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Σε μία ημέρα" }, "WIDGET_COLOR_LABEL": "Χρώμα Widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Θέση Φυσαλίδας Widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Τύπος Φυσαλίδας Widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Τύπος:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Συνομιλήστε μαζί μας", - "LABEL": "Τίτλος Εκκίνησης Φυσαλίδας Widget", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Συνομιλήστε μαζί μας" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Προεπιλογή", - "CHAT": "Συνομιλία" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Τυπικά έχετε απάντηση σε μερικά λεπτά", diff --git a/app/javascript/dashboard/i18n/locale/el/integrationApps.json b/app/javascript/dashboard/i18n/locale/el/integrationApps.json index 4106adda7..d0b7e83db 100644 --- a/app/javascript/dashboard/i18n/locale/el/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/el/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Λήψη Indegrations", "NO_HOOK_CONFIGURED": "Δεν υπάρχουν {integrationId} integrations ρυθμισμένες σε αυτόν το λογαριασμό.", "HEADER": "Εφαρμογές", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Ενεργό", "DISABLED": "Ανενεργό" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Λήψη Integrations", "INBOX": "Εισερχόμενα", + "ACTIONS": "Ενέργειες", "DELETE": { "BUTTON_TEXT": "Διαγραφή" } diff --git a/app/javascript/dashboard/i18n/locale/el/integrations.json b/app/javascript/dashboard/i18n/locale/el/integrations.json index be530ce09..270212b28 100644 --- a/app/javascript/dashboard/i18n/locale/el/integrations.json +++ b/app/javascript/dashboard/i18n/locale/el/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Εγγεγραμμένα Συμβάντα", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Άκυρο", "DESC": "Τα συμβάντα Webhook μας εφοδιάζουν με πληροφορίες πραγματικού χρόνου σχετικά με το τι συμβαίνει στο λογαριασμό σας στο Chatwoot. Παρακαλώ εισάγετε ένα έγκυρο URL στην σχετική ρύθμιση.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Διαγραφή", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Εφαρμογές Dashboard

Οι εφαρμογές Dashboard επιτρέπουν σε οργανισμούς να ενσωματώσουν μια εφαρμογή μέσα στο ταμπλό Chatwoot για να παρέχουν το πλαίσιο για τους πράκτορες υποστήριξης πελατών. Αυτό το χαρακτηριστικό σας επιτρέπει να δημιουργήσετε μια εφαρμογή ανεξάρτητα και ενσωματωμένη που μέσα στον πίνακα ελέγχου για να παρέχει πληροφορίες χρήστη, τις παραγγελίες τους, ή το ιστορικό προηγούμενων πληρωμών τους.

Όταν ενσωματώσετε την εφαρμογή σας χρησιμοποιώντας το Dashboard στο Chatwoot, η εφαρμογή σας θα πάρει το πλαίσιο της συνομιλίας και θα επικοινωνήσει ως ένα παράθυρο εκδήλωσης. Εφαρμόστε έναν ακροατή για το γεγονός του μηνύματος στη σελίδα σας για να λάβετε το πλαίσιο.

Για να προσθέσετε μια νέα εφαρμογή ταμπλό, κάντε κλικ στο κουμπί 'Προσθήκη μιας νέας εφαρμογής Dashboard'.

", "DESCRIPTION": "Οι εφαρμογές Dashboard επιτρέπουν στους οργανισμούς να ενσωματώσουν μια εφαρμογή μέσα στον πίνακα ελέγχου για να παρέχουν το περιεχόμενο για τους πράκτορες υποστήριξης πελατών. Αυτή η λειτουργία σας επιτρέπει να δημιουργήσετε μια εφαρμογή ανεξάρτητα και ενσωματωμένη που θα παρέχει πληροφορίες χρήστη, τις παραγγελίες τους, ή το ιστορικό προηγούμενων πληρωμών τους.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Δεν έχουν δημιουργηθεί εφαρμογές Dashboard για αυτόν το λογαριασμό", "LOADING": "Λήψη εφαρμογών dashboard ...", "TABLE_HEADER": { "NAME": "Όνομα", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Ενέργειες" }, "EDIT_TOOLTIP": "Επεξεργασία εφαρμογής", "DELETE_TOOLTIP": "Διαγραφή εφαρμογής" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/el/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/el/labelsMgmt.json index 80243e6e4..3675781dc 100644 --- a/app/javascript/dashboard/i18n/locale/el/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/el/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Λήψη ετικετών", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Αναζήτηση ετικετών...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Δεν υπάρχουν αντικείμενα να ταιριάζουν με αυτό το ερώτημα", "LIST": { "404": "Δεν υπάρχουν ετικέτες διαθέσιμες σε αυτόν τον λογαριασμό.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Όνομα", "DESCRIPTION": "Περιγραφή", - "COLOR": "Χρώμα" + "COLOR": "Χρώμα", + "ACTION": "Ενέργειες" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/el/macros.json b/app/javascript/dashboard/i18n/locale/el/macros.json index 02ed92095..59b3124e6 100644 --- a/app/javascript/dashboard/i18n/locale/el/macros.json +++ b/app/javascript/dashboard/i18n/locale/el/macros.json @@ -3,9 +3,12 @@ "HEADER": "Μακροεντολές", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Προσθήκη νέας μακροεντολής", "HEADER_BTN_TXT_SAVE": "Αποθήκευση μακροεντολής", "LOADING": "Λήψη μακροεντολών", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Κάτι πήγε στραβά. Παρακαλώ προσπαθήστε ξανά", "ORDER_INFO": "Μακροεντολές θα εκτελεστούν με τη σειρά που θα προσθέσετε τις ενέργειές σας. Μπορείτε να τις αναδιατάξετε σύροντάς τις από τη λαβή δίπλα σε κάθε κόμβο.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Όνομα", "CREATED BY": "Δημιουργήθηκε από", "LAST_UPDATED_BY": "Τελευταία ενημέρωση από", - "VISIBILITY": "Ορατότητα" + "VISIBILITY": "Ορατότητα", + "ACTIONS": "Ενέργειες" }, "404": "Δεν βρέθηκαν μακροεντολές" }, diff --git a/app/javascript/dashboard/i18n/locale/el/mfa.json b/app/javascript/dashboard/i18n/locale/el/mfa.json index 856e9778f..bbe8a0302 100644 --- a/app/javascript/dashboard/i18n/locale/el/mfa.json +++ b/app/javascript/dashboard/i18n/locale/el/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/el/report.json b/app/javascript/dashboard/i18n/locale/el/report.json index aa2a68208..80f2c0aae 100644 --- a/app/javascript/dashboard/i18n/locale/el/report.json +++ b/app/javascript/dashboard/i18n/locale/el/report.json @@ -3,7 +3,7 @@ "HEADER": "Συζητήσεις", "LOADING_CHART": "Φόρτωση δεδομένων γραφήματος...", "NO_ENOUGH_DATA": "Δεν έχουν ληφθεί αρκετά σημεία δεδομένων για την δημιουργία της αναφοράς, Παρακαλώ προσπαθήστε αργότερα.", - "DOWNLOAD_AGENT_REPORTS": "Κατέβασμα αναφορών πράκτορα", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Επισκόπηση Πρακτόρων", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Φόρτωση δεδομένων γραφήματος...", "NO_ENOUGH_DATA": "Δεν έχουν ληφθεί αρκετά σημεία δεδομένων για την δημιουργία της αναφοράς, Παρακαλώ προσπαθήστε αργότερα.", "DOWNLOAD_AGENT_REPORTS": "Κατέβασμα αναφορών πράκτορα", "FILTER_DROPDOWN_LABEL": "Επιλογή πράκτορα", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Αναζήτηση πράκτορων" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Συζητήσεις", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Δεν έχουν ληφθεί αρκετά σημεία δεδομένων για την δημιουργία της αναφοράς, Παρακαλώ προσπαθήστε αργότερα.", "DOWNLOAD_LABEL_REPORTS": "Λήψη αναφορών ετικέτας", "FILTER_DROPDOWN_LABEL": "Επιλογή Ετικέτας", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Αναζήτηση ετικετών" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Συζητήσεις", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Επιλογή Εισερχομένων", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Συζητήσεις", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Επισκόπηση Ομάδας", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Φόρτωση δεδομένων γραφήματος...", "NO_ENOUGH_DATA": "Δεν έχουν ληφθεί αρκετά σημεία δεδομένων για την δημιουργία της αναφοράς, Παρακαλώ προσπαθήστε αργότερα.", "DOWNLOAD_TEAM_REPORTS": "Λήψη αναφορών ομάδας", "FILTER_DROPDOWN_LABEL": "Επιλογή Ομάδας", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Αναζήτηση ομάδων" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Συζητήσεις", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Αναφορές CSAT", - "NO_RECORDS": "Δεν υπάρχουν διαθέσιμες απαντήσεις ερευνών CSAT.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Λήψη αναφορών CSAT", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Αναζήτηση πράκτορων", + "INBOXES": "Search inboxes", + "TEAMS": "Αναζήτηση ομάδων", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Επιλέξτε Πράκτορες" + "LABEL": "Πράκτορας" + }, + "INBOXES": { + "LABEL": "Εισερχόμενα" + }, + "TEAMS": { + "LABEL": "Ομάδα" + }, + "RATINGS": { + "LABEL": "Αξιολόγηση" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Επαφές", - "AGENT_NAME": "Αντιστοιχισμένος πράκτορας", + "AGENT_NAME": "Πράκτορας", "RATING": "Αξιολόγηση", - "FEEDBACK_TEXT": "Σχόλιο ανατροφοδότησης" - } + "FEEDBACK_TEXT": "Σχόλιο ανατροφοδότησης", + "CONVERSATION": "Συνομιλία", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Συνολικές απαντήσεις", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Ποσοστό ανταπόκρισης", "TOOLTIP": "Συνολικός αριθμός απαντήσεων / Συνολικός αριθμός μηνυμάτων έρευνας CSAT * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Άκυρο", + "SAVING": "Αποθηκεύεται...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/el/settings.json b/app/javascript/dashboard/i18n/locale/el/settings.json index 1e6c0accb..6c15c9c32 100644 --- a/app/javascript/dashboard/i18n/locale/el/settings.json +++ b/app/javascript/dashboard/i18n/locale/el/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Κατέβασμα", "UPLOADING": "Ανέβασμα ...", - "INSTAGRAM_STORY_UNAVAILABLE": "Η ιστορία δεν είναι πλέον διαθέσιμη." + "INSTAGRAM_STORY_UNAVAILABLE": "Η ιστορία δεν είναι πλέον διαθέσιμη.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Δείτε στον χάρτη" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Ανάγνωση εγγράφων", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Χαρακτηριστικά", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Χρεώσεις", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Αναζήτηση ιδιοτήτων" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Επίλυση Συνομιλίας", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Επίλυση Συνομιλίας", + "CANCEL": "Άκυρο" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ναι", + "NO": "Όχι" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ωχ! Δεν μπορέσαμε να βρούμε κανένα λογαριασμό Chatwoot. Παρακαλούμε δημιουργήστε ένα νέο λογαριασμό για να συνεχίσετε.", "NEW_ACCOUNT": "Νέος Λογαριασμός", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Άκυρο" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/el/signup.json b/app/javascript/dashboard/i18n/locale/el/signup.json index 28d9d5ca8..1b8769d0c 100644 --- a/app/javascript/dashboard/i18n/locale/el/signup.json +++ b/app/javascript/dashboard/i18n/locale/el/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Καταχώρηση", "TESTIMONIAL_HEADER": "Το μόνο που χρειάζεται είναι ένα βήμα για να προχωρήσουμε", "TESTIMONIAL_CONTENT": "Είστε ένα βήμα μακριά από την εμπλοκή των πελατών σας, και την εύρεση νέων.", diff --git a/app/javascript/dashboard/i18n/locale/el/sla.json b/app/javascript/dashboard/i18n/locale/el/sla.json index 489ad40c1..fce2281c9 100644 --- a/app/javascript/dashboard/i18n/locale/el/sla.json +++ b/app/javascript/dashboard/i18n/locale/el/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/el/snooze.json b/app/javascript/dashboard/i18n/locale/el/snooze.json new file mode 100644 index 000000000..6f7d63b98 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/el/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "ώρες", + "DAY": "ημέρα", + "DAYS": "days", + "WEEK": "ημέρα", + "WEEKS": "weeks", + "MONTH": "εβδομάδα", + "MONTHS": "months", + "YEAR": "μήνα", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "αύριο", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "επόμενη εβδομάδα", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "ημέρα", + "DAY": "ημέρα" + } +} diff --git a/app/javascript/dashboard/i18n/locale/el/teamsSettings.json b/app/javascript/dashboard/i18n/locale/el/teamsSettings.json index 351c01503..d6bc0da1a 100644 --- a/app/javascript/dashboard/i18n/locale/el/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/el/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Αναζήτηση ομάδων...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Δεν έχουν δημιουργηθεί ομάδες σε αυτόν τον λογαριασμό.", "EDIT_TEAM": "Επεξεργασία ομάδας", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Δεν ήταν δυνατή η αποθήκευση των λεπτομερειών της ομάδας. Δοκιμάστε ξανά." }, "AGENTS": { - "AGENT": "ΠΡΑΚΤΟΡΑΣ", - "EMAIL": "EMAIL", + "AGENT": "Πράκτορας", + "EMAIL": "Email", "BUTTON_TEXT": "Προσθήκη πρακτόρων", "ADD_AGENTS": "Προσθήκη πρακτόρων στην ομάδα σας...", "SELECT": "επιλέξτε", diff --git a/app/javascript/dashboard/i18n/locale/es/agentBots.json b/app/javascript/dashboard/i18n/locale/es/agentBots.json index 747570e05..587fbb821 100644 --- a/app/javascript/dashboard/i18n/locale/es/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/es/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Cargando el editor...", "DESCRIPTION": "Los bots de agentes son como los miembros más fabulosos de tu equipo. Ellos pueden manejar las cosas pequeñas, así que usted puede centrarse en las cosas que importan. Inténtalos. Puedes administrar tus bots desde esta página o crear nuevos usando el botón 'Configurar un nuevo bot'.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "Bot del sistema", "GLOBAL_BOT_BADGE": "Sistema", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Obteniendo bots...", "TABLE_HEADER": { "DETAILS": "Detalles del Bot", - "URL": "URL de Webhook" + "URL": "URL de Webhook", + "ACTIONS": "Acciones" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/es/agentMgmt.json b/app/javascript/dashboard/i18n/locale/es/agentMgmt.json index 9d92bbdc1..407dd712b 100644 --- a/app/javascript/dashboard/i18n/locale/es/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrador", "AGENT": "Agente" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "No hay agentes asociados a esta cuenta", "TITLE": "Administrar agentes en tu equipo", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "No se pudo conectar al servidor Woot, por favor inténtalo de nuevo más tarde" } }, + "SEARCH_PLACEHOLDER": "Buscar agentes...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No se encontraron resultados." }, diff --git a/app/javascript/dashboard/i18n/locale/es/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/es/attributesMgmt.json index 50fd988c9..afa710c58 100644 --- a/app/javascript/dashboard/i18n/locale/es/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Obtener atributos personalizados", "DESCRIPTION": "Un atributo personalizado rastrea detalles adicionales sobre tus contactos o conversaciones, como el plan de suscripción o la fecha de su primera compra. Puede agregar diferentes tipos de atributos personalizados, como textos, listas o números, para capturar la información específica que necesita.", "LEARN_MORE": "Aprende más sobre los atributos personalizados", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Buscar atributos...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversación", "CONTACT": "Contacto" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Habilitar validación regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolución" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/es/automation.json b/app/javascript/dashboard/i18n/locale/es/automation.json index 18fcb3652..5d159186d 100644 --- a/app/javascript/dashboard/i18n/locale/es/automation.json +++ b/app/javascript/dashboard/i18n/locale/es/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatización", "DESCRIPTION": "La automatización puede reemplazar y agilizar los procesos existentes que requieren esfuerzo manual, como añadir etiquetas y asignar conversaciones al agente más adecuado. Esto permite al equipo concentrarse en sus fortalezas, mientras que reduce el tiempo dedicado a las tareas de rutina.", "LEARN_MORE": "Aprende más sobre automatización", - "HEADER_BTN_TXT": "Añadir regla de automatización", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Obteniendo reglas de automatización", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Añadir regla de automatización", "SUBMIT": "Crear", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nombre", - "DESCRIPTION": "Descripción", "ACTIVE": "Activo", - "CREATED_ON": "Creado el" + "CREATED_ON": "Creado el", + "ACTIONS": "Acciones" }, "404": "No se encontraron reglas de automatización" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Añadir una nota privada", "CHANGE_PRIORITY": "Cambiar prioridad", "ADD_SLA": "Añadir SLA", - "OPEN_CONVERSATION": "Abrir conversación" + "OPEN_CONVERSATION": "Abrir conversación", + "PENDING_CONVERSATION": "Marca la conversación como pendiente" }, "MESSAGE_TYPES": { "INCOMING": "Mensaje entrante", diff --git a/app/javascript/dashboard/i18n/locale/es/bulkActions.json b/app/javascript/dashboard/i18n/locale/es/bulkActions.json index d17d304f5..3c8913800 100644 --- a/app/javascript/dashboard/i18n/locale/es/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/es/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "El estado de la conversación se actualizó con éxito.", "UPDATE_FAILED": "No se han podido actualizar las conversaciones. Inténtalo de nuevo." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "No se pueden resolver las conversaciones debido a la falta de atributos requeridos", + "PARTIAL_SUCCESS": "Algunas conversaciones requieren atributos obligatorios antes de resolverse y se omitieron" + }, "LABELS": { "ASSIGN_LABELS": "Asignar etiqueta", "NO_LABELS_FOUND": "No se encontraron etiquetas", diff --git a/app/javascript/dashboard/i18n/locale/es/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/es/cannedMgmt.json index 6fc563f6e..abc23a7b9 100644 --- a/app/javascript/dashboard/i18n/locale/es/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Respuestas predefinidas", "LEARN_MORE": "Más información sobre respuestas predefinidas", "DESCRIPTION": "Las respuestas predefinidas son plantillas preconfiguradas que le ayudan a responder rápidamente a una conversación. Los agentes pueden escribir el carácter '/' seguido por el código corto para insertar una respuesta predefinida durante una conversación. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Añadir respuesta predefinida", "LOADING": "Obteniendo respuestas predefinidas...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "No hay elementos que coincidan con esta consulta.", "LIST": { "404": "No hay respuestas enlatadas disponibles en esta cuenta.", diff --git a/app/javascript/dashboard/i18n/locale/es/chatlist.json b/app/javascript/dashboard/i18n/locale/es/chatlist.json index 2aab0bb43..1a5569fac 100644 --- a/app/javascript/dashboard/i18n/locale/es/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/es/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Respuesta pendiente: la más corta primero" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/es/companies.json b/app/javascript/dashboard/i18n/locale/es/companies.json index 432db2643..a77cf2eac 100644 --- a/app/javascript/dashboard/i18n/locale/es/companies.json +++ b/app/javascript/dashboard/i18n/locale/es/companies.json @@ -7,7 +7,7 @@ "NAME": "Nombre", "DOMAIN": "Dominio", "CREATED_AT": "Creado el", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Número de contactos" } }, "ORDER": { diff --git a/app/javascript/dashboard/i18n/locale/es/contact.json b/app/javascript/dashboard/i18n/locale/es/contact.json index fe62c481d..839f9d057 100644 --- a/app/javascript/dashboard/i18n/locale/es/contact.json +++ b/app/javascript/dashboard/i18n/locale/es/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Agregar Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Añadir TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No hay contactos que coincidan con tu búsqueda 🔍", "LIST_EMPTY_STATE_TITLE": "No hay contactos disponibles en esta vista 📋", "ACTIVE_EMPTY_STATE_TITLE": "No hay contactos activos por el momento 🌙" - } + }, + "LOAD_MORE": "Cargar más" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Asignar etiquetas", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "No hay bandejas de entrada disponibles para iniciar una conversación con este contacto.", "CONTACT_SELECTOR": { "LABEL": "Para:", - "TAG_INPUT_PLACEHOLDER": "Buscar un contacto con nombre, correo electrónico o número de teléfono", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creando contacto..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Asunto :", "SUBJECT_PLACEHOLDER": "Introduzca el asunto de correo electrónico aquí", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Buscar un contacto con su dirección de correo electrónico", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Buscar un contacto con su dirección de correo electrónico", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/es/conversation.json b/app/javascript/dashboard/i18n/locale/es/conversation.json index b279cee14..d15ee29bc 100644 --- a/app/javascript/dashboard/i18n/locale/es/conversation.json +++ b/app/javascript/dashboard/i18n/locale/es/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "Este mensaje no es compatible. Puedes ver este mensaje en la aplicación de Facebook/Instagram.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Este mensaje no es compatible. Puedes ver este mensaje en la aplicación de Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Este mensaje no es compatible. Puedes ver este mensaje en la aplicación de Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Mensaje eliminado correctamente", "FAIL_DELETE_MESSSAGE": "¡No se pudo eliminar el mensaje! Inténtalo de nuevo", "NO_RESPONSE": "No hay respuesta", @@ -173,6 +174,10 @@ "SUCCESFUL": "Etiqueta #{labelName} asignada a la conversación con id {conversationId}", "FAILED": "No se pudo asignar el agente. Por favor, inténtelo de nuevo." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Equipo asignado \"{team}\" al ID de conversación {conversationId}", "FAILED": "No se pudo asignar el equipo. Por favor, inténtelo de nuevo." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Desactivar firma", "MSG_INPUT": "Shift + enter for new line. Comience con '/' para seleccionar una respuesta predefinida.", "PRIVATE_MSG_INPUT": "Mayús + entrar para una nueva línea. Esto será visible sólo para los agentes", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "La firma del mensaje no está configurada, por favor configúrela en la configuración del perfil.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Haga clic aquí para actualizar", "WHATSAPP_TEMPLATES": "Plantillas de Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Arrastra y suelta aquí para adjuntar", "START_AUDIO_RECORDING": "Iniciar grabación de audio", "STOP_AUDIO_RECORDING": "Detener grabación de audio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "A", "ADD_BCC": "Añadir bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversación eliminada con éxito", "FAIL_DELETE_CONVERSATION": "¡No se pudo eliminar la conversación! Inténtalo de nuevo", "FILE_SIZE_LIMIT": "El archivo supera el límite de archivos adjuntos de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "No se puede enviar este mensaje, por favor inténtalo de nuevo más tarde", "SENT_BY": "Enviado por:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "¡No se pudo enviar el mensaje! Inténtalo de nuevo", "TRY_AGAIN": "reintentar", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancelar", "SEND_EMAIL_SUCCESS": "La transcripción ha sido enviada", "SEND_EMAIL_ERROR": "Hubo un error, por favor inténtelo de nuevo", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Enviar la transcripción al cliente", "SEND_TO_AGENT": "Enviar la transcripción al agente asignado", diff --git a/app/javascript/dashboard/i18n/locale/es/customRole.json b/app/javascript/dashboard/i18n/locale/es/customRole.json index 1dd9ca291..bfcc698f4 100644 --- a/app/javascript/dashboard/i18n/locale/es/customRole.json +++ b/app/javascript/dashboard/i18n/locale/es/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Roles personalizados", "LEARN_MORE": "Obtenga más información sobre los roles personalizados", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "No hay elementos que coincidan con esta consulta.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/es/datePicker.json b/app/javascript/dashboard/i18n/locale/es/datePicker.json index c3c779746..21e923cc4 100644 --- a/app/javascript/dashboard/i18n/locale/es/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/es/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Aplicar", "CLEAR_BUTTON": "Limpiar", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Últimos 3 meses", "LAST_6_MONTHS": "Últimos 6 meses", "LAST_YEAR": "Último año", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Rango de fechas personalizado" } } diff --git a/app/javascript/dashboard/i18n/locale/es/general.json b/app/javascript/dashboard/i18n/locale/es/general.json index dae7ff299..6aac72603 100644 --- a/app/javascript/dashboard/i18n/locale/es/general.json +++ b/app/javascript/dashboard/i18n/locale/es/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Cerrar", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Descartar", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Si", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/es/generalSettings.json b/app/javascript/dashboard/i18n/locale/es/generalSettings.json index 36a71c6be..f53bced78 100644 --- a/app/javascript/dashboard/i18n/locale/es/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/es/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Buscar o saltar a", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Informes", diff --git a/app/javascript/dashboard/i18n/locale/es/helpCenter.json b/app/javascript/dashboard/i18n/locale/es/helpCenter.json index bff0af50c..aa141ca5c 100644 --- a/app/javascript/dashboard/i18n/locale/es/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/es/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error al eliminar el artículo" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Por favor, añade el encabezado y el contenido del artículo y despues puedes actualizar la configuración" }, diff --git a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json index 9e0fe210c..ee75303df 100644 --- a/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Entradas", "DESCRIPTION": "Un canal es el modo de comunicación que tu cliente elige para interactuar contigo. Una bandeja de entrada es donde administras interacciones para un canal específico. Puede incluir comunicaciones de diversas fuentes como correo electrónico, chat en vivo y redes sociales.", "LEARN_MORE": "Aprende más sobre las entradas", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Tu bandeja de entrada está desconectada. No recibirás mensajes nuevos hasta que lo vuelvas a autorizar.", "CLICK_TO_RECONNECT": "Haga clic aquí para volver a conectar.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Utilice sólo el nombre del negocio configurado como nombre del remitente en el encabezado del correo electrónico." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configura el nombre de tu negocio", + "BUTTON_TEXT": "Configura el nombre de tu negocio", "PLACEHOLDER": "Introduce el nombre de tu negocio", "SAVE_BUTTON_TEXT": "Guardar" } @@ -589,8 +592,10 @@ "DISABLED": "Deshabilitado" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Activado", - "DISABLED": "Deshabilitado" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Habilitar" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "Encuestas de Satisfacción" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Habilitar/Deshabilitar mostrando el nombre del agente en el correo electrónico, si está deshabilitado, mostrará el nombre del negocio", "ENABLE_CONTINUITY_VIA_EMAIL": "Habilitar continuidad de conversación por correo electrónico", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Las conversaciones continuarán por correo electrónico si la dirección de correo electrónico de contacto está disponible.", - "LOCK_TO_SINGLE_CONVERSATION": "Bloquear a una sola conversación", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Activar o desactivar múltiples conversaciones para el mismo contacto en esta bandeja de entrada", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Ajustes de la Bandeja de Entrada", "INBOX_UPDATE_SUB_TEXT": "Actualizar la configuración de tu bandeja de entrada", "AUTO_ASSIGNMENT_SUB_TEXT": "Activar o desactivar la asignación automática de nuevas conversaciones a los agentes añadidos a esta bandeja de entrada.", @@ -758,6 +765,7 @@ "LABEL": "Centro de ayuda", "PLACEHOLDER": "Seleccione Centro de Ayuda", "SELECT_PLACEHOLDER": "Seleccione Centro de Ayuda", + "NONE": "Ninguna", "REMOVE": "Eliminar Centro de Ayuda", "SUB_TEXT": "Adjuntar un Centro de Ayuda con la bandeja de entrada" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Por favor ingrese un valor mayor a 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limite la cantidad máxima de conversaciones de esta bandeja de entrada que se pueden asignar automáticamente a un agente" }, + "ASSIGNMENT": { + "TITLE": "Asignación de conversación", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Activo", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancelar", + "CONFIRM_DELETE": "Eliminar", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautorizar", "SUBTITLE": "Su conexión de Facebook expiró, por favor reconecte si página de Facebook para continuar con el servicio", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Volver" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Mensaje no disponible para visitantes", "TOGGLE_HELP": "Al habilitar el horario de atención se mostraran las horas disponibles en el \"widget\" del chat en vivo si todos los agentes están fuera de línea. Fuera de las horas disponibles los visitantes pueden ser notificado con un mensaje y una forma PreChat.", "DAY": { + "DAY": "Día", + "AVAILABILITY": "Disponibilidad", + "HOURS": "Horas", "ENABLE": "Activar la disponibilidad para este día", "UNAVAILABLE": "No disponible", - "HOURS": "horas", "VALIDATION_ERROR": "La hora de inicio debe ser antes de la hora de cierre.", "CHOOSE": "Elegir" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "En un día" }, "WIDGET_COLOR_LABEL": "Color del widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posición de Bubble del Widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Tipo de Burbuja de Widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipo:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chatea con nosotros", - "LABEL": "Título del lanzador Bubble de Widget", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chatea con nosotros" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Predeterminado", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Normalmente responde en unos minutos", diff --git a/app/javascript/dashboard/i18n/locale/es/integrationApps.json b/app/javascript/dashboard/i18n/locale/es/integrationApps.json index 03b8cddca..631a356b1 100644 --- a/app/javascript/dashboard/i18n/locale/es/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/es/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Obteniendo integraciones", "NO_HOOK_CONFIGURED": "No hay integraciones de {integrationId} configuradas en ésta cuenta.", "HEADER": "Aplicaciones", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Buscar...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Activado", "DISABLED": "Deshabilitado" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Obteniendo hooks de integración", "INBOX": "Bandeja de entrada", + "ACTIONS": "Acciones", "DELETE": { "BUTTON_TEXT": "Eliminar" } diff --git a/app/javascript/dashboard/i18n/locale/es/integrations.json b/app/javascript/dashboard/i18n/locale/es/integrations.json index 342cab2be..8457a0f62 100644 --- a/app/javascript/dashboard/i18n/locale/es/integrations.json +++ b/app/javascript/dashboard/i18n/locale/es/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot se integra con múltiples herramientas y servicios para mejorar la eficiencia de tu equipo. Explora la lista de abajo para configurar tus aplicaciones favoritas.", "LEARN_MORE": "Más información acerca de integraciones", "LOADING": "Obteniendo integraciones", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "El capitán no está habilitado en tu cuenta.", "CLICK_HERE_TO_CONFIGURE": "Haz clic aquí para configurar", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Eventos suscritos", "LEARN_MORE": "Aprenda más sobre webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancelar", "DESC": "Los eventos Webhook te proporcionan la información en tiempo real sobre lo que está sucediendo en tu cuenta de Chatwoot. Por favor, introduce una URL válida para configurar un callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Eliminar", "DELETE_CONFIRMATION": { "TITLE": "Eliminar la integración", @@ -145,7 +160,29 @@ "EXPAND": "Expandir", "MAKE_FRIENDLY": "Cambiar tono de mensaje a amigable", "MAKE_FORMAL": "Usar tono formal", - "SIMPLIFY": "Simplificar" + "SIMPLIFY": "Simplificar", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Amigable" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Contenido de borrador", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplicaciones de panel

Aplicaciones de panel de control permiten a las organizaciones incrustar una aplicación dentro del panel de control de Chatwoot para proporcionar el contexto para los agentes de atención al cliente. Esta característica le permite crear una aplicación de forma independiente e incrustarla dentro del panel de control para proporcionar información de usuario, sus pedidos, o su historial de pagos anterior.

Cuando incrustas tu aplicación usando el panel de control en Chatwoot, tu aplicación obtendrá el contexto de la conversación y el contacto como un evento de ventana. Implementa un oyente para el evento del mensaje en tu página para recibir el contexto.

Para añadir una nueva aplicación de panel, haga clic en el botón 'Añadir una nueva aplicación de panel'.

", "DESCRIPTION": "Las aplicaciones de panel permiten a las organizaciones incrustar una aplicación dentro del panel de control para proporcionar el contexto para los agentes de soporte al cliente. Esta función le permite crear una aplicación de forma independiente e incrustada para proporcionar información de usuario, sus pedidos o su historial de pagos anterior.", "LEARN_MORE": "Aprende más sobre el panel de aplicaciones", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Todavía no hay aplicaciones configuradas en esta cuenta", "LOADING": "Obteniendo aplicaciones del tablero...", "TABLE_HEADER": { "NAME": "Nombre", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Acciones" }, "EDIT_TOOLTIP": "Editar aplicación", "DELETE_TOOLTIP": "Eliminar aplicación" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Lineal", "ADD_OR_LINK_BUTTON": "Crear/Enlazar Problema Linear", "LOADING": "Cargando problemas lineales...", "LOADING_ERROR": "Hubo un error al recuperar los problemas lineales, por favor inténtalo de nuevo", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Puede cambiar o cancelar su plan en cualquier momento" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Por favor, comuníquese con su administrador para la actualización." }, diff --git a/app/javascript/dashboard/i18n/locale/es/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/es/labelsMgmt.json index c94bbac1a..bcb172cb0 100644 --- a/app/javascript/dashboard/i18n/locale/es/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/es/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Obteniendo etiquetas", "DESCRIPTION": "Las etiquetas le ayudan a clasificar y priorizar conversaciones y clientes potenciales. Puede asignar una etiqueta a una conversación o contacto usando el panel lateral.", "LEARN_MORE": "Aprende más sobre etiquetas", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Buscar etiquetas...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "No hay elementos que coincidan con esta consulta", "LIST": { "404": "No hay etiquetas disponibles en esta cuenta.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nombre", "DESCRIPTION": "Descripción", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Acciones" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/es/macros.json b/app/javascript/dashboard/i18n/locale/es/macros.json index 703796baa..3d59c9c88 100644 --- a/app/javascript/dashboard/i18n/locale/es/macros.json +++ b/app/javascript/dashboard/i18n/locale/es/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "Una macro es un conjunto de acciones guardadas que ayudan a los agentes de servicio al cliente a completar fácilmente las tareas. Los agentes pueden definir un conjunto de acciones como etiquetar una conversación con una etiqueta, enviar una transcripción de correo electrónico, actualizar un atributo personalizado, etc. y pueden ejecutar estas acciones en un solo clic.", "LEARN_MORE": "Más información sobre macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Añadir una nueva macro", "HEADER_BTN_TXT_SAVE": "Guardar macro", "LOADING": "Obteniendo macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Algo salió mal. Por favor, inténtalo de nuevo", "ORDER_INFO": "Las macros se ejecutarán en el orden en que añadas sus acciones. Puede reorganizarlas arrastrándolas por el manejador al lado de cada nodo.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nombre", "CREATED BY": "Creado por", "LAST_UPDATED_BY": "Última actualización por", - "VISIBILITY": "Visibilidad" + "VISIBILITY": "Visibilidad", + "ACTIONS": "Acciones" }, "404": "No se encontraron macros" }, diff --git a/app/javascript/dashboard/i18n/locale/es/mfa.json b/app/javascript/dashboard/i18n/locale/es/mfa.json index 04897bde6..3f18d0413 100644 --- a/app/javascript/dashboard/i18n/locale/es/mfa.json +++ b/app/javascript/dashboard/i18n/locale/es/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/es/report.json b/app/javascript/dashboard/i18n/locale/es/report.json index 9302dd634..9d04c80c6 100644 --- a/app/javascript/dashboard/i18n/locale/es/report.json +++ b/app/javascript/dashboard/i18n/locale/es/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversaciones", "LOADING_CHART": "Cargando datos del gráfico...", "NO_ENOUGH_DATA": "No hemos recibido suficientes puntos de datos para generar el informe. Inténtalo de nuevo más tarde.", - "DOWNLOAD_AGENT_REPORTS": "Descargar reportes de agente", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Error al obtener datos, por favor intente nuevamente.", "SUMMARY_FETCHING_FAILED": "No se pudo obtener el resumen, por favor inténtalo de nuevo más tarde.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Resumen de agentes", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Cargando datos del gráfico...", "NO_ENOUGH_DATA": "No hemos recibido suficientes puntos de datos para generar el informe. Inténtalo de nuevo más tarde.", "DOWNLOAD_AGENT_REPORTS": "Descargar reportes de agente", "FILTER_DROPDOWN_LABEL": "Seleccionar agente", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Buscar agentes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversaciones", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "No hemos recibido suficientes puntos de datos para generar el informe. Inténtalo de nuevo más tarde.", "DOWNLOAD_LABEL_REPORTS": "Descargar reportes de etiquetas", "FILTER_DROPDOWN_LABEL": "Seleecionar etiqueta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Buscar etiquetas" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversaciones", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Seleccione una bandeja de entrada", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversaciones", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Vista general del equipo", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Cargando datos del gráfico...", "NO_ENOUGH_DATA": "No hemos recibido suficientes puntos de datos para generar el informe. Inténtalo de nuevo más tarde.", "DOWNLOAD_TEAM_REPORTS": "Descargar informes del equipo", "FILTER_DROPDOWN_LABEL": "Seleccionar equipo", + "FILTERS": { + "ADD_FILTER": "Añadir Filtro", + "CLEAR_ALL": "Limpiar todo", + "NO_FILTER": "No hay filtros disponibles", + "INPUT_PLACEHOLDER": { + "TEAMS": "Buscar equipos" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversaciones", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Reporte de encuestas de satisfacción", - "NO_RECORDS": "No hay respuestas de encuestas de satisfacción disponibles.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Descargar reportes CSAT", "DOWNLOAD_FAILED": "Error al descargar los informes CSAT", "FILTERS": { + "ADD_FILTER": "Añadir Filtro", + "CLEAR_ALL": "Limpiar todo", + "NO_FILTER": "No hay filtros disponibles", + "INPUT_PLACEHOLDER": { + "AGENTS": "Buscar agentes", + "INBOXES": "Search inboxes", + "TEAMS": "Buscar equipos", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Elegir agentes" + "LABEL": "Agente" + }, + "INBOXES": { + "LABEL": "Bandeja de entrada" + }, + "TEAMS": { + "LABEL": "Equipo" + }, + "RATINGS": { + "LABEL": "Calificación" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contacto", - "AGENT_NAME": "Agente asignado", + "AGENT_NAME": "Agente", "RATING": "Calificación", - "FEEDBACK_TEXT": "Realimentacion de Comentario" - } + "FEEDBACK_TEXT": "Realimentacion de Comentario", + "CONVERSATION": "Conversación", + "CUSTOMER": "Customer", + "RESPONSE": "Respuesta", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total de respuestas", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Tasa de respuesta", "TOOLTIP": "Número total de respuestas / Número total de mensajes de la encuesta de satisfacción enviados * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Guardar", + "CANCEL": "Cancelar", + "SAVING": "Guardando...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Actualizar ahora", + "CANCEL_ANYTIME": "Puede cambiar o cancelar su plan en cualquier momento" } } }, diff --git a/app/javascript/dashboard/i18n/locale/es/settings.json b/app/javascript/dashboard/i18n/locale/es/settings.json index f29a7fb2b..14076393e 100644 --- a/app/javascript/dashboard/i18n/locale/es/settings.json +++ b/app/javascript/dashboard/i18n/locale/es/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Descargar", "UPLOADING": "Subiendo...", - "INSTAGRAM_STORY_UNAVAILABLE": "Esta historia ya no está disponible." + "INSTAGRAM_STORY_UNAVAILABLE": "Esta historia ya no está disponible.", + "INSTAGRAM_STORY_REPLY": "Respondió a su historia:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Ver en el mapa" @@ -378,7 +379,57 @@ "INFO_SHORT": "Marcar automáticamente sin conexión cuando no está usando la aplicación." }, "DOCS": "Leer documentos", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Capitán", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Características", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Facturación", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Buscar atributos" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolver conversación", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolver conversación", + "CANCEL": "Cancelar" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Selecciona una opción" + }, + "CHECKBOX": { + "YES": "Si", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Actualizar ahora", + "CANCEL_ANYTIME": "Puede cambiar o cancelar su plan en cualquier momento" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Por favor, comuníquese con su administrador para la actualización." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "¡Oh oh! No hemos podido encontrar ninguna cuenta de \"Chatwoot\". Por favor, crea una nueva cuenta para continuar.", "NEW_ACCOUNT": "Nueva cuenta", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancelar" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/es/signup.json b/app/javascript/dashboard/i18n/locale/es/signup.json index fe5e712ef..02bb594e3 100644 --- a/app/javascript/dashboard/i18n/locale/es/signup.json +++ b/app/javascript/dashboard/i18n/locale/es/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Crear una cuenta", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrarse", "TESTIMONIAL_HEADER": "Todo lo que se necesita es un paso adelante", "TESTIMONIAL_CONTENT": "Usted está a un paso de involucrar a sus clientes, conservarlos y encontrar nuevos.", diff --git a/app/javascript/dashboard/i18n/locale/es/sla.json b/app/javascript/dashboard/i18n/locale/es/sla.json index 3dee7d753..8321d7838 100644 --- a/app/javascript/dashboard/i18n/locale/es/sla.json +++ b/app/javascript/dashboard/i18n/locale/es/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Crear una nueva política de SLA", "DESCRIPTION": "Los Acuerdos de Nivel de Servicio (SLA) son contratos que definen expectativas claras entre su equipo y sus clientes. Establecen normas para los tiempos de respuesta y resolución, creando un marco para la responsabilidad y garantiza una experiencia coherente y de alta calidad.", "LEARN_MORE": "Más información sobre SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Obteniendo SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Actualiza para crear SLAs", "AVAILABLE_ON": "La función SLA sólo está disponible en los planes Empresariales (Business) y Corporativos (Enterprise).", @@ -20,14 +25,18 @@ }, "LIST": { "404": "No hay SLAs disponibles en esta cuenta.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Empresa P0", "DESC_1": "Problemas planteados por los clientes empresariales, que requieren una atención inmediata.", "TITLE_2": "Empresa P1", "DESC_2": "Problemas planteados por los clientes empresariales, deben reconocerse con rapidez." }, - "BUSINESS_HOURS_ON": "Horas laborables", - "BUSINESS_HOURS_OFF": "Horas de descanso", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Umbral de tiempo de primera respuesta", "NRT": "Umbral de tiempo de siguiente respuesta", diff --git a/app/javascript/dashboard/i18n/locale/es/snooze.json b/app/javascript/dashboard/i18n/locale/es/snooze.json new file mode 100644 index 000000000..7c78087d0 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/es/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutos", + "HOUR": "hour", + "HOURS": "horas", + "DAY": "día", + "DAYS": "días", + "WEEK": "semana", + "WEEKS": "weeks", + "MONTH": "mes", + "MONTHS": "months", + "YEAR": "mes", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "siguiente", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "mañana", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "próxima semana", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "de", + "AFTER": "after", + "WEEK": "semana", + "DAY": "día" + } +} diff --git a/app/javascript/dashboard/i18n/locale/es/teamsSettings.json b/app/javascript/dashboard/i18n/locale/es/teamsSettings.json index 0482685e9..1bb17b7ea 100644 --- a/app/javascript/dashboard/i18n/locale/es/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/es/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Obteniendo equipos", "DESCRIPTION": "Los equipos te permiten organizar a los agentes en grupos basados en sus responsabilidades. Un agente puede pertenecer a varios equipos. Cuando trabajas en colaboración, puedes asignar conversaciones a equipos específicos.", "LEARN_MORE": "Aprende más sobre los equipos", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Buscar equipos...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "No hay equipos creados en ésta cuenta.", "EDIT_TEAM": "Editar equipo", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "No se han podido guardar los detalles del equipo. Intente nuevamente." }, "AGENTS": { - "AGENT": "AGENTE", - "EMAIL": "Correo electrónico", + "AGENT": "Agente", + "EMAIL": "E-mail", "BUTTON_TEXT": "Añadir agentes", "ADD_AGENTS": "Añadiendo agentes a su equipo...", "SELECT": "seleccionar", diff --git a/app/javascript/dashboard/i18n/locale/es/yearInReview.json b/app/javascript/dashboard/i18n/locale/es/yearInReview.json index 742644506..2a60b25e1 100644 --- a/app/javascript/dashboard/i18n/locale/es/yearInReview.json +++ b/app/javascript/dashboard/i18n/locale/es/yearInReview.json @@ -19,7 +19,7 @@ }, "BUSIEST_DAY": { "TITLE": "Tu día más ocupado fue", - "MESSAGE": "{count} conversaciones ese día.", + "MESSAGE": "{count} conversaciones aquel día.", "COMPARISON": { "0_5": "Un calentamiento que apenas despertó la bandeja de entrada.", "5_10": "Suficiente movimiento como para justificar una segunda taza de café.", diff --git a/app/javascript/dashboard/i18n/locale/et/agentBots.json b/app/javascript/dashboard/i18n/locale/et/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/et/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/et/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/et/agentMgmt.json b/app/javascript/dashboard/i18n/locale/et/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/et/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/et/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/et/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/et/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/et/automation.json b/app/javascript/dashboard/i18n/locale/et/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/et/automation.json +++ b/app/javascript/dashboard/i18n/locale/et/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/et/bulkActions.json b/app/javascript/dashboard/i18n/locale/et/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/et/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/et/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/et/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/et/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/et/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/et/chatlist.json b/app/javascript/dashboard/i18n/locale/et/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/et/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/et/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/et/contact.json b/app/javascript/dashboard/i18n/locale/et/contact.json index 7cad3b433..10841bbbf 100644 --- a/app/javascript/dashboard/i18n/locale/et/contact.json +++ b/app/javascript/dashboard/i18n/locale/et/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/et/conversation.json b/app/javascript/dashboard/i18n/locale/et/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/et/conversation.json +++ b/app/javascript/dashboard/i18n/locale/et/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/et/customRole.json b/app/javascript/dashboard/i18n/locale/et/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/et/customRole.json +++ b/app/javascript/dashboard/i18n/locale/et/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/et/datePicker.json b/app/javascript/dashboard/i18n/locale/et/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/et/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/et/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/et/general.json b/app/javascript/dashboard/i18n/locale/et/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/et/general.json +++ b/app/javascript/dashboard/i18n/locale/et/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/et/generalSettings.json b/app/javascript/dashboard/i18n/locale/et/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/et/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/et/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/et/helpCenter.json b/app/javascript/dashboard/i18n/locale/et/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/et/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/et/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json index 2efba4716..1cfc95ef0 100644 --- a/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/et/integrationApps.json b/app/javascript/dashboard/i18n/locale/et/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/et/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/et/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/et/integrations.json b/app/javascript/dashboard/i18n/locale/et/integrations.json index ef3e94e42..fe1891064 100644 --- a/app/javascript/dashboard/i18n/locale/et/integrations.json +++ b/app/javascript/dashboard/i18n/locale/et/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/et/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/et/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/et/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/et/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/et/macros.json b/app/javascript/dashboard/i18n/locale/et/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/et/macros.json +++ b/app/javascript/dashboard/i18n/locale/et/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/et/mfa.json b/app/javascript/dashboard/i18n/locale/et/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/et/mfa.json +++ b/app/javascript/dashboard/i18n/locale/et/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/et/report.json b/app/javascript/dashboard/i18n/locale/et/report.json index dbf59f603..2ffa0ef11 100644 --- a/app/javascript/dashboard/i18n/locale/et/report.json +++ b/app/javascript/dashboard/i18n/locale/et/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/et/settings.json b/app/javascript/dashboard/i18n/locale/et/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/et/settings.json +++ b/app/javascript/dashboard/i18n/locale/et/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/et/signup.json b/app/javascript/dashboard/i18n/locale/et/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/et/signup.json +++ b/app/javascript/dashboard/i18n/locale/et/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/et/sla.json b/app/javascript/dashboard/i18n/locale/et/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/et/sla.json +++ b/app/javascript/dashboard/i18n/locale/et/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/et/snooze.json b/app/javascript/dashboard/i18n/locale/et/snooze.json new file mode 100644 index 000000000..2d9a876aa --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/et/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/et/teamsSettings.json b/app/javascript/dashboard/i18n/locale/et/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/et/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/et/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/fa/agentBots.json b/app/javascript/dashboard/i18n/locale/fa/agentBots.json index 6d64c887e..cd69870f4 100644 --- a/app/javascript/dashboard/i18n/locale/fa/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fa/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "در حال بارگیری ویرایشگر...", "DESCRIPTION": "ربات‌های عامل مانند شگفت‌انگیزترین اعضای تیم شما هستند. آن‌ها می‌توانند کارهای کوچک را انجام دهند، بنابراین شما می‌توانید روی چیزهای مهم تمرکز کنید. آن‌ها را امتحان کنید. می‌توانید ربات‌های خود را از این صفحه مدیریت کنید یا با استفاده از دکمه «افزودن ربات»، ربات‌های جدیدی ایجاد کنید.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "ربات سیستمی", "GLOBAL_BOT_BADGE": "سیستم", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "در حال گرفتن ربات‌ها...", "TABLE_HEADER": { "DETAILS": "جزئیات ربات", - "URL": "آدرس URL وب هوک" + "URL": "آدرس URL وب هوک", + "ACTIONS": "عملیات" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/fa/agentMgmt.json b/app/javascript/dashboard/i18n/locale/fa/agentMgmt.json index 1f2673d3f..4648078ec 100644 --- a/app/javascript/dashboard/i18n/locale/fa/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "مدیرکل", "AGENT": "ایجنت" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "در حال حاضر هیچ ایجنتی برای این حساب معرفی نشده است", "TITLE": "مدیریت ایجنت ها", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "متاسفانه ارتباط با سرور برقرار نشد، مجددا امتحان کنید" } }, + "SEARCH_PLACEHOLDER": "جستجوی اپراتور...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "نتیجه‌ای یافت نشد." }, diff --git a/app/javascript/dashboard/i18n/locale/fa/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/fa/attributesMgmt.json index 1abaf6d23..e368d472e 100644 --- a/app/javascript/dashboard/i18n/locale/fa/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "واکشی ویژگی‌های سفارشی", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "جستجو ویژگی ها...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "گفتگو", "CONTACT": "مخاطب" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "فعال سازی بررسی رجکس" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/fa/automation.json b/app/javascript/dashboard/i18n/locale/fa/automation.json index 033f2d37d..9a203b74f 100644 --- a/app/javascript/dashboard/i18n/locale/fa/automation.json +++ b/app/javascript/dashboard/i18n/locale/fa/automation.json @@ -3,8 +3,11 @@ "HEADER": "خودکارسازی", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "افزودن قانون خودکارسازی", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "واکشی قوانین اتوماسیون", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "افزودن قانون خودکارسازی", "SUBMIT": "ايجاد كردن", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "نام", - "DESCRIPTION": "توضیحات", "ACTIVE": "فعال", - "CREATED_ON": "ایجاد شده در" + "CREATED_ON": "ایجاد شده در", + "ACTIONS": "عملیات" }, "404": "هیچ قانون اتوماسیون یافت نشد" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "تغییر اولویت", "ADD_SLA": "اضافه کردن SLA", - "OPEN_CONVERSATION": "باز کردن گفتگو" + "OPEN_CONVERSATION": "باز کردن گفتگو", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/fa/bulkActions.json b/app/javascript/dashboard/i18n/locale/fa/bulkActions.json index 226de691f..90def79a3 100644 --- a/app/javascript/dashboard/i18n/locale/fa/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/fa/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "وضعیت گفتگو با موفقیت به روز شد.", "UPDATE_FAILED": "گفتگوها به روز نشدند، لطفا دوباره امتحان کنید." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "برچسب اختصاص دهید", "NO_LABELS_FOUND": "هیچ برچسبی یافت نشد", diff --git a/app/javascript/dashboard/i18n/locale/fa/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/fa/cannedMgmt.json index ea12def74..9622033e1 100644 --- a/app/javascript/dashboard/i18n/locale/fa/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "پاسخ‌های آماده", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "اضافه کردن پاسخ آماده", "LOADING": "دریافت پاسخ‌های آماده...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "هیچ گزینه‌ای با این شرایط پیدا نشد.", "LIST": { "404": "هیچ پاسخ آماده‌ای برای این حساب تعریف نشده است", diff --git a/app/javascript/dashboard/i18n/locale/fa/chatlist.json b/app/javascript/dashboard/i18n/locale/fa/chatlist.json index 55071443e..e70a1744e 100644 --- a/app/javascript/dashboard/i18n/locale/fa/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/fa/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "در انتظار پاسخ: کم‌ترین اول" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/fa/contact.json b/app/javascript/dashboard/i18n/locale/fa/contact.json index 670579978..2dddb7f96 100644 --- a/app/javascript/dashboard/i18n/locale/fa/contact.json +++ b/app/javascript/dashboard/i18n/locale/fa/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "هیچ مخاطبی با جستجوی شما مطابقت ندارد 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "اختصاص برچسب‌ها", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "به:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "موضوع :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/fa/conversation.json b/app/javascript/dashboard/i18n/locale/fa/conversation.json index 872e629df..dbf199ba4 100644 --- a/app/javascript/dashboard/i18n/locale/fa/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fa/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "این پیام پشتیبانی نمی شود. می توانید این پیام را در برنامه فیس بوک مسنجر مشاهده کنید.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "این پیام پشتیبانی نمی شود. می توانید این پیام را در برنامه اینستاگرام مشاهده کنید.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "پیام با موفقیت حذف شد", "FAIL_DELETE_MESSSAGE": "پیام حذف نشد! دوباره امتحان کنید", "NO_RESPONSE": "بدون پاسخ", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "برچسب اختصاص داده نشد. لطفا دوباره تلاش کنید." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "تیم \"{team}\" را به شناسه مکالمه {conversationId} اختصاص داد", "FAILED": "تیم تعیین نشد. لطفا دوباره تلاش کنید." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "غیرفعال کردن امضا", "MSG_INPUT": "برای رفتن به سرخط shift+enter و برای استفاده از پیام های ذخیره شده / را بزنید.", "PRIVATE_MSG_INPUT": "برای رفتن به سرخط shift+enter را بزنید. این پیام فقط به ایجنت ها نمایش داده میشود", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "امضای پیام پیکربندی نشده است، لطفاً آن را در تنظیمات نمایه پیکربندی کنید.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "برای به روز رسانی اینجا را کلیک کنید", "WHATSAPP_TEMPLATES": "قالب های واتساپ" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "برای ضمیمه کردن درگ و درآپ کنید", "START_AUDIO_RECORDING": "در حال شروع ضبط صدا", "STOP_AUDIO_RECORDING": "در حال توقف ضبط صدا", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "به", "ADD_BCC": "افزودن رونوشت", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "پرونده از حد مجاز پیوست {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} مگابایت بیشتر است", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "ارسال این پیام امکان پذیر نیست ، لطفاً بعداً دوباره امتحان کنید", "SENT_BY": "ارسال شده توسط:", "BOT": "ربات", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "پیام ارسال نشد! دوباره امتحان کنید", "TRY_AGAIN": "دوباره امتحان کنید", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "انصراف", "SEND_EMAIL_SUCCESS": "متن گفتگو با موفقیت ارسال شد", "SEND_EMAIL_ERROR": "خطایی پیش آمد. لطفا دوباره امتحان کنید", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "متن گفتگو را برای مشتری ارسال کنید", "SEND_TO_AGENT": "متن گفتگو را به ایجنت اختصاص یافته ارسال کنید", diff --git a/app/javascript/dashboard/i18n/locale/fa/customRole.json b/app/javascript/dashboard/i18n/locale/fa/customRole.json index 625bd72f4..6937109a3 100644 --- a/app/javascript/dashboard/i18n/locale/fa/customRole.json +++ b/app/javascript/dashboard/i18n/locale/fa/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "هیچ گزینه‌ای با این شرایط پیدا نشد.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/fa/datePicker.json b/app/javascript/dashboard/i18n/locale/fa/datePicker.json index e6adf109f..300d47097 100644 --- a/app/javascript/dashboard/i18n/locale/fa/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/fa/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "درخواست دادن", "CLEAR_BUTTON": "پاک کردن", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "۳ ماه گذشته", "LAST_6_MONTHS": "۶ ماه گذشته", "LAST_YEAR": "پارسال", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "محدوده تاریخ سفارشی" } } diff --git a/app/javascript/dashboard/i18n/locale/fa/general.json b/app/javascript/dashboard/i18n/locale/fa/general.json index c4d709259..1c14ffdbd 100644 --- a/app/javascript/dashboard/i18n/locale/fa/general.json +++ b/app/javascript/dashboard/i18n/locale/fa/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "بستن", "BETA": "آزمایشی", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "بله", + "NO": "خیر" } } diff --git a/app/javascript/dashboard/i18n/locale/fa/generalSettings.json b/app/javascript/dashboard/i18n/locale/fa/generalSettings.json index 51464933c..27e6ffee5 100644 --- a/app/javascript/dashboard/i18n/locale/fa/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fa/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "جستجو یا پرش به", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "عمومی", "REPORTS": "گزارشات", diff --git a/app/javascript/dashboard/i18n/locale/fa/helpCenter.json b/app/javascript/dashboard/i18n/locale/fa/helpCenter.json index db4346f68..710943eee 100644 --- a/app/javascript/dashboard/i18n/locale/fa/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/fa/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "خطا هنگام حذف مقاله" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "لطفا عنوان و محتوای مقاله را اضافه کنید و فقط شما می‌توانید تنظیمات را به‌روز کنید" }, diff --git a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json index 3b3218357..7bb3f2799 100644 --- a/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "صندوق‌های ورودی", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "فقط از نام تجاری پیکربندی شده به عنوان نام فرستنده در هدر ایمیل استفاده کنید." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ نام کسب و کار خود را وارد کنید", + "BUTTON_TEXT": "نام کسب و کار خود را وارد کنید", "PLACEHOLDER": "نام کسب و کار خود را وارد کنید", "SAVE_BUTTON_TEXT": "ذخیره" } @@ -589,8 +592,10 @@ "DISABLED": "غیرفعال" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "فعال شد", - "DISABLED": "غیرفعال شد" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "فعال" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "رضایت مشتری" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "فعال/غیرفعال کردن نمایش نام اپراتور در ایمیل، اگر غیرفعال باشد نام کسب و کار نشان داده می شود", "ENABLE_CONTINUITY_VIA_EMAIL": "ادامه مکالمه را از طریق ایمیل فعال کنید", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "اگر آدرس ایمیل تماس در دسترس باشد، مکالمات از طریق ایمیل ادامه خواهد یافت.", - "LOCK_TO_SINGLE_CONVERSATION": "قفل کردن مکالمه تکی", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "چند مکالمه را برای یک مخاطب در این صندوق ورودی فعال یا غیرفعال کنید", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "تنظیمات صندوق ورودی", "INBOX_UPDATE_SUB_TEXT": "تغییر پارامترهای صندوق ورودی", "AUTO_ASSIGNMENT_SUB_TEXT": "فعال کردن یا غیرفعال کردن واگذاری خودکار گفتگوها به ایجنت های عضو این صندوق ورودی.", @@ -758,6 +765,7 @@ "LABEL": "مرکز راهنما", "PLACEHOLDER": "مرکز راهنما را انتخاب کنید", "SELECT_PLACEHOLDER": "مرکز راهنما را انتخاب کنید", + "NONE": "هیچکدام", "REMOVE": "مرکز راهنما را حذف کنید", "SUB_TEXT": "یک مرکز راهنما را با صندوق ورودی پیوست کنید" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "لطفا مقداری بزرگ‌تر از عدد 0 وارد کنید", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "حداکثر تعداد مکالماتی را که می توان به طور خودکار به یک اپراتور اختصاص داد، از این صندوق ورودی محدود کنید" }, + "ASSIGNMENT": { + "TITLE": "اختصاص گفتگو", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "فعال", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "انصراف", + "CONFIRM_DELETE": "حذف", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "احراز هویت مجدد", "SUBTITLE": "اتصال فیس بوک شما منقضی شده است ، لطفاً برای ادامه خدمات دوباره صفحه فیس بوک خود را متصل کنید", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "بازگشت" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "پیامی برای بازدیدکنندگان در دسترس نیست", "TOGGLE_HELP": "فعال کردن در دسترس بودن کسب کار ، ساعات موجود در ویجت چت زنده را نشان می دهد حتی اگر همه اپراتور ها آفلاین باشند. خارج از ساعات موجود می توان با پیام و فرم قبل از چت ، به کاربران هشدار داد.", "DAY": { + "DAY": "روز", + "AVAILABILITY": "در دسترس", + "HOURS": "Hours", "ENABLE": "در دسترس بودن را برای این روز فعال کنید", "UNAVAILABLE": "غیر قابل دسترسی", - "HOURS": "ساعت", "VALIDATION_ERROR": "زمان شروع باید قبل از زمان بسته شدن باشد.", "CHOOSE": "انتخاب کنید" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "در یک روز" }, "WIDGET_COLOR_LABEL": "رنگ ویجت", - "WIDGET_BUBBLE_POSITION_LABEL": "موقعیت حباب ابزارک", - "WIDGET_BUBBLE_TYPE_LABEL": "نوع حباب ابزارک", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "نوع:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "با ما گفتگو کنید", - "LABEL": "عنوان ویجت Bubble", + "LABEL": "Launcher Title", "PLACE_HOLDER": "با ما گفتگو کنید" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "پیش‌فرض", - "CHAT": "گفتگو" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "معمولاً در عرض چند دقیقه پاسخ می‌دهیم", diff --git a/app/javascript/dashboard/i18n/locale/fa/integrationApps.json b/app/javascript/dashboard/i18n/locale/fa/integrationApps.json index 2a19ded40..24f8be18c 100644 --- a/app/javascript/dashboard/i18n/locale/fa/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/fa/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "واکشی ادغام ها", "NO_HOOK_CONFIGURED": "هیچ {integrationId} ادغامی در این اکانت انجام نشده است.", "HEADER": "برنامه های کاربردی", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "فعال", "DISABLED": "غیرفعال" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "واکشی ادغام های هوک", "INBOX": "صندوق ورودی", + "ACTIONS": "عملیات", "DELETE": { "BUTTON_TEXT": "حذف" } diff --git a/app/javascript/dashboard/i18n/locale/fa/integrations.json b/app/javascript/dashboard/i18n/locale/fa/integrations.json index 31538b5b7..6876184f3 100644 --- a/app/javascript/dashboard/i18n/locale/fa/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fa/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "رویدادهای مشترک شده", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "انصراف", "DESC": "رویدادهای وب هوک اطلاعات لحظه‌ای حساب چت ووت شما را منتقل می‌کنند. لطفا آدرس URL صحیحی وارد کنید.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "حذف", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "حرفه‌ای", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "دوستانه" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

برنامه‌های داشبورد

برنامه‌های داشبورد به سازمان‌ها اجازه می‌دهند تا برنامه‌ای را در داشبورد Chatwoot جاسازی کنند تا زمینه را برای عوامل پشتیبانی مشتری فراهم کنند. این ویژگی به شما این امکان را می دهد که به طور مستقل یک برنامه ایجاد کنید و آن را در داشبورد جاسازی کنید تا اطلاعات کاربر، سفارشات یا سابقه پرداخت قبلی آنها را ارائه کنید.

وقتی برنامه خود را با استفاده از داشبورد در Chatwoot جاسازی می کنید، برنامه شما این کار را انجام می دهد. زمینه گفتگو و تماس را به عنوان یک رویداد پنجره دریافت کنید. یک شنونده برای رویداد پیام در صفحه خود اجرا کنید تا زمینه را دریافت کنید.

برای افزودن یک برنامه داشبورد جدید، روی دکمه \"افزودن یک برنامه داشبورد جدید\" کلیک کنید.

", "DESCRIPTION": "برنامه‌های داشبورد به سازمان‌ها اجازه می‌دهند تا برنامه‌ای را در داشبورد جاسازی کنند تا زمینه را برای عوامل پشتیبانی مشتری فراهم کنند. این ویژگی به شما این امکان را می دهد که به طور مستقل یک برنامه کاربردی ایجاد کنید و آن را برای ارائه اطلاعات کاربر، سفارشات یا سابقه پرداخت قبلی آنها درج کنید.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "هنوز هیچ برنامه داشبوردی روی این حساب پیکربندی نشده است", "LOADING": "در حال واکشی برنامه های داشبورد...", "TABLE_HEADER": { "NAME": "نام", - "ENDPOINT": "نقطه پایانی" + "ENDPOINT": "نقطه پایانی", + "ACTIONS": "عملیات" }, "EDIT_TOOLTIP": "ویرایش برنامه", "DELETE_TOOLTIP": "حذف برنامه" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "لطفاً برای ارتقا با ادمین خود تماس بگیرید." }, diff --git a/app/javascript/dashboard/i18n/locale/fa/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/fa/labelsMgmt.json index 476301f68..f03f21bcb 100644 --- a/app/javascript/dashboard/i18n/locale/fa/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fa/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "درحال گرفتن برچسب‌ها", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "جستجو برچسب‌ها...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "هیچ آیتمی با این مشخصات یافت نشد", "LIST": { "404": "هیچ برچسبی در این حساب‌کاربری وجود ندارد.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "نام", "DESCRIPTION": "توضیحات", - "COLOR": "رنگ" + "COLOR": "رنگ", + "ACTION": "عملیات" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fa/macros.json b/app/javascript/dashboard/i18n/locale/fa/macros.json index b64fa945c..5221dcb95 100644 --- a/app/javascript/dashboard/i18n/locale/fa/macros.json +++ b/app/javascript/dashboard/i18n/locale/fa/macros.json @@ -3,9 +3,12 @@ "HEADER": "ماکروها", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "افزودن ماکرو جدید", "HEADER_BTN_TXT_SAVE": "ذخیره ماکرو", "LOADING": "در حال گرفتن ماکروها", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "مشکلی پیش آمد. لطفا دوباره تلاش کنید", "ORDER_INFO": "ماکروها به ترتیبی که اقدامات خود را اضافه می کنید اجرا می شوند. می توانید با کشیدن آنها توسط دسته کنار هر گره آنها را دوباره مرتب کنید.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "نام", "CREATED BY": "ايجاد شده توسط", "LAST_UPDATED_BY": "آخرین به‌روزرسانی توسط", - "VISIBILITY": "دید" + "VISIBILITY": "دید", + "ACTIONS": "عملیات" }, "404": "هیچ ماکروی یافت نشد" }, diff --git a/app/javascript/dashboard/i18n/locale/fa/mfa.json b/app/javascript/dashboard/i18n/locale/fa/mfa.json index e1031ace2..b04eedd37 100644 --- a/app/javascript/dashboard/i18n/locale/fa/mfa.json +++ b/app/javascript/dashboard/i18n/locale/fa/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/fa/report.json b/app/javascript/dashboard/i18n/locale/fa/report.json index 9596444e1..7dcb86b77 100644 --- a/app/javascript/dashboard/i18n/locale/fa/report.json +++ b/app/javascript/dashboard/i18n/locale/fa/report.json @@ -3,7 +3,7 @@ "HEADER": "گفتگوها", "LOADING_CHART": "در حال دریافت اطلاعات...", "NO_ENOUGH_DATA": "متاسفانه اطلاعات کافی دریافت نشد، لطفا بعدا دوباره امتحان کنید", - "DOWNLOAD_AGENT_REPORTS": "دانلود گزارش ایجنت", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "خطا در دریافت اطلاعات، لطفا بعدا دوباره تلاش کنید.", "SUMMARY_FETCHING_FAILED": "خطا در دریافت خلاصه، لطفا بعدا دوباره تلاش کنید.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "نمای کلی اپراتور ها", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "در حال دریافت اطلاعات...", "NO_ENOUGH_DATA": "متاسفانه اطلاعات کافی دریافت نشد، لطفا بعدا دوباره امتحان کنید", "DOWNLOAD_AGENT_REPORTS": "دانلود گزارش ایجنت", "FILTER_DROPDOWN_LABEL": "انتخاب ایجنت", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "جستجوی اپراتور" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "گفتگوها", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "متاسفانه اطلاعات کافی دریافت نشد، لطفا بعدا دوباره امتحان کنید", "DOWNLOAD_LABEL_REPORTS": "دانلود گزارش برچسب ها", "FILTER_DROPDOWN_LABEL": "برچسب را انتخاب کنید", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "جستجو برچسب‌ها" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "گفتگوها", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "انتخاب صندوق ورودی", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "گفتگوها", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "نمای کلی تیم", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "در حال دریافت اطلاعات...", "NO_ENOUGH_DATA": "متاسفانه اطلاعات کافی دریافت نشد، لطفا بعدا دوباره امتحان کنید", "DOWNLOAD_TEAM_REPORTS": "دانلود گزارشات تیم", "FILTER_DROPDOWN_LABEL": "تیم را انتخاب کنید", + "FILTERS": { + "ADD_FILTER": "افزودن فیلتر", + "CLEAR_ALL": "حذف همه", + "NO_FILTER": "هیچ فیلتری موجود نیست", + "INPUT_PLACEHOLDER": { + "TEAMS": "جستجوی تیم" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "گفتگوها", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "گزارشات رضایت مشتری", - "NO_RECORDS": "هیچ پاسخ برای نظرسنجی رضایت مشتری در دسترس نیست.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "دانلود گزارش CSAT", "DOWNLOAD_FAILED": "خطا در دانلود گزارش های CSAT", "FILTERS": { + "ADD_FILTER": "افزودن فیلتر", + "CLEAR_ALL": "حذف همه", + "NO_FILTER": "هیچ فیلتری موجود نیست", + "INPUT_PLACEHOLDER": { + "AGENTS": "جستجوی اپراتور", + "INBOXES": "Search inboxes", + "TEAMS": "جستجوی تیم", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "اپراتور را انتخاب کنید" + "LABEL": "ایجنت" + }, + "INBOXES": { + "LABEL": "صندوق ورودی" + }, + "TEAMS": { + "LABEL": "تیم‌" + }, + "RATINGS": { + "LABEL": "رتبه" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "مخاطب", - "AGENT_NAME": "ایجنت تعیین شده", + "AGENT_NAME": "ایجنت", "RATING": "رتبه", - "FEEDBACK_TEXT": "نظر ثبت شده" - } + "FEEDBACK_TEXT": "نظر ثبت شده", + "CONVERSATION": "گفتگو", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "مجموع پاسخ ها", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "نرخ پاسخ", "TOOLTIP": "تعداد کل پاسخ ها / تعداد کل پیام های نظرسنجی رضایت مشتری ارسال شده از 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "ذخیره", + "CANCEL": "انصراف", + "SAVING": "در حال ذخیره...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "حالا ارتقا دهید", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/fa/settings.json b/app/javascript/dashboard/i18n/locale/fa/settings.json index 827fc2e5a..5fe16b4c6 100644 --- a/app/javascript/dashboard/i18n/locale/fa/settings.json +++ b/app/javascript/dashboard/i18n/locale/fa/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "دانلود", "UPLOADING": "در حال آپلود...", - "INSTAGRAM_STORY_UNAVAILABLE": "این داستان دیگر در دسترس نیست." + "INSTAGRAM_STORY_UNAVAILABLE": "این داستان دیگر در دسترس نیست.", + "INSTAGRAM_STORY_REPLY": "به استوری شما پاسخ داده:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "مشاهده‌ بر روی نقشه" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "اسناد را بخوانید", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "امکانات", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "صورتحساب", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "جستجو ویژگی ها" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "گفتگو حل شده", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "گفتگو حل شده", + "CANCEL": "انصراف" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "بله", + "NO": "خیر" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "حالا ارتقا دهید", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "لطفاً برای ارتقا با ادمین خود تماس بگیرید." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "اوه اوه! ما هیچ حسابی روی Chatwoot پاز شما پیدا نکردیم. لطفاً برای ادامه یک حساب جدید ایجاد کنید.", "NEW_ACCOUNT": "حساب‌کاربری جدید", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "انصراف" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fa/signup.json b/app/javascript/dashboard/i18n/locale/fa/signup.json index 0163a7e85..38a662649 100644 --- a/app/javascript/dashboard/i18n/locale/fa/signup.json +++ b/app/javascript/dashboard/i18n/locale/fa/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "ایجاد حساب کاربری", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "ثبت نام", "TESTIMONIAL_HEADER": "تنها چیزی که لازم است یک قدم برای حرکت به جلو است", "TESTIMONIAL_CONTENT": "شما یک قدم تا جذب مشتریان خود، حفظ آنها و یافتن مشتریان جدید فاصله دارید.", diff --git a/app/javascript/dashboard/i18n/locale/fa/sla.json b/app/javascript/dashboard/i18n/locale/fa/sla.json index d0d853d4f..e283f3402 100644 --- a/app/javascript/dashboard/i18n/locale/fa/sla.json +++ b/app/javascript/dashboard/i18n/locale/fa/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "ایجاد سیاست SLA جدید", "DESCRIPTION": "قراردادهای سطح خدمات (SLA) قراردادهایی هستند که انتظارات واضحی را بین تیم شما و مشتریان تعریف می کنند. آنها استانداردهایی را برای زمان پاسخگویی و حل موضوعات تعریف می کنند، در قالب چارچوبی مه برای پاسخگویی ایجاد می کنند تجربه ای پایدار و با کیفیت را به مشتری ارائه می کنند.", "LEARN_MORE": "اطلاعات بیشتری درباره SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "در حال گرفتن SLAها", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "برای ایجاد SLA بروز رسانی کنید", "AVAILABLE_ON": "قابلیت SLA فقط در نسخه Business و Enterprise وجود دارد.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "هیچ SLA در این حساب‌کاربری وجود ندارد.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "مسائلی که توسط مشتریان سازمانی مطرح می شود و نیاز به توجه فوری دارد.", "TITLE_2": "Enterprise P1", "DESC_2": "مسائلی که توسط مشتریان سازمانی مطرح می شود، باید به سرعت مورد تایید قرار گیرد." }, - "BUSINESS_HOURS_ON": "در ساعت کاری", - "BUSINESS_HOURS_OFF": "خارج از ساعت کاری", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "آستانه زمان اولین پاسخ", "NRT": "آستانه زمان پاسخ بعدی", diff --git a/app/javascript/dashboard/i18n/locale/fa/snooze.json b/app/javascript/dashboard/i18n/locale/fa/snooze.json new file mode 100644 index 000000000..fda794853 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/fa/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "ساعت", + "DAY": "روز", + "DAYS": "days", + "WEEK": "روز", + "WEEKS": "weeks", + "MONTH": "هفته", + "MONTHS": "months", + "YEAR": "ماه", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "فردا", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "هفته بعد", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "روز", + "DAY": "روز" + } +} diff --git a/app/javascript/dashboard/i18n/locale/fa/teamsSettings.json b/app/javascript/dashboard/i18n/locale/fa/teamsSettings.json index af7384b71..b1bb021ea 100644 --- a/app/javascript/dashboard/i18n/locale/fa/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/fa/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "جستجوی تیم...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "هیچ تیمی در این حساب ایجاد نشده است.", "EDIT_TEAM": "ویرایش تیم", diff --git a/app/javascript/dashboard/i18n/locale/fi/agentBots.json b/app/javascript/dashboard/i18n/locale/fi/agentBots.json index eae68ec01..ed237979f 100644 --- a/app/javascript/dashboard/i18n/locale/fi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fi/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhookin URL" + "URL": "Webhookin URL", + "ACTIONS": "Toiminnot" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/fi/agentMgmt.json b/app/javascript/dashboard/i18n/locale/fi/agentMgmt.json index 25472a2bc..1111f6684 100644 --- a/app/javascript/dashboard/i18n/locale/fi/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Ylläpitäjä", "AGENT": "Edustajat" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Tälle tilille ei ole liitetty edustajia", "TITLE": "Hallitse edustajia tiimissäsi", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Yhteyden muodostaminen Woot-palvelimelle ei onnistunut, yritä myöhemmin uudelleen" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/fi/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/fi/attributesMgmt.json index da3fe86bb..8087fda09 100644 --- a/app/javascript/dashboard/i18n/locale/fi/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Etsi määritteitä...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/fi/automation.json b/app/javascript/dashboard/i18n/locale/fi/automation.json index ea8ecab1d..0dfca6771 100644 --- a/app/javascript/dashboard/i18n/locale/fi/automation.json +++ b/app/javascript/dashboard/i18n/locale/fi/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Luo", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nimi", - "DESCRIPTION": "Kuvaus", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Toiminnot" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/fi/bulkActions.json b/app/javascript/dashboard/i18n/locale/fi/bulkActions.json index 0163c825a..bc5019095 100644 --- a/app/javascript/dashboard/i18n/locale/fi/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/fi/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/fi/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/fi/cannedMgmt.json index 49552985f..1a5e74828 100644 --- a/app/javascript/dashboard/i18n/locale/fi/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Tallennetut vastaukset", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Tätä hakua vastaavia kohteita ei löydy.", "LIST": { "404": "Tällä tilillä ei ole tallennettuja vastauksia.", diff --git a/app/javascript/dashboard/i18n/locale/fi/chatlist.json b/app/javascript/dashboard/i18n/locale/fi/chatlist.json index 34d85e113..4056a01f2 100644 --- a/app/javascript/dashboard/i18n/locale/fi/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/fi/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/fi/contact.json b/app/javascript/dashboard/i18n/locale/fi/contact.json index 00b712a63..4950073a8 100644 --- a/app/javascript/dashboard/i18n/locale/fi/contact.json +++ b/app/javascript/dashboard/i18n/locale/fi/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Ei hakua vastaavia yhteystietoja 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/fi/conversation.json b/app/javascript/dashboard/i18n/locale/fi/conversation.json index d1aa292ac..54cc45b93 100644 --- a/app/javascript/dashboard/i18n/locale/fi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fi/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Vaihto + enter siirtyäksesi uudelle riville. Aloita '/' valitaksesi tallennettu vastaus.", "PRIVATE_MSG_INPUT": "Vaihto + enter siirtyäksesi uudelle riville. Tämä näkyy vain edustajille", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "WhatsApp-pohjat" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Lähettäjä:", "BOT": "Botti", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Viestiä ei voitu lähettää! Yritä uudelleen", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Peruuta", "SEND_EMAIL_SUCCESS": "Chat-keskustelu on lähetetty onnistuneesti", "SEND_EMAIL_ERROR": "Tapahtui virhe, yritä uudelleen", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Lähetä keskustelu asiakkaalle", "SEND_TO_AGENT": "Lähetä keskustelu edustajalle", diff --git a/app/javascript/dashboard/i18n/locale/fi/customRole.json b/app/javascript/dashboard/i18n/locale/fi/customRole.json index 6807fa16d..d2ecf49d2 100644 --- a/app/javascript/dashboard/i18n/locale/fi/customRole.json +++ b/app/javascript/dashboard/i18n/locale/fi/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Tätä hakua vastaavia kohteita ei löydy.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/fi/datePicker.json b/app/javascript/dashboard/i18n/locale/fi/datePicker.json index 1d2e2bf34..8abe975c9 100644 --- a/app/javascript/dashboard/i18n/locale/fi/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/fi/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/fi/general.json b/app/javascript/dashboard/i18n/locale/fi/general.json index 796f39b73..a3e8dc63c 100644 --- a/app/javascript/dashboard/i18n/locale/fi/general.json +++ b/app/javascript/dashboard/i18n/locale/fi/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Sulje", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/fi/generalSettings.json b/app/javascript/dashboard/i18n/locale/fi/generalSettings.json index 58701ec53..c10475348 100644 --- a/app/javascript/dashboard/i18n/locale/fi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fi/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Raportit", diff --git a/app/javascript/dashboard/i18n/locale/fi/helpCenter.json b/app/javascript/dashboard/i18n/locale/fi/helpCenter.json index 6b593e9b6..7f5370936 100644 --- a/app/javascript/dashboard/i18n/locale/fi/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/fi/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json index 6f780eddc..4bb9d01b7 100644 --- a/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Saapuneet-kansiot", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Pois käytöstä" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Käytössä", - "DISABLED": "Pois käytöstä" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Postilaatikon tiedot", "INBOX_UPDATE_SUB_TEXT": "Päivitä postilaatikon asetukset", "AUTO_ASSIGNMENT_SUB_TEXT": "Ota käyttöön tai poista käytöstä automaattinen keskusteluiden delegointi edustajille.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Peruuta", + "CONFIRM_DELETE": "Poista", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Uudelleenvaltuuta", "SUBTITLE": "Facebook-yhteytesi on vanhentunut, ole hyvä ja yhdistä uudelleen Facebook-sivusi jatkaaksesi palveluita", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Mene takaisin" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Saatavuus", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Päivän kuluessa" }, "WIDGET_COLOR_LABEL": "Widgetin väri", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Keskustele kanssamme", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Keskustele kanssamme" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Vastaa tyypillisesti muutamassa minuutissa", diff --git a/app/javascript/dashboard/i18n/locale/fi/integrationApps.json b/app/javascript/dashboard/i18n/locale/fi/integrationApps.json index 226a7539f..e9908629a 100644 --- a/app/javascript/dashboard/i18n/locale/fi/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/fi/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Käytössä", "DISABLED": "Pois käytöstä" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Toiminnot", "DELETE": { "BUTTON_TEXT": "Poista" } diff --git a/app/javascript/dashboard/i18n/locale/fi/integrations.json b/app/javascript/dashboard/i18n/locale/fi/integrations.json index 3b25a48b0..cf4d13dc1 100644 --- a/app/javascript/dashboard/i18n/locale/fi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fi/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Peruuta", "DESC": "Webhook-tapahtumat antavat sinulle reaaliaikaista tietoa siitä, mitä Chatwot-tililläsi tapahtuu. Syötä kelvollinen URL-osoite, jotta voit määrittää callbackin.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Poista", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Nimi", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Toiminnot" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/fi/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/fi/labelsMgmt.json index 877827020..d4324a87f 100644 --- a/app/javascript/dashboard/i18n/locale/fi/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fi/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Haetaan tunnisteita", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Tätä hakua vastaavia kohteita ei löydy", "LIST": { "404": "Tällä tilillä ei ole tunnisteita.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nimi", "DESCRIPTION": "Kuvaus", - "COLOR": "Väri" + "COLOR": "Väri", + "ACTION": "Toiminnot" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fi/macros.json b/app/javascript/dashboard/i18n/locale/fi/macros.json index a2716f073..5d78f2687 100644 --- a/app/javascript/dashboard/i18n/locale/fi/macros.json +++ b/app/javascript/dashboard/i18n/locale/fi/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nimi", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Toiminnot" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/fi/mfa.json b/app/javascript/dashboard/i18n/locale/fi/mfa.json index ad2b19764..1af0654f5 100644 --- a/app/javascript/dashboard/i18n/locale/fi/mfa.json +++ b/app/javascript/dashboard/i18n/locale/fi/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/fi/report.json b/app/javascript/dashboard/i18n/locale/fi/report.json index 22db228b2..107589f21 100644 --- a/app/javascript/dashboard/i18n/locale/fi/report.json +++ b/app/javascript/dashboard/i18n/locale/fi/report.json @@ -3,7 +3,7 @@ "HEADER": "Keskustelut", "LOADING_CHART": "Ladataan kaaviotietoja...", "NO_ENOUGH_DATA": "Emme ole saaneet tarpeeksi dataa raportin luomiseen, yritä myöhemmin uudelleen.", - "DOWNLOAD_AGENT_REPORTS": "Lataa edustajaraportit", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Ladataan kaaviotietoja...", "NO_ENOUGH_DATA": "Emme ole saaneet tarpeeksi dataa raportin luomiseen, yritä myöhemmin uudelleen.", "DOWNLOAD_AGENT_REPORTS": "Lataa edustajaraportit", "FILTER_DROPDOWN_LABEL": "Valitse edustaja", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Keskustelut", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Emme ole saaneet tarpeeksi dataa raportin luomiseen, yritä myöhemmin uudelleen.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Keskustelut", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Keskustelut", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Ladataan kaaviotietoja...", "NO_ENOUGH_DATA": "Emme ole saaneet tarpeeksi dataa raportin luomiseen, yritä myöhemmin uudelleen.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Keskustelut", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Edustajat" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Arvio" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Osoitettu edustajalle", + "AGENT_NAME": "Edustajat", "RATING": "Arvio", - "FEEDBACK_TEXT": "Palautteen kommentti" - } + "FEEDBACK_TEXT": "Palautteen kommentti", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Peruuta", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/fi/settings.json b/app/javascript/dashboard/i18n/locale/fi/settings.json index d32a94ecc..bf7d7bc44 100644 --- a/app/javascript/dashboard/i18n/locale/fi/settings.json +++ b/app/javascript/dashboard/i18n/locale/fi/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Lataa", "UPLOADING": "Lähetetään...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Ominaisuudet", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Etsi määritteitä" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Selvitä keskustelu", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Selvitä keskustelu", + "CANCEL": "Peruuta" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "Uusi tili", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Peruuta" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fi/signup.json b/app/javascript/dashboard/i18n/locale/fi/signup.json index 4afef6704..a460c1582 100644 --- a/app/javascript/dashboard/i18n/locale/fi/signup.json +++ b/app/javascript/dashboard/i18n/locale/fi/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Rekisteröidy", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/fi/sla.json b/app/javascript/dashboard/i18n/locale/fi/sla.json index 51e8ef39b..ed59a2b82 100644 --- a/app/javascript/dashboard/i18n/locale/fi/sla.json +++ b/app/javascript/dashboard/i18n/locale/fi/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/fi/snooze.json b/app/javascript/dashboard/i18n/locale/fi/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/fi/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/fi/teamsSettings.json b/app/javascript/dashboard/i18n/locale/fi/teamsSettings.json index 6b8c89789..aec3a5833 100644 --- a/app/javascript/dashboard/i18n/locale/fi/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/fi/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", + "AGENT": "Edustajat", "EMAIL": "Sähköposti", "BUTTON_TEXT": "Lisää edustaja", "ADD_AGENTS": "Adding Agents to your Team...", diff --git a/app/javascript/dashboard/i18n/locale/fr/agentBots.json b/app/javascript/dashboard/i18n/locale/fr/agentBots.json index 99142ad27..915adb649 100644 --- a/app/javascript/dashboard/i18n/locale/fr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/fr/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Chargement de l'éditeur...", "DESCRIPTION": "Les bots agents sont comme les membres les plus formidables de votre équipe. Ils peuvent gérer les petites tâches, vous permettant ainsi de vous concentrer sur ce qui compte vraiment. Essayez-les. Vous pouvez gérer vos bots depuis cette page ou en créer de nouveaux en cliquant sur le bouton 'Ajouter un bot'.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "Bot système", "GLOBAL_BOT_BADGE": "Système", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Récupération des bots...", "TABLE_HEADER": { "DETAILS": "Détails du bot", - "URL": "URL du Webhook" + "URL": "URL du Webhook", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/fr/agentMgmt.json b/app/javascript/dashboard/i18n/locale/fr/agentMgmt.json index f0bca3e22..d3bb0a880 100644 --- a/app/javascript/dashboard/i18n/locale/fr/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrateur", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Il n'y a aucun agent associé à ce compte", "TITLE": "Gérer les agents de votre équipe", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Impossible de se connecter au serveur Woot, veuillez réessayer plus tard" } }, + "SEARCH_PLACEHOLDER": "Chercher des agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Aucun résultat trouvé." }, diff --git a/app/javascript/dashboard/i18n/locale/fr/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/fr/attributesMgmt.json index 3fa91fa64..f5a68599b 100644 --- a/app/javascript/dashboard/i18n/locale/fr/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Récupération des attributs personnalisés", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Rechercher des attributs...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Activer la validation Regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/fr/automation.json b/app/javascript/dashboard/i18n/locale/fr/automation.json index 985f9f35a..a43e34cfa 100644 --- a/app/javascript/dashboard/i18n/locale/fr/automation.json +++ b/app/javascript/dashboard/i18n/locale/fr/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatisations", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Ajouter une règle d'automatisation", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Récupération des règles d'automatisation", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Ajouter une règle d'automatisation", "SUBMIT": "Créer", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nom", - "DESCRIPTION": "Description", "ACTIVE": "Actif", - "CREATED_ON": "Créé le" + "CREATED_ON": "Créé le", + "ACTIONS": "Actions" }, "404": "Aucune règle d'automatisation trouvée" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Ajouter une note privée", "CHANGE_PRIORITY": "Modifier la priorité", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Ouvrir la conversation" + "OPEN_CONVERSATION": "Ouvrir la conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Boite de réception", diff --git a/app/javascript/dashboard/i18n/locale/fr/bulkActions.json b/app/javascript/dashboard/i18n/locale/fr/bulkActions.json index 772e00ffe..b9a8f645b 100644 --- a/app/javascript/dashboard/i18n/locale/fr/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/fr/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Le statut de la conversation a été mis à jour avec succès.", "UPDATE_FAILED": "Impossible de mettre à jour les conversations, veuillez réessayer." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assigner une étiquette", "NO_LABELS_FOUND": "Aucune étiquette trouvée", diff --git a/app/javascript/dashboard/i18n/locale/fr/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/fr/cannedMgmt.json index 28c29309d..e5524e845 100644 --- a/app/javascript/dashboard/i18n/locale/fr/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Réponses standardisées", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Ajouter une réponse prédéfinie", "LOADING": "Récupération des réponses prédéfinies...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Il n'y a aucun élément correspondant à cette requête.", "LIST": { "404": "Il n'y a aucune réponse standardisée disponible dans ce compte.", diff --git a/app/javascript/dashboard/i18n/locale/fr/chatlist.json b/app/javascript/dashboard/i18n/locale/fr/chatlist.json index dcaf26810..5126c29f7 100644 --- a/app/javascript/dashboard/i18n/locale/fr/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/fr/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Réponse en attente : La plus courte en premier" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/fr/contact.json b/app/javascript/dashboard/i18n/locale/fr/contact.json index 22684d6e6..baded39db 100644 --- a/app/javascript/dashboard/i18n/locale/fr/contact.json +++ b/app/javascript/dashboard/i18n/locale/fr/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Aucun contact ne correspond à votre recherche 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "Aucun contact n'est actif pour le moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assigner des étiquettes", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "À:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Objet :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Cci:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Cci" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/fr/conversation.json b/app/javascript/dashboard/i18n/locale/fr/conversation.json index da74fce54..f1c87af24 100644 --- a/app/javascript/dashboard/i18n/locale/fr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/fr/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Ce message n'est pas pris en charge. Vous pouvez voir ce message sur l'application Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Ce message n'est pas pris en charge. Vous pouvez voir ce message sur l'application Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Le message a bien été supprimé", "FAIL_DELETE_MESSSAGE": "Impossible de supprimer le message ! Veuillez réessayez", "NO_RESPONSE": "Pas de réponse", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Impossible d'assigner l'étiquette. Veuillez réessayer." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Équipe assignée «{team}» à la conversation id {conversationId}", "FAILED": "Impossible d'assigner l'équipe. Veuillez réessayer." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Désactiver la signature", "MSG_INPUT": "Maj + entrée pour une nouvelle ligne. Commencez par '/' pour sélectionner une réponse standardisée.", "PRIVATE_MSG_INPUT": "Maj + entrée pour une nouvelle ligne. Cela ne sera visible que par les agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "La signature du message n'est pas configurée, veuillez le configurer dans les paramètres du profil.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Cliquez ici pour mettre à jour", "WHATSAPP_TEMPLATES": "Modèles WhatsApp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Glissez et déposez ici pour lier", "START_AUDIO_RECORDING": "Démarrer l'enregistrement audio", "STOP_AUDIO_RECORDING": "Arrêter l'enregistrement audio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "À", "ADD_BCC": "Ajouter cci", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation supprimée avec succès", "FAIL_DELETE_CONVERSATION": "Impossible de supprimer la conversation ! Veuillez réessayer", "FILE_SIZE_LIMIT": "Le fichier dépasse la limite de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} pour les pièces jointes", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Impossible d'envoyer ce message, veuillez réessayer plus tard", "SENT_BY": "Envoyé par:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Impossible d'envoyer le message ! Réessayez", "TRY_AGAIN": "Réessayer", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Annuler", "SEND_EMAIL_SUCCESS": "La transcription du chat a été envoyée avec succès", "SEND_EMAIL_ERROR": "Une erreur est survenue, veuillez réessayer", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Envoyer la transcription au client", "SEND_TO_AGENT": "Envoyer la transcription à l'agent assigné", diff --git a/app/javascript/dashboard/i18n/locale/fr/customRole.json b/app/javascript/dashboard/i18n/locale/fr/customRole.json index 32b7c9f37..d8220b1f7 100644 --- a/app/javascript/dashboard/i18n/locale/fr/customRole.json +++ b/app/javascript/dashboard/i18n/locale/fr/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Il n'y a aucun élément correspondant à cette requête.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/fr/datePicker.json b/app/javascript/dashboard/i18n/locale/fr/datePicker.json index bdec99942..8fd56423a 100644 --- a/app/javascript/dashboard/i18n/locale/fr/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/fr/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Appliquer", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "3 derniers mois", "LAST_6_MONTHS": "6 derniers mois", "LAST_YEAR": "Année dernière", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Plage de date personnalisée" } } diff --git a/app/javascript/dashboard/i18n/locale/fr/general.json b/app/javascript/dashboard/i18n/locale/fr/general.json index a97743c6f..492ed2b51 100644 --- a/app/javascript/dashboard/i18n/locale/fr/general.json +++ b/app/javascript/dashboard/i18n/locale/fr/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Fermer", "BETA": "Bêta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Oui", + "NO": "Non" } } diff --git a/app/javascript/dashboard/i18n/locale/fr/generalSettings.json b/app/javascript/dashboard/i18n/locale/fr/generalSettings.json index 664d04eda..63ac2ea73 100644 --- a/app/javascript/dashboard/i18n/locale/fr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/fr/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Rechercher ou aller à", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Général", "REPORTS": "Rapports", diff --git a/app/javascript/dashboard/i18n/locale/fr/helpCenter.json b/app/javascript/dashboard/i18n/locale/fr/helpCenter.json index 0b41f6da7..95996ce4d 100644 --- a/app/javascript/dashboard/i18n/locale/fr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/fr/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Erreur lors de la suppression de l’article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Veuillez ajouter le titre et le contenu de l'article puis vous seul pouvez mettre à jour les paramètres" }, diff --git a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json index 6b1b2d342..a9ba2d18c 100644 --- a/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Boîtes de réception", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Utilisez uniquement le nom d'entreprise configuré comme nom d'expéditeur dans l'en-tête du courriel." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configurez votre nom d'entreprise", + "BUTTON_TEXT": "Configurez votre nom d'entreprise", "PLACEHOLDER": "Entrez le nom de votre entreprise", "SAVE_BUTTON_TEXT": "Enregistrer" } @@ -589,8 +592,10 @@ "DISABLED": "Désactivé" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Activé", - "DISABLED": "Désactivé" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Activer" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Activer/Désactiver l'affichage du nom de l'agent dans l'e-mail, si désactivé, il affichera le nom de l'entreprise", "ENABLE_CONTINUITY_VIA_EMAIL": "Activer la continuité de la conversation par e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Les conversations se poursuivront par courrier électronique si l'adresse e-mail du contact est disponible.", - "LOCK_TO_SINGLE_CONVERSATION": "Verrouiller à une seule conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Activer ou désactiver plusieurs conversations pour le même contact dans cette boîte de réception", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Paramètres de boîtes de réception", "INBOX_UPDATE_SUB_TEXT": "Mettre à jour les paramètres de votre boîte de réception", "AUTO_ASSIGNMENT_SUB_TEXT": "Activer ou désactiver l'affectation automatique de nouvelles conversations aux agents ajoutés à cette boîte de réception.", @@ -758,6 +765,7 @@ "LABEL": "Centre d'aide", "PLACEHOLDER": "Sélectionnez le centre d'aide", "SELECT_PLACEHOLDER": "Sélectionnez le centre d'aide", + "NONE": "Aucun", "REMOVE": "Supprimer le centre d'aide", "SUB_TEXT": "Attachez un centre d'aide avec la boîte de réception" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Veuillez entrer une valeur supérieure à 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limiter le nombre maximum de conversations de cette boîte de réception qui peuvent être assignées automatiquement à un agent" }, + "ASSIGNMENT": { + "TITLE": "Konversationsauftrag", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Actif", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Annuler", + "CONFIRM_DELETE": "Supprimer", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Réautoriser", "SUBTITLE": "Votre connexion Facebook a expiré, veuillez reconnecter votre page Facebook pour continuer les services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Retour" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Message d'indisponibilité pour les visiteurs", "TOGGLE_HELP": "Activer la disponibilité professionnelle montrera les heures disponibles sur le widget chat en direct même si tous les agents sont hors ligne. En dehors des heures disponibles, les visiteurs peuvent être avertis avec un message et un formulaire de préconversation.", "DAY": { + "DAY": "Jour", + "AVAILABILITY": "Disponibilité", + "HOURS": "Heures", "ENABLE": "Activer la disponibilité pour ce jour", "UNAVAILABLE": "Non disponible", - "HOURS": "heures", "VALIDATION_ERROR": "L'heure de début doit être avant l'heure de fermeture.", "CHOOSE": "Sélectionner" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "En une journée" }, "WIDGET_COLOR_LABEL": "Couleur du Widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Position de la bulle du widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Type de bulle de widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Discutez avec nous", - "LABEL": "Titre du Widget Bubble Launcher", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Discutez avec nous" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Par défaut", - "CHAT": "Discussion" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Répond généralement en quelques minutes", diff --git a/app/javascript/dashboard/i18n/locale/fr/integrationApps.json b/app/javascript/dashboard/i18n/locale/fr/integrationApps.json index aa2fc22fd..7fd0223f4 100644 --- a/app/javascript/dashboard/i18n/locale/fr/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/fr/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Récupération des intégrations", "NO_HOOK_CONFIGURED": "Aucune intégration {integrationId} n'est configurée dans ce compte.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Activé", "DISABLED": "Désactivé" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Récupération des webhooks de l'intégration", "INBOX": "Boîte de réception", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Supprimer" } diff --git a/app/javascript/dashboard/i18n/locale/fr/integrations.json b/app/javascript/dashboard/i18n/locale/fr/integrations.json index b3ec7a784..f0ee975c7 100644 --- a/app/javascript/dashboard/i18n/locale/fr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/fr/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Événements suivis", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Annuler", "DESC": "Les événements Webhook vous fournissent des informations en temps réel sur ce qui se passe dans votre compte Chatwoot. Veuillez entrer une URL valide pour configurer un callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Supprimer", "DELETE_CONFIRMATION": { "TITLE": "Supprimer l'intégration", @@ -145,7 +160,29 @@ "EXPAND": "Développer", "MAKE_FRIENDLY": "Modifier la tonalité du message en mode convivial", "MAKE_FORMAL": "Utiliser une tonalité formelle", - "SIMPLIFY": "Simplifier" + "SIMPLIFY": "Simplifier", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professionnel", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Amical" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Contenu du brouillon", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Les applications du tableau de bord

Les applications du tableau de bord permettent aux organisations d'intégrer une application dans le tableau de bord Chatwoot pour fournir le contexte aux agents d'assistance client. Cette fonctionnalité vous permet de créer une application indépendamment et d'intégrer cela dans le tableau de bord pour fournir les informations de l'utilisateur, leurs commandes, ou leur historique de paiement précédent.

Lorsque vous intégrez votre application en utilisant le tableau de bord dans Chatwoot, votre application obtiendra le contexte de la conversation et le contact comme un événement de fenêtre. Implémentez un listener pour l'événement message sur votre page pour recevoir le contexte.

Pour ajouter une nouvelle application de tableau de bord, cliquez sur le bouton 'Ajouter une nouvelle application de tableau de bord'.

", "DESCRIPTION": "Les applications du tableau de bord permettent aux organisations d'intégrer une application dans le tableau de bord pour fournir le contexte des agents d'assistance client. Cette fonctionnalité vous permet de créer une application de manière indépendante et d'intégrer les informations de l'utilisateur, leurs commandes ou leur historique de paiement précédent.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Il n'y a pas encore d'applications de tableau de bord configurées sur ce compte", "LOADING": "Récupération des applications du tableau de bord ...", "TABLE_HEADER": { "NAME": "Nom", - "ENDPOINT": "Terminaison" + "ENDPOINT": "Terminaison", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Editer l'application", "DELETE_TOOLTIP": "Supprimer l'application" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/fr/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/fr/labelsMgmt.json index 27c0e5ad3..bdaf46270 100644 --- a/app/javascript/dashboard/i18n/locale/fr/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/fr/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Récupération des étiquettes", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Rechercher des étiquettes...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Il n'y a aucun élément correspondant à cette requête", "LIST": { "404": "Il n'y a aucune étiquette disponible dans ce compte.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nom", "DESCRIPTION": "Description", - "COLOR": "Couleur" + "COLOR": "Couleur", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fr/macros.json b/app/javascript/dashboard/i18n/locale/fr/macros.json index 20623d702..d61e849d8 100644 --- a/app/javascript/dashboard/i18n/locale/fr/macros.json +++ b/app/javascript/dashboard/i18n/locale/fr/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Ajouter une macro", "HEADER_BTN_TXT_SAVE": "Enregistrer une macro", "LOADING": "Récupération des macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Une erreur s'est produite. Veuillez réessayer", "ORDER_INFO": "Les macros s'exécuteront dans l'ordre où vous ajoutez vos actions. Vous pouvez les réorganiser en les glissant par la poignée à côté de chaque nœud.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nom", "CREATED BY": "Créé par", "LAST_UPDATED_BY": "Dernière mise à jour par", - "VISIBILITY": "Visibilité" + "VISIBILITY": "Visibilité", + "ACTIONS": "Actions" }, "404": "Aucune macro trouvée" }, diff --git a/app/javascript/dashboard/i18n/locale/fr/mfa.json b/app/javascript/dashboard/i18n/locale/fr/mfa.json index e540427ad..f9a59d131 100644 --- a/app/javascript/dashboard/i18n/locale/fr/mfa.json +++ b/app/javascript/dashboard/i18n/locale/fr/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/fr/report.json b/app/javascript/dashboard/i18n/locale/fr/report.json index 5c41536e9..8d610113d 100644 --- a/app/javascript/dashboard/i18n/locale/fr/report.json +++ b/app/javascript/dashboard/i18n/locale/fr/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Chargement des données du graphique ...", "NO_ENOUGH_DATA": "Nous n'avons pas reçu assez de points de données pour générer un rapport. Veuillez réessayer plus tard.", - "DOWNLOAD_AGENT_REPORTS": "Télécharger les rapports de l'agent", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Impossible de récupérer les données, veuillez réessayer ultérieurement.", "SUMMARY_FETCHING_FAILED": "Impossible de récupérer le résumé, veuillez réessayer plus tard.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Présentation des agents", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Chargement des données du graphique ...", "NO_ENOUGH_DATA": "Nous n'avons pas reçu assez de points de données pour générer un rapport. Veuillez réessayer plus tard.", "DOWNLOAD_AGENT_REPORTS": "Télécharger les rapports de l'agent", "FILTER_DROPDOWN_LABEL": "Sélectionner un agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Chercher des agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Nous n'avons pas reçu assez de points de données pour générer un rapport. Veuillez réessayer plus tard.", "DOWNLOAD_LABEL_REPORTS": "Télécharger les rapports d'étiquettes", "FILTER_DROPDOWN_LABEL": "Sélectionnez l'étiquette", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Rechercher des étiquettes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Sélectionner la boîte de réception", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Présentation de l'équipe", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Chargement des données du graphique ...", "NO_ENOUGH_DATA": "Nous n'avons pas reçu assez de points de données pour générer un rapport. Veuillez réessayer plus tard.", "DOWNLOAD_TEAM_REPORTS": "Télécharger les rapports d'équipe", "FILTER_DROPDOWN_LABEL": "Choisis une équipe", + "FILTERS": { + "ADD_FILTER": "Ajouter un filtre", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Chercher des équipes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Rapports CSAT", - "NO_RECORDS": "Il n'y a aucune réponse à l'enquête CSAT disponible.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Télécharger les rapports CSAT", "DOWNLOAD_FAILED": "Le téléchargement des rapports CSAT a échoué", "FILTERS": { + "ADD_FILTER": "Ajouter un filtre", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Chercher des agents", + "INBOXES": "Search inboxes", + "TEAMS": "Chercher des équipes", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choisissez des agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Boîte de réception" + }, + "TEAMS": { + "LABEL": "Équipes" + }, + "RATINGS": { + "LABEL": "Note" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Agent assigné", + "AGENT_NAME": "Agent", "RATING": "Note", - "FEEDBACK_TEXT": "Commentaire sur la rétroaction" - } + "FEEDBACK_TEXT": "Commentaire sur la rétroaction", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Réponses totales", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Taux de réponse", "TOOLTIP": "Nombre total de réponses / Nombre total de messages de l'enquête CSAT envoyés * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Enregistrer", + "CANCEL": "Annuler", + "SAVING": "Enregistrement en cours...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/fr/settings.json b/app/javascript/dashboard/i18n/locale/fr/settings.json index 1213d1fbe..15dceb726 100644 --- a/app/javascript/dashboard/i18n/locale/fr/settings.json +++ b/app/javascript/dashboard/i18n/locale/fr/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Télécharger", "UPLOADING": "Téléversement...", - "INSTAGRAM_STORY_UNAVAILABLE": "Cette Story n'est plus disponible." + "INSTAGRAM_STORY_UNAVAILABLE": "Cette Story n'est plus disponible.", + "INSTAGRAM_STORY_REPLY": "A répondu à votre histoire:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Afficher sur la carte" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Lire la documentation", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Fonctionnalités", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Facturation", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Rechercher des attributs" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Reprendre la conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Reprendre la conversation", + "CANCEL": "Annuler" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Oui", + "NO": "Non" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Oh oh ! Nous n'avons pas trouvé de compte Chatwoot. Veuillez créer un nouveau compte pour continuer.", "NEW_ACCOUNT": "Nouveau compte", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Annuler" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/fr/signup.json b/app/javascript/dashboard/i18n/locale/fr/signup.json index 64b2a5a1a..1d3aa0d4f 100644 --- a/app/javascript/dashboard/i18n/locale/fr/signup.json +++ b/app/javascript/dashboard/i18n/locale/fr/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Créer un compte", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Inscription", "TESTIMONIAL_HEADER": "Il suffit d'une étape pour avancer", "TESTIMONIAL_CONTENT": "Vous n'êtes plus qu'à un pas d'engager vos clients, de les fidéliser et d'en trouver de nouveaux.", diff --git a/app/javascript/dashboard/i18n/locale/fr/sla.json b/app/javascript/dashboard/i18n/locale/fr/sla.json index a864ed3c3..388265561 100644 --- a/app/javascript/dashboard/i18n/locale/fr/sla.json +++ b/app/javascript/dashboard/i18n/locale/fr/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/fr/snooze.json b/app/javascript/dashboard/i18n/locale/fr/snooze.json new file mode 100644 index 000000000..39ea74496 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/fr/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "heures", + "DAY": "jour", + "DAYS": "jours", + "WEEK": "jour", + "WEEKS": "weeks", + "MONTH": "semaine", + "MONTHS": "months", + "YEAR": "mois", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "suivant", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "demain", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "semaine prochaine", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "jour", + "DAY": "jour" + } +} diff --git a/app/javascript/dashboard/i18n/locale/fr/teamsSettings.json b/app/javascript/dashboard/i18n/locale/fr/teamsSettings.json index 8adba8b41..89e547718 100644 --- a/app/javascript/dashboard/i18n/locale/fr/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/fr/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Chercher des équipes...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Il n'y a aucune équipe créée sur ce compte.", "EDIT_TEAM": "Modifier l'équipe", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Impossible d'enregistrer les détails de l'équipe. Veuillez réessayer." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "COURRIEL", + "AGENT": "Agent", + "EMAIL": "Courriel", "BUTTON_TEXT": "Ajouter des agents", "ADD_AGENTS": "Ajout d'agents à votre équipe...", "SELECT": "sélectionner", diff --git a/app/javascript/dashboard/i18n/locale/he/agentBots.json b/app/javascript/dashboard/i18n/locale/he/agentBots.json index 0b527be34..a0787013f 100644 --- a/app/javascript/dashboard/i18n/locale/he/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/he/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "טוען עורך...", "DESCRIPTION": "בוטים של סוכנים הם כמו החברים הכי נפלאים בצוות שלכם. הם יכולים להתמודד עם הדברים הקטנים, כך שאתם יכולים להתמקד בדברים החשובים. נסו אותם. אתם יכולים לנהל את הבוטים שלכם מדף זה או ליצור חדשים באמצעות כפתור 'הוסף בוט'.", "LEARN_MORE": "למד על בוטי סוכנים", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "בוט מערכת", "GLOBAL_BOT_BADGE": "מערכת", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "טוען בוטים...", "TABLE_HEADER": { "DETAILS": "פרטי בוט", - "URL": "כתובת URL של ווב הוק" + "URL": "כתובת URL של ווב הוק", + "ACTIONS": "פעולות" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/he/agentMgmt.json b/app/javascript/dashboard/i18n/locale/he/agentMgmt.json index 7634f2309..777acd1fc 100644 --- a/app/javascript/dashboard/i18n/locale/he/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "מנהל", "AGENT": "סוכן" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "אין סוכנים המקושרים לחשבון זה", "TITLE": "נהל סוכנים בצוות שלך", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "לא ניתן להתחבר לשרת ווט, נסה שוב מאוחר יותר" } }, + "SEARCH_PLACEHOLDER": "חפש סוכנים...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "לא נמצאו תוצאות." }, diff --git a/app/javascript/dashboard/i18n/locale/he/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/he/attributesMgmt.json index 024b7056d..8dbf88721 100644 --- a/app/javascript/dashboard/i18n/locale/he/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "טוען מאפיינים מותאמים אישית", "DESCRIPTION": "מאפיין מותאם אישית עוקב אחר פרטים נוספים על אנשי הקשר או השיחות שלך—כגון תוכנית המנוי או תאריך הרכישה הראשונה שלהם. אתה יכול להוסיף סוגים שונים של מאפיינים מותאמים אישית, כגון טקסט, רשימות או מספרים, כדי ללכוד את המידע הספציפי שאתה צריך.", "LEARN_MORE": "למד עוד על מאפיינים מותאמים אישית", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "חפש מאפיין...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "שיחה", "CONTACT": "איש קשר" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "אפשר אימות regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/he/automation.json b/app/javascript/dashboard/i18n/locale/he/automation.json index ecb982c08..c93ce37ad 100644 --- a/app/javascript/dashboard/i18n/locale/he/automation.json +++ b/app/javascript/dashboard/i18n/locale/he/automation.json @@ -3,8 +3,11 @@ "HEADER": "אוטומציה", "DESCRIPTION": "אוטומציה יכולה להחליף ולזרז תהליכים קיימים שדורשים מאמץ ידני, כגון הוספת תוויות והקצאת שיחות לסוכן המתאים ביותר. זה מאפשר לצוות להתמקד בחוזקות שלו תוך כדי הפחתת הזמן המושקע במשימות שגרתיות.", "LEARN_MORE": "למד עוד על אוטומציה", - "HEADER_BTN_TXT": "הוסף כלל אוטומציה", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "טוען כללי אוטומציה", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "הוסף כלל אוטומציה", "SUBMIT": "צור", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "שם", - "DESCRIPTION": "תיאור", "ACTIVE": "פעיל", - "CREATED_ON": "נוצר ב" + "CREATED_ON": "נוצר ב", + "ACTIONS": "פעולות" }, "404": "לא נמצאו כללי אוטומציה" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "הוסף הערה פרטית", "CHANGE_PRIORITY": "שנה עדיפות", "ADD_SLA": "הוסף SLA", - "OPEN_CONVERSATION": "פתח שיחה" + "OPEN_CONVERSATION": "פתח שיחה", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "הודעה נכנסת", diff --git a/app/javascript/dashboard/i18n/locale/he/bulkActions.json b/app/javascript/dashboard/i18n/locale/he/bulkActions.json index 183f1bf6b..f975ff9a2 100644 --- a/app/javascript/dashboard/i18n/locale/he/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/he/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "סטאטוס השיחה שונה בהצלחה.", "UPDATE_FAILED": "העדכון של השיחות נכשל. אנא נסה שוב." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "הקצה תוויות", "NO_LABELS_FOUND": "לא נמצאו תוויות", diff --git a/app/javascript/dashboard/i18n/locale/he/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/he/cannedMgmt.json index 6b770ef07..990f3c7af 100644 --- a/app/javascript/dashboard/i18n/locale/he/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "תגובות מוכנות", "LEARN_MORE": "למד עוד על תגובות שמורות", "DESCRIPTION": "תגובות מוכנות הן תבניות תשובה כתובות מראש שמסייעות לך להגיב במהירות לשיחה. סוכנים יכולים להקליד את התו '/' ואחריו קוד מקוצר כדי להכניס תגובה מוכנה במהלך השיחה. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "הוסף תגובה שמורה", "LOADING": "מאחזר תגובות שמורות...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "אין פריטים התואמים לשאילתה זו.", "LIST": { "404": "אין תגובות מוכנות זמינות בחשבון זה.", diff --git a/app/javascript/dashboard/i18n/locale/he/chatlist.json b/app/javascript/dashboard/i18n/locale/he/chatlist.json index 7fd79b796..13235c5b5 100644 --- a/app/javascript/dashboard/i18n/locale/he/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/he/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "ממתין לתגובה: הקצר ביותר תחילה" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/he/contact.json b/app/javascript/dashboard/i18n/locale/he/contact.json index 055508590..af89a1f60 100644 --- a/app/javascript/dashboard/i18n/locale/he/contact.json +++ b/app/javascript/dashboard/i18n/locale/he/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "הוסף אינסטגרם" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "אין אנשי קשר שתואמים לחיפוש שלך 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "טען עוד" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "הקצה תוויות", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "אין תיבות דואר נכנס זמינות כדי להתחיל שיחה עם איש קשר זה.", "CONTACT_SELECTOR": { "LABEL": "אל:", - "TAG_INPUT_PLACEHOLDER": "חפש איש קשר לפי שם, דוא\"ל או מספר טלפון", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "יוצר איש קשר..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "נושא :", "SUBJECT_PLACEHOLDER": "הזן את נושא הדוא\"ל שלך כאן", "CC_LABEL": "עותק:", - "CC_PLACEHOLDER": "חפש איש קשר לפי כתובת הדוא\"ל שלו", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "עותק מוסתר:", - "BCC_PLACEHOLDER": "חפש איש קשר לפי כתובת הדוא\"ל שלו", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "עותק מוסתר" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/he/conversation.json b/app/javascript/dashboard/i18n/locale/he/conversation.json index f4c1cd3c1..1bd688522 100644 --- a/app/javascript/dashboard/i18n/locale/he/conversation.json +++ b/app/javascript/dashboard/i18n/locale/he/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "הודעה זו אינה נתמכת. תוכל לצפות בהודעה זו באפליקציית Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "הודעה זו אינה נתמכת. תוכל לצפות בהודעה זו באפליקציית Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "ההודעה נמחקה בהצלחה", "FAIL_DELETE_MESSSAGE": "לא ניתן למחוק את ההודעה! נסה שוב", "NO_RESPONSE": "אין תגובה", @@ -173,6 +174,10 @@ "SUCCESFUL": "הוקצתה תווית #{labelName} לשיחה מזהה {conversationId}", "FAILED": "לא ניתן לקשר שורה. אנא נסו שנית" }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "הצוות {team} קושר לשיחה מספר {conversationId}", "FAILED": "השמה לצוות לא הצליחה, בבקשה נסה שנית." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "נטרל חתימה", "MSG_INPUT": "Shift + Enter עבור שורה חדשה. התחל עם '/' כדי לבחור תגובה מוכנה.", "PRIVATE_MSG_INPUT": "Shift + Enter עבור שורה חדשה. זה יהיה גלוי רק לסוכנים", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "חתימת הודעה אינה מוגדרת, נא הגדר אותה בהגדרות הפרופיל.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "לחץ כאן כדי לעדכן", "WHATSAPP_TEMPLATES": "תבניות וואטסאפ" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "גרור ושחרר כאן להוספת קובץ מצורף", "START_AUDIO_RECORDING": "התחל הקלטת אודיו", "STOP_AUDIO_RECORDING": "עצור הקלטת אודיו", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "אל", "ADD_BCC": "הוסף bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "השיחה נמחקה בהצלחה", "FAIL_DELETE_CONVERSATION": "לא ניתן למחוק את השיחה! נסה שוב", "FILE_SIZE_LIMIT": "הקובץ גדול מ{MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE}MB מגבלת העלאה", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "לא ניתן לשלוח הודעה, אנא נסה שוב מאוחר יותר", "SENT_BY": "נשלח על ידי:", "BOT": "בוט", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "לא ניתן לשלוח הודעה! נסה שוב", "TRY_AGAIN": "נסה שוב", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "ביטול", "SEND_EMAIL_SUCCESS": "תמליל השיחה נשלח בהצלחה", "SEND_EMAIL_ERROR": "היתה שגיאה, בקשה נסה שוב", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "שלח תמליל ללקוח", "SEND_TO_AGENT": "שלח תמליל לסוכן המשוייך לשיחה", diff --git a/app/javascript/dashboard/i18n/locale/he/customRole.json b/app/javascript/dashboard/i18n/locale/he/customRole.json index 0be63e3b8..1aac4e5ce 100644 --- a/app/javascript/dashboard/i18n/locale/he/customRole.json +++ b/app/javascript/dashboard/i18n/locale/he/customRole.json @@ -3,8 +3,11 @@ "HEADER": "תפקידים מותאמים אישית", "LEARN_MORE": "למד עוד על תפקידים מותאמים אישית", "DESCRIPTION": "תפקידים מותאמים אישית הם תפקידים שנוצרים על ידי הבעלים או המנהל של החשבון. ניתן להקצות תפקידים אלה לסוכנים כדי להגדיר את הגישה וההרשאות שלהם בתוך החשבון. ניתן ליצור תפקידים מותאמים אישית עם הרשאות ורמות גישה ספציפיות שיתאימו לדרישות הארגון.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "הוסף תפקיד מותאם אישית", "LOADING": "מאחזר תפקידים מותאמים אישית...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "אין פריטים התואמים לשאילתה זו.", "PAYWALL": { "TITLE": "שדרג כדי ליצור תפקידים מותאמים אישית", diff --git a/app/javascript/dashboard/i18n/locale/he/datePicker.json b/app/javascript/dashboard/i18n/locale/he/datePicker.json index 0e8b27080..0d96f7fb8 100644 --- a/app/javascript/dashboard/i18n/locale/he/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/he/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "להגיש מועמדות", "CLEAR_BUTTON": "נקה", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "3 החודשים האחרונים", "LAST_6_MONTHS": "6 החודשים האחרונים", "LAST_YEAR": "שנה שעברה", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "החודש", "CUSTOM_RANGE": "טווח תאריכים מותאם אישית" } } diff --git a/app/javascript/dashboard/i18n/locale/he/general.json b/app/javascript/dashboard/i18n/locale/he/general.json index 03b74a08f..e0bff0379 100644 --- a/app/javascript/dashboard/i18n/locale/he/general.json +++ b/app/javascript/dashboard/i18n/locale/he/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "סגור", "BETA": "בטא", - "BETA_DESCRIPTION": "תכונה זו נמצאת בגרסת בטא ועשויה להשתנות ככל שנשפר אותה." + "BETA_DESCRIPTION": "תכונה זו נמצאת בגרסת בטא ועשויה להשתנות ככל שנשפר אותה.", + "ACCEPT": "Accept", + "DISCARD": "בטל", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "כן", + "NO": "לא" } } diff --git a/app/javascript/dashboard/i18n/locale/he/generalSettings.json b/app/javascript/dashboard/i18n/locale/he/generalSettings.json index ca14e8968..b0e4747a7 100644 --- a/app/javascript/dashboard/i18n/locale/he/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/he/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "חפש או קפוץ ל", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "כללי", "REPORTS": "דוחות", diff --git a/app/javascript/dashboard/i18n/locale/he/helpCenter.json b/app/javascript/dashboard/i18n/locale/he/helpCenter.json index 0cf481180..fedc6ab6f 100644 --- a/app/javascript/dashboard/i18n/locale/he/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/he/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "שגיאה בעת מחיקת מאמר" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "אנא הוסף את כותרת המאמר והתוכן ואז רק אתה יכול לעדכן את ההגדרות" }, diff --git a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json index 4ed1ec7bb..bc556fa06 100644 --- a/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "תיבות דואר נכנס", "DESCRIPTION": "ערוץ הוא אמצעי התקשורת שלקוח שלך בוחר כדי ליצור איתך אינטראקציה. תיבת דואר נכנס היא המקום שבו אתה מנהל אינטראקציות עבור ערוץ ספציפי. היא יכולה לכלול תקשורת ממקורות שונים כגון דוא\"ל, צ'אט חי ומדיה חברתית.", "LEARN_MORE": "למד עוד על תיבות דואר נכנס", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "תיבת הדואר הנכנס שלך מנותקת. לא תקבל הודעות חדשות עד שתאשר אותה מחדש.", "CLICK_TO_RECONNECT": "לחץ כאן כדי להתחבר מחדש.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "השתמש רק בשם העסק שהוגדר כשם השולח בכותרת הדוא\"ל." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ הגדר את שם העסק שלך", + "BUTTON_TEXT": "הגדר את שם העסק שלך", "PLACEHOLDER": "הזן את שם העסק שלך", "SAVE_BUTTON_TEXT": "שמור" } @@ -589,8 +592,10 @@ "DISABLED": "כבוי" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "מופעל", - "DISABLED": "כבוי" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "אפשר" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "תקינות חשבון", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "נהל את חשבון WhatsApp שלך", "DESCRIPTION": "סקור את מצב חשבון WhatsApp שלך, מגבלות הודעות ואיכות. עדכן הגדרות או פתור בעיות במידת הצורך", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "אפשר המשך שיחה באמצעות הדוא\"ל", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "שיחות ימשיכו באמצעות הדוא\"ל אם לאיש הקשר קיימת כתובת דוא\"ל תקנית.", - "LOCK_TO_SINGLE_CONVERSATION": "נעל לשיחה בודדת", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "הפעל או השבת מספר שיחות עבור אותו איש קשר בתיבת הדואר הנכנס הזו", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "הגדרות תיבת דואר נכנס", "INBOX_UPDATE_SUB_TEXT": "עדכן את הגדרות תיבת הדואר הנכנס שלך", "AUTO_ASSIGNMENT_SUB_TEXT": "אפשר או השבת את ההקצאה האוטומטית של שיחות חדשות לסוכנים שנוספו לתיבת הדואר הנכנס הזו.", @@ -758,6 +765,7 @@ "LABEL": "מרכז עזרה", "PLACEHOLDER": "בחר מרכז עזרה", "SELECT_PLACEHOLDER": "בחר מרכז עזרה", + "NONE": "כלום", "REMOVE": "הסר מרכז עזרה", "SUB_TEXT": "צרף מרכז עזרה לתיבת הדואר הנכנס" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "אנא הזן ערך גדול מ-0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "הגבלת המספר המרבי של שיחות מתיבת הדואר הנכנס הזו שניתן להקצות אוטומטית לסוכן" }, + "ASSIGNMENT": { + "TITLE": "שיוך שיחה", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "מחק מדיניות", + "POLICY_LABEL": "מדיניות הקצאה", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "פעיל", + "INACTIVE": "לא פעיל" + }, + "PRIORITY": { + "EARLIEST_CREATED": "נוצר מוקדם ביותר", + "LONGEST_WAITING": "המתנה הארוכה ביותר" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin (סבב)", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "לא נמצאו מדיניות הקצאה", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "ביטול", + "CONFIRM_DELETE": "מחק", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "הרשאה מחדש", "SUBTITLE": "פג תוקף החיבור שלך לפייסבוק, אנא חבר מחדש את דף הפייסבוק שלך כדי להמשיך בשירותים", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "חזור" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "כלל סקר", "DESCRIPTION_PREFIX": "שלח את הסקר אם השיחה", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "בחר תוויות" }, "NOTE": "הערה: סקרי CSAT נשלחים פעם אחת בלבד לכל שיחה", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "הגדרות CSAT עודכנו בהצלחה", "ERROR_MESSAGE": "לא הצלחנו לעדכן את הגדרות CSAT. אנא נסה שוב מאוחר יותר." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "הודעה לא זמינה למבקרים", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "יום", + "AVAILABILITY": "זמינות", + "HOURS": "שעות", "ENABLE": "אפשר זמינות ליום זה", "UNAVAILABLE": "אינו זמין", - "HOURS": "שעות", "VALIDATION_ERROR": "שעת ההתחלה צריכה להיות לפני שעת הסגירה.", "CHOOSE": "בחר" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "ביום" }, "WIDGET_COLOR_LABEL": "צבע יישומון", - "WIDGET_BUBBLE_POSITION_LABEL": "מיקום בועת יישומון", - "WIDGET_BUBBLE_TYPE_LABEL": "סוג בועת יישומון", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "סוג:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "דבר איתנו", - "LABEL": "כותרת מפעיל בועות יישומון", + "LABEL": "Launcher Title", "PLACE_HOLDER": "דבר איתנו" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "ברירת מחדל", - "CHAT": "צ'אט" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "זמן מענה טיפוסי תוך כמה דקות", diff --git a/app/javascript/dashboard/i18n/locale/he/integrationApps.json b/app/javascript/dashboard/i18n/locale/he/integrationApps.json index c54067a30..571b85e4a 100644 --- a/app/javascript/dashboard/i18n/locale/he/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/he/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "שליפת אינטגרציות", "NO_HOOK_CONFIGURED": "אין {integrationId} אינטגרציות מוגדרות בחשבון זה.", "HEADER": "יישומים", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "חיפוש...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "מופעל", "DISABLED": "כבוי" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "הוצאת קרס אינטגרציה", "INBOX": "תיבת הדואר הנכנס", + "ACTIONS": "פעולות", "DELETE": { "BUTTON_TEXT": "מחק" } diff --git a/app/javascript/dashboard/i18n/locale/he/integrations.json b/app/javascript/dashboard/i18n/locale/he/integrations.json index 59a69cc27..0dca2241c 100644 --- a/app/javascript/dashboard/i18n/locale/he/integrations.json +++ b/app/javascript/dashboard/i18n/locale/he/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "מחק אינטגרציה של Shopify", "MESSAGE": "האם אתה בטוח שברצונך למחוק את האינטגרציה של Shopify?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot משתלב עם כלים ושירותים מרובים כדי לשפר את יעילות הצוות שלך. חקור את הרשימה למטה כדי להגדיר את האפליקציות המועדפות עליך.", "LEARN_MORE": "למד עוד על אינטגרציות", "LOADING": "מאחזר אינטגרציות", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain אינו מופעל בחשבונך.", "CLICK_HERE_TO_CONFIGURE": "לחץ כאן כדי להגדיר", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "אירועים מנויים", "LEARN_MORE": "למד עוד על Webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "ביטול", "DESC": "אירועי Webhook מספקים לך מידע בזמן אמת על מה שקורה בחשבון Chatwoot שלך. אנא הזן כתובת אתר חוקית כדי להגדיר התקשרות חוזרת.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "מחק", "DELETE_CONFIRMATION": { "TITLE": "מחק את האינטגרציה", @@ -145,7 +160,29 @@ "EXPAND": "הרחב", "MAKE_FRIENDLY": "שנה את טון ההודעה לידידותי", "MAKE_FORMAL": "השתמש בטון רשמי", - "SIMPLIFY": "פשט" + "SIMPLIFY": "פשט", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "מקצועי", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "ידידותי" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "טיוטת תוכן", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

אפליקציות לוח מחוונים

אפליקציות לוח מחוונים מאפשרות לארגונים להטמיע אפליקציה בתוך לוח המחוונים של Chatwoot כדי לספק את ההקשר לסוכני תמיכת לקוחות. תכונה זו מאפשרת לך ליצור אפליקציה באופן עצמאי ולהטמיע אותה בתוך לוח המחוונים כדי לספק מידע על המשתמש, ההזמנות שלו או היסטוריית התשלומים הקודמת שלו.

כאשר תטמיע את האפליקציה שלך באמצעות לוח המחוונים ב-Chatwoot, האפליקציה שלך תהיה קבל את ההקשר של השיחה והקשר כאירוע חלון. הטמיע מאזין לאירוע ההודעה בדף שלך כדי לקבל את ההקשר.

כדי להוסיף אפליקציית לוח מחוונים חדשה, לחץ על הלחצן 'הוסף אפליקציית לוח מחוונים חדשה'.

", "DESCRIPTION": "אפליקציות לוח מחוונים מאפשרות לארגונים להטמיע אפליקציה בתוך לוח המחוונים כדי לספק את ההקשר לסוכני תמיכת לקוחות. תכונה זו מאפשרת לך ליצור אפליקציה באופן עצמאי ולהטמיע אותה כדי לספק מידע על המשתמש, ההזמנות שלהם או היסטוריית התשלומים הקודמת שלהם.", "LEARN_MORE": "למד עוד על אפליקציות לוח מחוונים", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "אין עדיין אפליקציות לוח מחוונים מוגדרות בחשבון זה", "LOADING": "מביא אפליקציות לוח מחוונים...", "TABLE_HEADER": { "NAME": "שם", - "ENDPOINT": "נקודת קצה" + "ENDPOINT": "נקודת קצה", + "ACTIONS": "פעולות" }, "EDIT_TOOLTIP": "ערוך אפליקציה", "DELETE_TOOLTIP": "מחק אפליקציה" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "מאחזר בעיות Linear...", "LOADING_ERROR": "אירעה שגיאה באחזור בעיות Linear, אנא נסה שוב", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "האם אתה בטוח שברצונך למחוק את האינטגרציה של Notion?", "MESSAGE": "מחיקת אינטגרציה זו תסיר את הגישה למרחב העבודה שלך ב-Notion ותפסיק את כל הפונקציונליות הקשורה.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "תוכל לשנות או לבטל את התוכנית שלך בכל עת" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "שדרג את התוכנית שלך כדי לקבל גישה לעוזרים שלנו, ל-Copilot ועוד.", "ASK_ADMIN": "אנא פנה למנהל המערכת שלך לצורך השדרוג." }, diff --git a/app/javascript/dashboard/i18n/locale/he/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/he/labelsMgmt.json index 493613e41..d1317bfb7 100644 --- a/app/javascript/dashboard/i18n/locale/he/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/he/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "מביא תוויות", "DESCRIPTION": "תוויות עוזרות לך לסווג ולתעדף שיחות ולידים. תוכל להקצות תווית לשיחה או לאיש קשר באמצעות החלונית הצדדית.", "LEARN_MORE": "למד עוד על תוויות", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "חפש תוויות...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "אין פריטים התואמים לשאילתה זו", "LIST": { "404": "אין תוויות זמינות בחשבון זה.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "שם", "DESCRIPTION": "תיאור", - "COLOR": "צֶבַע" + "COLOR": "צֶבַע", + "ACTION": "פעולות" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/he/macros.json b/app/javascript/dashboard/i18n/locale/he/macros.json index 30f33615a..41365acd0 100644 --- a/app/javascript/dashboard/i18n/locale/he/macros.json +++ b/app/javascript/dashboard/i18n/locale/he/macros.json @@ -3,9 +3,12 @@ "HEADER": "מאקרו", "DESCRIPTION": "מאקרו הוא קבוצה של פעולות שמורות המסייעות לסוכני שירות לקוחות להשלים משימות בקלות. הסוכנים יכולים להגדיר קבוצה של פעולות כמו תיוג שיחה בתווית, שליחת תמלול דוא\"ל, עדכון תכונה מותאמת אישית וכו', והם יכולים להפעיל פעולות אלה בלחיצה אחת.", "LEARN_MORE": "למד עוד על מאקרואים", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "הוסף מאקרו חדש", "HEADER_BTN_TXT_SAVE": "שמור מאקרו", "LOADING": "מביא פקודות מאקרו", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "משהו השתבש. אנא נסה שוב", "ORDER_INFO": "פקודות מאקרו יפעלו לפי הסדר שתוסיף את הפעולות שלך. תוכל לסדר אותם מחדש על ידי גרירתם על ידי הידית לצד כל צומת.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "שם", "CREATED BY": "נוצר על ידי", "LAST_UPDATED_BY": "עודכן לאחרונה על ידי", - "VISIBILITY": "רְאוּת" + "VISIBILITY": "רְאוּת", + "ACTIONS": "פעולות" }, "404": "לא נמצאו פקודות מאקרו" }, diff --git a/app/javascript/dashboard/i18n/locale/he/mfa.json b/app/javascript/dashboard/i18n/locale/he/mfa.json index 90cb31404..0533cf425 100644 --- a/app/javascript/dashboard/i18n/locale/he/mfa.json +++ b/app/javascript/dashboard/i18n/locale/he/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "סטטוס אימות", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/he/report.json b/app/javascript/dashboard/i18n/locale/he/report.json index 57b4311c3..a80c5bee4 100644 --- a/app/javascript/dashboard/i18n/locale/he/report.json +++ b/app/javascript/dashboard/i18n/locale/he/report.json @@ -3,7 +3,7 @@ "HEADER": "שיחות", "LOADING_CHART": "טוען נתוני תרשים...", "NO_ENOUGH_DATA": "לא קיבלנו מספיק נקודות נתונים כדי להפיק דוח, אנא נסה שוב מאוחר יותר.", - "DOWNLOAD_AGENT_REPORTS": "הורד דוחות סוכן", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "אחזור הנתונים נכשל, אנא נסה שוב מאוחר יותר.", "SUMMARY_FETCHING_FAILED": "אחזור הסיכום נכשל, אנא נסה שוב מאוחר יותר.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "סקירה כללית של סוכנים", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "טוען נתוני תרשים...", "NO_ENOUGH_DATA": "לא קיבלנו מספיק נקודות נתונים כדי להפיק דוח, אנא נסה שוב מאוחר יותר.", "DOWNLOAD_AGENT_REPORTS": "הורד דוחות סוכן", "FILTER_DROPDOWN_LABEL": "בחר סוכן", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "חפש סוכנים" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "שיחות", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "לא קיבלנו מספיק נקודות נתונים כדי להפיק דוח, אנא נסה שוב מאוחר יותר.", "DOWNLOAD_LABEL_REPORTS": "הורד דוחות תווית", "FILTER_DROPDOWN_LABEL": "בחר תווית", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "חפש תוויות" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "שיחות", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "בחר תיבת דואר", "ALL_INBOXES": "כל תיבות הדואר הנכנס", "SEARCH_INBOX": "חפש תיבת דואר נכנס", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "שיחות", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "סקירת צוות", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "טוען נתוני תרשים...", "NO_ENOUGH_DATA": "לא קיבלנו מספיק נקודות נתונים כדי להפיק דוח, אנא נסה שוב מאוחר יותר.", "DOWNLOAD_TEAM_REPORTS": "הורד דוחות צוות", "FILTER_DROPDOWN_LABEL": "תבחר קבוצה", + "FILTERS": { + "ADD_FILTER": "הוסף מסנן", + "CLEAR_ALL": "נקה הכל", + "NO_FILTER": "אין מסננים זמינים", + "INPUT_PLACEHOLDER": { + "TEAMS": "חפש צוותים" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "שיחות", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "דוחות CSAT", - "NO_RECORDS": "אין תשובות לסקר CSAT זמינות.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "הורד דוחות CSAT", "DOWNLOAD_FAILED": "הורדת דוחות CSAT נכשלה", "FILTERS": { + "ADD_FILTER": "הוסף מסנן", + "CLEAR_ALL": "נקה הכל", + "NO_FILTER": "אין מסננים זמינים", + "INPUT_PLACEHOLDER": { + "AGENTS": "חפש סוכנים", + "INBOXES": "Search inboxes", + "TEAMS": "חפש צוותים", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "בחר סוכנים" + "LABEL": "סוכן" + }, + "INBOXES": { + "LABEL": "תיבת הדואר הנכנס" + }, + "TEAMS": { + "LABEL": "צוות" + }, + "RATINGS": { + "LABEL": "דירוג" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "איש קשר", - "AGENT_NAME": "סוכן מוקצה", + "AGENT_NAME": "סוכן", "RATING": "דירוג", - "FEEDBACK_TEXT": "הערת משוב" - } + "FEEDBACK_TEXT": "הערת משוב", + "CONVERSATION": "שיחה", + "CUSTOMER": "Customer", + "RESPONSE": "תגובה", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "סה\"כ תגובות", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "שיעור תגובה", "TOOLTIP": "מספר כולל של תגובות / מספר כולל של הודעות סקר CSAT שנשלחו * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "שמור", + "CANCEL": "ביטול", + "SAVING": "שומר...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "שדרג עכשיו", + "CANCEL_ANYTIME": "תוכל לשנות או לבטל את התוכנית שלך בכל עת" } } }, diff --git a/app/javascript/dashboard/i18n/locale/he/settings.json b/app/javascript/dashboard/i18n/locale/he/settings.json index a6a8c6ff1..317e096e6 100644 --- a/app/javascript/dashboard/i18n/locale/he/settings.json +++ b/app/javascript/dashboard/i18n/locale/he/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "הורד", "UPLOADING": "מעלה...", - "INSTAGRAM_STORY_UNAVAILABLE": "הסיפור הזה כבר לא זמין." + "INSTAGRAM_STORY_UNAVAILABLE": "הסיפור הזה כבר לא זמין.", + "INSTAGRAM_STORY_REPLY": "השיב/ה לסטורי שלך:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "ראה במפה" @@ -378,7 +379,57 @@ "INFO_SHORT": "סמן אוטומטית כלא מקוון כאשר אינך משתמש באפליקציה." }, "DOCS": "קרא מסמכים", - "SECURITY": "אבטחה" + "SECURITY": "אבטחה", + "CAPTAIN_AI": "קפטן", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "עוזר", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "מאפיינים", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "חיוב", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "חפש מאפיין" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "פתור את השיחה", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "פתור את השיחה", + "CANCEL": "ביטול" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "בחר אפשרות" + }, + "CHECKBOX": { + "YES": "כן", + "NO": "לא" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "שדרג עכשיו", + "CANCEL_ANYTIME": "תוכל לשנות או לבטל את התוכנית שלך בכל עת" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "אנא פנה למנהל המערכת שלך לצורך השדרוג." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "אה הו! לא הצלחנו למצוא חשבונות Chatwoot. נא ליצור חשבון חדש כדי להמשיך.", "NEW_ACCOUNT": "חשבון חדש", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "צור מדיניות", "API": { "SUCCESS_MESSAGE": "מדיניות ההקצאה נוצרה בהצלחה", - "ERROR_MESSAGE": "יצירת מדיניות ההקצאה נכשלה" + "ERROR_MESSAGE": "יצירת מדיניות ההקצאה נכשלה", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "המשך", "CANCEL_BUTTON_LABEL": "ביטול" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "מדיניות ההקצאה עודכנה בהצלחה", "ERROR_MESSAGE": "עדכון מדיניות ההקצאה נכשל" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "מאוזן", - "DESCRIPTION": "הקצה שיחות על בסיס קיבולת זמינה." + "DESCRIPTION": "הקצה שיחות על בסיס קיבולת זמינה.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "הסוכן הוסר מהמדיניות בהצלחה", "ERROR_MESSAGE": "הסרת הסוכן מהמדיניות נכשלה" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/he/signup.json b/app/javascript/dashboard/i18n/locale/he/signup.json index 0755f7768..702b7be96 100644 --- a/app/javascript/dashboard/i18n/locale/he/signup.json +++ b/app/javascript/dashboard/i18n/locale/he/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "צור חשבון", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "הירשם", "TESTIMONIAL_HEADER": "כל מה שצריך זה צעד אחד כדי להתקדם", "TESTIMONIAL_CONTENT": "אתה במרחק צעד אחד מלהפעיל את הלקוחות שלך, לשמר אותם ולמצוא חדשים.", diff --git a/app/javascript/dashboard/i18n/locale/he/sla.json b/app/javascript/dashboard/i18n/locale/he/sla.json index 5bc4a25de..ad95b92fa 100644 --- a/app/javascript/dashboard/i18n/locale/he/sla.json +++ b/app/javascript/dashboard/i18n/locale/he/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "צור מדיניות SLA חדשה", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "למד עוד על SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "מאחזר SLA", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "שדרג כדי ליצור SLA", "AVAILABLE_ON": "תכונת SLA זמינה רק בתוכניות Business ו-Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "אין SLA זמין בחשבון זה.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "בעיות שהועלו על ידי לקוחות Enterprise, הדורשות תשומת לב מיידית.", "TITLE_2": "Enterprise P1", "DESC_2": "בעיות שהועלו על ידי לקוחות Enterprise, שיש לאשר במהירות." }, - "BUSINESS_HOURS_ON": "שעות פעילות מופעלות", - "BUSINESS_HOURS_OFF": "שעות פעילות מושבתות", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "סף זמן תגובה ראשונה", "NRT": "סף זמן תגובה הבאה", diff --git a/app/javascript/dashboard/i18n/locale/he/snooze.json b/app/javascript/dashboard/i18n/locale/he/snooze.json new file mode 100644 index 000000000..358275d42 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/he/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "דקות", + "HOUR": "hour", + "HOURS": "שעות", + "DAY": "יום", + "DAYS": "ימים", + "WEEK": "יום", + "WEEKS": "weeks", + "MONTH": "שבוע", + "MONTHS": "months", + "YEAR": "חודש", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "מחר", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "שבוע הבא", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "מתוך", + "AFTER": "after", + "WEEK": "יום", + "DAY": "יום" + } +} diff --git a/app/javascript/dashboard/i18n/locale/he/teamsSettings.json b/app/javascript/dashboard/i18n/locale/he/teamsSettings.json index 16785a0b7..3fdaa1e68 100644 --- a/app/javascript/dashboard/i18n/locale/he/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/he/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "מאחזר צוותים", "DESCRIPTION": "צוותים מאפשרים לך לארגן סוכנים לקבוצות על בסיס תחומי האחריות שלהם. סוכן יכול להשתייך למספר צוותים. בעבודה שיתופית, תוכל להקצות שיחות לצוותים ספציפיים.", "LEARN_MORE": "למד עוד על צוותים", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "חפש צוותים...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "לא נוצרו צוותים בחשבון זה.", "EDIT_TEAM": "ערוך צוות", @@ -65,7 +68,7 @@ }, "AGENTS": { "AGENT": "סוכן", - "EMAIL": "מייל", + "EMAIL": "אימייל", "BUTTON_TEXT": "הוסף נציגים", "ADD_AGENTS": "הוספת סוכנים לצוות שלך...", "SELECT": "בחר", diff --git a/app/javascript/dashboard/i18n/locale/hi/agentBots.json b/app/javascript/dashboard/i18n/locale/hi/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/hi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hi/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/hi/agentMgmt.json b/app/javascript/dashboard/i18n/locale/hi/agentMgmt.json index a1356f425..c90a429aa 100644 --- a/app/javascript/dashboard/i18n/locale/hi/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/hi/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/hi/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/hi/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/hi/automation.json b/app/javascript/dashboard/i18n/locale/hi/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/hi/automation.json +++ b/app/javascript/dashboard/i18n/locale/hi/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/hi/bulkActions.json b/app/javascript/dashboard/i18n/locale/hi/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/hi/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/hi/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/hi/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/hi/cannedMgmt.json index 3bc60c569..05c05c0c6 100644 --- a/app/javascript/dashboard/i18n/locale/hi/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/hi/chatlist.json b/app/javascript/dashboard/i18n/locale/hi/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/hi/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/hi/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/hi/contact.json b/app/javascript/dashboard/i18n/locale/hi/contact.json index cd188d027..b69f88a97 100644 --- a/app/javascript/dashboard/i18n/locale/hi/contact.json +++ b/app/javascript/dashboard/i18n/locale/hi/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/hi/conversation.json b/app/javascript/dashboard/i18n/locale/hi/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/hi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hi/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/hi/customRole.json b/app/javascript/dashboard/i18n/locale/hi/customRole.json index 1f397424d..6c9b164fc 100644 --- a/app/javascript/dashboard/i18n/locale/hi/customRole.json +++ b/app/javascript/dashboard/i18n/locale/hi/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/hi/datePicker.json b/app/javascript/dashboard/i18n/locale/hi/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/hi/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/hi/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/hi/general.json b/app/javascript/dashboard/i18n/locale/hi/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/hi/general.json +++ b/app/javascript/dashboard/i18n/locale/hi/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json index 5f278fef9..e97d8bc55 100644 --- a/app/javascript/dashboard/i18n/locale/hi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hi/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/hi/helpCenter.json b/app/javascript/dashboard/i18n/locale/hi/helpCenter.json index 328ab88f4..e7384d963 100644 --- a/app/javascript/dashboard/i18n/locale/hi/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/hi/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json index e4acfe9a0..e9591e182 100644 --- a/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/hi/integrationApps.json b/app/javascript/dashboard/i18n/locale/hi/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/hi/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/hi/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/hi/integrations.json b/app/javascript/dashboard/i18n/locale/hi/integrations.json index c4d915418..90a04a797 100644 --- a/app/javascript/dashboard/i18n/locale/hi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hi/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/hi/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/hi/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/hi/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hi/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hi/macros.json b/app/javascript/dashboard/i18n/locale/hi/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/hi/macros.json +++ b/app/javascript/dashboard/i18n/locale/hi/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/hi/mfa.json b/app/javascript/dashboard/i18n/locale/hi/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/hi/mfa.json +++ b/app/javascript/dashboard/i18n/locale/hi/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/hi/report.json b/app/javascript/dashboard/i18n/locale/hi/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/hi/report.json +++ b/app/javascript/dashboard/i18n/locale/hi/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/hi/settings.json b/app/javascript/dashboard/i18n/locale/hi/settings.json index 6b94a34f1..805ffee46 100644 --- a/app/javascript/dashboard/i18n/locale/hi/settings.json +++ b/app/javascript/dashboard/i18n/locale/hi/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hi/signup.json b/app/javascript/dashboard/i18n/locale/hi/signup.json index aa96873e1..746ca0999 100644 --- a/app/javascript/dashboard/i18n/locale/hi/signup.json +++ b/app/javascript/dashboard/i18n/locale/hi/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/hi/sla.json b/app/javascript/dashboard/i18n/locale/hi/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/hi/sla.json +++ b/app/javascript/dashboard/i18n/locale/hi/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/hi/snooze.json b/app/javascript/dashboard/i18n/locale/hi/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/hi/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/hi/teamsSettings.json b/app/javascript/dashboard/i18n/locale/hi/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/hi/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/hi/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/hr/agentBots.json b/app/javascript/dashboard/i18n/locale/hr/agentBots.json index 545a7a57e..018cfee80 100644 --- a/app/javascript/dashboard/i18n/locale/hr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hr/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Otvaranje Editora...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Dohvat Botova...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Radnje" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/hr/agentMgmt.json b/app/javascript/dashboard/i18n/locale/hr/agentMgmt.json index ba6eceeda..87d8fe921 100644 --- a/app/javascript/dashboard/i18n/locale/hr/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/hr/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/hr/attributesMgmt.json index 2add7c435..ea593f67f 100644 --- a/app/javascript/dashboard/i18n/locale/hr/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/hr/automation.json b/app/javascript/dashboard/i18n/locale/hr/automation.json index 6172de951..95d4d7b10 100644 --- a/app/javascript/dashboard/i18n/locale/hr/automation.json +++ b/app/javascript/dashboard/i18n/locale/hr/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Ime", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Radnje" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Promjena prioriteta", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Otvori razgovor" + "OPEN_CONVERSATION": "Otvori razgovor", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/hr/bulkActions.json b/app/javascript/dashboard/i18n/locale/hr/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/hr/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/hr/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/hr/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/hr/cannedMgmt.json index 48a5f1137..93a70501d 100644 --- a/app/javascript/dashboard/i18n/locale/hr/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Saznajte više o unaprijed pripremljenim odgovorima", "DESCRIPTION": "Unaprijed pripremljeni odgovori su već napisani predlošci za odgovore koji vam pomažu da brzo odgovorite na razgovor. Agenti mogu upisati znak '/' nakon kojeg slijedi kratki kod za umetanje unaprijed pripremljenog odgovora tijekom razgovora.", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Ne postoji rezultat za zadano pretraživanje.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/hr/chatlist.json b/app/javascript/dashboard/i18n/locale/hr/chatlist.json index 1625c714e..f3db115ad 100644 --- a/app/javascript/dashboard/i18n/locale/hr/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/hr/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/hr/contact.json b/app/javascript/dashboard/i18n/locale/hr/contact.json index 759e700e6..f8386b234 100644 --- a/app/javascript/dashboard/i18n/locale/hr/contact.json +++ b/app/javascript/dashboard/i18n/locale/hr/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/hr/conversation.json b/app/javascript/dashboard/i18n/locale/hr/conversation.json index d14f64b2d..4a5e6cdde 100644 --- a/app/javascript/dashboard/i18n/locale/hr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hr/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Predlošci" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Odustani", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/hr/customRole.json b/app/javascript/dashboard/i18n/locale/hr/customRole.json index f6a41cc62..ea2e4e739 100644 --- a/app/javascript/dashboard/i18n/locale/hr/customRole.json +++ b/app/javascript/dashboard/i18n/locale/hr/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Ne postoji rezultat za zadano pretraživanje.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/hr/datePicker.json b/app/javascript/dashboard/i18n/locale/hr/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/hr/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/hr/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/hr/general.json b/app/javascript/dashboard/i18n/locale/hr/general.json index 46c9a4ebd..86fd8676b 100644 --- a/app/javascript/dashboard/i18n/locale/hr/general.json +++ b/app/javascript/dashboard/i18n/locale/hr/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/hr/generalSettings.json b/app/javascript/dashboard/i18n/locale/hr/generalSettings.json index 29f00256e..3e62ba3a5 100644 --- a/app/javascript/dashboard/i18n/locale/hr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hr/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/hr/helpCenter.json b/app/javascript/dashboard/i18n/locale/hr/helpCenter.json index 77200354c..bb66783bf 100644 --- a/app/javascript/dashboard/i18n/locale/hr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/hr/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json index 1576edc83..fc52a8bb9 100644 --- a/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Centar za pomoć", "PLACEHOLDER": "Odaberi centar za pomoć", "SELECT_PLACEHOLDER": "Odaberi centar za pomoć", + "NONE": "None", "REMOVE": "Makni Centar za Pomoć", "SUB_TEXT": "Pridruži Centar za Pomoć inbox-u" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Odustani", + "CONFIRM_DELETE": "Izbriši", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Čavrljajte s nama", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Čavrljajte s nama" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Obično odgovara za nekoliko minuta", diff --git a/app/javascript/dashboard/i18n/locale/hr/integrationApps.json b/app/javascript/dashboard/i18n/locale/hr/integrationApps.json index 44200fb70..32c6c380c 100644 --- a/app/javascript/dashboard/i18n/locale/hr/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/hr/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Radnje", "DELETE": { "BUTTON_TEXT": "Izbriši" } diff --git a/app/javascript/dashboard/i18n/locale/hr/integrations.json b/app/javascript/dashboard/i18n/locale/hr/integrations.json index 44b906008..5a2822b54 100644 --- a/app/javascript/dashboard/i18n/locale/hr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hr/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Odustani", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Izbriši", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesionalno", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Prijateljski" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Ime", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Radnje" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/hr/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/hr/labelsMgmt.json index 78489efb4..7b1347730 100644 --- a/app/javascript/dashboard/i18n/locale/hr/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hr/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Ime", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Radnje" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hr/macros.json b/app/javascript/dashboard/i18n/locale/hr/macros.json index 0334a5a45..bb81f8cb9 100644 --- a/app/javascript/dashboard/i18n/locale/hr/macros.json +++ b/app/javascript/dashboard/i18n/locale/hr/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Ime", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Radnje" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/hr/mfa.json b/app/javascript/dashboard/i18n/locale/hr/mfa.json index 6ecba6b70..8201b7be6 100644 --- a/app/javascript/dashboard/i18n/locale/hr/mfa.json +++ b/app/javascript/dashboard/i18n/locale/hr/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/hr/report.json b/app/javascript/dashboard/i18n/locale/hr/report.json index c31c93369..f9fa93091 100644 --- a/app/javascript/dashboard/i18n/locale/hr/report.json +++ b/app/javascript/dashboard/i18n/locale/hr/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Dodaj filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Dodaj filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Tim" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Odustani", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/hr/settings.json b/app/javascript/dashboard/i18n/locale/hr/settings.json index fc1420e0e..319481096 100644 --- a/app/javascript/dashboard/i18n/locale/hr/settings.json +++ b/app/javascript/dashboard/i18n/locale/hr/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Prenosim...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Pročitaj članke", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Naplata", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Odustani" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "Novi račun", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Odustani" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hr/signup.json b/app/javascript/dashboard/i18n/locale/hr/signup.json index 9b2ff2cf1..ee8f92d85 100644 --- a/app/javascript/dashboard/i18n/locale/hr/signup.json +++ b/app/javascript/dashboard/i18n/locale/hr/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/hr/sla.json b/app/javascript/dashboard/i18n/locale/hr/sla.json index 126e93d17..2b5679ab8 100644 --- a/app/javascript/dashboard/i18n/locale/hr/sla.json +++ b/app/javascript/dashboard/i18n/locale/hr/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/hr/snooze.json b/app/javascript/dashboard/i18n/locale/hr/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/hr/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/hr/teamsSettings.json b/app/javascript/dashboard/i18n/locale/hr/teamsSettings.json index c27ffe9b7..ebcbb0b6a 100644 --- a/app/javascript/dashboard/i18n/locale/hr/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/hr/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-pošta", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/hu/agentBots.json b/app/javascript/dashboard/i18n/locale/hu/agentBots.json index 9e01f7629..12e650448 100644 --- a/app/javascript/dashboard/i18n/locale/hu/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hu/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Szerkesztő betöltése...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Rendszer", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Botok hívása...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Műveletek" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/hu/agentMgmt.json b/app/javascript/dashboard/i18n/locale/hu/agentMgmt.json index 75eb07d74..d4b9d6295 100644 --- a/app/javascript/dashboard/i18n/locale/hu/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Adminisztrátor", "AGENT": "Ügynök" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Ehhez a fiókhoz nincs ügynök rendelve", "TITLE": "A csapatod ügynökeinek kezelése", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nem sikerült csatlakozni a Woot szerverhez, kérjük próbáld később" } }, + "SEARCH_PLACEHOLDER": "Ügynökök keresése...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nincs találat." }, diff --git a/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json index 054e778a8..79373d986 100644 --- a/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Vonzó egyedi tulajdonság", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Tulajdonságok keresése...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Beszélgetés", "CONTACT": "Kontakt" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/hu/automation.json b/app/javascript/dashboard/i18n/locale/hu/automation.json index a75c77e6b..bdd2d6cd8 100644 --- a/app/javascript/dashboard/i18n/locale/hu/automation.json +++ b/app/javascript/dashboard/i18n/locale/hu/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatizáció", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Automatikus szabály hozzáadása", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Automatizálási szabályok betöltése", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Automatikus szabály hozzáadása", "SUBMIT": "Létrehozás", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Név", - "DESCRIPTION": "Leírás", "ACTIVE": "Aktív", - "CREATED_ON": "Létrehozva" + "CREATED_ON": "Létrehozva", + "ACTIONS": "Műveletek" }, "404": "Nem található automatizált szabály" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Prioritás megváltoztatása", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Beszélgetés megnyitása" + "OPEN_CONVERSATION": "Beszélgetés megnyitása", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/hu/bulkActions.json b/app/javascript/dashboard/i18n/locale/hu/bulkActions.json index 569388e34..b9fa2ebed 100644 --- a/app/javascript/dashboard/i18n/locale/hu/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/hu/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Beszélgetés státusza sikeresen frissítve ", "UPDATE_FAILED": "Nem sikerült frissíteni a beszélgetéseket. Kérjük, próbálja újra." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Címkék hozzárendelése", "NO_LABELS_FOUND": "Nem találtunk címkét", diff --git a/app/javascript/dashboard/i18n/locale/hu/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/hu/cannedMgmt.json index 727b87662..ff1c8ecf7 100644 --- a/app/javascript/dashboard/i18n/locale/hu/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Mentett válaszok", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Sablon válasz hozzáadása", "LOADING": "Sablon válaszok lekérése...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Nincs megfelelő elem.", "LIST": { "404": "Nincs megfelelő mentett válasz ebben a fiókban.", diff --git a/app/javascript/dashboard/i18n/locale/hu/chatlist.json b/app/javascript/dashboard/i18n/locale/hu/chatlist.json index 07be33a51..5dffe7d1c 100644 --- a/app/javascript/dashboard/i18n/locale/hu/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/hu/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Függőben lévő válasz: Legrövidebb először" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/hu/contact.json b/app/javascript/dashboard/i18n/locale/hu/contact.json index 1c4437b06..0ef163f1e 100644 --- a/app/javascript/dashboard/i18n/locale/hu/contact.json +++ b/app/javascript/dashboard/i18n/locale/hu/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Nincs a keresésnek megfelelő kontakt 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Cimke hozzáadása", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Ide:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Tárgy :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Másolat:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Titkos másolat:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Titkos másolat" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/hu/conversation.json b/app/javascript/dashboard/i18n/locale/hu/conversation.json index 715f04a41..91e21e8df 100644 --- a/app/javascript/dashboard/i18n/locale/hu/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hu/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Ez az üzenet nem támogatott. Ezt az üzenetet a Facebook Messenger alkalmazásban tekintheti meg.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Ez az üzenet nem támogatott. Ezt az üzenetet az Instagram alkalmazásban tekintheti meg.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Üzenet törölve", "FAIL_DELETE_MESSSAGE": "Nem tudtad törölni az üzenetet! Próbáld újra", "NO_RESPONSE": "Nincs válasz", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nem sikerült hozzárendelni címkét. Kérlek, próbáld újra." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Nem sikerült hozzárendelni csoporthoz. Kérlek, próbáld újra." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Aláírás kikapcsolása", "MSG_INPUT": "Shift + enter új sorért. Kezdj a '/'-el mentett válasz kiválasztásához.", "PRIVATE_MSG_INPUT": "Shift + enter új sorért. Ezt csak ügynökök láthatják", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Üzenet aláírása nem változott, kérlek, változtasd meg a profilod beállításaiban. ", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Frissítéshez kattints ide", "WHATSAPP_TEMPLATES": "Whatsapp sablonok" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Helyezd ide a csatolmányt", "START_AUDIO_RECORDING": "Hangfelvétel indítása", "STOP_AUDIO_RECORDING": "Hangfelvétel leállítása", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "Címzett", "ADD_BCC": "Titkos másolat hozzáadása", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "A file mérete meghaladja a {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} limitet", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nem tudsz üzenetet küldeni, kérlek, próbáld újra", "SENT_BY": "Küldő:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nem sikerült elküldeni az üzenetet! Próbáld újra.", "TRY_AGAIN": "újra", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Mégse", "SEND_EMAIL_SUCCESS": "A beszélgetés jegyzet sikeresen elküldve", "SEND_EMAIL_ERROR": "Hiba történt, kérjük próbáld újra", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "A beszélgetés jegyzet elküldése az ügyfélnek", "SEND_TO_AGENT": "A beszélgetés jegyzet elküldése a hozzárendelt ügynöknek", diff --git a/app/javascript/dashboard/i18n/locale/hu/customRole.json b/app/javascript/dashboard/i18n/locale/hu/customRole.json index 352bc3d75..178a1b3c4 100644 --- a/app/javascript/dashboard/i18n/locale/hu/customRole.json +++ b/app/javascript/dashboard/i18n/locale/hu/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Nincs megfelelő elem.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/hu/datePicker.json b/app/javascript/dashboard/i18n/locale/hu/datePicker.json index 8bdfab28b..04cc6a9d1 100644 --- a/app/javascript/dashboard/i18n/locale/hu/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/hu/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Alkalmaz", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Elmúlt 3 hónapban", "LAST_6_MONTHS": "Elmúlt 6 hónapban", "LAST_YEAR": "Elmúlt 1 évben", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Egyedi időszak" } } diff --git a/app/javascript/dashboard/i18n/locale/hu/general.json b/app/javascript/dashboard/i18n/locale/hu/general.json index 6f066181d..0ba3d5f3a 100644 --- a/app/javascript/dashboard/i18n/locale/hu/general.json +++ b/app/javascript/dashboard/i18n/locale/hu/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Bezárás", "BETA": "Béta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Igen", + "NO": "Nem" } } diff --git a/app/javascript/dashboard/i18n/locale/hu/generalSettings.json b/app/javascript/dashboard/i18n/locale/hu/generalSettings.json index 83e2e727e..fe041fecb 100644 --- a/app/javascript/dashboard/i18n/locale/hu/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hu/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Keresés vagy ugrás ide:", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Általános", "REPORTS": "Jelentések", diff --git a/app/javascript/dashboard/i18n/locale/hu/helpCenter.json b/app/javascript/dashboard/i18n/locale/hu/helpCenter.json index 13cd495b1..2f06635db 100644 --- a/app/javascript/dashboard/i18n/locale/hu/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/hu/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Hiba a cikk törlésekor" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Kérjük, adj hozzá a cikk címét és tartalmát, ezután csak Te tudod majd frissíteni a beállításokat" }, diff --git a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json index 1ed0d14dd..29ebdf544 100644 --- a/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Fiókok", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Csak a konfigurált cégnevet használja feladói névként az e-mail fejlécében." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "Üzleti nevének konfigurálása", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Adja meg vállalkozásának nevét", "SAVE_BUTTON_TEXT": "Mentés" } @@ -589,8 +592,10 @@ "DISABLED": "Letiltva" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Engedélyezve", - "DISABLED": "Letiltva" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Engedélyezés" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Az ügynök nevének megjelenítésének engedélyezése/letiltása az e-mailben, ha le van tiltva, akkor a cég neve jelenik meg", "ENABLE_CONTINUITY_VIA_EMAIL": "Beszélgetés folytatásának engedélyezése emailen keresztül", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "A beszélgetések e-mailben folytatódnak, ha elérhető a kapcsolattartási e-mail cím.", - "LOCK_TO_SINGLE_CONVERSATION": "Egyetlen beszélgetés zárolása", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Több beszélgetés engedélyezése vagy letiltása ugyanahhoz a névjegyhez ebben a postafiókban", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Fiókbeállítások", "INBOX_UPDATE_SUB_TEXT": "Frissítsd az inbox beállításaidat", "AUTO_ASSIGNMENT_SUB_TEXT": "Bekapcsolása vagy kikapcsolása az inboxhoz kapcsolódó automatikus ügynökhozzárendelésnek új beszélgetések esetén.", @@ -758,6 +765,7 @@ "LABEL": "Súgóközpont", "PLACEHOLDER": "Súgóközpont kiválasztása", "SELECT_PLACEHOLDER": "Súgóközpont kiválasztása", + "NONE": "Nincs", "REMOVE": "Súgóközpont eltávolítása", "SUB_TEXT": "Súgóközpont csatolása a fiókhoz" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Kérlek 0-nál magasabb értéket adj meg", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Korlátozza az ebből a postafiókból érkező beszélgetések maximális számát, amelyek automatikusan hozzárendelhetők egy ügynökhöz" }, + "ASSIGNMENT": { + "TITLE": "Beszélgetés hozzárendelés", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktív", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Mégse", + "CONFIRM_DELETE": "Törlés", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Újraengedélyezés", "SUBTITLE": "A Facebook kapcsolatod lejárt, kérjük kapcsold össze oldalad újra a szolgáltatás folytatásához", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Visszaugrás" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Nem elérhető üzenetek a vendégek számára", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Nap", + "AVAILABILITY": "Elérhetőség", + "HOURS": "Hours", "ENABLE": "Elérhetőség bekapcsolása erre a napra", "UNAVAILABLE": "Nem elérhető", - "HOURS": "óra", "VALIDATION_ERROR": "A kezés idejének a zárás ideje előttinek kell lennie.", "CHOOSE": "Kiválasztás" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Egy napon belül" }, "WIDGET_COLOR_LABEL": "Widget szín", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget buborék pozíciója", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget buborék típusa", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Típus:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chatelj velünk", - "LABEL": "Widget buborék indító címe", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chatelj velünk" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Alapértelmezett", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Néhány percen belül válaszol", diff --git a/app/javascript/dashboard/i18n/locale/hu/integrationApps.json b/app/javascript/dashboard/i18n/locale/hu/integrationApps.json index 455dadd2d..4b397270b 100644 --- a/app/javascript/dashboard/i18n/locale/hu/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/hu/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Integrációk lekérése", "NO_HOOK_CONFIGURED": "Ebben a fiókban nincs beállítva {integrationId} integráció", "HEADER": "Alkalmazások", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Engedélyezve", "DISABLED": "Letiltva" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Integrációs hookok betöltése", "INBOX": "Fiók", + "ACTIONS": "Műveletek", "DELETE": { "BUTTON_TEXT": "Törlés" } diff --git a/app/javascript/dashboard/i18n/locale/hu/integrations.json b/app/javascript/dashboard/i18n/locale/hu/integrations.json index 80552228b..2f75d7f62 100644 --- a/app/javascript/dashboard/i18n/locale/hu/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hu/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Feliratkozott események", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Mégse", "DESC": "Webhook események valós idejű információt adnak arról, hogy mi történik a Chatwoot fiókodban. Kérünk a visszahívás beállításánál egy helyes URL-t adj meg.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Törlés", "DELETE_CONFIRMATION": { "TITLE": "Az integráció törlése", @@ -145,7 +160,29 @@ "EXPAND": "Kiegészítés", "MAKE_FRIENDLY": "Legyen személyes hangvételű", "MAKE_FORMAL": "Legyen hivatalos hangvételű", - "SIMPLIFY": "Egyszerűsít" + "SIMPLIFY": "Egyszerűsít", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professzionális", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Barátságos" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Vázlatos szöveg", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Irányítópult-alkalmazások

Az irányítópult-alkalmazások segítségével a szervezetek beágyazhatnak egy alkalmazást a Chatwoot irányítópultjába, hogy kontextust biztosítsanak az ügyfélszolgálati ügynökök számára. Ezzel a funkcióval önállóan hozhat létre alkalmazást, és beágyazhatja azt az irányítópultba, hogy megadja a felhasználói információkat, rendeléseiket vagy korábbi fizetési előzményeiket.

Ha beágyazza alkalmazását a Chatwoot irányítópultjával, az alkalmazás ablakeseményként kapja meg a beszélgetés és a kapcsolatfelvétel kontextusát. Helyezzen el egy figyelőt az üzeneteseményhez az oldalon, hogy megkapja a kontextust.

Új irányítópult-alkalmazás hozzáadásához kattintson az „Új irányítópult-alkalmazás hozzáadása” gombra.

", "DESCRIPTION": "Az irányítópult-alkalmazások segítségével a szervezetek beágyazhatnak egy alkalmazást az irányítópultba, hogy kontextust biztosítsanak az ügyfélszolgálati ügynökök számára. Ez a funkció lehetővé teszi, hogy önállóan hozzon létre egy alkalmazást, és beágyazza azt, hogy megadja a felhasználói információkat, rendeléseiket vagy korábbi fizetési előzményeiket.\n", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Ebben a fiókban még nincsenek konfigurálva kezdőlapi-alkalmazások", "LOADING": "Kezdőlapi alkalmazások lekérése...", "TABLE_HEADER": { "NAME": "Név", - "ENDPOINT": "Végpont" + "ENDPOINT": "Végpont", + "ACTIONS": "Műveletek" }, "EDIT_TOOLTIP": "App szerkesztése", "DELETE_TOOLTIP": "App törlése" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/hu/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/hu/labelsMgmt.json index a3ca1b33d..e4ee526a0 100644 --- a/app/javascript/dashboard/i18n/locale/hu/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hu/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Cimkék letöltése", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Címkék keresése...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Nincs megfelelő elem", "LIST": { "404": "Nincs megfelelő cimke ebben a fiókban.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Név", "DESCRIPTION": "Leírás", - "COLOR": "Szín" + "COLOR": "Szín", + "ACTION": "Műveletek" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hu/macros.json b/app/javascript/dashboard/i18n/locale/hu/macros.json index 3c8d0e930..3e3facdb8 100644 --- a/app/javascript/dashboard/i18n/locale/hu/macros.json +++ b/app/javascript/dashboard/i18n/locale/hu/macros.json @@ -3,9 +3,12 @@ "HEADER": "Makrók", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Új makró hozzáadása", "HEADER_BTN_TXT_SAVE": "Makró mentése", "LOADING": "Makrók lekérdezése", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Valami elromlott, kérjük töltsd próbáld újra", "ORDER_INFO": "A makrók a műveletek hozzáadásának sorrendjében fognak futni. A makrókat áthúzással át tudod rendezni.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Név", "CREATED BY": "Létrehozta", "LAST_UPDATED_BY": "Utoljára szerkesztette:", - "VISIBILITY": "Láthatóság" + "VISIBILITY": "Láthatóság", + "ACTIONS": "Műveletek" }, "404": "Nem találtunk makrót" }, diff --git a/app/javascript/dashboard/i18n/locale/hu/mfa.json b/app/javascript/dashboard/i18n/locale/hu/mfa.json index 479656236..1117ec281 100644 --- a/app/javascript/dashboard/i18n/locale/hu/mfa.json +++ b/app/javascript/dashboard/i18n/locale/hu/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/hu/report.json b/app/javascript/dashboard/i18n/locale/hu/report.json index 45e014b95..2595a0a5b 100644 --- a/app/javascript/dashboard/i18n/locale/hu/report.json +++ b/app/javascript/dashboard/i18n/locale/hu/report.json @@ -3,7 +3,7 @@ "HEADER": "Beszélgetések", "LOADING_CHART": "Táblázat adatok betöltése...", "NO_ENOUGH_DATA": "Nem érkezett elég adat hogy jelentést generáljunk, kérjük próbáld később.", - "DOWNLOAD_AGENT_REPORTS": "Ügynök jelentések letöltése", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Sikertelen adatlekérés, kérlek próbáld újra később.", "SUMMARY_FETCHING_FAILED": "Sikertelen összefoglaló lekérés, kérlek próbáld újra később.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Ügynök áttekintés", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Táblázat adatok betöltése...", "NO_ENOUGH_DATA": "Nem érkezett elég adat hogy jelentést generáljunk, kérjük próbáld később.", "DOWNLOAD_AGENT_REPORTS": "Ügynök jelentések letöltése", "FILTER_DROPDOWN_LABEL": "Ügynök kiválasztása", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Ügynökök keresése" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Beszélgetések", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Nem érkezett elég adat hogy jelentést generáljunk, kérjük próbáld később.", "DOWNLOAD_LABEL_REPORTS": "Címkejelentések letöltése", "FILTER_DROPDOWN_LABEL": "Cimke választása", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Címkék keresése" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Beszélgetések", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Válassz egy fiókot", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Beszélgetések", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Csapat áttekintés", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Táblázat adatok betöltése...", "NO_ENOUGH_DATA": "Nem érkezett elég adat hogy jelentést generáljunk, kérjük próbáld később.", "DOWNLOAD_TEAM_REPORTS": "Csapat riport letöltése", "FILTER_DROPDOWN_LABEL": "Csapat kiválasztása", + "FILTERS": { + "ADD_FILTER": "Szűrő hozzáadása", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Csapatok keresése" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Beszélgetések", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT riportok", - "NO_RECORDS": "Nem állnak rendelkezésre CSAT-felmérés válaszai.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "CSAT jelentés letöltése", "DOWNLOAD_FAILED": "Sikertelen a CSAT jelentés letöltése", "FILTERS": { + "ADD_FILTER": "Szűrő hozzáadása", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Ügynökök keresése", + "INBOXES": "Search inboxes", + "TEAMS": "Csapatok keresése", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Ügynökök választása" + "LABEL": "Ügynök" + }, + "INBOXES": { + "LABEL": "Fiók" + }, + "TEAMS": { + "LABEL": "Csapat" + }, + "RATINGS": { + "LABEL": "Értékelés" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontakt", - "AGENT_NAME": "Hozzárendelt ügynök", + "AGENT_NAME": "Ügynök", "RATING": "Értékelés", - "FEEDBACK_TEXT": "Visszajelző komment" - } + "FEEDBACK_TEXT": "Visszajelző komment", + "CONVERSATION": "Beszélgetés", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Összes válasz", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Válaszarány", "TOOLTIP": "Válaszok teljes száma / Az elküldött CSAT felmérési üzenetek teljes száma * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Mentés", + "CANCEL": "Mégse", + "SAVING": "Mentés...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/hu/settings.json b/app/javascript/dashboard/i18n/locale/hu/settings.json index b5e46e85c..4a530b0fc 100644 --- a/app/javascript/dashboard/i18n/locale/hu/settings.json +++ b/app/javascript/dashboard/i18n/locale/hu/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Letöltés", "UPLOADING": "Feltöltés...", - "INSTAGRAM_STORY_UNAVAILABLE": "Ez a story már nem érhető el." + "INSTAGRAM_STORY_UNAVAILABLE": "Ez a story már nem érhető el.", + "INSTAGRAM_STORY_REPLY": "Válaszolt a storydra:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Mutasd térképen" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Dokumentum olvasása", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Lehetőségek", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Számlázás", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Tulajdonságok keresése" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Beszélgetés megoldása", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Beszélgetés megoldása", + "CANCEL": "Mégse" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Igen", + "NO": "Nem" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uppsz! Nem találtunk egyetlen Chatwoot-fiókot sem. A folytatáshoz kérlek hozz létre egy új fiókot.", "NEW_ACCOUNT": "Új fiók", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Mégse" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hu/signup.json b/app/javascript/dashboard/i18n/locale/hu/signup.json index 01e0cfa50..c9f35486e 100644 --- a/app/javascript/dashboard/i18n/locale/hu/signup.json +++ b/app/javascript/dashboard/i18n/locale/hu/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Fiók létrehozása", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Regisztrálás", "TESTIMONIAL_HEADER": "Már csak egy lépés van hátra", "TESTIMONIAL_CONTENT": "Már csak egy lépésre vagy!", diff --git a/app/javascript/dashboard/i18n/locale/hu/sla.json b/app/javascript/dashboard/i18n/locale/hu/sla.json index 00f4ae872..64e56d2d8 100644 --- a/app/javascript/dashboard/i18n/locale/hu/sla.json +++ b/app/javascript/dashboard/i18n/locale/hu/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/hu/snooze.json b/app/javascript/dashboard/i18n/locale/hu/snooze.json new file mode 100644 index 000000000..25a940758 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/hu/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "óra", + "DAY": "nap", + "DAYS": "days", + "WEEK": "day", + "WEEKS": "weeks", + "MONTH": "week", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "holnap", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "jövő héten", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "day", + "DAY": "nap" + } +} diff --git a/app/javascript/dashboard/i18n/locale/hu/teamsSettings.json b/app/javascript/dashboard/i18n/locale/hu/teamsSettings.json index f6062b3e5..9704acfcf 100644 --- a/app/javascript/dashboard/i18n/locale/hu/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/hu/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Csapatok keresése...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Ebben a fiókban nincs csapat létrehozva.", "EDIT_TEAM": "Csapat szerkesztése", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nem sikerült a csapat részleteinek mentése. Kérjük próbáld újra." }, "AGENTS": { - "AGENT": "ÜGYNÖK", - "EMAIL": "EMAIL", + "AGENT": "Ügynök", + "EMAIL": "E-mail", "BUTTON_TEXT": "Ügynök Hozzádása", "ADD_AGENTS": "Ügynökök hozzáadása a csapathoz...", "SELECT": "kiválasztás", diff --git a/app/javascript/dashboard/i18n/locale/hy/agentBots.json b/app/javascript/dashboard/i18n/locale/hy/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/hy/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/hy/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/hy/agentMgmt.json b/app/javascript/dashboard/i18n/locale/hy/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/hy/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/hy/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/hy/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/hy/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/hy/automation.json b/app/javascript/dashboard/i18n/locale/hy/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/hy/automation.json +++ b/app/javascript/dashboard/i18n/locale/hy/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/hy/bulkActions.json b/app/javascript/dashboard/i18n/locale/hy/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/hy/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/hy/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/hy/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/hy/cannedMgmt.json index 3bc60c569..05c05c0c6 100644 --- a/app/javascript/dashboard/i18n/locale/hy/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/hy/chatlist.json b/app/javascript/dashboard/i18n/locale/hy/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/hy/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/hy/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/hy/contact.json b/app/javascript/dashboard/i18n/locale/hy/contact.json index 5aa225446..6b1900def 100644 --- a/app/javascript/dashboard/i18n/locale/hy/contact.json +++ b/app/javascript/dashboard/i18n/locale/hy/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/hy/conversation.json b/app/javascript/dashboard/i18n/locale/hy/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/hy/conversation.json +++ b/app/javascript/dashboard/i18n/locale/hy/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/hy/customRole.json b/app/javascript/dashboard/i18n/locale/hy/customRole.json index ca01a1eeb..3bdc371e4 100644 --- a/app/javascript/dashboard/i18n/locale/hy/customRole.json +++ b/app/javascript/dashboard/i18n/locale/hy/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/hy/datePicker.json b/app/javascript/dashboard/i18n/locale/hy/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/hy/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/hy/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/hy/general.json b/app/javascript/dashboard/i18n/locale/hy/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/hy/general.json +++ b/app/javascript/dashboard/i18n/locale/hy/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/hy/generalSettings.json b/app/javascript/dashboard/i18n/locale/hy/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/hy/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/hy/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/hy/helpCenter.json b/app/javascript/dashboard/i18n/locale/hy/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/hy/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/hy/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json index 7aaed0119..eba31c982 100644 --- a/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/hy/integrationApps.json b/app/javascript/dashboard/i18n/locale/hy/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/hy/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/hy/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/hy/integrations.json b/app/javascript/dashboard/i18n/locale/hy/integrations.json index 983953180..a1ce02d11 100644 --- a/app/javascript/dashboard/i18n/locale/hy/integrations.json +++ b/app/javascript/dashboard/i18n/locale/hy/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/hy/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/hy/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/hy/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/hy/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hy/macros.json b/app/javascript/dashboard/i18n/locale/hy/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/hy/macros.json +++ b/app/javascript/dashboard/i18n/locale/hy/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/hy/mfa.json b/app/javascript/dashboard/i18n/locale/hy/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/hy/mfa.json +++ b/app/javascript/dashboard/i18n/locale/hy/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/hy/report.json b/app/javascript/dashboard/i18n/locale/hy/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/hy/report.json +++ b/app/javascript/dashboard/i18n/locale/hy/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/hy/settings.json b/app/javascript/dashboard/i18n/locale/hy/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/hy/settings.json +++ b/app/javascript/dashboard/i18n/locale/hy/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/hy/signup.json b/app/javascript/dashboard/i18n/locale/hy/signup.json index f6a6e5b2b..fa4322493 100644 --- a/app/javascript/dashboard/i18n/locale/hy/signup.json +++ b/app/javascript/dashboard/i18n/locale/hy/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/hy/sla.json b/app/javascript/dashboard/i18n/locale/hy/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/hy/sla.json +++ b/app/javascript/dashboard/i18n/locale/hy/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/hy/snooze.json b/app/javascript/dashboard/i18n/locale/hy/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/hy/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/hy/teamsSettings.json b/app/javascript/dashboard/i18n/locale/hy/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/hy/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/hy/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/id/agentBots.json b/app/javascript/dashboard/i18n/locale/id/agentBots.json index e29fa8263..2639f67b0 100644 --- a/app/javascript/dashboard/i18n/locale/id/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/id/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Memuat editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Sistem", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "URL Webhook" + "URL": "URL Webhook", + "ACTIONS": "Aksi" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/id/agentMgmt.json b/app/javascript/dashboard/i18n/locale/id/agentMgmt.json index adcd0be5a..4296cb328 100644 --- a/app/javascript/dashboard/i18n/locale/id/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agen" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Tidak ada agen yang terkait dengan akun ini", "TITLE": "Kelola agen di tim Anda", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Tidak dapat terhubung ke Server Woot, Silahkan coba lagi nanti" } }, + "SEARCH_PLACEHOLDER": "Mencari Agen...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Tidak ada hasil ditemukan." }, diff --git a/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json index d989c3a36..94eb27577 100644 --- a/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Mengambil atribut kustom", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Cari atribut...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Percakapan", "CONTACT": "Kontak" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/id/automation.json b/app/javascript/dashboard/i18n/locale/id/automation.json index 155d75b84..8ff80ae93 100644 --- a/app/javascript/dashboard/i18n/locale/id/automation.json +++ b/app/javascript/dashboard/i18n/locale/id/automation.json @@ -3,8 +3,11 @@ "HEADER": "Otomatisasi", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Tambah Aturan Otomatisasi", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Mengambil aturan otomatisasi", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Tambah Aturan Otomatisasi", "SUBMIT": "Buat", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nama", - "DESCRIPTION": "Deskripsi", "ACTIVE": "Aktif", - "CREATED_ON": "Dibuat pada" + "CREATED_ON": "Dibuat pada", + "ACTIONS": "Aksi" }, "404": "Tidak ada aturan otomatisasi ditemukan" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Ubah Prioritas", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Buka percakapan" + "OPEN_CONVERSATION": "Buka percakapan", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/id/bulkActions.json b/app/javascript/dashboard/i18n/locale/id/bulkActions.json index 39f035d6f..9f397da6c 100644 --- a/app/javascript/dashboard/i18n/locale/id/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/id/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Status percakapan berhasil diperbarui.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Tidak ada label", diff --git a/app/javascript/dashboard/i18n/locale/id/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/id/cannedMgmt.json index 58f77c86b..5b2333c1d 100644 --- a/app/javascript/dashboard/i18n/locale/id/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Balasan Canned", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Tidak ada item yang cocok dengan kueri ini.", "LIST": { "404": "Tidak ada balasan canned yang tersedia di akun ini.", diff --git a/app/javascript/dashboard/i18n/locale/id/chatlist.json b/app/javascript/dashboard/i18n/locale/id/chatlist.json index cea5c7ea4..2d07bd509 100644 --- a/app/javascript/dashboard/i18n/locale/id/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/id/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/id/contact.json b/app/javascript/dashboard/i18n/locale/id/contact.json index 916235b12..dada842a7 100644 --- a/app/javascript/dashboard/i18n/locale/id/contact.json +++ b/app/javascript/dashboard/i18n/locale/id/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Tidak ada kontak yang cocok dengan pencarian Anda 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Tugaskan Label", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Kepada:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Masukkan subjek :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/id/conversation.json b/app/javascript/dashboard/i18n/locale/id/conversation.json index d64dd82b3..db4bd4c89 100644 --- a/app/javascript/dashboard/i18n/locale/id/conversation.json +++ b/app/javascript/dashboard/i18n/locale/id/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Pesan berhasil dihapus", "FAIL_DELETE_MESSSAGE": "Tidak dapat menghapus pesan! Coba lagi", "NO_RESPONSE": "Tidak ada respon", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Tidak dapat menugaskan label. Silakan coba lagi." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Tim \"{team}\" ditugaskan ke id percakapan {conversationId}", "FAILED": "Tidak dapat menugaskan tim. Silakan coba lagi." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Nonaktifkan tanda tangan", "MSG_INPUT": "Shift + enter untuk baris baru. Mulailah dengan '/' untuk memilih Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter untuk baris baru. Ini hanya akan terlihat oleh Agen", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Tanda tangan pesan tidak dikonfigurasi, harap konfigurasikan di pengaturan profil.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klik di sini untuk memperbarui", "WHATSAPP_TEMPLATES": "Templat Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Seret dan letakkan di sini untuk melampirkan", "START_AUDIO_RECORDING": "Mulai merekam audio", "STOP_AUDIO_RECORDING": "Berhenti merekam audio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "KEPADA", "ADD_BCC": "Tambahkan bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Lampiran melebihi batas ukuran {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Tidak dapat mengirim pesan ini, mohon coba lagi nanti", "SENT_BY": "Dikirim oleh:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Tidak dapat mengirim pesan! Coba lagi", "TRY_AGAIN": "coba lagi", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Batalkan", "SEND_EMAIL_SUCCESS": "Transkrip percakapan berhasil terkirim", "SEND_EMAIL_ERROR": "Terjadi kesalahan, mohon coba lagi", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Kirim transkrip ke pelanggan", "SEND_TO_AGENT": "Kirim transkrip dari agen yang ditugaskan", diff --git a/app/javascript/dashboard/i18n/locale/id/customRole.json b/app/javascript/dashboard/i18n/locale/id/customRole.json index bd2289327..4c9a7f38b 100644 --- a/app/javascript/dashboard/i18n/locale/id/customRole.json +++ b/app/javascript/dashboard/i18n/locale/id/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Tidak ada item yang cocok dengan kueri ini.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/id/datePicker.json b/app/javascript/dashboard/i18n/locale/id/datePicker.json index aaeaf7634..1ea450d80 100644 --- a/app/javascript/dashboard/i18n/locale/id/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/id/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Terapkan", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "3 bulan terakhir", "LAST_6_MONTHS": "6 bulan terakhir", "LAST_YEAR": "Tahun terakhir", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Rentang tanggal kustom" } } diff --git a/app/javascript/dashboard/i18n/locale/id/general.json b/app/javascript/dashboard/i18n/locale/id/general.json index b727db2c2..e540bd3b9 100644 --- a/app/javascript/dashboard/i18n/locale/id/general.json +++ b/app/javascript/dashboard/i18n/locale/id/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Tutup", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ya", + "NO": "Tidak" } } diff --git a/app/javascript/dashboard/i18n/locale/id/generalSettings.json b/app/javascript/dashboard/i18n/locale/id/generalSettings.json index e540e8ecb..b658fde0e 100644 --- a/app/javascript/dashboard/i18n/locale/id/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/id/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Cari atau loncat ke", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Umum", "REPORTS": "Laporan", diff --git a/app/javascript/dashboard/i18n/locale/id/helpCenter.json b/app/javascript/dashboard/i18n/locale/id/helpCenter.json index db4b51f74..40e1f1a9d 100644 --- a/app/javascript/dashboard/i18n/locale/id/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/id/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Terjadi kesalahan saat menghapus artikel" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Harap tambahkan tajuk artikel dan konten maka hanya Anda yang dapat memperbarui pengaturan" }, diff --git a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json index 92df9bee0..5d77c510c 100644 --- a/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Kotak masuk", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Simpan" } @@ -589,8 +592,10 @@ "DISABLED": "Nonaktif" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Diaktifkan", - "DISABLED": "Nonaktif" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Aktifkan" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Aktifkan kontinuitas percakapan melalui email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Percakapan akan berlanjut melalui email jika alamat email kontak tersedia.", - "LOCK_TO_SINGLE_CONVERSATION": "Kunci ke satu percakapan", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Aktifkan atau nonaktifkan beberapa percakapan untuk kontak yang sama di kotak masuk ini", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Pengaturan Kotak Masuk", "INBOX_UPDATE_SUB_TEXT": "Perbarui pengaturan kotak masuk Anda", "AUTO_ASSIGNMENT_SUB_TEXT": "Mengaktifkan atau menonaktifkan penugasan otomatis percakapan baru ke agen yang ditambahkan ke kotak masuk ini.", @@ -758,6 +765,7 @@ "LABEL": "Pusat Bantuan", "PLACEHOLDER": "Pilih Pusat Bantuan", "SELECT_PLACEHOLDER": "Pilih Pusat Bantuan", + "NONE": "Tidak ada", "REMOVE": "Hapus Pusat Bantuan", "SUB_TEXT": "Lampirkan Pusat Bantuan dengan kotak masuk" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Harap masukkan nilai yang lebih besar dari 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Batasi jumlah maksimum percakapan dari kotak masuk ini yang dapat ditetapkan secara otomatis ke agen" }, + "ASSIGNMENT": { + "TITLE": "Tugas Percakapan", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktif", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Batalkan", + "CONFIRM_DELETE": "Hapus", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Otorisasi ulang", "SUBTITLE": "Koneksi Facebook Anda telah kedaluwarsa, hubungkan kembali halaman Facebook Anda untuk melanjutkan layanan", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Kembali" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Pesan tidak tersedia untuk pengunjung", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Hari", + "AVAILABILITY": "Ketersediaan", + "HOURS": "Hours", "ENABLE": "Aktifkan ketersediaan untuk hari ini", "UNAVAILABLE": "Tidak tersedia", - "HOURS": "jam", "VALIDATION_ERROR": "Waktu mulai harus sebelum waktu tutup.", "CHOOSE": "Pilih" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Dalam sehari" }, "WIDGET_COLOR_LABEL": "Warna Widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posisi Widget Gelembung", - "WIDGET_BUBBLE_TYPE_LABEL": "Jenis Gelembung Widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipe:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat dengan kami", - "LABEL": "Judul Widget Gelembung Launcher", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat dengan kami" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Biasanya membalas dalam beberapa menit", diff --git a/app/javascript/dashboard/i18n/locale/id/integrationApps.json b/app/javascript/dashboard/i18n/locale/id/integrationApps.json index efe3e43c9..007624afb 100644 --- a/app/javascript/dashboard/i18n/locale/id/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/id/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Mengambil Integrasi", "NO_HOOK_CONFIGURED": "Tidak ada integrasi {integrationId} yang dikonfigurasi di akun ini.", "HEADER": "Aplikasi", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Diaktifkan", "DISABLED": "Nonaktif" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Mengambil hook integrasi", "INBOX": "Kotak masuk", + "ACTIONS": "Aksi", "DELETE": { "BUTTON_TEXT": "Hapus" } diff --git a/app/javascript/dashboard/i18n/locale/id/integrations.json b/app/javascript/dashboard/i18n/locale/id/integrations.json index 965e4f351..76cbabb96 100644 --- a/app/javascript/dashboard/i18n/locale/id/integrations.json +++ b/app/javascript/dashboard/i18n/locale/id/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Acara Berlangganan", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Batalkan", "DESC": "Acara Webhook memberi Anda informasi realtime tentang apa yang terjadi di akun Chatwoot Anda. Harap masukkan URL yang valid untuk mengkonfigurasi callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Hapus", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Ramah" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplikasi Dasbor

Aplikasi Dasbor memungkinkan organisasi untuk menyematkan aplikasi di dalam dasbor Chatwoot untuk menyediakan konteks bagi agen dukungan pelanggan. Fitur ini memungkinkan Anda membuat aplikasi secara independen dan menyematkannya di dalam dasbor untuk menyediakan informasi pengguna, pesanan, atau riwayat pembayaran sebelumnya.

Ketika Anda menyematkan aplikasi Anda menggunakan dasbor di Chatwoot, aplikasi Anda akan mendapatkan konteks percakapan dan kontak sebagai acara window. Implementasikan penerima untuk acara pesan di halaman Anda untuk menerima konteks.

Untuk menambahkan aplikasi dasbor baru, klik tombol 'Tambahkan aplikasi dasbor baru'.

", "DESCRIPTION": "Aplikasi Dasbor memungkinkan organisasi untuk menyematkan aplikasi di dalam dasbor untuk menyediakan konteks bagi agen dukungan pelanggan. Fitur ini memungkinkan Anda membuat aplikasi secara independen dan menyematkannya untuk menyediakan informasi pengguna, pesanan, atau riwayat pembayaran sebelumnya.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Belum ada aplikasi dasbor yang dikonfigurasi untuk akun ini", "LOADING": "Mengambil aplikasi dasbor...", "TABLE_HEADER": { "NAME": "Nama", - "ENDPOINT": "Titik akhir" + "ENDPOINT": "Titik akhir", + "ACTIONS": "Aksi" }, "EDIT_TOOLTIP": "Edit aplikasi", "DELETE_TOOLTIP": "Hapus aplikasi" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/id/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/id/labelsMgmt.json index 133e3e54a..fa2dd52d9 100644 --- a/app/javascript/dashboard/i18n/locale/id/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/id/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Mengambil label", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Cari label...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Tidak ada item yang cocok dengan kueri ini", "LIST": { "404": "Tidak ada label yang tersedia di akun ini.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nama", "DESCRIPTION": "Deskripsi", - "COLOR": "Warna" + "COLOR": "Warna", + "ACTION": "Aksi" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/id/macros.json b/app/javascript/dashboard/i18n/locale/id/macros.json index 4d39b93d5..ff9b66392 100644 --- a/app/javascript/dashboard/i18n/locale/id/macros.json +++ b/app/javascript/dashboard/i18n/locale/id/macros.json @@ -3,9 +3,12 @@ "HEADER": "Makro", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Tambahkan makro baru", "HEADER_BTN_TXT_SAVE": "Simpan makro", "LOADING": "Mengambil makro", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Terjadi kesalahan. Silakan coba lagi", "ORDER_INFO": "Makro akan dijalankan sesuai dengan urutan penambahan tindakan-tindakan Anda. Anda dapat mengatur ulang tindakan-tindakan tersebut dengan menggesernya menggunakan pegangan di sebelah setiap node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nama", "CREATED BY": "Dibuat oleh", "LAST_UPDATED_BY": "Terakhir diperbarui oleh", - "VISIBILITY": "Visibilitas" + "VISIBILITY": "Visibilitas", + "ACTIONS": "Aksi" }, "404": "Tidak ditemukan makro" }, diff --git a/app/javascript/dashboard/i18n/locale/id/mfa.json b/app/javascript/dashboard/i18n/locale/id/mfa.json index dee8f80e1..9d89d2e8b 100644 --- a/app/javascript/dashboard/i18n/locale/id/mfa.json +++ b/app/javascript/dashboard/i18n/locale/id/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/id/report.json b/app/javascript/dashboard/i18n/locale/id/report.json index 35393f1da..bee3aa28b 100644 --- a/app/javascript/dashboard/i18n/locale/id/report.json +++ b/app/javascript/dashboard/i18n/locale/id/report.json @@ -3,7 +3,7 @@ "HEADER": "Percakapan", "LOADING_CHART": "Memuat data grafik...", "NO_ENOUGH_DATA": "Kami belum menerima cukup data untuk membuat laporan, Silakan coba lagi nanti.", - "DOWNLOAD_AGENT_REPORTS": "Unduh laporan agen", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Gagal mengambil data, silakan coba lagi nanti.", "SUMMARY_FETCHING_FAILED": "Gagal mengambil ringkasan, silakan coba lagi nanti.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Gambaran Agen", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Memuat data grafik...", "NO_ENOUGH_DATA": "Kami belum menerima cukup data untuk membuat laporan, Silakan coba lagi nanti.", "DOWNLOAD_AGENT_REPORTS": "Unduh laporan agen", "FILTER_DROPDOWN_LABEL": "Pilih Agen", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Mencari Agen" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Percakapan", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Kami belum menerima cukup data untuk membuat laporan, Silakan coba lagi nanti.", "DOWNLOAD_LABEL_REPORTS": "Unduh laporan label", "FILTER_DROPDOWN_LABEL": "Pilih label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Cari label" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Percakapan", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Pilih kotak masuk", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Percakapan", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Gambaran Tim", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Memuat data grafik...", "NO_ENOUGH_DATA": "Kami belum menerima cukup data untuk membuat laporan, Silakan coba lagi nanti.", "DOWNLOAD_TEAM_REPORTS": "Unduh laporan tim", "FILTER_DROPDOWN_LABEL": "Pilih Tim", + "FILTERS": { + "ADD_FILTER": "Tambah filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Mencari tim" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Percakapan", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Laporan CSAT", - "NO_RECORDS": "Tidak ada respons survey CSAT yang tersedia.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Unduh Laporan CSAT", "DOWNLOAD_FAILED": "Gagal mengunduh Laporan CSAT", "FILTERS": { + "ADD_FILTER": "Tambah filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Mencari Agen", + "INBOXES": "Search inboxes", + "TEAMS": "Mencari tim", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Pilih Agen" + "LABEL": "Agen" + }, + "INBOXES": { + "LABEL": "Kotak masuk" + }, + "TEAMS": { + "LABEL": "Tim" + }, + "RATINGS": { + "LABEL": "Penilaian" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontak", - "AGENT_NAME": "Agen yang ditugaskan", + "AGENT_NAME": "Agen", "RATING": "Peringkat", - "FEEDBACK_TEXT": "Komentar umpan balik" - } + "FEEDBACK_TEXT": "Komentar umpan balik", + "CONVERSATION": "Percakapan", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total respons", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Peringkat respons", "TOOLTIP": "Total jumlah respons / Total jumlah pesan survey CSAT yang terkirim * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Simpan", + "CANCEL": "Batalkan", + "SAVING": "Menyimpan...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/id/settings.json b/app/javascript/dashboard/i18n/locale/id/settings.json index efbc1930b..93bb7fb58 100644 --- a/app/javascript/dashboard/i18n/locale/id/settings.json +++ b/app/javascript/dashboard/i18n/locale/id/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Unduh", "UPLOADING": "Mengunggah...", - "INSTAGRAM_STORY_UNAVAILABLE": "Cerita ini tidak lagi tersedia." + "INSTAGRAM_STORY_UNAVAILABLE": "Cerita ini tidak lagi tersedia.", + "INSTAGRAM_STORY_REPLY": "Membalas cerita Anda:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Lihat di peta" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Baca dokumen", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Fitur", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Pembayaran", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Cari atribut" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Selesaikan percakapan", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Selesaikan percakapan", + "CANCEL": "Batalkan" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ya", + "NO": "Tidak" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! Kami tidak dapat menemukan akun Chatwoot apa pun. Harap buat akun baru untuk melanjutkan.", "NEW_ACCOUNT": "Akun Baru", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Batalkan" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/id/signup.json b/app/javascript/dashboard/i18n/locale/id/signup.json index dac2beec5..b580845a0 100644 --- a/app/javascript/dashboard/i18n/locale/id/signup.json +++ b/app/javascript/dashboard/i18n/locale/id/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Buat akun", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Daftar", "TESTIMONIAL_HEADER": "Hanya butuh satu langkah untuk maju", "TESTIMONIAL_CONTENT": "Anda hanya tinggal selangkah lagi untuk berinteraksi dengan pelanggan Anda, mempertahankan mereka, dan menemukan yang baru.", diff --git a/app/javascript/dashboard/i18n/locale/id/sla.json b/app/javascript/dashboard/i18n/locale/id/sla.json index 053d13498..2635f7bab 100644 --- a/app/javascript/dashboard/i18n/locale/id/sla.json +++ b/app/javascript/dashboard/i18n/locale/id/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/id/snooze.json b/app/javascript/dashboard/i18n/locale/id/snooze.json new file mode 100644 index 000000000..7b6703a08 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/id/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "jam", + "DAY": "hari", + "DAYS": "days", + "WEEK": "day", + "WEEKS": "weeks", + "MONTH": "week", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "besok", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "minggu depan", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "day", + "DAY": "hari" + } +} diff --git a/app/javascript/dashboard/i18n/locale/id/teamsSettings.json b/app/javascript/dashboard/i18n/locale/id/teamsSettings.json index 4894ecb07..cd551726d 100644 --- a/app/javascript/dashboard/i18n/locale/id/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/id/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Mencari tim...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Belum ada tim yang dibuat pada akun ini.", "EDIT_TEAM": "Edit Tim", diff --git a/app/javascript/dashboard/i18n/locale/is/agentBots.json b/app/javascript/dashboard/i18n/locale/is/agentBots.json index 3086c7959..31fe17975 100644 --- a/app/javascript/dashboard/i18n/locale/is/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/is/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Aðgerðir" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/is/agentMgmt.json b/app/javascript/dashboard/i18n/locale/is/agentMgmt.json index c782fa874..8eb017f11 100644 --- a/app/javascript/dashboard/i18n/locale/is/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Stjórnandi", "AGENT": "Þjónustufulltrúi" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Það eru engir þjónustufulltrúar tengdir við þennan reikning", "TITLE": "Umsýsla þjónustufulltrúa í þínu teymi", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Náði ekki að tengjast við netþjóna Woot, vinsamlegast reynið aftur" } }, + "SEARCH_PLACEHOLDER": "Leita að þjónustufulltrúum...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Engar niðurstöður fundust." }, diff --git a/app/javascript/dashboard/i18n/locale/is/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/is/attributesMgmt.json index 84f083763..e4b20122e 100644 --- a/app/javascript/dashboard/i18n/locale/is/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Leita í eiginleikum...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/is/automation.json b/app/javascript/dashboard/i18n/locale/is/automation.json index b183ba597..d6d5c1ae8 100644 --- a/app/javascript/dashboard/i18n/locale/is/automation.json +++ b/app/javascript/dashboard/i18n/locale/is/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nafn", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Aðgerðir" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Opna samtal" + "OPEN_CONVERSATION": "Opna samtal", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/is/bulkActions.json b/app/javascript/dashboard/i18n/locale/is/bulkActions.json index 91c4458ec..4a62fcc66 100644 --- a/app/javascript/dashboard/i18n/locale/is/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/is/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Engar merkingar fundust", diff --git a/app/javascript/dashboard/i18n/locale/is/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/is/cannedMgmt.json index 10a215cde..b6a783711 100644 --- a/app/javascript/dashboard/i18n/locale/is/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Stöðluð svör", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Það eru engin atriði sem passa við þessa fyrirspurn.", "LIST": { "404": "Það eru engin stöðluð svör aðgengileg á þessum reikning.", diff --git a/app/javascript/dashboard/i18n/locale/is/chatlist.json b/app/javascript/dashboard/i18n/locale/is/chatlist.json index 44ec15817..0593cad1d 100644 --- a/app/javascript/dashboard/i18n/locale/is/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/is/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/is/contact.json b/app/javascript/dashboard/i18n/locale/is/contact.json index 6cca35038..8ee019720 100644 --- a/app/javascript/dashboard/i18n/locale/is/contact.json +++ b/app/javascript/dashboard/i18n/locale/is/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Engir tengiliðir fundust", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Til:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Viðfangsefni :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/is/conversation.json b/app/javascript/dashboard/i18n/locale/is/conversation.json index 3f42732c9..cf447402b 100644 --- a/app/javascript/dashboard/i18n/locale/is/conversation.json +++ b/app/javascript/dashboard/i18n/locale/is/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Skilaboðum eytt", "FAIL_DELETE_MESSSAGE": "Gat ekki eytt skilaboðum! Reynið aftur", "NO_RESPONSE": "Ekkert svar", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Úthlutaði teymi #{team} á samtalsauðkenni {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter fyrir nýja línu. Byrjaðu á '/' til að velja tilbúið svar.", "PRIVATE_MSG_INPUT": "Shift + enter fyrir nýja línu. Þetta verður aðeins sýnilegt fyrir þjónustufulltrúa", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Skilaboðundirskrift er ekki stillt, vinsamlegast stilltu hana í prófílstillingum.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Dragðu og slepptu viðhenginu hingað", "START_AUDIO_RECORDING": "Hefja hljóðupptöku", "STOP_AUDIO_RECORDING": "Stoppa hljóðupptöku", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Bæta við bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Skráin fer framyfir hámarksstærð viðhengja ({MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE})", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Ekki er hægt að senda þessi skilaboð, vinsamlegast reyndu aftur síðar", "SENT_BY": "Sent af:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Tókst ekki að senda skilaboð! Reyndu aftur", "TRY_AGAIN": "reyna aftur", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Hætta við", "SEND_EMAIL_SUCCESS": "Afritið af samtalinu var sent", "SEND_EMAIL_ERROR": "Það kom villa, vinsamlegas reyndu aftur", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Senda afritið á viðskiptavinin", "SEND_TO_AGENT": "Sendu afritið til úthlutaðs þjónustufulltrúa", diff --git a/app/javascript/dashboard/i18n/locale/is/customRole.json b/app/javascript/dashboard/i18n/locale/is/customRole.json index 10e1aae86..93b5c2e44 100644 --- a/app/javascript/dashboard/i18n/locale/is/customRole.json +++ b/app/javascript/dashboard/i18n/locale/is/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Það eru engin atriði sem passa við þessa fyrirspurn.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/is/datePicker.json b/app/javascript/dashboard/i18n/locale/is/datePicker.json index 90bf342a9..11844dcc7 100644 --- a/app/javascript/dashboard/i18n/locale/is/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/is/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Síðustu 3 mánuði", "LAST_6_MONTHS": "Síðustu 6 mánuði", "LAST_YEAR": "Síðasta ár", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/is/general.json b/app/javascript/dashboard/i18n/locale/is/general.json index d1c1a4668..f9dfc99e4 100644 --- a/app/javascript/dashboard/i18n/locale/is/general.json +++ b/app/javascript/dashboard/i18n/locale/is/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Já", + "NO": "Nei" } } diff --git a/app/javascript/dashboard/i18n/locale/is/generalSettings.json b/app/javascript/dashboard/i18n/locale/is/generalSettings.json index 6c7af2ba0..4ba79e75c 100644 --- a/app/javascript/dashboard/i18n/locale/is/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/is/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Leita eða stökkva til", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Almennar", "REPORTS": "Skýrslur", diff --git a/app/javascript/dashboard/i18n/locale/is/helpCenter.json b/app/javascript/dashboard/i18n/locale/is/helpCenter.json index 878352846..8026a3816 100644 --- a/app/javascript/dashboard/i18n/locale/is/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/is/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Vinsamlegast bættu við fyrirsögn greinarinnar og innihaldi þá er aðeins þú sem getur uppfært stillingarnar" }, diff --git a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json index e545296a7..6ded7422c 100644 --- a/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Innhólf", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Slökkt" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Virkt", - "DISABLED": "Slökkt" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Virkja" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Samtöl halda áfram með tölvupósti ef tengiliðanetfangið er tiltækt.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Kveikja eða slökkva á samtíma samtölum fyrir sama tengilið í þessu innhólfi", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Virkja eða slökkva á sjálfvirkri úthlutun nýrra samtöla til umboðsmanna sem bætt er við þetta innhólf.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Enginn", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Takmarkaðu hámarksfjölda samtala úr þessu innhólfi sem hægt er að úthluta sjálfkrafa á þjónustufulltrúa" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Hætta við", + "CONFIRM_DELETE": "Eyða", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Endurauðkenna", "SUBTITLE": "Facebook tengingin þín er útrunnin, vinsamlegast tengdu Facebook síðuna þína aftur til að halda áfram þjónustu", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Dagur", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Upphafstími ætti að vera fyrir lokunartíma.", "CHOOSE": "Velja" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Eftir sólarhring" }, "WIDGET_COLOR_LABEL": "Litur Widgets", - "WIDGET_BUBBLE_POSITION_LABEL": "Staðsetning Widget Blöðru", - "WIDGET_BUBBLE_TYPE_LABEL": "Tegund Widget Blöðru", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Spjallaðu við okkur", - "LABEL": "Titill Widget Blöðru", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Spjallaðu við okkur" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Svarar iðulega innan nokkura mínútna", diff --git a/app/javascript/dashboard/i18n/locale/is/integrationApps.json b/app/javascript/dashboard/i18n/locale/is/integrationApps.json index 94a3b065e..def80a909 100644 --- a/app/javascript/dashboard/i18n/locale/is/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/is/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "Það eru engar {integrationId} samþættingar stilltar á þessum reikningi.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Virkt", "DISABLED": "Slökkt" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Innhólf", + "ACTIONS": "Aðgerðir", "DELETE": { "BUTTON_TEXT": "Eyða" } diff --git a/app/javascript/dashboard/i18n/locale/is/integrations.json b/app/javascript/dashboard/i18n/locale/is/integrations.json index aa164a4fc..8df6b59df 100644 --- a/app/javascript/dashboard/i18n/locale/is/integrations.json +++ b/app/javascript/dashboard/i18n/locale/is/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Hætta við", "DESC": "Vefkróks (e. Webhook) viðburðir veita þér rauntíma upplýsingar um hvað er að gerast á Chatwoot reikningnum þínum. Vinsamlega sláðu inn gilda vefslóð til að stilla svarhringingu (e. callback).", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Eyða", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Mælaborðsforrit

Mælaborðsforrit gera fyrirtækjum kleift að innsteypa (e. embed) forrit inn í Chatwoot mælaborðið til að veita þjónustufulltrúum samhengi. Þessi eiginleiki gerir þér kleift að búa til forrit sjálfstætt og innsteypa það inn í mælaborðið til að veita notendaupplýsingar, pantanir þeirra eða fyrri greiðsluferla.

Þegar þú innsteypir forritið þitt með því að nota mælaborðið í Chatwoot mun forritið þitt fáðu samhengi samtalsins og sambandsins sem gluggaviðburð (e. window event). Settu upp hlustanda fyrir skilaboðaviðburðinn á síðunni þinni til að fá samhengið.

Til að bæta við nýju stjórnborðsforriti skaltu smella á hnappinn 'Bæta við nýju stjórnborðsforriti'.

", "DESCRIPTION": "Mælaborðsforrit gera fyrirtækjum kleift að innsteypa (e. embed) forrit inn í mælaborðið til að veita þjónustufulltrúa samhengi. Þessi eiginleiki gerir þér kleift að búa til forrit sjálfstætt og innsteypa það inn til að veita notendaupplýsingar, pantanir þeirra eða fyrri greiðsluferil.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Engin mælaborðsforrit eru stillt á þessum reikningi ennþá", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Nafn", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Aðgerðir" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/is/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/is/labelsMgmt.json index ad4a5b2fe..74990673b 100644 --- a/app/javascript/dashboard/i18n/locale/is/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/is/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Leita að merkingum...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Það eru engin atriði sem passa við þessa fyrirspurn", "LIST": { "404": "Engar merkingar eru tiltækir á þessum reikningi.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nafn", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Aðgerðir" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/is/macros.json b/app/javascript/dashboard/i18n/locale/is/macros.json index 2e9daa248..4d5bb632f 100644 --- a/app/javascript/dashboard/i18n/locale/is/macros.json +++ b/app/javascript/dashboard/i18n/locale/is/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Fjölvi mun keyra í þeirri röð sem þú bætir við aðgerðum þínum. Þú getur endurraðað þeim með því að draga þau í handfangið við hlið hverrar nóðu.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nafn", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Aðgerðir" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/is/mfa.json b/app/javascript/dashboard/i18n/locale/is/mfa.json index aa7da19b6..bd7eb5cec 100644 --- a/app/javascript/dashboard/i18n/locale/is/mfa.json +++ b/app/javascript/dashboard/i18n/locale/is/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/is/report.json b/app/javascript/dashboard/i18n/locale/is/report.json index 923b60935..f6bd509b2 100644 --- a/app/javascript/dashboard/i18n/locale/is/report.json +++ b/app/javascript/dashboard/i18n/locale/is/report.json @@ -3,7 +3,7 @@ "HEADER": "Samtöl", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "Við höfum ekki fengið nógu marga gagnapunkta til að búa til skýrslu, vinsamlegast reyndu aftur síðar.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "Við höfum ekki fengið nógu marga gagnapunkta til að búa til skýrslu, vinsamlegast reyndu aftur síðar.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Veldu Þjónustufulltrúa", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Leita að þjónustufulltrúum" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtöl", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Við höfum ekki fengið nógu marga gagnapunkta til að búa til skýrslu, vinsamlegast reyndu aftur síðar.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Leita að merkingum" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtöl", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtöl", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "Við höfum ekki fengið nógu marga gagnapunkta til að búa til skýrslu, vinsamlegast reyndu aftur síðar.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Leita að teymum" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtöl", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "Engin svör við CSAT könnun eru fáanleg.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Leita að þjónustufulltrúum", + "INBOXES": "Search inboxes", + "TEAMS": "Leita að teymum", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Þjónustufulltrúi" + }, + "INBOXES": { + "LABEL": "Innhólf" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Þjónustufulltrúi", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Heildarfjöldi svara / Heildarfjöldi sendra CSAT könnunarskilaboða * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Hætta við", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/is/settings.json b/app/javascript/dashboard/i18n/locale/is/settings.json index 2d3c2b638..e470fc11f 100644 --- a/app/javascript/dashboard/i18n/locale/is/settings.json +++ b/app/javascript/dashboard/i18n/locale/is/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Sækja", "UPLOADING": "Hleður upp...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Fídusar", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Leita í eiginleikum" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Leysa samtal", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Leysa samtal", + "CANCEL": "Hætta við" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Já", + "NO": "Nei" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh ó! Við fundum enga Chatwoot reikninga. Vinsamlegast búðu til nýjan reikning til að halda áfram.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Hætta við" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/is/signup.json b/app/javascript/dashboard/i18n/locale/is/signup.json index e199471d2..7a7965142 100644 --- a/app/javascript/dashboard/i18n/locale/is/signup.json +++ b/app/javascript/dashboard/i18n/locale/is/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Nýskráning", "TESTIMONIAL_HEADER": "Það þarf aðeins eitt skref framávið", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/is/sla.json b/app/javascript/dashboard/i18n/locale/is/sla.json index aa7c06a15..f24c8793c 100644 --- a/app/javascript/dashboard/i18n/locale/is/sla.json +++ b/app/javascript/dashboard/i18n/locale/is/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/is/snooze.json b/app/javascript/dashboard/i18n/locale/is/snooze.json new file mode 100644 index 000000000..4a26b8809 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/is/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "dagur", + "WEEKS": "weeks", + "MONTH": "vika", + "MONTHS": "months", + "YEAR": "mánuður", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "dagur", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/is/teamsSettings.json b/app/javascript/dashboard/i18n/locale/is/teamsSettings.json index bb87ccf87..ba151639c 100644 --- a/app/javascript/dashboard/i18n/locale/is/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/is/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Leita að teymum...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Það eru engin teymi til á þessum reikningi.", "EDIT_TEAM": "Breyta teymi", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Ekki tókst að vista teymisupplýsingarnar. Reyndu aftur." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "NETFANG", + "AGENT": "Þjónustufulltrúi", + "EMAIL": "Tölvupóstfang", "BUTTON_TEXT": "Bæta við þjónustufulltrúum", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/it/agentBots.json b/app/javascript/dashboard/i18n/locale/it/agentBots.json index 36cd36b1f..55cc5de67 100644 --- a/app/javascript/dashboard/i18n/locale/it/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/it/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Caricamento editor...", "DESCRIPTION": "Gli Agent Bot sono membri virtuali del tuo team: gestiscono le attività di routine, lasciandoti più tempo per ciò che conta. Puoi gestirli da questa pagina o crearne di nuovi con il pulsante “Aggiungi Bot”.", "LEARN_MORE": "Informazioni sugli agent bot", + "COUNT": "{n} bot | {n} bot", + "SEARCH_PLACEHOLDER": "Cerca bot...", + "NO_RESULTS": "Nessun bot trovato corrispondente alla tua ricerca", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Caricamento bot...", "TABLE_HEADER": { "DETAILS": "Dettagli Bot", - "URL": "URL Webhook" + "URL": "URL Webhook", + "ACTIONS": "Azioni" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/it/agentMgmt.json b/app/javascript/dashboard/i18n/locale/it/agentMgmt.json index 22a38f4c7..55437209f 100644 --- a/app/javascript/dashboard/i18n/locale/it/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Amministratore", "AGENT": "Operatore" }, + "COUNT": "{n} operatore | {n} operatori", "LIST": { "404": "Non ci sono operatori associati a questo account", "TITLE": "Gestisci gli operatori nel tuo team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Impossibile connettersi al server Woot, riprova più tardi" } }, + "SEARCH_PLACEHOLDER": "Cerca operatori...", + "NO_RESULTS": "Nessun operatore trovato corrispondente alla tua ricerca", "SEARCH": { "NO_RESULTS": "Nessun risultato trovato." }, diff --git a/app/javascript/dashboard/i18n/locale/it/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/it/attributesMgmt.json index f23da232a..41e661e4d 100644 --- a/app/javascript/dashboard/i18n/locale/it/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Caricamento attributi personalizzati", "DESCRIPTION": "Un attributo personalizzato tiene traccia di informazioni aggiuntive sui tuoi contatti o sulle conversazioni — ad esempio il piano di abbonamento o la data del primo acquisto. Puoi aggiungere diversi tipi di attributi personalizzati, come testo, elenchi o numeri, per raccogliere le informazioni specifiche di cui hai bisogno.", "LEARN_MORE": "Scopri di più sugli attributi personalizzati", + "COUNT": "{n} attributo | {n} attributi", + "SEARCH_PLACEHOLDER": "Cerca attributi...", + "NO_RESULTS": "Nessun attributo trovato corrispondente alla tua ricerca", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversazione", "CONTACT": "Contatto" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Abilita convalida espressione regolare" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Risoluzione" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/it/automation.json b/app/javascript/dashboard/i18n/locale/it/automation.json index b4d400e5a..e9e67cd07 100644 --- a/app/javascript/dashboard/i18n/locale/it/automation.json +++ b/app/javascript/dashboard/i18n/locale/it/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automazioni", "DESCRIPTION": "Le automazioni possono sostituire e semplificare i processi esistenti che richiedono azioni manuale, ad esempio l'aggiunta di etichette e l'assegnazione di conversazioni all'operatore più adatto. Grazie alle automazioni i team possono concentrarsi sui propri punti di forza e ridurre il tempo dedicato alle attività ripetitive.", "LEARN_MORE": "Scopri di più sulle automazioni", - "HEADER_BTN_TXT": "Aggiungi Regola di Automazione", + "COUNT": "{n} automazione | {n} automazioni", + "HEADER_BTN_TXT": "Crea Automazione", "LOADING": "Caricamento regole di automazione", + "SEARCH_PLACEHOLDER": "Cerca regole di automazione...", + "NO_RESULTS": "Nessuna regola di automazione trovata corrispondente alla tua ricerca", "ADD": { "TITLE": "Aggiungi Regola di Automazione", "SUBMIT": "Crea", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nome", - "DESCRIPTION": "Descrizione", "ACTIVE": "Attiva", - "CREATED_ON": "Creata il" + "CREATED_ON": "Creata il", + "ACTIONS": "Azioni" }, "404": "Nessuna regola di automazione trovata" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Aggiungi una Nota Privata", "CHANGE_PRIORITY": "Modifica Priorità", "ADD_SLA": "Aggiungi SLA", - "OPEN_CONVERSATION": "Riapri conversazione" + "OPEN_CONVERSATION": "Riapri conversazione", + "PENDING_CONVERSATION": "Segna conversazione come in sospeso" }, "MESSAGE_TYPES": { "INCOMING": "Messaggio in Arrivo", diff --git a/app/javascript/dashboard/i18n/locale/it/bulkActions.json b/app/javascript/dashboard/i18n/locale/it/bulkActions.json index 55431f7f2..fe3c2b4d9 100644 --- a/app/javascript/dashboard/i18n/locale/it/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/it/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Stato della conversazione aggiornato correttamente.", "UPDATE_FAILED": "Impossibile aggiornare le conversazioni. Riprova." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Impossibile risolvere le conversazioni a causa di attributi richiesti mancanti", + "PARTIAL_SUCCESS": "Alcune conversazioni necessitano di attributi richiesti per essere risolte, perciò sono state saltate" + }, "LABELS": { "ASSIGN_LABELS": "Assegna etichette", "NO_LABELS_FOUND": "Nessuna etichetta trovata", diff --git a/app/javascript/dashboard/i18n/locale/it/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/it/cannedMgmt.json index 69273f65b..3927203d9 100644 --- a/app/javascript/dashboard/i18n/locale/it/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Risposte Predefinite", "LEARN_MORE": "Scopri di più sulle risposte predefinite", "DESCRIPTION": "Le Risposte Predefinite sono modelli di risposte preparate che ti aiutano a rispondere rapidamente alle conversazioni. Gli operatori possono digitare il carattere '/' seguito dallo shortcode per inserire una risposta predefinita durante una conversazione. ", + "COUNT": "{n} risposta predefinita | {n} risposte predefinite", "HEADER_BTN_TXT": "Aggiungi risposta predefinita", "LOADING": "Caricamento risposte predefinite...", + "SEARCH_PLACEHOLDER": "Cerca Risposte Predefinite...", + "NO_RESULTS": "Nessuna Risposta Predefinita trovata corrispondente alla tua ricerca", "SEARCH_404": "Non ci sono elementi che corrispondono a questa richiesta.", "LIST": { "404": "Non ci sono risposte predefinite disponibili in questo account.", diff --git a/app/javascript/dashboard/i18n/locale/it/chatlist.json b/app/javascript/dashboard/i18n/locale/it/chatlist.json index 0e0c7f597..5d96f5bec 100644 --- a/app/javascript/dashboard/i18n/locale/it/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/it/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "In attesa di risposta: prima meno tempo in attesa" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priorità: prima le più importanti, Data creazione: prima le più vecchie" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/it/companies.json b/app/javascript/dashboard/i18n/locale/it/companies.json index 96c4d3823..bb80dd9c7 100644 --- a/app/javascript/dashboard/i18n/locale/it/companies.json +++ b/app/javascript/dashboard/i18n/locale/it/companies.json @@ -7,7 +7,7 @@ "NAME": "Nome", "DOMAIN": "Dominio", "CREATED_AT": "Creata alle", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Numero contatti" } }, "ORDER": { diff --git a/app/javascript/dashboard/i18n/locale/it/contact.json b/app/javascript/dashboard/i18n/locale/it/contact.json index 710a694cf..892de6660 100644 --- a/app/javascript/dashboard/i18n/locale/it/contact.json +++ b/app/javascript/dashboard/i18n/locale/it/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Aggiungi Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Aggiungi Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Aggiungi TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Nessun contatto corrisponde alla tua ricerca 🔍", "LIST_EMPTY_STATE_TITLE": "Nessun contatto disponibile in questa vista 📋", "ACTIVE_EMPTY_STATE_TITLE": "Nessun contatto attivo al momento 🌙" - } + }, + "LOAD_MORE": "Carica altro" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assegna Etichette", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "Non ci sono inbox disponibili per avviare una conversazione con questo contatto.", "CONTACT_SELECTOR": { "LABEL": "A:", - "TAG_INPUT_PLACEHOLDER": "Cerca un contatto tramite nome, email o numero di telefono", + "TAG_INPUT_PLACEHOLDER": "Inserisci almeno 2 caratteri per cercare per nome, email o numero di telefono", "CONTACT_CREATING": "Creazione contatto..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Oggetto :", "SUBJECT_PLACEHOLDER": "Inserisci qui l'oggetto email", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Cerca un contatto con il suo indirizzo email", + "CC_PLACEHOLDER": "Inserisci almeno 2 caratteri per cercare via email", "BCC_LABEL": "Ccn:", - "BCC_PLACEHOLDER": "Cerca un contatto con il suo indirizzo email", + "BCC_PLACEHOLDER": "Inserisci almeno 2 caratteri per cercare via email", "BCC_BUTTON": "Ccn" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/it/conversation.json b/app/javascript/dashboard/i18n/locale/it/conversation.json index fdc691c0e..2d881b17d 100644 --- a/app/javascript/dashboard/i18n/locale/it/conversation.json +++ b/app/javascript/dashboard/i18n/locale/it/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "Questo messaggio non è supportato. Puoi visualizzare questo messaggio sull'app Facebook / Instagram.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Questo messaggio non è supportato. Puoi visualizzare questo messaggio sull'app Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Questo messaggio non è supportato. Puoi visualizzare questo messaggio sull'app Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "Questo messaggio non è supportato. Puoi visualizzare questo messaggio sull'app TikTok.", "SUCCESS_DELETE_MESSAGE": "Messaggio eliminato con successo", "FAIL_DELETE_MESSSAGE": "Impossibile eliminare il messaggio! Riprova", "NO_RESPONSE": "Nessuna risposta", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assegnata etichetta #{labelName} alla conversazione id {conversationId}", "FAILED": "Impossibile assegnare l'etichetta. Per favore riprova." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Rimossa etichetta #{labelName} dalla conversazione id {conversationId}", + "FAILED": "Impossibile rimuovere l'etichetta. Riprova." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assegnato il team \"{team}\" alla conversazione id {conversationId}", "FAILED": "Impossibile assegnare il team. Riprova." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disabilita firma", "MSG_INPUT": "Premi MAIUSC + INVIO per andare a capo. Digita '/' per inserire una Risposta Predefinita.", "PRIVATE_MSG_INPUT": "Premi MAIUSC + INVIO per andare a capo. Sarà visibile solo agli Operatori", + "MESSAGING_RESTRICTED": "Non è possibile rispondere a questa conversazione", + "MESSAGING_RESTRICTED_WHATSAPP": "Puoi rispondere solamente con un messaggio modello: la finestra di 24 ore di WhatsApp è scaduta", + "MESSAGING_RESTRICTED_API": "Puoi rispondere solamente con un messaggio modello: la finestra di messaggistica è scaduta", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "La firma del messaggio non è configurata, configurala nelle impostazioni del profilo.", + "COPILOT_MSG_INPUT": "Dai ulteriori istruzioni a Copilot o fai un’altra richiesta. Premi Invio per inviare il messaggio successivo", "CLICK_HERE": "Clicca qui per aggiornare", "WHATSAPP_TEMPLATES": "Modelli Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Trascina qui per allegare", "START_AUDIO_RECORDING": "Avvia registrazione audio", "STOP_AUDIO_RECORDING": "Interrompi registrazione audio", - "": "", + "COPILOT_THINKING": "Copilot sta pensando", "EMAIL_HEAD": { "TO": "A", "ADD_BCC": "Aggiungi Ccn", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversazione eliminata con successo", "FAIL_DELETE_CONVERSATION": "Impossibile eliminare la conversazione! Riprova", "FILE_SIZE_LIMIT": "Il file supera il limite di {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB per l'allegato", + "FILE_TYPE_NOT_SUPPORTED": "I file di tipo {fileName} non sono supportati in questa conversazione", "MESSAGE_ERROR": "Impossibile inviare questo messaggio, riprova più tardi", "SENT_BY": "Inviato da:", "BOT": "Bot", + "NATIVE_APP": "App nativa", + "NATIVE_APP_ADVISORY": "Questo messaggio è stato inviato da un'app nativa. Rispondi da qui per mantenere la finestra del messaggio.", "SEND_FAILED": "Impossibile inviare il messaggio! Riprova", "TRY_AGAIN": "riprova", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Annulla", "SEND_EMAIL_SUCCESS": "La trascrizione della chat è stata inviata con successo", "SEND_EMAIL_ERROR": "Si è verificato un errore, riprova", + "SEND_EMAIL_PAYMENT_REQUIRED": "La trascrizione email non è disponibile sul tuo piano attuale. Per favore aggiorna per utilizzare questa funzionalità.", "FORM": { "SEND_TO_CONTACT": "Invia la trascrizione al cliente", "SEND_TO_AGENT": "Invia la trascrizione all'operatore assegnato", diff --git a/app/javascript/dashboard/i18n/locale/it/customRole.json b/app/javascript/dashboard/i18n/locale/it/customRole.json index 6e6203cf1..6c883f8ea 100644 --- a/app/javascript/dashboard/i18n/locale/it/customRole.json +++ b/app/javascript/dashboard/i18n/locale/it/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Ruoli Personalizzati", "LEARN_MORE": "Scopri di più sui ruoli personalizzati", "DESCRIPTION": "I ruoli personalizzati sono ruoli creati dal proprietario o amministratore dell'account. Questi ruoli possono essere assegnati agli operatori per definire i loro accessi e i loro permessi all'interno dell'account. I ruoli personalizzati possono essere creati con permessi e livelli di accesso specifici per soddisfare le esigenze dell'organizzazione.", + "COUNT": "{n} ruolo personalizzato | {n} ruoli personalizzati", "HEADER_BTN_TXT": "Aggiungi ruolo personalizzato", "LOADING": "Caricamento ruoli personalizzati...", + "SEARCH_PLACEHOLDER": "Cerca ruoli personalizzati...", + "NO_RESULTS": "Nessun ruolo personalizzato trovato corrispondente alla tua ricerca", "SEARCH_404": "Non ci sono elementi che corrispondono a questa richiesta.", "PAYWALL": { "TITLE": "Aggiorna per creare ruoli personalizzati", diff --git a/app/javascript/dashboard/i18n/locale/it/datePicker.json b/app/javascript/dashboard/i18n/locale/it/datePicker.json index de8850b70..7af7f7a7d 100644 --- a/app/javascript/dashboard/i18n/locale/it/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/it/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Periodo precedente", + "NEXT_PERIOD": "Periodo successivo", + "WEEK_NUMBER": "Settimana #{weekNumber}", "APPLY_BUTTON": "Applica", "CLEAR_BUTTON": "Rimuovi", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Ultimi 3 mesi", "LAST_6_MONTHS": "Ultimi 6 mesi", "LAST_YEAR": "Ultimo anno", + "THIS_WEEK": "Questa settimana", + "MONTH_TO_DATE": "Questo mese", "CUSTOM_RANGE": "Intervallo di date personalizzato" } } diff --git a/app/javascript/dashboard/i18n/locale/it/general.json b/app/javascript/dashboard/i18n/locale/it/general.json index 00f724b7b..e052fef78 100644 --- a/app/javascript/dashboard/i18n/locale/it/general.json +++ b/app/javascript/dashboard/i18n/locale/it/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Chiudi", "BETA": "Beta", - "BETA_DESCRIPTION": "Questa funzione è in beta e può subire variazioni mentre la miglioriamo." + "BETA_DESCRIPTION": "Questa funzione è in beta e può subire variazioni mentre la miglioriamo.", + "ACCEPT": "Accetta", + "DISCARD": "Annulla", + "PREFERRED": "Preferito" + }, + "CHOICE_TOGGLE": { + "YES": "Sì", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/it/generalSettings.json b/app/javascript/dashboard/i18n/locale/it/generalSettings.json index 1b84b3b3c..5b12db78b 100644 --- a/app/javascript/dashboard/i18n/locale/it/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/it/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Cerca o vai a", + "SNOOZE_PLACEHOLDER": "Digita un momento, ad esempio domani, tra 2 ore, venerdì prossimo, il 15 gennaio, ecc...", "SECTIONS": { "GENERAL": "Generale", "REPORTS": "Report", diff --git a/app/javascript/dashboard/i18n/locale/it/helpCenter.json b/app/javascript/dashboard/i18n/locale/it/helpCenter.json index 920199cca..78add9aaa 100644 --- a/app/javascript/dashboard/i18n/locale/it/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/it/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Errore durante l'eliminazione dell'articolo" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Impossibile riordinare gli articoli. Riprova." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Impossibile riordinare le categorie. Riprova." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Si prega di aggiungere l'intestazione e il contenuto dell'articolo quindi solo è possibile aggiornare le impostazioni" }, diff --git a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json index 0963fd3f3..923339125 100644 --- a/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inbox", "DESCRIPTION": "Un canale è il mezzo di comunicazione che il cliente usa per interagire con te. Una Inbox è lo spazio in cui gestisci le interazioni di uno specifico canale. Può includere comunicazioni provenienti da diverse fonti, come email, live chat e social media.", "LEARN_MORE": "Scopri di più sulle Inbox", + "COUNT": "{n} inbox | {n} inbox", + "SEARCH_PLACEHOLDER": "Ricerca Inbox...", + "NO_RESULTS": "Nessuna inbox trovata corrispondente alla tua ricerca", "RECONNECTION_REQUIRED": "La tua Inbox è disconnessa. Non riceverai nuovi messaggi finché non la autorizzerai nuovamente.", "CLICK_TO_RECONNECT": "Clicca qui per riconnetterti.", "WHATSAPP_REGISTRATION_INCOMPLETE": "La registrazione di WhatsApp Business non è completa. Si prega di controllare lo stato del nome visualizzato in Meta Business Manager prima di riconnettersi.", @@ -575,7 +578,7 @@ "SUBTITLE": "Utilizza solo il nome dell'azienda come nome mittente nell'intestazione dell'email." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configura il tuo nome azienda", + "BUTTON_TEXT": "Configura il tuo nome azienda", "PLACEHOLDER": "Inserisci il nome della tua azienda", "SAVE_BUTTON_TEXT": "Salva" } @@ -589,8 +592,10 @@ "DISABLED": "Disabilitato" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Abilitato", - "DISABLED": "Disabilitato" + "ENABLED": "Riapri la stessa conversazione", + "DISABLED": "Crea una nuova conversazione", + "ENABLED_DESCRIPTION": "Quando un contatto invia un nuovo messaggio, la conversazione precedente viene riaperta.", + "DISABLED_DESCRIPTION": "Viene creata una nuova conversazione ogni volta dopo la risoluzione della precedente." }, "ENABLE_HMAC": { "LABEL": "Abilita" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Preferenze Canali", + "WIDGET_FEATURES": "Funzionalità Widget", "ACCOUNT_HEALTH": { "TITLE": "Gestisci il tuo account WhatsApp", "DESCRIPTION": "Controlla lo stato del tuo account WhatsApp, i limiti di messaggi e la qualità. Aggiorna le impostazioni o risolvi i problemi se necessario", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Abilita/Disabilita la visualizzazione del nome dell'Operatore nelle email. Se disabilitato, verrà mostrato il nome dell'azienda", "ENABLE_CONTINUITY_VIA_EMAIL": "Abilita la continuità della conversazione via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Le conversazioni continueranno via email se l'indirizzo email del contatto è disponibile.", - "LOCK_TO_SINGLE_CONVERSATION": "Limita ad una conversazione unica", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Abilita o disabilita conversazioni multiple per lo stesso contatto in questa Inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Routing Conversazioni", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Gestisci come vengono create le conversazioni per i contatti esistenti", "INBOX_UPDATE_TITLE": "Impostazioni Inbox", "INBOX_UPDATE_SUB_TEXT": "Aggiorna le impostazioni inbox", "AUTO_ASSIGNMENT_SUB_TEXT": "Abilita o disabilita l'assegnazione automatica di nuove conversazioni agli agenti aggiunti a questa casella.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Seleziona Help Center", "SELECT_PLACEHOLDER": "Seleziona Help Center", + "NONE": "Nessuno", "REMOVE": "Rimuovi Help Center", "SUB_TEXT": "Allega un Help Center con la Inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Inserisci un valore maggiore di 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limita il numero massimo di conversazioni da questa casella di posta che possono essere assegnate automaticamente ad un agente" }, + "ASSIGNMENT": { + "TITLE": "Assegnazione Conversazione", + "DESCRIPTION": "Assegna automaticamente le conversazioni in entrata agli operatori disponibili in base ai criteri di assegnazione", + "ENABLE_AUTO_ASSIGNMENT": "Abilita assegnazione automatica delle conversazioni", + "DEFAULT_RULES_TITLE": "Regole di assegnazione predefinite", + "DEFAULT_RULES_DESCRIPTION": "Usa il comportamento di assegnazione predefinito per tutte le conversazioni", + "DEFAULT_RULE_1": "Prima le conversazioni create per prime", + "DEFAULT_RULE_2": "Distribuzione round robin", + "CUSTOMIZE_WITH_POLICY": "Personalizza con policy di assegnazione", + "USING_POLICY": "Policy di assegnazione personalizzata in uso per questa inbox", + "CUSTOMIZE_POLICY": "Personalizza con policy di assegnazione", + "DELETE_POLICY": "Elimina policy", + "POLICY_LABEL": "Policy di assegnazione", + "ASSIGNMENT_ORDER_LABEL": "Ordine di assegnazione", + "ASSIGNMENT_METHOD_LABEL": "Metodo di assegnazione", + "POLICY_STATUS": { + "ACTIVE": "Attiva", + "INACTIVE": "Inattive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Creata prima", + "LONGEST_WAITING": "Attesa più lunga" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Assegnazione bilanciata" + }, + "UPGRADE_PROMPT": "Le policy di assegnazione personalizzate sono disponibili nel piano Business", + "UPGRADE_TO_BUSINESS": "Aggiorna a Business", + "DEFAULT_POLICY_LINKED": "Policy predefinita collegata", + "DEFAULT_POLICY_DESCRIPTION": "Collega una policy di assegnazione personalizzata per impostare come le conversazioni devono essere assegnate agli operatori in questa inbox.", + "LINK_EXISTING_POLICY": "Collega policy esistente", + "CREATE_NEW_POLICY": "Crea nuova policy", + "NO_POLICIES": "Nessuna policy di assegnazione trovata", + "VIEW_ALL_POLICIES": "Mostra tutte le policy", + "CURRENT_BEHAVIOR": "Stai utilizzando le regole di assegnazione predefinite:", + "LINK_SUCCESS": "Policy di assegnazione collegata correttamente", + "LINK_ERROR": "Impossibile collegare la policy di assegnazione" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Eliminare la policy di assegnazione?", + "DELETE_CONFIRM_MESSAGE": "Vuoi davvero rimuovere questa policy di assegnazione da questa inbox? La inbox tornerà alle regole di assegnazione predefinite.", + "CANCEL": "Annulla", + "CONFIRM_DELETE": "Elimina", + "DELETE_SUCCESS": "Policy di assegnazione rimossa correttamente", + "DELETE_ERROR": "Impossibile rimuovere la policy di assegnazione" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Riautorizza", "SUBTITLE": "La tua connessione a Facebook è scaduta, ricollegati alla tua pagina Facebook per continuare i servizi", @@ -837,6 +892,20 @@ "CONFIRM": "Crea nuovo modello", "CANCEL": "Torna indietro" }, + "UTILITY_ANALYZER": { + "ACTION": "Verifica idoneità Utility", + "HELPER_NOTE": "Verifica questo messaggio prima di inviare la richiesta per aumentare le probabilità che venga classificato come Utility.\nIl sistema crea un template CSAT dedicato con pulsanti per la raccolta feedback e lo invia come Utility; Meta potrebbe comunque riclassificarlo come Marketing in base al contenuto.", + "RESULT_LABEL": "Previsione categoria Meta", + "GUIDANCE_NOTE": "Si tratta di una verifica orientativa, non di una garanzia di approvazione da parte di Meta.", + "SUGGESTION_LABEL": "Suggerisci riscrittura conforme a Utility", + "APPLY": "Usa questa versione", + "ERROR_MESSAGE": "Impossibile analizzare il messaggio. Riprova.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Probabile Utility", + "LIKELY_MARKETING": "Probabile Marketing", + "UNCLEAR": "Classificazione incerta" + } + }, "SURVEY_RULE": { "LABEL": "Regola sondaggio", "DESCRIPTION_PREFIX": "Invia il sondaggio se la conversazione", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "seleziona etichette" }, "NOTE": "Nota: I sondaggi CSAT vengono inviati solo una volta per conversazione", - "WHATSAPP_NOTE": "Nota: Creeremo un modello e lo invieremo a WhatsApp per l'approvazione. Dopo essere stati approvati, i sondaggi saranno inviati solo una volta per conversazione, in base alle regole dei sondaggi.", + "WHATSAPP_NOTE": "Nota: al salvataggio, il sistema crea un template CSAT dedicato in WhatsApp (utilizzato per raccogliere valutazioni e feedback nei report) e lo invia come Utility per l’approvazione. Meta potrebbe comunque classificarlo come Marketing in base al contenuto. Dopo l’approvazione, il sondaggio viene inviato una sola volta per conversazione, secondo la regola impostata.", "API": { "SUCCESS_MESSAGE": "Impostazioni CSAT aggiornate correttamente", "ERROR_MESSAGE": "Impossibile aggiornare le impostazioni CSAT. Riprova più tardi." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Messaggio non disponibile per i visitatori", "TOGGLE_HELP": "Abilitare la disponibilità aziendale mostrerà le ore disponibili sul widget live chat anche se tutti gli operatori sono offline. Al di fuori delle ore di disponibilità gli utenti possono essere avvisati con un messaggio ed un modulo pre-chat.", "DAY": { + "DAY": "Giorno", + "AVAILABILITY": "Disponibilità", + "HOURS": "Ore", "ENABLE": "Abilita disponibilità per questo giorno", "UNAVAILABLE": "Non disponibile", - "HOURS": "ore", "VALIDATION_ERROR": "L'orario di inizio deve essere prima dell'orario di chiusura.", "CHOOSE": "Scegli" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In un giorno" }, "WIDGET_COLOR_LABEL": "Colore del widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posizione della bubble del widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Tipo di bubble del widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Posizione:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipo:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chatta con noi", - "LABEL": "Titolo del launcher della bubble del widget", + "LABEL": "Titolo del Launcher", "PLACE_HOLDER": "Chatta con noi" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Predefinito", - "CHAT": "Chat" + "CHAT": "Modalità Chat" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "In genere risponde in pochi minuti", diff --git a/app/javascript/dashboard/i18n/locale/it/integrationApps.json b/app/javascript/dashboard/i18n/locale/it/integrationApps.json index 0c7592443..ad210082c 100644 --- a/app/javascript/dashboard/i18n/locale/it/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/it/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Caricamento Integrazioni", "NO_HOOK_CONFIGURED": "Non ci sono integrazioni {integrationId} configurate in questo account.", "HEADER": "Applicazioni", + "COUNT": "{n} integrazione | {n} integrazioni", + "SEARCH_PLACEHOLDER": "Cerca...", + "NO_RESULTS": "Nessun risultato trovato corrispondente alla tua ricerca", "STATUS": { "ENABLED": "Abilitato", "DISABLED": "Disabilitato" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Caricamento hook integrazioni", "INBOX": "Inbox", + "ACTIONS": "Azioni", "DELETE": { "BUTTON_TEXT": "Elimina" } diff --git a/app/javascript/dashboard/i18n/locale/it/integrations.json b/app/javascript/dashboard/i18n/locale/it/integrations.json index c93f6905e..c39f064fa 100644 --- a/app/javascript/dashboard/i18n/locale/it/integrations.json +++ b/app/javascript/dashboard/i18n/locale/it/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Elimina Integrazione Shopify", "MESSAGE": "Sei sicuro di voler eliminare l'integrazione Shopify?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot si integra con più strumenti e servizi per migliorare l'efficienza del tuo team. Esplora l'elenco qui sotto per configurare le tue app preferite.", "LEARN_MORE": "Scopri di più sulle integrazioni", "LOADING": "Caricamento integrazioni", + "SEARCH_PLACEHOLDER": "Cerca integrazioni...", + "NO_RESULTS": "Nessuna integrazione trovata corrispondente alla tua ricerca", "CAPTAIN": { "DISABLED": "Captain non è abilitato sul tuo account.", "CLICK_HERE_TO_CONFIGURE": "Clicca qui per configurare", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Eventi Sottoscritti", "LEARN_MORE": "Scopri di più sui webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copia secret negli appunti", + "COPY_SUCCESS": "Secret copiato negli appunti", + "TOGGLE": "Cambia visibilità secret", + "CREATED_DESC": "Il tuo webhook è stato creato. Usa il secret qui sotto per verificare le signature del webhook. Per favore copialo ora — lo puoi ritrovare più tardi nel modulo di modifica webhook.", + "DONE": "Fatto" + }, + "COUNT": "{n} webhook | {n} webhook", + "SEARCH_PLACEHOLDER": "Cerca webhook...", + "NO_RESULTS": "Nessun webhook trovato corrispondente alla tua ricerca", "FORM": { "CANCEL": "Annulla", "DESC": "Gli eventi Webhook ti forniscono le informazioni in tempo reale su ciò che sta accadendo nel tuo account Chatwoot. Per favore inserisci un URL valido per configurare un callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Elimina", "DELETE_CONFIRMATION": { "TITLE": "Elimina l'integrazione", @@ -145,7 +160,29 @@ "EXPAND": "Espandi", "MAKE_FRIENDLY": "Cambia il tono del messaggio in amichevole", "MAKE_FORMAL": "Usa un tono formale", - "SIMPLIFY": "Semplifica" + "SIMPLIFY": "Semplifica", + "CONFIDENT": "Usa un tono sicuro", + "PROFESSIONAL": "Usa un tono professionale", + "CASUAL": "Usa un tono informale", + "STRAIGHTFORWARD": "Usa un tono diretto" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Migliora la risposta", + "IMPROVE_REPLY_SELECTION": "Migliora il testo selezionato", + "CHANGE_TONE": { + "TITLE": "Cambia tono", + "OPTIONS": { + "PROFESSIONAL": "Professionale", + "CASUAL": "Informale", + "STRAIGHTFORWARD": "Diretto", + "CONFIDENT": "Sicuro", + "FRIENDLY": "Amichevole" + } + }, + "GRAMMAR": "Correggi grammatica e ortografia", + "SUGGESTION": "Suggerisci una risposta", + "SUMMARIZE": "Riassumi la conversazione", + "ASK_COPILOT": "Chiedi a Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Contenuti in bozza", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

App dashboard

Le app dashboard consentono alle organizzazioni di incorporare un'applicazione all'interno di Chatwoot per fornire informazioni aggiuntive agli operatorii. Questa funzione consente di creare un'applicazione in modo indipendente e incorporata all'interno della dashboard per fornire informazioni degli utenti, ad esempio ordini o pagamenti effettuati.

Quando integri la tua applicazione usando la dashboard Chatwoot, la tua applicazione avrà il context della conversazione e del contatto come evento window. Implementa un listener per l'evento del messaggio sulla tua pagina per ricevere i dati.

Per aggiungere una nuova app dashboard, clicca sul pulsante 'Aggiungi una nuova app dashboard'.

", "DESCRIPTION": "Le app dashboard consentono alle organizzazioni di incorporare un'applicazione all'interno della dashboard per fornire dati aggiuntivi agli operatori. Questa funzione consente di creare un'applicazione in modo indipendente e incorporarla per fornire informazioni sull'utente, i suoi ordini o la loro cronologia di pagamento precedente.", "LEARN_MORE": "Scopri di più sulle App Dashboard", + "COUNT": "{n} app dashboard | {n} app dashboard", + "SEARCH_PLACEHOLDER": "Cerca app dashboard...", + "NO_RESULTS": "Nessuna app dashboard trovata corrispondente alla tua ricerca", "LIST": { "404": "Non ci sono ancora app dashboard configurate su questo account", "LOADING": "Caricamento app dashboard...", "TABLE_HEADER": { "NAME": "Nome", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Azioni" }, "EDIT_TOOLTIP": "Modifica app", "DELETE_TOOLTIP": "Elimina app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Crea/collega issue Linear", "LOADING": "Caricamento issue Linear...", "LOADING_ERROR": "Si è verificato un errore nel recupero delle issue Linear, si prega di riprovare", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Sei sicuro di voler eliminare l'integrazione di Notion?", "MESSAGE": "L'eliminazione di questa integrazione rimuoverà l'accesso al tuo workspace Notion e interromperà tutte le funzionalità correlate.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Puoi modificare o annullare il tuo piano in qualsiasi momento" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI è disponibile solo nei piani Enterprise.", "UPGRADE_PROMPT": "Aggiorna il tuo piano per ottenere l'accesso ai nostri assistenti, copilot e altro ancora.", "ASK_ADMIN": "Contatta il tuo amministratore per l'aggiornamento." }, diff --git a/app/javascript/dashboard/i18n/locale/it/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/it/labelsMgmt.json index 985b86f83..751ba027e 100644 --- a/app/javascript/dashboard/i18n/locale/it/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/it/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Recupero etichette", "DESCRIPTION": "Le etichette aiutano a categorizzare e dare priorità alle conversazioni e ai lead. È possibile assegnare un'etichetta a una conversazione o a un contatto utilizzando il pannello laterale.", "LEARN_MORE": "Maggiori informazioni sulle etichette", + "COUNT": "{n} etichetta | {n} etichette", + "SEARCH_PLACEHOLDER": "Cerca etichette...", + "NO_RESULTS": "Nessuna etichetta trovata corrispondente alla tua ricerca", "SEARCH_404": "Non ci sono elementi che corrispondono a questa richiesta", "LIST": { "404": "Non ci sono etichette disponibili in questo account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nome", "DESCRIPTION": "Descrizione", - "COLOR": "Colore" + "COLOR": "Colore", + "ACTION": "Azioni" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/it/macros.json b/app/javascript/dashboard/i18n/locale/it/macros.json index 263042a2f..1a05380ad 100644 --- a/app/javascript/dashboard/i18n/locale/it/macros.json +++ b/app/javascript/dashboard/i18n/locale/it/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macro", "DESCRIPTION": "Una macro è un insieme di azioni salvate che aiutano gli operatori del servizio clienti a completare facilmente le attività. Gli operatori possono definire un insieme di azioni, come l'aggiunta di un'etichetta a una converazione, l'invio di una trascrizione e-mail, l'aggiornamento di un attributo personalizzato, ecc. e possono eseguire queste azioni in un solo clic.", "LEARN_MORE": "Scopri di più sulle macro", + "COUNT": "{n} macro | {n} macro", "HEADER_BTN_TXT": "Aggiungi una nuova macro", "HEADER_BTN_TXT_SAVE": "Salva macro", "LOADING": "Caricamento macro", + "SEARCH_PLACEHOLDER": "Cerca macro...", + "NO_RESULTS": "Nessuna macro trovata corrispondente alla tua ricerca", "ERROR": "Qualcosa è andato storto. Riprova", "ORDER_INFO": "Le macro verranno eseguite nell'ordine in cui aggiungi le azioni. Puoi riordinarle trascinandole con la maniglia accanto ad ogni nodo.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nome", "CREATED BY": "Creata da", "LAST_UPDATED_BY": "Ultimo aggiornamento di", - "VISIBILITY": "Visibilità" + "VISIBILITY": "Visibilità", + "ACTIONS": "Azioni" }, "404": "Nessuna macro trovata" }, diff --git a/app/javascript/dashboard/i18n/locale/it/mfa.json b/app/javascript/dashboard/i18n/locale/it/mfa.json index 23d6846f7..8d705edf7 100644 --- a/app/javascript/dashboard/i18n/locale/it/mfa.json +++ b/app/javascript/dashboard/i18n/locale/it/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Autenticazione a Due Fattori", - "SUBTITLE": "Proteggi il tuo account con autenticazione basata su TOTP", + "SUBTITLE": "Proteggi il tuo account da accessi non autorizzati con l'autenticazione TOTP. Questa aggiunge un ulteriore livello di sicurezza al tuo account.", "DESCRIPTION": "Aggiungi un ulteriore livello di sicurezza al tuo account utilizzando una password monouso a tempo (TOTP)", "STATUS_TITLE": "Stato dell'Autenticazione", "STATUS_DESCRIPTION": "Gestisci le impostazioni di autenticazione a due fattori e i codici di recupero di backup", diff --git a/app/javascript/dashboard/i18n/locale/it/report.json b/app/javascript/dashboard/i18n/locale/it/report.json index 13694e2af..f00e65df8 100644 --- a/app/javascript/dashboard/i18n/locale/it/report.json +++ b/app/javascript/dashboard/i18n/locale/it/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversazioni", "LOADING_CHART": "Caricamento dati grafici...", "NO_ENOUGH_DATA": "Non ci sono abbastanza dati per generare il report, riprova più tardi.", - "DOWNLOAD_AGENT_REPORTS": "Scarica report operatori", + "DOWNLOAD_CONVERSATION_REPORTS": "Scarica report conversazioni", "DATA_FETCHING_FAILED": "Impossibile recuperare i dati, riprova più tardi.", "SUMMARY_FETCHING_FAILED": "Impossibile recuperare il riepilogo, riprova più tardi.", "METRICS": { @@ -133,6 +133,11 @@ "NO_ENOUGH_DATA": "Non ci sono abbastanza dati per generare il report, riprova più tardi.", "DOWNLOAD_AGENT_REPORTS": "Scarica report operatori", "FILTER_DROPDOWN_LABEL": "Seleziona Operatore", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Cerca operatori" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversazioni", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Non ci sono abbastanza dati per generare il report, riprova più tardi.", "DOWNLOAD_LABEL_REPORTS": "Scarica report etichette", "FILTER_DROPDOWN_LABEL": "Seleziona etichetta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Cerca etichette" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversazioni", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Seleziona Inbox", "ALL_INBOXES": "Tutte le Inbox", "SEARCH_INBOX": "Ricerca Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Ricerca Inbox" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversazioni", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Panoramica Team", - "DESCRIPTION": "Ottieni un'istantanea delle prestazioni del tuo team con metriche essenziali, tra cui conversazioni, tempi di risposta, tempi di risoluzione e casi risolti. Fare clic su un nome del team per maggiori dettagli.", + "DESCRIPTION": "Ottieni un'istantanea delle performance dei tuo team con metriche essenziali, tra cui conversazioni, tempi di risposta, tempi di risoluzione e casi risolti. Fai clic su un team per maggiori dettagli.", "LOADING_CHART": "Caricamento dati grafici...", "NO_ENOUGH_DATA": "Non ci sono abbastanza dati per generare il report, riprova più tardi.", "DOWNLOAD_TEAM_REPORTS": "Scarica report del team", "FILTER_DROPDOWN_LABEL": "Seleziona Team", + "FILTERS": { + "ADD_FILTER": "Aggiungi filtro", + "CLEAR_ALL": "Rimuovi tutto", + "NO_FILTER": "Nessun filtro disponibile", + "INPUT_PLACEHOLDER": { + "TEAMS": "Cerca team" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversazioni", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Report CSAT", - "NO_RECORDS": "Non ci sono risposte ai sondaggi CSAT disponibili.", + "NO_RECORDS": "Ancora nessuna risposta", + "NO_RECORDS_DESCRIPTION": "Le risposte dei sondaggi CSAT appariranno qui appena i clienti inizieranno a fornire feedback.", "DOWNLOAD": "Scarica report CSAT", "DOWNLOAD_FAILED": "Download dei report CSAT non riuscito", "FILTERS": { + "ADD_FILTER": "Aggiungi filtro", + "CLEAR_ALL": "Rimuovi tutto", + "NO_FILTER": "Nessun filtro disponibile", + "INPUT_PLACEHOLDER": { + "AGENTS": "Cerca operatori", + "INBOXES": "Ricerca Inbox", + "TEAMS": "Cerca team", + "RATINGS": "Cerca valutazioni" + }, "AGENTS": { - "PLACEHOLDER": "Scegli Operatori" + "LABEL": "Operatore" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Valutazione" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contatto", - "AGENT_NAME": "Operatore assegnato", + "AGENT_NAME": "Operatore", "RATING": "Valutazione", - "FEEDBACK_TEXT": "Commento del feedback" - } + "FEEDBACK_TEXT": "Commento del feedback", + "CONVERSATION": "Conversazione", + "CUSTOMER": "Cliente", + "RESPONSE": "Risposta", + "HANDLED_BY": "Gestito da" + }, + "UNKNOWN_CUSTOMER": "Cliente sconosciuto" }, + "NO_AGENT": "Nessun operatore assegnato", + "NO_FEEDBACK": "Nessun feedback fornito", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Risposte totali", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Tasso di risposta", "TOOLTIP": "Numero totale di risposte / Numero totale di messaggi di sondaggio CSAT inviati * 100" + }, + "RATING_DISTRIBUTION": "Distribuzione del rating" + }, + "REVIEW_NOTES": { + "TITLE": "Note revisione", + "PLACEHOLDER": "Aggiungi note revisione su questa valutazione...", + "SAVE": "Salva", + "CANCEL": "Annulla", + "SAVING": "Salvataggio...", + "SAVED": "Note salvate correttamente", + "SAVE_ERROR": "Impossibile salvare le note", + "UPDATED_BY": "Aggiornato da {name} {time}", + "UPDATED_BY_LABEL": "Aggiornato da", + "PAYWALL": { + "TITLE": "Aggiorna per aggiungere note revisione", + "AVAILABLE_ON": "La funzionalità note revisione è disponibile solo nei piani Business e Enterprise.", + "UPGRADE_PROMPT": "Aggiungi note di revisione interne a ogni risposta CSAT. Comprendi meglio cosa è successo davvero, individua i pattern più rapidamente e prendi decisioni migliori a partire dal feedback.", + "UPGRADE_NOW": "Aggiorna ora", + "CANCEL_ANYTIME": "Puoi modificare o annullare il tuo piano in qualsiasi momento" } } }, diff --git a/app/javascript/dashboard/i18n/locale/it/settings.json b/app/javascript/dashboard/i18n/locale/it/settings.json index e57739197..b4abc7708 100644 --- a/app/javascript/dashboard/i18n/locale/it/settings.json +++ b/app/javascript/dashboard/i18n/locale/it/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Scarica", "UPLOADING": "Caricamento...", - "INSTAGRAM_STORY_UNAVAILABLE": "Questa storia non è più disponibile." + "INSTAGRAM_STORY_UNAVAILABLE": "Questa storia non è più disponibile.", + "INSTAGRAM_STORY_REPLY": "Ha risposto alla tua storia:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Vedi sulla mappa" @@ -378,7 +379,57 @@ "INFO_SHORT": "Imposta automaticamente offline quando non stai usando l'app." }, "DOCS": "Leggi i documenti", - "SECURITY": "Sicurezza" + "SECURITY": "Sicurezza", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Workflow Conversazione" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Impostazioni Captain", + "DESCRIPTION": "Configura i tuoi modelli AI e le funzionalità di Captain. La fatturazione di Captain si basa sui crediti, che ti verranno scalati per ogni azione di Captain in base al modello selezionato.", + "LOADING": "Caricamento configurazione Captain...", + "LINK_TEXT": "Scopri di più sui Crediti Captain", + "NOT_ENABLED": "Captain non è abilitato per il tuo account. Aggiorna il tuo piano per accedere alle funzionalità Captain.", + "MODEL_CONFIG": { + "TITLE": "Configurazione Modello", + "DESCRIPTION": "Seleziona modelli AI per le varie funzionalità.", + "SELECT_MODEL": "Seleziona modello", + "CREDITS_PER_MESSAGE": "{credits} crediti/messaggio", + "COMING_SOON": "In arrivo", + "EDITOR": { + "TITLE": "Funzionalità Editor", + "DESCRIPTION": "Permette smart compose, correzioni grammaticali, gestione del tono di voce e miglioramento del contenuto nell'editor dei messaggi." + }, + "ASSISTANT": { + "TITLE": "Assistente", + "DESCRIPTION": "Gestisce risposte automatizzate, riassunti delle conversazioni e suggerimenti di risposta intelligenti per le interazioni con i clienti." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Fornisce suggerimenti contestuali in tempo reale, consigli sulla knowledge base e insight proattivi durante le conversazioni." + } + }, + "FEATURES": { + "TITLE": "Funzionalità", + "DESCRIPTION": "Abilita o disabilita le funzionalità AI.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Trascrizione Audio", + "DESCRIPTION": "Converte automaticamente i messaggi vocali e le registrazioni delle chiamate in trascrizioni di testo ricercabili." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Indicizzazione Ricerca Help Center", + "DESCRIPTION": "Usa l'AI per effettuare una ricerca contestualizzata tra gli articoli dell'help center." + }, + "LABEL_SUGGESTION": { + "TITLE": "Suggerimento Etichette", + "DESCRIPTION": "Suggerisce automaticamente etichette e tag rilevanti per le conversazioni in base all'analisi e al contesto dei contenuti.", + "MODEL_TITLE": "Modello Di Suggerimento Etichette", + "MODEL_DESCRIPTION": "Seleziona il modello AI da utilizzare per analizzare le conversazioni e suggerire etichette appropriate" + } + }, + "API": { + "SUCCESS": "Impostazioni Captain aggiornate con successo.", + "ERROR": "Impossibile aggiornare le impostazioni Captain. Per favore riprova." + } }, "BILLING_SETTINGS": { "TITLE": "Fatturazione", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Workflow Conversazione", + "DESCRIPTION": "Configura regole e campi obbligatori per la risoluzione delle conversazioni." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributi richiesti per la risoluzione", + "DESCRIPTION": "Quando si risolve una conversazione, agli operatori verrà chiesto di compilare questi attributi se non sono ancora stati compilati.", + "NO_ATTRIBUTES": "Nessun attributo aggiunto", + "ADD": { + "TITLE": "Aggiungi Attributi", + "SEARCH_PLACEHOLDER": "Cerca attributi" + }, + "SAVE": { + "SUCCESS": "Attributi richiesti aggiornati", + "ERROR": "Impossibile aggiornare gli attributi richiesti, riprova" + }, + "MODAL": { + "TITLE": "Risolvi la conversazione", + "DESCRIPTION": "Inserisci i seguenti attributi personalizzati prima di risolvere questa conversazione", + "ACTIONS": { + "RESOLVE": "Risolvi la conversazione", + "CANCEL": "Annulla" + }, + "PLACEHOLDERS": { + "TEXT": "Scrivi una nota...", + "NUMBER": "Inserisci un numero", + "LINK": "Aggiungi un link", + "DATE": "Scegli una data", + "LIST": "Seleziona un'opzione" + }, + "CHECKBOX": { + "YES": "Sì", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Aggiorna per utilizzare gli attributi richiesti", + "AVAILABLE_ON": "La funzionalità Attributi di Conversazione Richiesti è disponibile solo nei piani Business e Enterprise.", + "UPGRADE_PROMPT": "Aggiorna il tuo piano per chiedere agli operatori di compilare gli attributi richiesti prima della risoluzione della conversazione.", + "UPGRADE_NOW": "Aggiorna ora", + "CANCEL_ANYTIME": "Puoi modificare o annullare il tuo piano in qualsiasi momento" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "La funzionalità Attributi di Conversazione Richiesti è disponibile solo nei piani a pagamento.", + "UPGRADE_PROMPT": "Passa a un piano a pagamento per imporre gli attributi richiesti prima della risoluzione della conversazione.", + "ASK_ADMIN": "Contatta il tuo amministratore per l'aggiornamento." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! Non abbiamo trovato alcun account Chatwoot. Si prega di creare un nuovo account per continuare.", "NEW_ACCOUNT": "Nuovo account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Crea policy", "API": { "SUCCESS_MESSAGE": "Policy di assegnazione creata con successo", - "ERROR_MESSAGE": "Impossibile creare la policy di assegnazione" + "ERROR_MESSAGE": "Impossibile creare la policy di assegnazione", + "INBOX_LINKED": "La inbox è stata collegata alla policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continua", "CANCEL_BUTTON_LABEL": "Annulla" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Collega inbox alla policy", + "DESCRIPTION": "Vuoi collegare questa inbox alla policy di assegnazione?", + "LINK_BUTTON": "Collega inbox", + "CANCEL_BUTTON": "Salta" + }, "API": { "SUCCESS_MESSAGE": "Policy di assegnazione aggiornata con successo", "ERROR_MESSAGE": "Aggiornamento della policy di assegnazione non riuscito" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Bilanciato", - "DESCRIPTION": "Assegna le conversazioni in base alla capacità disponibile." + "DESCRIPTION": "Assegna le conversazioni in base alla capacità disponibile.", + "PREMIUM_MESSAGE": "Fai l’upgrade per accedere all’assegnazione bilanciata e alla gestione della capacità degli operatori.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Operatore rimosso correttamente dalla policy", "ERROR_MESSAGE": "Impossibile rimuovere l’operatore dalla policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Limite inbox aggiunto con successo", + "ERROR_MESSAGE": "Impossibile aggiungere il limite inbox" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Limite inbox aggiornato con successo", + "ERROR_MESSAGE": "Impossibile aggiornare il limite inbox" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Limite inbox eliminato con successo", + "ERROR_MESSAGE": "Impossibile eliminare il limite inbox" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/it/signup.json b/app/javascript/dashboard/i18n/locale/it/signup.json index ab825e53c..86c8fdf2f 100644 --- a/app/javascript/dashboard/i18n/locale/it/signup.json +++ b/app/javascript/dashboard/i18n/locale/it/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Crea un account", + "GET_STARTED": "Inizia con Chatwoot", "TITLE": "Registrati", "TESTIMONIAL_HEADER": "Basta uno step per proseguire", "TESTIMONIAL_CONTENT": "Sei a un passo dal coinvolgere i tuoi clienti, fidelizzarli e trovarne di nuovi.", diff --git a/app/javascript/dashboard/i18n/locale/it/sla.json b/app/javascript/dashboard/i18n/locale/it/sla.json index 9be1f9102..478179c60 100644 --- a/app/javascript/dashboard/i18n/locale/it/sla.json +++ b/app/javascript/dashboard/i18n/locale/it/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Crea una nuova policy SLA", "DESCRIPTION": "I Service Level Agreement (SLA) sono contratti che definiscono chiare aspettative tra il team e i clienti. Stabiliscono norme per i tempi di risposta e di risoluzione, creando un quadro per la responsabilità e garantendo un'esperienza coerente e di alta qualità.", "LEARN_MORE": "Scopri di più su SLA", + "COUNT": "{n} SLA | {n} SLA", "LOADING": "Caricamento SLA", + "SEARCH_PLACEHOLDER": "Cerca SLA...", + "SEARCH": { + "NO_RESULTS": "Nessun SLA trovato corrispondente alla tua ricerca" + }, "PAYWALL": { "TITLE": "Aggiorna per creare SLA", "AVAILABLE_ON": "La funzionalità SLA è disponibile solo nei piani Business e Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "Non ci sono SLA disponibili in questo account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Orario di lavoro" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Problemi sollevati dai clienti enterprise, che richiedono un'attenzione immediata.", "TITLE_2": "Enterprise P1", "DESC_2": "Problemi sollevati dai clienti enterprise, che devono essere riconosciuti rapidamente." }, - "BUSINESS_HOURS_ON": "Orario di lavoro attivo", - "BUSINESS_HOURS_OFF": "Orario di lavoro disattivo", + "BUSINESS_HOURS_ON": "Abilitato", + "BUSINESS_HOURS_OFF": "Disabilitato", "RESPONSE_TYPES": { "FRT": "Soglia tempo di prima risposta", "NRT": "Soglia tempo di risposta successiva", diff --git a/app/javascript/dashboard/i18n/locale/it/snooze.json b/app/javascript/dashboard/i18n/locale/it/snooze.json new file mode 100644 index 000000000..2abda2fd9 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/it/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minuto", + "MINUTES": "minuti", + "HOUR": "ora", + "HOURS": "ore", + "DAY": "giorno", + "DAYS": "giorni", + "WEEK": "settimana", + "WEEKS": "settimane", + "MONTH": "mese", + "MONTHS": "mesi", + "YEAR": "anno", + "YEARS": "anni" + }, + "HALF": "mezza", + "NEXT": "prossimo", + "THIS": "questo", + "AT": "alle", + "IN": "in", + "FROM_NOW": "da adesso", + "NEXT_YEAR": "il prossimo anno", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "domani", + "DAY_AFTER_TOMORROW": "dopodomani", + "NEXT_WEEK": "prossima settimana", + "NEXT_MONTH": "il mese prossimo", + "THIS_WEEKEND": "questo fine settimana", + "NEXT_WEEKEND": "il prossimo fine settimana" + }, + "TIME_OF_DAY": { + "MORNING": "mattina", + "AFTERNOON": "pomeriggio", + "EVENING": "sera", + "NIGHT": "notte", + "NOON": "mezzogiorno", + "MIDNIGHT": "mezzanotte" + }, + "WORD_NUMBERS": { + "ONE": "uno", + "TWO": "due", + "THREE": "tre", + "FOUR": "quattro", + "FIVE": "cinque", + "SIX": "sei", + "SEVEN": "sette", + "EIGHT": "otto", + "NINE": "nove", + "TEN": "dieci", + "TWELVE": "dodici", + "FIFTEEN": "quindici", + "TWENTY": "venti", + "THIRTY": "trenta" + }, + "ORDINALS": { + "FIRST": "primo", + "SECOND": "secondo", + "THIRD": "terzo", + "FOURTH": "quarto", + "FIFTH": "quinto" + }, + "OF": "di", + "AFTER": "dopo", + "WEEK": "settimana", + "DAY": "giorno" + } +} diff --git a/app/javascript/dashboard/i18n/locale/it/teamsSettings.json b/app/javascript/dashboard/i18n/locale/it/teamsSettings.json index d83e61db2..b024117aa 100644 --- a/app/javascript/dashboard/i18n/locale/it/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/it/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Caricamento team", "DESCRIPTION": "I Team ti permettono di organizzare gli operatori in gruppi in base alle loro responsabilità. Un operatore può appartenere a più team. Quando si lavora in collaborazione, è possibile assegnare conversazioni a team specifici.", "LEARN_MORE": "Scopri di più sui team", + "COUNT": "{n} team | {n} team", + "SEARCH_PLACEHOLDER": "Cerca team...", + "NO_RESULTS": "Nessun team trovato corrispondente alla tua ricerca", "LIST": { "404": "Non ci sono team creati su questo account.", "EDIT_TEAM": "Modifica team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Impossibile salvare i dettagli del team. Riprova." }, "AGENTS": { - "AGENT": "OPERATORE", - "EMAIL": "EMAIL", + "AGENT": "Operatore", + "EMAIL": "Email", "BUTTON_TEXT": "Aggiungi operatori", "ADD_AGENTS": "Aggiungendo gli Operatori al tuo Team...", "SELECT": "seleziona", diff --git a/app/javascript/dashboard/i18n/locale/ja/agentBots.json b/app/javascript/dashboard/i18n/locale/ja/agentBots.json index 0b50ce755..776fa5517 100644 --- a/app/javascript/dashboard/i18n/locale/ja/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ja/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "エディターを読み込んでいます...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "システム", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "ボットを取得中...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "操作" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ja/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ja/agentMgmt.json index 03440c503..55d1020ed 100644 --- a/app/javascript/dashboard/i18n/locale/ja/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "管理者", "AGENT": "担当者" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "このアカウントに関連付けられている担当者はありません。", "TITLE": "チームの担当者を管理する", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Woot Serverに接続できませんでした。後でもう一度お試しください。" } }, + "SEARCH_PLACEHOLDER": "担当者を検索...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "該当する結果が見つかりませんでした。" }, diff --git a/app/javascript/dashboard/i18n/locale/ja/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ja/attributesMgmt.json index 79698ca09..28fc50bba 100644 --- a/app/javascript/dashboard/i18n/locale/ja/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "カスタム属性を取得中", "DESCRIPTION": "カスタム属性は、連絡先や会話に関する追加の詳細(例:サブスクリプションプランや初回購入日など)を記録します。必要な情報をキャプチャするために、テキスト、リスト、数値など、さまざまなタイプのカスタム属性を追加できます。", "LEARN_MORE": "カスタム属性について詳しく学ぶ", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "属性を検索...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "会話", "CONTACT": "連絡先" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "正規表現の検証を有効にする" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ja/automation.json b/app/javascript/dashboard/i18n/locale/ja/automation.json index e293da3a9..f8def7fba 100644 --- a/app/javascript/dashboard/i18n/locale/ja/automation.json +++ b/app/javascript/dashboard/i18n/locale/ja/automation.json @@ -3,8 +3,11 @@ "HEADER": "自動化", "DESCRIPTION": "自動化は、ラベルの追加や会話を最適な担当者に割り当てるといった手動で行う必要のある既存のプロセスを置き換え、効率化することができます。これにより、チームは強みを発揮しつつ、ルーチンタスクに費やす時間を削減できます。", "LEARN_MORE": "自動化について学ぶ", - "HEADER_BTN_TXT": "自動化ルールを追加", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "自動化ルールを取得中", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "自動化ルールを追加", "SUBMIT": "作成", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "名前", - "DESCRIPTION": "説明", "ACTIVE": "有効", - "CREATED_ON": "作成日" + "CREATED_ON": "作成日", + "ACTIONS": "操作" }, "404": "自動化ルールが見つかりません" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "優先度を変更", "ADD_SLA": "SLAを追加", - "OPEN_CONVERSATION": "会話を開く" + "OPEN_CONVERSATION": "会話を開く", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ja/bulkActions.json b/app/javascript/dashboard/i18n/locale/ja/bulkActions.json index 71aa033ce..44be5fb4f 100644 --- a/app/javascript/dashboard/i18n/locale/ja/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ja/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "会話のステータスが正常に更新されました。", "UPDATE_FAILED": "会話の更新に失敗しました。再試行してください。" }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "ラベルを割り当てる", "NO_LABELS_FOUND": "ラベルが見つかりません", diff --git a/app/javascript/dashboard/i18n/locale/ja/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ja/cannedMgmt.json index 426c78097..c2178f610 100644 --- a/app/javascript/dashboard/i18n/locale/ja/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "定型文", "LEARN_MORE": "定型文について詳しく学ぶ", "DESCRIPTION": "定型文は、会話に迅速に返信するための事前に書かれた返信テンプレートです。担当者は '/' 文字の後にショートコードを入力することで、会話中に定型文を挿入できます。", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "定型文を追加", "LOADING": "定型文を取得中...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "検索内容(クエリ)に一致する項目はありませんでした。", "LIST": { "404": "このアカウントには、利用可能な定型文の回答はありません。", diff --git a/app/javascript/dashboard/i18n/locale/ja/chatlist.json b/app/javascript/dashboard/i18n/locale/ja/chatlist.json index 47205da5e..192a94140 100644 --- a/app/javascript/dashboard/i18n/locale/ja/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ja/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "保留時間: 短い順" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ja/contact.json b/app/javascript/dashboard/i18n/locale/ja/contact.json index 88d0d461e..3b9bb73a7 100644 --- a/app/javascript/dashboard/i18n/locale/ja/contact.json +++ b/app/javascript/dashboard/i18n/locale/ja/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Instagramを追加" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "検索に一致する連絡先はありません 🔍", "LIST_EMPTY_STATE_TITLE": "このビューには利用可能な連絡先がありません 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "さらに読み込む" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "この連絡先と会話を開始するための利用可能なインボックスがありません。", "CONTACT_SELECTOR": { "LABEL": "宛先:", - "TAG_INPUT_PLACEHOLDER": "名前、メールアドレス、または電話番号で連絡先を検索", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "連絡先を作成中..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "件名 :", "SUBJECT_PLACEHOLDER": "メールの件名を入力", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "メールアドレスで連絡先を検索", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "メールアドレスで連絡先を検索", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ja/conversation.json b/app/javascript/dashboard/i18n/locale/ja/conversation.json index f24d8f208..25a3d01fc 100644 --- a/app/javascript/dashboard/i18n/locale/ja/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ja/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "このメッセージはサポートされていません。Facebook / Instagram で表示できます。", "UNSUPPORTED_MESSAGE_FACEBOOK": "このメッセージはサポートされていません。Facebook Messengerでこのメッセージを表示できます。", "UNSUPPORTED_MESSAGE_INSTAGRAM": "このメッセージはサポートされていません。このメッセージは Instagram で表示できます。", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "メッセージの削除に成功", "FAIL_DELETE_MESSSAGE": "メッセージを削除できませんでした!もう一度お試しください", "NO_RESPONSE": "返信なし", @@ -173,6 +174,10 @@ "SUCCESFUL": "会話ID {conversationId} に ラベル #{labelName} を割り当てました", "FAILED": "ラベルを割り当てることができませんでした。もう一度やり直してください。" }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "会話ID {conversationId} に \"{team}\" チームを割り当てました", "FAILED": "チームを割り当てることができませんでした。もう一度お試しください。" @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "署名を無効化", "MSG_INPUT": "Shift + Enter で新しい行を作成します。「/」で開始すると、定型文回答を選択できます。", "PRIVATE_MSG_INPUT": "Shift + Enter で新しい行を作成します。これは担当者にのみ表示されます。", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "メッセージ署名が構成されていません。プロフィール設定で構成してください。", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "ここをクリックして更新", "WHATSAPP_TEMPLATES": "Whatsapp テンプレート" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "添付するにはここにドラッグ&ドロップ", "START_AUDIO_RECORDING": "音声録音を開始", "STOP_AUDIO_RECORDING": "音声録音を停止", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "宛先", "ADD_BCC": "Bcc を追加", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "ファイルが {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB の添付ファイル制限を超えています", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "このメッセージを送信できません。後でもう一度お試しください", "SENT_BY": "送信者:", "BOT": "ボット", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "メッセージを送信できませんでした!再試行してください", "TRY_AGAIN": "再試行", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "キャンセル", "SEND_EMAIL_SUCCESS": "チャットの記録は正常に送信されました", "SEND_EMAIL_ERROR": "エラーが発生しました。もう一度お試しください。", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "顧客に会話の記録を転送する", "SEND_TO_AGENT": "担当者に記録を送信する", diff --git a/app/javascript/dashboard/i18n/locale/ja/customRole.json b/app/javascript/dashboard/i18n/locale/ja/customRole.json index 05c0a47cb..8fbabb188 100644 --- a/app/javascript/dashboard/i18n/locale/ja/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ja/customRole.json @@ -3,8 +3,11 @@ "HEADER": "カスタムロール", "LEARN_MORE": "カスタムロールについて詳しく学ぶ", "DESCRIPTION": "カスタムロールは、アカウントオーナーまたは管理者によって作成されるロールです。これらのロールは、担当者に割り当てて、アカウント内でのアクセス権と権限を定義できます。カスタムロールは、組織の要件に合わせて特定の権限とアクセスレベルで作成できます。", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "カスタムロールを追加", "LOADING": "カスタムロールを取得中...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "検索内容(クエリ)に一致する項目はありませんでした。", "PAYWALL": { "TITLE": "アップグレードしてカスタムロールを作成", diff --git a/app/javascript/dashboard/i18n/locale/ja/datePicker.json b/app/javascript/dashboard/i18n/locale/ja/datePicker.json index 8df29dacf..6f71359d9 100644 --- a/app/javascript/dashboard/i18n/locale/ja/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ja/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "適用", "CLEAR_BUTTON": "クリア", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "過去 3 ヶ月", "LAST_6_MONTHS": "過去 6 ヶ月", "LAST_YEAR": "過去 1 年", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "カスタム日付範囲" } } diff --git a/app/javascript/dashboard/i18n/locale/ja/general.json b/app/javascript/dashboard/i18n/locale/ja/general.json index 053437bec..13daf31d8 100644 --- a/app/javascript/dashboard/i18n/locale/ja/general.json +++ b/app/javascript/dashboard/i18n/locale/ja/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "閉じる", "BETA": "ベータ版", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "破棄", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "はい", + "NO": "いいえ" } } diff --git a/app/javascript/dashboard/i18n/locale/ja/generalSettings.json b/app/javascript/dashboard/i18n/locale/ja/generalSettings.json index 38f0747df..69776169e 100644 --- a/app/javascript/dashboard/i18n/locale/ja/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ja/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "検索または移動", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "全般", "REPORTS": "レポート", diff --git a/app/javascript/dashboard/i18n/locale/ja/helpCenter.json b/app/javascript/dashboard/i18n/locale/ja/helpCenter.json index c82866cfe..022d15038 100644 --- a/app/javascript/dashboard/i18n/locale/ja/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ja/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "記事の削除中にエラーが発生しました" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "記事の見出しと内容を追加してから設定を更新してください" }, diff --git a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json index bbc4a0d30..c80a9c560 100644 --- a/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "受信トレイ", "DESCRIPTION": "チャンネルは、顧客があなたとやり取りするために選択する通信手段です。受信トレイは、特定のチャンネルのやり取りを管理する場所です。メール、ライブチャット、ソーシャルメディアなど、さまざまなソースからの通信を含むことができます。", "LEARN_MORE": "受信トレイについて詳しく知る", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "受信トレイが切断されました。再認証するまで新しいメッセージを受信できません。", "CLICK_TO_RECONNECT": "再接続するにはここをクリック。", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "メールヘッダーの送信者名に設定されたビジネス名のみを使用します。" }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ ビジネス名を設定する", + "BUTTON_TEXT": "ビジネス名を設定する", "PLACEHOLDER": "ビジネス名を入力してください", "SAVE_BUTTON_TEXT": "保存" } @@ -589,8 +592,10 @@ "DISABLED": "無効です" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "有効です", - "DISABLED": "無効です" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "有効にする" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "顧客満足度" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "担当者名をメールに表示するかどうかを設定します。無効にするとビジネス名が表示されます。", "ENABLE_CONTINUITY_VIA_EMAIL": "メールによる会話の継続を有効にする", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "連絡先のメールアドレスが利用可能な場合、会話はメールで継続されます。", - "LOCK_TO_SINGLE_CONVERSATION": "単一会話にロックする", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "この受信トレイで同じ連絡先に対して複数の会話を有効または無効にする", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "受信トレイの設定", "INBOX_UPDATE_SUB_TEXT": "受信トレイの設定を更新する", "AUTO_ASSIGNMENT_SUB_TEXT": "この受信トレイに追加された担当者への新しい会話の自動割り当てを有効または無効にします。", @@ -758,6 +765,7 @@ "LABEL": "ヘルプセンター", "PLACEHOLDER": "ヘルプセンターを選択", "SELECT_PLACEHOLDER": "ヘルプセンターを選択", + "NONE": "なし", "REMOVE": "ヘルプセンターを削除", "SUB_TEXT": "受信トレイにヘルプセンターを添付する" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "0より大きい値を入力してください", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "この受信トレイから担当者に自動割り当てできる会話の最大数を制限します" }, + "ASSIGNMENT": { + "TITLE": "会話の割り当て", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "有効", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "キャンセル", + "CONFIRM_DELETE": "削除", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "再認証", "SUBTITLE": "Facebookの接続が期限切れになりました。サービスを継続するには、Facebookページを再接続してください。", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "戻る" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "訪問者への不在メッセージ", "TOGGLE_HELP": "営業時間を有効にすると、すべての担当者がオフラインでもライブチャットウィジェットに利用可能時間が表示されます。利用可能時間外には、訪問者にメッセージとプレチャットフォームで警告できます。", "DAY": { + "DAY": "日", + "AVAILABILITY": "利用可能期間", + "HOURS": "Hours", "ENABLE": "この日の利用可能時間を有効にする", "UNAVAILABLE": "不在", - "HOURS": "時間", "VALIDATION_ERROR": "開始時間は終了時間より前でなければなりません。", "CHOOSE": "選択" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "1日以内" }, "WIDGET_COLOR_LABEL": "ウィジェットの色", - "WIDGET_BUBBLE_POSITION_LABEL": "ウィジェットバブルの位置", - "WIDGET_BUBBLE_TYPE_LABEL": "ウィジェットバブルのタイプ", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "タイプ:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "チャットをする", - "LABEL": "ウィジェットバブルランチャータイトル", + "LABEL": "Launcher Title", "PLACE_HOLDER": "チャットをする" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "通常数分以内にご返信します。", diff --git a/app/javascript/dashboard/i18n/locale/ja/integrationApps.json b/app/javascript/dashboard/i18n/locale/ja/integrationApps.json index c836cc1b1..575eed497 100644 --- a/app/javascript/dashboard/i18n/locale/ja/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ja/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "連携情報を取得中", "NO_HOOK_CONFIGURED": "このアカウントには{integrationId}の連携が設定されていません。", "HEADER": "アプリケーション", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "検索...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "有効", "DISABLED": "無効" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "連携設定を取得中", "INBOX": "受信トレイ", + "ACTIONS": "操作", "DELETE": { "BUTTON_TEXT": "削除" } diff --git a/app/javascript/dashboard/i18n/locale/ja/integrations.json b/app/javascript/dashboard/i18n/locale/ja/integrations.json index f83d0f848..6091540e6 100644 --- a/app/javascript/dashboard/i18n/locale/ja/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ja/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwootは、チームの効率を向上させるために複数のツールやサービスと連携します。以下のリストを探索して、お気に入りのアプリを設定してください。", "LEARN_MORE": "連携について詳しく知る", "LOADING": "連携を取得中", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captainはあなたのアカウントで有効になっていません。", "CLICK_HERE_TO_CONFIGURE": "設定するにはここをクリック", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "購読イベント", "LEARN_MORE": "Webhookについて詳しく知る", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "キャンセル", "DESC": "Webhookイベントは、Chatwootアカウントで何が起こっているかについてのリアルタイムの情報を提供します。コールバックを設定するには有効なURLを入力してください。", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "削除", "DELETE_CONFIRMATION": { "TITLE": "連携の削除", @@ -145,7 +160,29 @@ "EXPAND": "拡張", "MAKE_FRIENDLY": "メッセージのトーンをフレンドリーに変更", "MAKE_FORMAL": "フォーマルトーンを使用", - "SIMPLIFY": "簡素化" + "SIMPLIFY": "簡素化", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "プロフェッショナル", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "フレンドリー" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "下書き内容", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

ダッシュボードアプリ

ダッシュボードアプリを使用すると、組織はChatwootダッシュボード内にアプリケーションを埋め込んで、カスタマーサポート担当者にコンテキストを提供できます。この機能により、アプリケーションを独立して作成し、ユーザー情報、注文履歴、または以前の支払い履歴を提供するためにダッシュボード内に埋め込むことができます。

Chatwootのダッシュボードを使用してアプリケーションを埋め込むと、アプリケーションはウィンドウイベントとして会話と連絡先のコンテキストを取得します。ページ上でメッセージイベントのリスナーを実装してコンテキストを受信します。

新しいダッシュボードアプリを追加するには、「新しいダッシュボードアプリを追加」ボタンをクリックしてください。

", "DESCRIPTION": "ダッシュボードアプリを使用すると、組織はダッシュボード内にアプリケーションを埋め込んで、カスタマーサポート担当者にコンテキストを提供できます。この機能により、アプリケーションを独立して作成し、ユーザー情報、注文履歴、または以前の支払い履歴を提供するために埋め込むことができます。", "LEARN_MORE": "ダッシュボードアプリについて詳しく知る", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "このアカウントにはまだダッシュボードアプリが設定されていません", "LOADING": "ダッシュボードアプリを取得中...", "TABLE_HEADER": { "NAME": "名前", - "ENDPOINT": "エンドポイント" + "ENDPOINT": "エンドポイント", + "ACTIONS": "操作" }, "EDIT_TOOLTIP": "アプリを編集", "DELETE_TOOLTIP": "アプリを削除" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Linear Issueを作成/リンク", "LOADING": "Linearの課題を取得中...", "LOADING_ERROR": "Linearの課題を取得中にエラーが発生しました。もう一度お試しください", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "プランはいつでも変更またはキャンセルできます" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "アシスタント、Copilotなどにアクセスするには、プランをアップグレードしてください。", "ASK_ADMIN": "管理者にアップグレードを依頼してください。" }, diff --git a/app/javascript/dashboard/i18n/locale/ja/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ja/labelsMgmt.json index a8fdb3b4c..1af824c19 100644 --- a/app/javascript/dashboard/i18n/locale/ja/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ja/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "ラベルを取得中", "DESCRIPTION": "ラベルは会話やリードを分類し、優先順位をつけるのに役立ちます。サイドパネルを使用して会話や連絡先にラベルを割り当てることができます。", "LEARN_MORE": "ラベルについて詳しく知る", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "ラベルを検索...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "検索内容(クエリ)に一致する項目はありませんでした", "LIST": { "404": "このアカウントには利用可能なラベルがありません。", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "名前", "DESCRIPTION": "説明", - "COLOR": "色" + "COLOR": "色", + "ACTION": "操作" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ja/macros.json b/app/javascript/dashboard/i18n/locale/ja/macros.json index 39813bfb6..0a1bbbca5 100644 --- a/app/javascript/dashboard/i18n/locale/ja/macros.json +++ b/app/javascript/dashboard/i18n/locale/ja/macros.json @@ -3,9 +3,12 @@ "HEADER": "マクロ", "DESCRIPTION": "マクロは、カスタマーサービス担当者がタスクを簡単に完了できるようにする保存されたアクションのセットです。会話にラベルを付ける、メール記録を送信する、カスタム属性を更新するなどのアクションを定義でき、それらのアクションをワンクリックで実行できます。", "LEARN_MORE": "マクロについて詳しく知る", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "新しいマクロを追加", "HEADER_BTN_TXT_SAVE": "マクロを保存", "LOADING": "マクロを取得中", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "問題が発生しました。もう一度お試しください。", "ORDER_INFO": "マクロは追加したアクションの順序で実行されます。各ノード横のハンドルをドラッグして並べ替えることができます。", "ADD": { @@ -29,7 +32,8 @@ "NAME": "名前", "CREATED BY": "作成者", "LAST_UPDATED_BY": "最終更新者", - "VISIBILITY": "可視性" + "VISIBILITY": "可視性", + "ACTIONS": "操作" }, "404": "マクロが見つかりませんでした" }, diff --git a/app/javascript/dashboard/i18n/locale/ja/mfa.json b/app/javascript/dashboard/i18n/locale/ja/mfa.json index dffd3e91a..1d49489fc 100644 --- a/app/javascript/dashboard/i18n/locale/ja/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ja/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ja/report.json b/app/javascript/dashboard/i18n/locale/ja/report.json index d90524f4e..9811ee1c0 100644 --- a/app/javascript/dashboard/i18n/locale/ja/report.json +++ b/app/javascript/dashboard/i18n/locale/ja/report.json @@ -3,7 +3,7 @@ "HEADER": "会話データ", "LOADING_CHART": "グラフデータを読み込んでいます...", "NO_ENOUGH_DATA": "レポートを生成するための十分なデータポイントを受信していません。後でもう一度お試しください。", - "DOWNLOAD_AGENT_REPORTS": "担当者レポートをダウンロード", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "データの取得に失敗しました。後でもう一度お試しください。", "SUMMARY_FETCHING_FAILED": "サマリーの取得に失敗しました。後でもう一度お試しください。", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "担当者概要", - "DESCRIPTION": "会話、応答時間、解決までの時間、解決済み案件などの主要な指標で担当者のパフォーマンスを簡単に追跡できます。詳細は担当者名をクリックしてください。", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "グラフデータを読み込んでいます...", "NO_ENOUGH_DATA": "レポートを生成するための十分なデータポイントを受信していません。後でもう一度お試しください。", "DOWNLOAD_AGENT_REPORTS": "担当者レポートをダウンロード", "FILTER_DROPDOWN_LABEL": "担当者を選択", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "担当者を検索" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会話データ", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "レポートを生成するための十分なデータポイントを受信していません。後でもう一度お試しください。", "DOWNLOAD_LABEL_REPORTS": "ラベルレポートをダウンロード", "FILTER_DROPDOWN_LABEL": "ラベルを選択", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "ラベルを検索" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会話データ", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "受信トレイを選択", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会話データ", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "チーム概要", - "DESCRIPTION": "会話、応答時間、解決までの時間、解決済み案件などの重要な指標でチームのパフォーマンスのスナップショットを取得します。 詳細はチーム名をクリックしてください。", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "グラフデータを読み込んでいます...", "NO_ENOUGH_DATA": "レポートを生成するための十分なデータポイントを受信していません。後でもう一度お試しください。", "DOWNLOAD_TEAM_REPORTS": "チームレポートをダウンロード", "FILTER_DROPDOWN_LABEL": "チームを選択", + "FILTERS": { + "ADD_FILTER": "フィルターを追加", + "CLEAR_ALL": "すべてクリア", + "NO_FILTER": "利用可能なフィルターがありません", + "INPUT_PLACEHOLDER": { + "TEAMS": "チームを検索" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会話データ", @@ -402,12 +425,31 @@ }, "CSAT_REPORTS": { "HEADER": "CSATレポート", - "NO_RECORDS": "CSATアンケートの回答はありません。", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "CSATレポートをダウンロード", "DOWNLOAD_FAILED": "CSATレポートのダウンロードに失敗しました", "FILTERS": { + "ADD_FILTER": "フィルターを追加", + "CLEAR_ALL": "すべてクリア", + "NO_FILTER": "利用可能なフィルターがありません", + "INPUT_PLACEHOLDER": { + "AGENTS": "担当者を検索", + "INBOXES": "Search inboxes", + "TEAMS": "チームを検索", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "担当者を選択" + "LABEL": "担当者" + }, + "INBOXES": { + "LABEL": "受信トレイ" + }, + "TEAMS": { + "LABEL": "チーム" + }, + "RATINGS": { + "LABEL": "評価" } }, "TABLE": { @@ -415,9 +457,16 @@ "CONTACT_NAME": "連絡先", "AGENT_NAME": "担当者", "RATING": "評価", - "FEEDBACK_TEXT": "フィードバックコメント" - } + "FEEDBACK_TEXT": "フィードバックコメント", + "CONVERSATION": "会話", + "CUSTOMER": "Customer", + "RESPONSE": "回答", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "総回答数", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "回答率", "TOOLTIP": "回答数 / 送信されたCSATアンケートメッセージ数 × 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "保存", + "CANCEL": "キャンセル", + "SAVING": "保存中...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "今すぐアップグレード", + "CANCEL_ANYTIME": "プランはいつでも変更またはキャンセルできます" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ja/settings.json b/app/javascript/dashboard/i18n/locale/ja/settings.json index 162d34795..bb4290648 100644 --- a/app/javascript/dashboard/i18n/locale/ja/settings.json +++ b/app/javascript/dashboard/i18n/locale/ja/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "ダウンロード", "UPLOADING": "アップロード中...", - "INSTAGRAM_STORY_UNAVAILABLE": "このストーリーはもう利用できません。" + "INSTAGRAM_STORY_UNAVAILABLE": "このストーリーはもう利用できません。", + "INSTAGRAM_STORY_REPLY": "あなたのストーリーに返信:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "地図で見る" @@ -378,7 +379,57 @@ "INFO_SHORT": "使用していない場合、自動的にオフラインにします。" }, "DOCS": "ドキュメントを読む", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "キャプテン", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "アシスタント", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "機能", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "請求設定", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "属性を検索" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "会話を解決", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "会話を解決", + "CANCEL": "キャンセル" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "オプションを選択" + }, + "CHECKBOX": { + "YES": "はい", + "NO": "いいえ" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "今すぐアップグレード", + "CANCEL_ANYTIME": "プランはいつでも変更またはキャンセルできます" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "管理者にアップグレードを依頼してください。" + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Chatwootアカウントが見つかりませんでした。続行するには新しいアカウントを作成してください。", "NEW_ACCOUNT": "新規アカウント", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "キャンセル" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ja/signup.json b/app/javascript/dashboard/i18n/locale/ja/signup.json index 19f5d28fd..aa0b74a44 100644 --- a/app/javascript/dashboard/i18n/locale/ja/signup.json +++ b/app/javascript/dashboard/i18n/locale/ja/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "アカウントを作成", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "登録", "TESTIMONIAL_HEADER": "前進するために必要なのはたった一歩", "TESTIMONIAL_CONTENT": "顧客と関わり、維持し、新たな顧客を見つけるまであと一歩です。", diff --git a/app/javascript/dashboard/i18n/locale/ja/sla.json b/app/javascript/dashboard/i18n/locale/ja/sla.json index 469f1a707..11f42e410 100644 --- a/app/javascript/dashboard/i18n/locale/ja/sla.json +++ b/app/javascript/dashboard/i18n/locale/ja/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "新しいSLAポリシーを作成", "DESCRIPTION": "サービス水準合意(SLA)は、チームと顧客間で明確な期待を定義する契約です。応答時間や解決時間の基準を設定し、責任を明確にし、一貫した高品質なサービス体験を提供します。", "LEARN_MORE": "SLAについて詳しく学ぶ", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "SLAを取得中", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "アップグレードしてSLAを作成", "AVAILABLE_ON": "SLA機能はビジネスおよびエンタープライズプランのみで利用可能です。", @@ -20,14 +25,18 @@ }, "LIST": { "404": "このアカウントには利用可能なSLAがありません。", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "エンタープライズ P0", "DESC_1": "即時対応が必要なエンタープライズ顧客からの問題。", "TITLE_2": "エンタープライズ P1", "DESC_2": "迅速な承認が必要なエンタープライズ顧客からの問題。" }, - "BUSINESS_HOURS_ON": "営業時間内", - "BUSINESS_HOURS_OFF": "営業時間外", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "最初の応答時間の基準", "NRT": "次の応答時間の基準", diff --git a/app/javascript/dashboard/i18n/locale/ja/snooze.json b/app/javascript/dashboard/i18n/locale/ja/snooze.json new file mode 100644 index 000000000..9a0c0a145 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ja/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "時間", + "DAY": "日", + "DAYS": "days", + "WEEK": "週", + "WEEKS": "weeks", + "MONTH": "月", + "MONTHS": "months", + "YEAR": "年", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "明日", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "次週", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "/", + "AFTER": "after", + "WEEK": "週", + "DAY": "日" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ja/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ja/teamsSettings.json index c13fd206f..8e124b527 100644 --- a/app/javascript/dashboard/i18n/locale/ja/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ja/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "チームを取得中", "DESCRIPTION": "チームは担当者をその責務に基づいてグループ化することを可能にします。担当者は複数のチームに所属できます。共同作業では、会話を特定のチームに割り当てることができます。", "LEARN_MORE": "チームについて詳しく学ぶ", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "チームを検索...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "このアカウントにはまだ作成されたチームがありません。", "EDIT_TEAM": "チームを編集", diff --git a/app/javascript/dashboard/i18n/locale/ka/agentBots.json b/app/javascript/dashboard/i18n/locale/ka/agentBots.json index 8102692f8..437a1c612 100644 --- a/app/javascript/dashboard/i18n/locale/ka/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ka/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "აგენტ-ბოტები თქვენი გუნდის ყველაზე გამორჩეული წევრებივით არიან. მათ შეუძლიათ მოაგვარონ წვრილმანები, რათა თქვენ ყურადღება მიაქციოთ ნამდვილად მნიშვნელოვან საკითხებს. სცადეთ. შეგიძლიათ მართოთ თქვენი ბოტები ამ გვერდიდან ან შექმნათ ახალი ღილაკით „ბოტის დამატება“.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "სისტემური ბოტი", "GLOBAL_BOT_BADGE": "სისტემა", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "ბოტის დეტალები", - "URL": "ვებჰუკის URL" + "URL": "ვებჰუკის URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ka/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ka/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/ka/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/ka/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ka/attributesMgmt.json index 421161bf6..fbc87935b 100644 --- a/app/javascript/dashboard/i18n/locale/ka/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "საუბარი", "CONTACT": "კონტაქტი" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ka/automation.json b/app/javascript/dashboard/i18n/locale/ka/automation.json index 980831701..e4b78e3c3 100644 --- a/app/javascript/dashboard/i18n/locale/ka/automation.json +++ b/app/javascript/dashboard/i18n/locale/ka/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "პირადი ჩანაწერის დამატება", "CHANGE_PRIORITY": "პრიორიტეტის შეცვლა", "ADD_SLA": "SLA-ის დამატება", - "OPEN_CONVERSATION": "საუბრის გახსნა" + "OPEN_CONVERSATION": "საუბრის გახსნა", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "შემომავალი შეტყობინება", diff --git a/app/javascript/dashboard/i18n/locale/ka/bulkActions.json b/app/javascript/dashboard/i18n/locale/ka/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/ka/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ka/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/ka/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ka/cannedMgmt.json index 3bc60c569..05c05c0c6 100644 --- a/app/javascript/dashboard/i18n/locale/ka/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/ka/chatlist.json b/app/javascript/dashboard/i18n/locale/ka/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/ka/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ka/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ka/contact.json b/app/javascript/dashboard/i18n/locale/ka/contact.json index fcb32ece9..2bdbc7ad3 100644 --- a/app/javascript/dashboard/i18n/locale/ka/contact.json +++ b/app/javascript/dashboard/i18n/locale/ka/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "ამ მომენტისთვის არცერთი კონტაქტი არ არის აქტიური 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ka/conversation.json b/app/javascript/dashboard/i18n/locale/ka/conversation.json index 3e0ebeda4..25ccc42ce 100644 --- a/app/javascript/dashboard/i18n/locale/ka/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ka/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "საუბარი წარმატებით წაიშალა", "FAIL_DELETE_CONVERSATION": "საუბრის წაშლა ვერ მოხერხდა! სცადეთ ხელახლა", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ka/customRole.json b/app/javascript/dashboard/i18n/locale/ka/customRole.json index ca01a1eeb..3bdc371e4 100644 --- a/app/javascript/dashboard/i18n/locale/ka/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ka/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ka/datePicker.json b/app/javascript/dashboard/i18n/locale/ka/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/ka/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ka/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ka/general.json b/app/javascript/dashboard/i18n/locale/ka/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/ka/general.json +++ b/app/javascript/dashboard/i18n/locale/ka/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ka/generalSettings.json b/app/javascript/dashboard/i18n/locale/ka/generalSettings.json index c7bda9867..6651bc6d3 100644 --- a/app/javascript/dashboard/i18n/locale/ka/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ka/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/ka/helpCenter.json b/app/javascript/dashboard/i18n/locale/ka/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/ka/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ka/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json index e4acfe9a0..27352c3be 100644 --- a/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "პოლიტიკის წაშლა", + "POLICY_LABEL": "მინიჭების პოლიტიკა", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "არააქტიური" + }, + "PRIORITY": { + "EARLIEST_CREATED": "ყველაზე ადრე შექმნილი", + "LONGEST_WAITING": "ყველაზე დიდხანს მოლოდინში" + }, + "METHOD": { + "ROUND_ROBIN": "რაუნდ-რობინი", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "მინიჭების პოლიტიკები ვერ მოიძებნა", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/ka/integrationApps.json b/app/javascript/dashboard/i18n/locale/ka/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/ka/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ka/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/ka/integrations.json b/app/javascript/dashboard/i18n/locale/ka/integrations.json index 983953180..a1ce02d11 100644 --- a/app/javascript/dashboard/i18n/locale/ka/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ka/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ka/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ka/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/ka/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ka/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ka/macros.json b/app/javascript/dashboard/i18n/locale/ka/macros.json index 934b4dace..182732c3c 100644 --- a/app/javascript/dashboard/i18n/locale/ka/macros.json +++ b/app/javascript/dashboard/i18n/locale/ka/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ka/mfa.json b/app/javascript/dashboard/i18n/locale/ka/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/ka/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ka/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ka/report.json b/app/javascript/dashboard/i18n/locale/ka/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/ka/report.json +++ b/app/javascript/dashboard/i18n/locale/ka/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ka/settings.json b/app/javascript/dashboard/i18n/locale/ka/settings.json index 455422efc..34d0a84fc 100644 --- a/app/javascript/dashboard/i18n/locale/ka/settings.json +++ b/app/javascript/dashboard/i18n/locale/ka/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "უსაფრთხოება" + "SECURITY": "უსაფრთხოება", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "პოლიტიკის შექმნა", "API": { "SUCCESS_MESSAGE": "მინიჭების პოლიტიკა წარმატებით შეიქმნა", - "ERROR_MESSAGE": "მინიჭების პოლიტიკის შექმნა ვერ მოხერხდა" + "ERROR_MESSAGE": "მინიჭების პოლიტიკის შექმნა ვერ მოხერხდა", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "გაგრძელება", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "მინიჭების პოლიტიკა წარმატებით განახლდა", "ERROR_MESSAGE": "მინიჭების პოლიტიკის განახლება ვერ მოხერხდა" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "დაბალანსებული", - "DESCRIPTION": "საუბრები მიენიჭება ხელმისაწვდომი ტევადობის მიხედვით." + "DESCRIPTION": "საუბრები მიენიჭება ხელმისაწვდომი ტევადობის მიხედვით.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "აგენტის პოლიტიკიდან წაშლა წარმატებით შესრულდა", "ERROR_MESSAGE": "აგენტის პოლიტიკიდან წაშლა ვერ მოხერხდა" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ka/signup.json b/app/javascript/dashboard/i18n/locale/ka/signup.json index 54398ff7c..5140c3c92 100644 --- a/app/javascript/dashboard/i18n/locale/ka/signup.json +++ b/app/javascript/dashboard/i18n/locale/ka/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ka/sla.json b/app/javascript/dashboard/i18n/locale/ka/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/ka/sla.json +++ b/app/javascript/dashboard/i18n/locale/ka/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ka/snooze.json b/app/javascript/dashboard/i18n/locale/ka/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ka/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ka/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ka/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/ka/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ka/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ko/agentBots.json b/app/javascript/dashboard/i18n/locale/ko/agentBots.json index a8505390b..960e6c5dc 100644 --- a/app/javascript/dashboard/i18n/locale/ko/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ko/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "에이전트 봇은 팀에서 가장 뛰어난 멤버와 같습니다. 사소한 일은 봇이 처리해 주니, 중요한 일에 집중하세요. 한번 사용해 보세요. 이 페이지에서 봇을 관리하거나 '봇 추가' 버튼을 통해 새 봇을 생성할 수 있습니다.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "시스템 봇", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Detalles del Bot", - "URL": "웹훅 URL" + "URL": "웹훅 URL", + "ACTIONS": "액션" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json index d73b5c8ab..3972b7b9a 100644 --- a/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "관리자", "AGENT": "에이전트" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "이 계정에 연결된 에이전트가 없음", "TITLE": "팀 내 에이전트 관리", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Woot 서버에 연결할 수 없음. 나중에 다시 시도하십시오." } }, + "SEARCH_PLACEHOLDER": "에이전트 찾기...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "검색 결과가 없습니다." }, diff --git a/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json index 26d016e8f..92e4d519e 100644 --- a/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "사용자 지정 속성들 가져오기", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ko/automation.json b/app/javascript/dashboard/i18n/locale/ko/automation.json index e8e8de6b5..f50d88f60 100644 --- a/app/javascript/dashboard/i18n/locale/ko/automation.json +++ b/app/javascript/dashboard/i18n/locale/ko/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "자동화를 통해 라벨을 추가하고 가장 적합한 상담원에게 대화를 배정하는 등 수작업이 필요한 기존 프로세스를 대체하고 간소화할 수 있습니다. 이를 통해 팀은 일상적인 업무에 소요되는 시간을 줄이면서 자신의 강점에 집중할 수 있습니다.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "만들기", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "이름", - "DESCRIPTION": "내용", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "액션" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ko/bulkActions.json b/app/javascript/dashboard/i18n/locale/ko/bulkActions.json index d1c06a0ce..a699433b5 100644 --- a/app/javascript/dashboard/i18n/locale/ko/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ko/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "라벨을 찾을 수 없습니다", diff --git a/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json index 58c8b4277..767374fff 100644 --- a/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "미리 준비된 답변", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "미리 준비된 응답은 대화에 신속하게 응답할 수 있도록 도와주는 미리 작성된 응답입니다. 상담원은 대화 중에 '/' 문자 뒤에 단축 코드를 입력하여 미리 준비된 응답을 삽입할 수 있습니다. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "미리 준비된 응답 추가", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "이 쿼리와 일치하는 항목이 없음.", "LIST": { "404": "이 계정에는 미리 준비된 답변이 없습니다.", diff --git a/app/javascript/dashboard/i18n/locale/ko/chatlist.json b/app/javascript/dashboard/i18n/locale/ko/chatlist.json index 6ca051f43..35fdf1772 100644 --- a/app/javascript/dashboard/i18n/locale/ko/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ko/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { @@ -104,7 +107,7 @@ "CONTENT": "Shared contact" }, "embed": { - "CONTENT": "Embedded content" + "CONTENT": "임베디드 콘텐츠" } }, "CHAT_SORT_BY_FILTER": { diff --git a/app/javascript/dashboard/i18n/locale/ko/contact.json b/app/javascript/dashboard/i18n/locale/ko/contact.json index b48b67b12..3c8cb98ea 100644 --- a/app/javascript/dashboard/i18n/locale/ko/contact.json +++ b/app/javascript/dashboard/i18n/locale/ko/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "검색과 일치하는 연락처 없음 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ko/conversation.json b/app/javascript/dashboard/i18n/locale/ko/conversation.json index 00ef976ca..ab814baeb 100644 --- a/app/javascript/dashboard/i18n/locale/ko/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ko/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "응답없음", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "줄바꿈을 하시려면 Shift + enter 클릭하십시오. '/'로 시작하여 미리 준비된 답변을 사용할 수 있습니다.", "PRIVATE_MSG_INPUT": "줄바꿈을 하시려면 Shift + enter 클릭하십시오. 에이전트만 볼 수 있습니다.", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "보낸 사람:", "BOT": "봇", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "취소", "SEND_EMAIL_SUCCESS": "대화 내용이 성공적으로 전송됨", "SEND_EMAIL_ERROR": "오류가 발생했습니다. 다시 시도하십시오.", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "고객에게 대화기록 보내기", "SEND_TO_AGENT": "할당된 에이전트로 스크립트 보내기", diff --git a/app/javascript/dashboard/i18n/locale/ko/customRole.json b/app/javascript/dashboard/i18n/locale/ko/customRole.json index 0127b3af0..945012327 100644 --- a/app/javascript/dashboard/i18n/locale/ko/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ko/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "이 쿼리와 일치하는 항목이 없음.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ko/datePicker.json b/app/javascript/dashboard/i18n/locale/ko/datePicker.json index 03ba71742..39c9cfc49 100644 --- a/app/javascript/dashboard/i18n/locale/ko/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ko/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ko/general.json b/app/javascript/dashboard/i18n/locale/ko/general.json index 78f581d98..fef755d71 100644 --- a/app/javascript/dashboard/i18n/locale/ko/general.json +++ b/app/javascript/dashboard/i18n/locale/ko/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "닫기", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "예", + "NO": "아니오" } } diff --git a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json index 3b9315802..3c7578fbf 100644 --- a/app/javascript/dashboard/i18n/locale/ko/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ko/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "보고서", diff --git a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json index 2ed7e8812..2e89147fc 100644 --- a/app/javascript/dashboard/i18n/locale/ko/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ko/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json index 9e6ec80de..0a463725f 100644 --- a/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "받은 메시지함", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "사용 안 함" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "사용함", - "DISABLED": "사용 안 함" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "받은 메시지함 설정", "INBOX_UPDATE_SUB_TEXT": "받은 메시지함 설정 업데이트", "AUTO_ASSIGNMENT_SUB_TEXT": "받은 메시지에 추가된 에이전트에 새 대화를 자동으로 할당하거나 할당하지 않도록 설정하십시오.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "없음", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "취소", + "CONFIRM_DELETE": "삭제", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "재승인", "SUBTITLE": "페이스북 연결이 만료되었습니다. 서비스를 계속하려면 페이스북 페이지를 다시 연결하십시오.", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "유용성", + "HOURS": "Hours", "ENABLE": "아래 날짜에 대해 영업시간 설정 적용", "UNAVAILABLE": "영업 종료", - "HOURS": "시간", "VALIDATION_ERROR": "영업시작 시간은 영업종료 시간보다 빨라야 합니다.", "CHOOSE": "선택" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "며칠 안에" }, "WIDGET_COLOR_LABEL": "위젯 색깔", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "채팅하기", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "채팅하기" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "보통 몇 분 안에 응답", diff --git a/app/javascript/dashboard/i18n/locale/ko/integrationApps.json b/app/javascript/dashboard/i18n/locale/ko/integrationApps.json index cf0cd9fec..126ef55b3 100644 --- a/app/javascript/dashboard/i18n/locale/ko/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ko/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "사용함", "DISABLED": "사용 안 함" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "받은 메시지함", + "ACTIONS": "액션", "DELETE": { "BUTTON_TEXT": "삭제" } diff --git a/app/javascript/dashboard/i18n/locale/ko/integrations.json b/app/javascript/dashboard/i18n/locale/ko/integrations.json index 16add473d..f74cf4d9c 100644 --- a/app/javascript/dashboard/i18n/locale/ko/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ko/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "취소", "DESC": "웹훅 이벤트는 Chatwoot 계정에서 일어나는 일에 대한 실시간 정보를 제공합니다. 콜백을 구성하려면 유효한 URL을 입력하십시오.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "삭제", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "이름", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "액션" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json index fc00d38fd..6cbf3a154 100644 --- a/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ko/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "라벨을 가져오는 중", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "라벨 찾기...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "이 쿼리와 일치하는 항목이 없음", "LIST": { "404": "이 계정에는 사용 가능한 라벨이 없다.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "이름", "DESCRIPTION": "내용", - "COLOR": "색깔" + "COLOR": "색깔", + "ACTION": "액션" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ko/macros.json b/app/javascript/dashboard/i18n/locale/ko/macros.json index 397c1ce27..2357c6d03 100644 --- a/app/javascript/dashboard/i18n/locale/ko/macros.json +++ b/app/javascript/dashboard/i18n/locale/ko/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "이름", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "액션" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ko/mfa.json b/app/javascript/dashboard/i18n/locale/ko/mfa.json index c9ef842a2..afec688dd 100644 --- a/app/javascript/dashboard/i18n/locale/ko/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ko/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ko/report.json b/app/javascript/dashboard/i18n/locale/ko/report.json index b53d52e6f..a47806584 100644 --- a/app/javascript/dashboard/i18n/locale/ko/report.json +++ b/app/javascript/dashboard/i18n/locale/ko/report.json @@ -3,7 +3,7 @@ "HEADER": "대화", "LOADING_CHART": "차트 데이터 불러오는 중...", "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", - "DOWNLOAD_AGENT_REPORTS": "다운로드 에이전트 보고서", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "차트 데이터 불러오는 중...", "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_AGENT_REPORTS": "다운로드 에이전트 보고서", "FILTER_DROPDOWN_LABEL": "에이전트 선택", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "에이전트 찾기" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "라벨 찾기" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "차트 데이터 불러오는 중...", "NO_ENOUGH_DATA": "보고서를 생성할 수 있는 데이터 포인트가 부족합니다. 나중에 다시 시도하십시오.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "팀 찾기" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "대화", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "에이전트 찾기", + "INBOXES": "Search inboxes", + "TEAMS": "팀 찾기", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "에이전트" + }, + "INBOXES": { + "LABEL": "받은 메시지함" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "에이전트", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "취소", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ko/settings.json b/app/javascript/dashboard/i18n/locale/ko/settings.json index 889cbd52c..c68fde835 100644 --- a/app/javascript/dashboard/i18n/locale/ko/settings.json +++ b/app/javascript/dashboard/i18n/locale/ko/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "다운로드", "UPLOADING": "업로드 중...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "특징", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "취소" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "예", + "NO": "아니오" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "새 계정", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "취소" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ko/signup.json b/app/javascript/dashboard/i18n/locale/ko/signup.json index 89de09fdd..eadcad0aa 100644 --- a/app/javascript/dashboard/i18n/locale/ko/signup.json +++ b/app/javascript/dashboard/i18n/locale/ko/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "회원가입", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ko/sla.json b/app/javascript/dashboard/i18n/locale/ko/sla.json index 5889af6b5..5fab2ff4f 100644 --- a/app/javascript/dashboard/i18n/locale/ko/sla.json +++ b/app/javascript/dashboard/i18n/locale/ko/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ko/snooze.json b/app/javascript/dashboard/i18n/locale/ko/snooze.json new file mode 100644 index 000000000..3b28999c5 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ko/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "시간", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "내일", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "다음 주", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json index d5a6e96ee..47cfbeca5 100644 --- a/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ko/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "팀 찾기...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "계정에 연결된 에이전트가 없습니다.", "EDIT_TEAM": "팀 수정하기", diff --git a/app/javascript/dashboard/i18n/locale/lt/agentBots.json b/app/javascript/dashboard/i18n/locale/lt/agentBots.json index 46731005a..7812085bc 100644 --- a/app/javascript/dashboard/i18n/locale/lt/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/lt/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Įkeliama redagavimo priemonė...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Sistema", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Gaunami Botai...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Veiksmai" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/lt/agentMgmt.json b/app/javascript/dashboard/i18n/locale/lt/agentMgmt.json index 4959e6395..bb9782bb8 100644 --- a/app/javascript/dashboard/i18n/locale/lt/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administratorius", "AGENT": "Agentas" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Su šia paskyra nėra susietų agentų", "TITLE": "Valdyti agentus jūsų komandoje", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nepavyko prisijungti prie Woot serverio, bandykite dar kartą vėliau" } }, + "SEARCH_PLACEHOLDER": "Ieškoti agentų...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nieko nerasta." }, diff --git a/app/javascript/dashboard/i18n/locale/lt/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/lt/attributesMgmt.json index a0e656e51..25aec4546 100644 --- a/app/javascript/dashboard/i18n/locale/lt/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Gaunami personalizuoti požymiai", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Ieškoti požymių...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Pokalbis", "CONTACT": "Kontaktas" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/lt/automation.json b/app/javascript/dashboard/i18n/locale/lt/automation.json index 2f6fbbfbc..3a1e1549a 100644 --- a/app/javascript/dashboard/i18n/locale/lt/automation.json +++ b/app/javascript/dashboard/i18n/locale/lt/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatizacija", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Pridėti automatizavimo taisyklę", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Gaunamos automatizavimo taisyklės", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Pridėti automatizavimo taisyklę", "SUBMIT": "Sukurti", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Vardas", - "DESCRIPTION": "Aprašymas", "ACTIVE": "Aktyvus", - "CREATED_ON": "Sukurta" + "CREATED_ON": "Sukurta", + "ACTIONS": "Veiksmai" }, "404": "Nerasta jokių automatizavimo taisyklių" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Pakeisti Prioritetą", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Atidaryti pokalbį" + "OPEN_CONVERSATION": "Atidaryti pokalbį", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/lt/bulkActions.json b/app/javascript/dashboard/i18n/locale/lt/bulkActions.json index a7b2bf175..9275066da 100644 --- a/app/javascript/dashboard/i18n/locale/lt/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/lt/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Pokalbio būsena atnaujinta sėkmingai.", "UPDATE_FAILED": "Nepavyko atnaujinti pokalbių. Bandykite dar kartą." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Priskirti etiketes", "NO_LABELS_FOUND": "Etikečių nerasta", diff --git a/app/javascript/dashboard/i18n/locale/lt/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/lt/cannedMgmt.json index f2eae76c2..e17c7f3ed 100644 --- a/app/javascript/dashboard/i18n/locale/lt/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Atsakymų ruošiniai", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Pridėti atsakymo ruošinį", "LOADING": "Atsakymų ruošinių gavimas...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Šią užklausą atitinkančių elementų nėra.", "LIST": { "404": "Šioje paskyroje nėra galimų atsakymų ruošinių.", diff --git a/app/javascript/dashboard/i18n/locale/lt/chatlist.json b/app/javascript/dashboard/i18n/locale/lt/chatlist.json index 5338e964d..858f590e1 100644 --- a/app/javascript/dashboard/i18n/locale/lt/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/lt/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Laukia atsakymo: nuo trumpiausio" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/lt/contact.json b/app/javascript/dashboard/i18n/locale/lt/contact.json index bc7433609..9538b4a71 100644 --- a/app/javascript/dashboard/i18n/locale/lt/contact.json +++ b/app/javascript/dashboard/i18n/locale/lt/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Nė vienas kontaktas neatitinka jūsų paieškos 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Priskirti etiketes", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Kam:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Tema :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/lt/conversation.json b/app/javascript/dashboard/i18n/locale/lt/conversation.json index 6d8fca82f..cfa363a79 100644 --- a/app/javascript/dashboard/i18n/locale/lt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/lt/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Ši žinutė nepalaikoma. Jūs galite peržiūrėti šią žinutę Facebook Messenger programėlėje.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Ši žinutė nepalaikoma. Jūs galite peržiūrėti šią žinutę Instagram programėlėje.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Pranešimas ištrintas sėkmingai", "FAIL_DELETE_MESSSAGE": "Nepavyko ištrinti pranešimo! Bandykite dar kartą", "NO_RESPONSE": "Nėra atsakymo", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nepavyko priskirti etiketės. Prašau, pabandykite dar kartą." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Priskirta komanda #{team} pokalbiui id {conversationId}", "FAILED": "Nepavyko priskirti komandos. Prašau, pabandykite dar kartą." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Išjungti parašą", "MSG_INPUT": "Spauksite Shift + Enter, pradėjimui iš naujos eilutės. Pradėkite nuo „/“, kad pasirinktumėte Atsakymo Ruošinį.", "PRIVATE_MSG_INPUT": "Spauksite Shift + Enter, pradėjimui iš naujos eilutės. Tai bus matoma tik Agentams", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Pranešimo parašas nesukonfigūruotas, sukonfigūruokite jį profilio nustatymuose.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Spausti čia kad atnaujinti", "WHATSAPP_TEMPLATES": "Whatsapp Šablonai" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Norėdami pridėti, vilkite ir numeskite čia", "START_AUDIO_RECORDING": "Pradėti audio įrašymą", "STOP_AUDIO_RECORDING": "Baigti audio įrašymą", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "Kam", "ADD_BCC": "Pridėti bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Failas viršija {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB priedo apribojimą", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nepavyko išsiųsti šio pranešimo, bandykite dar kartą vėliau", "SENT_BY": "Siuntėjas:", "BOT": "Botas", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nepavyko išsiųsti pranešimo! Bandykite dar kartą", "TRY_AGAIN": "kartoti", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Atšaukti", "SEND_EMAIL_SUCCESS": "Pokalbio stenograma sėkmingai išsiųsta", "SEND_EMAIL_ERROR": "Įvyko klaida, prašau pabandykite dar kartą", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Siųsti stenogramą klientui", "SEND_TO_AGENT": "Siųsti stenogramą priskirtam agentui", diff --git a/app/javascript/dashboard/i18n/locale/lt/customRole.json b/app/javascript/dashboard/i18n/locale/lt/customRole.json index e64798916..86676a903 100644 --- a/app/javascript/dashboard/i18n/locale/lt/customRole.json +++ b/app/javascript/dashboard/i18n/locale/lt/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Šią užklausą atitinkančių elementų nėra.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/lt/datePicker.json b/app/javascript/dashboard/i18n/locale/lt/datePicker.json index 307e936c4..a3b5ba2d8 100644 --- a/app/javascript/dashboard/i18n/locale/lt/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/lt/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Taikyti", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Paskutinius 3 mėnesius", "LAST_6_MONTHS": "Paskutinius 6 mėnesius", "LAST_YEAR": "Paskutinius metus", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Pritaikytas datos intervalas" } } diff --git a/app/javascript/dashboard/i18n/locale/lt/general.json b/app/javascript/dashboard/i18n/locale/lt/general.json index e311da0ba..fa4f890e7 100644 --- a/app/javascript/dashboard/i18n/locale/lt/general.json +++ b/app/javascript/dashboard/i18n/locale/lt/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Uždaryti", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Taip", + "NO": "Ne" } } diff --git a/app/javascript/dashboard/i18n/locale/lt/generalSettings.json b/app/javascript/dashboard/i18n/locale/lt/generalSettings.json index 5ac0b32d3..e484d1705 100644 --- a/app/javascript/dashboard/i18n/locale/lt/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/lt/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Ieškoti ar pereiti į", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Pagrindinis", "REPORTS": "Ataskaitos", diff --git a/app/javascript/dashboard/i18n/locale/lt/helpCenter.json b/app/javascript/dashboard/i18n/locale/lt/helpCenter.json index 25b96ba2f..e418a2cd9 100644 --- a/app/javascript/dashboard/i18n/locale/lt/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/lt/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Trinant straipsnį įvyko klaida" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Pridėkite straipsnio antraštę ir turinį, tada tik jūs galėsite atnaujinti nustatymus" }, diff --git a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json index 366129760..489107fd9 100644 --- a/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Gautų laiškų aplankai", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Naudokite tik sukonfigūruotą įmonės pavadinimą kaip siuntėjo vardą el. pašto antraštėje." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Sukonfigūruokite įmonės pavadinimą", + "BUTTON_TEXT": "Sukonfigūruokite įmonės pavadinimą", "PLACEHOLDER": "Įveskite įmonės pavadinimą", "SAVE_BUTTON_TEXT": "Išsaugoti" } @@ -589,8 +592,10 @@ "DISABLED": "Išjungta" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Leisti", - "DISABLED": "Išjungta" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Leisti" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Įjungti/išjungti agento vardo rodymą el. pašte, jei išjungta, bus rodomas įmonės pavadinimas", "ENABLE_CONTINUITY_VIA_EMAIL": "Leisti pokalbio tęstinumą el. paštu", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Jei kontaktinis el. pašto adresas yra pasiekiamas, pokalbiai bus tęsiami el. paštu.", - "LOCK_TO_SINGLE_CONVERSATION": "Laikykitės vieno pokalbio", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Leisti arba neleisti kelis pokalbius tam pačiam kontaktui šiame gautų laiškų aplanke", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Gautų Laiškų Aplanko Nustatymai", "INBOX_UPDATE_SUB_TEXT": "Atnaujinkite gautų laiškų aplanko nustatymus", "AUTO_ASSIGNMENT_SUB_TEXT": "Įjunkite arba išjunkite automatinį naujų pokalbių priskyrimą agentams, pridėtiems prie šio gautų laiškų aplanko.", @@ -758,6 +765,7 @@ "LABEL": "Palaikymo centras", "PLACEHOLDER": "Pasirinkti Pagalbos Centrą", "SELECT_PLACEHOLDER": "Pasirinkti Pagalbos Centrą", + "NONE": "Nėra", "REMOVE": "Pašalinti Pagalbos Centrą", "SUB_TEXT": "Pridėkite pagalbos centrą prie gautų laiškų aplanko" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Įveskite reikšmę, didesnę nei 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Apribokite maksimalų pokalbių skaičių iš šio gautų laiškų aplanko, kuriuos galima automatiškai priskirti agentui" }, + "ASSIGNMENT": { + "TITLE": "Pokalbio paskirstymas", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktyvus", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Atšaukti", + "CONFIRM_DELETE": "Ištrinti", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Pakartotinai autorizuoti", "SUBTITLE": "Jūsų ryšys su Facebook nutrūko. Jei norite toliau nauditis paslaugomis, iš naujo prisijunkite prie Facebook puslapio", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Grįžti" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Pranešimas lankytojams apie nepasiekiamumą", "TOGGLE_HELP": "Nustačius darbo laiką, bus rodomos darbo valandos chato valdiklyje, net jei visi agentai neprisijungę. Ne darbo valandomis lankytojai gali būti įspėti pranešimu ir išankstinio pokalbio forma.", "DAY": { + "DAY": "Diena", + "AVAILABILITY": "Prieinamumas", + "HOURS": "Hours", "ENABLE": "Įgalinti pasiekiamumą šiai dienai", "UNAVAILABLE": "Nepasiekiamas", - "HOURS": "valandos", "VALIDATION_ERROR": "Pradžios laikas turi būti prieš pabaigos laiką.", "CHOOSE": "Pasirinkti" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Per dieną" }, "WIDGET_COLOR_LABEL": "Valdiklio Spalva", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Padėtis", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Tipas", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipas:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Pabendraukite su mumis", - "LABEL": "Widget Bubble Paleidimo programos pavadinimas", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Pabendraukite su mumis" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Pagal nutylėjimą", - "CHAT": "Pokalbis internetu" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Paprastai atsako per kelias minutes", diff --git a/app/javascript/dashboard/i18n/locale/lt/integrationApps.json b/app/javascript/dashboard/i18n/locale/lt/integrationApps.json index f449fbc05..f3da604a5 100644 --- a/app/javascript/dashboard/i18n/locale/lt/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/lt/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Integracijų gavimas", "NO_HOOK_CONFIGURED": "Šioje paskyroje nesukonfigūruota jokių {integrationId} integracijų.", "HEADER": "Programos", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Leisti", "DISABLED": "Išjungta" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Integravimo webhook gavimas", "INBOX": "Gautų laiškų aplankas", + "ACTIONS": "Veiksmai", "DELETE": { "BUTTON_TEXT": "Ištrinti" } diff --git a/app/javascript/dashboard/i18n/locale/lt/integrations.json b/app/javascript/dashboard/i18n/locale/lt/integrations.json index 466e83cce..ab6defb7f 100644 --- a/app/javascript/dashboard/i18n/locale/lt/integrations.json +++ b/app/javascript/dashboard/i18n/locale/lt/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Prenumeruoti įvykiai", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Atšaukti", "DESC": "Webhook įvykiai suteikia jums realaus laiko informaciją apie tai, kas vyksta jūsų Chatwoot paskyroje. Norėdami sukonfigūruoti atgalinį skambinimą, įveskite tinkamą URL.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Ištrinti", "DELETE_CONFIRMATION": { "TITLE": "Ištrinkite integraciją", @@ -145,7 +160,29 @@ "EXPAND": "Išskleisti", "MAKE_FRIENDLY": "Pakeisti pranešimo toną į draugišką", "MAKE_FORMAL": "Naudokite oficialų toną", - "SIMPLIFY": "Supaprastinti" + "SIMPLIFY": "Supaprastinti", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesionalas", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Draugiškas" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Turinio juodraštis", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Informacinio skydelio programos

Informacinio skydelio programos leidžia organizacijoms įterpti programą į Chatwood valdymo skydelį, kad klientų aptarnavimo agentams būtų suteiktas kontekstas. Ši funkcija leidžia savarankiškai kurti programą ir įterpti informaciją apie vartotoją, jo užsakymus ar mokėjimų istoriją.

Kai įterpiate programą naudodami Chatwood valdymo skydelį, programa gaus pokalbio kontekstą ir įvykio nuorodas. Įdiekite pranešimo įvykio nuorodas savo puslapyje, kad gautumėte kontekstą.

Jei norite pridėti naują informacinio skydelio programą, spustelėkite mygtuką \"Pridėti naują skydelio programą\".

", "DESCRIPTION": "Informacinio skydelio programos leidžia organizacijoms įterpti programą į valdymo skydelį, kad klientų aptarnavimo agentams būtų suteiktas kontekstas. Ši funkcija leidžia savarankiškai kurti programą ir įterpti informaciją apie vartotoją, jo užsakymus ar mokėjimų istoriją.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Šioje paskyroje nėra sukonfigūruotų informacinio skydelio programų", "LOADING": "Gaunamos informacinio skydelio programos...", "TABLE_HEADER": { "NAME": "Vardas", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Veiksmai" }, "EDIT_TOOLTIP": "Redaguoti programą", "DELETE_TOOLTIP": "Ištrinti programą" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/lt/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/lt/labelsMgmt.json index 5c19249b4..c4d420f47 100644 --- a/app/javascript/dashboard/i18n/locale/lt/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lt/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Gaunamos etiketės", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Ieškoti etikečių...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Šią užklausą atitinkančių elementų nėra", "LIST": { "404": "Šioje paskyroje nėra galimų etikečių.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Vardas", "DESCRIPTION": "Aprašymas", - "COLOR": "Spalva" + "COLOR": "Spalva", + "ACTION": "Veiksmai" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/lt/macros.json b/app/javascript/dashboard/i18n/locale/lt/macros.json index 19532d650..6dba5c1ff 100644 --- a/app/javascript/dashboard/i18n/locale/lt/macros.json +++ b/app/javascript/dashboard/i18n/locale/lt/macros.json @@ -3,9 +3,12 @@ "HEADER": "Makrokomandos", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Pridėti naują makrokomandą", "HEADER_BTN_TXT_SAVE": "Išsaugoti makrokomandą", "LOADING": "Gaunama makrokomanda", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Kažkas nepavyko. Bandykite dar kartą", "ORDER_INFO": "Makrokomandos bus paleistos ta tvarka, kuria pridėsite veiksmus. Galite juos pertvarkyti vilkdami už rankenos šalia kiekvieno mazgo.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Vardas", "CREATED BY": "Sukurtas", "LAST_UPDATED_BY": "Paskutinį kartą atnaujino", - "VISIBILITY": "Matomumas" + "VISIBILITY": "Matomumas", + "ACTIONS": "Veiksmai" }, "404": "Nerasta makrokomandų" }, diff --git a/app/javascript/dashboard/i18n/locale/lt/mfa.json b/app/javascript/dashboard/i18n/locale/lt/mfa.json index 08cef978f..5f7033c94 100644 --- a/app/javascript/dashboard/i18n/locale/lt/mfa.json +++ b/app/javascript/dashboard/i18n/locale/lt/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/lt/report.json b/app/javascript/dashboard/i18n/locale/lt/report.json index cbd0536d9..68897e463 100644 --- a/app/javascript/dashboard/i18n/locale/lt/report.json +++ b/app/javascript/dashboard/i18n/locale/lt/report.json @@ -3,7 +3,7 @@ "HEADER": "Pokalbiai", "LOADING_CHART": "Įkeliami diagramos duomenys...", "NO_ENOUGH_DATA": "Negavome pakankamai duomenų, kad galėtume sugeneruoti ataskaitą. Bandykite dar kartą vėliau.", - "DOWNLOAD_AGENT_REPORTS": "Parsisiųsti agentų ataskaitas", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Nepavyko gauti duomenų, bandykite dar kartą vėliau.", "SUMMARY_FETCHING_FAILED": "Nepavyko gauti suvestinės, bandykite dar kartą vėliau.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agentų apžvalga", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Įkeliami diagramos duomenys...", "NO_ENOUGH_DATA": "Negavome pakankamai duomenų, kad galėtume sugeneruoti ataskaitą. Bandykite dar kartą vėliau.", "DOWNLOAD_AGENT_REPORTS": "Parsisiųsti agentų ataskaitas", "FILTER_DROPDOWN_LABEL": "Pasirinkti agentą", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Ieškoti agentų" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Pokalbiai", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Negavome pakankamai duomenų, kad galėtume sugeneruoti ataskaitą. Bandykite dar kartą vėliau.", "DOWNLOAD_LABEL_REPORTS": "Parsisiųsti etiketės ataskaitas", "FILTER_DROPDOWN_LABEL": "Pažymėti Etiketę", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Ieškoti etikečių" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Pokalbiai", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Pasirinkti gautų laiškų aplanką", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Pokalbiai", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Komandos apžvalga", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Įkeliami diagramos duomenys...", "NO_ENOUGH_DATA": "Negavome pakankamai duomenų, kad galėtume sugeneruoti ataskaitą. Bandykite dar kartą vėliau.", "DOWNLOAD_TEAM_REPORTS": "Parsisiųsti komandos ataskaitas", "FILTER_DROPDOWN_LABEL": "Pasirinkite komandą", + "FILTERS": { + "ADD_FILTER": "Pridėti Filtrą", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Ieškoti komandų" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Pokalbiai", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Ataskaitas", - "NO_RECORDS": "Nėra CSAT apklausos atsakymų.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Parsisiųsti CSAT ataskaitas", "DOWNLOAD_FAILED": "Nepavyko parsisiųsti CSAT ataskaitų", "FILTERS": { + "ADD_FILTER": "Pridėti Filtrą", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Ieškoti agentų", + "INBOXES": "Search inboxes", + "TEAMS": "Ieškoti komandų", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Pasirinkti Agentus" + "LABEL": "Agentas" + }, + "INBOXES": { + "LABEL": "Gautų laiškų aplankas" + }, + "TEAMS": { + "LABEL": "Komanda" + }, + "RATINGS": { + "LABEL": "Reitingas" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontaktas", - "AGENT_NAME": "Priskirtas agentas", + "AGENT_NAME": "Agentas", "RATING": "Reitingas", - "FEEDBACK_TEXT": "Facebook komentaras" - } + "FEEDBACK_TEXT": "Facebook komentaras", + "CONVERSATION": "Pokalbis", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Iš viso atsakymų", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Atsakymo įvertinimas", "TOOLTIP": "Bendras atsakymų skaičius / Bendras skaičius išsiųstų CSAT apklausų pranešimų * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Išsaugoti", + "CANCEL": "Atšaukti", + "SAVING": "Išsaugoma...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/lt/settings.json b/app/javascript/dashboard/i18n/locale/lt/settings.json index 69bb73e0f..64f0ea307 100644 --- a/app/javascript/dashboard/i18n/locale/lt/settings.json +++ b/app/javascript/dashboard/i18n/locale/lt/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Parsisiųsti", "UPLOADING": "Įkeliama...", - "INSTAGRAM_STORY_UNAVAILABLE": "Šis pasakojimas nebepasiekiamas." + "INSTAGRAM_STORY_UNAVAILABLE": "Šis pasakojimas nebepasiekiamas.", + "INSTAGRAM_STORY_REPLY": "Atsakė į tavo pasakojimą:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Pamatyti žemėlapyje" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Skaityti dokumentus", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funkcijos", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Atsiskaitymas", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Ieškoti požymių" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Išspręsti pokalbį", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Išspręsti pokalbį", + "CANCEL": "Atšaukti" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Taip", + "NO": "Ne" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Oi! Nepavyko rasti jokių Chatwoot paskyrų. Jei norite tęsti, susikurkite naują paskyrą.", "NEW_ACCOUNT": "Nauja Paskyra", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Atšaukti" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/lt/signup.json b/app/javascript/dashboard/i18n/locale/lt/signup.json index a1798ba20..8b8a93759 100644 --- a/app/javascript/dashboard/i18n/locale/lt/signup.json +++ b/app/javascript/dashboard/i18n/locale/lt/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Sukurti paskyrą", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registras", "TESTIMONIAL_HEADER": "Tereikia vieno žingsnio, kad judėtume į priekį", "TESTIMONIAL_CONTENT": "Liko vienas žingsnis, kad įtrauktumėte savo klientus, išlaikytumėte juos ir rastumėte naujų.", diff --git a/app/javascript/dashboard/i18n/locale/lt/sla.json b/app/javascript/dashboard/i18n/locale/lt/sla.json index 6a4b26990..2607e682f 100644 --- a/app/javascript/dashboard/i18n/locale/lt/sla.json +++ b/app/javascript/dashboard/i18n/locale/lt/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/lt/snooze.json b/app/javascript/dashboard/i18n/locale/lt/snooze.json new file mode 100644 index 000000000..1ad74ff46 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/lt/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "valandos", + "DAY": "diena", + "DAYS": "days", + "WEEK": "diena", + "WEEKS": "weeks", + "MONTH": "savaitė", + "MONTHS": "months", + "YEAR": "mėnuo", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "rytoj", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "kitą savaitę", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "diena", + "DAY": "diena" + } +} diff --git a/app/javascript/dashboard/i18n/locale/lt/teamsSettings.json b/app/javascript/dashboard/i18n/locale/lt/teamsSettings.json index f66ac725d..916d6d5e2 100644 --- a/app/javascript/dashboard/i18n/locale/lt/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/lt/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Ieškoti komandų...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Šioje paskyroje nėra sukurtų komandų.", "EDIT_TEAM": "Redaguoti komandą", diff --git a/app/javascript/dashboard/i18n/locale/lv/agentBots.json b/app/javascript/dashboard/i18n/locale/lv/agentBots.json index bc51df4f1..32199bec2 100644 --- a/app/javascript/dashboard/i18n/locale/lv/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/lv/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Notiek redaktora ielāde...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Uzzināt vairāk par aģentiem robotiem", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Sistēma", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Notiek robotu iegūšana...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Darbības" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/lv/agentMgmt.json b/app/javascript/dashboard/i18n/locale/lv/agentMgmt.json index e75c6d3f1..6266161be 100644 --- a/app/javascript/dashboard/i18n/locale/lv/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrators", "AGENT": "Aģents" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Šim kontam nav piesaistīts neviens aģents", "TITLE": "Pārvaldīt Jūsu komandas aģentus", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nevar izveidot savienojumu ar Woot serveri. Lūdzu, vēlāk pamēģiniet vēlreiz" } }, + "SEARCH_PLACEHOLDER": "Meklēt aģentus...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nav atrasts." }, diff --git a/app/javascript/dashboard/i18n/locale/lv/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/lv/attributesMgmt.json index a61d705bb..92bfdfea6 100644 --- a/app/javascript/dashboard/i18n/locale/lv/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Notiek pielāgotu īpašību iegūšana", "DESCRIPTION": "Pielāgots atribūts ļauj izsekot papildu informāciju par jūsu kontaktpersonām vai sarunām, piemēram, abonēšanas plānu vai viņu pirmā pirkuma datumu. Varat pievienot dažāda veida pielāgotus atribūtus, piemēram, tekstu, sarakstus vai skaitļus, lai tvertu konkrētu jums nepieciešamo informāciju.", "LEARN_MORE": "Uzzināt vairāk par pielāgotajiem atribūtiem", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Meklēt īpašības...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Saruna", "CONTACT": "Kontaktpersona" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Iespējot regex pārbaudi" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/lv/automation.json b/app/javascript/dashboard/i18n/locale/lv/automation.json index 4afc3d0b1..2e7ec674b 100644 --- a/app/javascript/dashboard/i18n/locale/lv/automation.json +++ b/app/javascript/dashboard/i18n/locale/lv/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatizācija", "DESCRIPTION": "Automatizācija var aizstāt un racionalizēt esošos procesus, kuriem nepieciešama manuāla piepūle, piemēram, etiķešu pievienošana un sarunu piešķiršana vispiemērotākajam aģentam. Tas ļauj komandai koncentrēties uz savām stiprajām pusēm, vienlaikus samazinot laiku, kas pavadīts ikdienas uzdevumiem.", "LEARN_MORE": "Uzzināt vairāk par automatizāciju", - "HEADER_BTN_TXT": "Pievienot Automatizācijas Noteikumu", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Notiek automatizācijas noteikumu iegūšana", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Pievienot Automatizācijas Noteikumu", "SUBMIT": "Izveidot", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nosaukums", - "DESCRIPTION": "Apraksts", "ACTIVE": "Aktīvs", - "CREATED_ON": "Izveidots" + "CREATED_ON": "Izveidots", + "ACTIONS": "Darbības" }, "404": "Automatizācijas noteikumi nav atrasti" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Pievienot Privātu Piezīmi", "CHANGE_PRIORITY": "Mainīt prioritāti", "ADD_SLA": "Pievienot SLA", - "OPEN_CONVERSATION": "Atvērt sarunu" + "OPEN_CONVERSATION": "Atvērt sarunu", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/lv/bulkActions.json b/app/javascript/dashboard/i18n/locale/lv/bulkActions.json index 6c8c3c42f..100cf7f47 100644 --- a/app/javascript/dashboard/i18n/locale/lv/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/lv/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Sarunas statuss ir veiksmīgi atjaunināts.", "UPDATE_FAILED": "Neizdevās atjaunināt sarunas. Lūdzu mēģiniet vēlreiz." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Piešķirt etiķetes", "NO_LABELS_FOUND": "Etiķetes nav atrastas", diff --git a/app/javascript/dashboard/i18n/locale/lv/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/lv/cannedMgmt.json index 1f41be12b..a9a19ddd4 100644 --- a/app/javascript/dashboard/i18n/locale/lv/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Sagatavotās Atbildes", "LEARN_MORE": "Uzzināt vairāk par sagatavotajām atbildēm", "DESCRIPTION": "Sagatavotās atbildes ir iepriekš uzrakstītas atbilžu veidnes, kas palīdz ātri atbildēt uz sarunu. Lai sarunas laikā ievietotu gatavu atbildi, aģenti var ierakstīt rakstzīmi “/”, kam seko īskods. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Pievienot sagatavoto atbildi", "LOADING": "Notiek sagatavoto atbilžu iegūšana...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Šim vaicājumam nav atbilstošu vienumu.", "LIST": { "404": "Šajā kontā nav pieejama neviena sagatavota atbilde.", diff --git a/app/javascript/dashboard/i18n/locale/lv/chatlist.json b/app/javascript/dashboard/i18n/locale/lv/chatlist.json index 224663998..2da60cf93 100644 --- a/app/javascript/dashboard/i18n/locale/lv/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/lv/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Gaida atbildi: Īsākā vispirms" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/lv/contact.json b/app/javascript/dashboard/i18n/locale/lv/contact.json index 61c7c65d1..fa9e6755e 100644 --- a/app/javascript/dashboard/i18n/locale/lv/contact.json +++ b/app/javascript/dashboard/i18n/locale/lv/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Pievienot Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Neviena kontaktpersona neatbilst jūsu meklēšanas vaicājumam 🔍", "LIST_EMPTY_STATE_TITLE": "Šajā skatā nav pieejama neviena kontaktpersona 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Ielādēt vairāk" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Piešķirt Etiķetes", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "Nav pieejamas iesūtnes, lai sāktu sarunu ar šo kontaktpersonu.", "CONTACT_SELECTOR": { "LABEL": "Kam:", - "TAG_INPUT_PLACEHOLDER": "Meklēt kontaktpersonu pēc vārda, e-pasta vai tālruņa numura", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Notiek kontaktpersonas izveide..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Tēma :", "SUBJECT_PLACEHOLDER": "Ievadiet šeit sava e-pasta tēmu", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Meklēt kontaktpersonu pēc e-pasta adreses", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Meklēt kontaktpersonu pēc e-pasta adreses", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/lv/conversation.json b/app/javascript/dashboard/i18n/locale/lv/conversation.json index d3528c104..c59a0e7a7 100644 --- a/app/javascript/dashboard/i18n/locale/lv/conversation.json +++ b/app/javascript/dashboard/i18n/locale/lv/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "Šis ziņojums netiek atbalstīts. Šo ziņojumu varat apskatīt Facebook/Instagram lietotnē.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Šis ziņojums netiek atbalstīts. Šo ziņojumu Jūs varat apskatīt lietotnē Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Šis ziņojums netiek atbalstīts. Šo ziņojumu Jūs varat apskatīt lietotnē Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Ziņojums veiksmīgi izdzēsts", "FAIL_DELETE_MESSSAGE": "Nevarēja izdzēst ziņojumu! Mēģiniet vēlreiz", "NO_RESPONSE": "Nav atbildes", @@ -173,6 +174,10 @@ "SUCCESFUL": "Sarunai ar id {conversationId} piešķirta etiķete #{labelName}", "FAILED": "Nevarēja piešķirt etiķeti. Lūdzu, mēģiniet vēlreiz." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Sarunai ar id {conversationId} tika piešķirta komanda \"{team}\"", "FAILED": "Nevarēja piešķirt komandu. Lūdzu, mēģiniet vēlreiz." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Atspējot parakstu", "MSG_INPUT": "Shift + Enter, lai pārietu uz jaunu rindu. Sāciet ar '/' lai izvēlētos sagatavotu atbildi.", "PRIVATE_MSG_INPUT": "Shift + Enter, lai pārietu uz jaunu rindu. Ziņojums būs redzams tikai Aģentiem", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Ziņojuma paraksts nav nokonfigurēts. Lūdzu, nokonfigurējiet to profila iestatījumos.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Noklikšķiniet šeit, lai atjauninātu", "WHATSAPP_TEMPLATES": "WhatsApp Veidnes" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Velciet un nometiet šeit, lai pievienotu", "START_AUDIO_RECORDING": "Sākt audio ierakstīšanu", "STOP_AUDIO_RECORDING": "Apturēt audio ierakstīšanu", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "KAM", "ADD_BCC": "Pievienot bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Fails pārsniedz {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB pielikuma ierobežojumu", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nevar nosūtīt šo ziņojumu. Lūdzu, vēlāk mēģiniet vēlreiz", "SENT_BY": "Sūtīja:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nevarēja nosūtīt ziņojumu! Mēģiniet vēlreiz", "TRY_AGAIN": "mēģināt vēlreiz", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Atcelt", "SEND_EMAIL_SUCCESS": "Sarunas transkripts tika veiksmīgi nosūtīts", "SEND_EMAIL_ERROR": "Radās kļūda. Lūdzu, mēģiniet vēlreiz", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Nosūtīt transkriptu klientam", "SEND_TO_AGENT": "Nosūtīt transkriptu piešķirtajam aģentam", diff --git a/app/javascript/dashboard/i18n/locale/lv/customRole.json b/app/javascript/dashboard/i18n/locale/lv/customRole.json index 6a03477ec..61e1fb05c 100644 --- a/app/javascript/dashboard/i18n/locale/lv/customRole.json +++ b/app/javascript/dashboard/i18n/locale/lv/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Pielāgotas lomas", "LEARN_MORE": "Uzzināt vairāk par pielāgotām lomām", "DESCRIPTION": "Pielāgotas lomas ir lomas, kuras izveido konta īpašnieks vai administrators. Šīs lomas var piešķirt aģentiem, lai definētu viņu piekļuvi un atļaujas kontā. Pielāgotas lomas var izveidot ar īpašām atļaujām un piekļuves līmeņiem, lai tie atbilstu organizācijas prasībām.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Pievienot pielāgotu lomu", "LOADING": "Notiek pielāgotu lomu iegūšana...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Šim vaicājumam nav atbilstošu vienumu.", "PAYWALL": { "TITLE": "Pārejiet uz maksas versiju, lai izveidotu pielāgotas lomas", diff --git a/app/javascript/dashboard/i18n/locale/lv/datePicker.json b/app/javascript/dashboard/i18n/locale/lv/datePicker.json index b1e7894ab..31a6bdb14 100644 --- a/app/javascript/dashboard/i18n/locale/lv/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/lv/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Pielietot", "CLEAR_BUTTON": "Notīrīt", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Pēdējie 3 mēneši", "LAST_6_MONTHS": "Pēdējie 6 mēneši", "LAST_YEAR": "Pagājušais gads", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Pielāgots datumu diapazons" } } diff --git a/app/javascript/dashboard/i18n/locale/lv/general.json b/app/javascript/dashboard/i18n/locale/lv/general.json index 758ec1d08..2cf4e0261 100644 --- a/app/javascript/dashboard/i18n/locale/lv/general.json +++ b/app/javascript/dashboard/i18n/locale/lv/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Aizvērt", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Izmest", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Jā", + "NO": "Nē" } } diff --git a/app/javascript/dashboard/i18n/locale/lv/generalSettings.json b/app/javascript/dashboard/i18n/locale/lv/generalSettings.json index 7cf56963e..e327cd11c 100644 --- a/app/javascript/dashboard/i18n/locale/lv/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/lv/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Meklēt vai pāriet uz", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Vispārēji", "REPORTS": "Pārskati", diff --git a/app/javascript/dashboard/i18n/locale/lv/helpCenter.json b/app/javascript/dashboard/i18n/locale/lv/helpCenter.json index 7a55537c2..e13b42c50 100644 --- a/app/javascript/dashboard/i18n/locale/lv/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/lv/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Dzēšot rakstu, radās kļūda" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Lūdzu, pievienojiet raksta virsrakstu un saturu. Tikai tad Jūs varat atjaunināt iestatījumus" }, diff --git a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json index 1080f8983..dcd0115fd 100644 --- a/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Iesūtnes", "DESCRIPTION": "Kanāls ir saziņas veids, ko klients izvēlas saziņai ar jums. Iesūtne ir vieta, kur pārvaldāt mijiedarbības ar noteiktu kanālu. Tas var ietvert saziņu no dažādiem avotiem, piemēram, e-pasta, tiešsaistes tērzēšanas un sociālajiem medijiem.", "LEARN_MORE": "Uzzināt vairāk par iesūtnēm", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Jūsu iesūtne ir atvienota. Jūs nesaņemsiet jaunus ziņojumus, kamēr nebūsiet tos atkārtoti autorizējis.", "CLICK_TO_RECONNECT": "Noklikšķiniet šeit, lai atkārtoti izveidotu savienojumu.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Izmantot tikai konfigurēto uzņēmuma nosaukumu kā sūtītāja vārdu e-pasta galvenē." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Konfigurēt uzņēmuma nosaukumu", + "BUTTON_TEXT": "Konfigurēt uzņēmuma nosaukumu", "PLACEHOLDER": "Ievadiet uzņēmuma nosaukumu", "SAVE_BUTTON_TEXT": "Saglabāt" } @@ -589,8 +592,10 @@ "DISABLED": "Atspējots" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Iespējots", - "DISABLED": "Atspējots" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Iespējot" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Iespējot/Atspējot aģenta vārda rādīšanu e-pastā. Ja tas ir atspējots, tiks rādīts uzņēmuma nosaukums", "ENABLE_CONTINUITY_VIA_EMAIL": "Iespējot sarunas nepārtrauktību, izmantojot e-pastu", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Sarunas turpināsies pa e-pastu, ja saziņas e-pasta adrese ir pieejama.", - "LOCK_TO_SINGLE_CONVERSATION": "Pieturēties pie vienas sarunas", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Iespējot vai atspējot vairākas sarunas vienai un tai pašai kontaktpersonai šajā iesūtnē", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Iesūtnes Iestatījumi", "INBOX_UPDATE_SUB_TEXT": "Atjaunināt Jūsu iesūtnes iestatījumus", "AUTO_ASSIGNMENT_SUB_TEXT": "Iespējot vai atspējot jaunu sarunu automātisku piešķiršanu šai iesūtnei pievienotajiem aģentiem.", @@ -758,6 +765,7 @@ "LABEL": "Palīdzības centrs", "PLACEHOLDER": "Izvēlēties Palīdzības Centru", "SELECT_PLACEHOLDER": "Izvēlēties Palīdzības Centru", + "NONE": "Nav", "REMOVE": "Noņemt Palīdzības Centru", "SUB_TEXT": "Pievienot Palīdzības Centru ar iesūtni" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Lūdzu, ievadiet vērtību, kas ir lielāka par 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Ierobežo maksimālo sarunu skaitu no šīs iesūtnes, ko var automātiski piešķirt aģentam" }, + "ASSIGNMENT": { + "TITLE": "Sarunas Piešķiršana", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktīvs", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Atcelt", + "CONFIRM_DELETE": "Dzēst", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Atkārtoti autorizēties", "SUBTITLE": "Jūsu Facebook savienojuma derīguma termiņš ir beidzies. Lūdzu, atkārtoti pievienojiet savu Facebook lapu, lai turpinātu pakalpojumus", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Atgriezties" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Ziņojums nav pieejams priekš apmeklētājiem", "TOGGLE_HELP": "Iespējojot uzņēmuma pieejamību, tiešraides tērzēšanas logrīkā tiks rādīts darba laiks, pat ja visi aģenti būs bezsaistē. Ārpus darba laika apmeklētājus var brīdināt ar ziņojumu un pirms tērzēšanas veidlapu.", "DAY": { + "DAY": "Diena", + "AVAILABILITY": "Pieejamība", + "HOURS": "Hours", "ENABLE": "Iespējot pieejamību šai dienai", "UNAVAILABLE": "Nav pieejams", - "HOURS": "darba laiks", "VALIDATION_ERROR": "Sākuma laikam jābūt pirms slēgšanas laika.", "CHOOSE": "Izvēlēties" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Dienas laikā" }, "WIDGET_COLOR_LABEL": "Logrīka Krāsa", - "WIDGET_BUBBLE_POSITION_LABEL": "Logrīka Burbuļa Pozīcija", - "WIDGET_BUBBLE_TYPE_LABEL": "Logrīka Burbuļa Tips", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tips:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Tērzējiet ar mums", - "LABEL": "Logrīka Burbuļa Palaidēja Nosaukums", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Tērzējiet ar mums" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Noklusējums", - "CHAT": "Tērzēšana" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Parasti atbild dažu minūšu laikā", diff --git a/app/javascript/dashboard/i18n/locale/lv/integrationApps.json b/app/javascript/dashboard/i18n/locale/lv/integrationApps.json index 6bf03aa8b..ef3f3729c 100644 --- a/app/javascript/dashboard/i18n/locale/lv/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/lv/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Notiek Integrāciju Iegūšana", "NO_HOOK_CONFIGURED": "Šajā kontā nav nokonfigurēta neviena {integrationId} integrācija.", "HEADER": "Lietojumprogrammas", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Meklēt...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Iespējots", "DISABLED": "Atspējots" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Notiek integrāciju hook iegūšana", "INBOX": "Iesūtne", + "ACTIONS": "Darbības", "DELETE": { "BUTTON_TEXT": "Dzēst" } diff --git a/app/javascript/dashboard/i18n/locale/lv/integrations.json b/app/javascript/dashboard/i18n/locale/lv/integrations.json index f45afff1c..bd97b0d4f 100644 --- a/app/javascript/dashboard/i18n/locale/lv/integrations.json +++ b/app/javascript/dashboard/i18n/locale/lv/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrējas ar vairākiem rīkiem un pakalpojumiem, lai uzlabotu jūsu komandas efektivitāti. Izpētiet tālāk esošo sarakstu, lai konfigurētu savas iecienītākās lietotnes.", "LEARN_MORE": "Uzzināt vairāk par integrācijām", "LOADING": "Integrāciju iegūšana", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain jūsu kontā nav iespējots.", "CLICK_HERE_TO_CONFIGURE": "Noklikšķiniet šeit, lai konfigurētu", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Abonētie Notikumi", "LEARN_MORE": "Uzzināt vairāk par webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Atcelt", "DESC": "Webhook notikumi sniedz Jums reāllaika informāciju par to, kas notiek jūsu Chatwoot kontā. Lūdzu, ievadiet derīgu URL, lai nokonfigurētu atzvanīšanu.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Dzēst", "DELETE_CONFIRMATION": { "TITLE": "Dzēst integrāciju", @@ -145,7 +160,29 @@ "EXPAND": "Izvērst", "MAKE_FRIENDLY": "Mainīt ziņojuma toni uz draudzīgu", "MAKE_FORMAL": "Izmantot formālu toni", - "SIMPLIFY": "Vienkāršot" + "SIMPLIFY": "Vienkāršot", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesionāls", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Draudzīgs" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Melnraksta saturs", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Informācijas Paneļa Lietotnes

Informācijas paneļa lietotnes ļauj organizācijām iegult lietojumprogrammu Chatwoot informācijas panelī, lai nodrošinātu kontekstu klientu atbalsta aģentiem. Šī funkcija ļauj Jums izveidot lietojumprogrammu neatkarīgi un iegult to informācijas panelī, lai sniegtu informāciju par lietotāju, viņu pasūtījumiem vai viņu iepriekšējo maksājumu vēsturi.

Kad iegulsiet lietojumprogrammu, izmantojot Chatwoot informācijas paneli, Jūsu lietojumprogramma iegūs sarunas un kontaktpersonas kontekstu kā loga notikumu. Ieviesiet savā lapā ziņojuma notikuma uztvērēju, lai saņemtu kontekstu.

Lai pievienotu jaunu informācijas paneļa lietotni, noklikšķiniet uz pogas 'Pievienot jaunu informācijas paneļa lietotni'.

", "DESCRIPTION": "Informācijas paneļa lietotnes ļauj organizācijām iegult lietojumprogrammu informācijas panelī, lai nodrošinātu kontekstu klientu atbalsta aģentiem. Šī funkcija ļauj Jums neatkarīgi izveidot lietojumprogrammu un iegult to, lai sniegtu informāciju par lietotāju, viņu pasūtījumiem vai iepriekšējo maksājumu vēsturi.", "LEARN_MORE": "Uzzināt vairāk par Informācijas paneļa Lietotnēm", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Šajā kontā vēl nav nokonfigurēta neviena informācijas paneļa lietotne", "LOADING": "Notiek informācijas paneļa lietotņu iegūšana...", "TABLE_HEADER": { "NAME": "Nosaukums", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Darbības" }, "EDIT_TOOLTIP": "Rediģēt lietotni", "DELETE_TOOLTIP": "Dzēst lietotni" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Lineārs", "ADD_OR_LINK_BUTTON": "Izveidot/Saistīt lineāru problēmu", "LOADING": "Notiek lineāru problēmu iegūšana...", "LOADING_ERROR": "Lineāru problēmu iegūšanas laikā radās kļūda. Lūdzu, mēģiniet vēlreiz", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Jūs varat jebkurā laikā mainīt vai atcelt savu versiju" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Modernizējiet savu abonementu, lai iegūtu piekļuvi viruālajiem asistentiem un copilot.", "ASK_ADMIN": "Lai pārietu uz maksas versiju, lūdzu sazinieties ar savu administratoru." }, diff --git a/app/javascript/dashboard/i18n/locale/lv/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/lv/labelsMgmt.json index c520ba043..28cd4c76c 100644 --- a/app/javascript/dashboard/i18n/locale/lv/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/lv/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Notiek etiķešu iegūšana", "DESCRIPTION": "Etiķetes palīdz kategorizēt sarunas, interesentus un noteikt to prioritātes. Etiķeti, sarunai vai kontaktpersonai, varat piešķirt Izmantojot sānu paneli.", "LEARN_MORE": "Uzzināt vairāk par etiķetēm", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Meklēt etiķetes...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Šim vaicājumam nav atbilstošu vienumu", "LIST": { "404": "Šajā kontā nav izveidotas etiķetes.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nosaukums", "DESCRIPTION": "Apraksts", - "COLOR": "Krāsa" + "COLOR": "Krāsa", + "ACTION": "Darbības" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/lv/macros.json b/app/javascript/dashboard/i18n/locale/lv/macros.json index 29ecd5d48..677acc6dd 100644 --- a/app/javascript/dashboard/i18n/locale/lv/macros.json +++ b/app/javascript/dashboard/i18n/locale/lv/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "Makro ir saglabātu darbību kopa, kas palīdz klientu apkalpošanas aģentiem viegli veikt uzdevumus. Aģenti var definēt darbību kopu, piemēram, sarunas marķēšanu ar etiķeti, sarunas transkripta nosūtīšanu uz e-pastu, pielāgota atribūta atjaunināšanu utt., un viņi var veikt šīs darbības ar vienu klikšķi.", "LEARN_MORE": "Uzzināt vairāk par makro", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Pievienot jaunu makro", "HEADER_BTN_TXT_SAVE": "Saglabāt makro", "LOADING": "Notiek makro iegūšana", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Radās kļūda. Lūdzu, mēģiniet vēlreiz", "ORDER_INFO": "Makro darbosies tādā secībā, kādā Jūs pievienosit savas darbības. Jūs varat tos pārkārtot, velkot tos aiz roktura kas atrodas blakus katram mezglam.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nosaukums", "CREATED BY": "Izveidoja", "LAST_UPDATED_BY": "Pēdējo reizi atjaunināja", - "VISIBILITY": "Redzamība" + "VISIBILITY": "Redzamība", + "ACTIONS": "Darbības" }, "404": "Nav atrasts neviens makro" }, diff --git a/app/javascript/dashboard/i18n/locale/lv/mfa.json b/app/javascript/dashboard/i18n/locale/lv/mfa.json index 0bf3f0163..837a5b5b5 100644 --- a/app/javascript/dashboard/i18n/locale/lv/mfa.json +++ b/app/javascript/dashboard/i18n/locale/lv/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/lv/report.json b/app/javascript/dashboard/i18n/locale/lv/report.json index 305da8164..c9e32d7d2 100644 --- a/app/javascript/dashboard/i18n/locale/lv/report.json +++ b/app/javascript/dashboard/i18n/locale/lv/report.json @@ -3,7 +3,7 @@ "HEADER": "Sarunas", "LOADING_CHART": "Notiek diagrammas datu ielāde...", "NO_ENOUGH_DATA": "Mēs neesam saņēmuši pietiekami daudz datu punktu, lai izveidotu pārskatu. Lūdzu, vēlāk mēģiniet vēlreiz.", - "DOWNLOAD_AGENT_REPORTS": "Lejupielādēt aģentu pārskatus", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Neizdevās izgūt datus. Lūdzu, vēlāk mēģiniet vēlreiz.", "SUMMARY_FETCHING_FAILED": "Neizdevās izgūt kopsavilkumu. Lūdzu, vēlāk mēģiniet vēlreiz.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Aģentu Pārskats", - "DESCRIPTION": "Ērti izsekojiet aģenta darbībai, izmantojot galvenos rādītājus, piemēram, sarunas, atbildes laikus, atrisināšanas laikus un atrisinātos gadījumus. Noklikšķiniet uz aģenta vārda, lai uzzinātu vairāk.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Notiek diagrammas datu ielāde...", "NO_ENOUGH_DATA": "Mēs neesam saņēmuši pietiekami daudz datu punktu, lai izveidotu pārskatu. Lūdzu, vēlāk mēģiniet vēlreiz.", "DOWNLOAD_AGENT_REPORTS": "Lejupielādēt aģentu pārskatus", "FILTER_DROPDOWN_LABEL": "Izvēlieties Aģentu", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Meklēt aģentus" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Sarunas", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Mēs neesam saņēmuši pietiekami daudz datu punktu, lai izveidotu pārskatu. Lūdzu, vēlāk mēģiniet vēlreiz.", "DOWNLOAD_LABEL_REPORTS": "Lejupielādēt etiķešu pārskatus", "FILTER_DROPDOWN_LABEL": "Izvēlieties Etiķeti", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Meklēt etiķetes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Sarunas", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Izvēlieties Iesūtni", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Sarunas", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Komandas Pārskats", - "DESCRIPTION": "Iegūstiet pārskatu par savas komandas veiktspēju, izmantojot būtiskus rādītājus, tostarp sarunas, atbildes laikus, atrisināšanas laikus un atrisinātos gadījumus. Lai iegūtu sīkāku informāciju, noklikšķiniet uz komandas nosaukuma.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Notiek diagrammas datu ielāde...", "NO_ENOUGH_DATA": "Mēs neesam saņēmuši pietiekami daudz datu punktu, lai izveidotu pārskatu. Lūdzu, vēlāk mēģiniet vēlreiz.", "DOWNLOAD_TEAM_REPORTS": "Lejupielādēt komandas pārskatus", "FILTER_DROPDOWN_LABEL": "Izvēlieties Komandu", + "FILTERS": { + "ADD_FILTER": "Pievienot filtru", + "CLEAR_ALL": "Notīrīt visu", + "NO_FILTER": "Nav pieejami filtri", + "INPUT_PLACEHOLDER": { + "TEAMS": "Meklēt komandas" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Sarunas", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Pārskati", - "NO_RECORDS": "CSAT aptaujas atbildes nav pieejamas.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Lejupielādēt CSAT Pārskatus", "DOWNLOAD_FAILED": "Neizdevās lejupielādēt CSAT Pārskatus", "FILTERS": { + "ADD_FILTER": "Pievienot filtru", + "CLEAR_ALL": "Notīrīt visu", + "NO_FILTER": "Nav pieejami filtri", + "INPUT_PLACEHOLDER": { + "AGENTS": "Meklēt aģentus", + "INBOXES": "Search inboxes", + "TEAMS": "Meklēt komandas", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Izvēlieties Aģentus" + "LABEL": "Aģents" + }, + "INBOXES": { + "LABEL": "Iesūtne" + }, + "TEAMS": { + "LABEL": "Komanda" + }, + "RATINGS": { + "LABEL": "Vērtējums" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontaktpersona", - "AGENT_NAME": "Piešķirtais aģents", + "AGENT_NAME": "Aģents", "RATING": "Vērtējums", - "FEEDBACK_TEXT": "Atsauksmes komentārs" - } + "FEEDBACK_TEXT": "Atsauksmes komentārs", + "CONVERSATION": "Saruna", + "CUSTOMER": "Customer", + "RESPONSE": "Atbilde", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Kopējais atbilžu skaits", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Atbildes ātrums", "TOOLTIP": "Kopējais atbilžu skaits / Kopējais nosūtīto CSAT aptaujas ziņojumu skaits * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Saglabāt", + "CANCEL": "Atcelt", + "SAVING": "Notiek saglabāšana...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Pāriet uz maksas versiju tagad", + "CANCEL_ANYTIME": "Jūs varat jebkurā laikā mainīt vai atcelt savu versiju" } } }, diff --git a/app/javascript/dashboard/i18n/locale/lv/settings.json b/app/javascript/dashboard/i18n/locale/lv/settings.json index 2e6e77d86..77c7101c8 100644 --- a/app/javascript/dashboard/i18n/locale/lv/settings.json +++ b/app/javascript/dashboard/i18n/locale/lv/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Lejupielādēt", "UPLOADING": "Notiek augšupielāde...", - "INSTAGRAM_STORY_UNAVAILABLE": "Šis stāsts vairs nav pieejams." + "INSTAGRAM_STORY_UNAVAILABLE": "Šis stāsts vairs nav pieejams.", + "INSTAGRAM_STORY_REPLY": "Atbildēja uz Jūsu stāstu:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Skatīt kartē" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automātiski atzīmēt bezsaistē, kad neizmantojat lietotni." }, "DOCS": "Lasīt dokumentus", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Asistents", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Īpašības", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Norēķini", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Meklēt īpašības" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Atrisināt sarunu", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Atrisināt sarunu", + "CANCEL": "Atcelt" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Izvēlieties opciju" + }, + "CHECKBOX": { + "YES": "Jā", + "NO": "Nē" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Pāriet uz maksas versiju tagad", + "CANCEL_ANYTIME": "Jūs varat jebkurā laikā mainīt vai atcelt savu versiju" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Lai pārietu uz maksas versiju, lūdzu sazinieties ar savu administratoru." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ak, vai! Mēs nevarējām atrast nevienu chatwoot kontu. Lūdzu, izveidojiet jaunu kontu, lai turpinātu.", "NEW_ACCOUNT": "Jauns Konts", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Atcelt" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/lv/signup.json b/app/javascript/dashboard/i18n/locale/lv/signup.json index 768f6e298..65cd1d0c6 100644 --- a/app/javascript/dashboard/i18n/locale/lv/signup.json +++ b/app/javascript/dashboard/i18n/locale/lv/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Izveidot kontu", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Reģistrēt", "TESTIMONIAL_HEADER": "Viss, kas nepieciešams, ir viens solis, lai virzītos uz priekšu", "TESTIMONIAL_CONTENT": "Jūs esat viena soļa attālumā no klientu piesaistīšanas, noturēšanas un jaunu klientu atrašanas.", diff --git a/app/javascript/dashboard/i18n/locale/lv/sla.json b/app/javascript/dashboard/i18n/locale/lv/sla.json index 3aa0c43aa..502a317f0 100644 --- a/app/javascript/dashboard/i18n/locale/lv/sla.json +++ b/app/javascript/dashboard/i18n/locale/lv/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Izveidot jaunu SLA politiku", "DESCRIPTION": "Pakalpojuma līmeņa līgumi (SLA) ir līgumi, kas nosaka skaidras cerības starp jūsu komandu un klientiem. Tie nosaka atbildes un atrisināšanas laika standartus, veidojot pārskatatbildības sistēmu un nodrošinot konsekventu, augstas kvalitātes pieredzi.", "LEARN_MORE": "Uzzināt vairāk par SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Notiek SLA iegūšana", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Pārejiet uz maksas versiju, lai izveidotu SLA", "AVAILABLE_ON": "SLA funkcija ir pieejama tikai Business un Enterprise versijās.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "Šim kontam nav piesaistīti SLA līgumi.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Uzņēmuma klientu izvirzītās problēmas, kurām nepieciešama tūlītēja uzmanība.", "TITLE_2": "Enterprise P1", "DESC_2": "Uzņēmuma klientu izvirzītās problēmas, uz kurām ātri jāreaģē." }, - "BUSINESS_HOURS_ON": "Darba laiks ieslēgts", - "BUSINESS_HOURS_OFF": "Darba laiks izslēgts", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Pirmās atbildes laika slieksnis", "NRT": "Nākamās atbildes laika slieksnis", diff --git a/app/javascript/dashboard/i18n/locale/lv/snooze.json b/app/javascript/dashboard/i18n/locale/lv/snooze.json new file mode 100644 index 000000000..35bcb5168 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/lv/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "darba laiks", + "DAY": "diena", + "DAYS": "days", + "WEEK": "nedēļa", + "WEEKS": "weeks", + "MONTH": "mēnesis", + "MONTHS": "months", + "YEAR": "mēnesis", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "rītdiena", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "nākamā nedēļa", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "no", + "AFTER": "after", + "WEEK": "nedēļa", + "DAY": "diena" + } +} diff --git a/app/javascript/dashboard/i18n/locale/lv/teamsSettings.json b/app/javascript/dashboard/i18n/locale/lv/teamsSettings.json index fcaec6192..0176b02c5 100644 --- a/app/javascript/dashboard/i18n/locale/lv/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/lv/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Notiek komandu iegūšana", "DESCRIPTION": "Komandas ļauj organizēt aģentus grupās, pamatojoties uz viņu pienākumiem. Aģents var piederēt vairākām komandām. Kad strādājat sadarbojoties, varat piešķirt sarunas noteiktām komandām.", "LEARN_MORE": "Uzzināt vairāk par komandām", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Meklēt komandas...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Šajā kontā nav izveidota neviena komanda.", "EDIT_TEAM": "Rediģēt komandu", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nevarēja saglabāt komandas informāciju. Lūdzu, mēģiniet vēlreiz." }, "AGENTS": { - "AGENT": "AĢENTS", - "EMAIL": "Epasts", + "AGENT": "Aģents", + "EMAIL": "E-pasts", "BUTTON_TEXT": "Pievienot aģentus", "ADD_AGENTS": "Notiek aģentu pievienošana Jūsu komandai...", "SELECT": "izvēlēties", diff --git a/app/javascript/dashboard/i18n/locale/ml/agentBots.json b/app/javascript/dashboard/i18n/locale/ml/agentBots.json index 0bbe3b7f0..a2187f99b 100644 --- a/app/javascript/dashboard/i18n/locale/ml/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ml/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "വെബ്‌ഹുക്ക് യുആർഎൽ" + "URL": "വെബ്‌ഹുക്ക് യുആർഎൽ", + "ACTIONS": "പ്രവർത്തനങ്ങൾ" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ml/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ml/agentMgmt.json index 6174a0aee..a8cb5b653 100644 --- a/app/javascript/dashboard/i18n/locale/ml/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "അഡ്മിനിസ്‌ട്രേറ്റർ", "AGENT": "ഏജന്റ്" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "ഈ അക്കൗണ്ടുമായി ബന്ധപ്പെട്ട ഏജന്റുകളൊന്നുമില്ല", "TITLE": "നിങ്ങളുടെ ടീമിലെ ഏജന്റുമാരെ മാനേജുചെയ്യുക", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "വൂട്ട് സെർവറിലേക്ക് കണക്റ്റുചെയ്യാനായില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക" } }, + "SEARCH_PLACEHOLDER": "ഏജന്റുകളെ തിരയുക...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "ഒരു ഫലവും കണ്ടെത്താനായില്ല." }, diff --git a/app/javascript/dashboard/i18n/locale/ml/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ml/attributesMgmt.json index decabcf47..ec5062839 100644 --- a/app/javascript/dashboard/i18n/locale/ml/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "സംഭാഷണം", "CONTACT": "ബന്ധപ്പെടുക" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ml/automation.json b/app/javascript/dashboard/i18n/locale/ml/automation.json index b6fb7df4a..d177a6211 100644 --- a/app/javascript/dashboard/i18n/locale/ml/automation.json +++ b/app/javascript/dashboard/i18n/locale/ml/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "സൃഷ്ടിക്കുക", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "പേര്", - "DESCRIPTION": "വിവരണം", "ACTIVE": "സജീവമാണ്", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "പ്രവർത്തനങ്ങൾ" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ml/bulkActions.json b/app/javascript/dashboard/i18n/locale/ml/bulkActions.json index 5001d61c7..337ad7305 100644 --- a/app/javascript/dashboard/i18n/locale/ml/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ml/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "ലേബലുകളൊന്നും കണ്ടെത്തിയില്ല", diff --git a/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json index 6e66761bb..a52931335 100644 --- a/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "ക്യാൻഡ് പ്രതികരണങ്ങൾ", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "ഈ ചോദ്യവുമായി പൊരുത്തപ്പെടുന്ന ഇനങ്ങളൊന്നുമില്ല.", "LIST": { "404": "ഈ അക്കൗണ്ടിൽ ക്യാൻഡ് പ്രതികരണങ്ങളൊന്നും ലഭ്യമല്ല.", diff --git a/app/javascript/dashboard/i18n/locale/ml/chatlist.json b/app/javascript/dashboard/i18n/locale/ml/chatlist.json index cbe3f820c..8874a1c4a 100644 --- a/app/javascript/dashboard/i18n/locale/ml/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ml/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ml/contact.json b/app/javascript/dashboard/i18n/locale/ml/contact.json index 0217995ea..a7f37fb06 100644 --- a/app/javascript/dashboard/i18n/locale/ml/contact.json +++ b/app/javascript/dashboard/i18n/locale/ml/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "കോൺ‌ടാക്റ്റുകളൊന്നും നിങ്ങളുടെ തിരയലുമായി പൊരുത്തപ്പെടുന്നില്ല", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ml/conversation.json b/app/javascript/dashboard/i18n/locale/ml/conversation.json index 2b8a41dde..4508078aa 100644 --- a/app/javascript/dashboard/i18n/locale/ml/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ml/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "പുതിയ ലൈനിനു വേണ്ടി ഷിഫ്റ്റ് + എന്റർ അടിക്കുക. ഒരു ക്യാൻഡ് പ്രതികരണം തിരഞ്ഞു എടുക്കാൻ വേണ്ടി '/ ' വച്ച് ടൈപ്പ് ചെയ്തു തുടങ്ങുക.", "PRIVATE_MSG_INPUT": "പുതിയ ലൈനിനു വേണ്ടി ഷിഫ്റ്റ് + എന്റർ അടിക്കുക. ഇത് ഏജന്റുമാർക്ക് മാത്രമേ ദൃശ്യമാകൂ", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "അയച്ചത്:", "BOT": "ബോട്ട്", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "സന്ദേശം അയയ്‌ക്കാനായില്ല! വീണ്ടും ശ്രമിക്കുക", "TRY_AGAIN": "വീണ്ടും ശ്രമിക്കുക", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "റദ്ദാക്കുക", "SEND_EMAIL_SUCCESS": "ചാറ്റ് ട്രാൻസ്ക്രിപ്റ്റ് വിജയകരമായി അയച്ചു", "SEND_EMAIL_ERROR": "ഒരു പിശക് ഉണ്ടായിരുന്നു, ദയവായി വീണ്ടും ശ്രമിക്കുക", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "ഉപഭോക്താവിന് ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", "SEND_TO_AGENT": "നിയുക്ത ഏജന്റിന് ട്രാൻസ്ക്രിപ്റ്റ് അയയ്ക്കുക", diff --git a/app/javascript/dashboard/i18n/locale/ml/customRole.json b/app/javascript/dashboard/i18n/locale/ml/customRole.json index 102876482..28ff309ef 100644 --- a/app/javascript/dashboard/i18n/locale/ml/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ml/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "ഈ ചോദ്യവുമായി പൊരുത്തപ്പെടുന്ന ഇനങ്ങളൊന്നുമില്ല.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ml/datePicker.json b/app/javascript/dashboard/i18n/locale/ml/datePicker.json index 55c6777ba..55f2f471e 100644 --- a/app/javascript/dashboard/i18n/locale/ml/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ml/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "അപേക്ഷിക്കുക", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "കഴിഞ്ഞ 3 മാസം", "LAST_6_MONTHS": "കഴിഞ്ഞ 6 മാസം", "LAST_YEAR": "കഴിഞ്ഞ വർഷം", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "ഇഷ്‌ടാനുസൃത തീയതി ശ്രേണി" } } diff --git a/app/javascript/dashboard/i18n/locale/ml/general.json b/app/javascript/dashboard/i18n/locale/ml/general.json index 60a70e9c4..33a6e0240 100644 --- a/app/javascript/dashboard/i18n/locale/ml/general.json +++ b/app/javascript/dashboard/i18n/locale/ml/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "അടയ്ക്കുക", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json index f95147b6e..065a7d6f0 100644 --- a/app/javascript/dashboard/i18n/locale/ml/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ml/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "റിപ്പോർട്ടുകൾ", diff --git a/app/javascript/dashboard/i18n/locale/ml/helpCenter.json b/app/javascript/dashboard/i18n/locale/ml/helpCenter.json index b61f61835..686b60185 100644 --- a/app/javascript/dashboard/i18n/locale/ml/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ml/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json index 278a964f3..3912a94d3 100644 --- a/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "ഇൻ‌ബോക്സുകൾ", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "പ്രവർത്തനരഹിതമാക്കി" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "പ്രവർത്തനക്ഷമമാക്കി", - "DISABLED": "പ്രവർത്തനരഹിതമാക്കി" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "ഇമെയിൽ വഴി സംഭാഷണ തുടർച്ച പ്രവർത്തനക്ഷമമാക്കുക", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "ബന്ധപ്പെടാനുള്ള ഇമെയിൽ വിലാസം ലഭ്യമാണെങ്കിൽ സംഭാഷണങ്ങൾ ഇമെയിൽ വഴി തുടരും.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "പുതിയ സംഭാഷണങ്ങളിൽ ലഭ്യമായ ഏജന്റുമാരുടെ ഓട്ടോമാറ്റിക് അസൈൻമെന്റ് പ്രാപ്തമാക്കുകയോ അപ്രാപ്തമാക്കുകയോ ചെയ്യുക", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "സജീവമാണ്", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "റദ്ദാക്കുക", + "CONFIRM_DELETE": "ഇല്ലാതാക്കുക", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "വീണ്ടും അംഗീകാരം നൽകുക", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "ദിവസം", + "AVAILABILITY": "ലഭ്യത", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "വിജറ്റ് നിറം", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "ഞങ്ങളുമായി ചാറ്റുചെയ്യുക", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "ഞങ്ങളുമായി ചാറ്റുചെയ്യുക" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "സാധാരണയായി കുറച്ച് മിനിറ്റിനുള്ളിൽ മറുപടി നൽകുന്നു", diff --git a/app/javascript/dashboard/i18n/locale/ml/integrationApps.json b/app/javascript/dashboard/i18n/locale/ml/integrationApps.json index d75175417..62ed01e91 100644 --- a/app/javascript/dashboard/i18n/locale/ml/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ml/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "പ്രവർത്തനക്ഷമമാക്കി", "DISABLED": "പ്രവർത്തനരഹിതമാക്കി" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "ഇൻബോക്സ്", + "ACTIONS": "പ്രവർത്തനങ്ങൾ", "DELETE": { "BUTTON_TEXT": "ഇല്ലാതാക്കുക" } diff --git a/app/javascript/dashboard/i18n/locale/ml/integrations.json b/app/javascript/dashboard/i18n/locale/ml/integrations.json index a9024de8f..aad75b091 100644 --- a/app/javascript/dashboard/i18n/locale/ml/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ml/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "റദ്ദാക്കുക", "DESC": "നിങ്ങളുടെ ചാറ്റ് വൂട്ട് അക്കൗണ്ടിൽ എന്താണ് സംഭവിക്കുന്നതെന്നതിനെക്കുറിച്ചുള്ള തത്സമയ വിവരങ്ങൾ വെബ്‌ഹൂക്ക് ഇവന്റുകൾ നൽകുന്നു. ഒരു കോൾബാക്ക് കോൺഫിഗർ ചെയ്യുന്നതിന് സാധുവായ ഒരു യുആർഎൽ നൽകുക.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "ഇല്ലാതാക്കുക", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "പേര്", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "പ്രവർത്തനങ്ങൾ" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json index e1882fe53..2f6842bbe 100644 --- a/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ml/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "ലേബലുകൾ ലഭ്യമാക്കുന്നു", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "ലേബലുകൾ തിരയുക...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "ഈ ചോദ്യവുമായി പൊരുത്തപ്പെടുന്ന ഇനങ്ങളൊന്നുമില്ല", "LIST": { "404": "ഈ അക്കൗണ്ടിൽ ലേബലുകളൊന്നും ലഭ്യമല്ല.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "പേര്", "DESCRIPTION": "വിവരണം", - "COLOR": "നിറം" + "COLOR": "നിറം", + "ACTION": "പ്രവർത്തനങ്ങൾ" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ml/macros.json b/app/javascript/dashboard/i18n/locale/ml/macros.json index afd84e332..2f1d1cbbf 100644 --- a/app/javascript/dashboard/i18n/locale/ml/macros.json +++ b/app/javascript/dashboard/i18n/locale/ml/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "പേര്", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "പ്രവർത്തനങ്ങൾ" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ml/mfa.json b/app/javascript/dashboard/i18n/locale/ml/mfa.json index 7afedc201..e68c9aea4 100644 --- a/app/javascript/dashboard/i18n/locale/ml/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ml/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ml/report.json b/app/javascript/dashboard/i18n/locale/ml/report.json index fbbcca17c..60473893c 100644 --- a/app/javascript/dashboard/i18n/locale/ml/report.json +++ b/app/javascript/dashboard/i18n/locale/ml/report.json @@ -3,7 +3,7 @@ "HEADER": "സംഭാഷണങ്ങൾ", "LOADING_CHART": "ചാർട്ട് ഡാറ്റ ലോഡു ചെയ്യുകയാണ്...", "NO_ENOUGH_DATA": "റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഡാറ്റ ഞങ്ങൾക്ക് ലഭിച്ചിട്ടില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക.", - "DOWNLOAD_AGENT_REPORTS": "ഏജന്റ് റിപ്പോർട്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "ഏജന്റുമാരുടെ അവലോകനം", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "ചാർട്ട് ഡാറ്റ ലോഡു ചെയ്യുകയാണ്...", "NO_ENOUGH_DATA": "റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഡാറ്റ ഞങ്ങൾക്ക് ലഭിച്ചിട്ടില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക.", "DOWNLOAD_AGENT_REPORTS": "ഏജന്റ് റിപ്പോർട്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക", "FILTER_DROPDOWN_LABEL": "ഏജന്റ് തിരഞ്ഞെടുക്കുക", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "ഏജന്റുകളെ തിരയുക" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "സംഭാഷണങ്ങൾ", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഡാറ്റ ഞങ്ങൾക്ക് ലഭിച്ചിട്ടില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക.", "DOWNLOAD_LABEL_REPORTS": "ലേബൽ റിപ്പോർട്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക", "FILTER_DROPDOWN_LABEL": "ലേബൽ തിരഞ്ഞെടുക്കുക", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "ലേബലുകൾ തിരയുക" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "സംഭാഷണങ്ങൾ", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "ഇൻബോക്സ് തിരഞ്ഞെടുക്കുക", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "സംഭാഷണങ്ങൾ", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "ടീം അവലോകനം", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "ചാർട്ട് ഡാറ്റ ലോഡു ചെയ്യുകയാണ്...", "NO_ENOUGH_DATA": "റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഡാറ്റ ഞങ്ങൾക്ക് ലഭിച്ചിട്ടില്ല, ദയവായി പിന്നീട് വീണ്ടും ശ്രമിക്കുക.", "DOWNLOAD_TEAM_REPORTS": "ടീം റിപ്പോർട്ടുകൾ ഡൗൺലോഡ് ചെയ്യുക", "FILTER_DROPDOWN_LABEL": "ടീം തിരഞ്ഞെടുക്കുക", + "FILTERS": { + "ADD_FILTER": "ഫിൽട്ടർ ചേർക്കുക", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "ടീമുകളെ തിരയുക" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "സംഭാഷണങ്ങൾ", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT റിപ്പോർട്ടുകൾ", - "NO_RECORDS": "CSAT സർവേ പ്രതികരണങ്ങളൊന്നും ലഭ്യമല്ല.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "ഫിൽട്ടർ ചേർക്കുക", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "ഏജന്റുകളെ തിരയുക", + "INBOXES": "Search inboxes", + "TEAMS": "ടീമുകളെ തിരയുക", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "ഏജന്റ്" + }, + "INBOXES": { + "LABEL": "ഇൻബോക്സ്" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "ബന്ധപ്പെടുക", - "AGENT_NAME": "നിയോഗിച്ച ഏജന്റ്", + "AGENT_NAME": "ഏജന്റ്", "RATING": "റേറ്റിംഗ്", - "FEEDBACK_TEXT": "ഫീഡ്ബാക്ക് അഭിപ്രായം" - } + "FEEDBACK_TEXT": "ഫീഡ്ബാക്ക് അഭിപ്രായം", + "CONVERSATION": "സംഭാഷണം", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "ആകെ പ്രതികരണങ്ങൾ", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "പ്രതികരണ നിരക്ക്", "TOOLTIP": "മൊത്തം പ്രതികരണങ്ങളുടെ എണ്ണം / അയച്ച CSAT സർവേ സന്ദേശങ്ങളുടെ ആകെ എണ്ണം * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "റദ്ദാക്കുക", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ml/settings.json b/app/javascript/dashboard/i18n/locale/ml/settings.json index 10aa54f4b..c71cb0ff6 100644 --- a/app/javascript/dashboard/i18n/locale/ml/settings.json +++ b/app/javascript/dashboard/i18n/locale/ml/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "ഡൗൺലോഡ്", "UPLOADING": "അപ്‌ലോഡുചെയ്യുന്നു...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "റദ്ദാക്കുക" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "പുതിയ അക്കൗണ്ട്", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "റദ്ദാക്കുക" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ml/signup.json b/app/javascript/dashboard/i18n/locale/ml/signup.json index 27ff6f388..1d757d213 100644 --- a/app/javascript/dashboard/i18n/locale/ml/signup.json +++ b/app/javascript/dashboard/i18n/locale/ml/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "രജിസ്റ്റർ", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ml/sla.json b/app/javascript/dashboard/i18n/locale/ml/sla.json index 6e4b6667a..cf9fba6b0 100644 --- a/app/javascript/dashboard/i18n/locale/ml/sla.json +++ b/app/javascript/dashboard/i18n/locale/ml/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ml/snooze.json b/app/javascript/dashboard/i18n/locale/ml/snooze.json new file mode 100644 index 000000000..fea5ee21b --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ml/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "ദിവസം", + "DAYS": "days", + "WEEK": "ദിവസം", + "WEEKS": "weeks", + "MONTH": "ആഴ്ച", + "MONTHS": "months", + "YEAR": "മാസം", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "ദിവസം", + "DAY": "ദിവസം" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ml/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ml/teamsSettings.json index 169ef9c15..5648756f9 100644 --- a/app/javascript/dashboard/i18n/locale/ml/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ml/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "ടീമുകളെ തിരയുക...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", + "AGENT": "ഏജന്റ്", "EMAIL": "ഇമെയിൽ", "BUTTON_TEXT": "ഏജന്റുമാരെ ചേർക്കുക", "ADD_AGENTS": "Adding Agents to your Team...", diff --git a/app/javascript/dashboard/i18n/locale/ms/agentBots.json b/app/javascript/dashboard/i18n/locale/ms/agentBots.json index 5e0cd93d9..cd283f015 100644 --- a/app/javascript/dashboard/i18n/locale/ms/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ms/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Tindakan-tindakan" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ms/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ms/agentMgmt.json index 8d383f511..9b0625a04 100644 --- a/app/javascript/dashboard/i18n/locale/ms/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Pentadbir", "AGENT": "Ejen" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Tiada ejen yang dikaitkan ke akaun ini", "TITLE": "Tadbir ejen dalam pasukan anda", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Masalah untuk hubungi Woot Server, Sila cuba sebentar lagi" } }, + "SEARCH_PLACEHOLDER": "Cari ejen...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Tiada dijumpa." }, diff --git a/app/javascript/dashboard/i18n/locale/ms/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ms/attributesMgmt.json index 9c474b4ee..d26e05844 100644 --- a/app/javascript/dashboard/i18n/locale/ms/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Mendapatkan atribut penyesuian", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ms/automation.json b/app/javascript/dashboard/i18n/locale/ms/automation.json index 3a0c84e2a..0849b9757 100644 --- a/app/javascript/dashboard/i18n/locale/ms/automation.json +++ b/app/javascript/dashboard/i18n/locale/ms/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nama", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Tindakan-tindakan" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ms/bulkActions.json b/app/javascript/dashboard/i18n/locale/ms/bulkActions.json index 7856642f2..c95d32a13 100644 --- a/app/javascript/dashboard/i18n/locale/ms/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ms/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/ms/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ms/cannedMgmt.json index 817d3bd9a..f24445cb3 100644 --- a/app/javascript/dashboard/i18n/locale/ms/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/ms/chatlist.json b/app/javascript/dashboard/i18n/locale/ms/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/ms/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ms/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ms/contact.json b/app/javascript/dashboard/i18n/locale/ms/contact.json index e247ac251..3acc6b7f7 100644 --- a/app/javascript/dashboard/i18n/locale/ms/contact.json +++ b/app/javascript/dashboard/i18n/locale/ms/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ms/conversation.json b/app/javascript/dashboard/i18n/locale/ms/conversation.json index 11c34769d..b61f9d9d0 100644 --- a/app/javascript/dashboard/i18n/locale/ms/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ms/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Batalkan", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ms/customRole.json b/app/javascript/dashboard/i18n/locale/ms/customRole.json index 207363a59..df47b9045 100644 --- a/app/javascript/dashboard/i18n/locale/ms/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ms/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ms/datePicker.json b/app/javascript/dashboard/i18n/locale/ms/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/ms/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ms/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ms/general.json b/app/javascript/dashboard/i18n/locale/ms/general.json index 2998bcd27..7a1f5321c 100644 --- a/app/javascript/dashboard/i18n/locale/ms/general.json +++ b/app/javascript/dashboard/i18n/locale/ms/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ms/generalSettings.json b/app/javascript/dashboard/i18n/locale/ms/generalSettings.json index 5b62bba3f..a0a651d49 100644 --- a/app/javascript/dashboard/i18n/locale/ms/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ms/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/ms/helpCenter.json b/app/javascript/dashboard/i18n/locale/ms/helpCenter.json index 81674aa07..ce4cd2663 100644 --- a/app/javascript/dashboard/i18n/locale/ms/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ms/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json index 558244207..973241524 100644 --- a/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Batalkan", + "CONFIRM_DELETE": "Padamkan", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/ms/integrationApps.json b/app/javascript/dashboard/i18n/locale/ms/integrationApps.json index b65579e97..d6ac6547f 100644 --- a/app/javascript/dashboard/i18n/locale/ms/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ms/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Tindakan-tindakan", "DELETE": { "BUTTON_TEXT": "Padamkan" } diff --git a/app/javascript/dashboard/i18n/locale/ms/integrations.json b/app/javascript/dashboard/i18n/locale/ms/integrations.json index 50cb231ba..b94568463 100644 --- a/app/javascript/dashboard/i18n/locale/ms/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ms/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Batalkan", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Padamkan", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Nama", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Tindakan-tindakan" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ms/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ms/labelsMgmt.json index 156a6ff39..c90decd96 100644 --- a/app/javascript/dashboard/i18n/locale/ms/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ms/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nama", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Tindakan-tindakan" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ms/macros.json b/app/javascript/dashboard/i18n/locale/ms/macros.json index 48099f5f9..b7c423925 100644 --- a/app/javascript/dashboard/i18n/locale/ms/macros.json +++ b/app/javascript/dashboard/i18n/locale/ms/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nama", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Tindakan-tindakan" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ms/mfa.json b/app/javascript/dashboard/i18n/locale/ms/mfa.json index 4e0b282be..345442d5b 100644 --- a/app/javascript/dashboard/i18n/locale/ms/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ms/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ms/report.json b/app/javascript/dashboard/i18n/locale/ms/report.json index a70387666..e990aa448 100644 --- a/app/javascript/dashboard/i18n/locale/ms/report.json +++ b/app/javascript/dashboard/i18n/locale/ms/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Cari ejen" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Cari pasukan" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Cari ejen", + "INBOXES": "Search inboxes", + "TEAMS": "Cari pasukan", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Ejen" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Ejen", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Batalkan", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ms/settings.json b/app/javascript/dashboard/i18n/locale/ms/settings.json index 8c52e3f0b..5b0595e5d 100644 --- a/app/javascript/dashboard/i18n/locale/ms/settings.json +++ b/app/javascript/dashboard/i18n/locale/ms/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Batalkan" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Batalkan" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ms/signup.json b/app/javascript/dashboard/i18n/locale/ms/signup.json index 7d72e3245..1790362d3 100644 --- a/app/javascript/dashboard/i18n/locale/ms/signup.json +++ b/app/javascript/dashboard/i18n/locale/ms/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ms/sla.json b/app/javascript/dashboard/i18n/locale/ms/sla.json index 1cc1c0338..126cee48e 100644 --- a/app/javascript/dashboard/i18n/locale/ms/sla.json +++ b/app/javascript/dashboard/i18n/locale/ms/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ms/snooze.json b/app/javascript/dashboard/i18n/locale/ms/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ms/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ms/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ms/teamsSettings.json index ee50a9ab2..83132e93a 100644 --- a/app/javascript/dashboard/i18n/locale/ms/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ms/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Cari pasukan...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "Emel", + "AGENT": "Ejen", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ne/agentBots.json b/app/javascript/dashboard/i18n/locale/ne/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/ne/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ne/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ne/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ne/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/ne/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/ne/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ne/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/ne/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ne/automation.json b/app/javascript/dashboard/i18n/locale/ne/automation.json index 713ae7e82..d980098f4 100644 --- a/app/javascript/dashboard/i18n/locale/ne/automation.json +++ b/app/javascript/dashboard/i18n/locale/ne/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ne/bulkActions.json b/app/javascript/dashboard/i18n/locale/ne/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/ne/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ne/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/ne/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ne/cannedMgmt.json index 9cab6693e..2a9dd154c 100644 --- a/app/javascript/dashboard/i18n/locale/ne/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/ne/chatlist.json b/app/javascript/dashboard/i18n/locale/ne/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/ne/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ne/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ne/contact.json b/app/javascript/dashboard/i18n/locale/ne/contact.json index 22109f9c6..9e9edc528 100644 --- a/app/javascript/dashboard/i18n/locale/ne/contact.json +++ b/app/javascript/dashboard/i18n/locale/ne/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ne/conversation.json b/app/javascript/dashboard/i18n/locale/ne/conversation.json index 45560d95f..74462e090 100644 --- a/app/javascript/dashboard/i18n/locale/ne/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ne/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ne/customRole.json b/app/javascript/dashboard/i18n/locale/ne/customRole.json index 5588f67f2..ef93efc1f 100644 --- a/app/javascript/dashboard/i18n/locale/ne/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ne/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ne/datePicker.json b/app/javascript/dashboard/i18n/locale/ne/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/ne/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ne/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ne/general.json b/app/javascript/dashboard/i18n/locale/ne/general.json index c46aeae1a..9a0a7881e 100644 --- a/app/javascript/dashboard/i18n/locale/ne/general.json +++ b/app/javascript/dashboard/i18n/locale/ne/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "बन्दा गार्नुहोस्", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ne/generalSettings.json b/app/javascript/dashboard/i18n/locale/ne/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/ne/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ne/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/ne/helpCenter.json b/app/javascript/dashboard/i18n/locale/ne/helpCenter.json index 760e2b6dd..327a70ced 100644 --- a/app/javascript/dashboard/i18n/locale/ne/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ne/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json index 887963cae..5cb3b0ef4 100644 --- a/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "हामीसँग कुराकानी गर्नुहोस्", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "हामीसँग कुराकानी गर्नुहोस्" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "धेरै जसो केहि मिनेटमा जवाफ हुन्छ", diff --git a/app/javascript/dashboard/i18n/locale/ne/integrationApps.json b/app/javascript/dashboard/i18n/locale/ne/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/ne/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ne/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/ne/integrations.json b/app/javascript/dashboard/i18n/locale/ne/integrations.json index c0ea2dbff..01b083d51 100644 --- a/app/javascript/dashboard/i18n/locale/ne/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ne/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ne/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ne/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/ne/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ne/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ne/macros.json b/app/javascript/dashboard/i18n/locale/ne/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/ne/macros.json +++ b/app/javascript/dashboard/i18n/locale/ne/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ne/mfa.json b/app/javascript/dashboard/i18n/locale/ne/mfa.json index 9cef374f8..ce507418f 100644 --- a/app/javascript/dashboard/i18n/locale/ne/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ne/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ne/report.json b/app/javascript/dashboard/i18n/locale/ne/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/ne/report.json +++ b/app/javascript/dashboard/i18n/locale/ne/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ne/settings.json b/app/javascript/dashboard/i18n/locale/ne/settings.json index c12f56091..fda4d0f31 100644 --- a/app/javascript/dashboard/i18n/locale/ne/settings.json +++ b/app/javascript/dashboard/i18n/locale/ne/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "डाउनलोड", "UPLOADING": "अपलोड गर्दै...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ne/signup.json b/app/javascript/dashboard/i18n/locale/ne/signup.json index aa96873e1..746ca0999 100644 --- a/app/javascript/dashboard/i18n/locale/ne/signup.json +++ b/app/javascript/dashboard/i18n/locale/ne/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ne/sla.json b/app/javascript/dashboard/i18n/locale/ne/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/ne/sla.json +++ b/app/javascript/dashboard/i18n/locale/ne/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ne/snooze.json b/app/javascript/dashboard/i18n/locale/ne/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ne/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ne/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ne/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/ne/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ne/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/nl/agentBots.json b/app/javascript/dashboard/i18n/locale/nl/agentBots.json index e0eb22829..616105130 100644 --- a/app/javascript/dashboard/i18n/locale/nl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/nl/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Systeem", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Acties" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/nl/agentMgmt.json b/app/javascript/dashboard/i18n/locale/nl/agentMgmt.json index 4eb1a71dd..306e6c34c 100644 --- a/app/javascript/dashboard/i18n/locale/nl/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Beheerder", "AGENT": "Medewerker" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Er zijn geen medewerkers gekoppeld aan dit account", "TITLE": "Beheer medewerkers in uw team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Kan geen verbinding maken met Woot Server, probeer het later opnieuw" } }, + "SEARCH_PLACEHOLDER": "Zoek agenten...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Geen resultaten gevonden." }, diff --git a/app/javascript/dashboard/i18n/locale/nl/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/nl/attributesMgmt.json index 006c4a456..49668e198 100644 --- a/app/javascript/dashboard/i18n/locale/nl/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Aangepaste attributen ophalen", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Attributen zoeken...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Gesprek", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/nl/automation.json b/app/javascript/dashboard/i18n/locale/nl/automation.json index fdef5df6f..096c2e072 100644 --- a/app/javascript/dashboard/i18n/locale/nl/automation.json +++ b/app/javascript/dashboard/i18n/locale/nl/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Automatiseringsregel toevoegen", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Automatiseringsregels ophalen", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Automatiseringsregel toevoegen", "SUBMIT": "Aanmaken", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Naam", - "DESCRIPTION": "Beschrijving", "ACTIVE": "Actief", - "CREATED_ON": "Aangemaakt op" + "CREATED_ON": "Aangemaakt op", + "ACTIONS": "Acties" }, "404": "Geen automatiseringsregels gevonden" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/nl/bulkActions.json b/app/javascript/dashboard/i18n/locale/nl/bulkActions.json index 9751d9dd6..5cbd9c99b 100644 --- a/app/javascript/dashboard/i18n/locale/nl/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/nl/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Gespreksstatus succesvol bijgewerkt.", "UPDATE_FAILED": "Update van gesprekken mislukt, probeer het opnieuw." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Labels toewijzen", "NO_LABELS_FOUND": "Geen labels gevonden", diff --git a/app/javascript/dashboard/i18n/locale/nl/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/nl/cannedMgmt.json index 7d1ef8560..cc0344a27 100644 --- a/app/javascript/dashboard/i18n/locale/nl/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Standaard antwoorden", "LEARN_MORE": "Meer informatie over standaard antwoorden", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Standaard antwoord toevoegen", "LOADING": "Standaard antwoorden ophalen...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Er zijn geen items die overeenkomen met deze zoekopdracht.", "LIST": { "404": "Er zijn geen standaard antwoorden beschikbaar in dit account.", diff --git a/app/javascript/dashboard/i18n/locale/nl/chatlist.json b/app/javascript/dashboard/i18n/locale/nl/chatlist.json index a7333bea7..6a27f5aef 100644 --- a/app/javascript/dashboard/i18n/locale/nl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/nl/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/nl/contact.json b/app/javascript/dashboard/i18n/locale/nl/contact.json index 342a7a171..f83af005a 100644 --- a/app/javascript/dashboard/i18n/locale/nl/contact.json +++ b/app/javascript/dashboard/i18n/locale/nl/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Er zijn geen contacten die overeenkomen met je zoekopdracht 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Label toewijzen", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Aan:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Onderwerp :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "CC:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "BCC:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "BCC" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/nl/conversation.json b/app/javascript/dashboard/i18n/locale/nl/conversation.json index 8466f1ca5..afda6332e 100644 --- a/app/javascript/dashboard/i18n/locale/nl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/nl/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Bericht succesvol verwijderd", "FAIL_DELETE_MESSSAGE": "Kon bericht niet verwijderen! Probeer het opnieuw", "NO_RESPONSE": "Geen reactie", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Handtekening deactiveren", "MSG_INPUT": "Shift + enter voor nieuwe regel. Begin met '/' om een standaard antwoord te selecteren.", "PRIVATE_MSG_INPUT": "Shift + nieuwe regel invoeren. Dit is alleen zichtbaar voor medewerkers", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Berichtondertekening is niet geconfigureerd, configureer deze in de profielinstellingen.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klik hier om bij te werken", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Sleep hierheen om toe te voegen", "START_AUDIO_RECORDING": "Start audio-opname", "STOP_AUDIO_RECORDING": "Stop audio-opname", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "AAN", "ADD_BCC": "Voeg bcc toe", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Verzonden door:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Kon bericht niet verzenden! Probeer het opnieuw", "TRY_AGAIN": "opnieuw proberen", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Annuleren", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "Er is een fout opgetreden, probeer het opnieuw", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/nl/customRole.json b/app/javascript/dashboard/i18n/locale/nl/customRole.json index ad0333c5e..cb2cfbb15 100644 --- a/app/javascript/dashboard/i18n/locale/nl/customRole.json +++ b/app/javascript/dashboard/i18n/locale/nl/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Er zijn geen items die overeenkomen met deze zoekopdracht.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/nl/datePicker.json b/app/javascript/dashboard/i18n/locale/nl/datePicker.json index 92a28fa2b..f11782951 100644 --- a/app/javascript/dashboard/i18n/locale/nl/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/nl/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/nl/general.json b/app/javascript/dashboard/i18n/locale/nl/general.json index f3a6a4c01..fbd78ad73 100644 --- a/app/javascript/dashboard/i18n/locale/nl/general.json +++ b/app/javascript/dashboard/i18n/locale/nl/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Sluiten", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json index 3ddf3e240..6c7ffa63f 100644 --- a/app/javascript/dashboard/i18n/locale/nl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/nl/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Algemeen", "REPORTS": "Rapporten", diff --git a/app/javascript/dashboard/i18n/locale/nl/helpCenter.json b/app/javascript/dashboard/i18n/locale/nl/helpCenter.json index 9215963f8..12e9ee530 100644 --- a/app/javascript/dashboard/i18n/locale/nl/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/nl/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Kan artikelen niet herordenen. Probeer het opnieuw." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json index e2d663281..bffaf9141 100644 --- a/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxen", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Opslaan" } @@ -589,8 +592,10 @@ "DISABLED": "Uitgeschakeld" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Ingeschakeld", - "DISABLED": "Uitgeschakeld" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Instellingen Postvak In", "INBOX_UPDATE_SUB_TEXT": "Update uw inbox instellingen", "AUTO_ASSIGNMENT_SUB_TEXT": "In- of uitschakelen van de automatische toewijzing van nieuwe gesprekken aan de agenten die aan deze inbox zijn toegevoegd.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Geen", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Actief", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Annuleren", + "CONFIRM_DELETE": "Verwijderen", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Autoriseer", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Ga terug" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In één dag" }, "WIDGET_COLOR_LABEL": "Kleur van widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat met ons", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat met ons" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Reageert meestal binnen een paar minuten", diff --git a/app/javascript/dashboard/i18n/locale/nl/integrationApps.json b/app/javascript/dashboard/i18n/locale/nl/integrationApps.json index 2f30935d6..a42f4f1de 100644 --- a/app/javascript/dashboard/i18n/locale/nl/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/nl/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Integraties ophalen", "NO_HOOK_CONFIGURED": "Er zijn geen {integrationId} integraties geconfigureerd in dit account.", "HEADER": "Applicaties", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Ingeschakeld", "DISABLED": "Uitgeschakeld" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Ophalen van integratie-hooks", "INBOX": "Postvak In", + "ACTIONS": "Acties", "DELETE": { "BUTTON_TEXT": "Verwijderen" } diff --git a/app/javascript/dashboard/i18n/locale/nl/integrations.json b/app/javascript/dashboard/i18n/locale/nl/integrations.json index 648875252..efd004144 100644 --- a/app/javascript/dashboard/i18n/locale/nl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/nl/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Annuleren", "DESC": "Webhook events bieden je realtime informatie over wat er gebeurt in je Chatwoot account. Voer een geldige URL in om een callback te configureren.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Verwijderen", "DELETE_CONFIRMATION": { "TITLE": "Integratie verwijderen", @@ -145,7 +160,29 @@ "EXPAND": "Uitklappen", "MAKE_FRIENDLY": "Wijzig berichttoon naar vriendelijk", "MAKE_FORMAL": "Gebruik formele toon", - "SIMPLIFY": "Vereenvoudigen" + "SIMPLIFY": "Vereenvoudigen", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professioneel", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Vriendelijk" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Concept inhoud", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Naam", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Acties" }, "EDIT_TOOLTIP": "Bewerk app", "DELETE_TOOLTIP": "App verwijderen" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/nl/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/nl/labelsMgmt.json index a97d34515..b0922ba8b 100644 --- a/app/javascript/dashboard/i18n/locale/nl/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/nl/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Labels ophalen", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Zoek op labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Er zijn geen items die overeenkomen met deze zoekopdracht", "LIST": { "404": "Er zijn geen labels beschikbaar in dit account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Naam", "DESCRIPTION": "Beschrijving", - "COLOR": "Kleur" + "COLOR": "Kleur", + "ACTION": "Acties" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/nl/macros.json b/app/javascript/dashboard/i18n/locale/nl/macros.json index d1c3015a4..68c86c814 100644 --- a/app/javascript/dashboard/i18n/locale/nl/macros.json +++ b/app/javascript/dashboard/i18n/locale/nl/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macro's", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Naam", "CREATED BY": "Aangemaakt door", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Zichtbaarheid" + "VISIBILITY": "Zichtbaarheid", + "ACTIONS": "Acties" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/nl/mfa.json b/app/javascript/dashboard/i18n/locale/nl/mfa.json index 9caa33f7a..047815c08 100644 --- a/app/javascript/dashboard/i18n/locale/nl/mfa.json +++ b/app/javascript/dashboard/i18n/locale/nl/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/nl/report.json b/app/javascript/dashboard/i18n/locale/nl/report.json index d10ce7d5e..e3eb2f484 100644 --- a/app/javascript/dashboard/i18n/locale/nl/report.json +++ b/app/javascript/dashboard/i18n/locale/nl/report.json @@ -3,7 +3,7 @@ "HEADER": "Gesprekken", "LOADING_CHART": "Kaartgegevens laden...", "NO_ENOUGH_DATA": "We hebben niet genoeg datapunten ontvangen om een rapport te genereren, probeer het later opnieuw.", - "DOWNLOAD_AGENT_REPORTS": "Medewerkerrapporten downloaden", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Kaartgegevens laden...", "NO_ENOUGH_DATA": "We hebben niet genoeg datapunten ontvangen om een rapport te genereren, probeer het later opnieuw.", "DOWNLOAD_AGENT_REPORTS": "Medewerkerrapporten downloaden", "FILTER_DROPDOWN_LABEL": "Selecteer medewerker", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Zoek agenten" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Gesprekken", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We hebben niet genoeg datapunten ontvangen om een rapport te genereren, probeer het later opnieuw.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Zoek op labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Gesprekken", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Selecteer een inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Gesprekken", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Kaartgegevens laden...", "NO_ENOUGH_DATA": "We hebben niet genoeg datapunten ontvangen om een rapport te genereren, probeer het later opnieuw.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Filter toevoegen", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Teams zoeken" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Gesprekken", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Filter toevoegen", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Zoek agenten", + "INBOXES": "Search inboxes", + "TEAMS": "Teams zoeken", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Medewerker" + }, + "INBOXES": { + "LABEL": "Postvak In" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Beoordeling" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Medewerker", "RATING": "Beoordeling", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Gesprek", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Opslaan", + "CANCEL": "Annuleren", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/nl/settings.json b/app/javascript/dashboard/i18n/locale/nl/settings.json index de235af95..6e63dc21f 100644 --- a/app/javascript/dashboard/i18n/locale/nl/settings.json +++ b/app/javascript/dashboard/i18n/locale/nl/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Downloaden", "UPLOADING": "Uploaden...", - "INSTAGRAM_STORY_UNAVAILABLE": "Dit verhaal is niet meer beschikbaar." + "INSTAGRAM_STORY_UNAVAILABLE": "Dit verhaal is niet meer beschikbaar.", + "INSTAGRAM_STORY_REPLY": "Reageerde op jouw verhaal:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Attributen zoeken" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Annuleren" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Annuleren" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/nl/signup.json b/app/javascript/dashboard/i18n/locale/nl/signup.json index 4d6155c30..b575d4c3f 100644 --- a/app/javascript/dashboard/i18n/locale/nl/signup.json +++ b/app/javascript/dashboard/i18n/locale/nl/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Nieuw account aanmaken", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registreren", "TESTIMONIAL_HEADER": "Er is maar één stap nodig om vooruit te komen", "TESTIMONIAL_CONTENT": "U bent één stap verwijderd van het communiceren met uw klanten, ze te behouden en nieuwe te vinden.", diff --git a/app/javascript/dashboard/i18n/locale/nl/sla.json b/app/javascript/dashboard/i18n/locale/nl/sla.json index 7d3fa65eb..ad96ae140 100644 --- a/app/javascript/dashboard/i18n/locale/nl/sla.json +++ b/app/javascript/dashboard/i18n/locale/nl/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/nl/snooze.json b/app/javascript/dashboard/i18n/locale/nl/snooze.json new file mode 100644 index 000000000..80a89c28a --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/nl/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "dag", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "volgende", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "morgen", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "volgende week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "dag" + } +} diff --git a/app/javascript/dashboard/i18n/locale/nl/teamsSettings.json b/app/javascript/dashboard/i18n/locale/nl/teamsSettings.json index ebfa7f84c..3a23bfca3 100644 --- a/app/javascript/dashboard/i18n/locale/nl/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/nl/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Teams zoeken...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", + "AGENT": "Medewerker", "EMAIL": "E-mailadres", "BUTTON_TEXT": "Voeg agenten toe", "ADD_AGENTS": "Adding Agents to your Team...", diff --git a/app/javascript/dashboard/i18n/locale/no/agentBots.json b/app/javascript/dashboard/i18n/locale/no/agentBots.json index 188098606..1f4b57d74 100644 --- a/app/javascript/dashboard/i18n/locale/no/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/no/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Handlinger" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/no/agentMgmt.json b/app/javascript/dashboard/i18n/locale/no/agentMgmt.json index 42a65eb79..e287f5972 100644 --- a/app/javascript/dashboard/i18n/locale/no/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Det er ingen agenter tilknyttet denne kontoen", "TITLE": "Administrer agentene i ditt team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Kunne ikke koble til Woot Server, vennligst prøv igjen senere" } }, + "SEARCH_PLACEHOLDER": "Søk etter agenter...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Ingen resultater funnet." }, diff --git a/app/javascript/dashboard/i18n/locale/no/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/no/attributesMgmt.json index 7d1375fb8..564c84716 100644 --- a/app/javascript/dashboard/i18n/locale/no/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/no/automation.json b/app/javascript/dashboard/i18n/locale/no/automation.json index b73eff766..4e1b0b39e 100644 --- a/app/javascript/dashboard/i18n/locale/no/automation.json +++ b/app/javascript/dashboard/i18n/locale/no/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Opprett", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Navn", - "DESCRIPTION": "Beskrivelse", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Handlinger" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/no/bulkActions.json b/app/javascript/dashboard/i18n/locale/no/bulkActions.json index c3b4f429a..c0dfaf83f 100644 --- a/app/javascript/dashboard/i18n/locale/no/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/no/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/no/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/no/cannedMgmt.json index 3c58401ba..f32cc0b98 100644 --- a/app/javascript/dashboard/i18n/locale/no/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Forhåndslagde svar", "LEARN_MORE": "Lær mer om standard svar", "DESCRIPTION": "Forbudte svar er forhåndskrevne svarmaler som hjelper deg raskt å svare på en samtale. Agenter kan skrive inn '/'-tegnet etterfulgt av en kortkode for å sette inn et standard svar under en samtale. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Legge til standard svar", "LOADING": "Henter standard svar...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Det finnes ingen elementer som samsvarer med denne spørringen.", "LIST": { "404": "Det er ingen forhåndslagde svar tilgjengelig i denne kontoen.", diff --git a/app/javascript/dashboard/i18n/locale/no/chatlist.json b/app/javascript/dashboard/i18n/locale/no/chatlist.json index fa878aaf4..5d7535cfe 100644 --- a/app/javascript/dashboard/i18n/locale/no/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/no/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/no/contact.json b/app/javascript/dashboard/i18n/locale/no/contact.json index e612011ca..47ebc64c6 100644 --- a/app/javascript/dashboard/i18n/locale/no/contact.json +++ b/app/javascript/dashboard/i18n/locale/no/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Ingen kontakter samsvarer med søket ditt 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/no/conversation.json b/app/javascript/dashboard/i18n/locale/no/conversation.json index f282e5833..65b4d4fb9 100644 --- a/app/javascript/dashboard/i18n/locale/no/conversation.json +++ b/app/javascript/dashboard/i18n/locale/no/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for ny linje. Start med '/' for å velge et forhåndslagd svar.", "PRIVATE_MSG_INPUT": "Skift + enter for ny linje. Dette vil kun være synlig for agenter", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sendt av:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Avbryt", "SEND_EMAIL_SUCCESS": "Kopi av samtalen ble sendt", "SEND_EMAIL_ERROR": "Det oppstod en feil. Prøv igjen", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send kopi av samtalen til kunden", "SEND_TO_AGENT": "Send kopi av samtalen til den tildelte agenten", diff --git a/app/javascript/dashboard/i18n/locale/no/customRole.json b/app/javascript/dashboard/i18n/locale/no/customRole.json index 1c596f041..776ee6ac5 100644 --- a/app/javascript/dashboard/i18n/locale/no/customRole.json +++ b/app/javascript/dashboard/i18n/locale/no/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Det finnes ingen elementer som samsvarer med denne spørringen.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/no/datePicker.json b/app/javascript/dashboard/i18n/locale/no/datePicker.json index 69f4ec400..fc172eba8 100644 --- a/app/javascript/dashboard/i18n/locale/no/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/no/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/no/general.json b/app/javascript/dashboard/i18n/locale/no/general.json index f16393ccd..38d116cec 100644 --- a/app/javascript/dashboard/i18n/locale/no/general.json +++ b/app/javascript/dashboard/i18n/locale/no/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Lukk", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/no/generalSettings.json b/app/javascript/dashboard/i18n/locale/no/generalSettings.json index aacb3a470..75c5d1a2d 100644 --- a/app/javascript/dashboard/i18n/locale/no/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/no/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Rapporter", diff --git a/app/javascript/dashboard/i18n/locale/no/helpCenter.json b/app/javascript/dashboard/i18n/locale/no/helpCenter.json index ac2901adc..08a3bd4da 100644 --- a/app/javascript/dashboard/i18n/locale/no/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/no/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json index 4e6a60af7..373a53adf 100644 --- a/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Innbokser", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Deaktivert" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Aktivert", - "DISABLED": "Deaktivert" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Innboksinnstillinger", "INBOX_UPDATE_SUB_TEXT": "Oppdater innboksinnstillinger", "AUTO_ASSIGNMENT_SUB_TEXT": "Aktiver eller deaktiver automatisk tildeling av nye samtaler til agenter som er lagt til i denne innboksen.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Avbryt", + "CONFIRM_DELETE": "Slett", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautoriser", "SUBTITLE": "Facebook-tilkoblingen din er utløpt, koble til Facebook-siden din for å fortsette tjenester", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Tilgjengelighet", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Om en dag" }, "WIDGET_COLOR_LABEL": "Widget farge", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat med oss", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat med oss" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Svarer vanligvis innen et par timer", diff --git a/app/javascript/dashboard/i18n/locale/no/integrationApps.json b/app/javascript/dashboard/i18n/locale/no/integrationApps.json index 52c7571ce..54cf485da 100644 --- a/app/javascript/dashboard/i18n/locale/no/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/no/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Aktivert", "DISABLED": "Deaktivert" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Handlinger", "DELETE": { "BUTTON_TEXT": "Slett" } diff --git a/app/javascript/dashboard/i18n/locale/no/integrations.json b/app/javascript/dashboard/i18n/locale/no/integrations.json index 0266ca280..57cc1bcff 100644 --- a/app/javascript/dashboard/i18n/locale/no/integrations.json +++ b/app/javascript/dashboard/i18n/locale/no/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Avbryt", "DESC": "Webhook-hendelser gir deg sanntidsinformasjon om hva som skjer i din Chatwoot-konto. Skriv inn en gyldig nettadresse for å konfigurere en callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Slett", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Navn", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Handlinger" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/no/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/no/labelsMgmt.json index 5d27dcdbc..842b5663e 100644 --- a/app/javascript/dashboard/i18n/locale/no/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/no/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Henter etiketter", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Det finnes ingen elementer som samsvarer med denne spørringen", "LIST": { "404": "Det er ingen etiketter tilgjengelig i denne kontoen.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Navn", "DESCRIPTION": "Beskrivelse", - "COLOR": "Farge" + "COLOR": "Farge", + "ACTION": "Handlinger" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/no/macros.json b/app/javascript/dashboard/i18n/locale/no/macros.json index b5b1e663e..8ff0ac6ea 100644 --- a/app/javascript/dashboard/i18n/locale/no/macros.json +++ b/app/javascript/dashboard/i18n/locale/no/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Navn", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Handlinger" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/no/mfa.json b/app/javascript/dashboard/i18n/locale/no/mfa.json index b097a4685..f13c9dadd 100644 --- a/app/javascript/dashboard/i18n/locale/no/mfa.json +++ b/app/javascript/dashboard/i18n/locale/no/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/no/report.json b/app/javascript/dashboard/i18n/locale/no/report.json index 9dcfa688b..7595695cd 100644 --- a/app/javascript/dashboard/i18n/locale/no/report.json +++ b/app/javascript/dashboard/i18n/locale/no/report.json @@ -3,7 +3,7 @@ "HEADER": "Samtaler", "LOADING_CHART": "Laster inn diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke mottatt nok data for å generere rapporten, vennligst prøv igjen senere.", - "DOWNLOAD_AGENT_REPORTS": "Last ned agentrapporter", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Laster inn diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke mottatt nok data for å generere rapporten, vennligst prøv igjen senere.", "DOWNLOAD_AGENT_REPORTS": "Last ned agentrapporter", "FILTER_DROPDOWN_LABEL": "Velg agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Søk etter agenter" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Vi har ikke mottatt nok data for å generere rapporten, vennligst prøv igjen senere.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Laster inn diagramdata...", "NO_ENOUGH_DATA": "Vi har ikke mottatt nok data for å generere rapporten, vennligst prøv igjen senere.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Søk blant grupper" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Samtaler", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Søk etter agenter", + "INBOXES": "Search inboxes", + "TEAMS": "Søk blant grupper", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Avbryt", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/no/settings.json b/app/javascript/dashboard/i18n/locale/no/settings.json index a1c73b8bb..e246d5abb 100644 --- a/app/javascript/dashboard/i18n/locale/no/settings.json +++ b/app/javascript/dashboard/i18n/locale/no/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Last ned", "UPLOADING": "Laster opp...", - "INSTAGRAM_STORY_UNAVAILABLE": "Denne historien er ikke lenger tilgjengelig." + "INSTAGRAM_STORY_UNAVAILABLE": "Denne historien er ikke lenger tilgjengelig.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funksjoner", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Avbryt" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "Ny konto", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Avbryt" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/no/signup.json b/app/javascript/dashboard/i18n/locale/no/signup.json index 4e941c374..d0d67474b 100644 --- a/app/javascript/dashboard/i18n/locale/no/signup.json +++ b/app/javascript/dashboard/i18n/locale/no/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrer", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/no/sla.json b/app/javascript/dashboard/i18n/locale/no/sla.json index eb912c47c..8f8101127 100644 --- a/app/javascript/dashboard/i18n/locale/no/sla.json +++ b/app/javascript/dashboard/i18n/locale/no/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/no/snooze.json b/app/javascript/dashboard/i18n/locale/no/snooze.json new file mode 100644 index 000000000..90ccbe0da --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/no/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "dag", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "dag" + } +} diff --git a/app/javascript/dashboard/i18n/locale/no/teamsSettings.json b/app/javascript/dashboard/i18n/locale/no/teamsSettings.json index c9d03a904..5234a8cbd 100644 --- a/app/javascript/dashboard/i18n/locale/no/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/no/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Søk blant grupper...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-POST", + "AGENT": "Agent", + "EMAIL": "E-post", "BUTTON_TEXT": "Legg til agenter", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/pl/agentBots.json b/app/javascript/dashboard/i18n/locale/pl/agentBots.json index 6060d7e43..e2cd736f9 100644 --- a/app/javascript/dashboard/i18n/locale/pl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pl/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Ładowanie edytora...", "DESCRIPTION": "Boty agentów są jak najbardziej fantastyczni członkowie Twojego zespołu. Mogą zajmować się drobnymi sprawami, dzięki czemu Ty możesz skupić się na tym, co naprawdę ważne. Wypróbuj je! Możesz zarządzać swoimi botami z tej strony lub tworzyć nowe za pomocą przycisku 'Dodaj bota'.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Pobieranie botów...", "TABLE_HEADER": { "DETAILS": "Szczegóły bota", - "URL": "Adres URL webhooka" + "URL": "Adres URL webhooka", + "ACTIONS": "Akcje" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/pl/agentMgmt.json b/app/javascript/dashboard/i18n/locale/pl/agentMgmt.json index c4573928e..4d27494ca 100644 --- a/app/javascript/dashboard/i18n/locale/pl/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Nie ma agentów powiązanych z tym kontem", "TITLE": "Zarządzaj agentami w zespole", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nie można połączyć się z serwerem Woot, proszę spróbować później" } }, + "SEARCH_PLACEHOLDER": "Szukaj agentów...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nie znaleziono wyników." }, diff --git a/app/javascript/dashboard/i18n/locale/pl/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/pl/attributesMgmt.json index 74b127a23..c6fefcfdd 100644 --- a/app/javascript/dashboard/i18n/locale/pl/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Pobieranie atrybutów niestandardowych", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Wyszukaj atrybuty...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Rozmowa", "CONTACT": "Kontakt" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Włącz walidację regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/pl/automation.json b/app/javascript/dashboard/i18n/locale/pl/automation.json index 63bcba5fd..b953f738d 100644 --- a/app/javascript/dashboard/i18n/locale/pl/automation.json +++ b/app/javascript/dashboard/i18n/locale/pl/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatyzacja", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Dodaj regułę automatyzacji", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Pobieranie reguł automatyzacji", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Dodaj regułę automatyzacji", "SUBMIT": "Stwórz", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Imię", - "DESCRIPTION": "Opis", "ACTIVE": "Aktywne", - "CREATED_ON": "Utworzona dnia" + "CREATED_ON": "Utworzona dnia", + "ACTIONS": "Akcje" }, "404": "Nie znaleziono reguł automatyzacji" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Zmień priorytet", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Otwórz rozmowę" + "OPEN_CONVERSATION": "Otwórz rozmowę", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/pl/bulkActions.json b/app/javascript/dashboard/i18n/locale/pl/bulkActions.json index dc20e5fd7..5a6da3513 100644 --- a/app/javascript/dashboard/i18n/locale/pl/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/pl/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Status rozmowy został pomyślnie zaktualizowany.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Brak wyników", diff --git a/app/javascript/dashboard/i18n/locale/pl/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/pl/cannedMgmt.json index 80abbd726..3db8ce741 100644 --- a/app/javascript/dashboard/i18n/locale/pl/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Przygotowane odpowiedzi", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Brak wyników pasujących do wyszukiwania.", "LIST": { "404": "Brak dostępnych Gotowych odpowiedzi na tym koncie.", diff --git a/app/javascript/dashboard/i18n/locale/pl/chatlist.json b/app/javascript/dashboard/i18n/locale/pl/chatlist.json index eb1f040e6..7f37c06e8 100644 --- a/app/javascript/dashboard/i18n/locale/pl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pl/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/pl/contact.json b/app/javascript/dashboard/i18n/locale/pl/contact.json index 110e17ce0..cd772f762 100644 --- a/app/javascript/dashboard/i18n/locale/pl/contact.json +++ b/app/javascript/dashboard/i18n/locale/pl/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Brak kontaktów pasujących do wyszukiwania 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Przypisz etykiety", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Do:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Temat :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/pl/conversation.json b/app/javascript/dashboard/i18n/locale/pl/conversation.json index 62b4a1065..f74a8b492 100644 --- a/app/javascript/dashboard/i18n/locale/pl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pl/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Wiadomość usunięta pomyślnie", "FAIL_DELETE_MESSSAGE": "Nie można usunąć wiadomości! Spróbuj ponownie", "NO_RESPONSE": "Brak odpowiedzi", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nie można przypisać etykiety. Spróbuj ponownie." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Przypisano zespół \"{team}\" do konwersacji o identyfikatorze {conversationId}", "FAILED": "Nie można przypisać zespołu. Spróbuj ponownie." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Wyłącz podpis", "MSG_INPUT": "Shift + enter dla nowej linii. Zacznij od '/' aby wybrać Gotową odpowiedź.", "PRIVATE_MSG_INPUT": "Shift + enter dla nowej linii. Będzie widoczne tylko dla agentów", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Podpis wiadomości nie jest skonfigurowany, należy go skonfigurować w ustawieniach profilu.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Kliknij tutaj, aby zaktualizować", "WHATSAPP_TEMPLATES": "Szablony WhatsApp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Przeciągnij i upuść tutaj, aby dołączyć", "START_AUDIO_RECORDING": "Rozpocznij nagrywanie audio", "STOP_AUDIO_RECORDING": "Zatrzymaj nagrywanie audio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "DO", "ADD_BCC": "Dodaj Bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Plik przekracza limit rozmiaru załącznika %{MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nie można wysłać tej wiadomości, spróbuj ponownie później", "SENT_BY": "Wysłane przez:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nie można wysłać wiadomości! Spróbuj ponownie", "TRY_AGAIN": "spróbuj ponownie", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Anuluj", "SEND_EMAIL_SUCCESS": "Transkrypt rozmowy został pomyślnie wysłany", "SEND_EMAIL_ERROR": "Wystąpił błąd, spróbuj ponownie", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Wyślij transkrypt do klienta", "SEND_TO_AGENT": "Wyślij transkrypt do przypisanego agenta", diff --git a/app/javascript/dashboard/i18n/locale/pl/customRole.json b/app/javascript/dashboard/i18n/locale/pl/customRole.json index 3514e09fc..041af0367 100644 --- a/app/javascript/dashboard/i18n/locale/pl/customRole.json +++ b/app/javascript/dashboard/i18n/locale/pl/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Brak wyników pasujących do wyszukiwania.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/pl/datePicker.json b/app/javascript/dashboard/i18n/locale/pl/datePicker.json index 6a3ca9491..60161ce95 100644 --- a/app/javascript/dashboard/i18n/locale/pl/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/pl/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Zastosuj", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Ostatnie 3 miesiące", "LAST_6_MONTHS": "Ostatnie 6 miesięcy", "LAST_YEAR": "Ostatni rok", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Niestandardowy zakres dat" } } diff --git a/app/javascript/dashboard/i18n/locale/pl/general.json b/app/javascript/dashboard/i18n/locale/pl/general.json index 9a0d9b7b6..e3657bf9c 100644 --- a/app/javascript/dashboard/i18n/locale/pl/general.json +++ b/app/javascript/dashboard/i18n/locale/pl/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Zamknij", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Tak", + "NO": "Nie" } } diff --git a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json index 3798b6f7b..e47ea01db 100644 --- a/app/javascript/dashboard/i18n/locale/pl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pl/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Szukaj lub przejdź do", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Ogólne", "REPORTS": "Raporty", diff --git a/app/javascript/dashboard/i18n/locale/pl/helpCenter.json b/app/javascript/dashboard/i18n/locale/pl/helpCenter.json index e1f2ce056..46884b314 100644 --- a/app/javascript/dashboard/i18n/locale/pl/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/pl/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Błąd podczas usuwania artykułu" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Proszę dodać tytuł i treść artykułu, aby móc zaktualizować ustawienia" }, diff --git a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json index c30424272..6fd07a8ec 100644 --- a/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Zarządzanie skrzynkami", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Zapisz" } @@ -589,8 +592,10 @@ "DISABLED": "Wyłączone" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Włączone", - "DISABLED": "Wyłączone" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Włącz" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Włącz ciągłość rozmowy przez e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Rozmowy będą kontynuowane przez e-mail, jeśli adres e-mail kontaktu jest dostępny.", - "LOCK_TO_SINGLE_CONVERSATION": "Blokada do pojedynczej rozmowy", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Włączanie lub wyłączanie wielu wątków dla tego samego kontaktu w tej skrzynce odbiorczej", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Ustawienia skrzynki odbiorczej", "INBOX_UPDATE_SUB_TEXT": "Zaktualizuj ustawienia skrzynki odbiorczej", "AUTO_ASSIGNMENT_SUB_TEXT": "Włącz lub wyłącz automatyczne przypisywanie nowych rozmów do agentów dodanych do tej skrzynki odbiorczej.", @@ -758,6 +765,7 @@ "LABEL": "Centrum pomocy", "PLACEHOLDER": "Wybierz Centrum pomocy", "SELECT_PLACEHOLDER": "Wybierz Centrum pomocy", + "NONE": "Brak", "REMOVE": "Usuń Centrum pomocy", "SUB_TEXT": "Dołącz Centrum pomocy do skrzynki odbiorczej" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Wprowadź wartość większą niż 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Ogranicz maksymalną liczbę wątków z tej skrzynki odbiorczej, które mogą zostać automatycznie przypisane do agenta" }, + "ASSIGNMENT": { + "TITLE": "Zadanie konwersacji", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktywne", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Anuluj", + "CONFIRM_DELETE": "Usuń", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Ponowna autoryzacja", "SUBTITLE": "Twoje połączenie z Facebookiem wygasło, połącz się z nim ponownie, aby kontynuować świadczenie usług", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Powróć" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Wiadomość niedostępna dla odwiedzających", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Dzień", + "AVAILABILITY": "Dostępność", + "HOURS": "Hours", "ENABLE": "Włącz dostępność w tym dniu", "UNAVAILABLE": "Niedostępny", - "HOURS": "godzin", "VALIDATION_ERROR": "Czas rozpoczęcia powinien być przed czasem zakończenia.", "CHOOSE": "Wybierz" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "W ciągu dnia" }, "WIDGET_COLOR_LABEL": "Kolor widżetu", - "WIDGET_BUBBLE_POSITION_LABEL": "Pozycja bąbelka widgetu", - "WIDGET_BUBBLE_TYPE_LABEL": "Typ bąbelka widgetu", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Typ:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Porozmawiaj z nami", - "LABEL": "Tytuł programu uruchamiającego bąbelki widżetów", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Porozmawiaj z nami" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Domyślny", - "CHAT": "Czat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Zwykle odpowiadamy w ciągu paru minut", diff --git a/app/javascript/dashboard/i18n/locale/pl/integrationApps.json b/app/javascript/dashboard/i18n/locale/pl/integrationApps.json index 863ad8274..09432ca15 100644 --- a/app/javascript/dashboard/i18n/locale/pl/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/pl/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Pobieranie integracji", "NO_HOOK_CONFIGURED": "W tym koncie nie skonfigurowano integracji {integrationId}.", "HEADER": "Aplikacje", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Włączone", "DISABLED": "Wyłączone" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Pobieranie hooków integracyjnych", "INBOX": "Skrzynka odbiorcza", + "ACTIONS": "Akcje", "DELETE": { "BUTTON_TEXT": "Usuń" } diff --git a/app/javascript/dashboard/i18n/locale/pl/integrations.json b/app/javascript/dashboard/i18n/locale/pl/integrations.json index d5fe93b75..ef33baaec 100644 --- a/app/javascript/dashboard/i18n/locale/pl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pl/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subskrybowane wydarzenia", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Anuluj", "DESC": "Webhooki dostarczają informacje o tym, co dzieje się w Twoim koncie Chatwoot. Wprowadź poprawny adres URL, aby skonfigurować webhook.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Usuń", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesjonalna", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Przyjazna" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplikacje na pulpicie

Aplikacje na pulpicie umożliwiają organizacjom osadzenie aplikacji wewnątrz panelu Chatwoot w celu dostarczenia kontekstu dla agentów obsługi klienta. Ta funkcja umożliwia tworzenie niezależnej aplikacji i osadzanie jej w celu dostarczania informacji o użytkowniku, jego zamówieniach lub historii płatności.

Kiedy osadzisz swoją aplikację za pomocą pulpitu Chatwoot, Twoja aplikacja otrzyma kontekst rozmowy i kontaktu jako zdarzenie okna. W swojej stronie zaimplementuj nasłuchiwanie zdarzenia wiadomości, aby otrzymać kontekst.

Aby dodać nową aplikację na pulpicie, kliknij przycisk 'Dodaj nową aplikację na pulpicie'.

", "DESCRIPTION": "Aplikacje na pulpicie umożliwiają organizacjom osadzenie aplikacji wewnątrz panelu w celu dostarczenia kontekstu dla agentów obsługi klienta. Ta funkcja umożliwia tworzenie niezależnej aplikacji i osadzanie jej w celu dostarczania informacji o użytkowniku, jego zamówieniach lub historii płatności.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Na tym koncie nie skonfigurowano jeszcze aplikacji na pulpicie", "LOADING": "Pobieranie aplikacji na pulpicie...", "TABLE_HEADER": { "NAME": "Imię", - "ENDPOINT": "Punkt końcowy" + "ENDPOINT": "Punkt końcowy", + "ACTIONS": "Akcje" }, "EDIT_TOOLTIP": "Edytuj aplikację", "DELETE_TOOLTIP": "Usuń aplikację" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/pl/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/pl/labelsMgmt.json index 2bc9ed53c..64ecf52de 100644 --- a/app/javascript/dashboard/i18n/locale/pl/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pl/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Pobieranie etykiet", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Szukaj etykiet...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Brak elementów pasujących do tego zapytania", "LIST": { "404": "Brak etykiet na tym koncie.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Imię", "DESCRIPTION": "Opis", - "COLOR": "Kolor" + "COLOR": "Kolor", + "ACTION": "Akcje" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/pl/macros.json b/app/javascript/dashboard/i18n/locale/pl/macros.json index dab2bcea1..38dc1c920 100644 --- a/app/javascript/dashboard/i18n/locale/pl/macros.json +++ b/app/javascript/dashboard/i18n/locale/pl/macros.json @@ -3,9 +3,12 @@ "HEADER": "Makra", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Dodaj nowe makro", "HEADER_BTN_TXT_SAVE": "Zapisz makro", "LOADING": "Pobieranie makr", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Wystąpił błąd. Spróbuj ponownie", "ORDER_INFO": "Makra będą uruchamiane w kolejności, w jakiej dodajesz czynności. Możesz zmieniać ich kolejność, przeciągając je za uchwyt obok każdego węzła.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Imię", "CREATED BY": "Utworzone przez", "LAST_UPDATED_BY": "Ostatnio zaktualizowane przez", - "VISIBILITY": "Widoczność" + "VISIBILITY": "Widoczność", + "ACTIONS": "Akcje" }, "404": "Nie znaleziono makr" }, diff --git a/app/javascript/dashboard/i18n/locale/pl/mfa.json b/app/javascript/dashboard/i18n/locale/pl/mfa.json index 3c3738b00..b44d1c883 100644 --- a/app/javascript/dashboard/i18n/locale/pl/mfa.json +++ b/app/javascript/dashboard/i18n/locale/pl/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/pl/report.json b/app/javascript/dashboard/i18n/locale/pl/report.json index 9a82f5b8b..8304ab2e5 100644 --- a/app/javascript/dashboard/i18n/locale/pl/report.json +++ b/app/javascript/dashboard/i18n/locale/pl/report.json @@ -3,7 +3,7 @@ "HEADER": "Raporty rozmów", "LOADING_CHART": "Ładowanie danych wykresów...", "NO_ENOUGH_DATA": "Nie ma wystarczającej ilości danych do wygenerowania raportu. Spróbuj ponownie później.", - "DOWNLOAD_AGENT_REPORTS": "Pobierz raporty agenta", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Nie udało się pobrać danych, spróbuj ponownie później.", "SUMMARY_FETCHING_FAILED": "Nie udało się pobrać podsumowania, spróbuj ponownie później.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Przegląd agentów", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Ładowanie danych wykresów...", "NO_ENOUGH_DATA": "Nie ma wystarczającej ilości danych do wygenerowania raportu. Spróbuj ponownie później.", "DOWNLOAD_AGENT_REPORTS": "Pobierz raporty agenta", "FILTER_DROPDOWN_LABEL": "Wybierz agenta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Szukaj agentów" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozmowy", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Nie ma wystarczającej ilości danych do wygenerowania raportu. Spróbuj ponownie później.", "DOWNLOAD_LABEL_REPORTS": "Pobierz raporty etykiety", "FILTER_DROPDOWN_LABEL": "Wybierz etykietę", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Szukaj etykiet" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozmowy", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Wybierz skrzynkę odbiorczą", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozmowy", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Przegląd zespołu", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Ładowanie danych wykresów...", "NO_ENOUGH_DATA": "Nie ma wystarczającej ilości danych do wygenerowania raportu. Spróbuj ponownie później.", "DOWNLOAD_TEAM_REPORTS": "Pobierz raporty zespołu", "FILTER_DROPDOWN_LABEL": "Wybierz zespół", + "FILTERS": { + "ADD_FILTER": "Dodaj filtr", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Szukaj zespołów" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozmowy", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Raporty CSAT", - "NO_RECORDS": "Brak dostępnych odpowiedzi w ankiecie CSAT.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Pobierz raporty CSAT", "DOWNLOAD_FAILED": "Nie udało się pobrać raportów CSAT", "FILTERS": { + "ADD_FILTER": "Dodaj filtr", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Szukaj agentów", + "INBOXES": "Search inboxes", + "TEAMS": "Szukaj zespołów", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Wybierz agentów" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Skrzynka odbiorcza" + }, + "TEAMS": { + "LABEL": "Zespół" + }, + "RATINGS": { + "LABEL": "Ocena" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontakt", - "AGENT_NAME": "Przypisany agent", + "AGENT_NAME": "Agent", "RATING": "Ocena", - "FEEDBACK_TEXT": "Tekst opinii" - } + "FEEDBACK_TEXT": "Tekst opinii", + "CONVERSATION": "Rozmowa", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Łącznie odpowiedzi", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Wskaźnik odpowiedzi", "TOOLTIP": "Wskaźnik odpowiedzi: (Całkowita liczba odpowiedzi / Całkowita liczba wysłanych ankiet CSAT) * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Zapisz", + "CANCEL": "Anuluj", + "SAVING": "Zapisywanie...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/pl/settings.json b/app/javascript/dashboard/i18n/locale/pl/settings.json index fddff538b..42e1ad81c 100644 --- a/app/javascript/dashboard/i18n/locale/pl/settings.json +++ b/app/javascript/dashboard/i18n/locale/pl/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Pobierz", "UPLOADING": "Przesyłanie...", - "INSTAGRAM_STORY_UNAVAILABLE": "Ta historia nie jest już dostępna." + "INSTAGRAM_STORY_UNAVAILABLE": "Ta historia nie jest już dostępna.", + "INSTAGRAM_STORY_REPLY": "Odpowiedziałeś na swoją historię:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Zobacz na mapie" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Czytaj dokumentację", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funkcje", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Rozliczenia", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Wyszukaj atrybuty" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Zamknij rozmowę", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Zamknij rozmowę", + "CANCEL": "Anuluj" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Tak", + "NO": "Nie" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ups! Nie znaleziono żadnych kont Chatwoot. Aby kontynuować, utwórz nowe konto.", "NEW_ACCOUNT": "Nowe konto", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Anuluj" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/pl/signup.json b/app/javascript/dashboard/i18n/locale/pl/signup.json index e14216283..5548df85d 100644 --- a/app/javascript/dashboard/i18n/locale/pl/signup.json +++ b/app/javascript/dashboard/i18n/locale/pl/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Utwórz konto", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Rejestracja", "TESTIMONIAL_HEADER": "Wszystko czego potrzebujesz to jeden krok do przodu", "TESTIMONIAL_CONTENT": "Jesteś tylko jeden krok od zaangażowania swoich klientów, zatrzymania ich i znalezienia nowych.", diff --git a/app/javascript/dashboard/i18n/locale/pl/sla.json b/app/javascript/dashboard/i18n/locale/pl/sla.json index 7870322e0..3a279fe3a 100644 --- a/app/javascript/dashboard/i18n/locale/pl/sla.json +++ b/app/javascript/dashboard/i18n/locale/pl/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/pl/snooze.json b/app/javascript/dashboard/i18n/locale/pl/snooze.json new file mode 100644 index 000000000..b8cfa436a --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/pl/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "godzin", + "DAY": "dnia", + "DAYS": "days", + "WEEK": "day", + "WEEKS": "weeks", + "MONTH": "week", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "jutro", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "następny tydzień", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "day", + "DAY": "dnia" + } +} diff --git a/app/javascript/dashboard/i18n/locale/pl/teamsSettings.json b/app/javascript/dashboard/i18n/locale/pl/teamsSettings.json index 41132aa79..10127a363 100644 --- a/app/javascript/dashboard/i18n/locale/pl/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/pl/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Szukaj zespołów...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Na tym koncie nie ma żadnych zespołów.", "EDIT_TEAM": "Edytuj zespół", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nie udało się zapisać szczegółów zespołu. Spróbuj ponownie." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "E-mail", "BUTTON_TEXT": "Dodaj agentów", "ADD_AGENTS": "Dodaj agenta do swojego zespołu...", "SELECT": "wybierz", diff --git a/app/javascript/dashboard/i18n/locale/pt/agentBots.json b/app/javascript/dashboard/i18n/locale/pt/agentBots.json index e2feb9296..b6aab197c 100644 --- a/app/javascript/dashboard/i18n/locale/pt/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pt/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "A carregar editor...", "DESCRIPTION": "Os Agentes Bots são como os membros mais fabulosos da sua equipa. Tratam das pequenas coisas, para que se possa concentrar no que realmente importa. Experimente. Pode gerir os seus bots nesta página ou criar novos, utilizando o botão \"Adicionar Bot\".", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "Bot do sistema", "GLOBAL_BOT_BADGE": "Sistema", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "A carregar bots...", "TABLE_HEADER": { "DETAILS": "Detalhes do bot", - "URL": "URL do Webhook" + "URL": "URL do Webhook", + "ACTIONS": "Ações" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/pt/agentMgmt.json b/app/javascript/dashboard/i18n/locale/pt/agentMgmt.json index d9c7c5fff..8960de958 100644 --- a/app/javascript/dashboard/i18n/locale/pt/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrador", "AGENT": "Agente" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Não há agentes associados a esta conta", "TITLE": "Gerir agentes na sua equipa", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Não foi possível conectar ao servidor Woot, por favor, tente novamente mais tarde" } }, + "SEARCH_PLACEHOLDER": "Procurar agentes...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nenhum resultado encontrado." }, diff --git a/app/javascript/dashboard/i18n/locale/pt/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/pt/attributesMgmt.json index 242c17440..b08f977e3 100644 --- a/app/javascript/dashboard/i18n/locale/pt/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "A obter atributos personalizados", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Pesquisar atributos...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversa", "CONTACT": "Contacto" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Ativar validação de regex" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/pt/automation.json b/app/javascript/dashboard/i18n/locale/pt/automation.json index b97cf76cc..d4560a440 100644 --- a/app/javascript/dashboard/i18n/locale/pt/automation.json +++ b/app/javascript/dashboard/i18n/locale/pt/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatização", "DESCRIPTION": "A automação pode substituir e racionalizar os processos existentes que requerem esforço manual, como a adição de etiquetas e a atribuição de conversas ao agente mais adequado. Isto permite que a equipa se foque em tarefas maiores, reduzindo o tempo gasto em tarefas rotineiras.", "LEARN_MORE": "Saber mais sobre automação", - "HEADER_BTN_TXT": "Adicionar regra de automação", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "A procurar regras de automação", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Adicionar regra de automação", "SUBMIT": "Criar", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nome:", - "DESCRIPTION": "Descrição", "ACTIVE": "Ativa", - "CREATED_ON": "Criado em" + "CREATED_ON": "Criado em", + "ACTIONS": "Ações" }, "404": "Nenhuma regra de automação encontrada" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Adicionar uma Nota Privada", "CHANGE_PRIORITY": "Alterar prioridade", "ADD_SLA": "Adicionar SLA", - "OPEN_CONVERSATION": "Abrir conversa" + "OPEN_CONVERSATION": "Abrir conversa", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/pt/bulkActions.json b/app/javascript/dashboard/i18n/locale/pt/bulkActions.json index dc587fc41..41aeafa27 100644 --- a/app/javascript/dashboard/i18n/locale/pt/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/pt/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Estado da conversa atualizado com sucesso.", "UPDATE_FAILED": "Falha ao atualizar conversas. Por favor, tente novamente." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Atribuir etiquetas", "NO_LABELS_FOUND": "Nenhuma etiqueta encontrada", diff --git a/app/javascript/dashboard/i18n/locale/pt/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/pt/cannedMgmt.json index 78f63bc9d..d42eb7bc9 100644 --- a/app/javascript/dashboard/i18n/locale/pt/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Respostas prontas", "LEARN_MORE": "Saber mais sobre respostas prontas", "DESCRIPTION": "Respostas prontas são modelos de resposta pré-escritos que o ajudam a responder rapidamente a uma conversa. Os agentes podem inserir o caractere '/' seguido do código curto para inserir uma resposta pronta durante uma conversa. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Adicionar resposta pronta", "LOADING": "A obter respostas prontas...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Não há itens correspondentes a esta consulta.", "LIST": { "404": "Não há respostas prontas disponíveis nesta conta.", diff --git a/app/javascript/dashboard/i18n/locale/pt/chatlist.json b/app/javascript/dashboard/i18n/locale/pt/chatlist.json index ae730b3a8..055cdddb3 100644 --- a/app/javascript/dashboard/i18n/locale/pt/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pt/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Resposta pendente: Mais curta primeiro" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/pt/contact.json b/app/javascript/dashboard/i18n/locale/pt/contact.json index 3da11e755..4b171b530 100644 --- a/app/javascript/dashboard/i18n/locale/pt/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Nenhum contacto corresponde à sua pesquisa 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "Neste momento não há contactos ativos 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Atribuir etiquetas", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Para:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Assunto :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/pt/conversation.json b/app/javascript/dashboard/i18n/locale/pt/conversation.json index 2846cfec8..a48bfd83f 100644 --- a/app/javascript/dashboard/i18n/locale/pt/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Esta mensagem não é suportada. Pode ver esta mensagem na app Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Esta mensagem não é suportada. Pode ver esta mensagem na app do Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Mensagem apagada com sucesso", "FAIL_DELETE_MESSSAGE": "Não foi possível apagar a mensagem! Por favor, tente novamente", "NO_RESPONSE": "Sem resposta", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Não foi possível atribuir etiqueta. Por favor, tente novamente." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Equipa \"{team}\" atribuída a conversa de ID {conversationId}", "FAILED": "Não foi possível atribuir equipa. Por favor, tente novamente." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Desativar assinatura", "MSG_INPUT": "Shift + Enter para nova linha. Comece com '/' para selecionar uma resposta pronta.", "PRIVATE_MSG_INPUT": "Shift + Enter para nova linha. Esta mensagem apenas será visível para agentes", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "A assinatura da mensagem não está configurada. Por favor, configure-a nas configurações do perfil.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Clique aqui para atualizar", "WHATSAPP_TEMPLATES": "Template do WhatsApp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Arrastar e soltar aqui para anexar", "START_AUDIO_RECORDING": "Iniciar gravação de áudio", "STOP_AUDIO_RECORDING": "Parar gravação de áudio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "PARA", "ADD_BCC": "Adicionar Bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversa apagada", "FAIL_DELETE_CONVERSATION": "Não foi possível apagar a conversa! Tente novamente", "FILE_SIZE_LIMIT": "O ficheiro excede o tamanho limite para anexos de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Não foi possível enviar esta mensagem, por favor, tente novamente mais tarde", "SENT_BY": "Enviado por:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Não foi possível enviar a mensagem! Tente novamente", "TRY_AGAIN": "Tentar novamente", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancelar", "SEND_EMAIL_SUCCESS": "A transcrição da conversa foi enviada com sucesso", "SEND_EMAIL_ERROR": "Ocorreu um erro, por favor, tente novamente", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Enviar a transcrição ao cliente", "SEND_TO_AGENT": "Enviar a transcrição para o agente atribuído", diff --git a/app/javascript/dashboard/i18n/locale/pt/customRole.json b/app/javascript/dashboard/i18n/locale/pt/customRole.json index e8dbf535f..02e81fc3e 100644 --- a/app/javascript/dashboard/i18n/locale/pt/customRole.json +++ b/app/javascript/dashboard/i18n/locale/pt/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Funções personalizadas", "LEARN_MORE": "Aprenda mais sobre funções personalizadas", "DESCRIPTION": "Funções personalizadas são funções criadas pelo proprietário ou administrador da conta. Essas funções podem ser atribuídas a agentes para definir seu acesso e permissões dentro da conta. Funções personalizadas podem ser criadas com permissões e níveis de acesso específicos para atender aos requisitos da organização.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Adicionar função personalizada", "LOADING": "Buscando funções personalizadas...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Não há itens correspondentes a esta consulta.", "PAYWALL": { "TITLE": "Atualize para criar funções personalizadas", diff --git a/app/javascript/dashboard/i18n/locale/pt/datePicker.json b/app/javascript/dashboard/i18n/locale/pt/datePicker.json index f193922f4..582984b4c 100644 --- a/app/javascript/dashboard/i18n/locale/pt/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/pt/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Confirmar", "CLEAR_BUTTON": "Limpar", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Últimos 3 meses", "LAST_6_MONTHS": "Últimos 6 meses", "LAST_YEAR": "Último ano", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Intervalo de tempo personalizado" } } diff --git a/app/javascript/dashboard/i18n/locale/pt/general.json b/app/javascript/dashboard/i18n/locale/pt/general.json index e75cad80f..5e5e293bd 100644 --- a/app/javascript/dashboard/i18n/locale/pt/general.json +++ b/app/javascript/dashboard/i18n/locale/pt/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Fechar", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Aceitar", + "DISCARD": "Discard", + "PREFERRED": "Preferido" + }, + "CHOICE_TOGGLE": { + "YES": "Sim", + "NO": "Não" } } diff --git a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json index b7b27c15a..24e9ced0d 100644 --- a/app/javascript/dashboard/i18n/locale/pt/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Pesquisar ou passar para", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Geral", "REPORTS": "Relatórios", diff --git a/app/javascript/dashboard/i18n/locale/pt/helpCenter.json b/app/javascript/dashboard/i18n/locale/pt/helpCenter.json index 1413196f2..c723d178f 100644 --- a/app/javascript/dashboard/i18n/locale/pt/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/pt/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Erro ao excluir artigo" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Adicione o título do artigo e o conteúdo em seguida, posteriomente as configurações apenas serão editáveis por si" }, diff --git a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json index e31d85eee..f52af9ce8 100644 --- a/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Caixas de Entrada", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "A sua caixa de entrada está desconectada. Não serão recebidas novas mensagens até nova autorização.", "CLICK_TO_RECONNECT": "Clique aqui para reconectar.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Usar apenas o nome da empresa como nome do remetente no cabeçalho do e-mail." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure o nome da sua empresa", + "BUTTON_TEXT": "Configure o nome da sua empresa", "PLACEHOLDER": "Insira o nome da sua empresa", "SAVE_BUTTON_TEXT": "Guardar" } @@ -589,8 +592,10 @@ "DISABLED": "Desativado" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Ativado", - "DISABLED": "Desativado" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Ativar" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Ativar/Desativar exibição do nome do agente no e-mail. Se estiver desativado, exibirá o nome da empresa", "ENABLE_CONTINUITY_VIA_EMAIL": "Ativar continuidade das conversas por e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "As conversas irão continuar por e-mail se o endereço de e-mail do contacto estiver disponível.", - "LOCK_TO_SINGLE_CONVERSATION": "Bloquear conversa única", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Ativar ou desativar múltiplas conversas para o mesmo contacto nesta caixa de entrada", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Configurações da caixa de entrada", "INBOX_UPDATE_SUB_TEXT": "Atualize as suas configurações da caixa de entrada", "AUTO_ASSIGNMENT_SUB_TEXT": "Ativar ou desativar a atribuição automática de novas conversas aos agentes adicionados a essa caixa de entrada.", @@ -758,6 +765,7 @@ "LABEL": "Centro de suporte", "PLACEHOLDER": "Selecione centro de suporte", "SELECT_PLACEHOLDER": "Selecione centro de suporte", + "NONE": "Nenhuma", "REMOVE": "Remover centro de suporte", "SUB_TEXT": "Associe um centro de suporte à caixa de entrada" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Por favor, insira um valor maior que 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limitar o número máximo de conversas desta caixa de entrada que pode ser atribuído automaticamente a um agente" }, + "ASSIGNMENT": { + "TITLE": "Atribuição da conversa", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Ativa", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancelar", + "CONFIRM_DELETE": "Excluir", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautorizar", "SUBTITLE": "A sua conexão ao Facebook expirou, por favor, reconecte a página para poder continuar a utilizar os serviços", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Voltar" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Regra do inquérito", "DESCRIPTION_PREFIX": "Enviar o inquérito se a conversa", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "selecionar etiquetas" }, "NOTE": "Nota: Os inquéritos CSAT são enviados apenas uma vez por conversa", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "Definições de CSAT atualizadas com sucesso", "ERROR_MESSAGE": "Não foi possível atualizar as definições de CSAT. Por favor, tente novamente mais tarde." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Mensagem indisponível para os visitantes", "TOGGLE_HELP": "Permitir a disponibilidade de negócios mostrará as horas disponíveis no widget de live-chat, mesmo que todos os agentes estejam offline. Em caso de contactos fora do horário disponível, os clientes podem ser avisados com uma mensagem e um formulário de pré-chat.", "DAY": { + "DAY": "Dia", + "AVAILABILITY": "Disponibilidade", + "HOURS": "Horas", "ENABLE": "Ativar a disponibilidade para este dia", "UNAVAILABLE": "Indisponível", - "HOURS": "horas", "VALIDATION_ERROR": "A hora de abertura deve ser anterior à hora de encerramento.", "CHOOSE": "Escolher" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Dentro de um dia" }, "WIDGET_COLOR_LABEL": "Cor do widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posição do balão de widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Tipo de balão de widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipo:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Fale connosco", - "LABEL": "Título do inicializador do balão de widget", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Fale connosco" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Padrão", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Normalmente respondemos em poucos minutos", diff --git a/app/javascript/dashboard/i18n/locale/pt/integrationApps.json b/app/javascript/dashboard/i18n/locale/pt/integrationApps.json index 4d1d90717..64f22381b 100644 --- a/app/javascript/dashboard/i18n/locale/pt/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/pt/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "A procurar integrações", "NO_HOOK_CONFIGURED": "Não há integrações {integrationId} configuradas nesta conta.", "HEADER": "Aplicações", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Ativado", "DISABLED": "Desativado" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "A procurar hooks de integração", "INBOX": "Caixa de entrada", + "ACTIONS": "Ações", "DELETE": { "BUTTON_TEXT": "Excluir" } diff --git a/app/javascript/dashboard/i18n/locale/pt/integrations.json b/app/javascript/dashboard/i18n/locale/pt/integrations.json index 59aea1d3b..ef4a96329 100644 --- a/app/javascript/dashboard/i18n/locale/pt/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pt/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "O Chatwoot integra-se com várias ferramentas e serviços para melhorar a eficiência da sua equipa. Explore a lista abaixo para configurar as suas aplicações favoritas. ", "LEARN_MORE": "Saber mais sobre integrações", "LOADING": "A procurar integrações", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Capitão não está ativo na sua conta.", "CLICK_HERE_TO_CONFIGURE": "Clique aqui para configurar", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Eventos subscritos", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancelar", "DESC": "Os eventos Webhook fornecem informações em tempo real sobre o que está a acontecer na sua conta Chatwoot. Por favor, insira um URL válido para configurar uma chamada de retorno.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Excluir", "DELETE_CONFIRMATION": { "TITLE": "Excluir a integração", @@ -145,7 +160,29 @@ "EXPAND": "Expandir", "MAKE_FRIENDLY": "Alterar o tom de mensagem para amigável", "MAKE_FORMAL": "Usar tom formal", - "SIMPLIFY": "Simplificar" + "SIMPLIFY": "Simplificar", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profissional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Amigável" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Conteúdo do rascunho", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Apps de dashboard

Apps de dashboard permitem que as organizações incorporem uma aplicação dentro do dashboard do Chatwoot para fornecer o contexto aos agentes de suporte ao cliente. Este recurso permite-lhe criar uma aplicação independente e incorporá-la dentro do dashboard para fornecer informações de utilizador, os seus pedidos ou o seu histórico de pagamentos.

Quando a sua aplicação é incorporada usando o dashboard do Chatwoot, a sua aplicação irá obter o contexto da conversa e do contato como um evento de janela. Implemente um listener para o evento de mensagem na sua página para receber o contexto.

Para adicionar uma nova app ao dashboard, clique no botão 'Adicionar nova app ao dashboard'.

", "DESCRIPTION": "Apps de dashboard permitem que as organizações incorporem um aplicação dentro do dashboard do Chatwoot para fornecer o contexto aos agentes de suporte ao cliente. Este recurso permite-lhe criar uma aplicação independente e incorporá-la dentro do dashboard para fornecer informações de utilizador, os seus pedidos ou o seu histórico de pagamentos.", "LEARN_MORE": "Saber mais sobre apps de dashboard", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Não há apps de dashboard configuradas nesta conta.", "LOADING": "A obter apps de dashboard...", "TABLE_HEADER": { "NAME": "Nome:", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Ações" }, "EDIT_TOOLTIP": "Editar app", "DELETE_TOOLTIP": "Apagar app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Criar/Vincular problema linear", "LOADING": "A procurar problemas lineares...", "LOADING_ERROR": "Houve um erro ao procurar problemas lineares, por favor, tente novamente", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Noção", "DELETE": { "TITLE": "Tem a certeza que pretende apagar a integração Notion?", "MESSAGE": "Apagar esta integração removerá o acesso ao seu workspace Notion e encerrará todas as funcionalidades relacionadas.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Pode alterar ou cancelar o plano a qualquer momento" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Por favor, entre em contato com o administrador para atualização." }, diff --git a/app/javascript/dashboard/i18n/locale/pt/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/pt/labelsMgmt.json index 3a7df368d..8bbb99538 100644 --- a/app/javascript/dashboard/i18n/locale/pt/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "A procurar etiquetas", "DESCRIPTION": "As etiquetas ajudam-no a categorizar e priorizar conversas e leads. Pode atribuir uma etiqueta a uma conversa ou entrar em contacto usando o painel lateral.", "LEARN_MORE": "Saber mais sobre etiquetas", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Procurar etiquetas...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Não existem itens correspondentes à sua pesquisa", "LIST": { "404": "Não há etiquetas disponíveis nesta conta.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nome:", "DESCRIPTION": "Descrição", - "COLOR": "Cor" + "COLOR": "Cor", + "ACTION": "Ações" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/pt/macros.json b/app/javascript/dashboard/i18n/locale/pt/macros.json index 95c132fe7..2676b53d0 100644 --- a/app/javascript/dashboard/i18n/locale/pt/macros.json +++ b/app/javascript/dashboard/i18n/locale/pt/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "Uma macro é um conjunto de ações guardadas que ajudam os agentes de apoio ao cliente a completarem tarefas facilmente. Os agentes podem definir um conjunto de ações, como adicionar uma etiqueta a uma conversa, enviar uma transcrição de e-mail, atualizar um atributo personalizado, etc., e, posteriormente, executarem essas ações com um único clique.", "LEARN_MORE": "Saber mais sobre macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Adicionar nova macro", "HEADER_BTN_TXT_SAVE": "Guardar macro", "LOADING": "A procurar macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Ocorreu um erro! Por favor, tente novamente", "ORDER_INFO": "As macros serão executadas pela ordem em que adicionar as suas ações. Pode reorganizá-las arrastando-as pelo identificador ao lado de cada nó.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nome:", "CREATED BY": "Criada por", "LAST_UPDATED_BY": "Ultima atualização por", - "VISIBILITY": "Visibilidade" + "VISIBILITY": "Visibilidade", + "ACTIONS": "Ações" }, "404": "Nenhuma macro encontrada" }, diff --git a/app/javascript/dashboard/i18n/locale/pt/mfa.json b/app/javascript/dashboard/i18n/locale/pt/mfa.json index 2fb38bcdf..f72c7120d 100644 --- a/app/javascript/dashboard/i18n/locale/pt/mfa.json +++ b/app/javascript/dashboard/i18n/locale/pt/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/pt/report.json b/app/javascript/dashboard/i18n/locale/pt/report.json index 43b97d46d..a58b672da 100644 --- a/app/javascript/dashboard/i18n/locale/pt/report.json +++ b/app/javascript/dashboard/i18n/locale/pt/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversas", "LOADING_CHART": "A carregar dados...", "NO_ENOUGH_DATA": "Não recebemos pontos de dados suficientes para gerar o relatório. Por favor, tente novamente mais tarde.", - "DOWNLOAD_AGENT_REPORTS": "Descarregar relatórios de agentes", + "DOWNLOAD_CONVERSATION_REPORTS": "Baixar relatórios de conversas", "DATA_FETCHING_FAILED": "Não foi possível obter dados. Por favor, tente mais tarde.", "SUMMARY_FETCHING_FAILED": "Não foi possível obter o resumo. Por favor, tente mais tarde.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Visão geral de agentes", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "A carregar dados...", "NO_ENOUGH_DATA": "Não recebemos pontos de dados suficientes para gerar o relatório. Por favor, tente novamente mais tarde.", "DOWNLOAD_AGENT_REPORTS": "Descarregar relatórios de agentes", "FILTER_DROPDOWN_LABEL": "Selecionar agente", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Procurar agentes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Não recebemos pontos de dados suficientes para gerar o relatório. Por favor, tente novamente mais tarde.", "DOWNLOAD_LABEL_REPORTS": "Descarregar relatórios de etiquetas", "FILTER_DROPDOWN_LABEL": "Selecionar etiqueta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Procurar etiquetas" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Escolher caixa de entrada", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Visão geral da equipa", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "A carregar dados...", "NO_ENOUGH_DATA": "Não recebemos pontos de dados suficientes para gerar o relatório. Por favor, tente novamente mais tarde.", "DOWNLOAD_TEAM_REPORTS": "Descarregar relatórios de equipa", "FILTER_DROPDOWN_LABEL": "Selecionar equipa", + "FILTERS": { + "ADD_FILTER": "Adicionar filtro", + "CLEAR_ALL": "Limpar tudo", + "NO_FILTER": "Sem filtros disponíveis", + "INPUT_PLACEHOLDER": { + "TEAMS": "Procurar equipas" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Relatórios CSAT", - "NO_RECORDS": "Não há respostas de questionários CSAT disponíveis.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Descarregar relatórios CSAT", "DOWNLOAD_FAILED": "Falha ao descarregar os relatórios CSAT", "FILTERS": { + "ADD_FILTER": "Adicionar filtro", + "CLEAR_ALL": "Limpar tudo", + "NO_FILTER": "Sem filtros disponíveis", + "INPUT_PLACEHOLDER": { + "AGENTS": "Procurar agentes", + "INBOXES": "Search inboxes", + "TEAMS": "Procurar equipas", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Escolher agentes" + "LABEL": "Agente" + }, + "INBOXES": { + "LABEL": "Caixa de entrada" + }, + "TEAMS": { + "LABEL": "Equipa" + }, + "RATINGS": { + "LABEL": "Avaliar" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contacto", - "AGENT_NAME": "Agente atribuído", + "AGENT_NAME": "Agente", "RATING": "Classificação", - "FEEDBACK_TEXT": "Comentário de feedback" - } + "FEEDBACK_TEXT": "Comentário de feedback", + "CONVERSATION": "Conversa", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total de respostas", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Taxa de resposta", "TOOLTIP": "Número total de respostas / Número total de mensagens de questionários CSAT enviadas * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Guardar", + "CANCEL": "Cancelar", + "SAVING": "A guardar...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Fazer upgrade agora", + "CANCEL_ANYTIME": "Pode alterar ou cancelar o plano a qualquer momento" } } }, diff --git a/app/javascript/dashboard/i18n/locale/pt/settings.json b/app/javascript/dashboard/i18n/locale/pt/settings.json index 561e95409..34c16c5d4 100644 --- a/app/javascript/dashboard/i18n/locale/pt/settings.json +++ b/app/javascript/dashboard/i18n/locale/pt/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "BAIXAR", "UPLOADING": "A carregar...", - "INSTAGRAM_STORY_UNAVAILABLE": "Esta história já não está disponível." + "INSTAGRAM_STORY_UNAVAILABLE": "Esta história já não está disponível.", + "INSTAGRAM_STORY_REPLY": "Respondeu à sua história:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Veja no mapa" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Ler documentos", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Características", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Cobrança", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Pesquisar atributos" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolver conversa", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolver conversa", + "CANCEL": "Cancelar" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Sim", + "NO": "Não" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Fazer upgrade agora", + "CANCEL_ANYTIME": "Pode alterar ou cancelar o plano a qualquer momento" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Por favor, entre em contato com o administrador para atualização." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Não conseguimos encontrar nenhuma conta do Chatwoot. Por favor, crie uma nova conta para continuar.", "NEW_ACCOUNT": "Nova conta", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancelar" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/pt/signup.json b/app/javascript/dashboard/i18n/locale/pt/signup.json index 14aaa883c..f293b3969 100644 --- a/app/javascript/dashboard/i18n/locale/pt/signup.json +++ b/app/javascript/dashboard/i18n/locale/pt/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Criar uma conta", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Cadastrar", "TESTIMONIAL_HEADER": "Tudo que precisa é um passo para avançar", "TESTIMONIAL_CONTENT": "Está a um passo de fidelizar os seus clientes, mantê-los e encontrar novos.", diff --git a/app/javascript/dashboard/i18n/locale/pt/sla.json b/app/javascript/dashboard/i18n/locale/pt/sla.json index dfd56315c..ac6a79de6 100644 --- a/app/javascript/dashboard/i18n/locale/pt/sla.json +++ b/app/javascript/dashboard/i18n/locale/pt/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Criar uma nova Política de SLA", "DESCRIPTION": "Service Level Agreements (SLA) são contratos que definem expectativas claras entre a sua equipa e os clientes. Estabelecem normas para tempos de resposta e de resolução, criando um quadro de responsabilização e garantindo uma experiência coerente e de qualidade.", "LEARN_MORE": "Saiba mais sobre SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "A carregar SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade para criar SLAs", "AVAILABLE_ON": "O recurso SLA apenas está disponível nos planos Business e Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "Não há SLAs disponíveis nesta conta.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Empresa P0", "DESC_1": "Questões levantadas pelos clientes empresariais que requerem atenção imediata.", "TITLE_2": "Empresa P1", "DESC_2": "Questões levantadas pelos clientes empresariais, que têm de ser rapidamente reconhecidas." }, - "BUSINESS_HOURS_ON": "Horário comercial ativado", - "BUSINESS_HOURS_OFF": "Horário comercial desativado", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Limite de tempo da primeira resposta", "NRT": "Limite de tempo da próxima resposta", diff --git a/app/javascript/dashboard/i18n/locale/pt/snooze.json b/app/javascript/dashboard/i18n/locale/pt/snooze.json new file mode 100644 index 000000000..eee4ea309 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/pt/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutos", + "HOUR": "hour", + "HOURS": "horas", + "DAY": "dia", + "DAYS": "dias", + "WEEK": "semana", + "WEEKS": "weeks", + "MONTH": "mês", + "MONTHS": "months", + "YEAR": "ano", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "amanhã", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "próxima semana", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "semana", + "DAY": "dia" + } +} diff --git a/app/javascript/dashboard/i18n/locale/pt/teamsSettings.json b/app/javascript/dashboard/i18n/locale/pt/teamsSettings.json index b50283cd7..9fc2ad793 100644 --- a/app/javascript/dashboard/i18n/locale/pt/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Procurar equipas...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Não há equipas configuradas para esta conta.", "EDIT_TEAM": "Editar equipa", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Não foi possível guardar os detalhes da equipa. Tente novamente." }, "AGENTS": { - "AGENT": "AGENTE", - "EMAIL": "E-mail:", + "AGENT": "Agente", + "EMAIL": "E-mail", "BUTTON_TEXT": "Adicionar agentes", "ADD_AGENTS": "Acrescentando Agentes à sua equipa...", "SELECT": "escolher", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json b/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json index 6292cee86..8c1663bd9 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Carregando Editor...", "DESCRIPTION": "Robôs agentes são como os membros mais fabulosos de seu time. Eles podem lidar com as pequenas coisas, assim você pode focar nas coisas que importam. Dê uma chance a eles. Você pode gerenciar seus robôs a partir desta página ou criar novos usando o botão 'Criar Robô'.", "LEARN_MORE": "Aprenda sobre os robôs agentes", + "COUNT": "{n} robô | {n} robôs", + "SEARCH_PLACEHOLDER": "Pesquisar robôs...", + "NO_RESULTS": "Nenhum robô encontrado correspondente à sua busca", "GLOBAL_BOT": "Robô do sistema", "GLOBAL_BOT_BADGE": "Sistema", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Buscando robôs...", "TABLE_HEADER": { "DETAILS": "Detalhe do Robô", - "URL": "URL do Webhook" + "URL": "URL do Webhook", + "ACTIONS": "Ações" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json index 87c112cec..7a7dc8c68 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrador", "AGENT": "Agente" }, + "COUNT": "{n} agente | {n} agentes", "LIST": { "404": "Não existem agentes associados a esta conta", "TITLE": "Gerenciar agentes de seu time", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Não foi possível conectar ao servidor Woot, por favor tente novamente mais tarde" } }, + "SEARCH_PLACEHOLDER": "Pesquisar agentes...", + "NO_RESULTS": "Nenhum agente encontrado correspondente à sua busca", "SEARCH": { "NO_RESULTS": "Nenhum resultado encontrado." }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/attributesMgmt.json index 71530e68d..751175d9c 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Buscando atributos personalizados", "DESCRIPTION": "Um atributo personalizado controla detalhes adicionais sobre seus contatos ou conversas — como o plano de assinatura ou a data de sua primeira compra. Você pode adicionar diferentes tipos de atributos personalizados, como texto, listas ou números, para capturar as informações específicas que você precisa.", "LEARN_MORE": "Saiba mais sobre atributos personalizados", + "COUNT": "{n} atributo | {n} atributos", + "SEARCH_PLACEHOLDER": "Pesquisar atributos...", + "NO_RESULTS": "Nenhum atributo encontrado correspondente à sua busca", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversas", "CONTACT": "Contato" @@ -54,15 +57,19 @@ "IN_VALID": "Chave inválida" }, "REGEX_PATTERN": { - "LABEL": "Regex Pattern", + "LABEL": "Expressão Regex", "PLACEHOLDER": "Por favor, insira o padrão de expressão regular para atributo personalizado. (Opcional)" }, "REGEX_CUE": { - "LABEL": "Regex Cue", + "LABEL": "Orientação de validação Regex", "PLACEHOLDER": "Por favor, insira uma dica para o padrão de expressão regular. (Opcional)" }, "ENABLE_REGEX": { "LABEL": "Habilitar validação do regex" + }, + "BADGES": { + "PRE_CHAT": "Pré-chat", + "RESOLUTION": "Resolução" } }, "API": { @@ -119,11 +126,11 @@ "NOT_FOUND": "Não há atributos personalizados configurados" }, "REGEX_PATTERN": { - "LABEL": "Regex Pattern", + "LABEL": "Expressão Regex", "PLACEHOLDER": "Por favor, insira o padrão de expressão regular para atributo personalizado. (Opcional)" }, "REGEX_CUE": { - "LABEL": "Regex Cue", + "LABEL": "Orientação de validação Regex", "PLACEHOLDER": "Por favor, insira uma dica para o padrão de expressão regular. (Opcional)" }, "ENABLE_REGEX": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/automation.json b/app/javascript/dashboard/i18n/locale/pt_BR/automation.json index f7fd35889..0b45a2c57 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/automation.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automação", "DESCRIPTION": "A automação pode substituir e simplificar processos existentes que requerem esforço manual, como a adição de etiquetas e a atribuição de conversas ao agente mais adequado. Isso permite que o time se concentre em seus pontos fortes e reduza o tempo gasto em tarefas rotineiras.", "LEARN_MORE": "Aprenda mais sobre automação", - "HEADER_BTN_TXT": "Adicionar regra de automação", + "COUNT": "{n} automação | {n} automações", + "HEADER_BTN_TXT": "Criar Automação", "LOADING": "Buscando regras de automação", + "SEARCH_PLACEHOLDER": "Pesquisar regras de automação...", + "NO_RESULTS": "Nenhuma regra de automação encontrada correspondente à sua busca", "ADD": { "TITLE": "Adicionar regra de automação", "SUBMIT": "Criar", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nome", - "DESCRIPTION": "Descrição", "ACTIVE": "Ativo", - "CREATED_ON": "Criado em" + "CREATED_ON": "Criado em", + "ACTIONS": "Ações" }, "404": "Nenhuma regra de automação encontrada" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Adicionar uma Nota Privada", "CHANGE_PRIORITY": "Alterar Prioridade", "ADD_SLA": "Adicionar SLA", - "OPEN_CONVERSATION": "Abrir conversa" + "OPEN_CONVERSATION": "Abrir conversa", + "PENDING_CONVERSATION": "Marcar conversa como pendente" }, "MESSAGE_TYPES": { "INCOMING": "Mensagem Recebida", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/bulkActions.json b/app/javascript/dashboard/i18n/locale/pt_BR/bulkActions.json index 2f17d25a0..f66223231 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Status da conversa atualizado com sucesso.", "UPDATE_FAILED": "Falha ao atualizar conversas. Por favor, tente novamente." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Não é possível resolver a conversa devido à ausência de atributos obrigatórios", + "PARTIAL_SUCCESS": "Algumas conversas exigem atributos obrigatórios antes da resolução e foram ignoradas" + }, "LABELS": { "ASSIGN_LABELS": "Atribuir rótulo", "NO_LABELS_FOUND": "Nenhuma etiqueta encontrada", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/cannedMgmt.json index 0f73cfd16..e2809f511 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Respostas Prontas", "LEARN_MORE": "Saiba mais sobre respostas prontas", "DESCRIPTION": "Respostas prontas são modelos de resposta pré-escritas que te ajudam a responder rapidamente a uma conversa. Os agentes podem digitar o caractere ' /' seguido pelo atalho para inserir uma resposta pronta durante uma conversa. ", + "COUNT": "{n} resposta pronta | {n} respostas prontas", "HEADER_BTN_TXT": "Adicionar resposta pronta", "LOADING": "Buscando respostas prontas...", + "SEARCH_PLACEHOLDER": "Pesquisar respostas prontas...", + "NO_RESULTS": "Nenhuma resposta pronta encontrada correspondente à sua busca", "SEARCH_404": "Não há itens correspondentes a esta consulta.", "LIST": { "404": "Não há respostas prontas disponíveis nesta conta.", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json b/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json index 30364e366..ff4711143 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Resposta pendente: Curtas primeiro" + }, + "priority_desc_created_at_asc": { + "TEXT": "Prioridade: Maior primeiro, Criação: Mais antiga primeiro" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/companies.json b/app/javascript/dashboard/i18n/locale/pt_BR/companies.json index 56f6856bd..050919739 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/companies.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/companies.json @@ -7,11 +7,11 @@ "NAME": "Nome", "DOMAIN": "Domínio", "CREATED_AT": "Criado em", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Quantidade de contatos" } }, "ORDER": { - "LABEL": "Order", + "LABEL": "Ordem", "OPTIONS": { "ASCENDING": "Crescente", "DESCENDING": "Decrescente" diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/components.json b/app/javascript/dashboard/i18n/locale/pt_BR/components.json index 748b9eab5..8c46d6e5e 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/components.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/components.json @@ -42,7 +42,7 @@ }, "FEATURE_SPOTLIGHT": { "LEARN_MORE": "Saiba mais", - "WATCH_VIDEO": "Watch video" + "WATCH_VIDEO": "Assistir ao vídeo" }, "DURATION_INPUT": { "MINUTES": "Minutos", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json index 57ac2ec00..02b8c30c1 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/contact.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/contact.json @@ -192,7 +192,7 @@ "CONTACTS_PAGE": { "LIST": { "TABLE_HEADER": { - "SOCIAL_PROFILES": "Social Profiles" + "SOCIAL_PROFILES": "Perfis Sociais" } } }, @@ -338,7 +338,7 @@ "LABEL": "Classificar por", "OPTIONS": { "NAME": "Nome", - "EMAIL": "e-mail", + "EMAIL": "E-mail", "PHONE_NUMBER": "Número de telefone", "COMPANY": "Empresa", "COUNTRY": "País/região", @@ -380,7 +380,7 @@ }, "FILTER": { "NAME": "Nome", - "EMAIL": "e-mail", + "EMAIL": "E-mail", "PHONE_NUMBER": "Número de telefone", "IDENTIFIER": "Identificador", "COUNTRY": "País/região", @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Adicionar Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Adicionar Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Adicionar TikTok" }, @@ -573,26 +576,27 @@ "SEARCH_EMPTY_STATE_TITLE": "Nenhum contato corresponde à sua pesquisa 🔍", "LIST_EMPTY_STATE_TITLE": "Não há contatos disponíveis nesta visualização 📋", "ACTIVE_EMPTY_STATE_TITLE": "Nenhum contato está ativo no momento 🌙" - } + }, + "LOAD_MORE": "Carregar mais" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Atribuir rótulo", "ASSIGN_LABELS_SUCCESS": "Rótulos atribuídos com sucesso.", - "ASSIGN_LABELS_FAILED": "Failed to assign labels", - "DESCRIPTION": "Select the labels you want to add to the selected contacts.", - "NO_LABELS_FOUND": "No labels available yet.", + "ASSIGN_LABELS_FAILED": "Falha ao atribuir etiquetas", + "DESCRIPTION": "Selecione as etiquetas que deseja adicionar aos contatos selecionados.", + "NO_LABELS_FOUND": "Nenhuma etiqueta disponível ainda.", "SELECTED_COUNT": "{count} selecionado", - "CLEAR_SELECTION": "Clear selection", + "CLEAR_SELECTION": "Limpar seleção", "SELECT_ALL": "Selecionar todos ({count})", "DELETE_CONTACTS": "Excluir", - "DELETE_SUCCESS": "Contacts deleted successfully.", - "DELETE_FAILED": "Failed to delete contacts.", + "DELETE_SUCCESS": "Contatos excluídos com sucesso.", + "DELETE_FAILED": "Falha ao excluir os contatos.", "DELETE_DIALOG": { - "TITLE": "Delete selected contacts", - "SINGULAR_TITLE": "Delete selected contact", - "DESCRIPTION": "This will permanently delete {count} selected contacts. This action cannot be undone.", - "SINGULAR_DESCRIPTION": "This will permanently delete the selected contact. This action cannot be undone.", - "CONFIRM_MULTIPLE": "Delete contacts", + "TITLE": "Excluir os contatos selecionados", + "SINGULAR_TITLE": "Excluir o contato selecionado", + "DESCRIPTION": "Isso excluirá permanentemente {count} contatos selecionados. Esta ação não pode ser desfeita.", + "SINGULAR_DESCRIPTION": "Isso excluirá permanentemente o contato selecionado. Esta ação não pode ser desfeita.", + "CONFIRM_MULTIPLE": "Excluir contatos", "CONFIRM_SINGLE": "Excluir contato" } }, @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "Não há caixas de entrada disponíveis para iniciar uma conversa com este contato.", "CONTACT_SELECTOR": { "LABEL": "Para:", - "TAG_INPUT_PLACEHOLDER": "Pesquisar um contato com o nome, e-mail ou número de telefone", + "TAG_INPUT_PLACEHOLDER": "Digite pelo menos 2 caracteres para pesquisar por nome, e-mail ou número de telefone", "CONTACT_CREATING": "Criando contato..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Assunto:", "SUBJECT_PLACEHOLDER": "Digite o assunto do seu e-mail aqui", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Pesquisar por um contato com seu endereço de e-mail", + "CC_PLACEHOLDER": "Digite pelo menos 2 caracteres para pesquisar por e-mail", "BCC_LABEL": "CCO:", - "BCC_PLACEHOLDER": "Pesquisar por um contato com seu endereço de e-mail", + "BCC_PLACEHOLDER": "Digite pelo menos 2 caracteres para pesquisar por e-mail", "BCC_BUTTON": "CCO" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json index 75382b880..01dd97457 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/conversation.json @@ -32,7 +32,7 @@ "LOADING_CONVERSATIONS": "Carregando conversas", "CANNOT_REPLY": "Você não pode responder porque", "24_HOURS_WINDOW": "Restrições de janela de mensagem de 24 horas", - "48_HOURS_WINDOW": "Restrição de janela de mensagem de 48 horas", + "48_HOURS_WINDOW": "Restrição da janela de mensagens de 48 horas", "API_HOURS_WINDOW": "Você só pode responder a esta conversa em {hours} horas", "NOT_ASSIGNED_TO_YOU": "Esta conversa não está atribuída a você. Gostaria de atribuir esta conversa a você mesmo?", "ASSIGN_TO_ME": "Atribuir a mim", @@ -58,9 +58,10 @@ }, "UPLOADING_ATTACHMENTS": "Enviando anexos...", "REPLIED_TO_STORY": "Respondido ao seu story", - "UNSUPPORTED_MESSAGE": "Esta mensagem não é suportada. Você pode ver esta mensagem no aplicativo Facebook Messenger.", + "UNSUPPORTED_MESSAGE": "Esta mensagem não é suportada. Para visualizá-la, por favor, abra-a na plataforma original.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Esta mensagem não é suportada. Você pode ver esta mensagem no aplicativo Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Esta mensagem não é suportada. Você pode ver esta mensagem no aplicativo do Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "Esta mensagem não é compatível. Você pode visualizá-la no aplicativo do TikTok.", "SUCCESS_DELETE_MESSAGE": "Mensagem excluída com sucesso", "FAIL_DELETE_MESSSAGE": "Não foi possível excluir a mensagem! Tente novamente", "NO_RESPONSE": "Sem resposta", @@ -173,6 +174,10 @@ "SUCCESFUL": "Etiqueta #{labelName} atribuída para a conversa {conversationId}", "FAILED": "Não foi possível atribuir etiqueta. Por favor, tente novamente." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Etiqueta #{labelName} removida da conversa com id {conversationId}", + "FAILED": "Não foi possível remover a etiqueta. Por favor, tente novamente." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Time {team} atribuído para o id de conversa {conversationId}", "FAILED": "Não foi possível atribuir time. Por favor, tente novamente." @@ -185,9 +190,13 @@ "DISABLE_SIGN_TOOLTIP": "Desativar assinatura", "MSG_INPUT": "Shift + enter para nova linha. Digite '/' para selecionar uma Resposta Pronta.", "PRIVATE_MSG_INPUT": "A mensagem será visível apenas para agentes", + "MESSAGING_RESTRICTED": "Você não pode responder esta conversa", + "MESSAGING_RESTRICTED_WHATSAPP": "Você só pode responder usando uma mensagem de modelo devido à restrição da janela de 24 horas", + "MESSAGING_RESTRICTED_API": "Você só pode responder usando uma mensagem de template devido à restrição da janela de mensagens", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "A assinatura da mensagem não está configurada. Por favor, configure-a nas configurações do perfil.", + "COPILOT_MSG_INPUT": "Forneça instruções adicionais ao Copiloto ou pergunte algo mais... Pressione Enter para enviar", "CLICK_HERE": "Clique aqui para atualizar", - "WHATSAPP_TEMPLATES": "Templates do Whatsapp" + "WHATSAPP_TEMPLATES": "Modelos do Whatsapp" }, "REPLYBOX": { "REPLY": "Responder", @@ -205,7 +214,7 @@ "DRAG_DROP": "Arraste e solte aqui para anexar", "START_AUDIO_RECORDING": "Iniciar gravação de áudio", "STOP_AUDIO_RECORDING": "Parar gravação de áudio", - "": "", + "COPILOT_THINKING": "O Copiloto está pensando", "EMAIL_HEAD": { "TO": "Para", "ADD_BCC": "Adicionar cco", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversa excluída com sucesso", "FAIL_DELETE_CONVERSATION": "Não foi possível excluir a conversa! Tente novamente", "FILE_SIZE_LIMIT": "O arquivo excede os {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB do limite para anexos", + "FILE_TYPE_NOT_SUPPORTED": "O tipo de arquivo {fileName} não é suportado nesta conversa", "MESSAGE_ERROR": "Não foi possível enviar esta mensagem, por favor, tente novamente mais tarde", "SENT_BY": "Enviado por:", "BOT": "Robôs", + "NATIVE_APP": "Aplicativo nativo", + "NATIVE_APP_ADVISORY": "Esta mensagem foi enviada a partir do aplicativo nativo. Responda pelo Chatwoot para manter a janela de mensagens ativa.", "SEND_FAILED": "Não foi possível enviar a mensagem! Tente novamente", "TRY_AGAIN": "tentar novamente", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancelar", "SEND_EMAIL_SUCCESS": "A transcrição do chat foi enviada com sucesso", "SEND_EMAIL_ERROR": "Ocorreu um erro, por favor tente novamente", + "SEND_EMAIL_PAYMENT_REQUIRED": "A transcrição de e-mail não está disponível no seu plano atual. Por favor, atualize para usar este recurso.", "FORM": { "SEND_TO_CONTACT": "Envie a transcrição para o cliente", "SEND_TO_AGENT": "Envie a transcrição para o agente designado", @@ -349,25 +362,25 @@ "PREVIOUS_CONVERSATION": "Conversas anteriores", "MACROS": "Macros", "LINEAR_ISSUES": "Problemas do Linear vinculados", - "SHOPIFY_ORDERS": "Shopify Orders" + "SHOPIFY_ORDERS": "Pedidos do Shopify" }, "SHOPIFY": { - "ORDER_ID": "Order #{id}", - "ERROR": "Error loading orders", - "NO_SHOPIFY_ORDERS": "No orders found", + "ORDER_ID": "Pedido #{id}", + "ERROR": "Erro ao carregar pedidos", + "NO_SHOPIFY_ORDERS": "Nenhum pedido encontrado", "FINANCIAL_STATUS": { "PENDING": "Pendentes", - "AUTHORIZED": "Authorized", - "PARTIALLY_PAID": "Partially Paid", - "PAID": "Paid", - "PARTIALLY_REFUNDED": "Partially Refunded", - "REFUNDED": "Refunded", - "VOIDED": "Voided" + "AUTHORIZED": "Autorizado", + "PARTIALLY_PAID": "Parcialmente pago", + "PAID": "Pago", + "PARTIALLY_REFUNDED": "Parcialmente Reembolsado", + "REFUNDED": "Reembolsado", + "VOIDED": "Anulado" }, "FULFILLMENT_STATUS": { - "FULFILLED": "Fulfilled", - "PARTIALLY_FULFILLED": "Partially Fulfilled", - "UNFULFILLED": "Unfulfilled" + "FULFILLED": "Concluído", + "PARTIALLY_FULFILLED": "Parcialmente Concluído", + "UNFULFILLED": "Não concluído" } } }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/customRole.json b/app/javascript/dashboard/i18n/locale/pt_BR/customRole.json index 9632739e4..954a906de 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/customRole.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Funções Personalizadas", "LEARN_MORE": "Aprenda mais sobre funções personalizadas", "DESCRIPTION": "Funções personalizadas são funções criadas pelo proprietário ou administrador da conta. Essas funções podem ser atribuídas a agentes para definir seu acesso e permissões dentro da conta. Funções personalizadas podem ser criadas com permissões e níveis de acesso específicos para atender aos requisitos da organização.", + "COUNT": "{n} função personalizada | {n} funções personalizadas", "HEADER_BTN_TXT": "Adicionar função personalizada", "LOADING": "Buscando funções personalizadas...", + "SEARCH_PLACEHOLDER": "Pesquisar funções personalizadas...", + "NO_RESULTS": "Nenhuma função personalizada encontrada correspondente à sua busca", "SEARCH_404": "Não há itens correspondentes a esta consulta.", "PAYWALL": { "TITLE": "Atualize para criar funções personalizadas", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/datePicker.json b/app/javascript/dashboard/i18n/locale/pt_BR/datePicker.json index 1cda53e77..e08507c5c 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Período anterior", + "NEXT_PERIOD": "Próximo período", + "WEEK_NUMBER": "Semana #{weekNumber}", "APPLY_BUTTON": "Aplicar", "CLEAR_BUTTON": "Limpar", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Últimos 3 meses", "LAST_6_MONTHS": "Últimos 6 meses", "LAST_YEAR": "Ano passado", + "THIS_WEEK": "Esta semana", + "MONTH_TO_DATE": "Este mês", "CUSTOM_RANGE": "Intervalo de tempo personalizado" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/general.json b/app/javascript/dashboard/i18n/locale/pt_BR/general.json index c62e1ae56..0a97e6220 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/general.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Fechar", "BETA": "Beta", - "BETA_DESCRIPTION": "Este recurso está em fase BETA e deve sofre alterações assim que Nós melhorarmos ele." + "BETA_DESCRIPTION": "Este recurso está em fase BETA e deve sofre alterações assim que Nós melhorarmos ele.", + "ACCEPT": "Aceitar", + "DISCARD": "Descartar", + "PREFERRED": "Preferido" + }, + "CHOICE_TOGGLE": { + "YES": "Sim", + "NO": "Não" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json index 28bdffdd9..0376c205f 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Pesquisar ou pular para", + "SNOOZE_PLACEHOLDER": "Digite um horário, por exemplo: amanhã, 2 horas, próxima sexta-feira, 15 de jan...", "SECTIONS": { "GENERAL": "Geral", "REPORTS": "Relatórios", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json index 02896fc60..f079f136f 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/helpCenter.json @@ -70,11 +70,11 @@ "SEARCH_PLACEHOLDER": "Pesquisar autor" }, "META_TITLE": { - "LABEL": "Meta title", + "LABEL": "Meta título", "PLACEHOLDER": "Adicionar um meta title" }, "META_DESCRIPTION": { - "LABEL": "Meta description", + "LABEL": "Meta descrição", "PLACEHOLDER": "Adicione suas meta descriptions para melhorar os resultados de SEO..." }, "META_TAGS": { @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Erro enquanto excluía o artigo" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Não foi possível reordenar os artigos. Por favor, tente novamente." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Não foi possível reordenar as categorias. Por favor, tente novamente." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Por favor, adicione o cabeçalho e o conteúdo do artigo, só então você pode atualizar as configurações" }, @@ -672,7 +682,7 @@ "ARTICLE_PROPERTIES": "Propriedades do artigo", "META_DESCRIPTION": "Meta descrição", "META_DESCRIPTION_PLACEHOLDER": "Adicionar meta descrição", - "META_TITLE": "Meta title", + "META_TITLE": "Meta título", "META_TITLE_PLACEHOLDER": "Adicionar meta título", "META_TAGS": "Meta tags", "META_TAGS_PLACEHOLDER": "Adicionar meta tags" @@ -742,7 +752,7 @@ "LABEL": "Widget de chat ao vivo", "PLACEHOLDER": "Selecionar widget de chat ao vivo", "HELP_TEXT": "Selecione um widget de chat ao vivo que aparecerá no centro de ajuda", - "NONE_OPTION": "No widget" + "NONE_OPTION": "Sem widget" }, "BRAND_COLOR": { "LABEL": "Cor da Marca" @@ -810,55 +820,55 @@ } }, "PDF_UPLOAD": { - "TITLE": "Upload PDF Document", - "DESCRIPTION": "Upload a PDF document to automatically generate FAQs using AI", + "TITLE": "Enviar Documento PDF", + "DESCRIPTION": "Envie um documento PDF para gerar FAQs automaticamente com IA", "DRAG_DROP_TEXT": "Arraste e solte seu arquivo PDF aqui, clique para selecionar", - "SELECT_FILE": "Select PDF File", - "ADDITIONAL_CONTEXT_LABEL": "Additional Context (Optional)", - "ADDITIONAL_CONTEXT_PLACEHOLDER": "Provide any additional context or instructions for FAQ generation...", + "SELECT_FILE": "Selecionar Arquivo PDF", + "ADDITIONAL_CONTEXT_LABEL": "Contexto Adicional (Opcional)", + "ADDITIONAL_CONTEXT_PLACEHOLDER": "Forneça qualquer contexto ou instruções adicionais para a geração de FAQs...", "UPLOADING": "Enviando...", - "UPLOAD": "Upload & Process", + "UPLOAD": "Enviar e Processar", "CANCEL": "Cancelar", - "ERROR_INVALID_TYPE": "Please select a valid PDF file", - "ERROR_FILE_TOO_LARGE": "File size must be less than 512MB", + "ERROR_INVALID_TYPE": "Por favor, selecione um arquivo PDF válido", + "ERROR_FILE_TOO_LARGE": "O tamanho do arquivo deve ser menor que 512MB", "ERROR_UPLOAD_FAILED": "Falha ao carregar o arquivo PDF. Por favor, tente novamente." }, "PDF_DOCUMENTS": { - "TITLE": "PDF Documents", - "DESCRIPTION": "Manage uploaded PDF documents and generate FAQs from them", - "UPLOAD_PDF": "Upload PDF", - "UPLOAD_FIRST_PDF": "Upload your first PDF", - "UPLOADED_BY": "Uploaded by", - "GENERATE_FAQS": "Generate FAQs", + "TITLE": "Documentos PDF", + "DESCRIPTION": "Gerencie os documentos PDF enviados e gere FAQs a partir deles", + "UPLOAD_PDF": "Enviar PDF", + "UPLOAD_FIRST_PDF": "Envie seu primeiro PDF", + "UPLOADED_BY": "Enviado por", + "GENERATE_FAQS": "Gerar FAQs", "GENERATING": "Gerando...", "CONFIRM_DELETE": "Tem certeza que deseja excluir {filename}?", "EMPTY_STATE": { - "TITLE": "No PDF documents yet", - "DESCRIPTION": "Upload PDF documents to automatically generate FAQs using AI" + "TITLE": "Nenhum documento PDF ainda", + "DESCRIPTION": "Envie documentos PDF para gerar FAQs automaticamente com IA" }, "STATUS": { - "UPLOADED": "Ready", - "PROCESSING": "Processing", + "UPLOADED": "Pronto", + "PROCESSING": "Processando", "PROCESSED": "Concluído", - "FAILED": "Failed" + "FAILED": "Falha" } }, "CONTENT_GENERATION": { - "TITLE": "Content Generation", - "DESCRIPTION": "Upload PDF documents to automatically generate FAQ content using AI", - "UPLOAD_TITLE": "Upload PDF Document", + "TITLE": "Geração de Conteúdo", + "DESCRIPTION": "Envie documentos PDF para gerar conteúdo de FAQ automaticamente com IA", + "UPLOAD_TITLE": "Enviar Documento PDF", "DRAG_DROP": "Arraste e solte seu arquivo PDF aqui, clique para selecionar", "SELECT_FILE": "Selecionar Arquivo PDF", - "UPLOADING": "Processing document...", - "UPLOAD_SUCCESS": "Document processed successfully!", - "UPLOAD_ERROR": "Failed to upload document. Please try again.", + "UPLOADING": "Processando documento...", + "UPLOAD_SUCCESS": "Documento processado com sucesso!", + "UPLOAD_ERROR": "Falha ao enviar o documento. Tente novamente.", "INVALID_FILE_TYPE": "Por favor, selecione um arquivo PDF válido", - "FILE_TOO_LARGE": "File size must be less than 512MB", - "GENERATED_CONTENT": "Generated FAQ Content", - "PUBLISH_SELECTED": "Publish Selected", - "PUBLISHING": "Publishing...", - "FROM_DOCUMENT": "From document", - "NO_CONTENT": "No generated content available. Upload a PDF document to get started.", + "FILE_TOO_LARGE": "O tamanho do arquivo deve ser menor que 512MB", + "GENERATED_CONTENT": "Conteúdo gerado do FAQ", + "PUBLISH_SELECTED": "Publicar Selecionados", + "PUBLISHING": "Publicando...", + "FROM_DOCUMENT": "A partir do documento", + "NO_CONTENT": "Nenhum conteúdo gerado disponível. Envie um documento PDF para começar.", "LOADING": "Carregando conteúdo gerado..." } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json index 20ccdce2d..06ebbb24d 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Caixas de Entrada", "DESCRIPTION": "Um canal é o modo de comunicação que seu cliente escolhe para interagir com você. Uma caixa de entrada é onde você gerencia interações para um canal específico. Pode incluir comunicações de várias fontes, como e-mail, chat ao vivo e mídia social.", "LEARN_MORE": "Saiba mais sobre as caixas de entrada", + "COUNT": "{n} caixa de entrada | {n} caixas de entrada", + "SEARCH_PLACEHOLDER": "Pesquisar caixas de entrada...", + "NO_RESULTS": "Nenhuma caixa de entrada encontrada correspondente à sua busca", "RECONNECTION_REQUIRED": "Sua caixa de entrada está desconectada. Você não receberá novas mensagens até reautorizar.", "CLICK_TO_RECONNECT": "Clique aqui para reconectar.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Seu registro no WhatsApp Business não foi concluído. Verifique o status do seu nome de exibição no Meta Business Manager antes de reconectar.", @@ -61,8 +64,8 @@ "CONTINUE_WITH_TIKTOK": "Continuar com TikTok", "CONNECT_YOUR_TIKTOK_PROFILE": "Conecte seu perfil do TikTok", "HELP": "Para adicionar seu perfil do TikTok como um canal, é necessário autenticar seu perfil clicando em 'Continuar com TikTok'. ", - "ERROR_MESSAGE": "Ocorreu um erro ao conectar com o TikTok. Tente novamente", - "ERROR_AUTH": "Ocorreu um erro ao conectar com o TikTok. Tente novamente" + "ERROR_MESSAGE": "Ocorreu um erro ao conectar com o TikTok, por favor, tente novamente", + "ERROR_AUTH": "Ocorreu um erro ao conectar com o TikTok, por favor, tente novamente" }, "TWITTER": { "HELP": "Para adicionar seu perfil do Twitter como um canal, você precisa autenticar seu perfil do Twitter clicando em 'Entrar com o Twitter' ", @@ -284,7 +287,7 @@ "TITLE": "Configuração rápida com Meta", "DESC": "Use o fluxo de inscrição incorporada do WhatsApp para conectar rapidamente novos números. Você será redirecionado para a Meta para entrar na sua conta do WhatsApp Business. Ter acesso de administrador ajudará a tornar a configuração simples e fácil.", "BENEFITS": { - "TITLE": "Benefícios da inscrição incorporada:", + "TITLE": "Benefícios do Cadastro Incorporado:", "EASY_SETUP": "Nenhuma configuração manual é necessária", "SECURE_AUTH": "Autenticação segura baseada em OAuth", "AUTO_CONFIG": "Configuração automática de webhook e número de telefone" @@ -298,7 +301,7 @@ "WAITING_FOR_BUSINESS_INFO": "Por favor, complete a configuração do negócio na janela da Meta...", "PROCESSING": "Configurando sua conta do WhatsApp Business", "LOADING_SDK": "Carregando SDK do Facebook...", - "CANCELLED": "A inscrição no WhatsApp foi cancelada", + "CANCELLED": "O cadastro do WhatsApp foi cancelado", "SUCCESS_TITLE": "Conta do WhatsApp Business conectada!", "WAITING_FOR_AUTH": "Aguardando autenticação...", "INVALID_BUSINESS_DATA": "Dados de negócio inválidos recebidos do Facebook. Por favor, tente novamente.", @@ -390,7 +393,7 @@ }, "FINISH_MESSAGE": "Comece a encaminhar seus e-mails para o seguinte endereço de e-mail.", "FINISH_MESSAGE_NO_FORWARDING": "Sua caixa de entrada de e-mail foi criada com sucesso! É necessário configurar as credenciais de SMTP e IMAP para enviar e receber e-mails. Sem essas configurações, nenhum e-mail será processado.", - "FORWARDING_ADDRESS_LABEL": "Encaminhe os e-mails para este endereço:", + "FORWARDING_ADDRESS_LABEL": "Encaminhar e-mails para este endereço:", "CONFIGURE_SMTP_IMAP_LINK": "Clique aqui", "CONFIGURE_SMTP_IMAP_TEXT": " para configurar IMAP e SMTP" }, @@ -455,7 +458,7 @@ "DESCRIPTION": "Atenda seus clientes no WhatsApp" }, "EMAIL": { - "TITLE": "e-mail", + "TITLE": "E-mail", "DESCRIPTION": "Conectar com Gmail, Outlook ou outros provedores" }, "SMS": { @@ -589,8 +592,10 @@ "DISABLED": "Desativado" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Ativado", - "DISABLED": "Desativado" + "ENABLED": "Reabrir a mesma conversa", + "DISABLED": "Criar novas conversas", + "ENABLED_DESCRIPTION": "Quando um contado enviar mensagem novamente, a conversa anterior será reaberta.", + "DISABLED_DESCRIPTION": "Uma nova conversa será criada toda vez que a anterior estiver resolvida." }, "ENABLE_HMAC": { "LABEL": "Ativar" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Saúde da conta", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Preferências do Canal", + "WIDGET_FEATURES": "Recursos do widget", "ACCOUNT_HEALTH": { "TITLE": "Gerencie sua conta do WhatsApp", "DESCRIPTION": "Revise o status da sua conta do WhatsApp, os limites de mensagens e a qualidade. Atualize as configurações ou resolva problemas, se necessário", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Ativar/Desativar exibição do nome do agente no e-mail, se estiver desativado, exibirá o nome da empresa", "ENABLE_CONTINUITY_VIA_EMAIL": "Habilitar continuidade das conversas por e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "As conversas continuarão sobre o e-mail se o endereço de e-mail de contato estiver disponível.", - "LOCK_TO_SINGLE_CONVERSATION": "Bloquear para conversa única", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Ativar ou desativar várias conversas para o mesmo contato nesta caixa de entrada", + "LOCK_TO_SINGLE_CONVERSATION": "Roteamento de Conversa", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configurar a criação de conversas para contatos existentes", "INBOX_UPDATE_TITLE": "Configurações da Caixa de Entrada", "INBOX_UPDATE_SUB_TEXT": "Atualize suas configurações de caixa de entrada", "AUTO_ASSIGNMENT_SUB_TEXT": "Ativar ou desativar a atribuição automática de novas conversas aos agentes adicionados a essa caixa de entrada.", @@ -736,7 +743,7 @@ "WHATSAPP_EMBEDDED_SIGNUP_DESCRIPTION": "Você pode reconfigurar esta caixa de entrada para atualizar suas configurações do WhatsApp Business.", "WHATSAPP_RECONFIGURE_BUTTON": "Reconfigurar", "WHATSAPP_CONNECT_TITLE": "Conectar ao WhatsApp Business", - "WHATSAPP_CONNECT_SUBHEADER": ".", + "WHATSAPP_CONNECT_SUBHEADER": "Atualize para o cadastro integrado do WhatsApp para um gerenciamento mais fácil.", "WHATSAPP_CONNECT_DESCRIPTION": "Conecte esta caixa de entrada ao WhatsApp Business para ter recursos aprimorados e um gerenciamento mais fácil.", "WHATSAPP_CONNECT_BUTTON": "Conectar", "WHATSAPP_CONNECT_SUCCESS": "Conectado com sucesso ao WhatsApp Business!", @@ -758,6 +765,7 @@ "LABEL": "Centro de Ajuda", "PLACEHOLDER": "Selecionar Centro de Ajuda", "SELECT_PLACEHOLDER": "Selecionar Centro de Ajuda", + "NONE": "Nenhuma", "REMOVE": "Remover Centro de Ajuda", "SUB_TEXT": "Anexe um Centro de Ajuda com a caixa de entrada" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Por favor, insira um valor maior que 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limitar o número máximo de conversas desta caixa de entrada que pode ser atribuído automaticamente a um agente" }, + "ASSIGNMENT": { + "TITLE": "Atribuição de conversa", + "DESCRIPTION": "Atribua automaticamente as conversas recebidas aos agentes disponíveis com base nas políticas de atribuição", + "ENABLE_AUTO_ASSIGNMENT": "Ativar atribuição automática de conversas", + "DEFAULT_RULES_TITLE": "Regras de atribuição padrão", + "DEFAULT_RULES_DESCRIPTION": "Utilizando o comportamento de atribuição padrão para todas as conversas", + "DEFAULT_RULE_1": "Conversas criadas mais antigas primeiro", + "DEFAULT_RULE_2": "Distribuição em rodízio", + "CUSTOMIZE_WITH_POLICY": "Personalizar com política de atribuição", + "USING_POLICY": "Utilizando política de atribuição personalizada para esta caixa de entrada", + "CUSTOMIZE_POLICY": "Personalizar com política de atribuição", + "DELETE_POLICY": "Excluir política", + "POLICY_LABEL": "Política de atribuição", + "ASSIGNMENT_ORDER_LABEL": "Ordem de Atribuição", + "ASSIGNMENT_METHOD_LABEL": "Método de Atribuição", + "POLICY_STATUS": { + "ACTIVE": "Ativo", + "INACTIVE": "Inativa" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Criado recentemente", + "LONGEST_WAITING": "Maior tempo de espera" + }, + "METHOD": { + "ROUND_ROBIN": "Rodízio", + "BALANCED": "Atribuição equilibrada" + }, + "UPGRADE_PROMPT": "Políticas de atribuição personalizadas estão disponíveis no plano Business", + "UPGRADE_TO_BUSINESS": "Atualizar para o Business", + "DEFAULT_POLICY_LINKED": "Política padrão vinculada", + "DEFAULT_POLICY_DESCRIPTION": "Vincule uma política de atribuição personalizada para definir como as conversas serão atribuídas aos agentes nesta caixa de entrada.", + "LINK_EXISTING_POLICY": "Vincular política existente", + "CREATE_NEW_POLICY": "Criar nova política", + "NO_POLICIES": "Nenhuma política de atribuição encontrada", + "VIEW_ALL_POLICIES": "Ver todas as políticas", + "CURRENT_BEHAVIOR": "Atualmente utilizando o comportamento de atribuição padrão:", + "LINK_SUCCESS": "Política de atribuição vinculada com sucesso", + "LINK_ERROR": "Falha ao vincular a política de atribuição" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Excluir política de atribuição?", + "DELETE_CONFIRM_MESSAGE": "Tem certeza de que deseja remover esta política de atribuição desta caixa de entrada? A caixa de entrada voltará às regras de atribuição padrão.", + "CANCEL": "Cancelar", + "CONFIRM_DELETE": "Excluir", + "DELETE_SUCCESS": "Política de atribuição removida com sucesso", + "DELETE_ERROR": "Falha ao remover a política de atribuição" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautorizar", "SUBTITLE": "Sua conexão com o Facebook expirou, reconecte sua página do Facebook para continuar", @@ -818,7 +873,7 @@ }, "MESSAGE_PREVIEW": { "LABEL": "Pré-visualização da mensagem", - "TOOLTIP": "Isso pode variar ligeiramente quando exibido na plataforma do WhatsApp." + "TOOLTIP": "Isso pode variar um pouco quando exibido na plataforma do WhatsApp." }, "TEMPLATE_STATUS": { "APPROVED": "Aprovado pelo WhatsApp", @@ -833,10 +888,24 @@ }, "TEMPLATE_UPDATE_DIALOG": { "TITLE": "Editar detalhes da pesquisa", - "DESCRIPTION": "Vamos excluir o modelo anterior e criar um que será enviado novamente para aprovação do WhatsApp", + "DESCRIPTION": "Vamos excluir o modelo anterior e criar outro, que será enviado novamente para aprovação do WhatsApp", "CONFIRM": "Criar novo modelo", "CANCEL": "Voltar atrás" }, + "UTILITY_ANALYZER": { + "ACTION": "Verificar adequação em utilidade", + "HELPER_NOTE": "Verifique esta mensagem antes do envio para melhorar a adequação à categoria Utilidade. O sistema cria um modelo CSAT dedicado com botões para coleta de avaliação e o envia como Utilidade; a Meta ainda pode reclassificá-lo como Marketing com base no conteúdo.", + "RESULT_LABEL": "Previsão de categoria da Meta", + "GUIDANCE_NOTE": "Esta é uma verificação orientativa, não uma garantia de aprovação pela Meta.", + "SUGGESTION_LABEL": "Reescrita sugerida adequada para Utilidade", + "APPLY": "Usar esta sugestão", + "ERROR_MESSAGE": "Não foi possível analisar a mensagem. Por favor, tente novamente.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Provável Utilidade", + "LIKELY_MARKETING": "Provável Marketing", + "UNCLEAR": "Precisa de esclarecimento" + } + }, "SURVEY_RULE": { "LABEL": "Regra de pesquisa", "DESCRIPTION_PREFIX": "Enviar a pesquisa se a conversa", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "selecionar etiquetas" }, "NOTE": "Nota: pesquisas de CSAT são enviadas apenas uma vez por conversa", - "WHATSAPP_NOTE": "Nota: Vamos criar um modelo e enviá-lo para aprovação do WhatsApp. Após a aprovação, as pesquisas serão enviadas apenas uma vez por conversa, conforme a regra da pesquisa.", + "WHATSAPP_NOTE": "Observação: Ao salvar, o sistema cria um modelo CSAT dedicado no WhatsApp (usado para capturar avaliação e feedback nos relatórios) e o envia como Utilidade para aprovação. A Meta ainda pode classificá-lo como Marketing com base no conteúdo. Após a aprovação, as pesquisas são enviadas apenas uma vez por conversa, conforme a regra da pesquisa.", "API": { "SUCCESS_MESSAGE": "Configurações de CSAT atualizadas com sucesso", "ERROR_MESSAGE": "Não foi possível atualizar as configurações do CSAT. Por favor, tente novamente mais tarde." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Mensagem indisponível para visitantes", "TOGGLE_HELP": "Permitir a disponibilidade de negócios mostrará as horas disponíveis no widget de bate-papo ao vivo, mesmo que todos os agentes estejam offline. Os vistores disponíveis horários externos podem ser avisados com uma mensagem e um formulário de pré-bate-papo.", "DAY": { + "DAY": "Dia", + "AVAILABILITY": "Disponibilidade", + "HOURS": "Horas", "ENABLE": "Permitir a disponibilidade para este dia", "UNAVAILABLE": "Indisponível", - "HOURS": "horas", "VALIDATION_ERROR": "Hora inicial deve ser antes de hora de fechamento.", "CHOOSE": "Selecione" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Em um dia" }, "WIDGET_COLOR_LABEL": "Cor do Widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Posição do Balão do Widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Tipo de Balão do Widget", + "WIDGET_BUBBLE": "Bolha", + "WIDGET_BUBBLE_POSITION_LABEL": "Posição:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tipo:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Fale conosco no chat", - "LABEL": "Título do disparador da Bolha do Widget", + "LABEL": "Título do Iniciador", "PLACE_HOLDER": "Fale conosco no chat" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Padrão", - "CHAT": "Chat" + "CHAT": "Modo do chat" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Normalmente responde em alguns minutos", @@ -1045,7 +1117,7 @@ "TWILIO_SMS": "SMS Twilio", "WHATSAPP": "WhatsApp", "SMS": "SMS", - "EMAIL": "e-mail", + "EMAIL": "E-mail", "TELEGRAM": "Telegram", "LINE": "Line", "API": "Canal da API", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/integrationApps.json b/app/javascript/dashboard/i18n/locale/pt_BR/integrationApps.json index 7a7e2ffc0..a4443a46c 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Buscando integrações", "NO_HOOK_CONFIGURED": "Não há integrações {integrationId} configuradas nesta conta.", "HEADER": "Aplicações", + "COUNT": "{n} integração | {n} integrações", + "SEARCH_PLACEHOLDER": "Pesquisar...", + "NO_RESULTS": "Nenhum resultado encontrado correspondente à sua busca", "STATUS": { "ENABLED": "Ativado", "DISABLED": "Desativado" @@ -12,7 +15,7 @@ "DELETE": { "TITLE": { "INBOX": "Confirmar exclusão", - "ACCOUNT": "Desconectado" + "ACCOUNT": "Desconectar" }, "MESSAGE": { "INBOX": "Você tem certeza que deseja excluir?", @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Buscando integrações", "INBOX": "Caixa de Entrada", + "ACTIONS": "Ações", "DELETE": { "BUTTON_TEXT": "Excluir" } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json index 6abfffa12..6f83a65f1 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/integrations.json @@ -1,24 +1,27 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { - "TITLE": "Delete Shopify Integration", - "MESSAGE": "Are you sure you want to delete the Shopify integration?" + "TITLE": "Excluir Integração com o Shopify", + "MESSAGE": "Tem certeza que você deseja excluir a integração com o Shopify?" }, "STORE_URL": { - "TITLE": "Connect Shopify Store", - "LABEL": "Store URL", + "TITLE": "Conectar Loja Shopify", + "LABEL": "URL da Loja", "PLACEHOLDER": "your-store.myshopify.com", - "HELP": "Enter your Shopify store's myshopify.com URL", + "HELP": "Insira a URL meushopify.com da sua loja Shopify", "CANCEL": "Cancelar", - "SUBMIT": "Connect Store" + "SUBMIT": "Conectar Loja" }, - "ERROR": "There was an error connecting to Shopify. Please try again or contact support if the issue persists." + "ERROR": "Ocorreu um erro ao tentar conectar com o Shopify. Por favor, tente novamente ou entre em contato com o suporte se o problema persistir." }, "HEADER": "Integrações", "DESCRIPTION": "Chatwoot se integra com várias ferramentas e serviços para melhorar a eficiência de seu time. Explore a lista abaixo para configurar seus aplicativos favoritos.", "LEARN_MORE": "Aprenda mais sobre integrações", "LOADING": "Obtendo integrações", + "SEARCH_PLACEHOLDER": "Pesquisar integrações...", + "NO_RESULTS": "Nenhuma integração encontrada correspondente à sua busca", "CAPTAIN": { "DISABLED": "O capitão não está ativado na sua conta.", "CLICK_HERE_TO_CONFIGURE": "Clique aqui para configurar", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Eventos Inscritos", "LEARN_MORE": "Saiba mais sobre webhooks", + "SECRET": { + "LABEL": "Segredo", + "COPY": "Copiar segredo para a área de transferência", + "COPY_SUCCESS": "Segredo copiado para a área de transferência", + "TOGGLE": "Alternar visibilidade do segredo", + "CREATED_DESC": "Seu webhook foi criado. Use o segredo abaixo para verificar as assinaturas do webhook. Copie-o agora — você também poderá encontrá-lo posteriormente no formulário de edição do webhook.", + "DONE": "Concluído" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Pesquisar webhooks...", + "NO_RESULTS": "Nenhum webhook encontrado correspondente à sua busca", "FORM": { "CANCEL": "Cancelar", "DESC": "Webhook Os eventos fornecem informações em tempo real sobre o que está acontecendo na sua conta do Chatwoot. Digite um URL válido para configurar um retorno de chamada.", @@ -47,8 +61,8 @@ } }, "NAME": { - "LABEL": "Webhook Name", - "PLACEHOLDER": "Enter the name of the webhook" + "LABEL": "Nome do Webhook", + "PLACEHOLDER": "Informe o nome do webhook" }, "END_POINT": { "LABEL": "URL do Webhook", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Excluir", "DELETE_CONFIRMATION": { "TITLE": "Excluir integração", @@ -145,7 +160,29 @@ "EXPAND": "Expandir", "MAKE_FRIENDLY": "Alterar o tom de mensagem para amigável", "MAKE_FORMAL": "Usar tom formal", - "SIMPLIFY": "Simplificar" + "SIMPLIFY": "Simplificar", + "CONFIDENT": "Use um tom confiante", + "PROFESSIONAL": "Use um tom profissional", + "CASUAL": "Use um tom casual", + "STRAIGHTFORWARD": "Use um tom direto" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Melhorar resposta", + "IMPROVE_REPLY_SELECTION": "Melhorar a seleção", + "CHANGE_TONE": { + "TITLE": "Alterar tom", + "OPTIONS": { + "PROFESSIONAL": "Profissional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Direto", + "CONFIDENT": "Confiante", + "FRIENDLY": "Amigável" + } + }, + "GRAMMAR": "Corrigir gramática e ortografia", + "SUGGESTION": "Sugerir uma resposta", + "SUMMARIZE": "Resumir a conversa", + "ASK_COPILOT": "Perguntar ao Copiloto" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Conteúdo do rascunho", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Painel de Aplicativos

O Painel de Aplicativos permite que as organizações incorporem um aplicativo dentro do Painel de Aplicativos do Chatwoot para fornecer o contexto para agentes de suporte ao cliente. Este recurso permite-lhe criar uma aplicação independente e incorporá-la dentro da dashboard para fornecer informações do usuário, seus pedidos ou seu histórico de pagamentos anteriores.

Quando você incorpora seu aplicativo usando o Painel de Aplicativos do Chatwoot, sua aplicação irá obter o contexto da conversa e entrar em contato como um evento de janela. Implementar um ouvinte para o evento de mensagem em sua página receber o contexto.

Para adicionar um novo aplicativo no Painel de Aplicativos, clique no botão 'Adicionar um novo aplicativo'.

", "DESCRIPTION": "O Painel de Aplicativos permite que organizações incorporem um aplicativo dentro do painel para fornecer o contexto para agentes de suporte ao cliente. Este recurso permite que você crie uma aplicação independente e incorpore para fornecer informações de usuário, seus pedidos ou seu histórico de pagamentos anteriores.", "LEARN_MORE": "Saiba mais sobre o Painel de Aplicativos", + "COUNT": "{n} painel de aplicativo | {n} painéis de aplicativos", + "SEARCH_PLACEHOLDER": "Pesquisar painéis de aplicativos...", + "NO_RESULTS": "Nenhum painel de aplicativo encontrado correspondente à sua busca", "LIST": { "404": "Ainda não há aplicativos nesta conta", "LOADING": "Buscando aplicativos...", "TABLE_HEADER": { "NAME": "Nome", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Ações" }, "EDIT_TOOLTIP": "Alterar aplicativo", "DELETE_TOOLTIP": "Excluir aplicativo" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Criar/Ligar Issue Linear", "LOADING": "Buscando problemas lineares...", "LOADING_ERROR": "Houve um erro ao buscar as entidades do time, por favor, tente novamente", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Você tem certeza que deseja excluir a integração com Notion?", "MESSAGE": "Excluir essa integração removerá o acesso ao seu espaço de trabalho Notion e encerrará todas as funcionalidades relacionadas.", @@ -347,12 +390,12 @@ }, "CAPTAIN": { "NAME": "Capitão", - "HEADER_KNOW_MORE": "Know more", + "HEADER_KNOW_MORE": "Saiba mais", "ASSISTANT_SWITCHER": { "ASSISTANTS": "Assistentes", - "SWITCH_ASSISTANT": "Switch between assistants", - "NEW_ASSISTANT": "Create Assistant", - "EMPTY_LIST": "No assistants found, please create one to get started" + "SWITCH_ASSISTANT": "Alternar entre assistentes", + "NEW_ASSISTANT": "Criar Assistente", + "EMPTY_LIST": "Nenhum assistente encontrado. Crie um para começar" }, "COPILOT": { "TITLE": "Copiloto", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Você pode alterar ou cancelar seu plano a qualquer momento" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "O Capitão IA está disponível apenas nos planos Enterprise.", "UPGRADE_PROMPT": "Atualize seu plano para ter acesso aos nossos assistentes, copilotos e muito mais.", "ASK_ADMIN": "Entre em contato com seu administrador para fazer a atualização." }, @@ -531,8 +575,8 @@ "TITLE": "Não há assistentes disponíveis", "SUBTITLE": "Crie um assistente para fornecer respostas rápidas e precisas aos seus usuários. Ele pode aprender com seus artigos de ajuda e conversas passadas.", "FEATURE_SPOTLIGHT": { - "TITLE": "Captain Assistant", - "NOTE": "Captain Assistant engages directly with customers, learns from your help docs and past conversations, and delivers instant, accurate responses. It handles the initial queries, providing quick resolutions before transferring to an agent when needed." + "TITLE": "Assistente Capitão", + "NOTE": "O Assistente Capitão interage diretamente com os clientes, aprende com seus documentos de ajuda e conversas anteriores e fornece respostas instantâneas e precisas. Ele lida com as solicitações iniciais, oferecendo resoluções rápidas antes de transferir para um agente quando necessário." } }, "GUARDRAILS": { @@ -742,8 +786,8 @@ "TITLE": "Nenhum documento disponível", "SUBTITLE": "Os documentos são usados pelo seu assistente para gerar perguntas frequentes. Pode importar documentos para fornecer um contexto para seu assistente.", "FEATURE_SPOTLIGHT": { - "TITLE": "Captain Document", - "NOTE": "A document in Captain serves as a knowledge resource for the assistant. By connecting your help center or guides, Captain can analyze the content and provide accurate responses for customer inquiries." + "TITLE": "Documento do Capitão", + "NOTE": "Um documento no Capitão serve como um recurso de conhecimento para o assistente. Ao conectar sua central de ajuda ou guias, o Capitão pode analisar o conteúdo e fornecer respostas precisas para as dúvidas dos clientes." } } }, @@ -758,48 +802,48 @@ "NOTE": "Ferramentas personalizadas permitem seu assistente interagir com APIs e serviços externos. Crie ferramentas para obter dados, realizar ações ou integre com seus sistemas existentes para melhorar as capacidades do seu assistente." } }, - "FORM_DESCRIPTION": "Configure your custom tool to connect with external APIs", + "FORM_DESCRIPTION": "Configure sua ferramenta personalizada para se conectar a APIs externas", "OPTIONS": { - "EDIT_TOOL": "Edit tool", - "DELETE_TOOL": "Delete tool" + "EDIT_TOOL": "Editar ferramenta", + "DELETE_TOOL": "Excluir ferramenta" }, "CREATE": { - "TITLE": "Create Custom Tool", - "SUCCESS_MESSAGE": "Custom tool created successfully", - "ERROR_MESSAGE": "Failed to create custom tool" + "TITLE": "Criar Ferramenta Personalizada", + "SUCCESS_MESSAGE": "Ferramenta personalizada criada com sucesso", + "ERROR_MESSAGE": "Falha ao criar a ferramenta personalizada" }, "EDIT": { - "TITLE": "Edit Custom Tool", - "SUCCESS_MESSAGE": "Custom tool updated successfully", - "ERROR_MESSAGE": "Failed to update custom tool" + "TITLE": "Editar Ferramenta Personalizada", + "SUCCESS_MESSAGE": "Ferramenta personalizada atualizada com sucesso", + "ERROR_MESSAGE": "Falha ao atualizar a ferramenta personalizada" }, "DELETE": { - "TITLE": "Delete Custom Tool", + "TITLE": "Excluir ferramenta personalizada", "DESCRIPTION": "Tem certeza que deseja excluir está ferramenta customizável? Está ação não pode ser desfeita.", "CONFIRM": "Sim, excluir", - "SUCCESS_MESSAGE": "Custom tool deleted successfully", - "ERROR_MESSAGE": "Failed to delete custom tool" + "SUCCESS_MESSAGE": "Ferramenta personalizada excluída com sucesso", + "ERROR_MESSAGE": "Falha ao excluir a ferramenta personalizada" }, "FORM": { "TITLE": { "LABEL": "Nome da Ferramenta", - "PLACEHOLDER": "Order Lookup", + "PLACEHOLDER": "Consulta de pedido", "ERROR": "Nome da ferramente obrigatória" }, "DESCRIPTION": { "LABEL": "Descrição", - "PLACEHOLDER": "Looks up order details by order ID" + "PLACEHOLDER": "Consulta os detalhes do pedido pelo ID do pedido" }, "HTTP_METHOD": { - "LABEL": "Method" + "LABEL": "Método" }, "ENDPOINT_URL": { - "LABEL": "Endpoint URL", + "LABEL": "URL do endpoint", "PLACEHOLDER": "https://api.example.com/orders/{'{{'} order_id {'}}'}", - "ERROR": "Valid URL is required" + "ERROR": "É necessário informar uma URL válida" }, "AUTH_TYPE": { - "LABEL": "Authentication Type" + "LABEL": "Tipo de Autenticação" }, "AUTH_TYPES": { "NONE": "Nenhuma", @@ -809,23 +853,23 @@ }, "AUTH_CONFIG": { "BEARER_TOKEN": "Bearer Token", - "BEARER_TOKEN_PLACEHOLDER": "Enter your bearer token", - "USERNAME": "Username", - "USERNAME_PLACEHOLDER": "Enter username", + "BEARER_TOKEN_PLACEHOLDER": "Insira seu bearer token", + "USERNAME": "Nome de usuário", + "USERNAME_PLACEHOLDER": "Informe o nome de usuário", "PASSWORD": "Senha", - "PASSWORD_PLACEHOLDER": "Enter password", - "API_KEY": "Header Name", + "PASSWORD_PLACEHOLDER": "Informe a senha", + "API_KEY": "Nome do Cabeçalho", "API_KEY_PLACEHOLDER": "X-API-Key", - "API_VALUE": "Header Value", - "API_VALUE_PLACEHOLDER": "Enter API key value" + "API_VALUE": "Valor do Cabeçalho", + "API_VALUE_PLACEHOLDER": "Insira o valor da chave de API" }, "PARAMETERS": { - "LABEL": "Parameters", - "HELP_TEXT": "Define the parameters that will be extracted from user queries" + "LABEL": "Parâmetros", + "HELP_TEXT": "Defina os parâmetros que serão extraídos das consultas dos usuários" }, - "ADD_PARAMETER": "Add Parameter", + "ADD_PARAMETER": "Adicionar Parâmetro", "PARAM_NAME": { - "PLACEHOLDER": "Parameter name (e.g., order_id)" + "PLACEHOLDER": "Nome do parâmetro (ex.: order_id)" }, "PARAM_TYPE": { "PLACEHOLDER": "Tipo" @@ -838,27 +882,27 @@ "OBJECT": "Object" }, "PARAM_DESCRIPTION": { - "PLACEHOLDER": "Description of the parameter" + "PLACEHOLDER": "Descrição do parâmetro" }, "PARAM_REQUIRED": { "LABEL": "Obrigatório" }, "REQUEST_TEMPLATE": { - "LABEL": "Request Body Template (Optional)", + "LABEL": "Modelo do Corpo da Requisição (Opcional)", "PLACEHOLDER": "{'{'}\n \"order_id\": \"{'{{'} order_id {'}}'}\"\n{'}'}" }, "RESPONSE_TEMPLATE": { - "LABEL": "Response Template (Optional)", + "LABEL": "Modelo de Resposta (Opcional)", "PLACEHOLDER": "Order {'{{'} order_id {'}}'} status: {'{{'} status {'}}'}" }, "ERRORS": { - "PARAM_NAME_REQUIRED": "Parameter name is required" + "PARAM_NAME_REQUIRED": "O nome do parâmetro é obrigatório" } } }, "RESPONSES": { "HEADER": "FAQs", - "PENDING_FAQS": "Pending FAQs", + "PENDING_FAQS": "FAQs pendentes", "ADD_NEW": "Criar nova FAQ", "DOCUMENTABLE": { "CONVERSATION": "Conversação #{id}" @@ -899,8 +943,8 @@ "ALL": "Todos" }, "PENDING_BANNER": { - "TITLE": "Captain has found some FAQs your customers were looking for.", - "ACTION": "Click here to review" + "TITLE": "O Capitão encontrou algumas FAQs que seus clientes estavam procurando.", + "ACTION": "Clique aqui para revisar" }, "FORM_DESCRIPTION": "Adicione uma pergunta e sua resposta correspondente à base de conhecimento e selecione o assistente ao qual deve estar associado.", "CREATE": { @@ -933,12 +977,12 @@ }, "EMPTY_STATE": { "TITLE": "Nenhuma FAQ encontrada", - "NO_PENDING_TITLE": "There are no more pending FAQs to review", + "NO_PENDING_TITLE": "Não há mais FAQs pendentes para revisão", "SUBTITLE": "Perguntas Frequentes ajudam seu assistente a fornecer respostas rápidas e precisas para perguntas de seus clientes. Eles podem ser gerados automaticamente a partir do seu conteúdo ou podem ser adicionados manualmente.", - "CLEAR_SEARCH": "Clear active filters", + "CLEAR_SEARCH": "Limpar filtros ativos", "FEATURE_SPOTLIGHT": { - "TITLE": "Captain FAQ", - "NOTE": "Captain FAQs detects common customer questions—whether missing from your knowledge base or frequently asked—and generates relevant FAQs to improve support. You can review each suggestion and decide whether to approve or reject it." + "TITLE": "FAQ do Capitão", + "NOTE": "As FAQs do Capitão identificam as perguntas mais comuns dos clientes — tanto as que ainda não existem na sua base de conhecimento quanto as mais recorrentes — e gera FAQs relevantes para melhorar o atendimento. Você pode revisar cada sugestão e decidir se aprova ou rejeita." } } }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/pt_BR/labelsMgmt.json index 57ec75f43..d12760252 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Buscando etiquetas", "DESCRIPTION": "As etiquetas ajudam você a categorizar e priorizar conversas e leads. Você pode atribuir uma etiqueta a uma conversa ou contato usando o painel lateral.", "LEARN_MORE": "Aprenda mais sobre etiquetas", + "COUNT": "{n} etiqueta | {n} etiquetas", + "SEARCH_PLACEHOLDER": "Pesquisar etiquetas...", + "NO_RESULTS": "Nenhuma etiqueta encontrada correspondente à sua busca", "SEARCH_404": "Não existem itens correspondentes a esta consulta", "LIST": { "404": "Não há etiquetas disponíveis nesta conta.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nome", "DESCRIPTION": "Descrição", - "COLOR": "Cor" + "COLOR": "Cor", + "ACTION": "Ações" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/login.json b/app/javascript/dashboard/i18n/locale/pt_BR/login.json index 10822f103..14b3ddf21 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/login.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/login.json @@ -34,7 +34,7 @@ }, "SUBMIT": "Continuar com SSO", "API": { - "ERROR_MESSAGE": "SSO authentication failed. Please check your credentials and try again." + "ERROR_MESSAGE": "A autenticação SSO falhou. Verifique suas credenciais e tente novamente." } } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/macros.json b/app/javascript/dashboard/i18n/locale/pt_BR/macros.json index 81f30c4f1..0e99eb521 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/macros.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "Uma macro é um conjunto de ações salvas que ajudam os agentes de atendimento ao cliente a concluir tarefas com facilidade. Os agentes podem definir um conjunto de ações, como etiquetar uma conversa com um rótulo, enviar uma transcrição de e-mail, atualizar um atributo personalizado, etc., e podem executar essas ações com um único clique.", "LEARN_MORE": "Aprenda mais sobre macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Adicionar uma nova macro", "HEADER_BTN_TXT_SAVE": "Salvar macro", "LOADING": "Obtendo macros", + "SEARCH_PLACEHOLDER": "Pesquisar macros...", + "NO_RESULTS": "Nenhum macro encontrado correspondente à sua busca", "ERROR": "Algo deu errado. Por favor, tente novamente", "ORDER_INFO": "As macros serão executadas na ordem que você adicionar suas ações. Você pode reorganizá-las arrastando-as pelo identificador ao lado de cada nó.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nome", "CREATED BY": "Criada por", "LAST_UPDATED_BY": "Ultima atualização por", - "VISIBILITY": "Visibilidade" + "VISIBILITY": "Visibilidade", + "ACTIONS": "Ações" }, "404": "Nenhuma macro encontrada" }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/mfa.json b/app/javascript/dashboard/i18n/locale/pt_BR/mfa.json index 67a158090..9a84d2144 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/mfa.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/mfa.json @@ -1,106 +1,106 @@ { "MFA_SETTINGS": { - "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", - "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", - "STATUS_TITLE": "Authentication Status", - "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", + "TITLE": "Autenticação em Dois Fatores", + "SUBTITLE": "Proteja sua conta contra acessos não autorizados com autenticação baseada em TOTP. Isso adiciona uma camada extra de segurança à sua conta.", + "DESCRIPTION": "Adicione uma camada extra de segurança à sua conta usando uma senha temporária baseada em tempo (TOTP)", + "STATUS_TITLE": "Estado da Autenticação", + "STATUS_DESCRIPTION": "Gerencie as configurações de autenticação em dois fatores e os códigos de recuperação", "ENABLED": "Ativado", "DISABLED": "Desativado", - "STATUS_ENABLED": "Two-factor authentication is active", - "STATUS_ENABLED_DESC": "Your account is protected with an additional layer of security", - "ENABLE_BUTTON": "Enable Two-Factor Authentication", - "ENHANCE_SECURITY": "Enhance Your Account Security", - "ENHANCE_SECURITY_DESC": "Two-factor authentication adds an extra layer of security by requiring a verification code from your authenticator app in addition to your password.", + "STATUS_ENABLED": "A autenticação em dois fatores está ativa", + "STATUS_ENABLED_DESC": "Sua conta está protegida com uma camada extra de segurança", + "ENABLE_BUTTON": "Habilitar autenticação em dois fatores", + "ENHANCE_SECURITY": "Reforce a Segurança da Sua Conta", + "ENHANCE_SECURITY_DESC": "A autenticação em dois fatores adiciona uma camada extra de segurança ao exigir um código de verificação do seu aplicativo autenticador, além da sua senha.", "SETUP": { "STEP_NUMBER_1": "1", "STEP_NUMBER_2": "2", - "STEP1_TITLE": "Scan QR Code with Your Authenticator App", - "STEP1_DESCRIPTION": "Use Google Authenticator, Authy, or any TOTP-compatible app", + "STEP1_TITLE": "Escaneie o Código QR com seu Aplicativo Autenticador", + "STEP1_DESCRIPTION": "Use o Google Authenticator, Authy ou qualquer outro aplicativo compatível com TOTP", "LOADING_QR": "Carregando...", - "MANUAL_ENTRY": "Can't scan? Enter code manually", - "SECRET_KEY": "Secret Key", + "MANUAL_ENTRY": "Não consegue escanear? Digite o código manualmente", + "SECRET_KEY": "Chave secreta", "COPY": "Copiar", - "ENTER_CODE": "Enter the 6-digit code from your authenticator app", + "ENTER_CODE": "Insira o código de 6 dígitos do seu aplicativo autenticador", "ENTER_CODE_PLACEHOLDER": "000000", - "VERIFY_BUTTON": "Verify & Continue", + "VERIFY_BUTTON": "Verificar e Continuar", "CANCEL": "Cancelar", - "ERROR_STARTING": "MFA not enabled. Please contact administrator.", + "ERROR_STARTING": "O MFA não está habilitado. Entre em contato com o administrador.", "INVALID_CODE": "Código de verificação inválido", - "SECRET_COPIED": "Secret key copied to clipboard", - "SUCCESS": "Two-factor authentication has been enabled successfully" + "SECRET_COPIED": "Chave secreta copiada para a área de transferência", + "SUCCESS": "A autenticação em dois fatores foi ativada com sucesso" }, "BACKUP": { - "TITLE": "Save Your Backup Codes", - "DESCRIPTION": "Keep these codes safe. Each can be used once if you lose access to your authenticator", - "IMPORTANT": "Important:", - "IMPORTANT_NOTE": " Save these codes in a secure location. You won't be able to see them again.", + "TITLE": "Salve Seus Códigos de Recuperação", + "DESCRIPTION": "Guarde esses códigos com segurança. Cada um pode ser usado uma única vez caso você perca o acesso ao seu aplicativo autenticador", + "IMPORTANT": "Importante:", + "IMPORTANT_NOTE": " Salve esses códigos em um local seguro. Você não poderá vê-los novamente.", "DOWNLOAD": "Baixar", - "COPY_ALL": "Copy All", - "CONFIRM": "I have saved my backup codes in a secure location and understand that I won't be able to see them again", - "COMPLETE_SETUP": "Complete Setup", - "CODES_COPIED": "Backup codes copied to clipboard" + "COPY_ALL": "Copiar Todos", + "CONFIRM": "Salvei meus códigos de recuperação em um local seguro e entendo que não poderei vê-los novamente", + "COMPLETE_SETUP": "Finalizar Configuração", + "CODES_COPIED": "Códigos de recuperação copiados para a área de transferência" }, "MANAGEMENT": { - "BACKUP_CODES": "Backup Codes", - "BACKUP_CODES_DESC": "Generate new codes if you've lost or used your existing ones", - "REGENERATE": "Regenerate Backup Codes", - "DISABLE_MFA": "Disable 2FA", - "DISABLE_MFA_DESC": "Remove two-factor authentication from your account", - "DISABLE_BUTTON": "Disable Two-Factor Authentication" + "BACKUP_CODES": "Códigos de Recuperação", + "BACKUP_CODES_DESC": "Gere novos códigos caso tenha perdido ou já utilizado os códigos existentes", + "REGENERATE": "Gerar novos códigos de recuperação", + "DISABLE_MFA": "Desabilitar 2FA", + "DISABLE_MFA_DESC": "Remover a autenticação em dois fatores da sua conta", + "DISABLE_BUTTON": "Desabilitar Autenticação em Dois Fatores" }, "DISABLE": { - "TITLE": "Disable Two-Factor Authentication", - "DESCRIPTION": "You'll need to enter your password and a verification code to disable two-factor authentication.", + "TITLE": "Desabilitar Autenticação em Dois Fatores", + "DESCRIPTION": "Você precisará informar sua senha e um código de verificação para desativar a autenticação em dois fatores.", "PASSWORD": "Senha", - "OTP_CODE": "Verification Code", + "OTP_CODE": "Código de Verificação", "OTP_CODE_PLACEHOLDER": "000000", - "CONFIRM": "Disable 2FA", + "CONFIRM": "Desabilitar 2FA", "CANCEL": "Cancelar", - "SUCCESS": "Two-factor authentication has been disabled", - "ERROR": "Failed to disable MFA. Please check your credentials." + "SUCCESS": "A autenticação em dois fatores foi desabilitada", + "ERROR": "Falha ao desabilitar o MFA. Verifique suas credenciais." }, "REGENERATE": { - "TITLE": "Regenerate Backup Codes", - "DESCRIPTION": "This will invalidate your existing backup codes and generate new ones. Enter your verification code to continue.", - "OTP_CODE": "Verification Code", + "TITLE": "Gerar Novos Códigos de Recuperação", + "DESCRIPTION": "Isso invalidará seus códigos de recuperação atuais e gerará novos. Informe o código de verificação para continuar.", + "OTP_CODE": "Código de Verificação", "OTP_CODE_PLACEHOLDER": "000000", - "CONFIRM": "Generate New Codes", + "CONFIRM": "Gerar Novos Códigos", "CANCEL": "Cancelar", - "NEW_CODES_TITLE": "New Backup Codes Generated", - "NEW_CODES_DESC": "Your old backup codes have been invalidated. Save these new codes in a secure location.", - "CODES_IMPORTANT": "Important:", - "CODES_IMPORTANT_NOTE": " Each code can only be used once. Save them before closing this window.", - "DOWNLOAD_CODES": "Download Codes", - "COPY_ALL_CODES": "Copy All Codes", - "CODES_SAVED": "I've Saved My Codes", - "SUCCESS": "New backup codes have been generated", - "ERROR": "Failed to regenerate backup codes" + "NEW_CODES_TITLE": "Novos Códigos de Recuperação Gerados", + "NEW_CODES_DESC": "Seus códigos de recuperação antigos foram invalidados. Salve estes novos códigos em um local seguro.", + "CODES_IMPORTANT": "Importante:", + "CODES_IMPORTANT_NOTE": " Cada código só pode ser usado apenas uma vez. Salve-os antes de fechar esta janela.", + "DOWNLOAD_CODES": "Baixar Códigos", + "COPY_ALL_CODES": "Copiar Todos os Códigos", + "CODES_SAVED": "Eu Já Salvei Meus Códigos", + "SUCCESS": "Novos códigos de recuperação foram gerados", + "ERROR": "Falha ao gerar novos códigos de recuperação" } }, "MFA_VERIFICATION": { - "TITLE": "Two-Factor Authentication", - "DESCRIPTION": "Enter your verification code to continue", - "AUTHENTICATOR_APP": "Authenticator App", - "BACKUP_CODE": "Backup Code", - "ENTER_OTP_CODE": "Enter 6-digit code from your authenticator app", - "ENTER_BACKUP_CODE": "Enter one of your backup codes", + "TITLE": "Autenticação em Dois Fatores", + "DESCRIPTION": "Informe o código de verificação para continuar", + "AUTHENTICATOR_APP": "Aplicativo Autenticador", + "BACKUP_CODE": "Código de Recuperação", + "ENTER_OTP_CODE": "Insira o código de 6 dígitos do seu aplicativo autenticador", + "ENTER_BACKUP_CODE": "Insira um dos seus códigos de recuperação", "BACKUP_CODE_PLACEHOLDER": "000000", - "VERIFY_BUTTON": "Verify", - "TRY_ANOTHER_METHOD": "Try another verification method", - "CANCEL_LOGIN": "Cancel and return to login", - "HELP_TEXT": "Having trouble signing in?", - "LEARN_MORE": "Learn more about 2FA", + "VERIFY_BUTTON": "Verificar", + "TRY_ANOTHER_METHOD": "Tentar outro método de verificação", + "CANCEL_LOGIN": "Cancelar e voltar para o login", + "HELP_TEXT": "Está com dificuldade para entrar?", + "LEARN_MORE": "Saiba mais sobre o 2FA", "HELP_MODAL": { - "TITLE": "Two-Factor Authentication Help", - "AUTHENTICATOR_TITLE": "Using an Authenticator App", - "AUTHENTICATOR_DESC": "Open your authenticator app (Google Authenticator, Authy, etc.) and enter the 6-digit code shown for your account.", - "BACKUP_TITLE": "Using a Backup Code", - "BACKUP_DESC": "If you don't have access to your authenticator app, you can use one of the backup codes you saved when setting up 2FA. Each code can only be used once.", - "CONTACT_TITLE": "Need More Help?", - "CONTACT_DESC_CLOUD": "If you've lost access to both your authenticator app and backup codes, please reach out to Chatwoot support for assistance.", - "CONTACT_DESC_SELF_HOSTED": "If you've lost access to both your authenticator app and backup codes, please contact your administrator for assistance." + "TITLE": "Ajuda com Autenticação em Dois Fatores", + "AUTHENTICATOR_TITLE": "Usando um Aplicativo de Autenticação", + "AUTHENTICATOR_DESC": "Abra seu aplicativo autenticador (Google Authenticator, Authy etc.) e digite o código de 6 dígitos exibido para a sua conta.", + "BACKUP_TITLE": "Usando um Código de Backup", + "BACKUP_DESC": "Se você não tiver acesso ao seu aplicativo autenticador, pode usar um dos códigos de backup que salvou ao configurar o 2FA. Cada código só pode ser usado uma vez.", + "CONTACT_TITLE": "Precisa de Mais Ajuda?", + "CONTACT_DESC_CLOUD": "Se você perdeu o acesso tanto ao aplicativo autenticador quanto aos códigos de backup, entre em contato com o suporte do Chatwoot para obter ajuda.", + "CONTACT_DESC_SELF_HOSTED": "Se você perdeu o acesso tanto ao aplicativo autenticador quanto aos códigos de backup, entre em contato com o administrador para obter ajuda." }, - "VERIFICATION_FAILED": "Verification failed. Please try again." + "VERIFICATION_FAILED": "Falha na verificação. Tente novamente." } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/report.json b/app/javascript/dashboard/i18n/locale/pt_BR/report.json index 426e895c1..e3d59d222 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/report.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversas", "LOADING_CHART": "Carregando dados do gráfico...", "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", - "DOWNLOAD_AGENT_REPORTS": "Baixar relatórios de agentes", + "DOWNLOAD_CONVERSATION_REPORTS": "Baixar relatórios de conversas", "DATA_FETCHING_FAILED": "Falha ao buscar dados, tente novamente mais tarde.", "SUMMARY_FETCHING_FAILED": "Não foi possível obter o resumo. Tente novamente mais tarde.", "METRICS": { @@ -53,8 +53,8 @@ "LAST_7_DAYS": "Últimos 7 dias", "LAST_14_DAYS": "Últimos 14 dias", "LAST_30_DAYS": "Últimos 30 dias", - "THIS_MONTH": "This month", - "LAST_MONTH": "Last month", + "THIS_MONTH": "Este mês", + "LAST_MONTH": "Último mês", "LAST_3_MONTHS": "Últimos 3 meses", "LAST_6_MONTHS": "Últimos 6 meses", "LAST_YEAR": "Ano passado", @@ -123,16 +123,21 @@ }, "PAGINATION": { "RESULTS": "Exibindo {start} — {end} de {total} resultados", - "PER_PAGE_TEMPLATE": "{size} / page" + "PER_PAGE_TEMPLATE": "{size} / página" } }, "AGENT_REPORTS": { "HEADER": "Visão Geral de Agentes", - "DESCRIPTION": "Acompanhe facilmente o desempenho do agente com métricas-chave, como conversas, tempos de resposta, tempos de resolução e casos resolvidos. Clique no nome de um agente para saber mais.", + "DESCRIPTION": "Acompanhe facilmente o desempenho dos agentes com métricas-chave, como conversas, tempos de resposta, tempos de resolução e casos resolvidos. Clique no nome de um agente para saber mais.", "LOADING_CHART": "Carregando dados do gráfico...", "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", "DOWNLOAD_AGENT_REPORTS": "Baixar relatórios de agentes", "FILTER_DROPDOWN_LABEL": "Selecione Agente", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Pesquisar agentes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", "DOWNLOAD_LABEL_REPORTS": "Baixar relatórios de etiquetas", "FILTER_DROPDOWN_LABEL": "Selecionar etiqueta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Pesquisar etiquetas" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -269,8 +279,13 @@ "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", "DOWNLOAD_INBOX_REPORTS": "Baixar relatórios de entrada", "FILTER_DROPDOWN_LABEL": "Selecionar caixa de entrada", - "ALL_INBOXES": "All Inboxes", - "SEARCH_INBOX": "Search Inbox", + "ALL_INBOXES": "Todas as caixas de entrada", + "SEARCH_INBOX": "Pesquisar caixa de entrada", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Pesquisar caixas de entrada" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Resumo do Time", - "DESCRIPTION": "Obtenha um instantâneo do desempenho de seu time com métricas essenciais, incluindo conversas, tempos de resposta, tempos de resolução e casos resolvidos. Clique no nome do time para mais detalhes.", + "DESCRIPTION": "Tenha uma visão geral do desempenho dos seus times com métricas essenciais, incluindo conversas, tempos de resposta, tempos de resolução e casos resolvidos. Clique no nome do time para ver mais detalhes.", "LOADING_CHART": "Carregando dados do gráfico...", "NO_ENOUGH_DATA": "Não existem dados suficientes para gerar o relatório. Tente novamente mais tarde.", "DOWNLOAD_TEAM_REPORTS": "Baixar relatórios de time", "FILTER_DROPDOWN_LABEL": "Selecionar Time", + "FILTERS": { + "ADD_FILTER": "Adicionar filtro", + "CLEAR_ALL": "Limpar tudo", + "NO_FILTER": "Não há filtros disponíveis", + "INPUT_PLACEHOLDER": { + "TEAMS": "Pesquisar times" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversas", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Relatórios CSAT", - "NO_RECORDS": "Não há respostas de pesquisa em CSAT disponíveis.", + "NO_RECORDS": "Ainda não há respostas", + "NO_RECORDS_DESCRIPTION": "As respostas da pesquisa de CSAT aparecerão aqui assim que os clientes começarem a fornecer comentários.", "DOWNLOAD": "Baixar relatórios de CSAT", "DOWNLOAD_FAILED": "Falha ao baixar Relatórios CSAT", "FILTERS": { + "ADD_FILTER": "Adicionar filtro", + "CLEAR_ALL": "Limpar tudo", + "NO_FILTER": "Não há filtros disponíveis", + "INPUT_PLACEHOLDER": { + "AGENTS": "Pesquisar agentes", + "INBOXES": "Pesquisar caixas de entrada", + "TEAMS": "Pesquisar times", + "RATINGS": "Pesquisar avaliações" + }, "AGENTS": { - "PLACEHOLDER": "Escolher agentes" + "LABEL": "Agente" + }, + "INBOXES": { + "LABEL": "Caixa de Entrada" + }, + "TEAMS": { + "LABEL": "Time" + }, + "RATINGS": { + "LABEL": "Classificação" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contato", - "AGENT_NAME": "Agente atribuído", + "AGENT_NAME": "Agente", "RATING": "Classificação", - "FEEDBACK_TEXT": "Comentário do feedback" - } + "FEEDBACK_TEXT": "Comentário do feedback", + "CONVERSATION": "Conversas", + "CUSTOMER": "Cliente", + "RESPONSE": "Resposta", + "HANDLED_BY": "Atendido por" + }, + "UNKNOWN_CUSTOMER": "Cliente desconhecido" }, + "NO_AGENT": "Nenhum agente atribuído", + "NO_FEEDBACK": "Nenhum comentário fornecido", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total de respostas", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Taxa de resposta", "TOOLTIP": "Número total de respostas / Número total de mensagens CSAT de pesquisa enviadas * 100" + }, + "RATING_DISTRIBUTION": "Distribuição de avaliações" + }, + "REVIEW_NOTES": { + "TITLE": "Notas da avaliação", + "PLACEHOLDER": "Adicione notas sobre esta avaliação...", + "SAVE": "Salvar", + "CANCEL": "Cancelar", + "SAVING": "Salvando...", + "SAVED": "Notas salvas com sucesso", + "SAVE_ERROR": "Falha ao salvar as notas", + "UPDATED_BY": "Atualizado por {name} {time}", + "UPDATED_BY_LABEL": "Atualizado por", + "PAYWALL": { + "TITLE": "Atualize para adicionar notas de avaliação", + "AVAILABLE_ON": "O recurso de notas de avaliação está disponível apenas nos planos Business e Enterprise.", + "UPGRADE_PROMPT": "Adicione contexto interno a cada resposta de CSAT com notas de avaliação. Registre o que realmente aconteceu, identifique padrões mais rapidamente e tome decisões melhores a partir do seu feedback.", + "UPGRADE_NOW": "Atualizar agora", + "CANCEL_ANYTIME": "Você pode alterar ou cancelar seu plano a qualquer momento" } } }, @@ -473,7 +541,7 @@ "DOWNLOAD_REPORT": "Baixar relatório" }, "RESOLUTION_HEATMAP": { - "HEADER": "Resolutions", + "HEADER": "Resoluções", "NO_CONVERSATIONS": "Não há conversas", "CONVERSATION": "{count} conversa", "CONVERSATIONS": "{count} conversas", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/search.json b/app/javascript/dashboard/i18n/locale/pt_BR/search.json index 2cb8f25c2..e9b9589a6 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/search.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/search.json @@ -35,7 +35,7 @@ "PRIVATE": "Nota privada", "TRANSCRIPT": "Transcrição", "CREATED_AT": "criado {time}", - "UPDATED_AT": "atualizado em {time}", + "UPDATED_AT": "atualizado {time}", "SORT_BY": { "RELEVANCE": "Relevância" }, diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/settings.json b/app/javascript/dashboard/i18n/locale/pt_BR/settings.json index ed73d733d..381c20429 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/settings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/settings.json @@ -82,7 +82,7 @@ }, "SECURITY_SECTION": { "TITLE": "Segurança", - "NOTE": "Manage additional security features for your account.", + "NOTE": "Gerencie recursos adicionais de segurança para sua conta.", "MFA_BUTTON": "Gerenciar autenticação de dois fatores " }, "ACCESS_TOKEN": { @@ -149,7 +149,7 @@ "NOTIFICATIONS": { "TITLE": "Preferências de notificação", "TYPE_TITLE": "Tipo de notificação", - "EMAIL": "e-mail", + "EMAIL": "E-mail", "PUSH": "Notificação ", "TYPES": { "CONVERSATION_CREATED": "Uma nova conversa foi criada", @@ -254,9 +254,9 @@ "MESSAGE": "Sua conta está suspensa. Entre em contato com a equipe de suporte para obter mais informações." }, "NO_ACCOUNTS": { - "TITLE": "No account found", - "MESSAGE_CLOUD": "You are not part of any accounts right now. If you think this is a mistake, please reach out to our support team.", - "MESSAGE_SELF_HOSTED": "You are not part of any accounts right now. Please reach out to your administrator.", + "TITLE": "Nenhuma conta encontrada", + "MESSAGE_CLOUD": "Você não faz parte de nenhuma conta no momento. Se acreditar que isso é um engano, entre em contato com nossa equipe de suporte.", + "MESSAGE_SELF_HOSTED": "Você não faz parte de nenhuma conta no momento. Entre em contato com o seu administrador.", "LOGOUT": "Encerrar sessão" } }, @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Baixar", "UPLOADING": "Enviando...", - "INSTAGRAM_STORY_UNAVAILABLE": "Este story não está mais disponível." + "INSTAGRAM_STORY_UNAVAILABLE": "Este story não está mais disponível.", + "INSTAGRAM_STORY_REPLY": "Respondido ao seu story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Ver Localização" @@ -356,7 +357,7 @@ "REPORTS_LABEL": "Etiquetas", "REPORTS_INBOX": "Caixa de Entrada", "REPORTS_TEAM": "Time", - "AGENT_ASSIGNMENT": "Agent Assignment", + "AGENT_ASSIGNMENT": "Atribuição de Agentes", "SET_AVAILABILITY_TITLE": "Defina como", "SET_YOUR_AVAILABILITY": "Disponibilidade", "SLA": "SLA", @@ -378,7 +379,57 @@ "INFO_SHORT": "Marcar off-line automaticamente quando não estiver usando o aplicativo." }, "DOCS": "Ler documentos", - "SECURITY": "Segurança" + "SECURITY": "Segurança", + "CAPTAIN_AI": "Capitão", + "CONVERSATION_WORKFLOW": "Fluxo de Conversa" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Configurações do Capitão", + "DESCRIPTION": "Configure seus modelos e recursos de IA para o Capitão. O Capitão utiliza um modelo de cobrança baseado em créditos; você será cobrado em créditos por cada ação que o Capitão realizar, dependendo do modelo selecionado.", + "LOADING": "Carregando configurações do Capitão...", + "LINK_TEXT": "Saiba mais sobre os Créditos do Capitão", + "NOT_ENABLED": "O Capitão não está habilitado para a sua conta. Atualize seu plano para acessar os recursos do Capitão.", + "MODEL_CONFIG": { + "TITLE": "Configuração do Modelo", + "DESCRIPTION": "Selecione modelos de IA para diferentes recursos.", + "SELECT_MODEL": "Selecionar modelo", + "CREDITS_PER_MESSAGE": "{credits} crédito/mensagem", + "COMING_SOON": "Em breve", + "EDITOR": { + "TITLE": "Recursos do Editor", + "DESCRIPTION": "Potencializa a escrita inteligente, correções gramaticais, ajustes de tom e aprimoramento de conteúdo no editor de mensagens." + }, + "ASSISTANT": { + "TITLE": "Assistente", + "DESCRIPTION": "Gerencia respostas automatizadas, resumos de conversas e sugestões inteligentes de resposta para interações com clientes." + }, + "COPILOT": { + "TITLE": "Copiloto", + "DESCRIPTION": "Fornece sugestões contextuais em tempo real, recomendações da base de conhecimento e insights proativos durante as conversas." + } + }, + "FEATURES": { + "TITLE": "Funcionalidades", + "DESCRIPTION": "Ative ou desative recursos com tecnologia de IA.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Transcrição de Áudio", + "DESCRIPTION": "Converte automaticamente mensagens de voz e gravações de chamadas em transcrições de texto pesquisáveis." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Indexação de Pesquisa da Central de Ajuda", + "DESCRIPTION": "Use IA para realizar buscas com reconhecimento de contexto nos artigos da sua central de ajuda." + }, + "LABEL_SUGGESTION": { + "TITLE": "Sugestão de Etiquetas", + "DESCRIPTION": "Sugere automaticamente rótulos e etiquetas relevantes para as conversas, com base na análise de conteúdo e no contexto.", + "MODEL_TITLE": "Modelo de Sugestão de Etiquetas", + "MODEL_DESCRIPTION": "Selecione o modelo de IA a ser utilizado para analisar as conversas e sugerir etiquetas apropriadas" + } + }, + "API": { + "SUCCESS": "Configurações do Capitão atualizadas com sucesso.", + "ERROR": "Falha ao atualizar as configurações do Capitão. Por favor, tente novamente." + } }, "BILLING_SETTINGS": { "TITLE": "Cobrança", @@ -413,9 +464,9 @@ "TOPUP": { "BUY_CREDITS": "Comprar mais créditos", "MODAL_TITLE": "Comprar Créditos de IA", - "MODAL_DESCRIPTION": "Comprar créditos adicionais para o Capitão AI.", + "MODAL_DESCRIPTION": "Comprar créditos adicionais para o Capitão IA.", "CREDITS": "CRÉDITOS", - "ONE_TIME": "única vez", + "ONE_TIME": "único", "POPULAR": "Mais populares", "NOTE_TITLE": "Nota:", "NOTE_DESCRIPTION": "Créditos são adicionados imediatamente e expiram em 6 meses. Uma assinatura ativa é necessária para usar créditos. Créditos adquiridos são consumidos após seus créditos do plano mensal.", @@ -426,11 +477,11 @@ "PURCHASE_ERROR": "Falha ao processar a compra. Por favor, tente novamente.", "PURCHASE_SUCCESS": "Foram adicionados {credits} créditos com sucesso à sua conta", "CONFIRM": { - "TITLE": "Confirmar compra", + "TITLE": "Confirmar Compra", "DESCRIPTION": "Você está prestes a comprar {credits} créditos por {amount}.", "INSTANT_DEDUCTION_NOTE": "Seu cartão salvo será cobrado imediatamente após a confirmação.", "GO_BACK": "Voltar", - "CONFIRM_PURCHASE": "Confirmar compra" + "CONFIRM_PURCHASE": "Confirmar Compra" } } }, @@ -441,68 +492,120 @@ "SAML_DISABLED_MESSAGE": "O SSO via SAML está desativado no momento. Entre em contato com o administrador para habilitar esse recurso.", "SAML": { "TITLE": "SAML SSO", - "NOTE": "Configure SAML single sign-on for your account. Users will authenticate through your identity provider instead of using email/password.", + "NOTE": "Configure o login único via SAML para sua conta. Os usuários se autenticarão por meio do seu provedor de identidade em vez de usar e-mail e senha.", "ACS_URL": { "LABEL": "ACS URL", - "TOOLTIP": "Assertion Consumer Service URL - Configure this URL in your IdP as the destination for SAML responses" + "TOOLTIP": "URL do Assertion Consumer Service - Configure esta URL no seu IdP como o destino para as respostas SAML" }, "SSO_URL": { "LABEL": "SSO URL", - "HELP": "The URL where SAML authentication requests will be sent", + "HELP": "A URL para onde as solicitações de autenticação SAML serão enviadas", "PLACEHOLDER": "https://your-idp.com/saml/sso" }, "CERTIFICATE": { - "LABEL": "Signing certificate in PEM format", - "HELP": "The public certificate from your identity provider used to verify SAML responses", + "LABEL": "Certificado de assinatura no formato PEM", + "HELP": "O certificado público do seu provedor de identidade, usado para verificar as respostas SAML", "PLACEHOLDER": "-----BEGIN CERTIFICATE-----\nMIIC..." }, "FINGERPRINT": { - "LABEL": "Fingerprint", - "TOOLTIP": "SHA-1 fingerprint of the certificate - Use this to verify the certificate in your IdP configuration" + "LABEL": "Impressão digital", + "TOOLTIP": "Impressão digital SHA-1 do certificado - use-a para verificar o certificado na configuração do seu IdP" }, "COPY_SUCCESS": "Código copiado para área de transferência com sucesso", "SP_ENTITY_ID": { "LABEL": "SP Entity ID", - "HELP": "Unique identifier for this application as a service provider (auto-generated).", - "TOOLTIP": "Unique identifier for Chatwoot as the Service Provider - Configure this in your IdP settings" + "HELP": "Identificador exclusivo desta aplicação como provedor de serviço (gerado automaticamente).", + "TOOLTIP": "Identificador exclusivo do Chatwoot como Provedor de Serviço - configure-o nas configurações do seu IdP" }, "IDP_ENTITY_ID": { - "LABEL": "Identity Provider Entity ID", - "HELP": "Unique identifier for your identity provider (usually found in IdP configuration)", - "PLACEHOLDER": "https://your-idp.com/saml" + "LABEL": "ID da Entidade do Provedor de Identidade", + "HELP": "Identificador exclusivo do seu provedor de identidade (geralmente encontrado na configuração do IdP)", + "PLACEHOLDER": "https://seu-idp.com/saml" }, - "UPDATE_BUTTON": "Update SAML Settings", + "UPDATE_BUTTON": "Atualizar configurações de SAML", "API": { - "SUCCESS": "SAML settings updated successfully", - "ERROR": "Failed to update SAML settings", - "ERROR_LOADING": "Failed to load SAML settings", - "DISABLED": "SAML settings disabled successfully" + "SUCCESS": "Configurações de SAML atualizadas com sucesso", + "ERROR": "Falha ao atualizar as configurações de SAML", + "ERROR_LOADING": "Falha ao carregar as configurações de SAML", + "DISABLED": "Configurações de SAML desativadas com sucesso" }, "VALIDATION": { - "REQUIRED_FIELDS": "SSO URL, Identity Provider Entity ID, and Certificate are required fields", - "SSO_URL_ERROR": "Please enter a valid SSO URL", + "REQUIRED_FIELDS": "A URL de SSO, o ID da Entidade do Provedor de Identidade e o Certificado são campos obrigatórios", + "SSO_URL_ERROR": "Por favor, insira uma URL de SSO válida", "CERTIFICATE_ERROR": "O certificado é necessário", - "IDP_ENTITY_ID_ERROR": "Identity Provider Entity ID is required" + "IDP_ENTITY_ID_ERROR": "O ID da Entidade do Provedor de Identidade é obrigatório" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", - "UPGRADE_PROMPT": "Upgrade to an Enterprise plan to access SAML single sign-on and other advanced security features.", + "AVAILABLE_ON": "O recurso de SSO via SAML está disponível apenas nos planos Enterprise.", + "UPGRADE_PROMPT": "Atualize para um plano Enterprise para ter acesso ao login único via SAML e outros recursos avançados de segurança.", "ASK_ADMIN": "Entre em contato com seu administrador para fazer a atualização." }, "PAYWALL": { - "TITLE": "Upgrade to enable SAML SSO", - "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", - "UPGRADE_PROMPT": "Upgrade your plan to get access to SAML single sign-on and other advanced features.", + "TITLE": "Atualizar para habilitar o SSO via SAML", + "AVAILABLE_ON": "O recurso de SSO via SAML está disponível apenas nos planos Enterprise.", + "UPGRADE_PROMPT": "Atualize seu plano para ter acesso ao login único via SAML e outros recursos avançados.", "UPGRADE_NOW": "Atualizar agora", "CANCEL_ANYTIME": "Você pode alterar ou cancelar seu plano a qualquer momento" }, "ATTRIBUTE_MAPPING": { - "TITLE": "SAML Attribute Setup", - "DESCRIPTION": "The following attribute mappings must be configured in your identity provider" + "TITLE": "Configuração de Atributos SAML", + "DESCRIPTION": "Os seguintes mapeamentos de atributos devem ser configurados no seu provedor de identidade" }, "INFO_SECTION": { - "TITLE": "Service Provider Information", - "TOOLTIP": "Copy these values and configure them in your Identity Provider to establish the SAML connection" + "TITLE": "Informações do Provedor de Serviço", + "TOOLTIP": "Copie esses valores e configure-os no seu Provedor de Identidade para estabelecer a conexão SAML" + } + } + }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Fluxos de Conversa", + "DESCRIPTION": "Configure regras e campos obrigatórios para a resolução de conversas." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Atributos obrigatórios para resolução", + "DESCRIPTION": "Ao resolver uma conversa, os agentes serão solicitados a preencher esses atributos caso ainda não o tenham feito.", + "NO_ATTRIBUTES": "Nenhum atributo adicionado ainda", + "ADD": { + "TITLE": "Adicionar Atributos", + "SEARCH_PLACEHOLDER": "Pesquisar atributos" + }, + "SAVE": { + "SUCCESS": "Atributos obrigatórios atualizados", + "ERROR": "Não foi possível atualizar os atributos obrigatórios. Por favor, tente novamente" + }, + "MODAL": { + "TITLE": "Resolver conversa", + "DESCRIPTION": "Por favor, preencha os seguintes atributos personalizados antes de resolver esta conversa", + "ACTIONS": { + "RESOLVE": "Resolver conversa", + "CANCEL": "Cancelar" + }, + "PLACEHOLDERS": { + "TEXT": "Escreva uma nota...", + "NUMBER": "Insira um número", + "LINK": "Adicione um link", + "DATE": "Selecione uma data", + "LIST": "Selecione uma opção" + }, + "CHECKBOX": { + "YES": "Sim", + "NO": "Não" + } + }, + "PAYWALL": { + "TITLE": "Atualize para usar os atributos obrigatórios", + "AVAILABLE_ON": "O recurso de atributos obrigatórios da conversa está disponível nos planos Business e Enterprise.", + "UPGRADE_PROMPT": "Atualize seu plano para solicitar que os agentes preencham os atributos obrigatórios antes da resolução da conversa.", + "UPGRADE_NOW": "Atualizar agora", + "CANCEL_ANYTIME": "Você pode alterar ou cancelar seu plano a qualquer momento" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "O recurso de atributos obrigatórios de conversa está disponível nos planos pagos.", + "UPGRADE_PROMPT": "Atualize para um plano pago para exigir atributos obrigatórios antes da resolução da conversa.", + "ASK_ADMIN": "Entre em contato com seu administrador para fazer a atualização." } } }, @@ -546,84 +649,91 @@ "ASSIGNMENT_POLICY": { "INDEX": { "HEADER": { - "TITLE": "Agent assignment", - "DESCRIPTION": "Define policies to effectively manage workload and route conversations based on the needs of inboxes and agents. Learn more here" + "TITLE": "Atribuição de agentes", + "DESCRIPTION": "Defina políticas para gerenciar a carga de trabalho de forma eficaz e encaminhar conversas com base nas necessidades das caixas de entrada e dos agentes. Saiba mais aqui" }, "ASSIGNMENT_POLICY": { - "TITLE": "Assignment policy", - "DESCRIPTION": "Manage how conversations get assigned in inboxes.", + "TITLE": "Política de atribuição", + "DESCRIPTION": "Gerencie como as conversas são atribuídas nas caixas de entrada.", "FEATURES": [ - "Assign by conversations evenly or by available capacity", - "Add fair distribution rules to avoid overloading any agent", - "Add inboxes to a policy - one policy per inbox" + "Atribuir conversas de forma uniforme ou com base na capacidade disponível", + "Adicione regras de distribuição justa para evitar sobrecarregar qualquer agente", + "Adicione caixas de entrada a uma política - uma política por caixa de entrada" ] }, "AGENT_CAPACITY_POLICY": { - "TITLE": "Agent capacity policy", - "DESCRIPTION": "Manage workload for agents.", + "TITLE": "Política de capacidade dos agentes", + "DESCRIPTION": "Gerencie a carga de trabalho dos agentes.", "FEATURES": [ - "Define maximum conversations per inbox", - "Create exceptions based on labels and time", - "Add agents to a policy - one policy per agent" + "Defina o número máximo de conversas por caixa de entrada", + "Criar exceções com base em rótulos e tempo", + "Adicione agentes a uma política - uma política por agente" ] } }, "AGENT_ASSIGNMENT_POLICY": { "INDEX": { "HEADER": { - "TITLE": "Assignment policy", - "CREATE_POLICY": "New policy" + "TITLE": "Política de atribuição", + "CREATE_POLICY": "Nova política" }, "CARD": { - "ORDER": "Order", + "ORDER": "Ordem", "PRIORITY": "Prioridade", "ACTIVE": "Ativo", - "INACTIVE": "Inactive", - "POPOVER": "Added inboxes", + "INACTIVE": "Inativa", + "POPOVER": "Caixas de entrada adicionadas", "EDIT": "Alterar" }, - "NO_RECORDS_FOUND": "No assignment policies found" + "NO_RECORDS_FOUND": "Nenhuma política de atribuição encontrada" }, "CREATE": { "HEADER": { - "TITLE": "Create assignment policy" + "TITLE": "Criar política de atribuição" }, - "CREATE_BUTTON": "Create policy", + "CREATE_BUTTON": "Criar política", "API": { - "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "SUCCESS_MESSAGE": "Política de atribuição criada com sucesso", + "ERROR_MESSAGE": "Falha ao criar a política de atribuição", + "INBOX_LINKED": "A caixa de entrada foi vinculada à política" } }, "EDIT": { "HEADER": { - "TITLE": "Edit assignment policy" + "TITLE": "Editar política de atribuição" }, - "EDIT_BUTTON": "Update policy", + "EDIT_BUTTON": "Atualizar política", "CONFIRM_ADD_INBOX_DIALOG": { - "TITLE": "Add inbox", - "DESCRIPTION": "{inboxName} inbox is already linked to another policy. Are you sure you want to link it to this policy? It will be unlinked from the other policy.", - "CONFIRM_BUTTON_LABEL": "Continue", + "TITLE": "Adicionar caixa de entrada", + "DESCRIPTION": "A caixa de entrada {inboxName} já está vinculada a outra política. Tem certeza de que deseja vinculá-la a esta política? Ela será desvinculada da outra.", + "CONFIRM_BUTTON_LABEL": "Continuar", "CANCEL_BUTTON_LABEL": "Cancelar" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Vincular caixa de entrada à política", + "DESCRIPTION": "Deseja vincular esta caixa de entrada à política de atribuição?", + "LINK_BUTTON": "Vincular caixa de entrada", + "CANCEL_BUTTON": "Pular" + }, "API": { - "SUCCESS_MESSAGE": "Assignment policy updated successfully", - "ERROR_MESSAGE": "Failed to update assignment policy" + "SUCCESS_MESSAGE": "Política de atribuição atualizada com sucesso", + "ERROR_MESSAGE": "Falha ao atualizar a política de atribuição" }, "INBOX_API": { "ADD": { - "SUCCESS_MESSAGE": "Inbox added to policy successfully", - "ERROR_MESSAGE": "Failed to add inbox to policy" + "SUCCESS_MESSAGE": "Caixa de entrada adicionada à política com sucesso", + "ERROR_MESSAGE": "Falha ao adicionar a caixa de entrada à política" }, "REMOVE": { - "SUCCESS_MESSAGE": "Inbox removed from policy successfully", - "ERROR_MESSAGE": "Failed to remove inbox from policy" + "SUCCESS_MESSAGE": "Caixa de entrada removida da política com sucesso", + "ERROR_MESSAGE": "Caixa de entrada removida da política com sucesso" } } }, "FORM": { "NAME": { - "LABEL": "Policy name:", - "PLACEHOLDER": "Enter policy name" + "LABEL": "Nome da política:", + "PLACEHOLDER": "Informe o nome da política" }, "DESCRIPTION": { "LABEL": "Descrição:", @@ -631,164 +741,180 @@ }, "STATUS": { "LABEL": "Status:", - "PLACEHOLDER": "Selecione Status", - "ACTIVE": "Policy is active", - "INACTIVE": "Policy is inactive" + "PLACEHOLDER": "Selecionar status", + "ACTIVE": "Política ativa", + "INACTIVE": "Política inativa" }, "ASSIGNMENT_ORDER": { - "LABEL": "Assignment order", + "LABEL": "Ordem de atribuição", "ROUND_ROBIN": { - "LABEL": "Round robin", - "DESCRIPTION": "Assign conversations evenly among agents." + "LABEL": "Rodízio", + "DESCRIPTION": "Distribuir as conversas de forma uniforme entre os agentes." }, "BALANCED": { - "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "LABEL": "Equilibrado", + "DESCRIPTION": "Atribuir conversas com base na capacidade disponível.", + "PREMIUM_MESSAGE": "Atualize o plano para acessar a atribuição equilibrada e o gerenciamento de capacidade dos agentes.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { - "LABEL": "Assignment priority", + "LABEL": "Prioridade de atribuição", "EARLIEST_CREATED": { - "LABEL": "Earliest created", - "DESCRIPTION": "The conversation that was created first gets assigned first." + "LABEL": "Criado recentemente", + "DESCRIPTION": "A conversa criada primeiro será atribuída primeiro." }, "LONGEST_WAITING": { - "LABEL": "Longest waiting", - "DESCRIPTION": "The conversation waiting the longest gets assigned first." + "LABEL": "Maior tempo de espera", + "DESCRIPTION": "A conversa que está aguardando há mais tempo é atribuída primeiro." } }, "FAIR_DISTRIBUTION": { - "LABEL": "Fair distribution policy", - "DESCRIPTION": "Set the maximum number of conversations that can be assigned per agent within a time window to avoid overloading any one agent. This required field defaults to 100 conversations per hour.", - "INPUT_MAX": "Assign max", - "DURATION": "Conversations per agent in every" + "LABEL": "Política de distribuição justa", + "DESCRIPTION": "Defina o número máximo de conversas que podem ser atribuídas por agente dentro de um período, para evitar sobrecarregar qualquer agente. Este campo obrigatório tem como padrão 100 conversas por hora.", + "INPUT_MAX": "Máximo de atribuições", + "DURATION": "Conversas por agente a cada" }, "INBOXES": { - "LABEL": "Added inboxes", - "DESCRIPTION": "Add inboxes for which this policy will be applicable.", - "ADD_BUTTON": "Add inbox", + "LABEL": "Caixas de entrada adicionadas", + "DESCRIPTION": "Adicionar caixas de entrada às quais esta política será aplicada.", + "ADD_BUTTON": "Adicionar caixa de entrada", "DROPDOWN": { - "SEARCH_PLACEHOLDER": "Search and select inboxes to add", + "SEARCH_PLACEHOLDER": "Pesquisar e selecionar caixas de entrada para adicionar", "ADD_BUTTON": "Adicionar" }, - "EMPTY_STATE": "No inboxes added to this policy, add an inbox to get started", + "EMPTY_STATE": "Nenhuma caixa de entrada adicionada a esta política. Adicione uma caixa de entrada para começar", "API": { - "SUCCESS_MESSAGE": "Inbox successfully added to policy", - "ERROR_MESSAGE": "Failed to add inbox to policy" + "SUCCESS_MESSAGE": "Caixa de entrada adicionada à política com sucesso", + "ERROR_MESSAGE": "Falha ao adicionar a caixa de entrada à política" } } }, "DELETE_POLICY": { - "SUCCESS_MESSAGE": "Assignment policy deleted successfully", - "ERROR_MESSAGE": "Failed to delete assignment policy" + "SUCCESS_MESSAGE": "Política de atribuição excluída com sucesso", + "ERROR_MESSAGE": "Falha ao excluir a política de atribuição" } }, "AGENT_CAPACITY_POLICY": { "INDEX": { "HEADER": { - "TITLE": "Agent capacity", - "CREATE_POLICY": "New policy" + "TITLE": "Capacidade do agente", + "CREATE_POLICY": "Nova política" }, "CARD": { - "POPOVER": "Added agents", + "POPOVER": "Agentes adicionados", "EDIT": "Alterar" }, - "NO_RECORDS_FOUND": "No agent capacity policies found" + "NO_RECORDS_FOUND": "Nenhuma política de capacidade dos agentes encontrada" }, "CREATE": { "HEADER": { - "TITLE": "Create agent capacity policy" + "TITLE": "Criar política de capacidade dos agentes" }, - "CREATE_BUTTON": "Create policy", + "CREATE_BUTTON": "Criar política", "API": { - "SUCCESS_MESSAGE": "Agent capacity policy created successfully", - "ERROR_MESSAGE": "Failed to create agent capacity policy" + "SUCCESS_MESSAGE": "Política de capacidade dos agentes criada com sucesso", + "ERROR_MESSAGE": "Falha ao criar a política de capacidade dos agentes" } }, "EDIT": { "HEADER": { - "TITLE": "Edit agent capacity policy" + "TITLE": "Editar política de capacidade dos agentes" }, - "EDIT_BUTTON": "Update policy", + "EDIT_BUTTON": "Atualizar política", "CONFIRM_ADD_AGENT_DIALOG": { - "TITLE": "Add agent", - "DESCRIPTION": "{agentName} is already linked to another policy. Are you sure you want to link it to this policy? It will be unlinked from the other policy.", - "CONFIRM_BUTTON_LABEL": "Continue", + "TITLE": "Adicionar agente", + "DESCRIPTION": "{agentName} já está vinculado a outra política. Tem certeza de que deseja vinculá-lo a esta política? Ele será desvinculado da outra.", + "CONFIRM_BUTTON_LABEL": "Continuar", "CANCEL_BUTTON_LABEL": "Cancelar" }, "API": { - "SUCCESS_MESSAGE": "Agent capacity policy updated successfully", - "ERROR_MESSAGE": "Failed to update agent capacity policy" + "SUCCESS_MESSAGE": "Política de capacidade dos agentes atualizada com sucesso", + "ERROR_MESSAGE": "Falha ao atualizar a política de capacidade dos agentes" }, "AGENT_API": { "ADD": { - "SUCCESS_MESSAGE": "Agent added to policy successfully", - "ERROR_MESSAGE": "Failed to add agent to policy" + "SUCCESS_MESSAGE": "Agente adicionado à política com sucesso", + "ERROR_MESSAGE": "Falha ao adicionar o agente à política" }, "REMOVE": { - "SUCCESS_MESSAGE": "Agent removed from policy successfully", - "ERROR_MESSAGE": "Failed to remove agent from policy" + "SUCCESS_MESSAGE": "Agente removido da política com sucesso", + "ERROR_MESSAGE": "Falha ao remover o agente da política" + } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Limite de caixa de entrada adicionado com sucesso", + "ERROR_MESSAGE": "Falha ao adicionar limite de caixa de entrada" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Limite de caixa de entrada atualizado com sucesso", + "ERROR_MESSAGE": "Falha ao atualizar limite da caixa de entrada" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Limite da caixa de entrada excluído com sucesso", + "ERROR_MESSAGE": "Falha ao excluir o limite da caixa de entrada" } } }, "FORM": { "NAME": { - "LABEL": "Policy name:", - "PLACEHOLDER": "Enter policy name" + "LABEL": "Nome da política:", + "PLACEHOLDER": "Informe o nome da política" }, "DESCRIPTION": { "LABEL": "Descrição:", "PLACEHOLDER": "Insira a descrição" }, "INBOX_CAPACITY_LIMIT": { - "LABEL": "Inbox capacity limits", - "ADD_BUTTON": "Add inbox", + "LABEL": "Limites de capacidade da caixa de entrada", + "ADD_BUTTON": "Adicionar caixa de entrada", "FIELD": { - "SELECT_INBOX": "Select inbox", - "MAX_CONVERSATIONS": "Max conversations", - "SET_LIMIT": "Set limit" + "SELECT_INBOX": "Selecionar caixa de entrada", + "MAX_CONVERSATIONS": "Máximo de conversas", + "SET_LIMIT": "Definir limite" }, - "EMPTY_STATE": "No inbox limit set" + "EMPTY_STATE": "Nenhum limite de caixa de entrada definido" }, "EXCLUSION_RULES": { - "LABEL": "Exclusion rules", - "DESCRIPTION": "Conversations that satisfy the following conditions would not count towards agent capacity", + "LABEL": "Regras de exclusão", + "DESCRIPTION": "Conversas que atendam às seguintes condições não serão contabilizadas na capacidade do agente", "TAGS": { - "LABEL": "Exclude conversations tagged with specific labels", - "ADD_TAG": "add tag", + "LABEL": "Excluir conversas marcadas com rótulos específicos", + "ADD_TAG": "adicionar etiqueta", "DROPDOWN": { - "SEARCH_PLACEHOLDER": "Search and select tags to add" + "SEARCH_PLACEHOLDER": "Pesquise e selecione etiquetas para adicionar" }, - "EMPTY_STATE": "No tags added to this policy." + "EMPTY_STATE": "Nenhuma etiqueta adicionada a esta política." }, "DURATION": { - "LABEL": "Exclude conversations older than a specified duration", - "PLACEHOLDER": "Set time" + "LABEL": "Excluir conversas mais antigas que um período especificado", + "PLACEHOLDER": "Definir duração" } }, "USERS": { - "LABEL": "Assigned agents", - "DESCRIPTION": "Add agents for which this policy will be applicable.", - "ADD_BUTTON": "Add agent", + "LABEL": "Agentes atribuídos", + "DESCRIPTION": "Adicione os agentes aos quais esta política será aplicada.", + "ADD_BUTTON": "Adicionar agente", "DROPDOWN": { - "SEARCH_PLACEHOLDER": "Search and select agents to add", + "SEARCH_PLACEHOLDER": "Pesquise e selecione agentes para adicionar", "ADD_BUTTON": "Adicionar" }, - "EMPTY_STATE": "No agents added", + "EMPTY_STATE": "Nenhum agente adicionado", "API": { - "SUCCESS_MESSAGE": "Agent successfully added to policy", - "ERROR_MESSAGE": "Failed to add agent to policy" + "SUCCESS_MESSAGE": "Agente adicionado à política com sucesso", + "ERROR_MESSAGE": "Falha ao adicionar o agente à política" } } }, "DELETE_POLICY": { - "SUCCESS_MESSAGE": "Agent capacity policy deleted successfully", - "ERROR_MESSAGE": "Failed to delete agent capacity policy" + "SUCCESS_MESSAGE": "Política de capacidade de agentes excluída com sucesso", + "ERROR_MESSAGE": "Falha ao excluir a política de capacidade de agentes" } }, "DELETE_POLICY": { - "TITLE": "Delete policy", - "DESCRIPTION": "Are you sure you want to delete this policy? This action cannot be undone.", + "TITLE": "Excluir política", + "DESCRIPTION": "Tem certeza de que deseja excluir esta política? Essa ação não pode ser desfeita.", "CONFIRM_BUTTON_LABEL": "Excluir", "CANCEL_BUTTON_LABEL": "Cancelar" } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/signup.json b/app/javascript/dashboard/i18n/locale/pt_BR/signup.json index 0f43aaa24..d859806bd 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/signup.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Criar uma conta", + "GET_STARTED": "Comece a utilizar Chatwoot", "TITLE": "Registrar", "TESTIMONIAL_HEADER": "Tudo o que ele leva é um passo para avançar", "TESTIMONIAL_CONTENT": "Você está a um passo de engajar seus clientes, mantê-los e encontrar novos.", @@ -28,11 +29,11 @@ "PLACEHOLDER": "Senha", "ERROR": "A senha é muito curta.", "IS_INVALID_PASSWORD": "A senha deve conter pelo menos 1 letra maiúscula, 1 letra minúscula, 1 número e 1 caractere especial.", - "REQUIREMENTS_LENGTH": "At least 6 characters long", - "REQUIREMENTS_UPPERCASE": "At least one uppercase letter", - "REQUIREMENTS_LOWERCASE": "At least one lowercase letter", - "REQUIREMENTS_NUMBER": "At least one number", - "REQUIREMENTS_SPECIAL": "At least one special character" + "REQUIREMENTS_LENGTH": "Pelo menos 6 caracteres", + "REQUIREMENTS_UPPERCASE": "Pelo menos uma letra maiúscula", + "REQUIREMENTS_LOWERCASE": "Pelo menos uma letra minúscula", + "REQUIREMENTS_NUMBER": "Pelo menos um número", + "REQUIREMENTS_SPECIAL": "Pelo menos um caractere especial" }, "CONFIRM_PASSWORD": { "LABEL": "Confirmar senha", @@ -40,7 +41,7 @@ "ERROR": "As senhas não coincidem." }, "API": { - "SUCCESS_MESSAGE": "Registration Successful", + "SUCCESS_MESSAGE": "Cadastro Realizado Com Sucesso", "ERROR_MESSAGE": "Não foi possível conectar ao servidor Woot. Por favor, tente novamente." }, "SUBMIT": "Criar conta", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/sla.json b/app/javascript/dashboard/i18n/locale/pt_BR/sla.json index fae59d198..cbceb9146 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/sla.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Criar uma nova Política de SLA", "DESCRIPTION": "Acordo de Nível de Serviço (SLAs em inglês) são acordos que definem expectativas claras entre seu time e os clientes. Estabelecem normas para tempos de resposta e de resolução, criando um quadro de responsabilização e garantindo uma experiência coerente e de qualidade.", "LEARN_MORE": "Saiba mais sobre SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Buscando SLAs", + "SEARCH_PLACEHOLDER": "Pesquisar SLA...", + "SEARCH": { + "NO_RESULTS": "Nenhuma SLA encontrada correspondente à sua busca" + }, "PAYWALL": { "TITLE": "Atualize para criar SLAs", "AVAILABLE_ON": "O recurso SLA está disponível apenas nos planos Business e Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "Não há SLAs disponíveis nesta conta.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Horário comercial" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Questões levantadas por clientes empresariais que requerem atenção imediata.", "TITLE_2": "Enterprise P1", "DESC_2": "Questões levantadas por clientes empresariais que precisam ser reconhecidas rapidamente." }, - "BUSINESS_HOURS_ON": "Horários de funcionamento", - "BUSINESS_HOURS_OFF": "Horário comercial desligado", + "BUSINESS_HOURS_ON": "Ativado", + "BUSINESS_HOURS_OFF": "Desativado", "RESPONSE_TYPES": { "FRT": "Próximo limite de tempo de resposta", "NRT": "Próximo limite de tempo de resposta", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/snooze.json b/app/javascript/dashboard/i18n/locale/pt_BR/snooze.json new file mode 100644 index 000000000..e2ae05f2c --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/pt_BR/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minuto", + "MINUTES": "minutos", + "HOUR": "hora", + "HOURS": "horas", + "DAY": "dia", + "DAYS": "dias", + "WEEK": "semana", + "WEEKS": "semanas", + "MONTH": "mês", + "MONTHS": "meses", + "YEAR": "ano", + "YEARS": "anos" + }, + "HALF": "metade", + "NEXT": "próximo", + "THIS": "este", + "AT": "às", + "IN": "em", + "FROM_NOW": "a partir de agora", + "NEXT_YEAR": "próximo ano", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "amanhã", + "DAY_AFTER_TOMORROW": "depois de amanhã", + "NEXT_WEEK": "próxima semana", + "NEXT_MONTH": "próximo mês", + "THIS_WEEKEND": "esta semana", + "NEXT_WEEKEND": "próximo fim de semana" + }, + "TIME_OF_DAY": { + "MORNING": "manhã", + "AFTERNOON": "tarde", + "EVENING": "noite", + "NIGHT": "madrugada", + "NOON": "meio-dia", + "MIDNIGHT": "meia-noite" + }, + "WORD_NUMBERS": { + "ONE": "um", + "TWO": "dois", + "THREE": "três", + "FOUR": "quatro", + "FIVE": "cinco", + "SIX": "seis", + "SEVEN": "sete", + "EIGHT": "oito", + "NINE": "nove", + "TEN": "dez", + "TWELVE": "doze", + "FIFTEEN": "quinze", + "TWENTY": "vinte", + "THIRTY": "trinta" + }, + "ORDINALS": { + "FIRST": "primeiro", + "SECOND": "segundo", + "THIRD": "terceiro", + "FOURTH": "quarto", + "FIFTH": "quinto" + }, + "OF": "de", + "AFTER": "depois", + "WEEK": "semana", + "DAY": "dia" + } +} diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/teamsSettings.json b/app/javascript/dashboard/i18n/locale/pt_BR/teamsSettings.json index 325c835a6..b24f89da3 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Buscando times", "DESCRIPTION": "Os times permitem que você organize agentes em grupos com base em suas responsabilidades. Um agente pode pertencer a vários times. Ao trabalhar de forma colaborativa, você pode atribuir conversas a times específicos.", "LEARN_MORE": "Saiba mais sobre times", + "COUNT": "{n} time | {n} times", + "SEARCH_PLACEHOLDER": "Pesquisar times...", + "NO_RESULTS": "Nenhum time encontrado correspondente à sua busca", "LIST": { "404": "Não existem agentes associados a esta conta.", "EDIT_TEAM": "Editar time", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Não foi possível salvar os detalhes do time. Tente novamente." }, "AGENTS": { - "AGENT": "AGENTE", - "EMAIL": "E-mail", + "AGENT": "Agente", + "EMAIL": "e-mail", "BUTTON_TEXT": "Adicionar agentes", "ADD_AGENTS": "Adicionando agentes à sua caixa de entrada...", "SELECT": "Selecionar", diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/whatsappTemplates.json b/app/javascript/dashboard/i18n/locale/pt_BR/whatsappTemplates.json index a5587d239..935334ca6 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/whatsappTemplates.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/whatsappTemplates.json @@ -40,7 +40,7 @@ "BUTTON_LABEL": "Botão {index}", "COUPON_CODE": "Digite o código do cupom (máx. 15 caracteres)", "MEDIA_URL_LABEL": "Digite a URL {type}", - "DOCUMENT_NAME_PLACEHOLDER": "Enter document filename (e.g., Invoice_2025.pdf)", + "DOCUMENT_NAME_PLACEHOLDER": "Informe o nome do arquivo do documento (ex.: Comprovante_2025.pdf)", "BUTTON_PARAMETER": "Insira o parâmetro do botão" } } diff --git a/app/javascript/dashboard/i18n/locale/pt_BR/yearInReview.json b/app/javascript/dashboard/i18n/locale/pt_BR/yearInReview.json index b62ec1875..31c4f15be 100644 --- a/app/javascript/dashboard/i18n/locale/pt_BR/yearInReview.json +++ b/app/javascript/dashboard/i18n/locale/pt_BR/yearInReview.json @@ -1,6 +1,6 @@ { "YEAR_IN_REVIEW": { - "TITLE": "Retrospectiva do ano", + "TITLE": "Retrospectiva do Ano", "LOADING": "Carregando sua retrospectiva do ano...", "ERROR": "Falha ao carregar a retrospectiva do ano", "CLOSE": "Fechar", diff --git a/app/javascript/dashboard/i18n/locale/ro/agentBots.json b/app/javascript/dashboard/i18n/locale/ro/agentBots.json index 02c271f25..258c290fe 100644 --- a/app/javascript/dashboard/i18n/locale/ro/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ro/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Sistem", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "URL Webhook" + "URL": "URL Webhook", + "ACTIONS": "Actiuni" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ro/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ro/agentMgmt.json index 5871683d4..0df3fc280 100644 --- a/app/javascript/dashboard/i18n/locale/ro/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Nu există agenți asociați acestui cont", "TITLE": "Gestionează agenții din echipa ta", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nu s-a putut conecta la Woot Server, încercați din nou mai târziu" } }, + "SEARCH_PLACEHOLDER": "Agenți de căutare...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Niciun rezultat găsit." }, diff --git a/app/javascript/dashboard/i18n/locale/ro/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ro/attributesMgmt.json index 2e5d6271a..03d961959 100644 --- a/app/javascript/dashboard/i18n/locale/ro/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Preluarea atributelor particularizate", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Cauta atribute...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversație", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ro/automation.json b/app/javascript/dashboard/i18n/locale/ro/automation.json index e222fe9a9..a2eba8964 100644 --- a/app/javascript/dashboard/i18n/locale/ro/automation.json +++ b/app/javascript/dashboard/i18n/locale/ro/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatizare", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Adaugă Regulă de Automatizare", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Preluarea regulilor de automatizare", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Adaugă Regulă de Automatizare", "SUBMIT": "Creeaza", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Nume", - "DESCRIPTION": "Descriere", "ACTIVE": "Activ", - "CREATED_ON": "Creat in" + "CREATED_ON": "Creat in", + "ACTIONS": "Actiuni" }, "404": "Nu s-au găsit reguli de automatizare" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Modificarea priorității", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Deschiderea conversației" + "OPEN_CONVERSATION": "Deschiderea conversației", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ro/bulkActions.json b/app/javascript/dashboard/i18n/locale/ro/bulkActions.json index f74467707..b83cf47cf 100644 --- a/app/javascript/dashboard/i18n/locale/ro/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ro/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Statusul conversației a fost actualizat.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Nu s-au găsit etichete", diff --git a/app/javascript/dashboard/i18n/locale/ro/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ro/cannedMgmt.json index fc7f8f075..4b13b2cc3 100644 --- a/app/javascript/dashboard/i18n/locale/ro/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Răspunsuri predefinite", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Nu există elemente care să corespundă acestei interogări.", "LIST": { "404": "Nu există răspunsuri predefinite disponibile în acest cont.", diff --git a/app/javascript/dashboard/i18n/locale/ro/chatlist.json b/app/javascript/dashboard/i18n/locale/ro/chatlist.json index 6716cbd93..16ff7b373 100644 --- a/app/javascript/dashboard/i18n/locale/ro/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ro/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ro/contact.json b/app/javascript/dashboard/i18n/locale/ro/contact.json index 3bd52ac70..77ad5b119 100644 --- a/app/javascript/dashboard/i18n/locale/ro/contact.json +++ b/app/javascript/dashboard/i18n/locale/ro/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Niciun contact nu se potrivește cu căutarea ta 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Atribuiți etichete", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Către:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subiect :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ro/conversation.json b/app/javascript/dashboard/i18n/locale/ro/conversation.json index ff48ec626..b2098de41 100644 --- a/app/javascript/dashboard/i18n/locale/ro/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ro/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Mesaj şters cu succes", "FAIL_DELETE_MESSSAGE": "Mesajul nu a putut fi șters! Încercați din nou", "NO_RESPONSE": "Niciun răspuns", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nu s-a putut atribui eticheta. Vă rugăm încercați din nou." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Echipa atribuită #{team} la conversația cu id {conversationId}", "FAILED": "Nu s-a putut atribui echipa. Vă rugăm să încercaţi din nou." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Dezactivarea semnăturii", "MSG_INPUT": "Shift + enter pentru linie nouă. Începe cu '/' pentru a selecta un răspuns predeterminat.", "PRIVATE_MSG_INPUT": "Shift + enter pentru linie nouă. Acest lucru va fi vizibil doar pentru Agenți", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Semnătura mesajului nu este configurată, vă rugăm să o configurați în setările profilului.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click aici pentru a actualiza", "WHATSAPP_TEMPLATES": "Șabloane WhatsApp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Trageți și plasați aici pentru atașare", "START_AUDIO_RECORDING": "Pornirea înregistrării audio", "STOP_AUDIO_RECORDING": "Mesaj audio", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Adaugă bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Fișierul depășește limita de {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Mesajul nu poate fi trimis, te rugăm să încerci din nou mai târziu", "SENT_BY": "Trimis de:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nu a putut trimite mesaj! Încearcă din nou", "TRY_AGAIN": "reîncercare", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Renunță", "SEND_EMAIL_SUCCESS": "Transscrisul de chat a fost trimis cu succes", "SEND_EMAIL_ERROR": "A apărut o eroare, încercați din nou", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Trimite transcrierea către client", "SEND_TO_AGENT": "Trimite transcrierea către agentul atribuit", diff --git a/app/javascript/dashboard/i18n/locale/ro/customRole.json b/app/javascript/dashboard/i18n/locale/ro/customRole.json index 8d11d6e10..a01e8f34e 100644 --- a/app/javascript/dashboard/i18n/locale/ro/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ro/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Nu există elemente care să corespundă acestei interogări.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ro/datePicker.json b/app/javascript/dashboard/i18n/locale/ro/datePicker.json index ab745096f..35ac5b3f7 100644 --- a/app/javascript/dashboard/i18n/locale/ro/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ro/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Aplică", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Ultimele 3 luni", "LAST_6_MONTHS": "Ultimele 6 luni", "LAST_YEAR": "Anul trecut", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Interval de date particularizat" } } diff --git a/app/javascript/dashboard/i18n/locale/ro/general.json b/app/javascript/dashboard/i18n/locale/ro/general.json index 04919710f..9effcd994 100644 --- a/app/javascript/dashboard/i18n/locale/ro/general.json +++ b/app/javascript/dashboard/i18n/locale/ro/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Închide", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Da", + "NO": "Nu" } } diff --git a/app/javascript/dashboard/i18n/locale/ro/generalSettings.json b/app/javascript/dashboard/i18n/locale/ro/generalSettings.json index 87f6bba40..8e2a8a3ab 100644 --- a/app/javascript/dashboard/i18n/locale/ro/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ro/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Căutarea sau saltul la", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Rapoarte", diff --git a/app/javascript/dashboard/i18n/locale/ro/helpCenter.json b/app/javascript/dashboard/i18n/locale/ro/helpCenter.json index 0eb367788..9a2c2ab2b 100644 --- a/app/javascript/dashboard/i18n/locale/ro/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ro/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Eroare la ștergerea articolului" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Vă rugăm să adăugați titlul articolului și conținutul pentru a putea actualiza setările" }, diff --git a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json index 5b11a23e0..e0b9ac73f 100644 --- a/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Căsuțe", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Salvează" } @@ -589,8 +592,10 @@ "DISABLED": "Dezactivat" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Activat", - "DISABLED": "Dezactivat" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Permite" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Activați continuitatea conversației prin e-mail", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversațiile vor continua prin e-mail dacă adresa de e-mail de contact este disponibilă.", - "LOCK_TO_SINGLE_CONVERSATION": "Blocarea la o singură conversație", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Activarea sau dezactivarea mai multor conversații pentru aceeași persoană de contact în acest inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Setări Inbox", "INBOX_UPDATE_SUB_TEXT": "Actualizează setările de inbox", "AUTO_ASSIGNMENT_SUB_TEXT": "Activează sau dezactivează atribuirea automată a conversațiilor noi la agenții adăugați la această căsuță poștală.", @@ -758,6 +765,7 @@ "LABEL": "Asistenta", "PLACEHOLDER": "Selectați Centrul de ajutor", "SELECT_PLACEHOLDER": "Selectați Centrul de ajutor", + "NONE": "Nimic", "REMOVE": "Eliminarea Centrului de ajutor", "SUB_TEXT": "Atașarea unui Centru de ajutor cu inboxul" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Vă rugăm să introduceți o valoare mai mare de 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limitați numărul maxim de conversații din acest inbox care pot fi atribuite automat unui agent" }, + "ASSIGNMENT": { + "TITLE": "Atribuirea conversației", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Activ", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Renunță", + "CONFIRM_DELETE": "Şterge", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reautorizează", "SUBTITLE": "Conexiunea ta de Facebook a expirat, te rugăm să-ți reconectezi pagina de Facebook pentru a continua serviciile", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Mergeți înapoi" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Mesaj indisponibil pentru vizitatori", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Zi", + "AVAILABILITY": "Disponibilitate", + "HOURS": "Hours", "ENABLE": "Activați disponibilitatea pentru această zi", "UNAVAILABLE": "Indisponibil", - "HOURS": "ore", "VALIDATION_ERROR": "Ora de începere ar trebui să fie înainte de ora închiderii.", "CHOOSE": "Alege" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Într-o zi" }, "WIDGET_COLOR_LABEL": "Culoare widget", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Poziția", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Tip", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tip:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Discută cu noi", - "LABEL": "Widget Bubble Launcher Titlu", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Discută cu noi" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Implicit", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "De obicei, răspunsurile în câteva minute", diff --git a/app/javascript/dashboard/i18n/locale/ro/integrationApps.json b/app/javascript/dashboard/i18n/locale/ro/integrationApps.json index fa12043aa..74260f3e3 100644 --- a/app/javascript/dashboard/i18n/locale/ro/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ro/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Preluarea integrărilor", "NO_HOOK_CONFIGURED": "Nu există integrări {integrationId} configurate în acest cont.", "HEADER": "Aplicatii", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Activat", "DISABLED": "Dezactivat" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Preluarea cârligelor de integrare", "INBOX": "Inbox", + "ACTIONS": "Actiuni", "DELETE": { "BUTTON_TEXT": "Şterge" } diff --git a/app/javascript/dashboard/i18n/locale/ro/integrations.json b/app/javascript/dashboard/i18n/locale/ro/integrations.json index cb5ffc802..50a0a7b22 100644 --- a/app/javascript/dashboard/i18n/locale/ro/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ro/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Evenimente subscrise", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Renunță", "DESC": "Evenimentele Webhook vă oferă informații în timp real despre ce se întâmplă în contul dvs. Chatwoot. Introduceți un URL valid pentru a configura un callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Şterge", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesională", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Amical" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplicații tablou de bord

Aplicațiile tablou de bord permit organizațiilor să încorporeze o aplicație în tabloul de bord Chatwoot pentru a oferi contextul pentru agenții de asistență pentru clienți. Această caracteristică vă permite să creați o aplicație independent și să o încorporați în interiorul tabloului de bord pentru a furniza informații despre utilizator, comenzile lor sau istoricul plăților anterioare.

Când încorporați aplicația utilizând tabloul de bord în Chatwoot, aplicația va primi contextul conversației și al contactului ca eveniment de fereastră. Implementați un ascultător pentru evenimentul mesajului de pe pagina dvs., pentru a primi contextul.

Pentru a adăuga o nouă aplicație de tablou de bord, faceți clic pe butonul \"Adăugați o nouă aplicație de tablou de bord\".

", "DESCRIPTION": "Aplicațiile tablou de bord permit organizațiilor să încorporeze o aplicație în interiorul tabloului de bord pentru a oferi contextul agenților de asistență pentru clienți. Această caracteristică vă permite să creați o aplicație independent și să o încorporați pentru a furniza informații despre utilizator, comenzile lor sau istoricul plăților anterioare.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Nu există încă aplicații de tablou de bord configurate pe acest cont", "LOADING": "Preluarea aplicațiilor de tablou de bord...", "TABLE_HEADER": { "NAME": "Nume", - "ENDPOINT": "Punct final" + "ENDPOINT": "Punct final", + "ACTIONS": "Actiuni" }, "EDIT_TOOLTIP": "Editarea aplicației", "DELETE_TOOLTIP": "Ștergerea aplicației" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ro/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ro/labelsMgmt.json index dd4a7c1fa..e24102933 100644 --- a/app/javascript/dashboard/i18n/locale/ro/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ro/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Preluarea etichetelor", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Căutare etichete...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Nu există elemente care să corespundă acestei interogări", "LIST": { "404": "Nu există răspunsuri predefinite disponibile în acest cont.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Nume", "DESCRIPTION": "Descriere", - "COLOR": "Culoare" + "COLOR": "Culoare", + "ACTION": "Actiuni" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ro/macros.json b/app/javascript/dashboard/i18n/locale/ro/macros.json index 443a3cbd7..da1edfd78 100644 --- a/app/javascript/dashboard/i18n/locale/ro/macros.json +++ b/app/javascript/dashboard/i18n/locale/ro/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macrocomenzi", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Adaugă un nou webhook", "HEADER_BTN_TXT_SAVE": "Salvarea macrocomenzii", "LOADING": "Preluarea macrocomenzilor", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Ceva nu a mers bine. Vă rugăm să încercați din nou", "ORDER_INFO": "Macrocomenzile vor rula în ordinea în care adăugați acțiunile. Le puteți rearanja trăgându-le de mânerul de lângă fiecare nod.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Nume", "CREATED BY": "Creat de", "LAST_UPDATED_BY": "Ultima actualizare de către", - "VISIBILITY": "Vizibilitate" + "VISIBILITY": "Vizibilitate", + "ACTIONS": "Actiuni" }, "404": "Nu s-au găsit macrocomenzi" }, diff --git a/app/javascript/dashboard/i18n/locale/ro/mfa.json b/app/javascript/dashboard/i18n/locale/ro/mfa.json index 89f9dacf8..420e46f5a 100644 --- a/app/javascript/dashboard/i18n/locale/ro/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ro/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ro/report.json b/app/javascript/dashboard/i18n/locale/ro/report.json index a41f15393..fb1f2d9d4 100644 --- a/app/javascript/dashboard/i18n/locale/ro/report.json +++ b/app/javascript/dashboard/i18n/locale/ro/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversații", "LOADING_CHART": "Încărcare date grafic...", "NO_ENOUGH_DATA": "Nu am primit suficiente date pentru a genera raportul. Vă rugăm să încercați din nou mai târziu.", - "DOWNLOAD_AGENT_REPORTS": "Descărcați rapoartele agenților", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Preluarea datelor a eșuat, te rugăm să încerci din nou mai târziu.", "SUMMARY_FETCHING_FAILED": "Preluarea rezumatului a eșuat, te rugăm să încerci mai târziu.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Prezentare generală a agenților", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Încărcare date grafic...", "NO_ENOUGH_DATA": "Nu am primit suficiente date pentru a genera raportul. Vă rugăm să încercați din nou mai târziu.", "DOWNLOAD_AGENT_REPORTS": "Descărcați rapoartele agenților", "FILTER_DROPDOWN_LABEL": "Selectează agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Agenți de căutare" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversații", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Nu am primit suficiente date pentru a genera raportul. Vă rugăm să încercați din nou mai târziu.", "DOWNLOAD_LABEL_REPORTS": "Descărcarea rapoartelor de etichete", "FILTER_DROPDOWN_LABEL": "Selectați etichetă", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Căutare etichete" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversații", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Selectați Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversații", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Prezentare generală a echipei", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Încărcare date grafic...", "NO_ENOUGH_DATA": "Nu am primit suficiente date pentru a genera raportul. Vă rugăm să încercați din nou mai târziu.", "DOWNLOAD_TEAM_REPORTS": "Descărcați rapoartele echipei", "FILTER_DROPDOWN_LABEL": "Selectați echipa", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Echipele de căutare" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversații", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Rapoarte CSAT", - "NO_RECORDS": "Nu există răspunsuri predefinite disponibile în acest cont.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Descărcați rapoartele CSAT", "DOWNLOAD_FAILED": "Descărcarea rapoartelor CSAT a eșuat", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Agenți de căutare", + "INBOXES": "Search inboxes", + "TEAMS": "Echipele de căutare", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Alege agenți" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Echipa" + }, + "RATINGS": { + "LABEL": "Evaluare" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Agent atribuit", + "AGENT_NAME": "Agent", "RATING": "Evaluare", - "FEEDBACK_TEXT": "Comentariu feedback" - } + "FEEDBACK_TEXT": "Comentariu feedback", + "CONVERSATION": "Conversație", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Răspunsuri totale", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Rata de răspuns", "TOOLTIP": "Numărul total de răspunsuri / Numărul total de mesaje de sondaj CSAT trimise * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Salvează", + "CANCEL": "Renunță", + "SAVING": "Se salvează...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ro/settings.json b/app/javascript/dashboard/i18n/locale/ro/settings.json index ee90bd7d3..14b7b9730 100644 --- a/app/javascript/dashboard/i18n/locale/ro/settings.json +++ b/app/javascript/dashboard/i18n/locale/ro/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Descărcare", "UPLOADING": "Încărcare...", - "INSTAGRAM_STORY_UNAVAILABLE": "Această poveste nu mai este disponibilă." + "INSTAGRAM_STORY_UNAVAILABLE": "Această poveste nu mai este disponibilă.", + "INSTAGRAM_STORY_REPLY": "A răspuns la povestea ta:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Vezi pe hartă" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Citiți Documente", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Caracteristici", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Facturare", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Cauta atribute" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Rezolvarea conversației", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Rezolvarea conversației", + "CANCEL": "Renunță" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Da", + "NO": "Nu" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! Nu am putut găsi niciun cont Chatwoot. Vă rugăm să creați un cont nou pentru a continua.", "NEW_ACCOUNT": "Cont Nou", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Renunță" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ro/signup.json b/app/javascript/dashboard/i18n/locale/ro/signup.json index ab33b8ddf..85d124949 100644 --- a/app/javascript/dashboard/i18n/locale/ro/signup.json +++ b/app/javascript/dashboard/i18n/locale/ro/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Creează cont", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Inregistrare", "TESTIMONIAL_HEADER": "Tot ce trebuie este un pas pentru a merge mai departe", "TESTIMONIAL_CONTENT": "Ești la un pas de a-ți angaja clienții, de a-i păstra și de a găsi altele noi.", diff --git a/app/javascript/dashboard/i18n/locale/ro/sla.json b/app/javascript/dashboard/i18n/locale/ro/sla.json index 21c9c9d63..de03f053d 100644 --- a/app/javascript/dashboard/i18n/locale/ro/sla.json +++ b/app/javascript/dashboard/i18n/locale/ro/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ro/snooze.json b/app/javascript/dashboard/i18n/locale/ro/snooze.json new file mode 100644 index 000000000..7c94fc68e --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ro/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "ore", + "DAY": "zi", + "DAYS": "days", + "WEEK": "zi", + "WEEKS": "weeks", + "MONTH": "săptămână", + "MONTHS": "months", + "YEAR": "luna", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "mâine", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "săptămâna viitoare", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "zi", + "DAY": "zi" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ro/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ro/teamsSettings.json index fa8c107bf..05774501f 100644 --- a/app/javascript/dashboard/i18n/locale/ro/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ro/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Echipele de căutare...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Nu există echipe create în acest cont.", "EDIT_TEAM": "Editează echipa", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nu a putut salva detaliile echipei. Încearcă din nou." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-MAIL", + "AGENT": "Agent", + "EMAIL": "E-mail", "BUTTON_TEXT": "Adaugă Agent", "ADD_AGENTS": "Adăugarea agenților în echipa ta...", "SELECT": "selectează", diff --git a/app/javascript/dashboard/i18n/locale/ru/agentBots.json b/app/javascript/dashboard/i18n/locale/ru/agentBots.json index 0dee90036..8372eceba 100644 --- a/app/javascript/dashboard/i18n/locale/ru/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ru/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Загрузка редактора...", "DESCRIPTION": "Боты — это ваши незаменимые помощники. Они берут на себя рутину, чтобы вы могли сосредоточиться на важном. Попробуйте! Управлять ботами можно на этой странице, а новых — создавать с помощью кнопки «Добавить бота».", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} бот | {n} боты", + "SEARCH_PLACEHOLDER": "Поиск ботов...", + "NO_RESULTS": "Не найдено ботов, соответствующих вашему запросу", "GLOBAL_BOT": "Система", "GLOBAL_BOT_BADGE": "Система", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Получение ботов...", "TABLE_HEADER": { "DETAILS": "Детали бота", - "URL": "URL вебхука" + "URL": "URL вебхука", + "ACTIONS": "Действия" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ru/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ru/agentMgmt.json index 17eb0f150..d8f0809b0 100644 --- a/app/javascript/dashboard/i18n/locale/ru/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Администратор", "AGENT": "Оператор" }, + "COUNT": "{n} агент | {n} агенты", "LIST": { "404": "Нет связанных с этим аккаунтом операторов", "TITLE": "Управляйте операторами вашей команды", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Не удается соединиться с сервером Woot, попробуйте позже" } }, + "SEARCH_PLACEHOLDER": "Поиск агентов...", + "NO_RESULTS": "Не найдено агентов, соответствующих вашему запросу", "SEARCH": { "NO_RESULTS": "Результаты не найдены." }, diff --git a/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json index a9fae7b84..c5f479877 100644 --- a/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Получение пользовательских атрибутов", "DESCRIPTION": "Пользовательский атрибут отслеживает дополнительную информацию о ваших контактах или разговорах, таких как план подписки или дата их первой покупки. Вы можете добавить различные типы пользовательских атрибутов, такие как текст, списки или цифры, чтобы захватить нужную вам информацию.", "LEARN_MORE": "Узнайте больше о пользовательских атрибутах", + "COUNT": "{n} атрибут | {n} атрибутов", + "SEARCH_PLACEHOLDER": "Поиск по атрибутам...", + "NO_RESULTS": "Не найдено атрибутов, соответствующих вашему запросу", "ATTRIBUTE_MODELS": { "CONVERSATION": "Диалоги", "CONTACT": "Контакт" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Включить проверку регулярных выражений" + }, + "BADGES": { + "PRE_CHAT": "Пре-чат", + "RESOLUTION": "Разрешение" } }, "API": { @@ -131,8 +138,8 @@ } }, "BADGES": { - "PRE_CHAT": "Pre-chat", - "RESOLUTION": "Resolution" + "PRE_CHAT": "Пре-чат", + "RESOLUTION": "Разрешение" } } } diff --git a/app/javascript/dashboard/i18n/locale/ru/automation.json b/app/javascript/dashboard/i18n/locale/ru/automation.json index 5c9e187b3..ea26a6059 100644 --- a/app/javascript/dashboard/i18n/locale/ru/automation.json +++ b/app/javascript/dashboard/i18n/locale/ru/automation.json @@ -3,8 +3,11 @@ "HEADER": "Автоматизация", "DESCRIPTION": "Автоматизация может заменить и упростить существующие процессы, которые требуют ручной работы, такие как добавление меток и распределение разговоров на наиболее подходящего агента. Это позволяет команде сосредоточиться на своих сильных сторонах, сокращая время, затраченное на рутинные задачи.", "LEARN_MORE": "Узнайте больше об автоматизации", - "HEADER_BTN_TXT": "Добавить правило автоматизации", + "COUNT": "{n} автоматизация | {n} автоматизаций", + "HEADER_BTN_TXT": "Создать автоматизацию", "LOADING": "Получение правил автоматизации", + "SEARCH_PLACEHOLDER": "Поиск правил автоматизации...", + "NO_RESULTS": "Не найдено правил автоматизации, соответствующих вашему запросу", "ADD": { "TITLE": "Добавить правило автоматизации", "SUBMIT": "Создать", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Имя", - "DESCRIPTION": "Описание", "ACTIVE": "Активно", - "CREATED_ON": "Создано" + "CREATED_ON": "Создано", + "ACTIONS": "Действия" }, "404": "Правила автоматизации не найдены" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Добавить личную заметку", "CHANGE_PRIORITY": "Изменить приоритет", "ADD_SLA": "Добавить SLA", - "OPEN_CONVERSATION": "Открыть беседу" + "OPEN_CONVERSATION": "Открыть беседу", + "PENDING_CONVERSATION": "Пометить разговор как ожидающий" }, "MESSAGE_TYPES": { "INCOMING": "Входящее сообщение", diff --git a/app/javascript/dashboard/i18n/locale/ru/bulkActions.json b/app/javascript/dashboard/i18n/locale/ru/bulkActions.json index a11844008..4e26ddff5 100644 --- a/app/javascript/dashboard/i18n/locale/ru/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ru/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Статус беседы успешно обновлен.", "UPDATE_FAILED": "Не удалось обновить диалоги, попробуйте еще раз." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Невозможно разрешить разговоры из-за отсутствия необходимых атрибутов", + "PARTIAL_SUCCESS": "Некоторые разговоры требуют атрибутов перед их разрешением и были пропущены" + }, "LABELS": { "ASSIGN_LABELS": "Назначить метки", "NO_LABELS_FOUND": "Метки не найдены", diff --git a/app/javascript/dashboard/i18n/locale/ru/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ru/cannedMgmt.json index dfd34fde8..f0e3d37df 100644 --- a/app/javascript/dashboard/i18n/locale/ru/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Шаблонные ответы", "LEARN_MORE": "Подробнее о шаблонных ответах", "DESCRIPTION": "Шаблоны ответов - это предварительно написанные шаблоны ответов, которые помогут вам быстро в диалог. Агенты могут ввести символ '/', за которым следует команда, чтобы вставить готовый ответ во время диалога. ", + "COUNT": "{n} шаблонный ответ | {n} шаблонных ответов", "HEADER_BTN_TXT": "Добавить шаблонный ответ", "LOADING": "Загружаем шаблонные ответы...", + "SEARCH_PLACEHOLDER": "Поиск шаблонных ответов...", + "NO_RESULTS": "Не найдены шаблонные ответы, соответствующие вашему запросу", "SEARCH_404": "Нет категорий, соответствующих запросу.", "LIST": { "404": "У вас нет шаблонных ответов.", diff --git a/app/javascript/dashboard/i18n/locale/ru/chatlist.json b/app/javascript/dashboard/i18n/locale/ru/chatlist.json index e5bd927fc..ac97ef2aa 100644 --- a/app/javascript/dashboard/i18n/locale/ru/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ru/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Ожидающие ответа: сначала новые" + }, + "priority_desc_created_at_asc": { + "TEXT": "Приоритет: Сначала высокие, Создано: Сначала старые" } }, "ATTACHMENTS": { @@ -104,7 +107,7 @@ "CONTENT": "Общий контакт" }, "embed": { - "CONTENT": "Embedded content" + "CONTENT": "Встроенный контент" } }, "CHAT_SORT_BY_FILTER": { diff --git a/app/javascript/dashboard/i18n/locale/ru/companies.json b/app/javascript/dashboard/i18n/locale/ru/companies.json index 85c9cf86e..87c460e21 100644 --- a/app/javascript/dashboard/i18n/locale/ru/companies.json +++ b/app/javascript/dashboard/i18n/locale/ru/companies.json @@ -7,7 +7,7 @@ "NAME": "Имя", "DOMAIN": "Домен", "CREATED_AT": "Дата создания", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Количество контактов" } }, "ORDER": { @@ -20,7 +20,7 @@ "SEARCH_PLACEHOLDER": "Поиск компаний...", "LOADING": "Загрузка компаний...", "UNNAMED": "Безымянная компания", - "CONTACTS_COUNT": "{n} контакт | {n} контакта(-ов)", + "CONTACTS_COUNT": "{n} Контакт | {n} Контакта | Контактов", "EMPTY_STATE": { "TITLE": "Компаний не найдено" } diff --git a/app/javascript/dashboard/i18n/locale/ru/contact.json b/app/javascript/dashboard/i18n/locale/ru/contact.json index 3022657ce..029e658d1 100644 --- a/app/javascript/dashboard/i18n/locale/ru/contact.json +++ b/app/javascript/dashboard/i18n/locale/ru/contact.json @@ -18,8 +18,8 @@ "CREATED_AT_LABEL": "Создан", "NEW_MESSAGE": "Новое сообщение", "CALL": "Вызов", - "CALL_INITIATED": "Calling the contact…", - "CALL_FAILED": "Unable to start the call. Please try again.", + "CALL_INITIATED": "Вызов контакта…", + "CALL_FAILED": "Не удалось начать вызов. Повторите попытку.", "VOICE_INBOX_PICKER": { "TITLE": "Выберите голосовую почту" }, @@ -457,8 +457,11 @@ "INSTAGRAM": { "PLACEHOLDER": "Добавить Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Добавить Telegram" + }, "TIKTOK": { - "PLACEHOLDER": "Add TikTok" + "PLACEHOLDER": "Добавить TikTok" }, "LINKEDIN": { "PLACEHOLDER": "Добавить LinkedIn" @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Нет контактов по вашему запросу 🔍", "LIST_EMPTY_STATE_TITLE": "Нет контактов в этом виде 📋", "ACTIVE_EMPTY_STATE_TITLE": "В данный момент нет активных контактов 🌙" - } + }, + "LOAD_MORE": "Загрузить ещё" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Назначить метки", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "Нет доступных входящих для начала разговора с этим контактом.", "CONTACT_SELECTOR": { "LABEL": "Кому:", - "TAG_INPUT_PLACEHOLDER": "Поиск контакта с именем, email или номером телефона", + "TAG_INPUT_PLACEHOLDER": "Введите не менее 2 символов для поиска по имени, электронной почте или номеру телефона", "CONTACT_CREATING": "Создание контакта..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Тема :", "SUBJECT_PLACEHOLDER": "Введите тему email", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Поиск контакта с email адресом", + "CC_PLACEHOLDER": "Введите не менее 2 символов для поиска по электронной почте", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Поиск контакта с email адресом", + "BCC_PLACEHOLDER": "Введите не менее 2 символов для поиска по электронной почте", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ru/conversation.json b/app/javascript/dashboard/i18n/locale/ru/conversation.json index 9d4901b9b..fcfcbc011 100644 --- a/app/javascript/dashboard/i18n/locale/ru/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ru/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "Это сообщение не поддерживается. Вы можете просмотреть это сообщение в приложении Facebook / Instagram.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Это сообщение не поддерживается. Вы можете просмотреть это сообщение в приложении Facebook Messenger.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Это сообщение не поддерживается. Вы можете просмотреть это сообщение в приложении Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "Это сообщение не поддерживается. Вы можете просмотреть это сообщение в приложении TikTok.", "SUCCESS_DELETE_MESSAGE": "Сообщение успешно удалено", "FAIL_DELETE_MESSSAGE": "Не удалось удалить сообщение! Попробуйте еще раз", "NO_RESPONSE": "Нет ответа", @@ -173,6 +174,10 @@ "SUCCESFUL": "Назначена метка #{labelName} диалогу {conversationId}", "FAILED": "Не удалось назначить метку. Пожалуйста, попробуйте еще раз." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Удалена метка #{labelName} из диалога с ID {conversationId}", + "FAILED": "Не удалось удалить метку. Пожалуйста, попробуйте еще раз." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Назначена метка #{team} в разговор id {conversationId}", "FAILED": "Не удалось назначить команду. Пожалуйста, попробуйте еще раз." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Отключить подпись", "MSG_INPUT": "Shift + enter чтобы начать новую строку. Начните с '/', чтобы выбрать шаблонный ответ.", "PRIVATE_MSG_INPUT": "Shift + enter для новой строки. Это будет видно только Операторам", + "MESSAGING_RESTRICTED": "Вы не можете отвечать в этот диалог", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Подпись сообщения не настроена, пожалуйста настройте её в настройках профиля.", + "COPILOT_MSG_INPUT": "Задайте Copilot дополнительные промпты или спросите что-нибудь другое... Нажмите Enter, чтобы дополнить информацию", "CLICK_HERE": "Нажмите здесь, чтобы обновить", "WHATSAPP_TEMPLATES": "Шаблоны Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Перетащите сюда, чтобы прикрепить", "START_AUDIO_RECORDING": "Начать запись аудио", "STOP_AUDIO_RECORDING": "Остановить запись аудио", - "": "", + "COPILOT_THINKING": "Copilot думает", "EMAIL_HEAD": { "TO": "ДО", "ADD_BCC": "Добавить bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Диалог удален", "FAIL_DELETE_CONVERSATION": "Не удалось удалить диалог! Попробуйте снова", "FILE_SIZE_LIMIT": "Превышен лимит вложений в {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "Тип файла {fileName} не поддерживается в этом диалоге", "MESSAGE_ERROR": "Не удается отправить это сообщение, повторите попытку позже", "SENT_BY": "Отправитель:", "BOT": "Бот", + "NATIVE_APP": "Нативное приложение", + "NATIVE_APP_ADVISORY": "Это сообщение было отправлено из нативного приложения. Ответьте через ChatWoot, чтобы продолжить диалог.", "SEND_FAILED": "Не удалось удалить сообщение! Попробуйте еще раз", "TRY_AGAIN": "повторить", "ASSIGNMENT": { @@ -281,10 +293,10 @@ "OUTGOING_CALL": "Исходящий звонок", "CALL_IN_PROGRESS": "Идёт звонок", "NOT_ANSWERED_YET": "Пока нет ответа", - "HANDLED_IN_ANOTHER_TAB": "Being handled in another tab", - "REJECT_CALL": "Reject", - "JOIN_CALL": "Join call", - "END_CALL": "End call" + "HANDLED_IN_ANOTHER_TAB": "Обрабатывается в другой вкладке", + "REJECT_CALL": "Отклонить", + "JOIN_CALL": "Присоединиться к звонку", + "END_CALL": "Завершить звонок" } }, "EMAIL_TRANSCRIPT": { @@ -294,6 +306,7 @@ "CANCEL": "Отменить", "SEND_EMAIL_SUCCESS": "Субтитры чата успешно отправлены", "SEND_EMAIL_ERROR": "Произошла ошибка, попробуйте еще раз", + "SEND_EMAIL_PAYMENT_REQUIRED": "Отправка транскрипта на электронную почту не поддерживается вашим планом. Пожалуйста, обновите план, чтобы получить доступ к этой функции.", "FORM": { "SEND_TO_CONTACT": "Отправить субтитры клиенту", "SEND_TO_AGENT": "Отправить транскрипт назначенному агенту", diff --git a/app/javascript/dashboard/i18n/locale/ru/customRole.json b/app/javascript/dashboard/i18n/locale/ru/customRole.json index 31abacb30..2cd2ced06 100644 --- a/app/javascript/dashboard/i18n/locale/ru/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ru/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Пользовательские роли", "LEARN_MORE": "Узнать больше о пользовательских ролях", "DESCRIPTION": "Пользовательские роли — это роли, созданные владельцем учетной записи или администратором. Эти роли могут быть назначены агентам для определения их доступа и прав доступа к аккаунту. Пользовательские роли могут быть созданы с определенными разрешениями и уровнями доступа в соответствии с требованиями организации.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Добавить роль", "LOADING": "Загрузка пользовательских ролей...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Нет категорий, соответствующих запросу.", "PAYWALL": { "TITLE": "Обновитесь для создания пользовательских роли", diff --git a/app/javascript/dashboard/i18n/locale/ru/datePicker.json b/app/javascript/dashboard/i18n/locale/ru/datePicker.json index d270c37df..f2482e2eb 100644 --- a/app/javascript/dashboard/i18n/locale/ru/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ru/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Применить", "CLEAR_BUTTON": "Сбросить", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Последние 3 месяца", "LAST_6_MONTHS": "Последние 6 месяцев", "LAST_YEAR": "За прошлый год", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Настраиваемый диапазон даты" } } diff --git a/app/javascript/dashboard/i18n/locale/ru/general.json b/app/javascript/dashboard/i18n/locale/ru/general.json index 1e3c9d512..23f41885e 100644 --- a/app/javascript/dashboard/i18n/locale/ru/general.json +++ b/app/javascript/dashboard/i18n/locale/ru/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Закрыть", "BETA": "Бета", - "BETA_DESCRIPTION": "Эта функция находится в бета-версии и может измениться по мере её улучшения." + "BETA_DESCRIPTION": "Эта функция находится в бета-версии и может измениться по мере её улучшения.", + "ACCEPT": "Accept", + "DISCARD": "Сбросить", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Да", + "NO": "Нет" } } diff --git a/app/javascript/dashboard/i18n/locale/ru/generalSettings.json b/app/javascript/dashboard/i18n/locale/ru/generalSettings.json index fc3e14a1d..66a41b21a 100644 --- a/app/javascript/dashboard/i18n/locale/ru/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ru/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Искать или перейти к", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Главное", "REPORTS": "Отчёты", diff --git a/app/javascript/dashboard/i18n/locale/ru/helpCenter.json b/app/javascript/dashboard/i18n/locale/ru/helpCenter.json index 748d86257..8f88b2b7f 100644 --- a/app/javascript/dashboard/i18n/locale/ru/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ru/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Ошибка при удалении статьи" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Пожалуйста, добавьте заголовок статьи и контент, а затем только вы можете обновить настройки" }, diff --git a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json index 1cffc97e6..8422b577e 100644 --- a/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Источники", "DESCRIPTION": "Канал — это способ коммуникации, который ваш клиент выбирает для связи с вами. Входящие — это место, где вы управляете диалогами для определенного канала. Он может включать диалоги из различных источников, таких как электронная почта, онлайн чат или социальные сети.", "LEARN_MORE": "Узнать больше о «Входящих»", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Входящие сообщения отключены. Вы не будете получать новые сообщения пока не пройдете авторизацию повторно.", "CLICK_TO_RECONNECT": "Нажмите здесь для повторного подключения.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Ваша регистрация в WhatsApp Business не завершена. Пожалуйста, проверьте статус отображения в Meta Business Manager перед повторным подключением.", @@ -575,7 +578,7 @@ "SUBTITLE": "Используйте только сконфигурированное бизнес-имя отправителя в заголовке электронной почты." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Настройте название вашей компании", + "BUTTON_TEXT": "Настройте название вашей компании", "PLACEHOLDER": "Введите название вашей компании", "SAVE_BUTTON_TEXT": "Сохранить" } @@ -589,8 +592,10 @@ "DISABLED": "Выключено" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Включено", - "DISABLED": "Выключено" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Включить" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Здоровье аккаунта", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Управление учетной записью WhatsApp", "DESCRIPTION": "Проверьте состояние учетной записи WhatsApp, ограничения на сообщения и качество. Обновите настройки или решите проблемы при необходимости", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Включить/выключить отображение имени Сотрудника в электронной почте, если отключено, он будет показывать бизнес-имя", "ENABLE_CONTINUITY_VIA_EMAIL": "Включить непрерывность диалогов по электронной почте", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Диалоги будут продолжаться по электронной почте, если доступен контактный адрес электронной почты.", - "LOCK_TO_SINGLE_CONVERSATION": "Заблокировать один диалог", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Включение или отключение нескольких диалогов для одного и того же контакта в этой папке «Входящие»", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Настройки источника", "INBOX_UPDATE_SUB_TEXT": "Изменить настройки источника", "AUTO_ASSIGNMENT_SUB_TEXT": "Включить или отключить автоматическое назначение новых разговоров к агентам, добавленным к этому источнику.", @@ -758,6 +765,7 @@ "LABEL": "Центр поддержки", "PLACEHOLDER": "Выберите справочный центр", "SELECT_PLACEHOLDER": "Выберите справочный центр", + "NONE": "Ничего", "REMOVE": "Удалить справочный центр", "SUB_TEXT": "Прикрепить справочный центр с помощью папки \"Входящие\"" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Пожалуйста, введите значение больше 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Ограничьте максимальное количество диалогов из этого почтового ящика, которые могут быть автоматически назначены агенту" }, + "ASSIGNMENT": { + "TITLE": "Назначения для беседы", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Удалить политику", + "POLICY_LABEL": "Назначение политики", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Активно", + "INACTIVE": "Неактивен" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Раннее созданное", + "LONGEST_WAITING": "Длительное ожидание" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "Не найдены связанные политики", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Отменить", + "CONFIRM_DELETE": "Удалить", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Войти заново", "SUBTITLE": "Ваше подключение к Facebook истекло. Пожалуйста, переподключитесь к Facebook для продолжения работы", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Вернуться" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Условие опросы", "DESCRIPTION_PREFIX": "Отправить опрос если диалог", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "Выбрать метки" }, "NOTE": "Примечание: опросы CSAT отправляются только один раз для диалога", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "Настройки CSAT успешно обновлены", "ERROR_MESSAGE": "Не удалось обновить CSAT настройки. Повторите попытку позже." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Сообщение для посетителей о недоступности", "TOGGLE_HELP": "Включение доступности для бизнеса покажет часы работы в виджете онлайн общения, даже если все менеджеры не в сети. Вне доступных часов работы - посетители могут быть предупреждены сообщением и формой предварительного чата.", "DAY": { + "DAY": "День", + "AVAILABILITY": "Доступность", + "HOURS": "Часов", "ENABLE": "Я работаю в этот день", "UNAVAILABLE": "Я не работаю в этот день", - "HOURS": "часы", "VALIDATION_ERROR": "Время начала должно предшествовать времени окончания.", "CHOOSE": "Выбрать" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Через день" }, "WIDGET_COLOR_LABEL": "Цвет виджета", - "WIDGET_BUBBLE_POSITION_LABEL": "Позиция конструктора виджетов", - "WIDGET_BUBBLE_TYPE_LABEL": "Тип рамки для виджета", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Тип:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Пообщайтесь с нами", - "LABEL": "Название виджета", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Пообщайтесь с нами" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "По умолчанию", - "CHAT": "Чат" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Обычно отвечаем в течение нескольких минут", diff --git a/app/javascript/dashboard/i18n/locale/ru/integrationApps.json b/app/javascript/dashboard/i18n/locale/ru/integrationApps.json index d709e122e..56b05c243 100644 --- a/app/javascript/dashboard/i18n/locale/ru/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ru/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Загрузка интеграций", "NO_HOOK_CONFIGURED": "В этой учетной записи не настроено ни одной {integrationId} интеграции.", "HEADER": "Приложения", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Поиск...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Включено", "DISABLED": "Выключено" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Получение хуков", "INBOX": "Электронная почта", + "ACTIONS": "Действия", "DELETE": { "BUTTON_TEXT": "Удалить" } diff --git a/app/javascript/dashboard/i18n/locale/ru/integrations.json b/app/javascript/dashboard/i18n/locale/ru/integrations.json index d27942627..3bda183ae 100644 --- a/app/javascript/dashboard/i18n/locale/ru/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ru/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot интегрируется с несколькими инструментами и сервисами, чтобы повысить эффективность вашей команды. Изучите список ниже, чтобы настроить ваши любимые приложения.", "LEARN_MORE": "Узнать больше об интеграциях", "LOADING": "Получение интеграций", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Капитан не включен на вашем аккаунте.", "CLICK_HERE_TO_CONFIGURE": "Нажмите здесь, чтобы настроить", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "События с подпиской", "LEARN_MORE": "Узнать больше о вебхуках", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Отменить", "DESC": "Вебхуки позволяют получить вам информацию о том, что происходит в вашей учетной записи Chatwoot. Пожалуйста, введите корректный URL.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Удалить", "DELETE_CONFIRMATION": { "TITLE": "Удалить интеграцию", @@ -145,7 +160,29 @@ "EXPAND": "Развернуть", "MAKE_FRIENDLY": "Изменить тон сообщения на дружеский", "MAKE_FORMAL": "Использовать официальный тон", - "SIMPLIFY": "Упростить" + "SIMPLIFY": "Упростить", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Профессиональный", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Дружелюбный" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Содержание черновика", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Панель приложений

Панель приложений, позволяют организациям встраивать приложение в панель управления Chatwoot, чтобы предоставлять контекст для агентов службы поддержки клиентов. Эта функция позволяет вам создать приложение независимо и встроить его в панель инструментов для предоставления информации о пользователях, их заказах или их предыдущей истории платежей.

Когда вы встраиваете свое приложение с помощью панели инструментов в Chatwoot, ваше приложение будет получить контекст разговора и связей событий. Реализуйте связи для события сообщения на своей странице, чтобы получать контекст.

Чтобы добавить новое приложение панели приложений, нажмите кнопку \"Добавить приложение\".

", "DESCRIPTION": "Панель приложений, позволяют организациям встраивать приложение внутри панели управления для обеспечения контекста агентов по поддержке клиентов. Эта функция позволяет создать приложение независимо и встраивать информацию о пользователе, его заказах или их истории платежей.", "LEARN_MORE": "Подробнее об интеграциях", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "В этой панели приложений не настроено ни одной интеграции", "LOADING": "Загрузка приложений...", "TABLE_HEADER": { "NAME": "Имя", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Действия" }, "EDIT_TOOLTIP": "Редактировать приложение", "DELETE_TOOLTIP": "Удалить приложение" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Создать/Связать Задачу", "LOADING": "Загрузка связанных задач...", "LOADING_ERROR": "Ошибка получения данных о связанных задачах, пожалуйста попробуйте еще раз", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Вы уверены, что хотите удалить интеграцию с Notion?", "MESSAGE": "Удаление этой интеграции приведет к удалению доступа к вашему проекту Notion и остановит все связанные функции.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Вы можете изменить или отменить ваш тарифный план в любое время" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Обновите тарифный план, чтобы получить доступ к нашим ассистентам, copilot и другим функциям.", "ASK_ADMIN": "Пожалуйста, обратитесь к вашему администратору для обновления." }, diff --git a/app/javascript/dashboard/i18n/locale/ru/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ru/labelsMgmt.json index b92bc0b62..454ec658f 100644 --- a/app/javascript/dashboard/i18n/locale/ru/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ru/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Загрузка категорий", "DESCRIPTION": "Категории помогают вам классифицировать и приоритизировать разговоры и лидеров. Вы можете назначить категорию для разговора или контакта с помощью боковой панели.", "LEARN_MORE": "Узнать больше о категориях", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Поиск меток...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Нет категорий, соответствующих запросу", "LIST": { "404": "У вас нет категорий.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Имя", "DESCRIPTION": "Описание", - "COLOR": "Цвет" + "COLOR": "Цвет", + "ACTION": "Действия" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ru/macros.json b/app/javascript/dashboard/i18n/locale/ru/macros.json index 11f8e45b0..e85de7261 100644 --- a/app/javascript/dashboard/i18n/locale/ru/macros.json +++ b/app/javascript/dashboard/i18n/locale/ru/macros.json @@ -3,9 +3,12 @@ "HEADER": "Макрос", "DESCRIPTION": "Макрос — это набор сохраненных действий, которые помогают агентам службы поддержки легко выполнять задачи. Агенты могут определить ряд действий, таких как добавление метки к беседе, отправка транскрипта электронной почты, обновление пользовательского атрибута и т. д., и выполнять их одним щелчком мыши.", "LEARN_MORE": "Узнать больше о макросах", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Добавить новый макрос", "HEADER_BTN_TXT_SAVE": "Сохранить макрос", "LOADING": "Получение макроса", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Что-то пошло не так. Попробуйте еще раз", "ORDER_INFO": "Макросы будут выполняться в том порядке, в котором вы добавите ваши действия. Вы можете изменить их порядок, перетаскивая их ручкой рядом с каждым узлом.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Имя", "CREATED BY": "Создан", "LAST_UPDATED_BY": "Обновлено", - "VISIBILITY": "Видимость" + "VISIBILITY": "Видимость", + "ACTIONS": "Действия" }, "404": "Макросы не найдены" }, diff --git a/app/javascript/dashboard/i18n/locale/ru/mfa.json b/app/javascript/dashboard/i18n/locale/ru/mfa.json index 632c74935..c0861212f 100644 --- a/app/javascript/dashboard/i18n/locale/ru/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ru/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Двухфакторная аутентификация", - "SUBTITLE": "Защитите ваш аккаунт с помощью аутентификации на базе TOTP", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Добавьте дополнительный уровень безопасности для вашего аккаунта, используя одноразовый пароль (TOTP)", "STATUS_TITLE": "Статус аутентификации", "STATUS_DESCRIPTION": "Управление настройками двухфакторной аутентификации и резервными кодами", diff --git a/app/javascript/dashboard/i18n/locale/ru/report.json b/app/javascript/dashboard/i18n/locale/ru/report.json index abb9be29b..6183528d1 100644 --- a/app/javascript/dashboard/i18n/locale/ru/report.json +++ b/app/javascript/dashboard/i18n/locale/ru/report.json @@ -3,7 +3,7 @@ "HEADER": "Диалоги", "LOADING_CHART": "Загрузка данных графика...", "NO_ENOUGH_DATA": "Недостаточно данных для создания отчета, пожалуйста, повторите попытку позже.", - "DOWNLOAD_AGENT_REPORTS": "Сказать отчёт по агентам", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Не удалось загрузить данные. Пожалуйста, попробуйте позже.", "SUMMARY_FETCHING_FAILED": "Не удалось загрузить сводку. Пожалуйста, попробуйте позже.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Обзор агентов", - "DESCRIPTION": "Легко отслеживайте эффективность работы агентов с помощью ключевых метрик, таких как количество бесед, время ответа, время решения проблем и количество решённых случаев. Нажмите на имя агента, чтобы узнать подробности.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Загрузка данных графика...", "NO_ENOUGH_DATA": "Недостаточно данных для создания отчета, пожалуйста, повторите попытку позже.", "DOWNLOAD_AGENT_REPORTS": "Сказать отчёт по агентам", "FILTER_DROPDOWN_LABEL": "Выбрать Агента", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Поиск агентов" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Диалоги", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Недостаточно данных для создания отчета, пожалуйста, повторите попытку позже.", "DOWNLOAD_LABEL_REPORTS": "Скачать отчет по меткам", "FILTER_DROPDOWN_LABEL": "Выбрать метку", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Поиск меток" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Диалоги", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Выбрать \"Входящий\" канал", "ALL_INBOXES": "Все входящие", "SEARCH_INBOX": "Поиск входящих", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Диалоги", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Обзор команды", - "DESCRIPTION": "Получите обзор работы вашей команды с основными метриками, такими как количество бесед, время ответа, время решения проблем и количество решённых случаев. Нажмите на имя команды для подробностей.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Загрузка данных графика...", "NO_ENOUGH_DATA": "Недостаточно данных для создания отчета, пожалуйста, повторите попытку позже.", "DOWNLOAD_TEAM_REPORTS": "Скачать отчет по команде", "FILTER_DROPDOWN_LABEL": "Выберите команду", + "FILTERS": { + "ADD_FILTER": "Добавить фильтр", + "CLEAR_ALL": "Очистить всё", + "NO_FILTER": "Нет доступных фильтров", + "INPUT_PLACEHOLDER": { + "TEAMS": "Поиск команд" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Диалоги", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Отчёты CSAT", - "NO_RECORDS": "Нет ответов на опрос CSAT.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Скачать отчёты CSAT", "DOWNLOAD_FAILED": "Не удалось загрузить CSAT отчёты", "FILTERS": { + "ADD_FILTER": "Добавить фильтр", + "CLEAR_ALL": "Очистить всё", + "NO_FILTER": "Нет доступных фильтров", + "INPUT_PLACEHOLDER": { + "AGENTS": "Поиск агентов", + "INBOXES": "Search inboxes", + "TEAMS": "Поиск команд", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Выберите Операторов" + "LABEL": "Оператор" + }, + "INBOXES": { + "LABEL": "Электронная почта" + }, + "TEAMS": { + "LABEL": "Команда" + }, + "RATINGS": { + "LABEL": "Оценка" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Контакт", - "AGENT_NAME": "Назначенный сотрудник", + "AGENT_NAME": "Оператор", "RATING": "Оценка", - "FEEDBACK_TEXT": "Комментарий отзыва" - } + "FEEDBACK_TEXT": "Комментарий отзыва", + "CONVERSATION": "Диалоги", + "CUSTOMER": "Customer", + "RESPONSE": "Ответ", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Всего ответов", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Доля откликов", "TOOLTIP": "Общее количество ответов / Общее количество отправленных сообщений CSAT опросов * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Сохранить", + "CANCEL": "Отменить", + "SAVING": "Сохранение...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Обновить сейчас", + "CANCEL_ANYTIME": "Вы можете изменить или отменить ваш тарифный план в любое время" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ru/settings.json b/app/javascript/dashboard/i18n/locale/ru/settings.json index ca21552db..cc7f6e985 100644 --- a/app/javascript/dashboard/i18n/locale/ru/settings.json +++ b/app/javascript/dashboard/i18n/locale/ru/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Скачать", "UPLOADING": "Загружаем...", - "INSTAGRAM_STORY_UNAVAILABLE": "Эта история больше недоступна." + "INSTAGRAM_STORY_UNAVAILABLE": "Эта история больше недоступна.", + "INSTAGRAM_STORY_REPLY": "Ответил на вашу историю:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Просмотреть на карте" @@ -378,7 +379,57 @@ "INFO_SHORT": "Автоматически отмечать оффлайн, когда вы не используете приложение." }, "DOCS": "Открыть документацию", - "SECURITY": "Безопасность" + "SECURITY": "Безопасность", + "CAPTAIN_AI": "Капитан", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Ассистент", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Возможности", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Платёж", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Поиск по атрибутам" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Решить разговор", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Решить разговор", + "CANCEL": "Отменить" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Выберите параметр" + }, + "CHECKBOX": { + "YES": "Да", + "NO": "Нет" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Обновить сейчас", + "CANCEL_ANYTIME": "Вы можете изменить или отменить ваш тарифный план в любое время" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Пожалуйста, обратитесь к вашему администратору для обновления." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ой! Мы не смогли найти ни одного аккаунта в Chatwoot. Пожалуйста, создайте новый аккаунт, чтобы продолжить.", "NEW_ACCOUNT": "Новый аккаунт", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Создать политику", "API": { "SUCCESS_MESSAGE": "Связанная политика успешно создана", - "ERROR_MESSAGE": "Не удалось создать связанную политику" + "ERROR_MESSAGE": "Не удалось создать связанную политику", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Продолжить", "CANCEL_BUTTON_LABEL": "Отменить" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Связанная политика успешно обновлена", "ERROR_MESSAGE": "Не удалось обновить связанную политику" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Сбалансированный", - "DESCRIPTION": "Назначить диалоги на основе доступной пропускной способности." + "DESCRIPTION": "Назначить диалоги на основе доступной пропускной способности.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Агент успешно удален из политики", "ERROR_MESSAGE": "Не удалось удалить агента из политики" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ru/signup.json b/app/javascript/dashboard/i18n/locale/ru/signup.json index b1e2829b1..b3856ea82 100644 --- a/app/javascript/dashboard/i18n/locale/ru/signup.json +++ b/app/javascript/dashboard/i18n/locale/ru/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Создать новый аккаунт", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Регистрация", "TESTIMONIAL_HEADER": "Все, что нужно сделать, это один шаг для продвижения вперед", "TESTIMONIAL_CONTENT": "Вы находитесь на расстоянии всего одного шага от привлечения своих клиентов, удержав их и находя новые.", diff --git a/app/javascript/dashboard/i18n/locale/ru/sla.json b/app/javascript/dashboard/i18n/locale/ru/sla.json index 2a0dbac8a..144fcf264 100644 --- a/app/javascript/dashboard/i18n/locale/ru/sla.json +++ b/app/javascript/dashboard/i18n/locale/ru/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Создать новую политику SLA", "DESCRIPTION": "Соглашения об уровне обслуживания (SLA) — это контракты, которые определяют четкие ожидания между вашей командой и клиентами. Они устанавливают стандарты времени ответа и разрешения проблем, создавая основу для подотчетности и обеспечивая последовательный, высококачественный опыт.", "LEARN_MORE": "Узнать больше о SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Загрузка SLA", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Обновите тарифный план для создания SLA", "AVAILABLE_ON": "Функция SLA доступна только в тарифных планах Business и Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "В этой учетной записи нет доступных SLA.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Проблемы, поднятые корпоративными клиентами, требующие немедленного внимания.", "TITLE_2": "Enterprise P1", "DESC_2": "Проблемы, поднятые корпоративными клиентами, требующие быстрого подтверждения." }, - "BUSINESS_HOURS_ON": "Рабочие часы включены", - "BUSINESS_HOURS_OFF": "Рабочие часы отключены", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Порог времени первого ответа", "NRT": "Порог времени следующего ответа", diff --git a/app/javascript/dashboard/i18n/locale/ru/snooze.json b/app/javascript/dashboard/i18n/locale/ru/snooze.json new file mode 100644 index 000000000..e8fd1d093 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ru/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "минут", + "HOUR": "hour", + "HOURS": "часы", + "DAY": "день", + "DAYS": "дней", + "WEEK": "день", + "WEEKS": "weeks", + "MONTH": "неделя", + "MONTHS": "months", + "YEAR": "месяц", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "завтра", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "на следующей неделе", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "из", + "AFTER": "after", + "WEEK": "день", + "DAY": "день" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ru/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ru/teamsSettings.json index 23da13f1d..761484052 100644 --- a/app/javascript/dashboard/i18n/locale/ru/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ru/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Получение команд", "DESCRIPTION": "Команды позволяют вам организовывать агентов в группы, основываясь на их обязанностях. Агент может состоять в нескольких командах. При совместной работе вы можете назначить разговоры конкретным командам.", "LEARN_MORE": "Узнать больше о командах", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Поиск команд...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "В этом аккаунте нет ни одной команды.", "EDIT_TEAM": "Редактировать команду", diff --git a/app/javascript/dashboard/i18n/locale/sh/agentBots.json b/app/javascript/dashboard/i18n/locale/sh/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/sh/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sh/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sh/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sh/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/sh/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/sh/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sh/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/sh/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sh/automation.json b/app/javascript/dashboard/i18n/locale/sh/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/sh/automation.json +++ b/app/javascript/dashboard/i18n/locale/sh/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/sh/bulkActions.json b/app/javascript/dashboard/i18n/locale/sh/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/sh/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sh/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/sh/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sh/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/sh/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/sh/chatlist.json b/app/javascript/dashboard/i18n/locale/sh/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/sh/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sh/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sh/contact.json b/app/javascript/dashboard/i18n/locale/sh/contact.json index 8e9d1dec9..48d45d737 100644 --- a/app/javascript/dashboard/i18n/locale/sh/contact.json +++ b/app/javascript/dashboard/i18n/locale/sh/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sh/conversation.json b/app/javascript/dashboard/i18n/locale/sh/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/sh/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sh/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/sh/customRole.json b/app/javascript/dashboard/i18n/locale/sh/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/sh/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sh/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sh/datePicker.json b/app/javascript/dashboard/i18n/locale/sh/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/sh/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sh/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/sh/general.json b/app/javascript/dashboard/i18n/locale/sh/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/sh/general.json +++ b/app/javascript/dashboard/i18n/locale/sh/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/sh/generalSettings.json b/app/javascript/dashboard/i18n/locale/sh/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/sh/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sh/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/sh/helpCenter.json b/app/javascript/dashboard/i18n/locale/sh/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/sh/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sh/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json index a71d8a8d4..f4571b52b 100644 --- a/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/sh/integrationApps.json b/app/javascript/dashboard/i18n/locale/sh/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/sh/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sh/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/sh/integrations.json b/app/javascript/dashboard/i18n/locale/sh/integrations.json index 983953180..a1ce02d11 100644 --- a/app/javascript/dashboard/i18n/locale/sh/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sh/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sh/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sh/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/sh/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sh/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sh/macros.json b/app/javascript/dashboard/i18n/locale/sh/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/sh/macros.json +++ b/app/javascript/dashboard/i18n/locale/sh/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sh/mfa.json b/app/javascript/dashboard/i18n/locale/sh/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/sh/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sh/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sh/report.json b/app/javascript/dashboard/i18n/locale/sh/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/sh/report.json +++ b/app/javascript/dashboard/i18n/locale/sh/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sh/settings.json b/app/javascript/dashboard/i18n/locale/sh/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/sh/settings.json +++ b/app/javascript/dashboard/i18n/locale/sh/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sh/signup.json b/app/javascript/dashboard/i18n/locale/sh/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/sh/signup.json +++ b/app/javascript/dashboard/i18n/locale/sh/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/sh/sla.json b/app/javascript/dashboard/i18n/locale/sh/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/sh/sla.json +++ b/app/javascript/dashboard/i18n/locale/sh/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/sh/snooze.json b/app/javascript/dashboard/i18n/locale/sh/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sh/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sh/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sh/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/sh/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sh/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/sk/agentBots.json b/app/javascript/dashboard/i18n/locale/sk/agentBots.json index ff05c0419..a0941f1e3 100644 --- a/app/javascript/dashboard/i18n/locale/sk/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sk/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Akcie" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sk/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sk/agentMgmt.json index 22a6ec461..74fd83a13 100644 --- a/app/javascript/dashboard/i18n/locale/sk/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrátor", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "K tomuto účtu nie sú priradení žiadni agenti", "TITLE": "Spravujte agentov vo svojom tíme", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nepodarilo sa pripojiť k serveru Woot, skúste to prosím neskôr" } }, + "SEARCH_PLACEHOLDER": "Hľadať agentov...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Žiadne výsledky neboli nájdené." }, diff --git a/app/javascript/dashboard/i18n/locale/sk/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sk/attributesMgmt.json index 8a2f1ae90..84ec0078c 100644 --- a/app/javascript/dashboard/i18n/locale/sk/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Hľadať atribúty...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sk/automation.json b/app/javascript/dashboard/i18n/locale/sk/automation.json index 1b945a0c1..9f7b79407 100644 --- a/app/javascript/dashboard/i18n/locale/sk/automation.json +++ b/app/javascript/dashboard/i18n/locale/sk/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Meno", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Akcie" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/sk/bulkActions.json b/app/javascript/dashboard/i18n/locale/sk/bulkActions.json index 7dee27773..878d7af8f 100644 --- a/app/javascript/dashboard/i18n/locale/sk/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sk/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Žiadne označenia neboli nájdené", diff --git a/app/javascript/dashboard/i18n/locale/sk/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sk/cannedMgmt.json index d489c1762..ccd9c012c 100644 --- a/app/javascript/dashboard/i18n/locale/sk/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Uložené odpovede", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Neexistujú žiadne položky, ktoré by zodpovedali tejto požiadavke.", "LIST": { "404": "Žiadne uložené odpovede nie sú k dispozícii pre tento účet.", diff --git a/app/javascript/dashboard/i18n/locale/sk/chatlist.json b/app/javascript/dashboard/i18n/locale/sk/chatlist.json index 7a133b29b..0a5887279 100644 --- a/app/javascript/dashboard/i18n/locale/sk/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sk/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sk/contact.json b/app/javascript/dashboard/i18n/locale/sk/contact.json index 574ae2c03..fa3d6a923 100644 --- a/app/javascript/dashboard/i18n/locale/sk/contact.json +++ b/app/javascript/dashboard/i18n/locale/sk/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Žiadny kontakt nezodpovedá vášmu vyhľadávaniu 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Pre:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Predmet :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Kópia:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Skrytá kópia:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Skrytá kópia" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sk/conversation.json b/app/javascript/dashboard/i18n/locale/sk/conversation.json index b2952230d..739cf7ef8 100644 --- a/app/javascript/dashboard/i18n/locale/sk/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sk/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Správa bola úspešne odstránená", "FAIL_DELETE_MESSSAGE": "Správu sa nepodarilo vymazať! Skúste to znova", "NO_RESPONSE": "Žiadna odpoveď", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter pre nový riadok. Ak chcete vybrať Uloženú odpoveď, začnite klávesou '/'.", "PRIVATE_MSG_INPUT": "Shift + enter pre nový riadok. Toto bude viditeľné len pre agentov", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Potiahnite sem na pripojenie", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Pridať skrytú kópiu", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Zrušiť", "SEND_EMAIL_SUCCESS": "Prepis chatu bol úspešne odoslaný", "SEND_EMAIL_ERROR": "Vyskytla sa chyba, skúste to prosím znova", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Odoslať prepis chatu zákazníkovi", "SEND_TO_AGENT": "Odoslať prepis pridelenému agentovi", diff --git a/app/javascript/dashboard/i18n/locale/sk/customRole.json b/app/javascript/dashboard/i18n/locale/sk/customRole.json index 1b8a99424..cbc1d6c93 100644 --- a/app/javascript/dashboard/i18n/locale/sk/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sk/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Neexistujú žiadne položky, ktoré by zodpovedali tejto požiadavke.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sk/datePicker.json b/app/javascript/dashboard/i18n/locale/sk/datePicker.json index 82b17722e..3309f60a8 100644 --- a/app/javascript/dashboard/i18n/locale/sk/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sk/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Použiť", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Posledné 3 mesiace", "LAST_6_MONTHS": "Posledných 6 mesiacov", "LAST_YEAR": "Posledný rok", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Vlastný rozsah dátumov" } } diff --git a/app/javascript/dashboard/i18n/locale/sk/general.json b/app/javascript/dashboard/i18n/locale/sk/general.json index b117898d4..f73a747d9 100644 --- a/app/javascript/dashboard/i18n/locale/sk/general.json +++ b/app/javascript/dashboard/i18n/locale/sk/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Zatvoriť", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Áno", + "NO": "Nie" } } diff --git a/app/javascript/dashboard/i18n/locale/sk/generalSettings.json b/app/javascript/dashboard/i18n/locale/sk/generalSettings.json index 8b08c54e2..53695a3a8 100644 --- a/app/javascript/dashboard/i18n/locale/sk/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sk/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Hľadať alebo ísť na", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Všeobecné", "REPORTS": "Reporty", diff --git a/app/javascript/dashboard/i18n/locale/sk/helpCenter.json b/app/javascript/dashboard/i18n/locale/sk/helpCenter.json index 0c9f1c823..d5227a810 100644 --- a/app/javascript/dashboard/i18n/locale/sk/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sk/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json index 9e2fb73d3..0a6ddfc47 100644 --- a/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Vypnuté" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Zapnuté", - "DISABLED": "Vypnuté" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Zapnúť" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Žiadne", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Zrušiť", + "CONFIRM_DELETE": "Vymazať", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Znova autorizovať", "SUBTITLE": "Vaše pripojenie k Facebooku vypršalo, pre pokračovanie v službách prosím znovu pripojte svoju stránku na Facebooku", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Správa pre návštevníkov pri nedostupnosti", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Dostupnosť", + "HOURS": "Hours", "ENABLE": "Povolenie dostupnosti pre tento deň", "UNAVAILABLE": "Neodstupné", - "HOURS": "hodiny", "VALIDATION_ERROR": "Začiatočný čas by mal byť pred zatváracím časom.", "CHOOSE": "Vybrať" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "O deň" }, "WIDGET_COLOR_LABEL": "Farba widgetu", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Četujte s nami", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Četujte s nami" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Zvyčajne odpovedá do niekoľkých minút", diff --git a/app/javascript/dashboard/i18n/locale/sk/integrationApps.json b/app/javascript/dashboard/i18n/locale/sk/integrationApps.json index 94a78c219..4a6b20120 100644 --- a/app/javascript/dashboard/i18n/locale/sk/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sk/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Zapnuté", "DISABLED": "Vypnuté" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Schránka", + "ACTIONS": "Akcie", "DELETE": { "BUTTON_TEXT": "Vymazať" } diff --git a/app/javascript/dashboard/i18n/locale/sk/integrations.json b/app/javascript/dashboard/i18n/locale/sk/integrations.json index df29ccdbc..0fb7b149e 100644 --- a/app/javascript/dashboard/i18n/locale/sk/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sk/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Zrušiť", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Vymazať", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Meno", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Akcie" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sk/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sk/labelsMgmt.json index cd2a86fbc..9d5f890c3 100644 --- a/app/javascript/dashboard/i18n/locale/sk/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sk/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Hľadaj označenia...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Neexistujú žiadne položky, ktoré by zodpovedali tejto požiadavke", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Meno", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Akcie" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sk/macros.json b/app/javascript/dashboard/i18n/locale/sk/macros.json index c72181013..784ba59a2 100644 --- a/app/javascript/dashboard/i18n/locale/sk/macros.json +++ b/app/javascript/dashboard/i18n/locale/sk/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Meno", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Akcie" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sk/mfa.json b/app/javascript/dashboard/i18n/locale/sk/mfa.json index 134c98d4a..4ff8d73d5 100644 --- a/app/javascript/dashboard/i18n/locale/sk/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sk/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sk/report.json b/app/javascript/dashboard/i18n/locale/sk/report.json index 65d7182d0..e7c7b4e25 100644 --- a/app/javascript/dashboard/i18n/locale/sk/report.json +++ b/app/javascript/dashboard/i18n/locale/sk/report.json @@ -3,7 +3,7 @@ "HEADER": "Rozhovory", "LOADING_CHART": "Načítanie grafu...", "NO_ENOUGH_DATA": "Na vygenerovanie reportu sme nedostali dostatok dát, skúste to prosím neskôr.", - "DOWNLOAD_AGENT_REPORTS": "Stiahnutie reportov o agentoch", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Prehľad agentov", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Načítanie grafu...", "NO_ENOUGH_DATA": "Na vygenerovanie reportu sme nedostali dostatok dát, skúste to prosím neskôr.", "DOWNLOAD_AGENT_REPORTS": "Stiahnutie reportov o agentoch", "FILTER_DROPDOWN_LABEL": "Vybrat agenta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Hľadať agentov" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozhovory", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Na vygenerovanie reportu sme nedostali dostatok dát, skúste to prosím neskôr.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Hľadaj označenia" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozhovory", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozhovory", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Načítanie grafu...", "NO_ENOUGH_DATA": "Na vygenerovanie reportu sme nedostali dostatok dát, skúste to prosím neskôr.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Hľadať tímy" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Rozhovory", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Hľadať agentov", + "INBOXES": "Search inboxes", + "TEAMS": "Hľadať tímy", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Schránka" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Hodnotenia" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Hodnotenia", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Zrušiť", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sk/settings.json b/app/javascript/dashboard/i18n/locale/sk/settings.json index 8c135b325..2bef21ec6 100644 --- a/app/javascript/dashboard/i18n/locale/sk/settings.json +++ b/app/javascript/dashboard/i18n/locale/sk/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Stiahnuť", "UPLOADING": "Nahrávanie...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Hľadať atribúty" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Zrušiť" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Áno", + "NO": "Nie" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Zrušiť" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sk/signup.json b/app/javascript/dashboard/i18n/locale/sk/signup.json index 7dedca246..a03da76e4 100644 --- a/app/javascript/dashboard/i18n/locale/sk/signup.json +++ b/app/javascript/dashboard/i18n/locale/sk/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrovať", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/sk/sla.json b/app/javascript/dashboard/i18n/locale/sk/sla.json index 73df8c8d2..4fa490557 100644 --- a/app/javascript/dashboard/i18n/locale/sk/sla.json +++ b/app/javascript/dashboard/i18n/locale/sk/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/sk/snooze.json b/app/javascript/dashboard/i18n/locale/sk/snooze.json new file mode 100644 index 000000000..69ef70d73 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sk/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hodiny", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "zajtra", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "ďalší ťýždeň", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sk/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sk/teamsSettings.json index b0acc8b2a..b8353ed3b 100644 --- a/app/javascript/dashboard/i18n/locale/sk/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sk/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Hľadať tímy...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nepodarilo sa uložiť údaje o tíme. Skúste to znova." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Pridať agentov", "ADD_AGENTS": "Pridávajú sa agenti do tímu...", "SELECT": "vybrať", diff --git a/app/javascript/dashboard/i18n/locale/sl/agentBots.json b/app/javascript/dashboard/i18n/locale/sl/agentBots.json index f6beeebe8..bc8736c9d 100644 --- a/app/javascript/dashboard/i18n/locale/sl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sl/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Nalaganje urejevalnika ...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Pridobivanje botov ...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sl/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sl/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/sl/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/sl/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sl/attributesMgmt.json index f2a66668e..7d8528687 100644 --- a/app/javascript/dashboard/i18n/locale/sl/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sl/automation.json b/app/javascript/dashboard/i18n/locale/sl/automation.json index 4ce97216f..63e6f72b2 100644 --- a/app/javascript/dashboard/i18n/locale/sl/automation.json +++ b/app/javascript/dashboard/i18n/locale/sl/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Dodaj", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/sl/bulkActions.json b/app/javascript/dashboard/i18n/locale/sl/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/sl/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sl/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/sl/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sl/cannedMgmt.json index f55eb624c..c21c80802 100644 --- a/app/javascript/dashboard/i18n/locale/sl/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/sl/chatlist.json b/app/javascript/dashboard/i18n/locale/sl/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/sl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sl/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sl/contact.json b/app/javascript/dashboard/i18n/locale/sl/contact.json index 53ee2b24c..9330a3550 100644 --- a/app/javascript/dashboard/i18n/locale/sl/contact.json +++ b/app/javascript/dashboard/i18n/locale/sl/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sl/conversation.json b/app/javascript/dashboard/i18n/locale/sl/conversation.json index b894f2f2f..2adbfa36b 100644 --- a/app/javascript/dashboard/i18n/locale/sl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sl/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Predloge za WhatsApp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/sl/customRole.json b/app/javascript/dashboard/i18n/locale/sl/customRole.json index 24b3f939a..803e7e683 100644 --- a/app/javascript/dashboard/i18n/locale/sl/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sl/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sl/datePicker.json b/app/javascript/dashboard/i18n/locale/sl/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/sl/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sl/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/sl/general.json b/app/javascript/dashboard/i18n/locale/sl/general.json index 232deae6a..9be5e646a 100644 --- a/app/javascript/dashboard/i18n/locale/sl/general.json +++ b/app/javascript/dashboard/i18n/locale/sl/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/sl/generalSettings.json b/app/javascript/dashboard/i18n/locale/sl/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/sl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sl/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/sl/helpCenter.json b/app/javascript/dashboard/i18n/locale/sl/helpCenter.json index b0bafaf77..2e7c8bd75 100644 --- a/app/javascript/dashboard/i18n/locale/sl/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sl/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json index 6238b3092..3ddc84fd2 100644 --- a/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Klepetajte z nami", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Klepetajte z nami" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Običajno odgovorimo v nekaj minutah", diff --git a/app/javascript/dashboard/i18n/locale/sl/integrationApps.json b/app/javascript/dashboard/i18n/locale/sl/integrationApps.json index b91b434f7..0204eec1e 100644 --- a/app/javascript/dashboard/i18n/locale/sl/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sl/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Iskanje ...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/sl/integrations.json b/app/javascript/dashboard/i18n/locale/sl/integrations.json index ea4c1822a..d4688e927 100644 --- a/app/javascript/dashboard/i18n/locale/sl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sl/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sl/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sl/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/sl/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sl/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sl/macros.json b/app/javascript/dashboard/i18n/locale/sl/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/sl/macros.json +++ b/app/javascript/dashboard/i18n/locale/sl/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sl/mfa.json b/app/javascript/dashboard/i18n/locale/sl/mfa.json index a86db16d0..3ae6e4431 100644 --- a/app/javascript/dashboard/i18n/locale/sl/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sl/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sl/report.json b/app/javascript/dashboard/i18n/locale/sl/report.json index 6aaaabb7e..6f6e6e68a 100644 --- a/app/javascript/dashboard/i18n/locale/sl/report.json +++ b/app/javascript/dashboard/i18n/locale/sl/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Dodaj filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Dodaj filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sl/settings.json b/app/javascript/dashboard/i18n/locale/sl/settings.json index ed5652003..15aa95e8b 100644 --- a/app/javascript/dashboard/i18n/locale/sl/settings.json +++ b/app/javascript/dashboard/i18n/locale/sl/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Nalaganje...", - "INSTAGRAM_STORY_UNAVAILABLE": "Ta zgodba ni več na voljo." + "INSTAGRAM_STORY_UNAVAILABLE": "Ta zgodba ni več na voljo.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sl/signup.json b/app/javascript/dashboard/i18n/locale/sl/signup.json index d307a6d6e..da325ebfd 100644 --- a/app/javascript/dashboard/i18n/locale/sl/signup.json +++ b/app/javascript/dashboard/i18n/locale/sl/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Ustvari račun", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrirajte se", "TESTIMONIAL_HEADER": "Le še en korak, da napredujete", "TESTIMONIAL_CONTENT": "Ste le korak stran od tega, da pritegnete svoje stranke, jih obdržite in najdete nove.", diff --git a/app/javascript/dashboard/i18n/locale/sl/sla.json b/app/javascript/dashboard/i18n/locale/sl/sla.json index 023cda755..b80c2f11d 100644 --- a/app/javascript/dashboard/i18n/locale/sl/sla.json +++ b/app/javascript/dashboard/i18n/locale/sl/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Delovni čas je vklopljen", - "BUSINESS_HOURS_OFF": "Delovni čas je izklopljen", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Prag časa prvega odziva", "NRT": "Prag časa naslednjega odziva", diff --git a/app/javascript/dashboard/i18n/locale/sl/snooze.json b/app/javascript/dashboard/i18n/locale/sl/snooze.json new file mode 100644 index 000000000..80af1c084 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sl/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "dan", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "dan" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sl/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sl/teamsSettings.json index f0a950fd1..c3f90e4e3 100644 --- a/app/javascript/dashboard/i18n/locale/sl/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sl/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "E-pošta", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/sq/agentBots.json b/app/javascript/dashboard/i18n/locale/sq/agentBots.json index c7dee5d5e..6a3528425 100644 --- a/app/javascript/dashboard/i18n/locale/sq/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sq/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Botët agjentë janë si anëtarët më të mrekullueshëm të ekipit tuaj. Ata mund të merren me gjërat e vogla, që ju të përqendroheni te ato që kanë rëndësi. Provojini. Mund t'i menaxhoni botët nga kjo faqe ose të krijoni të rinj duke përdorur butonin 'Shto Bot'.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "Bot i sistemit", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Detajet e botit", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sq/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sq/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/sq/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/sq/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sq/attributesMgmt.json index 7f1adc6d1..20a3c0596 100644 --- a/app/javascript/dashboard/i18n/locale/sq/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sq/automation.json b/app/javascript/dashboard/i18n/locale/sq/automation.json index cbdf6f00c..212a77339 100644 --- a/app/javascript/dashboard/i18n/locale/sq/automation.json +++ b/app/javascript/dashboard/i18n/locale/sq/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Shto një shënim privat", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Mesazh hyrës", diff --git a/app/javascript/dashboard/i18n/locale/sq/bulkActions.json b/app/javascript/dashboard/i18n/locale/sq/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/sq/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sq/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/sq/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sq/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/sq/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/sq/chatlist.json b/app/javascript/dashboard/i18n/locale/sq/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/sq/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sq/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sq/contact.json b/app/javascript/dashboard/i18n/locale/sq/contact.json index 52c5c3122..35ccc3b08 100644 --- a/app/javascript/dashboard/i18n/locale/sq/contact.json +++ b/app/javascript/dashboard/i18n/locale/sq/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "Asnjë kontakt nuk është aktiv për momentin 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sq/conversation.json b/app/javascript/dashboard/i18n/locale/sq/conversation.json index bb904eac7..3de3e9fb6 100644 --- a/app/javascript/dashboard/i18n/locale/sq/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sq/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Biseda u fshi me sukses", "FAIL_DELETE_CONVERSATION": "Biseda nuk u fshi dot! Provoni përsëri", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/sq/customRole.json b/app/javascript/dashboard/i18n/locale/sq/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/sq/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sq/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sq/datePicker.json b/app/javascript/dashboard/i18n/locale/sq/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/sq/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sq/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/sq/general.json b/app/javascript/dashboard/i18n/locale/sq/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/sq/general.json +++ b/app/javascript/dashboard/i18n/locale/sq/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/sq/generalSettings.json b/app/javascript/dashboard/i18n/locale/sq/generalSettings.json index d657e4c4b..b76ea0e24 100644 --- a/app/javascript/dashboard/i18n/locale/sq/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sq/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/sq/helpCenter.json b/app/javascript/dashboard/i18n/locale/sq/helpCenter.json index e1991654c..d7c94bd1d 100644 --- a/app/javascript/dashboard/i18n/locale/sq/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sq/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json index caa282a8b..7d37279c8 100644 --- a/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Orë", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Zakonisht përgjigjemi brenda pak minutash", diff --git a/app/javascript/dashboard/i18n/locale/sq/integrationApps.json b/app/javascript/dashboard/i18n/locale/sq/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/sq/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sq/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/sq/integrations.json b/app/javascript/dashboard/i18n/locale/sq/integrations.json index ae72f4974..dcef81b96 100644 --- a/app/javascript/dashboard/i18n/locale/sq/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sq/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sq/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sq/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/sq/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sq/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sq/macros.json b/app/javascript/dashboard/i18n/locale/sq/macros.json index 33596e353..91e1f8e71 100644 --- a/app/javascript/dashboard/i18n/locale/sq/macros.json +++ b/app/javascript/dashboard/i18n/locale/sq/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sq/mfa.json b/app/javascript/dashboard/i18n/locale/sq/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/sq/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sq/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sq/report.json b/app/javascript/dashboard/i18n/locale/sq/report.json index bee450314..a39ab7c05 100644 --- a/app/javascript/dashboard/i18n/locale/sq/report.json +++ b/app/javascript/dashboard/i18n/locale/sq/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sq/settings.json b/app/javascript/dashboard/i18n/locale/sq/settings.json index 28949214f..e1034ba33 100644 --- a/app/javascript/dashboard/i18n/locale/sq/settings.json +++ b/app/javascript/dashboard/i18n/locale/sq/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Po ngarkohet...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sq/signup.json b/app/javascript/dashboard/i18n/locale/sq/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/sq/signup.json +++ b/app/javascript/dashboard/i18n/locale/sq/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/sq/sla.json b/app/javascript/dashboard/i18n/locale/sq/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/sq/sla.json +++ b/app/javascript/dashboard/i18n/locale/sq/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/sq/snooze.json b/app/javascript/dashboard/i18n/locale/sq/snooze.json new file mode 100644 index 000000000..2fd492c2c --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sq/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minuta", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "ditë", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sq/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sq/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/sq/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sq/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/sr/agentBots.json b/app/javascript/dashboard/i18n/locale/sr/agentBots.json index dc5cf9514..018b95ed3 100644 --- a/app/javascript/dashboard/i18n/locale/sr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sr/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Adresa veb zakačke" + "URL": "Adresa veb zakačke", + "ACTIONS": "Akcije" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json index 38a693be4..c5d6689f3 100644 --- a/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Nema agenata povezanih sa ovim nalogom", "TITLE": "Upravljajte agentima u Vašem timu", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Nije moguće se povezati sa Woot serverom, pokušajte ponovo kasnije" } }, + "SEARCH_PLACEHOLDER": "Traži agente...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Nema rezultata." }, diff --git a/app/javascript/dashboard/i18n/locale/sr/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sr/attributesMgmt.json index 5866927d3..fa3b9d008 100644 --- a/app/javascript/dashboard/i18n/locale/sr/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Prikupljanje prilagođenih atributa", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Traži atribute...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Razgovor", "CONTACT": "Kontakt" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sr/automation.json b/app/javascript/dashboard/i18n/locale/sr/automation.json index e2f86f2f9..ec9544e3e 100644 --- a/app/javascript/dashboard/i18n/locale/sr/automation.json +++ b/app/javascript/dashboard/i18n/locale/sr/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automatizacija", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Dodaj pravilo automatizacije", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Prikupljanje pravila automatizacije", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Dodaj pravilo automatizacije", "SUBMIT": "Napravi", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Ime", - "DESCRIPTION": "Opis", "ACTIVE": "Aktivno", - "CREATED_ON": "Napravljeno" + "CREATED_ON": "Napravljeno", + "ACTIONS": "Akcije" }, "404": "Nisu pronađena pravila automatizacije" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Otvoren razgovor" + "OPEN_CONVERSATION": "Otvoren razgovor", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/sr/bulkActions.json b/app/javascript/dashboard/i18n/locale/sr/bulkActions.json index 22ec6d65a..a1b651426 100644 --- a/app/javascript/dashboard/i18n/locale/sr/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sr/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Status razgovora je uspešno promenjen.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Oznake nisu pronađene", diff --git a/app/javascript/dashboard/i18n/locale/sr/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sr/cannedMgmt.json index 8ca5efb82..cfd9f6f2f 100644 --- a/app/javascript/dashboard/i18n/locale/sr/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Brzi odgovori", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Nema stavki koje se poklapaju sa upitom.", "LIST": { "404": "Ne postoje brzi odgovori u ovom nalogu.", diff --git a/app/javascript/dashboard/i18n/locale/sr/chatlist.json b/app/javascript/dashboard/i18n/locale/sr/chatlist.json index 9c44cef0b..bdce531ec 100644 --- a/app/javascript/dashboard/i18n/locale/sr/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sr/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sr/contact.json b/app/javascript/dashboard/i18n/locale/sr/contact.json index 6d01d7b47..071ee8df8 100644 --- a/app/javascript/dashboard/i18n/locale/sr/contact.json +++ b/app/javascript/dashboard/i18n/locale/sr/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Nisu pronađeni kontakti 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Dodeli oznake", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Za:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Naslov :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sr/conversation.json b/app/javascript/dashboard/i18n/locale/sr/conversation.json index 3403d3383..752efe60f 100644 --- a/app/javascript/dashboard/i18n/locale/sr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sr/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Poruka je uspešno obrisana", "FAIL_DELETE_MESSSAGE": "Nije bilo moguće obrisati poruku! Pokušajte ponovo", "NO_RESPONSE": "Nema odgovora", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Nije bilo moguće dodeliti oznaku. Molim vas pokušajte ponovo." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Dodeljen je tim \"{team}\" razgovoru sa id {conversationId}", "FAILED": "Nije bilo moguće dodeliti tim. Molim vas pokušajte ponovo." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Onemogući potpis", "MSG_INPUT": "Shift + enter za novi red. Počni sa '/' da bi ste izabrali brzi odgovor.", "PRIVATE_MSG_INPUT": "Shift + enter za novi red. Ovo će biti vidljivo samo agentima", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Potpis poruke nije podešen, molim vas podesite ga u podešavanjima profila.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Kliknite ovde da izmenite", "WHATSAPP_TEMPLATES": "Whatsapp šabloni" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Prevuci i pusti za dodavanje", "START_AUDIO_RECORDING": "Pokreni snimanje zvuka", "STOP_AUDIO_RECORDING": "Zaustavi snimanje zvuka", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Dodaj bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Nije moguće slanje poruke, molim vas pokušajte ponovo", "SENT_BY": "Poslao:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Nije bilo moguće poslati poruku! Pokušajte ponovo", "TRY_AGAIN": "pokušaj ponovo", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Otkaži", "SEND_EMAIL_SUCCESS": "Transkript razgovora je uspešno poslat", "SEND_EMAIL_ERROR": "Pojavila se greška, molim vas pokušajte ponovo", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Pošaljite transkript potrošaču", "SEND_TO_AGENT": "Pošaljite transkript dodeljenom agentu", diff --git a/app/javascript/dashboard/i18n/locale/sr/customRole.json b/app/javascript/dashboard/i18n/locale/sr/customRole.json index 6a243b9e9..b163479f6 100644 --- a/app/javascript/dashboard/i18n/locale/sr/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sr/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Nema stavki koje se poklapaju sa upitom.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sr/datePicker.json b/app/javascript/dashboard/i18n/locale/sr/datePicker.json index b41fe952a..777876d8d 100644 --- a/app/javascript/dashboard/i18n/locale/sr/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sr/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Primeni", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Poslednja 3 meseca", "LAST_6_MONTHS": "Poslednjih 6 meseci", "LAST_YEAR": "Poslednja godina", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Prilagođen opseg vremena" } } diff --git a/app/javascript/dashboard/i18n/locale/sr/general.json b/app/javascript/dashboard/i18n/locale/sr/general.json index fed40410c..64114f332 100644 --- a/app/javascript/dashboard/i18n/locale/sr/general.json +++ b/app/javascript/dashboard/i18n/locale/sr/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Zatvori", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Da", + "NO": "Ne" } } diff --git a/app/javascript/dashboard/i18n/locale/sr/generalSettings.json b/app/javascript/dashboard/i18n/locale/sr/generalSettings.json index e12643802..5d4db65fb 100644 --- a/app/javascript/dashboard/i18n/locale/sr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sr/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Pretraži ili idi na", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Opšta", "REPORTS": "Izveštaji", diff --git a/app/javascript/dashboard/i18n/locale/sr/helpCenter.json b/app/javascript/dashboard/i18n/locale/sr/helpCenter.json index f3461ef73..f1b61014c 100644 --- a/app/javascript/dashboard/i18n/locale/sr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sr/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json index 2153ec562..7bf007094 100644 --- a/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Prijemni sandučići", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Onemogućeno" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Omogućeno", - "DISABLED": "Onemogućeno" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Omogućeno" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "Izveštaj o zadovoljstvu" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Omogući nastavljanje razgovora putem e-pošte", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Razgovori će se nastaviti putem e-pošte ako je dostupna adresa e-pošte kontakta.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Podešavanja prijemnog sandučeta", "INBOX_UPDATE_SUB_TEXT": "Izmenite podešavanja vašeg prijemnog sandučeta", "AUTO_ASSIGNMENT_SUB_TEXT": "Omogući ili onemogući automatsku dodelu novih razgovora agentima dodatih ovom prijemnom sandučetu.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Niko", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Molim vas unesite vrednost veću od 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Ograničite maksimalni broj razgovora u ovom prijemnom sandučetu koja mogu biti automatski dodeljena agentu" }, + "ASSIGNMENT": { + "TITLE": "Dodeljivanje razgovoru", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktivno", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Otkaži", + "CONFIRM_DELETE": "Izbriši", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Ponovna autorizacija", "SUBTITLE": "Vaša veza sa Fejsbukom je istekla, molim vas povežite ponovo vašu Fejsbuk stranicu za nastavak servisa", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Povratak" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Poruka nedostupnosti za posetioce", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Dan", + "AVAILABILITY": "Dostupnost", + "HOURS": "Hours", "ENABLE": "Omogućite dostupnost za ovaj dan", "UNAVAILABLE": "Nedostupan", - "HOURS": "sati", "VALIDATION_ERROR": "Vreme početka bi trebalo biti pre vremena završetka.", "CHOOSE": "Izaberite" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Za dan" }, "WIDGET_COLOR_LABEL": "Boja vidžeta", - "WIDGET_BUBBLE_POSITION_LABEL": "Pozicija vidžet balončića", - "WIDGET_BUBBLE_TYPE_LABEL": "Vrsta vidžet balončića", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tip:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Razgovarajte sa nama", - "LABEL": "Naslov pokretača vidžet balončića", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Razgovarajte sa nama" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Predefinisano", - "CHAT": "Ćaskanje" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Obično odgovaramo u roku od nekoliko minuta", diff --git a/app/javascript/dashboard/i18n/locale/sr/integrationApps.json b/app/javascript/dashboard/i18n/locale/sr/integrationApps.json index f1666fb24..03e98bac1 100644 --- a/app/javascript/dashboard/i18n/locale/sr/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sr/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Preuzimanje integracija", "NO_HOOK_CONFIGURED": "Nema {integrationId} integracija podešenih na ovom nalogu.", "HEADER": "Aplikacije", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Omogućeno", "DISABLED": "Onemogućeno" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Preuzimanje zakački integracija", "INBOX": "Prijemno sanduče", + "ACTIONS": "Akcije", "DELETE": { "BUTTON_TEXT": "Izbriši" } diff --git a/app/javascript/dashboard/i18n/locale/sr/integrations.json b/app/javascript/dashboard/i18n/locale/sr/integrations.json index 82e116cff..b95dc5215 100644 --- a/app/javascript/dashboard/i18n/locale/sr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sr/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Pretplaćeni događaji", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Otkaži", "DESC": "Događaji veb zakački vam omogućavaju informacije u realnom vremenu o onome šta se događa na vašem Chatwoot nalogu. Molim vas unesite ispravnu adresu da bi ste podesili povratni poziv.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Izbriši", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Aplikacije radne table

Aplikacije radne table omogućavaju organizacijama da integrišu aplikaciju unutar Chatwoot radne table da dostave kontekst agentima podrške. Ova mogućnosti vam omogućava da napravite aplikaciju nezavisno i integrišete je unutar radne table da bi ste dostavili informacije o korisniku, njihovim narudžbama ili istoriji prethodnih plaćanja.

Kada integrišete vašu aplikaciju koristeći radnu tablu u Chatwoot-u, vaša aplikacija će dobiti kontakst razgovora i kontakta kao window događaj. Implementirajte osluškivač događaj poruke na vašoj stranici da bi ste primili kontakst.

Da bi ste dodali novu aplikaciju radne table, kliknite na dugme 'Dodaj novu aplikaciju radne table'.

", "DESCRIPTION": "Aplikacije radne table omogućavaju organizacijama da integrišu aplikaciju unutar radne table da bi omogućili kontekst agentima podrške. Ova mogućnost omogućava da nezavisno napravite aplikaciju i integrišete je da bi ste dostavili informacije o korisniku, njihovim narudžbama ili njihovoj istoriji plaćanja.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Još uvek nema aplikacija radne table podešenih za ovaj nalog", "LOADING": "Prikupljanje aplikacija radne table...", "TABLE_HEADER": { "NAME": "Ime", - "ENDPOINT": "Krajnja tačka" + "ENDPOINT": "Krajnja tačka", + "ACTIONS": "Akcije" }, "EDIT_TOOLTIP": "Uredi aplikaciju", "DELETE_TOOLTIP": "Obriši aplikaciju" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sr/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sr/labelsMgmt.json index 7d71fc8ba..322d3bad8 100644 --- a/app/javascript/dashboard/i18n/locale/sr/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sr/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Preuzimanje oznaka", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Pretraži oznake...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Nema razultata", "LIST": { "404": "Ne postoje dostupne oznake u ovom nalogu.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Ime", "DESCRIPTION": "Opis", - "COLOR": "Bojan" + "COLOR": "Bojan", + "ACTION": "Akcije" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sr/macros.json b/app/javascript/dashboard/i18n/locale/sr/macros.json index f4a346918..b3d5de505 100644 --- a/app/javascript/dashboard/i18n/locale/sr/macros.json +++ b/app/javascript/dashboard/i18n/locale/sr/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Ime", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Akcije" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sr/mfa.json b/app/javascript/dashboard/i18n/locale/sr/mfa.json index 00daffda8..cbc87418b 100644 --- a/app/javascript/dashboard/i18n/locale/sr/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sr/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sr/report.json b/app/javascript/dashboard/i18n/locale/sr/report.json index 94048d504..dceafe024 100644 --- a/app/javascript/dashboard/i18n/locale/sr/report.json +++ b/app/javascript/dashboard/i18n/locale/sr/report.json @@ -3,7 +3,7 @@ "HEADER": "Razgovori", "LOADING_CHART": "Učitavanje podataka grafikona...", "NO_ENOUGH_DATA": "Nismo primili dovoljno podataka da bi smo generisali izveštaj, Molim vas pokušajte ponovo.", - "DOWNLOAD_AGENT_REPORTS": "Preuzmi izveštaj o agentima", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Pregled agenata", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Učitavanje podataka grafikona...", "NO_ENOUGH_DATA": "Nismo primili dovoljno podataka da bi smo generisali izveštaj, Molim vas pokušajte ponovo.", "DOWNLOAD_AGENT_REPORTS": "Preuzmi izveštaj o agentima", "FILTER_DROPDOWN_LABEL": "Izaberi agenta", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Traži agente" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Razgovori", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Nismo primili dovoljno podataka da bi smo generisali izveštaj, Molim vas pokušajte ponovo.", "DOWNLOAD_LABEL_REPORTS": "Preuzmi izveštaj o oznakama", "FILTER_DROPDOWN_LABEL": "Izaberi oznaku", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Pretraži oznake" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Razgovori", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Izaberi prijemno sanduče", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Razgovori", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Pregled tima", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Učitavanje podataka grafikona...", "NO_ENOUGH_DATA": "Nismo primili dovoljno podataka da bi smo generisali izveštaj, Molim vas pokušajte ponovo.", "DOWNLOAD_TEAM_REPORTS": "Preuzmi izveštaj o timu", "FILTER_DROPDOWN_LABEL": "Izaberi tim", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Traži tim" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Razgovori", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Izveštaji zadovoljstva korisnika", - "NO_RECORDS": "Nema dostupnih odgovora o zadovoljstvu korisnika.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Preuzmite izveštaje o zadovoljstvu korisnika", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Traži agente", + "INBOXES": "Search inboxes", + "TEAMS": "Traži tim", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Izaberite agente" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Prijemno sanduče" + }, + "TEAMS": { + "LABEL": "Tim" + }, + "RATINGS": { + "LABEL": "Ocena" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Kontakt", - "AGENT_NAME": "Dodeljeni agent", + "AGENT_NAME": "Agent", "RATING": "Ocena", - "FEEDBACK_TEXT": "Komentar povratne informacije" - } + "FEEDBACK_TEXT": "Komentar povratne informacije", + "CONVERSATION": "Razgovor", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Ukupno odgovora", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Procenat odgovora", "TOOLTIP": "Ukupan broj odgovora / Ukupan broj poruka o zadovoljstvu korisnika * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Otkaži", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sr/settings.json b/app/javascript/dashboard/i18n/locale/sr/settings.json index c3ccedaa1..7ee51eb56 100644 --- a/app/javascript/dashboard/i18n/locale/sr/settings.json +++ b/app/javascript/dashboard/i18n/locale/sr/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Preuzmi", "UPLOADING": "Dodavanje...", - "INSTAGRAM_STORY_UNAVAILABLE": "Ova priča više nije dostupna." + "INSTAGRAM_STORY_UNAVAILABLE": "Ova priča više nije dostupna.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Pročitaj dokumentaciju", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Mogućnosti", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Plaćanje", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Traži atribute" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Reši razgovor", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Reši razgovor", + "CANCEL": "Otkaži" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Da", + "NO": "Ne" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "O ne! Nismo mogli da pronađemo nijedan Chatwoot nalog. Molim vas kreirajte novi da bi ste nastavili.", "NEW_ACCOUNT": "Novi nalog", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Otkaži" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sr/signup.json b/app/javascript/dashboard/i18n/locale/sr/signup.json index 520812e58..061cfd571 100644 --- a/app/javascript/dashboard/i18n/locale/sr/signup.json +++ b/app/javascript/dashboard/i18n/locale/sr/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registruj", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/sr/sla.json b/app/javascript/dashboard/i18n/locale/sr/sla.json index c47db365b..1ce06ad35 100644 --- a/app/javascript/dashboard/i18n/locale/sr/sla.json +++ b/app/javascript/dashboard/i18n/locale/sr/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/sr/snooze.json b/app/javascript/dashboard/i18n/locale/sr/snooze.json new file mode 100644 index 000000000..f801d2949 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sr/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "sati", + "DAY": "dan", + "DAYS": "days", + "WEEK": "dan", + "WEEKS": "weeks", + "MONTH": "nedelja", + "MONTHS": "months", + "YEAR": "mesec", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "sutra", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "sledeće nedelje", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "dan", + "DAY": "dan" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sr/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sr/teamsSettings.json index f10cbe93c..4474c0b28 100644 --- a/app/javascript/dashboard/i18n/locale/sr/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sr/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Traži tim...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Nema timova napravljenih na ovom nalogu.", "EDIT_TEAM": "Uredi tim", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Nije bilo moguće sačuvati detalje tima. Pokušajte ponovo." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-POŠTA", + "AGENT": "Agent", + "EMAIL": "E-pošta", "BUTTON_TEXT": "Dodaj agente", "ADD_AGENTS": "Dodaju se agenti vašem timu...", "SELECT": "izaberi", diff --git a/app/javascript/dashboard/i18n/locale/sv/agentBots.json b/app/javascript/dashboard/i18n/locale/sv/agentBots.json index fea4cd09a..0a7882e4c 100644 --- a/app/javascript/dashboard/i18n/locale/sv/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/sv/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Åtgärder" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/sv/agentMgmt.json b/app/javascript/dashboard/i18n/locale/sv/agentMgmt.json index 925b6854c..e085f858b 100644 --- a/app/javascript/dashboard/i18n/locale/sv/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administratör", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Det finns inga agenter kopplade till detta konto", "TITLE": "Hantera agenter i ditt team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Kunde inte ansluta till Woot Server, försök igen senare" } }, + "SEARCH_PLACEHOLDER": "Sök efter agenter...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Inga resultat hittades." }, diff --git a/app/javascript/dashboard/i18n/locale/sv/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/sv/attributesMgmt.json index a471b55a7..142c29549 100644 --- a/app/javascript/dashboard/i18n/locale/sv/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/sv/automation.json b/app/javascript/dashboard/i18n/locale/sv/automation.json index 0194a66d2..d77252fd7 100644 --- a/app/javascript/dashboard/i18n/locale/sv/automation.json +++ b/app/javascript/dashboard/i18n/locale/sv/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Skapa", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Namn", - "DESCRIPTION": "Beskrivning", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Åtgärder" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/sv/bulkActions.json b/app/javascript/dashboard/i18n/locale/sv/bulkActions.json index 3748497cb..77c37de0b 100644 --- a/app/javascript/dashboard/i18n/locale/sv/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/sv/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Inga etiketter hittades", diff --git a/app/javascript/dashboard/i18n/locale/sv/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/sv/cannedMgmt.json index 44618595f..c3f6c6dd9 100644 --- a/app/javascript/dashboard/i18n/locale/sv/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Svarsmallar", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Lägg till svarsmall", "LOADING": "Hämtar svarsmallar...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Det finns inga objekt som matchar denna fråga.", "LIST": { "404": "Det finns inga svarsmallar tillgängliga på detta konto.", diff --git a/app/javascript/dashboard/i18n/locale/sv/chatlist.json b/app/javascript/dashboard/i18n/locale/sv/chatlist.json index 7e2e9c7c8..b2861436b 100644 --- a/app/javascript/dashboard/i18n/locale/sv/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/sv/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/sv/contact.json b/app/javascript/dashboard/i18n/locale/sv/contact.json index c9d6be5fc..b606f442c 100644 --- a/app/javascript/dashboard/i18n/locale/sv/contact.json +++ b/app/javascript/dashboard/i18n/locale/sv/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Inga kontakter matchar din sökning 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Till:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Ämne :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/sv/conversation.json b/app/javascript/dashboard/i18n/locale/sv/conversation.json index 22ff5544b..03dd023e9 100644 --- a/app/javascript/dashboard/i18n/locale/sv/conversation.json +++ b/app/javascript/dashboard/i18n/locale/sv/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Detta meddelande stöds inte. Du kan se detta meddelande på Facebook Messenger-appen.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Detta meddelande stöds inte. Du kan se detta meddelande på Instagram-appen.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Meddelandet har tagits bort", "FAIL_DELETE_MESSSAGE": "Det gick inte att ta bort meddelande! Försök igen", "NO_RESPONSE": "Inget svar", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Inaktivera signatur", "MSG_INPUT": "Skift + Enter för ny rad. Börja med '/' för att välja en svarsmall.", "PRIVATE_MSG_INPUT": "Skift + Enter för ny rad. Detta kommer endast att vara synligt för agenter", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Meddelandesignaturen är inte konfigurerad. Konfigurera den i profilinställningarna.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Klicka här för att uppdatera", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Dra och släpp hit för att bifoga", "START_AUDIO_RECORDING": "Starta ljudinspelning", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Lägg till bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Det gick inte att skicka detta meddelande, försök igen senare", "SENT_BY": "Skickat av:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Avbryt", "SEND_EMAIL_SUCCESS": "Chattranskriberingen har skickats", "SEND_EMAIL_ERROR": "Ett fel uppstod, vänligen försök igen", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Skicka transkriberingen till kunden", "SEND_TO_AGENT": "Skicka transkriberingen till den tilldelade agenten", diff --git a/app/javascript/dashboard/i18n/locale/sv/customRole.json b/app/javascript/dashboard/i18n/locale/sv/customRole.json index cad921b3a..0ee564ca2 100644 --- a/app/javascript/dashboard/i18n/locale/sv/customRole.json +++ b/app/javascript/dashboard/i18n/locale/sv/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Det finns inga objekt som matchar denna fråga.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/sv/datePicker.json b/app/javascript/dashboard/i18n/locale/sv/datePicker.json index ff981d4a6..3f9634d72 100644 --- a/app/javascript/dashboard/i18n/locale/sv/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/sv/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "De senaste 3 månaderna", "LAST_6_MONTHS": "De senaste 6 månaderna", "LAST_YEAR": "Senaste året", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/sv/general.json b/app/javascript/dashboard/i18n/locale/sv/general.json index f6f022eef..51cfcdb0d 100644 --- a/app/javascript/dashboard/i18n/locale/sv/general.json +++ b/app/javascript/dashboard/i18n/locale/sv/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Stäng", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Ja", + "NO": "Nej" } } diff --git a/app/javascript/dashboard/i18n/locale/sv/generalSettings.json b/app/javascript/dashboard/i18n/locale/sv/generalSettings.json index bd69e0a73..1048b80bb 100644 --- a/app/javascript/dashboard/i18n/locale/sv/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/sv/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Rapporter", diff --git a/app/javascript/dashboard/i18n/locale/sv/helpCenter.json b/app/javascript/dashboard/i18n/locale/sv/helpCenter.json index f3251489c..f9ac0cb36 100644 --- a/app/javascript/dashboard/i18n/locale/sv/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/sv/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json index c667c91a3..59f2dfc94 100644 --- a/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inkorgar", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Spara" } @@ -589,8 +592,10 @@ "DISABLED": "Inaktiverad" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Aktiverad", - "DISABLED": "Inaktiverad" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Aktivera" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inkorgsinställningar", "INBOX_UPDATE_SUB_TEXT": "Uppdatera inställningarna för din inkorg", "AUTO_ASSIGNMENT_SUB_TEXT": "Aktivera eller inaktivera automatisk tilldelning av nya konversationer till de agenter som lagts till den här inkorgen.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Avbryt", + "CONFIRM_DELETE": "Radera", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Återauktorisera", "SUBTITLE": "Din Facebook-anslutning har löpt ut, vänligen återanslut din Facebook-sida för att fortsätta med tjänsterna", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Tillgänglighet", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Inom en dag" }, "WIDGET_COLOR_LABEL": "Widgetfärg", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chatta med oss", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chatta med oss" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Svarar vanligtvis inom några minuter", diff --git a/app/javascript/dashboard/i18n/locale/sv/integrationApps.json b/app/javascript/dashboard/i18n/locale/sv/integrationApps.json index f6e60b927..34b277e20 100644 --- a/app/javascript/dashboard/i18n/locale/sv/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/sv/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applikationer", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Aktiverad", "DISABLED": "Inaktiverad" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inkorg", + "ACTIONS": "Åtgärder", "DELETE": { "BUTTON_TEXT": "Radera" } diff --git a/app/javascript/dashboard/i18n/locale/sv/integrations.json b/app/javascript/dashboard/i18n/locale/sv/integrations.json index af76bd0f1..fc7c9fe5c 100644 --- a/app/javascript/dashboard/i18n/locale/sv/integrations.json +++ b/app/javascript/dashboard/i18n/locale/sv/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Avbryt", "DESC": "Webbhook-händelser ger dig realtidsinformation om vad som händer i ditt Chatwoot-konto. Ange en giltig URL för att konfigurera en callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Radera", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Namn", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Åtgärder" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/sv/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/sv/labelsMgmt.json index 2f2304ad5..3b944c6b7 100644 --- a/app/javascript/dashboard/i18n/locale/sv/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/sv/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Hämtar etiketter", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Sök etiketter...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Det finns inga objekt som matchar denna fråga", "LIST": { "404": "Det finns inga etiketter tillgängliga på detta konto.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Namn", "DESCRIPTION": "Beskrivning", - "COLOR": "Färg" + "COLOR": "Färg", + "ACTION": "Åtgärder" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sv/macros.json b/app/javascript/dashboard/i18n/locale/sv/macros.json index fd1c46728..6d9fa5ca1 100644 --- a/app/javascript/dashboard/i18n/locale/sv/macros.json +++ b/app/javascript/dashboard/i18n/locale/sv/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Namn", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Senast uppdaterad av", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Åtgärder" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/sv/mfa.json b/app/javascript/dashboard/i18n/locale/sv/mfa.json index 6e11e3fe2..95374c6f9 100644 --- a/app/javascript/dashboard/i18n/locale/sv/mfa.json +++ b/app/javascript/dashboard/i18n/locale/sv/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/sv/report.json b/app/javascript/dashboard/i18n/locale/sv/report.json index 3f0b24c94..62ae2d04f 100644 --- a/app/javascript/dashboard/i18n/locale/sv/report.json +++ b/app/javascript/dashboard/i18n/locale/sv/report.json @@ -3,7 +3,7 @@ "HEADER": "Konversationer", "LOADING_CHART": "Laddar diagramdata...", "NO_ENOUGH_DATA": "Vi har inte fått tillräckligt många datapunkter för att generera en rapport, försök igen senare.", - "DOWNLOAD_AGENT_REPORTS": "Ladda ner agentrapporter", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Laddar diagramdata...", "NO_ENOUGH_DATA": "Vi har inte fått tillräckligt många datapunkter för att generera en rapport, försök igen senare.", "DOWNLOAD_AGENT_REPORTS": "Ladda ner agentrapporter", "FILTER_DROPDOWN_LABEL": "Välj agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Sök efter agenter" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationer", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Vi har inte fått tillräckligt många datapunkter för att generera en rapport, försök igen senare.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Sök etiketter" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationer", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationer", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Laddar diagramdata...", "NO_ENOUGH_DATA": "Vi har inte fått tillräckligt många datapunkter för att generera en rapport, försök igen senare.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Sök efter team" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konversationer", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Sök efter agenter", + "INBOXES": "Search inboxes", + "TEAMS": "Sök efter team", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inkorg" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Betyg" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Betyg", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Spara", + "CANCEL": "Avbryt", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/sv/settings.json b/app/javascript/dashboard/i18n/locale/sv/settings.json index 6f550b5cd..1f4ecd714 100644 --- a/app/javascript/dashboard/i18n/locale/sv/settings.json +++ b/app/javascript/dashboard/i18n/locale/sv/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Hämta", "UPLOADING": "Laddar upp...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Funktioner", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Lös konversationen", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Lös konversationen", + "CANCEL": "Avbryt" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Ja", + "NO": "Nej" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "Nytt konto", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Avbryt" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/sv/signup.json b/app/javascript/dashboard/i18n/locale/sv/signup.json index 7b51af7e0..2dac954ca 100644 --- a/app/javascript/dashboard/i18n/locale/sv/signup.json +++ b/app/javascript/dashboard/i18n/locale/sv/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Registrera", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/sv/sla.json b/app/javascript/dashboard/i18n/locale/sv/sla.json index 185aaca35..0ca77a8ab 100644 --- a/app/javascript/dashboard/i18n/locale/sv/sla.json +++ b/app/javascript/dashboard/i18n/locale/sv/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/sv/snooze.json b/app/javascript/dashboard/i18n/locale/sv/snooze.json new file mode 100644 index 000000000..862e6c2d3 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/sv/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "imorgon", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "nästa vecka", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/sv/teamsSettings.json b/app/javascript/dashboard/i18n/locale/sv/teamsSettings.json index 4559a3780..ec3acf350 100644 --- a/app/javascript/dashboard/i18n/locale/sv/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/sv/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Sök efter team...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "E-POST", + "AGENT": "Agent", + "EMAIL": "E-post", "BUTTON_TEXT": "Lägg till agenter", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ta/agentBots.json b/app/javascript/dashboard/i18n/locale/ta/agentBots.json index 071a8c08e..351007fc1 100644 --- a/app/javascript/dashboard/i18n/locale/ta/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ta/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "வெப்ஹூக் URL" + "URL": "வெப்ஹூக் URL", + "ACTIONS": "செயல்கள்" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ta/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ta/agentMgmt.json index 2576c9c14..a6d8e8f4e 100644 --- a/app/javascript/dashboard/i18n/locale/ta/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "நிர்வாகி", "AGENT": "ஏஜென்ட்" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "இந்த கணக்குடன் எந்த ஏஜென்ட்டும் இல்லை", "TITLE": "உங்கள் அணியில் ஏஜென்ட்களை நிர்வகிக்கவும்", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "வூட் சர்வருடன் இணைக்க முடியவில்ல, மீண்டும் முயற்சிக்கவும்" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/ta/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ta/attributesMgmt.json index b68f86965..606dc81ea 100644 --- a/app/javascript/dashboard/i18n/locale/ta/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ta/automation.json b/app/javascript/dashboard/i18n/locale/ta/automation.json index db4270b90..10d93edb3 100644 --- a/app/javascript/dashboard/i18n/locale/ta/automation.json +++ b/app/javascript/dashboard/i18n/locale/ta/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "பெயர்", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "செயல்கள்" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ta/bulkActions.json b/app/javascript/dashboard/i18n/locale/ta/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/ta/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ta/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/ta/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ta/cannedMgmt.json index be9e5d27b..d5bc1c255 100644 --- a/app/javascript/dashboard/i18n/locale/ta/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "பதிவு செய்யப்பட்ட பதில்கள்", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "இந்த கணக்கில் பதிவு செய்யப்பட்ட பதில்கள் எதுவும் இல்லை.", diff --git a/app/javascript/dashboard/i18n/locale/ta/chatlist.json b/app/javascript/dashboard/i18n/locale/ta/chatlist.json index e3920a6c3..c3fa54fe4 100644 --- a/app/javascript/dashboard/i18n/locale/ta/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ta/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ta/contact.json b/app/javascript/dashboard/i18n/locale/ta/contact.json index 332bc204a..dac0a58df 100644 --- a/app/javascript/dashboard/i18n/locale/ta/contact.json +++ b/app/javascript/dashboard/i18n/locale/ta/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ta/conversation.json b/app/javascript/dashboard/i18n/locale/ta/conversation.json index 850fbab9c..cf48d5b1d 100644 --- a/app/javascript/dashboard/i18n/locale/ta/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ta/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "புதிய வரிக்கு Shift + Enter ஐ அழுத்தவும். பதிவு செய்யப்பட்ட பதிலைத் தேர்ந்தெடுக்க '/' உடன் தொடங்கவும்.", "PRIVATE_MSG_INPUT": "புதிய வரிக்கு Shift + Enter ஐ அழுத்தவும். இது ஏஜென்ட்களுக்கு மட்டுமே தெரியும்", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "ரத்துசெய்", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ta/customRole.json b/app/javascript/dashboard/i18n/locale/ta/customRole.json index 5f49dbec2..a59b02181 100644 --- a/app/javascript/dashboard/i18n/locale/ta/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ta/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ta/datePicker.json b/app/javascript/dashboard/i18n/locale/ta/datePicker.json index 60badc82d..cf438ebd2 100644 --- a/app/javascript/dashboard/i18n/locale/ta/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ta/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ta/general.json b/app/javascript/dashboard/i18n/locale/ta/general.json index f79be946e..4769872a0 100644 --- a/app/javascript/dashboard/i18n/locale/ta/general.json +++ b/app/javascript/dashboard/i18n/locale/ta/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "மூடு", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ta/generalSettings.json b/app/javascript/dashboard/i18n/locale/ta/generalSettings.json index 2a6b67810..8a4a44d43 100644 --- a/app/javascript/dashboard/i18n/locale/ta/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ta/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "அறிக்கைகள்", diff --git a/app/javascript/dashboard/i18n/locale/ta/helpCenter.json b/app/javascript/dashboard/i18n/locale/ta/helpCenter.json index d56d7527a..f623dd88c 100644 --- a/app/javascript/dashboard/i18n/locale/ta/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ta/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json index 7bf59f2cd..37028e8f5 100644 --- a/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "இன்பாக்ஸ்கள்", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "முடக்கப்பட்டது" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "இயக்கப்பட்டது", - "DISABLED": "முடக்கப்பட்டது" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "இன்பாக்ஸ் அமைப்புகள்", "INBOX_UPDATE_SUB_TEXT": "உங்கள் இன்பாக்ஸ் அமைப்புகளைப் புதுப்பிக்கவும்", "AUTO_ASSIGNMENT_SUB_TEXT": "இந்த இன்பாக்ஸில் சேர்க்கப்பட்ட ஏஜென்ட்களுக்கு புதிய உரையாடல்களின் தானியங்கி ஒதுக்கீட்டை இயக்கவும் அல்லது முடக்கவும்.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "ரத்துசெய்", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "மறு அங்கீகாரம்", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "விட்ஜெட் நிறம்", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/ta/integrationApps.json b/app/javascript/dashboard/i18n/locale/ta/integrationApps.json index dc6669cc5..79ca01a5b 100644 --- a/app/javascript/dashboard/i18n/locale/ta/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ta/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "இயக்கப்பட்டது", "DISABLED": "முடக்கப்பட்டது" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "செயல்கள்", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/ta/integrations.json b/app/javascript/dashboard/i18n/locale/ta/integrations.json index 2c5a40fbb..0bfcfdd38 100644 --- a/app/javascript/dashboard/i18n/locale/ta/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ta/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "ரத்துசெய்", "DESC": "உங்கள் சாட்வூட் கணக்கில் என்ன நடக்கிறது என்பது குறித்த நிகழ்நேர தகவல்களை வெப்ஹூக் நிகழ்வுகள் உங்களுக்கு வழங்குகின்றன. மீட்டமைக்க சரியான URL ஐ உள்ளிடவும்.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "பெயர்", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "செயல்கள்" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ta/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ta/labelsMgmt.json index c4b2b1c10..f6ecf753d 100644 --- a/app/javascript/dashboard/i18n/locale/ta/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ta/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "இந்த கேள்விக்கு பொருந்தக்கூடியவை எதுவும் இல்லை", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "பெயர்", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "செயல்கள்" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ta/macros.json b/app/javascript/dashboard/i18n/locale/ta/macros.json index dbc7d5d68..01a116fbe 100644 --- a/app/javascript/dashboard/i18n/locale/ta/macros.json +++ b/app/javascript/dashboard/i18n/locale/ta/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "பெயர்", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "செயல்கள்" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ta/mfa.json b/app/javascript/dashboard/i18n/locale/ta/mfa.json index 04ef1ee0b..8dfef7138 100644 --- a/app/javascript/dashboard/i18n/locale/ta/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ta/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ta/report.json b/app/javascript/dashboard/i18n/locale/ta/report.json index 2a8f390fe..a7d86ac01 100644 --- a/app/javascript/dashboard/i18n/locale/ta/report.json +++ b/app/javascript/dashboard/i18n/locale/ta/report.json @@ -3,7 +3,7 @@ "HEADER": "உரையாடல்கள்", "LOADING_CHART": "சார்ட்டுக்கான டேட்டாவை பெறுகிறது...", "NO_ENOUGH_DATA": "அறிக்கையை உருவாக்க போதுமான தரவுகளை பெறவில்லை, தயவுசெய்து மீண்டும் முயற்சிக்கவும்.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "சார்ட்டுக்கான டேட்டாவை பெறுகிறது...", "NO_ENOUGH_DATA": "அறிக்கையை உருவாக்க போதுமான தரவுகளை பெறவில்லை, தயவுசெய்து மீண்டும் முயற்சிக்கவும்.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "உரையாடல்கள்", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "அறிக்கையை உருவாக்க போதுமான தரவுகளை பெறவில்லை, தயவுசெய்து மீண்டும் முயற்சிக்கவும்.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "உரையாடல்கள்", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "உரையாடல்கள்", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "சார்ட்டுக்கான டேட்டாவை பெறுகிறது...", "NO_ENOUGH_DATA": "அறிக்கையை உருவாக்க போதுமான தரவுகளை பெறவில்லை, தயவுசெய்து மீண்டும் முயற்சிக்கவும்.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "உரையாடல்கள்", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "ஏஜென்ட்" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "ஏஜென்ட்", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "ரத்துசெய்", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ta/settings.json b/app/javascript/dashboard/i18n/locale/ta/settings.json index dff58595a..e04011d68 100644 --- a/app/javascript/dashboard/i18n/locale/ta/settings.json +++ b/app/javascript/dashboard/i18n/locale/ta/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "பதிவிறக்கம்", "UPLOADING": "பதிவேறுகிறது...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "ரத்துசெய்" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "ரத்துசெய்" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ta/signup.json b/app/javascript/dashboard/i18n/locale/ta/signup.json index 40a4ba953..3249d4a78 100644 --- a/app/javascript/dashboard/i18n/locale/ta/signup.json +++ b/app/javascript/dashboard/i18n/locale/ta/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "பதியவும்", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ta/sla.json b/app/javascript/dashboard/i18n/locale/ta/sla.json index 2230920d9..fdaefa34d 100644 --- a/app/javascript/dashboard/i18n/locale/ta/sla.json +++ b/app/javascript/dashboard/i18n/locale/ta/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ta/snooze.json b/app/javascript/dashboard/i18n/locale/ta/snooze.json new file mode 100644 index 000000000..f3eb3b612 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ta/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "அடுத்து", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ta/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ta/teamsSettings.json index bad9ab5ae..42fe42c8e 100644 --- a/app/javascript/dashboard/i18n/locale/ta/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ta/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "ஈ-மெயில்", + "AGENT": "ஏஜென்ட்", + "EMAIL": "இமெயில்", "BUTTON_TEXT": "ஏஜென்ட்களைச் சேர்க்க", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/th/agentBots.json b/app/javascript/dashboard/i18n/locale/th/agentBots.json index c5b2690b3..a44bb741c 100644 --- a/app/javascript/dashboard/i18n/locale/th/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/th/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "ลิ้ง Webhook" + "URL": "ลิ้ง Webhook", + "ACTIONS": "การกระทำ" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/th/agentMgmt.json b/app/javascript/dashboard/i18n/locale/th/agentMgmt.json index baafc8e91..4080c7437 100644 --- a/app/javascript/dashboard/i18n/locale/th/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "ผู้ดูเเล", "AGENT": "พนักงาน" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "ไม่มีพนักงานที่เกี่ยวข้องในบัญชีนี้", "TITLE": "จัดการพนักงานในทีมของคุณ", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "ไม่สามารถเชื่อมต่อเซิฟเวอร์ได้โปรดลองอีกครั้งในภายหลัง" } }, + "SEARCH_PLACEHOLDER": "ค้นหาพนักงาน...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "ไม่พบผลการค้นหา" }, diff --git a/app/javascript/dashboard/i18n/locale/th/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/th/attributesMgmt.json index 275cd5f09..8d095609d 100644 --- a/app/javascript/dashboard/i18n/locale/th/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "กำลังดึงแอตทริบิวต์ที่กำหนดเอง", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "การสนทนา", "CONTACT": "ผู้ติดต่อ" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/th/automation.json b/app/javascript/dashboard/i18n/locale/th/automation.json index 0518a4ed1..c6a04924e 100644 --- a/app/javascript/dashboard/i18n/locale/th/automation.json +++ b/app/javascript/dashboard/i18n/locale/th/automation.json @@ -3,8 +3,11 @@ "HEADER": "เงื่อนไขอัตโนมัติ", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "เพิ่มเงื่อนไขอัตโนมัติ", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "กำลังโหลดเงื่อนไขอัตโนมัติ", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "เพิ่มเงื่อนไขอัตโนมัติ", "SUBMIT": "สร้าง", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "ชื่อ", - "DESCRIPTION": "คำอธิบาย", "ACTIVE": "ใช้งานอยู่", - "CREATED_ON": "สร้างเมื่อ" + "CREATED_ON": "สร้างเมื่อ", + "ACTIONS": "การกระทำ" }, "404": "ไม่พบเงื่อนไขอัตโนมัติ" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "เปิดดูการสนทนา" + "OPEN_CONVERSATION": "เปิดดูการสนทนา", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/th/bulkActions.json b/app/javascript/dashboard/i18n/locale/th/bulkActions.json index 054da7b28..e6cc8d785 100644 --- a/app/javascript/dashboard/i18n/locale/th/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/th/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "ไม่พบหัวข้อ", diff --git a/app/javascript/dashboard/i18n/locale/th/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/th/cannedMgmt.json index 2451a3f9f..b6f7343e6 100644 --- a/app/javascript/dashboard/i18n/locale/th/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "คำตอบสำเร็จรูป", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "ไม่มีการตอบสำเร็จรูปในบัญชีนี้", diff --git a/app/javascript/dashboard/i18n/locale/th/chatlist.json b/app/javascript/dashboard/i18n/locale/th/chatlist.json index 3663e94a3..9b7d274fd 100644 --- a/app/javascript/dashboard/i18n/locale/th/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/th/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/th/contact.json b/app/javascript/dashboard/i18n/locale/th/contact.json index 9514ec2a2..b0c174fda 100644 --- a/app/javascript/dashboard/i18n/locale/th/contact.json +++ b/app/javascript/dashboard/i18n/locale/th/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "ไม่มีผู้ติดต่อที่ตรงกัน 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "ถึง:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "หัวเรื่อง :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "สำเนา:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "สำเนาลับ:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "สำเนาลับ" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/th/conversation.json b/app/javascript/dashboard/i18n/locale/th/conversation.json index 0390157a4..de79ac100 100644 --- a/app/javascript/dashboard/i18n/locale/th/conversation.json +++ b/app/javascript/dashboard/i18n/locale/th/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "ลบข้อความสำเร็จเเล้ว", "FAIL_DELETE_MESSSAGE": "ไม่สามารถลบข้อความได้ โปรดลองใหม่อีกครั้ง", "NO_RESPONSE": "ไม่มีการตอบกลับ", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "มอบหมายให้ทีม {team} มาดูแลการสนทนารหัส {conversationId}", "FAILED": "ไม่สามารถมอบหมายให้กับทีมได้ โปรดลองใหม่อีกครั้ง" @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "ปิดการใช้ลายเซ็นต์", "MSG_INPUT": "Shift + enter สำหรับบรรทัดใหม่ เริ่มต้นด้วย '/' เพื่อเลือกคำตอบสำเร็จรูป", "PRIVATE_MSG_INPUT": "Shift + enter สำหรับบรรทัดใหม่ สิ่งนี้จะปรากฏแก่พนักงานเท่านั้น", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "ข้อความลายเซ็นต์ไม่ได้ถูกตั้งค่า โปรดปรับแต่งในหน้าตั้งค่าข้อมูลส่วนตัว", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "คลิกที่นี่เพื่ออัปเดต", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "ลากเเละปล่อยที่นี่เพื่อเพิ่ม", "START_AUDIO_RECORDING": "เริ่มบันทึกเสียง", "STOP_AUDIO_RECORDING": "หยุดบันทึกเสียง", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "เพิ่ม BCC", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "ไฟล์ของคุณมีขนาดเกิน {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "ไม่สามารถส่งข้อความนี้ได้ โปรดลองใหม่อีกครั้ง", "SENT_BY": "ส่งโดย:", "BOT": "บอท", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "ไม่สามารถส่งข้อความได้ โปรดลองอีกครั้ง", "TRY_AGAIN": "ส่งอีกครั้ง", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "ยกเลิก", "SEND_EMAIL_SUCCESS": "บันทึกการสนทนาได้ถูกส่งเเล้ว", "SEND_EMAIL_ERROR": "เกิดข้อผิดพลาดกรุณาลองใหม่อีกครั้ง", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "ส่งบันทึกการสนทนาให้ลูกค้า", "SEND_TO_AGENT": "ส่งบันทึกการสนทนาให้พนักงานที่ได้รับมอบหมาย", diff --git a/app/javascript/dashboard/i18n/locale/th/customRole.json b/app/javascript/dashboard/i18n/locale/th/customRole.json index 84a50adb7..ac2d88556 100644 --- a/app/javascript/dashboard/i18n/locale/th/customRole.json +++ b/app/javascript/dashboard/i18n/locale/th/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/th/datePicker.json b/app/javascript/dashboard/i18n/locale/th/datePicker.json index 3f3031233..49b07fffa 100644 --- a/app/javascript/dashboard/i18n/locale/th/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/th/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "ใช้งาน", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "3 เดือนที่ผ่านมา", "LAST_6_MONTHS": "6 เดือนที่ผ่านมา", "LAST_YEAR": "ปีที่ผ่านมา", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "กำหนดช่วงระยะเวลา" } } diff --git a/app/javascript/dashboard/i18n/locale/th/general.json b/app/javascript/dashboard/i18n/locale/th/general.json index 617411445..c933f5274 100644 --- a/app/javascript/dashboard/i18n/locale/th/general.json +++ b/app/javascript/dashboard/i18n/locale/th/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "ปิด", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "ใช่", + "NO": "ไม่" } } diff --git a/app/javascript/dashboard/i18n/locale/th/generalSettings.json b/app/javascript/dashboard/i18n/locale/th/generalSettings.json index 853d21254..a034bb194 100644 --- a/app/javascript/dashboard/i18n/locale/th/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/th/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "ค้นหาหรือไปยัง", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "ทั่วไป", "REPORTS": "รายงาน", diff --git a/app/javascript/dashboard/i18n/locale/th/helpCenter.json b/app/javascript/dashboard/i18n/locale/th/helpCenter.json index b4a2bd2b7..e84f283ef 100644 --- a/app/javascript/dashboard/i18n/locale/th/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/th/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json index 03419dda7..cf0f3241f 100644 --- a/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "กล่องข้อความ", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "ปิด" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "เปิด", - "DISABLED": "ปิด" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "เปิดใช้งาน" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "เปิดให้มีการสนทนาต่อทางอีเมลได้", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "การสนทนาจะสามารถดำเนินการต่อผ่านทางอีเมลได้ หากลูกค้าให้อีเมลไว้", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "ตั้งค่ากล่องข้อความ", "INBOX_UPDATE_SUB_TEXT": "อัปเดตกล่องข้อความ", "AUTO_ASSIGNMENT_SUB_TEXT": "เปิดหรือปิดระบบมอบหมายงานอัตโนมัติสำหรับข้อความใหม่ให้กับพนักงานในกล่องสนทนานี้", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "ไม่มี", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "กรุณากรอกค่าที่มากกว่า 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "ใช้งานอยู่", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "ยกเลิก", + "CONFIRM_DELETE": "ลบ", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "ขอสิทธิ์อีกครั้ง", "SUBTITLE": "การเชื่อมต่อกับ Facebook หมดอายุแล้ว โปรดเชื่อมต่อใหม่อีกครั้ง", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "ข้อความที่ต้องการแสดงเมื่ออยู่นอกเวลาทำการ", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "วัน", + "AVAILABILITY": "สถานะ", + "HOURS": "Hours", "ENABLE": "เปิดใช้ความพร้อมในการให้บริการสำหรับวันนี้", "UNAVAILABLE": "ไม่พร้อมให้บริการ", - "HOURS": "ชั่วโมง", "VALIDATION_ERROR": "เวลาเปิดทำการควรเริ่มก่อนเวลาปิดทำการ", "CHOOSE": "เลือก" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "ในหนึ่งวัน" }, "WIDGET_COLOR_LABEL": "สีของวิดเจ็ต", - "WIDGET_BUBBLE_POSITION_LABEL": "ตำแหน่งของ Widget", - "WIDGET_BUBBLE_TYPE_LABEL": "รูปลักษณ์ของ Widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "ประเภท:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "คุยกับเรา", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "คุยกับเรา" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "ปกติจะตอบกลับภายในไม่กี่นาที", diff --git a/app/javascript/dashboard/i18n/locale/th/integrationApps.json b/app/javascript/dashboard/i18n/locale/th/integrationApps.json index a18472ca3..5fb03f152 100644 --- a/app/javascript/dashboard/i18n/locale/th/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/th/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "กำลังโหลดการเชื่อมต่อ", "NO_HOOK_CONFIGURED": "ไม่มี {integrationId} ที่ตั้งค่าไว้กับบัญชีนี้", "HEADER": "โปรแกรม", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "เปิด", "DISABLED": "ปิด" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "กำลังโหลด Hook", "INBOX": "กล่องข้อความ", + "ACTIONS": "การกระทำ", "DELETE": { "BUTTON_TEXT": "ลบ" } diff --git a/app/javascript/dashboard/i18n/locale/th/integrations.json b/app/javascript/dashboard/i18n/locale/th/integrations.json index 84b5c19e2..4af33b320 100644 --- a/app/javascript/dashboard/i18n/locale/th/integrations.json +++ b/app/javascript/dashboard/i18n/locale/th/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "เหตุการณ์ที่ติดตามอยู่", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "ยกเลิก", "DESC": "Webhook จะมีการส่งข้อมูลตลอดเวลา โดยใส่ URL ที่จะรับข้อมูลให้ถูกต้อง", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "ลบ", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "ชื่อ", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "การกระทำ" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/th/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/th/labelsMgmt.json index 2db2cd7c8..38689adf8 100644 --- a/app/javascript/dashboard/i18n/locale/th/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/th/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "กำลังโหลดป้ายกำกับ", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "ค้นหาหัวข้อ...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "ไม่มีรายการที่ตรงกับเนื้อหานี้", "LIST": { "404": "ไม่มีป้ายกำกับในบัญชีนี้", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "ชื่อ", "DESCRIPTION": "คำอธิบาย", - "COLOR": "สี" + "COLOR": "สี", + "ACTION": "การกระทำ" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/th/macros.json b/app/javascript/dashboard/i18n/locale/th/macros.json index 2671c7036..9d13659f3 100644 --- a/app/javascript/dashboard/i18n/locale/th/macros.json +++ b/app/javascript/dashboard/i18n/locale/th/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "ชื่อ", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "การกระทำ" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/th/mfa.json b/app/javascript/dashboard/i18n/locale/th/mfa.json index 5e24f73a5..d64fc689f 100644 --- a/app/javascript/dashboard/i18n/locale/th/mfa.json +++ b/app/javascript/dashboard/i18n/locale/th/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/th/report.json b/app/javascript/dashboard/i18n/locale/th/report.json index 2a042a17c..6e8cea9c7 100644 --- a/app/javascript/dashboard/i18n/locale/th/report.json +++ b/app/javascript/dashboard/i18n/locale/th/report.json @@ -3,7 +3,7 @@ "HEADER": "การสนทนา", "LOADING_CHART": "กำลังโหลดแผนภูมิข้อมูล", "NO_ENOUGH_DATA": "ข้อมูลที่เราได้รับไม่เพียงพอต่อการสร้างรายงาน โปรดลองใหม่อีกครั้งในภายหน้า", - "DOWNLOAD_AGENT_REPORTS": "ดาวน์โหลดรายงานพนักงาน", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "ภาพรวมพนักงาน", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "กำลังโหลดแผนภูมิข้อมูล", "NO_ENOUGH_DATA": "ข้อมูลที่เราได้รับไม่เพียงพอต่อการสร้างรายงาน โปรดลองใหม่อีกครั้งในภายหน้า", "DOWNLOAD_AGENT_REPORTS": "ดาวน์โหลดรายงานพนักงาน", "FILTER_DROPDOWN_LABEL": "เลือกพนักงาน", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "ค้นหาพนักงาน" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "การสนทนา", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "ข้อมูลที่เราได้รับไม่เพียงพอต่อการสร้างรายงาน โปรดลองใหม่อีกครั้งในภายหน้า", "DOWNLOAD_LABEL_REPORTS": "ดาวน์โหลดรายงานป้ายกำกับ", "FILTER_DROPDOWN_LABEL": "เลือกป้ายกำกับ", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "ค้นหาหัวข้อ" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "การสนทนา", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "เลือกกล่องข้อความ", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "การสนทนา", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "ภาพรวมทีม", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "กำลังโหลดแผนภูมิข้อมูล", "NO_ENOUGH_DATA": "ข้อมูลที่เราได้รับไม่เพียงพอต่อการสร้างรายงาน โปรดลองใหม่อีกครั้งในภายหน้า", "DOWNLOAD_TEAM_REPORTS": "ดาวน์โหลดรายงานทีม", "FILTER_DROPDOWN_LABEL": "เลือกทีม", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "ค้นหาทีม" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "การสนทนา", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "รายงาน CSAT", - "NO_RECORDS": "ไม่มีรายงาน CSAT ที่แสดงผลได้", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "ค้นหาพนักงาน", + "INBOXES": "Search inboxes", + "TEAMS": "ค้นหาทีม", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "เลือกพนักงาน" + "LABEL": "พนักงาน" + }, + "INBOXES": { + "LABEL": "กล่องข้อความ" + }, + "TEAMS": { + "LABEL": "ทีม" + }, + "RATINGS": { + "LABEL": "การประเมิน" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "ผู้ติดต่อ", - "AGENT_NAME": "พนักงานที่ได้รับมอบหมาย", + "AGENT_NAME": "พนักงาน", "RATING": "การประเมิน", - "FEEDBACK_TEXT": "คำติชม" - } + "FEEDBACK_TEXT": "คำติชม", + "CONVERSATION": "การสนทนา", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "การตอบกลับทั้งหมด", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "อัตราการตอบกลับ", "TOOLTIP": "จำนวนการตอบกลับทั้งหมด / จำนวนข้อความทั้งหมดที่แบบสอบถาม CSAT ส่ง * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "ยกเลิก", + "SAVING": "กำลังบันทึก...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/th/settings.json b/app/javascript/dashboard/i18n/locale/th/settings.json index 5039c36a2..3639e9290 100644 --- a/app/javascript/dashboard/i18n/locale/th/settings.json +++ b/app/javascript/dashboard/i18n/locale/th/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "ดาวโหลด", "UPLOADING": "กำลังอัปโหลด", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "ฟีเจอร์", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "ค้นหาแอตทริบิวต์" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "เสร็จสิ้นการสนทนา", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "เสร็จสิ้นการสนทนา", + "CANCEL": "ยกเลิก" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "ใช่", + "NO": "ไม่" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "ไม่นะ! ดูเหมือนว่าเราจะไม่เจอบัญชี Chatwoot ของคุณ โปรดสร้างบัญชีใหม่เพื่อดำเนินการต่อ", "NEW_ACCOUNT": "สร้างบัญชีใหม่", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "ยกเลิก" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/th/signup.json b/app/javascript/dashboard/i18n/locale/th/signup.json index be5ede8f9..941f9f93a 100644 --- a/app/javascript/dashboard/i18n/locale/th/signup.json +++ b/app/javascript/dashboard/i18n/locale/th/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "สร้างบัญชี", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/th/sla.json b/app/javascript/dashboard/i18n/locale/th/sla.json index 439acc6d2..31e759ada 100644 --- a/app/javascript/dashboard/i18n/locale/th/sla.json +++ b/app/javascript/dashboard/i18n/locale/th/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/th/snooze.json b/app/javascript/dashboard/i18n/locale/th/snooze.json new file mode 100644 index 000000000..4ef7b50f8 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/th/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "ชั่วโมง", + "DAY": "day", + "DAYS": "days", + "WEEK": "วัน", + "WEEKS": "weeks", + "MONTH": "สัปดาห์", + "MONTHS": "months", + "YEAR": "เดือน", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "พรุ่งนี้", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "สัปดาห์หน้า", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "วัน", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/th/teamsSettings.json b/app/javascript/dashboard/i18n/locale/th/teamsSettings.json index 7921e2c8c..d47c10a07 100644 --- a/app/javascript/dashboard/i18n/locale/th/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/th/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "ค้นหาทีม...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "ยังไม่มีทีมที่ถูกสร้างในบัญชีนี้", "EDIT_TEAM": "แก้ไขทีม", diff --git a/app/javascript/dashboard/i18n/locale/tl/agentBots.json b/app/javascript/dashboard/i18n/locale/tl/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/tl/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/tl/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/tl/agentMgmt.json b/app/javascript/dashboard/i18n/locale/tl/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/tl/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/tl/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/tl/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/tl/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/tl/automation.json b/app/javascript/dashboard/i18n/locale/tl/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/tl/automation.json +++ b/app/javascript/dashboard/i18n/locale/tl/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/tl/bulkActions.json b/app/javascript/dashboard/i18n/locale/tl/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/tl/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/tl/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/tl/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/tl/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/tl/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/tl/chatlist.json b/app/javascript/dashboard/i18n/locale/tl/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/tl/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/tl/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/tl/contact.json b/app/javascript/dashboard/i18n/locale/tl/contact.json index 7cad3b433..10841bbbf 100644 --- a/app/javascript/dashboard/i18n/locale/tl/contact.json +++ b/app/javascript/dashboard/i18n/locale/tl/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/tl/conversation.json b/app/javascript/dashboard/i18n/locale/tl/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/tl/conversation.json +++ b/app/javascript/dashboard/i18n/locale/tl/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/tl/customRole.json b/app/javascript/dashboard/i18n/locale/tl/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/tl/customRole.json +++ b/app/javascript/dashboard/i18n/locale/tl/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/tl/datePicker.json b/app/javascript/dashboard/i18n/locale/tl/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/tl/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/tl/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/tl/general.json b/app/javascript/dashboard/i18n/locale/tl/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/tl/general.json +++ b/app/javascript/dashboard/i18n/locale/tl/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/tl/generalSettings.json b/app/javascript/dashboard/i18n/locale/tl/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/tl/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/tl/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/tl/helpCenter.json b/app/javascript/dashboard/i18n/locale/tl/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/tl/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/tl/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json index 2efba4716..1cfc95ef0 100644 --- a/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/tl/integrationApps.json b/app/javascript/dashboard/i18n/locale/tl/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/tl/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/tl/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/tl/integrations.json b/app/javascript/dashboard/i18n/locale/tl/integrations.json index ef3e94e42..fe1891064 100644 --- a/app/javascript/dashboard/i18n/locale/tl/integrations.json +++ b/app/javascript/dashboard/i18n/locale/tl/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/tl/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/tl/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/tl/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tl/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/tl/macros.json b/app/javascript/dashboard/i18n/locale/tl/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/tl/macros.json +++ b/app/javascript/dashboard/i18n/locale/tl/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/tl/mfa.json b/app/javascript/dashboard/i18n/locale/tl/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/tl/mfa.json +++ b/app/javascript/dashboard/i18n/locale/tl/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/tl/report.json b/app/javascript/dashboard/i18n/locale/tl/report.json index dbf59f603..2ffa0ef11 100644 --- a/app/javascript/dashboard/i18n/locale/tl/report.json +++ b/app/javascript/dashboard/i18n/locale/tl/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/tl/settings.json b/app/javascript/dashboard/i18n/locale/tl/settings.json index 920da6f53..cf56caf3d 100644 --- a/app/javascript/dashboard/i18n/locale/tl/settings.json +++ b/app/javascript/dashboard/i18n/locale/tl/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/tl/signup.json b/app/javascript/dashboard/i18n/locale/tl/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/tl/signup.json +++ b/app/javascript/dashboard/i18n/locale/tl/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/tl/sla.json b/app/javascript/dashboard/i18n/locale/tl/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/tl/sla.json +++ b/app/javascript/dashboard/i18n/locale/tl/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/tl/snooze.json b/app/javascript/dashboard/i18n/locale/tl/snooze.json new file mode 100644 index 000000000..2d9a876aa --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/tl/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "year", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/tl/teamsSettings.json b/app/javascript/dashboard/i18n/locale/tl/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/tl/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/tl/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/tr/agentBots.json b/app/javascript/dashboard/i18n/locale/tr/agentBots.json index b1118a235..9b44e7b5c 100644 --- a/app/javascript/dashboard/i18n/locale/tr/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/tr/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Editör Yükleniyor...", "DESCRIPTION": "Temsilci botları ekibinizin en harika üyeleri gibidir. Küçük işleri halledebilirler, böylece önemli işlere odaklanabilirsiniz. Onları deneyin. Botlarınızı bu sayfadan yönetebilir veya 'Bot Ekle' butonunu kullanarak yenilerini oluşturabilirsiniz.", "LEARN_MORE": "Temsilci botları hakkında bilgi edinin", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "Sistem botu", "GLOBAL_BOT_BADGE": "Sistem", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Botlar alınıyor...", "TABLE_HEADER": { "DETAILS": "Bot Detayları", - "URL": "Webhook URL'si" + "URL": "Webhook URL'si", + "ACTIONS": "Hareketler" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/tr/agentMgmt.json b/app/javascript/dashboard/i18n/locale/tr/agentMgmt.json index c1ee0dc69..16db451e5 100644 --- a/app/javascript/dashboard/i18n/locale/tr/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Yönetici", "AGENT": "Kullanıcı" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Bu hesapla ilişkilendirilmiş hesap yok", "TITLE": "Ekibinizdeki temsilcileri yönetin", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Woot Sunucusuna bağlanılamadı, Lütfen daha sonra tekrar deneyin" } }, + "SEARCH_PLACEHOLDER": "Temsilci ara...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Sonuç bulunamadı." }, diff --git a/app/javascript/dashboard/i18n/locale/tr/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/tr/attributesMgmt.json index 5a4d9d2cb..aa66472f9 100644 --- a/app/javascript/dashboard/i18n/locale/tr/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/attributesMgmt.json @@ -4,7 +4,10 @@ "HEADER_BTN_TXT": "Nitelik Ekle", "LOADING": "Özel Nitelikler getiriliyor", "DESCRIPTION": "Özel nitelikler, kişileriniz veya konuşmalarınız hakkında ek ayrıntıları takip etmenizi sağlar — örneğin abonelik planı veya ilk satın alma tarihi gibi. İhtiyacınız olan belirli bilgileri toplamak için metin, liste veya sayı gibi farklı türlerde özel nitelikler ekleyebilirsiniz.", - "LEARN_MORE": "Learn more about custom attributes", + "LEARN_MORE": "Özel Nitelikler hakkında daha fazla bilgi edinin", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Öznitelik ara...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Sohbet", "CONTACT": "İletişim" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Düzenli ifade doğrulamasını aç" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/tr/automation.json b/app/javascript/dashboard/i18n/locale/tr/automation.json index 4f7220a09..198d3e234 100644 --- a/app/javascript/dashboard/i18n/locale/tr/automation.json +++ b/app/javascript/dashboard/i18n/locale/tr/automation.json @@ -3,8 +3,11 @@ "HEADER": "Otomasyon", "DESCRIPTION": "Otomasyon, etiket ekleme veya konuşmaları en uygun temsilciye atama gibi manuel çaba gerektiren mevcut süreçleri kolaylaştırabilir ve onların yerine geçebilir. Bu sayede ekip, rutin işlere harcanan zamanı azaltarak güçlü yönlerine odaklanabilir.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Otomasyon Kuralı Ekle", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Otomasyon kuralları getiriliyor", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Otomasyon Kuralı Ekle", "SUBMIT": "Yarat", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "İsim", - "DESCRIPTION": "Açıklama", "ACTIVE": "Aktif", - "CREATED_ON": "Oluşturma" + "CREATED_ON": "Oluşturma", + "ACTIONS": "Hareketler" }, "404": "Otomasyon kuralı bulunamadı" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Özel Not Ekle", "CHANGE_PRIORITY": "Önceliği Değiştir", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Görüşmeyi aç" + "OPEN_CONVERSATION": "Görüşmeyi aç", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Gelen Mesaj", diff --git a/app/javascript/dashboard/i18n/locale/tr/bulkActions.json b/app/javascript/dashboard/i18n/locale/tr/bulkActions.json index da26f2052..94bb2c3d2 100644 --- a/app/javascript/dashboard/i18n/locale/tr/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/tr/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Konuşma durumu başarıyla güncellendi.", "UPDATE_FAILED": "Görüşmeler güncellenirken bir hata oluştu. Lütfen tekrar deneyin." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Etiket atama", "NO_LABELS_FOUND": "Etiket bulunamadı", diff --git a/app/javascript/dashboard/i18n/locale/tr/campaign.json b/app/javascript/dashboard/i18n/locale/tr/campaign.json index ba7baf98d..58f9100e6 100644 --- a/app/javascript/dashboard/i18n/locale/tr/campaign.json +++ b/app/javascript/dashboard/i18n/locale/tr/campaign.json @@ -80,11 +80,11 @@ } }, "SMS": { - "HEADER_TITLE": "SMS campaigns", + "HEADER_TITLE": "SMS kampanyaları", "NEW_CAMPAIGN": "Kampanya oluştur", "EMPTY_STATE": { - "TITLE": "No SMS campaigns are available", - "SUBTITLE": "Launch an SMS campaign to reach your customers directly. Send offers or make announcements with ease. Click 'Create campaign' to get started." + "TITLE": "SMS kampanyası mevcut değil", + "SUBTITLE": "Müşterilerinize doğrudan ulaşmak için bir SMS kampanyası başlatın. Kolaylıkla teklifler gönderin veya duyurular yapın. Başlamak için 'Kampanya oluştur'a tıklayın." }, "CARD": { "STATUS": { @@ -138,11 +138,11 @@ } }, "WHATSAPP": { - "HEADER_TITLE": "WhatsApp campaigns", + "HEADER_TITLE": "WhatsApp kampanyaları", "NEW_CAMPAIGN": "Kampanya Oluştur", "EMPTY_STATE": { - "TITLE": "No WhatsApp campaigns are available", - "SUBTITLE": "Launch a WhatsApp campaign to reach your customers directly. Send offers or make announcements with ease. Click 'Create campaign' to get started." + "TITLE": "WhatsApp kampanyası mevcut değil", + "SUBTITLE": "Müşterilerinize doğrudan ulaşmak için bir WhatsApp kampanyası başlatın. Kolaylıkla teklifler gönderin veya duyurular yapın. Başlamak için 'Kampanya oluştur'a tıklayın." }, "CARD": { "STATUS": { diff --git a/app/javascript/dashboard/i18n/locale/tr/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/tr/cannedMgmt.json index 3cbc908b4..3e0449149 100644 --- a/app/javascript/dashboard/i18n/locale/tr/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/cannedMgmt.json @@ -1,10 +1,13 @@ { "CANNED_MGMT": { "HEADER": "Hazır Yanıtlar", - "LEARN_MORE": "Learn more about canned responses", + "LEARN_MORE": "Hazır yanıtlar hakkında daha fazla bilgi edinin", "DESCRIPTION": "Hazır Yanıtlar, bir konuşmaya hızlı yanıt vermenizi sağlayan önceden hazırlanmış şablonlardır. Temsilciler, bir konuşma sırasında hazır yanıt eklemek için '/' karakterini ve ardından kısa kodu yazabilirler. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Hazır yanıt ekle", "LOADING": "Hazır yanıtlar getiriliyor...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Bu sorgu ile eşleşen öğe yok.", "LIST": { "404": "Bu hesapta hazır yanıt yok.", diff --git a/app/javascript/dashboard/i18n/locale/tr/chatlist.json b/app/javascript/dashboard/i18n/locale/tr/chatlist.json index 801f202d4..54499a285 100644 --- a/app/javascript/dashboard/i18n/locale/tr/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/tr/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Cevap Bekleyen: Kısa olan" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/tr/contact.json b/app/javascript/dashboard/i18n/locale/tr/contact.json index 7346bb1a4..941fe1f54 100644 --- a/app/javascript/dashboard/i18n/locale/tr/contact.json +++ b/app/javascript/dashboard/i18n/locale/tr/contact.json @@ -457,8 +457,11 @@ "INSTAGRAM": { "PLACEHOLDER": "Instagram ekle" }, + "TELEGRAM": { + "PLACEHOLDER": "Telegram Ekle" + }, "TIKTOK": { - "PLACEHOLDER": "Add TikTok" + "PLACEHOLDER": "TikTok Ekle" }, "LINKEDIN": { "PLACEHOLDER": "LinkedIn ekle" @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Aramanızla eşleşen kişi bulunamadı 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "Şu anda aktif kişi yok 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Kime:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "İsim, e-posta veya telefon numarası ile arama yapmak için en az 2 karakter girin", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Konu :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Kopya:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "E-posta ile arama yapmak için en az 2 karakter girin", "BCC_LABEL": "Gizli Kopya:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "E-posta ile arama yapmak için en az 2 karakter girin", "BCC_BUTTON": "Gizli Kopya" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/tr/conversation.json b/app/javascript/dashboard/i18n/locale/tr/conversation.json index 78cbe01c7..24932a493 100644 --- a/app/javascript/dashboard/i18n/locale/tr/conversation.json +++ b/app/javascript/dashboard/i18n/locale/tr/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Bu mesaj desteklenmiyor. Bu mesajı Facebook Messenger uygulamasında görüntüleyebilirsiniz.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Bu mesaj desteklenmiyor. Bu mesajı Instagram uygulamasında görüntüleyebilirsiniz.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Mesaj başarıyla silindi", "FAIL_DELETE_MESSSAGE": "Mesaj silinemiyor. Tekrar deneyin", "NO_RESPONSE": "Cevap Yok", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Etiket atanamadı. Lütfen tekrar deneyin." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Sohbet kimliği {conversationId} için \"{team}\" takımına atanmış", "FAILED": "Takım atanamadı. Lütfen tekrar deneyin." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "İmzayı devre dışı bırak", "MSG_INPUT": "Yeni satır için Shift + enter. Bir Hazır Yanıt seçmek için \"/\" ile başlayın.", "PRIVATE_MSG_INPUT": "Yeni satır için Shift + enter. Bu yalnızca Temsilciler tarafından görülebilir", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Mesaj imzası yapılandırılmamış, lütfen profil ayarlarında yapılandırın.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Güncellemek için tıklayın", "WHATSAPP_TEMPLATES": "WhatsApp Şablonları" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Eklemek için buraya sürükleyip bırakın", "START_AUDIO_RECORDING": "Ses kaydına başla", "STOP_AUDIO_RECORDING": "Ses kaydını durdur", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Bcc ekle", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Konuşma başarıyla silindi", "FAIL_DELETE_CONVERSATION": "Konuşma silinemedi! Tekrar deneyin", "FILE_SIZE_LIMIT": "Dosya, {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB ek dosya sınırını aşıyor", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Bu mesaj gönderilemiyor, lütfen daha sonra tekrar deneyin", "SENT_BY": "Tarafından gönderildi:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Mesaj gönderilemedi! Tekrar deneyin", "TRY_AGAIN": "tekrar dene", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "İptal Et", "SEND_EMAIL_SUCCESS": "İletişim kaydı başarıyla gönderildi", "SEND_EMAIL_ERROR": "Bir hata oluştu, lütfen tekrar deneyin", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "İletişim kaydını müşteriye gönder", "SEND_TO_AGENT": "Atanan temsilciye iletişim kaydını gönder", diff --git a/app/javascript/dashboard/i18n/locale/tr/customRole.json b/app/javascript/dashboard/i18n/locale/tr/customRole.json index 6acfa5336..6e1fdce66 100644 --- a/app/javascript/dashboard/i18n/locale/tr/customRole.json +++ b/app/javascript/dashboard/i18n/locale/tr/customRole.json @@ -3,19 +3,22 @@ "HEADER": "Özel Roller", "LEARN_MORE": "Özel roller hakkında daha fazla bilgi edinin", "DESCRIPTION": "Özel roller, hesap sahibi veya yöneticiler tarafından oluşturulan rollerdir. Bu roller, temsilcilere hesabın içinde hangi erişim ve yetkilere sahip olacaklarını belirlemek için atanabilir. Özel roller, organizasyonun ihtiyaçlarına uygun olarak belirli izinler ve erişim seviyeleriyle oluşturulabilir.", - "HEADER_BTN_TXT": "Add custom role", + "COUNT": "{n} custom role | {n} custom roles", + "HEADER_BTN_TXT": "Özel rol ekle", "LOADING": "Özel roller alınıyor...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Bu sorgu ile eşleşen öğe yok.", "PAYWALL": { "TITLE": "Özel roller oluşturmak için yükseltin", "AVAILABLE_ON": "The custom role feature is only available in the Business and Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to advanced features like team management, automations, custom attributes, and more.", - "UPGRADE_NOW": "Upgrade now", + "UPGRADE_NOW": "Şimdi yükselt", "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "The custom role feature is only available in the paid plans.", - "UPGRADE_PROMPT": "Upgrade to a paid plan to access advanced features like audit logs, agent capacity, and more.", + "AVAILABLE_ON": "Özel rol özelliği yalnızca ücretli planlarda mevcuttur.", + "UPGRADE_PROMPT": "Denetim kayıtları, temsilci kapasitesi ve daha fazlası gibi gelişmiş özelliklere erişmek için ücretli plana geçin.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, "LIST": { @@ -58,11 +61,11 @@ } }, "ADD": { - "TITLE": "Add custom role", + "TITLE": "Özel rol ekle", "DESC": " Özel roller, organizasyonun ihtiyaçlarına uygun olarak belirli izinler ve erişim seviyeleriyle roller oluşturmanıza olanak tanır.", "SUBMIT": "Gönder", "API": { - "SUCCESS_MESSAGE": "Custom role added successfully." + "SUCCESS_MESSAGE": "Özel rol başarıyla eklendi." } }, "EDIT": { diff --git a/app/javascript/dashboard/i18n/locale/tr/datePicker.json b/app/javascript/dashboard/i18n/locale/tr/datePicker.json index 38ed6c885..d41fc8516 100644 --- a/app/javascript/dashboard/i18n/locale/tr/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/tr/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Hafta #{weekNumber}", "APPLY_BUTTON": "Uygula", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Son 3 ay", "LAST_6_MONTHS": "Son 6 ay", "LAST_YEAR": "Geçen yıl", + "THIS_WEEK": "Bu hafta", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Özel tarih aralığı" } } diff --git a/app/javascript/dashboard/i18n/locale/tr/general.json b/app/javascript/dashboard/i18n/locale/tr/general.json index 00d38b677..4df21f458 100644 --- a/app/javascript/dashboard/i18n/locale/tr/general.json +++ b/app/javascript/dashboard/i18n/locale/tr/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Kapat", "BETA": "Beta", - "BETA_DESCRIPTION": "Bu özellik beta aşamasındadır ve geliştirdikçe değişiklik gösterebilir." + "BETA_DESCRIPTION": "Bu özellik beta aşamasındadır ve geliştirdikçe değişiklik gösterebilir.", + "ACCEPT": "Kabul et", + "DISCARD": "Yoksay", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Evet", + "NO": "Hayır" } } diff --git a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json b/app/javascript/dashboard/i18n/locale/tr/generalSettings.json index 6551eb3a7..cf89d1d7f 100644 --- a/app/javascript/dashboard/i18n/locale/tr/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/tr/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Ara veya atla", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Genel", "REPORTS": "Raporlar", diff --git a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json index c9cb6e7cc..f4b7c266a 100644 --- a/app/javascript/dashboard/i18n/locale/tr/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/tr/helpCenter.json @@ -107,7 +107,7 @@ "LOADING_MESSAGE": "Portallar yükleniyor...", "ARTICLES_LABEL": "makaleler", "NO_PORTALS_MESSAGE": "Kullanılabilir portal yok", - "ADD_NEW_LOCALE": "Yeni bir yerel ekleyin", + "ADD_NEW_LOCALE": "Yeni bir dil ekleyin", "POPOVER": { "TITLE": "Portallar", "PORTAL_SETTINGS": "Portal Ayarları", @@ -288,7 +288,7 @@ } }, "ADD_LOCALE": { - "TITLE": "Yeni bir yerel dil ekle", + "TITLE": "Yeni bir dil ekle", "SUB_TITLE": "Bu, kullanılabilir çeviri listesine yeni bir yerel dil ekler.", "PORTAL": "Portal", "LOCALE": { @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Makale silinirken hata oluştu" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Lütfen makale başlığını ve içeriğini ekleyin, ardından ayarları güncelleyebilirsiniz" }, @@ -640,8 +650,8 @@ } }, "ADD_LOCALE_DIALOG": { - "TITLE": "Yeni bir yerel ekleyin", - "DESCRIPTION": "Select the language in which this article will be written. This will be added to your list of translations, and you can add more later.", + "TITLE": "Yeni bir dil ekleyin", + "DESCRIPTION": "Bu makalenin yazılacağı dili seçin. Seçilen dil çeviri listenize eklenecek ve daha sonra yeni diller ekleyebilirsiniz.", "COMBOBOX": { "PLACEHOLDER": "Dil seçin..." }, @@ -722,11 +732,11 @@ "ERROR": "Ad gerekli" }, "HEADER_TEXT": { - "LABEL": "Header text", + "LABEL": "Başlık Metni", "PLACEHOLDER": "Portal başlık metni" }, "PAGE_TITLE": { - "LABEL": "Page title", + "LABEL": "Sayfa Başlığı", "PLACEHOLDER": "Portal sayfa başlığı" }, "HOME_PAGE_LINK": { diff --git a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json index 9807238b4..de9374bcb 100644 --- a/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/inboxMgmt.json @@ -2,7 +2,10 @@ "INBOX_MGMT": { "HEADER": "Gelen kutuları", "DESCRIPTION": "Kanal, müşterinizin sizinle iletişim kurmak için seçtiği yöntemdir. Gelen kutusu (inbox) ise belirli bir kanal üzerinden gerçekleşen etkileşimleri yönettiğiniz yerdir. Gelen kutusu; e-posta, canlı sohbet ve sosyal medya gibi farklı kaynaklardan gelen iletişimleri içerebilir.", - "LEARN_MORE": "Learn more about inboxes", + "LEARN_MORE": "Gelen kutuları hakkında daha fazla bilgi edinin", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Gelen kutularını ara...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "WhatsApp Business kaydınız tamamlanmadı. Yeniden bağlanmadan önce lütfen Meta Business Manager'da görünen adınızın (display name) durumunu kontrol edin.", @@ -563,7 +566,7 @@ }, "SENDER_NAME_SECTION": { "TITLE": "Gönderen Adı", - "SUB_TEXT": "Select the name shown to your customer when they receive emails from your agents.", + "SUB_TEXT": "Müşterileriniz, temsilcilerinizden e-posta aldıklarında görecekleri adı seçin.", "FOR_EG": "Örneğin:", "FRIENDLY": { "TITLE": "Dostça", @@ -575,7 +578,7 @@ "SUBTITLE": "E-posta başlığında gönderen adı olarak yalnızca yapılandırılmış iş adını kullanın." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ İş adınızı yapılandırın", + "BUTTON_TEXT": "İş adınızı yapılandırın", "PLACEHOLDER": "İş adınızı girin", "SAVE_BUTTON_TEXT": "Kaydet" } @@ -589,8 +592,10 @@ "DISABLED": "Devre dışı" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Etkin", - "DISABLED": "Devre dışı" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Etkinleştir" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Hesap Sağlığı", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "WhatsApp hesabınızı yönetin", "DESCRIPTION": "WhatsApp hesap durumunuzu, mesajlaşma limitlerinizi ve kalitesini inceleyin. Gerekirse ayarları güncelleyin veya sorunları çözün", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "E-postada Ajanın adını göstermeyi/Devre dışı bırakmayı etkinleştirin, devre dışı bırakıldığında iş adını gösterir", "ENABLE_CONTINUITY_VIA_EMAIL": "E-posta aracılığıyla konuşma sürekliliğini etkinleştir", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "E-posta adresi mevcut ise konuşmalar e-posta aracılığıyla devam eder.", - "LOCK_TO_SINGLE_CONVERSATION": "Tek bir konuşmaya kilitle", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Bu gelen kutusu için aynı kişi için birden fazla konuşmayı etkinleştir veya devre dışı bırak", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Gelen Kutusu Ayarları", "INBOX_UPDATE_SUB_TEXT": "Gelen kutusu ayarlarınızı güncelleyin", "AUTO_ASSIGNMENT_SUB_TEXT": "Bu gelen kutusuna eklenen aracılara yeni konuşmaların otomatik olarak atanmasını etkinleştirin veya devre dışı bırakın.", @@ -758,6 +765,7 @@ "LABEL": "Yardım Merkezi", "PLACEHOLDER": "Yardım Merkezi Seçin", "SELECT_PLACEHOLDER": "Yardım Merkezi Seçin", + "NONE": "Hiç", "REMOVE": "Yardım Merkezini Kaldır", "SUB_TEXT": "Yardım Merkezini gelen kutusuna ekleyin" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Lütfen 0'dan büyük bir değer girin", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Bu gelen kutusundan otomatik olarak bir ajanın atanabileceği maksimum konuşma sayısını sınırlayın" }, + "ASSIGNMENT": { + "TITLE": "Görüşme Atama", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Politikayı sil", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Aktif", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "İptal Et", + "CONFIRM_DELETE": "Sil", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Yeniden Yetkilendir", "SUBTITLE": "Facebook bağlantınızın süresi doldu, hizmetlere devam etmek için lütfen Facebook sayfanızı yeniden bağlayın", @@ -810,19 +865,19 @@ }, "BUTTON_TEXT": { "LABEL": "Button text", - "PLACEHOLDER": "Please rate us" + "PLACEHOLDER": "Lütfen bizi değerlendirin" }, "LANGUAGE": { "LABEL": "Dil", "PLACEHOLDER": "Select template language" }, "MESSAGE_PREVIEW": { - "LABEL": "Message preview", + "LABEL": "Mesaj önizlemesi", "TOOLTIP": "This may vary slightly when rendered on WhatsApp's platform." }, "TEMPLATE_STATUS": { - "APPROVED": "Approved by WhatsApp", - "PENDING": "Pending WhatsApp approval", + "APPROVED": "WhatsApp tarafından onaylandı", + "PENDING": "WhatsApp onayı bekleniyor", "REJECTED": "Meta rejected the template", "DEFAULT": "Needs WhatsApp approval", "NOT_FOUND": "The template does not exist in the Meta platform." @@ -832,11 +887,25 @@ "ERROR_MESSAGE": "Failed to create WhatsApp template" }, "TEMPLATE_UPDATE_DIALOG": { - "TITLE": "Edit survey details", + "TITLE": "Anket ayrıntılarını düzenle", "DESCRIPTION": "We will delete the previous template and make a new one which will be sent again for WhatsApp approval", - "CONFIRM": "Create new template", + "CONFIRM": "Yeni şablon oluştur", "CANCEL": "Geri git" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Anket kuralı", "DESCRIPTION_PREFIX": "Sohbet olursa anketi gönder", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "etiketleri seç" }, "NOTE": "Not: CSAT anketleri, konuşma başına yalnızca bir kez gönderilir", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT ayarları başarıyla güncellendi", "ERROR_MESSAGE": "CSAT ayarları güncellenemedi. Lütfen daha sonra tekrar deneyin." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Ziyaretçiler için uygun değil mesajı", "TOGGLE_HELP": "İşletme erişilebilirliğini etkinleştirmek, tüm temsilciler çevrimdışı olsa bile canlı sohbet ekranında mevcut saatleri gösterecektir. Mevcut saatler dışında ziyaretçiler bir mesaj ve ön sohbet formu ile uyarılabilir.", "DAY": { + "DAY": "Gün", + "AVAILABILITY": "Uygunluk", + "HOURS": "Saat", "ENABLE": "Bu gün için uygunluğu etkinleştir", "UNAVAILABLE": "Uygun Değil", - "HOURS": "saat", "VALIDATION_ERROR": "Başlangıç saati kapanış saatinden önce olmalıdır.", "CHOOSE": "Seçin" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Bir gün içinde" }, "WIDGET_COLOR_LABEL": "Widget Rengi", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Kabarcık Pozisyonu", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Kabarcık Türü", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Tip:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Sohbet et", - "LABEL": "Widget Kabarcık Başlatıcı Başlığı", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Sohbet et" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Varsayılan", - "CHAT": "Sohbet" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Genellikle birkaç dakika içinde yanıt verir", diff --git a/app/javascript/dashboard/i18n/locale/tr/integrationApps.json b/app/javascript/dashboard/i18n/locale/tr/integrationApps.json index 3965bc93a..d4f74d3a3 100644 --- a/app/javascript/dashboard/i18n/locale/tr/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/tr/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Entegrasyonlar alınıyor", "NO_HOOK_CONFIGURED": "Bu hesapta yapılandırılmış {integrationId} entegrasyonu bulunmuyor.", "HEADER": "Uygulamalar", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Ara...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Etkin", "DISABLED": "Devre dışı" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Entegrasyon kancaları alınıyor", "INBOX": "Gelen Kutusu", + "ACTIONS": "Hareketler", "DELETE": { "BUTTON_TEXT": "Sil" } diff --git a/app/javascript/dashboard/i18n/locale/tr/integrations.json b/app/javascript/dashboard/i18n/locale/tr/integrations.json index c43462695..fca663d41 100644 --- a/app/javascript/dashboard/i18n/locale/tr/integrations.json +++ b/app/javascript/dashboard/i18n/locale/tr/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -17,8 +18,10 @@ }, "HEADER": "Entegrasyonlar", "DESCRIPTION": "Chatwoot, ekibinizin verimliliğini artırmak için birden fazla araç ve hizmetle entegre olur. Favori uygulamalarınızı yapılandırmak için aşağıdaki listeyi inceleyin.", - "LEARN_MORE": "Learn more about integrations", + "LEARN_MORE": "Entegrasyonlar hakkında daha fazla bilgi edinin", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Abone Olunan Olaylar", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "İptal Et", "DESC": "Web kancası etkinlikleri, Chatwoot hesabınızdaki olaylar hakkında gerçek zamanlı bilgi sağlar. Bir geri aramayı yapılandırmak için lütfen geçerli bir URL girin.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Sil", "DELETE_CONFIRMATION": { "TITLE": "Entegrasyonu Sil", @@ -145,7 +160,29 @@ "EXPAND": "Genişlet", "MAKE_FRIENDLY": "Mesaj tonunu dostça yap", "MAKE_FORMAL": "Resmi ton kullan", - "SIMPLIFY": "Basitleştir" + "SIMPLIFY": "Basitleştir", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Profesyonel", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Dostça" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Copilot'a sor" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Taslak içeriği", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Panel Uygulamaları

Panel Uygulamaları, organizasyonlara destek uzmanları için bağlam sağlamak amacıyla bir uygulamayı Chatwoot paneli içine yerleştirmelerine izin verir. Bu özellik, bağımsız bir uygulama oluşturmanıza ve bunu panel içine yerleştirmenize olanak tanır, böylece kullanıcı bilgilerini, siparişlerini veya önceki ödeme geçmişini sağlayabilirsiniz.

Chatwoot'taki panel üzerine uygulamanızı yerleştirdiğinizde, uygulamanız konuşma ve iletişim bağlamını pencere olayı olarak alır. Bağlamı almak için sayfanızda bir message olayı için bir dinleyici uygulayın.

Yeni bir panel uygulaması eklemek için 'Yeni bir panel uygulaması ekle' düğmesine tıklayın.

", "DESCRIPTION": "Panel Uygulamaları, organizasyonlara destek uzmanları için bağlam sağlamak amacıyla bir uygulamayı panel içine yerleştirmelerine izin verir. Bu özellik, bağımsız bir uygulama oluşturmanıza ve bunu panel içine yerleştirmenize olanak tanır, böylece kullanıcı bilgilerini, siparişlerini veya önceki ödeme geçmişini sağlayabilirsiniz.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Bu hesapta henüz yapılandırılmış panel uygulamaları yok", "LOADING": "Panel uygulamaları alınıyor...", "TABLE_HEADER": { "NAME": "İsim", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Hareketler" }, "EDIT_TOOLTIP": "Uygulamayı Düzenle", "DELETE_TOOLTIP": "Uygulamayı Sil" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Notion entegrasyonunu silmek istediğinizden emin misiniz?", "MESSAGE": "Bu entegrasyonu silmek, Notion çalışma alanınıza erişimi kaldıracak ve ilgili tüm işlevleri durduracaktır.", @@ -399,18 +442,19 @@ "CREDIT_NOTE": "Buradan gönderilen mesajlar Captain kredilerinize sayılacaktır." }, "PAYWALL": { - "TITLE": "Upgrade to use Captain AI", + "TITLE": "Captain AI kullanmak için yükseltin", "AVAILABLE_ON": "Captain is not available on the free plan.", "UPGRADE_PROMPT": "Asistanlarımıza, Copilot'a ve daha fazlasına erişim sağlamak için planınızı yükseltin.", - "UPGRADE_NOW": "Upgrade now", + "UPGRADE_NOW": "Şimdi yükselt", "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI yalnızca Enterprise planlarında mevcuttur.", "UPGRADE_PROMPT": "Asistanlarımıza, Copilot'a ve daha fazlasına erişim sağlamak için planınızı yükseltin.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, "BANNER": { - "RESPONSES": "You've used over 80% of your response limit. To continue using Captain AI, please upgrade.", + "RESPONSES": "Yanıt sınırınızın %80'inden fazlasını kullandınız. Captain AI'yı kullanmaya devam etmek için lütfen yükseltin.", "DOCUMENTS": "Belge sınırı aşıldı. Captain AI'yı kullanmaya devam etmek için yükseltme yapın." }, "FORM": { @@ -639,7 +683,7 @@ "TITLE": "Örnek senaryolar", "ADD": "Tümünü ekle", "ADD_SINGLE": "Bunu ekle", - "TOOLS_USED": "Tools used :" + "TOOLS_USED": "Kullanılan araçlar:" }, "NEW": { "CREATE": "Senaryo ekle", @@ -672,19 +716,19 @@ "LIST": { "SEARCH_PLACEHOLDER": "Ara..." }, - "EMPTY_MESSAGE": "No scenarios found. Create or add examples to begin.", + "EMPTY_MESSAGE": "Hiçbir senaryo bulunamadı. Başlamak için örnekler oluşturun veya ekleyin.", "SEARCH_EMPTY_MESSAGE": "No scenarios found for this search.", "API": { "ADD": { - "SUCCESS": "Scenarios added successfully", + "SUCCESS": "Senaryolar başarıyla eklendi", "ERROR": "There was an error adding scenarios, please try again." }, "UPDATE": { - "SUCCESS": "Scenarios updated successfully", + "SUCCESS": "Senaryolar başarıyla güncellendi", "ERROR": "There was an error updating scenarios, please try again." }, "DELETE": { - "SUCCESS": "Scenarios deleted successfully", + "SUCCESS": "Senaryolar başarıyla silindi", "ERROR": "There was an error deleting scenarios, please try again." } } diff --git a/app/javascript/dashboard/i18n/locale/tr/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/tr/labelsMgmt.json index dbe76f8cc..61573362b 100644 --- a/app/javascript/dashboard/i18n/locale/tr/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/tr/labelsMgmt.json @@ -4,7 +4,10 @@ "HEADER_BTN_TXT": "Etiket ekleyin", "LOADING": "Etiketler getiriliyor", "DESCRIPTION": "Etiketler, konuşmaları ve potansiyel müşterileri kategorize etmenize ve önceliklendirmenize yardımcı olur. Yan paneli kullanarak bir konuşmaya veya kişiye etiket atayabilirsiniz.", - "LEARN_MORE": "Learn more about labels", + "LEARN_MORE": "Etiketler hakkında daha fazla bilgi edinin", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Etiketleri ara...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Bu sorgu ile eşleşen öğe yok", "LIST": { "404": "Bu hesapta mevcut etiket yok.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "İsim", "DESCRIPTION": "Açıklama", - "COLOR": "Renk" + "COLOR": "Renk", + "ACTION": "Hareketler" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/tr/macros.json b/app/javascript/dashboard/i18n/locale/tr/macros.json index 5dcd51d7e..3e44974e0 100644 --- a/app/javascript/dashboard/i18n/locale/tr/macros.json +++ b/app/javascript/dashboard/i18n/locale/tr/macros.json @@ -3,9 +3,12 @@ "HEADER": "Kısayollar", "DESCRIPTION": "Kısayol; müşteri hizmetleri temsilcilerinin görevleri kolayca tamamlamasına yardımcı olan bir dizi kaydedilmiş eylemdir. Müşteri temsilcileri, bir görüşmeyi bir etiketle etiketlemek, e-posta ile konuşma özetini göndermek, özel bir özelliği güncellemek gibi bir dizi eylem tanımlayabilir ve bu eylemleri tek bir tıklamayla çalıştırabilirler.", "LEARN_MORE": "Makrolar hakkında daha fazla bilgi edinin", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Yeni bir kısayol ekle", "HEADER_BTN_TXT_SAVE": "Kısayolu Kaydet", "LOADING": "Kısayollar alınıyor", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Bir şeyler yanlış gitti. Lütfen tekrar deneyin", "ORDER_INFO": "Kısayollar eklediğiniz sırayla çalışacaktır. Bunları sürükleyerek her düğmenin yanındaki tutamakla yeniden düzenleyebilirsiniz.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "İsim", "CREATED BY": "Tarafından oluşturuldu", "LAST_UPDATED_BY": "Son güncelleyen", - "VISIBILITY": "Görünürlük" + "VISIBILITY": "Görünürlük", + "ACTIONS": "Hareketler" }, "404": "Hiç kısayol bulunamadı" }, diff --git a/app/javascript/dashboard/i18n/locale/tr/mfa.json b/app/javascript/dashboard/i18n/locale/tr/mfa.json index defd72261..bec70ff05 100644 --- a/app/javascript/dashboard/i18n/locale/tr/mfa.json +++ b/app/javascript/dashboard/i18n/locale/tr/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "İki Faktörlü Kimlik Doğrulama", - "SUBTITLE": "TOTP tabanlı kimlik doğrulama ile hesabınızı güvence altına alın", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Zaman tabanlı tek kullanımlık şifre (TOTP) kullanarak hesabınıza ekstra bir güvenlik katmanı ekleyin", "STATUS_TITLE": "Kimlik Doğrulama Durumu", "STATUS_DESCRIPTION": "İki faktörlü kimlik doğrulama ayarlarınızı ve yedek kurtarma kodlarınızı yönetin", diff --git a/app/javascript/dashboard/i18n/locale/tr/report.json b/app/javascript/dashboard/i18n/locale/tr/report.json index 30a414d98..cdb0a23da 100644 --- a/app/javascript/dashboard/i18n/locale/tr/report.json +++ b/app/javascript/dashboard/i18n/locale/tr/report.json @@ -3,7 +3,7 @@ "HEADER": "Konuşmalar", "LOADING_CHART": "Grafik verileri yükleniyor...", "NO_ENOUGH_DATA": "Rapor oluşturmak için yeterli veri yok, Lütfen daha sonra tekrar deneyin.", - "DOWNLOAD_AGENT_REPORTS": "Etken raporları indir", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Veri çekme başarısız oldu, lütfen daha sonra tekrar deneyin.", "SUMMARY_FETCHING_FAILED": "Özet çekme başarısız oldu, lütfen daha sonra tekrar deneyin.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Temsilci Genel Bakış", - "DESCRIPTION": "Konuşmalar, yanıt süreleri, çözüm süreleri ve çözülen vakalar gibi temel metriklerle temsilci performansını kolayca takip edin. Daha fazla bilgi için bir temsilcinin adına tıklayın.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Grafik verileri yükleniyor...", "NO_ENOUGH_DATA": "Rapor oluşturmak için yeterli veri yok, Lütfen daha sonra tekrar deneyin.", "DOWNLOAD_AGENT_REPORTS": "Etken raporları indir", "FILTER_DROPDOWN_LABEL": "Temsilci Seçin", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Temsilci ara" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konuşmalar", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Rapor oluşturmak için yeterli veri yok, Lütfen daha sonra tekrar deneyin.", "DOWNLOAD_LABEL_REPORTS": "Etiket raporlarını indir", "FILTER_DROPDOWN_LABEL": "Etiket Seçin", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Etiketleri ara" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konuşmalar", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Gelen kutusu seç", "ALL_INBOXES": "Tüm Gelen Kutuları", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Gelen kutularını ara" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konuşmalar", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Ekip Genel Bakışı", - "DESCRIPTION": "Konuşmalar, yanıt süreleri, çözüm süreleri ve çözülen vakalar gibi temel metriklerle ekibinizin performansına hızlı bir bakış edinin. Daha fazla detay için bir ekibin adına tıklayın.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Grafik verileri yükleniyor...", "NO_ENOUGH_DATA": "Rapor oluşturmak için yeterli veri yok, Lütfen daha sonra tekrar deneyin.", "DOWNLOAD_TEAM_REPORTS": "Ekip raporlarını indir", "FILTER_DROPDOWN_LABEL": "Ekip Seç", + "FILTERS": { + "ADD_FILTER": "Filtre Ekle", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Takım ara" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Konuşmalar", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Raporları", - "NO_RECORDS": "Mevcut CSAT anket yanıtları yok.", + "NO_RECORDS": "Henüz yanıt yok", + "NO_RECORDS_DESCRIPTION": "Müşteriler geri bildirim vermeye başladığında CSAT anket yanıtları burada görünecektir.", "DOWNLOAD": "CSAT Raporlarını İndir", "DOWNLOAD_FAILED": "CSAT Raporlarını İndirme Başarısız Oldu", "FILTERS": { + "ADD_FILTER": "Filtre Ekle", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Temsilci ara", + "INBOXES": "Gelen kutularını ara", + "TEAMS": "Takım ara", + "RATINGS": "Değerlendirmelerde ara" + }, "AGENTS": { - "PLACEHOLDER": "Temsilcileri Seç" + "LABEL": "Kullanıcı" + }, + "INBOXES": { + "LABEL": "Gelen Kutusu" + }, + "TEAMS": { + "LABEL": "Ekip" + }, + "RATINGS": { + "LABEL": "Değerlendirme" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "İletişim", - "AGENT_NAME": "Atanan temsilci", + "AGENT_NAME": "Kullanıcı", "RATING": "Değerlendirme", - "FEEDBACK_TEXT": "Geri bildirim yorumu" - } + "FEEDBACK_TEXT": "Geri bildirim yorumu", + "CONVERSATION": "Sohbet", + "CUSTOMER": "Müşteri", + "RESPONSE": "Response", + "HANDLED_BY": "İlgilenen" + }, + "UNKNOWN_CUSTOMER": "Bilinmeyen müşteri" }, + "NO_AGENT": "Atanmış temsilci yok", + "NO_FEEDBACK": "Geri bildirim sağlanmadı", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Toplam yanıtlar", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Yanıt oranı", "TOOLTIP": "Toplam yanıtların toplamı / Gönderilen CSAT anketi mesajlarının toplamı * 100" + }, + "RATING_DISTRIBUTION": "Derecelendirme dağılımı" + }, + "REVIEW_NOTES": { + "TITLE": "İnceleme notları", + "PLACEHOLDER": "Bu derecelendirmeyle ilgili yorum notları ekleyin...", + "SAVE": "Kaydet", + "CANCEL": "İptal Et", + "SAVING": "Kaydediliyor...", + "SAVED": "Notlar başarıyla kaydedildi", + "SAVE_ERROR": "Notlar kaydedilemedi", + "UPDATED_BY": "{name} tarafından {time} tarihinde güncellendi", + "UPDATED_BY_LABEL": "Güncelleyen", + "PAYWALL": { + "TITLE": "İnceleme notları eklemek için yükseltin", + "AVAILABLE_ON": "İnceleme notları özelliği yalnızca Business ve Enterprise planlarında mevcuttur.", + "UPGRADE_PROMPT": "İnceleme notları ile her CSAT yanıtına dahili bağlam ekleyin. Gerçekte ne yaşandığını kayıt altına alın, kalıpları daha hızlı tespit edin ve geri bildirimlerinizden yola çıkarak daha iyi kararlar alın.", + "UPGRADE_NOW": "Şimdi yükselt", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/tr/settings.json b/app/javascript/dashboard/i18n/locale/tr/settings.json index ee47d2026..7001a7bac 100644 --- a/app/javascript/dashboard/i18n/locale/tr/settings.json +++ b/app/javascript/dashboard/i18n/locale/tr/settings.json @@ -36,20 +36,20 @@ } }, "INTERFACE_SECTION": { - "TITLE": "Interface", - "NOTE": "Customize the look and feel of your Chatwoot dashboard.", + "TITLE": "Arayüz", + "NOTE": "Chatwoot kontrol panelinizin görünümünü ve hissini özelleştirin.", "FONT_SIZE": { - "TITLE": "Font size", - "NOTE": "Adjust the text size across the dashboard based on your preference.", - "UPDATE_SUCCESS": "Your font settings have been updated successfully", - "UPDATE_ERROR": "There is an error while updating the font settings, please try again", + "TITLE": "Yazı tipi boyutu", + "NOTE": "Tercihinize göre gösterge tablosundaki metin boyutunu ayarlayın.", + "UPDATE_SUCCESS": "Yazı tipi ayarlarınız başarıyla güncellendi", + "UPDATE_ERROR": "Yazı tipi ayarlarını güncellerken bir hata oluştu, lütfen tekrar deneyin", "OPTIONS": { - "SMALLER": "Smaller", - "SMALL": "Small", + "SMALLER": "Daha küçük", + "SMALL": "Küçük", "DEFAULT": "Varsayılan", - "LARGE": "Large", - "LARGER": "Larger", - "EXTRA_LARGE": "Extra Large" + "LARGE": "Büyük", + "LARGER": "Daha büyük", + "EXTRA_LARGE": "Ekstra Büyük" } }, "LANGUAGE": { @@ -97,7 +97,7 @@ }, "AUDIO_NOTIFICATIONS_SECTION": { "TITLE": "Sesli Uyarılar", - "NOTE": "Enable audio alerts in dashboard for new messages and conversations.", + "NOTE": "Yeni mesajlar ve konuşmalar için kontrol panelinde sesli uyarıları etkinleştirin.", "PLAY": "Sesi oynat", "ALERT_TYPES": { "NONE": "Hiç", @@ -109,16 +109,16 @@ }, "ALERT_COMBINATIONS": { "NONE": "You haven't selected any options, you won't receive any audio alerts.", - "ASSIGNED": "You'll receive alerts for conversations assigned to you.", + "ASSIGNED": "Size atanan konuşmalar için uyarılar alacaksınız.", "UNASSIGNED": "You'll receive alerts for any unassigned conversations.", - "NOTME": "You'll receive alerts for conversations assigned to others.", - "ASSIGNED+UNASSIGNED": "You'll receive alerts for your assigned conversations and any unattended ones.", - "ASSIGNED+NOTME": "You'll receive alerts for conversations assigned to you and to others, but not for unassigned ones.", - "NOTME+UNASSIGNED": "You'll receive alerts for unattended conversations and those assigned to others.", - "ASSIGNED+NOTME+UNASSIGNED": "You'll receive alerts for all conversations." + "NOTME": "Başkalarına atanan konuşmalar için uyarılar alacaksınız.", + "ASSIGNED+UNASSIGNED": "Atanan konuşmalarınız ve atanmamış konuşmalarınız için uyarılar alacaksınız.", + "ASSIGNED+NOTME": "Size ve başkalarına atanan konuşmalar için uyarılar alırsınız, ancak atanmamış olanlar için uyarı almazsınız.", + "NOTME+UNASSIGNED": "Atanmamış konuşmalar ve başkalarına atanan konuşmalar için uyarılar alacaksınız.", + "ASSIGNED+NOTME+UNASSIGNED": "Tüm konuşmalar için uyarılar alacaksınız." }, "ALERT_TYPE": { - "TITLE": "Alert events for conversations", + "TITLE": "Konuşmalar için uyarı olayları", "NONE": "Hiçbiri", "ASSIGNED": "Atanmış Konuşmalar", "ALL_CONVERSATIONS": "Tüm Konuşmalar" @@ -147,21 +147,21 @@ "SLA_MISSED_RESOLUTION": "Send email notifications when a conversation misses resolution SLA" }, "NOTIFICATIONS": { - "TITLE": "Notification preferences", - "TYPE_TITLE": "Notification type", + "TITLE": "Bildirim tercihleri", + "TYPE_TITLE": "Bildirim türü", "EMAIL": "E-Posta", - "PUSH": "Push notification", + "PUSH": "Push bildirim", "TYPES": { - "CONVERSATION_CREATED": "A new conversation is created", - "CONVERSATION_ASSIGNED": "A conversation is assigned to you", + "CONVERSATION_CREATED": "Yeni bir konuşma oluşturuldu", + "CONVERSATION_ASSIGNED": "Size bir konuşma atandı", "CONVERSATION_MENTION": "Bir konuşmada sizden bahsedildi", - "ASSIGNED_CONVERSATION_NEW_MESSAGE": "A new message is created in an assigned conversation", - "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "A new message is created in a participating conversation", - "SLA_MISSED_FIRST_RESPONSE": "A conversation misses first response SLA", - "SLA_MISSED_NEXT_RESPONSE": "A conversation misses next response SLA", - "SLA_MISSED_RESOLUTION": "A conversation misses resolution SLA" + "ASSIGNED_CONVERSATION_NEW_MESSAGE": "Size atanmış bir konuşmada yeni bir mesaj oluşturuldu", + "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "Katıldığınız bir konuşmada yeni bir mesaj oluşturuldu", + "SLA_MISSED_FIRST_RESPONSE": "Bir konuşmada ilk yanıt SLA süresi aşıldı", + "SLA_MISSED_NEXT_RESPONSE": "Bir konuşmada sonraki yanıt SLA süresi aşıldı", + "SLA_MISSED_RESOLUTION": "Bir konuşmada çözüm SLA süresi aşıldı" }, - "BROWSER_PERMISSION": "Enable push notifications for your browser so you’re able to receive them" + "BROWSER_PERMISSION": "Tarayıcınız için push bildirimleri etkinleştirin, böylece bildirimleri alabilirsiniz" }, "API": { "UPDATE_SUCCESS": "Bildirim tercihleriniz başarıyla güncellendi", @@ -177,9 +177,9 @@ "PARTICIPATING_CONVERSATION_NEW_MESSAGE": "Katıldığım bir konuşmada yeni bir mesaj oluşturulduğunda anlık bildirimler gönderin", "HAS_ENABLED_PUSH": "Bu tarayıcı için bildirim özelliğini etkinleştirdiniz.", "REQUEST_PUSH": "Bildirimlerini etkinleştirin", - "SLA_MISSED_FIRST_RESPONSE": "Send push notifications when a conversation misses first response SLA", - "SLA_MISSED_NEXT_RESPONSE": "Send push notifications when a conversation misses next response SLA", - "SLA_MISSED_RESOLUTION": "Send push notifications when a conversation misses resolution SLA" + "SLA_MISSED_FIRST_RESPONSE": "Bir konuşmada ilk yanıt SLA süresi aşıldığında push bildirim gönder", + "SLA_MISSED_NEXT_RESPONSE": "Bir konuşmada sonraki yanıt SLA süresi aşıldığında push bildirim gönder", + "SLA_MISSED_RESOLUTION": "Bir konuşmada çözüm SLA süresi aşıldığında push bildirim gönder" }, "PROFILE_IMAGE": { "LABEL": "Profil Resmi" @@ -235,7 +235,7 @@ "SELECTOR_SUBTITLE": "Listeden bir hesap seçin", "PROFILE_SETTINGS": "Profile settings", "YEAR_IN_REVIEW": "Year in Review", - "KEYBOARD_SHORTCUTS": "Keyboard shortcuts", + "KEYBOARD_SHORTCUTS": "Klavye kısayolları", "APPEARANCE": "Change appearance", "SUPER_ADMIN_CONSOLE": "SuperAdmin console", "DOCS": "Read documentation", @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "İndir", "UPLOADING": "Yükleniyor...", - "INSTAGRAM_STORY_UNAVAILABLE": "Bu hikaye artık mevcut değil." + "INSTAGRAM_STORY_UNAVAILABLE": "Bu hikaye artık mevcut değil.", + "INSTAGRAM_STORY_REPLY": "Hikayene cevap verildi:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Haritada Görüntüle" @@ -374,11 +375,61 @@ "CHANNELS": "Kanallar", "SET_AUTO_OFFLINE": { "TEXT": "Otomatik olarak çevrimdışı olarak işaretle", - "INFO_TEXT": "Sistem sizi otomatik olarak çevrimdışı işaretlesin, uygulamayı veya gösterge tablosunu kullanmıyorsanız.", - "INFO_SHORT": "Automatically mark offline when you aren't using the app." + "INFO_TEXT": "Uygulamayı veya kontrol panelini kullanmadığınızda sistemin sizi otomatik olarak çevrimdışı olarak işaretlemesine izin verin.", + "INFO_SHORT": "Uygulamayı kullanmadığınızda otomatik olarak çevrimdışı olarak işaretleyin." }, "DOCS": "Dokümantasyonu oku", - "SECURITY": "Güvenlik" + "SECURITY": "Güvenlik", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Model seç", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Çok yakında", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Özellikleri", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Fatura", @@ -401,7 +452,7 @@ "BUTTON_TXT": "Buy more credits", "DOCUMENTS": "Belgeler", "RESPONSES": "Responses", - "UPGRADE": "Captain is not available on the free plan, upgrade now to get access to assistants, copilot and more.", + "UPGRADE": "Captain, ücretsiz planda mevcut değildir. Asistanlara, Copilot'a ve daha fazlasına erişim sağlamak için şimdi yükseltin.", "REFRESH_CREDITS": "Yenile" }, "CHAT_WITH_US": { @@ -437,7 +488,7 @@ "SECURITY_SETTINGS": { "TITLE": "Güvenlik", "DESCRIPTION": "Hesap güvenlik ayarlarınızı yönetin.", - "LINK_TEXT": "Learn more about SAML SSO", + "LINK_TEXT": "SAML SSO hakkında daha fazla bilgi edinin", "SAML_DISABLED_MESSAGE": "SAML SSO is currently disabled. Please contact your administrator to enable this feature.", "SAML": { "TITLE": "SAML SSO", @@ -485,13 +536,13 @@ "IDP_ENTITY_ID_ERROR": "Identity Provider Entity ID is required" }, "ENTERPRISE_PAYWALL": { - "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", - "UPGRADE_PROMPT": "Upgrade to an Enterprise plan to access SAML single sign-on and other advanced security features.", + "AVAILABLE_ON": "SAML SSO özelliği yalnızca Enterprise planlarında mevcuttur.", + "UPGRADE_PROMPT": "SAML tek oturum açma ve diğer gelişmiş güvenlik özelliklerine erişmek için Enterprise planına yükseltin.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, "PAYWALL": { - "TITLE": "Upgrade to enable SAML SSO", - "AVAILABLE_ON": "The SAML SSO feature is only available in the Enterprise plans.", + "TITLE": "SAML SSO'yu etkinleştirmek için yükseltin", + "AVAILABLE_ON": "SAML SSO özelliği yalnızca Enterprise planlarında mevcuttur.", "UPGRADE_PROMPT": "Upgrade your plan to get access to SAML single sign-on and other advanced features.", "UPGRADE_NOW": "Şimdi yükselt", "CANCEL_ANYTIME": "You can change or cancel your plan anytime" @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Konuşma İş Akışları", + "DESCRIPTION": "Konuşma çözümlemesi için kuralları ve zorunlu alanları yapılandırın." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Öznitelik ara" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Görüşmeyi Çöz", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Görüşmeyi Çöz", + "CANCEL": "İptal Et" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Evet", + "NO": "Hayır" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Şimdi yükselt", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Eyvah! Hiçbir Chatwoot hesabı bulunamadı. Devam etmek için yeni bir hesap oluşturun.", "NEW_ACCOUNT": "Yeni hesap", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Devam et", "CANCEL_BUTTON_LABEL": "İptal Et" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Dengeli", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/tr/signup.json b/app/javascript/dashboard/i18n/locale/tr/signup.json index 9900d3ba6..d85d92db5 100644 --- a/app/javascript/dashboard/i18n/locale/tr/signup.json +++ b/app/javascript/dashboard/i18n/locale/tr/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Hesap oluştur", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Kayıt ol", "TESTIMONIAL_HEADER": "İlerlemek için tek bir adım atmanız yeterlidir", "TESTIMONIAL_CONTENT": "Müşterilerinizle etkileşimde bulunmaktan, onları elde tutmaktan ve yeni müşteriler bulmaktan sadece bir adım uzaktasınız.", diff --git a/app/javascript/dashboard/i18n/locale/tr/sla.json b/app/javascript/dashboard/i18n/locale/tr/sla.json index fbcf0b143..a89c5c0e6 100644 --- a/app/javascript/dashboard/i18n/locale/tr/sla.json +++ b/app/javascript/dashboard/i18n/locale/tr/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Hizmet Seviyesi Anlaşmaları (SLA’lar), ekibiniz ile müşterileriniz arasındaki beklentileri net bir şekilde tanımlayan sözleşmelerdir. Yanıt ve çözüm süreleri için standartlar belirleyerek sorumluluk çerçevesi oluşturur ve tutarlı, yüksek kaliteli bir deneyim sağlar.", "LEARN_MORE": "SLA hakkında daha fazla bilgi edinin", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "SLA oluşturmak için yükseltin", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Çalışma saatleri" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/tr/snooze.json b/app/javascript/dashboard/i18n/locale/tr/snooze.json new file mode 100644 index 000000000..160adf4e1 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/tr/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "dakika", + "HOUR": "hour", + "HOURS": "saat", + "DAY": "gün", + "DAYS": "gün", + "WEEK": "hafta", + "WEEKS": "weeks", + "MONTH": "ay", + "MONTHS": "months", + "YEAR": "yıl", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "sonraki", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "yarın", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "sonraki hafta", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "hafta", + "DAY": "gün" + } +} diff --git a/app/javascript/dashboard/i18n/locale/tr/teamsSettings.json b/app/javascript/dashboard/i18n/locale/tr/teamsSettings.json index 53cfab154..08d9401f9 100644 --- a/app/javascript/dashboard/i18n/locale/tr/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/tr/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Ekipler, temsilcileri sorumluluklarına göre gruplar halinde organize etmenizi sağlar. Bir temsilci birden fazla ekibe ait olabilir. Ortak çalışırken, konuşmaları belirli ekiplere atayabilirsiniz.", "LEARN_MORE": "Ekipler hakkında daha fazla bilgi edinin", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Takım ara...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Bu hesap üzerine oluşturulmuş ekip bulunmamaktadır.", "EDIT_TEAM": "Ekibi düzenle", @@ -64,7 +67,7 @@ "ERROR_MESSAGE": "Ekip detayları kaydedilemedi. Tekrar deneyin." }, "AGENTS": { - "AGENT": "TEMSİLCİ", + "AGENT": "Kullanıcı", "EMAIL": "E-Posta", "BUTTON_TEXT": "Kullanıcı Ekle", "ADD_AGENTS": "Ekibinize Temsiciler Ekleniyor...", diff --git a/app/javascript/dashboard/i18n/locale/uk/agentBots.json b/app/javascript/dashboard/i18n/locale/uk/agentBots.json index 5bdd49dd8..f2fae5251 100644 --- a/app/javascript/dashboard/i18n/locale/uk/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/uk/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Завантаження редактора...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "Система", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Отримання ботів...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "URL вебхука" + "URL": "URL вебхука", + "ACTIONS": "Дії" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/uk/agentMgmt.json b/app/javascript/dashboard/i18n/locale/uk/agentMgmt.json index 146890e69..be65cb779 100644 --- a/app/javascript/dashboard/i18n/locale/uk/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Адміністратор", "AGENT": "Агент" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Немає агентів, пов'язаних з цим обліковим записом", "TITLE": "Керування агентами у вашій команді", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Не вдалося підключитися до Woot Server, спробуйте ще раз пізніше" } }, + "SEARCH_PLACEHOLDER": "Пошук агентів...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Результатів не знайдено." }, diff --git a/app/javascript/dashboard/i18n/locale/uk/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/uk/attributesMgmt.json index 4925f8e2a..79d0cb40a 100644 --- a/app/javascript/dashboard/i18n/locale/uk/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Отримання користувацьких атрибутів", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Атрибути пошуку...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Розмови", "CONTACT": "Контакт" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Увімкнути перевірку регулярного виразу" + }, + "BADGES": { + "PRE_CHAT": "Пре-чат", + "RESOLUTION": "Вирішення" } }, "API": { @@ -131,8 +138,8 @@ } }, "BADGES": { - "PRE_CHAT": "Pre-chat", - "RESOLUTION": "Resolution" + "PRE_CHAT": "Пре-чат", + "RESOLUTION": "Вирішення" } } } diff --git a/app/javascript/dashboard/i18n/locale/uk/automation.json b/app/javascript/dashboard/i18n/locale/uk/automation.json index d26cef431..566a65d99 100644 --- a/app/javascript/dashboard/i18n/locale/uk/automation.json +++ b/app/javascript/dashboard/i18n/locale/uk/automation.json @@ -3,8 +3,11 @@ "HEADER": "Автоматизація", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Додати правило автоматизації", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Отримання правил автоматизації", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Додати правило автоматизації", "SUBMIT": "Створити", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Ім'я", - "DESCRIPTION": "Опис", "ACTIVE": "Активний", - "CREATED_ON": "Створено" + "CREATED_ON": "Створено", + "ACTIONS": "Дії" }, "404": "Не знайдено правил автоматизації" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Змінити пріоритет", "ADD_SLA": "Додати SLA", - "OPEN_CONVERSATION": "Відкрити розмову" + "OPEN_CONVERSATION": "Відкрити розмову", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/uk/bulkActions.json b/app/javascript/dashboard/i18n/locale/uk/bulkActions.json index b80380077..fa7f9c969 100644 --- a/app/javascript/dashboard/i18n/locale/uk/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/uk/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Статус розмови успішно оновлено.", "UPDATE_FAILED": "Не вдалося оновити розмови, будь ласка, спробуйте ще раз." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Призначити мітки", "NO_LABELS_FOUND": "Міток не знайдено", diff --git a/app/javascript/dashboard/i18n/locale/uk/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/uk/cannedMgmt.json index 17f5782e8..f2d7e53db 100644 --- a/app/javascript/dashboard/i18n/locale/uk/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Швидкі відповіді", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Додати швидку відповідь", "LOADING": "Отримання швидких відповідей...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Немає елементів, що відповідають запиту.", "LIST": { "404": "В цьому обліковому записі немає швидких відповідей.", diff --git a/app/javascript/dashboard/i18n/locale/uk/chatlist.json b/app/javascript/dashboard/i18n/locale/uk/chatlist.json index 9df6601b8..7d98c056d 100644 --- a/app/javascript/dashboard/i18n/locale/uk/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/uk/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Очікує відповіді: спершу короткі" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { @@ -104,7 +107,7 @@ "CONTENT": "Shared contact" }, "embed": { - "CONTENT": "Embedded content" + "CONTENT": "Вбудований вміст" } }, "CHAT_SORT_BY_FILTER": { diff --git a/app/javascript/dashboard/i18n/locale/uk/companies.json b/app/javascript/dashboard/i18n/locale/uk/companies.json index a1b662235..0f464ae74 100644 --- a/app/javascript/dashboard/i18n/locale/uk/companies.json +++ b/app/javascript/dashboard/i18n/locale/uk/companies.json @@ -1,33 +1,33 @@ { "COMPANIES": { - "HEADER": "Companies", + "HEADER": "Компанії", "SORT_BY": { "LABEL": "Сортувати за", "OPTIONS": { "NAME": "Ім'я", "DOMAIN": "Домен", "CREATED_AT": "Створений в", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "Кількість контактів" } }, "ORDER": { - "LABEL": "Order", + "LABEL": "Порядок", "OPTIONS": { - "ASCENDING": "Ascending", - "DESCENDING": "Descending" + "ASCENDING": "За зростанням", + "DESCENDING": "За спаданням" } }, - "SEARCH_PLACEHOLDER": "Search companies...", - "LOADING": "Loading companies...", - "UNNAMED": "Unnamed Company", - "CONTACTS_COUNT": "{n} contact | {n} contacts", + "SEARCH_PLACEHOLDER": "Пошук компаній...", + "LOADING": "Завантаження компаній...", + "UNNAMED": "Компанія без назви", + "CONTACTS_COUNT": "{n} контакт | {n} контактів", "EMPTY_STATE": { - "TITLE": "No companies found" + "TITLE": "Не знайдено жодної компанії" } }, "COMPANIES_LAYOUT": { "PAGINATION_FOOTER": { - "SHOWING": "Showing {startItem} – {endItem} of {totalItems} company | Showing {startItem} – {endItem} of {totalItems} companies" + "SHOWING": "Показати {startItem} – {endItem} з {totalItems} компаній | Показати {startItem} – {endItem} з {totalItems} компаній" } } } diff --git a/app/javascript/dashboard/i18n/locale/uk/contact.json b/app/javascript/dashboard/i18n/locale/uk/contact.json index edc5c5e52..10a1a42fd 100644 --- a/app/javascript/dashboard/i18n/locale/uk/contact.json +++ b/app/javascript/dashboard/i18n/locale/uk/contact.json @@ -18,8 +18,8 @@ "CREATED_AT_LABEL": "Створено", "NEW_MESSAGE": "Нове повідомлення", "CALL": "Дзвінок", - "CALL_INITIATED": "Calling the contact…", - "CALL_FAILED": "Unable to start the call. Please try again.", + "CALL_INITIATED": "Викликаємо контакт…", + "CALL_FAILED": "Не можливо розпочати виклик. Будь ласка, спробуйте пізніше.", "VOICE_INBOX_PICKER": { "TITLE": "Оберіть голосову теку" }, @@ -457,8 +457,11 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { - "PLACEHOLDER": "Add TikTok" + "PLACEHOLDER": "Додати TikTok" }, "LINKEDIN": { "PLACEHOLDER": "Add LinkedIn" @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Немає контактів, які відповідають вашому пошуку 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Призначити мітки", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Для:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Тема :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Копія:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Прихована копія:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Прихована копія" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/uk/contentTemplates.json b/app/javascript/dashboard/i18n/locale/uk/contentTemplates.json index fcf733290..3ffeb4ba5 100644 --- a/app/javascript/dashboard/i18n/locale/uk/contentTemplates.json +++ b/app/javascript/dashboard/i18n/locale/uk/contentTemplates.json @@ -28,7 +28,7 @@ "TYPES": { "MEDIA": "Media", "QUICK_REPLY": "Quick Reply", - "CALL_TO_ACTION": "Call to Action", + "CALL_TO_ACTION": "Виклик до дії", "TEXT": "Текст" } }, diff --git a/app/javascript/dashboard/i18n/locale/uk/conversation.json b/app/javascript/dashboard/i18n/locale/uk/conversation.json index 5eed7bb56..abe9a51ef 100644 --- a/app/javascript/dashboard/i18n/locale/uk/conversation.json +++ b/app/javascript/dashboard/i18n/locale/uk/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "Це повідомлення не підтримується. Ви можете переглянути це повідомлення у додатку Facebook Messenger", "UNSUPPORTED_MESSAGE_INSTAGRAM": "Це повідомлення не підтримується. Ви можете переглянути це повідомлення у додатку Instagram.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Повідомлення успішно видалено", "FAIL_DELETE_MESSSAGE": "Не вдалося видалити повідомлення! Спробуйте ще раз", "NO_RESPONSE": "Немає відповіді", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Не вдалося призначити мітку. Будь-ласка, спробуйте ще раз." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Призначено команду \"#{team}\" до ID розмови {conversationId}", "FAILED": "Не вдалося призначити команду. Будь ласка, спробуйте ще раз." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Вимкнути підпис", "MSG_INPUT": "Shift + Enter для нового рядка. Для вибору швидкої відповіді, уведіть '/'.", "PRIVATE_MSG_INPUT": "Shift + Enter для нового рядка. Видиме лише для співробітників", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Не налаштовано підпис повідомлення, будь ласка, налаштуйте його в налаштуваннях профілю.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Натисніть тут для оновлення", "WHATSAPP_TEMPLATES": "Шаблони Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Перетягніть сюди, щоб прикріпити", "START_AUDIO_RECORDING": "Почати аудіозапис", "STOP_AUDIO_RECORDING": "Зупинити аудіозапис", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "На", "ADD_BCC": "Додати bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Файл перевищує максимальний розмір вкладень {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} МБ", + "FILE_TYPE_NOT_SUPPORTED": "Тип файлу {fileName} не підтримується у цій розмові", "MESSAGE_ERROR": "Не вдалося надіслати повідомлення, будь ласка, повторіть спробу пізніше", "SENT_BY": "Надіслав:", "BOT": "Бот", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Не вдалося надіслати повідомлення! Повторіть спробу", "TRY_AGAIN": "повторити", "ASSIGNMENT": { @@ -281,10 +293,10 @@ "OUTGOING_CALL": "Outgoing call", "CALL_IN_PROGRESS": "Call in progress", "NOT_ANSWERED_YET": "Not answered yet", - "HANDLED_IN_ANOTHER_TAB": "Being handled in another tab", - "REJECT_CALL": "Reject", - "JOIN_CALL": "Join call", - "END_CALL": "End call" + "HANDLED_IN_ANOTHER_TAB": "Оброблюється в іншій вкладці", + "REJECT_CALL": "Відхилити", + "JOIN_CALL": "Доєднатися до виклику", + "END_CALL": "Завершити виклик" } }, "EMAIL_TRANSCRIPT": { @@ -294,6 +306,7 @@ "CANCEL": "Скасувати", "SEND_EMAIL_SUCCESS": "Текст розмови надісланий", "SEND_EMAIL_ERROR": "Сталася помилка, будь ласка, спробуйте ще раз", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Надіслати клієнту стенограму", "SEND_TO_AGENT": "Надіслати стенограму агенту", diff --git a/app/javascript/dashboard/i18n/locale/uk/customRole.json b/app/javascript/dashboard/i18n/locale/uk/customRole.json index be0ae80a6..d602d8a6a 100644 --- a/app/javascript/dashboard/i18n/locale/uk/customRole.json +++ b/app/javascript/dashboard/i18n/locale/uk/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Немає елементів, що відповідають запиту.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/uk/datePicker.json b/app/javascript/dashboard/i18n/locale/uk/datePicker.json index 8cd0f07ee..a73e646b2 100644 --- a/app/javascript/dashboard/i18n/locale/uk/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/uk/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Підтвердити", "CLEAR_BUTTON": "Очистити", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Останні 3 місяці", "LAST_6_MONTHS": "Останні 6 місяців", "LAST_YEAR": "Минулий рік", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Довільний діапазон дат" } } diff --git a/app/javascript/dashboard/i18n/locale/uk/general.json b/app/javascript/dashboard/i18n/locale/uk/general.json index b89d07068..24ebd28cc 100644 --- a/app/javascript/dashboard/i18n/locale/uk/general.json +++ b/app/javascript/dashboard/i18n/locale/uk/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Закрити", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Так", + "NO": "Ні" } } diff --git a/app/javascript/dashboard/i18n/locale/uk/generalSettings.json b/app/javascript/dashboard/i18n/locale/uk/generalSettings.json index 24fedd761..04c2ee054 100644 --- a/app/javascript/dashboard/i18n/locale/uk/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/uk/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Шукати чи перейти до", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Загальні", "REPORTS": "Звіти", diff --git a/app/javascript/dashboard/i18n/locale/uk/helpCenter.json b/app/javascript/dashboard/i18n/locale/uk/helpCenter.json index 9e36d17d9..d9ab1728c 100644 --- a/app/javascript/dashboard/i18n/locale/uk/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/uk/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Помилка при видаленні статті" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Будь ласка, додайте заголовок і вміст статті. Лише потім можна оновити налаштування" }, diff --git a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json index 1b1e32968..e69df0f03 100644 --- a/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Вхідні", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -58,11 +61,11 @@ "DUPLICATE_INBOX_BANNER": "This Instagram account was migrated to the new Instagram channel inbox. You won’t be able to send/receive Instagram messages from this inbox anymore." }, "TIKTOK": { - "CONTINUE_WITH_TIKTOK": "Continue with TikTok", - "CONNECT_YOUR_TIKTOK_PROFILE": "Connect your TikTok Profile", - "HELP": "To add your TikTok profile as a channel, you need to authenticate your TikTok Profile by clicking on 'Continue with TikTok' ", - "ERROR_MESSAGE": "There was an error connecting to TikTok, please try again", - "ERROR_AUTH": "There was an error connecting to TikTok, please try again" + "CONTINUE_WITH_TIKTOK": "Продовжити в TikTok", + "CONNECT_YOUR_TIKTOK_PROFILE": "Приєднайте ваш профіль TikTok", + "HELP": "Щоб додати ваш профіль TikTok як канал потрібно аутентифікувати його клацнувши 'Продовжити в TikTok' ", + "ERROR_MESSAGE": "При спробі під'єднатися до TikTok виникла помилка, будь ласка, спробуйте пізніше", + "ERROR_AUTH": "При спробі під'єднатися до TikTok виникла помилка, будь ласка, спробуйте пізніше" }, "TWITTER": { "HELP": "Щоб додати свій профіль у Twitter як канал, вам потрібно авторизувати свій профіль у Twitter, натиснувши кнопку \"Увійти через Twitter\" ", @@ -389,10 +392,10 @@ "ERROR_MESSAGE": "Ми не змогли зберегти email канал" }, "FINISH_MESSAGE": "Почніть перенаправляти листи до наступної адреси електронної пошти.", - "FINISH_MESSAGE_NO_FORWARDING": "Your email inbox has been created successfully! You need to configure SMTP and IMAP credentials to send and receive emails. Without these settings, no emails will be processed.", - "FORWARDING_ADDRESS_LABEL": "Forward emails to this address:", + "FINISH_MESSAGE_NO_FORWARDING": "Джерело для вашої поштової скриньки успішно створене! Вам потрібно налаштувати дані IMAP та SMTP щоб отримувати та надсилати листи. Без цих налаштувань ваші листи не будуть оброблятися.", + "FORWARDING_ADDRESS_LABEL": "Перенаправляти листи на цю адресу:", "CONFIGURE_SMTP_IMAP_LINK": "Натисніть тут", - "CONFIGURE_SMTP_IMAP_TEXT": " to configure IMAP and SMTP settings" + "CONFIGURE_SMTP_IMAP_TEXT": " налаштувати параметри IMAP та SMTP" }, "LINE_CHANNEL": { "TITLE": "LINE Канал", @@ -480,7 +483,7 @@ }, "TIKTOK": { "TITLE": "TikTok", - "DESCRIPTION": "Connect your TikTok account" + "DESCRIPTION": "Під'єднати ваш обліковий запис TikTok" }, "VOICE": { "TITLE": "Voice", @@ -575,7 +578,7 @@ "SUBTITLE": "Використовувати лише налаштовану бізнес-назву як ім'я відправника в заголовку електронної пошти." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Налаштуйте ваше корпоративне ім'я", + "BUTTON_TEXT": "Налаштуйте ваше корпоративне ім'я", "PLACEHOLDER": "Введіть ваше корпоративне ім'я", "SAVE_BUTTON_TEXT": "Зберегти" } @@ -589,8 +592,10 @@ "DISABLED": "Вимкнено" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Увімкнено", - "DISABLED": "Вимкнено" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Увімкнено" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Увімкнути/Вимкнути показ імені співробітника в електронній пошті, якщо це вимкнено, то буде відображатися бізнес-ім'я", "ENABLE_CONTINUITY_VIA_EMAIL": "Увімкнути безперервність розмови через електронну пошту", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Розмови продовжуватимуться через електронну пошту, якщо доступна контактна адреса.", - "LOCK_TO_SINGLE_CONVERSATION": "Заблокувати бесіду", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Увімкнути або вимкнути кілька бесід для одного контакту в цій папці Вхідні", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Налаштування каналу", "INBOX_UPDATE_SUB_TEXT": "Оновіть параметри каналу", "AUTO_ASSIGNMENT_SUB_TEXT": "Увімкнення або вимкнення автоматичного призначення нових розмов до агентів, доданих до цього каналу.", @@ -722,7 +729,7 @@ "INBOX_IDENTIFIER_SUB_TEXT": "Використовуйте токен `inbox_identifier`, показаний тут для аутентифікації ваших API клієнтів.", "FORWARD_EMAIL_TITLE": "Переслати на ел. пошту", "FORWARD_EMAIL_SUB_TEXT": "Почніть перенаправляти листи до наступної адреси електронної пошти.", - "FORWARD_EMAIL_NOT_CONFIGURED": "Forwarding emails to your inbox is currently disabled on this installation. To use this feature, it must be enabled by your administrator. Please get in touch with them to proceed.", + "FORWARD_EMAIL_NOT_CONFIGURED": "Перенаправлення листів до теки \"Вхідні\" наразі відключено для цієї інсталяції. Щоб використовувати цю функцію вона має бути увімкнена адміністратором. Будь ласка, зверніться до нього.", "ALLOW_MESSAGES_AFTER_RESOLVED": "Дозволити повідомлення після закінчення розмови", "ALLOW_MESSAGES_AFTER_RESOLVED_SUB_TEXT": "Дозволити кінцевим користувачам надсилати повідомлення навіть після закриття розмови.", "WHATSAPP_SECTION_SUBHEADER": "Цей ключ API використовується для інтеграції з API WhatsApp.", @@ -758,6 +765,7 @@ "LABEL": "Довідковий центр", "PLACEHOLDER": "Виберіть довідковий центр", "SELECT_PLACEHOLDER": "Виберіть довідковий центр", + "NONE": "Нiчого", "REMOVE": "Видалити довідковий центр", "SUB_TEXT": "Прикріпити Довідковий центр до папки Вхідні" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Будь ласка, введіть значення, більше за 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Обмеження максимальної кількості розмов із цього джерела, яку можна автоматично призначити агенту" }, + "ASSIGNMENT": { + "TITLE": "Призначення до розмови", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Активний", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Скасувати", + "CONFIRM_DELETE": "Видалити", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Повторна авторизація", "SUBTITLE": "Підключення до Facebook закінчилося, будь ласка, поновіть сторінку Facebook, щоб продовжити роботу служб", @@ -809,34 +864,48 @@ "PLACEHOLDER": "Please enter a message to show users with the form" }, "BUTTON_TEXT": { - "LABEL": "Button text", - "PLACEHOLDER": "Please rate us" + "LABEL": "Текст кнопки", + "PLACEHOLDER": "Будь ласка, оцініть нас" }, "LANGUAGE": { "LABEL": "Мова", - "PLACEHOLDER": "Select template language" + "PLACEHOLDER": "Виберіть мову шаблону" }, "MESSAGE_PREVIEW": { - "LABEL": "Message preview", - "TOOLTIP": "This may vary slightly when rendered on WhatsApp's platform." + "LABEL": "Попередній перегляд повідомлення", + "TOOLTIP": "Це може дещо відрізнятися від того що відображає платформа WhatsApp." }, "TEMPLATE_STATUS": { - "APPROVED": "Approved by WhatsApp", - "PENDING": "Pending WhatsApp approval", - "REJECTED": "Meta rejected the template", - "DEFAULT": "Needs WhatsApp approval", - "NOT_FOUND": "The template does not exist in the Meta platform." + "APPROVED": "Підтверджено WhatsApp", + "PENDING": "Очікує підтвердження WhatsApp", + "REJECTED": "Шаблон відхилено Meta", + "DEFAULT": "Потребує підтвердження WhatsApp", + "NOT_FOUND": "Цей шаблон не існує на платформі Meta." }, "TEMPLATE_CREATION": { - "SUCCESS_MESSAGE": "WhatsApp template created successfully and sent for approval", - "ERROR_MESSAGE": "Failed to create WhatsApp template" + "SUCCESS_MESSAGE": "Шаблон WhatsApp успішно створено та надіслано на підтвердження", + "ERROR_MESSAGE": "Не вдалося створити шаблон WhatsApp" }, "TEMPLATE_UPDATE_DIALOG": { - "TITLE": "Edit survey details", - "DESCRIPTION": "We will delete the previous template and make a new one which will be sent again for WhatsApp approval", - "CONFIRM": "Create new template", + "TITLE": "Редагувати деталі опитування", + "DESCRIPTION": "Попередній шаблон буде видалено та створено новий, який буде надіслано у WhatsApp для підтвердження", + "CONFIRM": "Створити новий шаблон", "CANCEL": "Повернутися назад" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Повідомлення для відвідувачів у неробочі години", "TOGGLE_HELP": "Включення покаже робочі години на віджеті в чаті, навіть якщо всі агенти перебувають в автономному режимі. У неробочі години відвідувачі можуть бути попереджені повідомленням і формою попереднього чату.", "DAY": { + "DAY": "День", + "AVAILABILITY": "Присутність", + "HOURS": "Hours", "ENABLE": "Увімкнути доступність для цього дня", "UNAVAILABLE": "Неприсутній", - "HOURS": "години", "VALIDATION_ERROR": "Час початку має бути менше часу закриття.", "CHOOSE": "Обрати" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Протягом дня" }, "WIDGET_COLOR_LABEL": "Колір віджета", - "WIDGET_BUBBLE_POSITION_LABEL": "Позиція віджету", - "WIDGET_BUBBLE_TYPE_LABEL": "Тип віджету", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Тип:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Почніть розмову з нами", - "LABEL": "Заголовок віджета", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Почніть розмову з нами" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "За замовчуванням", - "CHAT": "Чат" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Зазвичай відповідаємо за декілька хвилин", diff --git a/app/javascript/dashboard/i18n/locale/uk/integrationApps.json b/app/javascript/dashboard/i18n/locale/uk/integrationApps.json index 8bc5136c5..ff6b2ec55 100644 --- a/app/javascript/dashboard/i18n/locale/uk/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/uk/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Отримання інтеграцій", "NO_HOOK_CONFIGURED": "Немає сконфігурованих інтеграцій {integrationId} в цьому обліковому записі.", "HEADER": "Додатки", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Увімкнено", "DISABLED": "Вимкнено" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Отримання інтеграційних хуків", "INBOX": "Вхідні", + "ACTIONS": "Дії", "DELETE": { "BUTTON_TEXT": "Видалити" } diff --git a/app/javascript/dashboard/i18n/locale/uk/integrations.json b/app/javascript/dashboard/i18n/locale/uk/integrations.json index dcca01734..f833f8450 100644 --- a/app/javascript/dashboard/i18n/locale/uk/integrations.json +++ b/app/javascript/dashboard/i18n/locale/uk/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Події з підпискою", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Скасувати", "DESC": "Вебхуки автоматично повідомляють про те, що відбувається у вашому обліковому записі Chatwoot. Будь ласка, введіть дійсний URL для налаштування зворотного виклику.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Видалити", "DELETE_CONFIRMATION": { "TITLE": "Видалити інтеграцію", @@ -145,7 +160,29 @@ "EXPAND": "Розширити", "MAKE_FRIENDLY": "Змінити сигнал повідомлення на дружній", "MAKE_FORMAL": "Використовувати формальний сигнал", - "SIMPLIFY": "Спростити" + "SIMPLIFY": "Спростити", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Професійний", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Дружній" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Вміст чернетки", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Панель управління

Додатки дозволяють організаціям вставляти в панель керування Chatwoot інформацію, щоб надати контекст агентам підтримки клієнтів. Ця функція дозволяє створювати додаток незалежно і вставляти його в панелі управління відомості про користувача, їхні замовлення або історію попередніх платежів.

Коли ви вставляєте свій застосунок за допомогою панелі керування в Chatwoot, ваша програма отримає контекст розмови і зв'яжеться як віконна подія. Налаштуйте слухача для заходу повідомлення на вашій сторінці, щоб отримати контекст.

Щоб додати нову панель керування, натисніть кнопку 'Додати нову програму'.

", "DESCRIPTION": "Додатки дозволяють організаціям вбудовувати інформаційну панель керування і надавати контекст для агентів підтримки клієнтів. Ця функція дозволяє створювати додаток незалежно і додавати інформацію, що надавали про користувача, його замовлення або історію платежів.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Поки що немає налаштованих додатків в цьому акаунті", "LOADING": "Отримання додатків панелі керування...", "TABLE_HEADER": { "NAME": "Ім'я", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Дії" }, "EDIT_TOOLTIP": "Редагувати додаток", "DELETE_TOOLTIP": "Видалити додаток" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "Ви можете змінити або скасувати план у будь-який час" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI доступний тільки в планах Enterprise.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Будь ласка, зверніться до адміністратора для оновлення." }, diff --git a/app/javascript/dashboard/i18n/locale/uk/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/uk/labelsMgmt.json index e85ca8130..d707dbc9b 100644 --- a/app/javascript/dashboard/i18n/locale/uk/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/uk/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Отримання міток", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Пошук міток...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Немає елементів, що відповідають запиту", "LIST": { "404": "У цьому акаунті немає міток.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Ім'я", "DESCRIPTION": "Опис", - "COLOR": "Колір" + "COLOR": "Колір", + "ACTION": "Дії" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/uk/macros.json b/app/javascript/dashboard/i18n/locale/uk/macros.json index fbe695139..037531e4f 100644 --- a/app/javascript/dashboard/i18n/locale/uk/macros.json +++ b/app/javascript/dashboard/i18n/locale/uk/macros.json @@ -3,9 +3,12 @@ "HEADER": "Макрос", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Додати новий макрос", "HEADER_BTN_TXT_SAVE": "Зберегти макрос", "LOADING": "Завантаження макросів", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Щось пішло не так. Будь ласка, оновіть сторінку", "ORDER_INFO": "Макроси запускається у порядку додавання ваших дій. Ви можете переставити їх шляхом перетягування.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Ім'я", "CREATED BY": "Створено", "LAST_UPDATED_BY": "Оновлено", - "VISIBILITY": "Видимість" + "VISIBILITY": "Видимість", + "ACTIONS": "Дії" }, "404": "Макросів не знайдено" }, diff --git a/app/javascript/dashboard/i18n/locale/uk/mfa.json b/app/javascript/dashboard/i18n/locale/uk/mfa.json index 496335c5d..ddd1b510a 100644 --- a/app/javascript/dashboard/i18n/locale/uk/mfa.json +++ b/app/javascript/dashboard/i18n/locale/uk/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/uk/report.json b/app/javascript/dashboard/i18n/locale/uk/report.json index 6af3bdc23..3431096b8 100644 --- a/app/javascript/dashboard/i18n/locale/uk/report.json +++ b/app/javascript/dashboard/i18n/locale/uk/report.json @@ -3,7 +3,7 @@ "HEADER": "Бесіди", "LOADING_CHART": "Завантаження даних діаграми...", "NO_ENOUGH_DATA": "Ми не отримали достатньо даних для генерації звіту. Будь ласка, спробуйте ще раз пізніше.", - "DOWNLOAD_AGENT_REPORTS": "Завантажити звіти агентів", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Не вдалося отримати дані. Будь ласка, повторіть спробу пізніше.", "SUMMARY_FETCHING_FAILED": "Не вдалося отримати дані. Будь ласка, повторіть спробу пізніше.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Огляд Агентів", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Завантаження даних діаграми...", "NO_ENOUGH_DATA": "Ми не отримали достатньо даних для генерації звіту. Будь ласка, спробуйте ще раз пізніше.", "DOWNLOAD_AGENT_REPORTS": "Завантажити звіти агентів", "FILTER_DROPDOWN_LABEL": "Виберіть агента", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Пошук агентів" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Бесіди", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Ми не отримали достатньо даних для генерації звіту. Будь ласка, спробуйте ще раз пізніше.", "DOWNLOAD_LABEL_REPORTS": "Завантажити звіти по міткам", "FILTER_DROPDOWN_LABEL": "Виберіть Мітку", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Пошук міток" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Бесіди", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Вибрати \"Вхідний\" канал", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Бесіди", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Огляд команди", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Завантаження даних діаграми...", "NO_ENOUGH_DATA": "Ми не отримали достатньо даних для генерації звіту. Будь ласка, спробуйте ще раз пізніше.", "DOWNLOAD_TEAM_REPORTS": "Завантажити звіти команд", "FILTER_DROPDOWN_LABEL": "Оберіть команду", + "FILTERS": { + "ADD_FILTER": "Додати фільтр", + "CLEAR_ALL": "Очистити все", + "NO_FILTER": "Немає доступних фільтрів", + "INPUT_PLACEHOLDER": { + "TEAMS": "Пошук команд" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Бесіди", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Звіти CSAT", - "NO_RECORDS": "Немає доступних відповідей для опитувань CSAT.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Завантажити CSAT звіти", "DOWNLOAD_FAILED": "Не вдалося завантажити звіти CSAT", "FILTERS": { + "ADD_FILTER": "Додати фільтр", + "CLEAR_ALL": "Очистити все", + "NO_FILTER": "Немає доступних фільтрів", + "INPUT_PLACEHOLDER": { + "AGENTS": "Пошук агентів", + "INBOXES": "Search inboxes", + "TEAMS": "Пошук команд", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Виберіть Агентів" + "LABEL": "Агент" + }, + "INBOXES": { + "LABEL": "Вхідні" + }, + "TEAMS": { + "LABEL": "Команда" + }, + "RATINGS": { + "LABEL": "Оцінка" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Контакт", - "AGENT_NAME": "Призначений агент", + "AGENT_NAME": "Агент", "RATING": "Оцінка", - "FEEDBACK_TEXT": "Відгук" - } + "FEEDBACK_TEXT": "Відгук", + "CONVERSATION": "Діалог", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Всього відповідей", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Показник відповідей", "TOOLTIP": "Загальна кількість відповідей / Загальна кількість повідомлень опитування CSAT відправлено * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Зберегти", + "CANCEL": "Скасувати", + "SAVING": "Збереження...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Оновити зараз", + "CANCEL_ANYTIME": "Ви можете змінити або скасувати план у будь-який час" } } }, diff --git a/app/javascript/dashboard/i18n/locale/uk/settings.json b/app/javascript/dashboard/i18n/locale/uk/settings.json index 7d51984c3..e163ae07f 100644 --- a/app/javascript/dashboard/i18n/locale/uk/settings.json +++ b/app/javascript/dashboard/i18n/locale/uk/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Звантажити", "UPLOADING": "Завантажується...", - "INSTAGRAM_STORY_UNAVAILABLE": "Ця історія більше не доступна." + "INSTAGRAM_STORY_UNAVAILABLE": "Ця історія більше не доступна.", + "INSTAGRAM_STORY_REPLY": "Відповів(-ла) на вашу історію:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Дивитись на карті" @@ -307,7 +308,7 @@ "SETTINGS": "Налаштування", "CONTACTS": "Контакти", "ACTIVE": "Активний", - "COMPANIES": "Companies", + "COMPANIES": "Компанії", "ALL_COMPANIES": "All Companies", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "Assistants", @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Читати документи", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Особливості", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Біллінг", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Атрибути пошуку" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Закрити розмову", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Закрити розмову", + "CANCEL": "Скасувати" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Так", + "NO": "Ні" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Оновити зараз", + "CANCEL_ANYTIME": "Ви можете змінити або скасувати план у будь-який час" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Будь ласка, зверніться до адміністратора для оновлення." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ой! Ми не змогли знайти жодного облікового запису Chatwoot. Будь ласка, створіть новий обліковий запис, щоб продовжити.", "NEW_ACCOUNT": "Новий акаунт", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Скасувати" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/uk/signup.json b/app/javascript/dashboard/i18n/locale/uk/signup.json index 5acf45913..facf944d6 100644 --- a/app/javascript/dashboard/i18n/locale/uk/signup.json +++ b/app/javascript/dashboard/i18n/locale/uk/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Створити акаунт", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Реєстрація", "TESTIMONIAL_HEADER": "Один крок і вперед", "TESTIMONIAL_CONTENT": "Ви за один крок від залучення своїх клієнтів, утримання їх та пошуку нових.", diff --git a/app/javascript/dashboard/i18n/locale/uk/sla.json b/app/javascript/dashboard/i18n/locale/uk/sla.json index a843a905f..66a8c1274 100644 --- a/app/javascript/dashboard/i18n/locale/uk/sla.json +++ b/app/javascript/dashboard/i18n/locale/uk/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Створити нову SLA політику", "DESCRIPTION": "Угода про рівень послуг (SLAs) - це контракти, що визначають чіткі очікування між вашою командою та клієнтами. Вони встановлюють стандарти часу реагування та резолюції, створюючи рамки підзвітності та забезпечують послідовний, якісний досвід.", "LEARN_MORE": "Дізнатися більше про SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Отримання SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Оновіть, щоб створити SLA", "AVAILABLE_ON": "Функція SLA доступна тільки в планах Business та Enterprise.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "У цьому обліковому записі немає SLA.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Питання, висунуті корпоративними клієнтами, які потребують негайної уваги.", "TITLE_2": "Enterprise P1", "DESC_2": "Питання, отримані підприємницькими клієнтами, потрібно швидко визнати." }, - "BUSINESS_HOURS_ON": "Увімкнено робочий час", - "BUSINESS_HOURS_OFF": "Вимкнено робочий час", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "Час першої відповіді", "NRT": "Час наступної відповіді", diff --git a/app/javascript/dashboard/i18n/locale/uk/snooze.json b/app/javascript/dashboard/i18n/locale/uk/snooze.json new file mode 100644 index 000000000..f67efca58 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/uk/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "години", + "DAY": "день", + "DAYS": "days", + "WEEK": "день", + "WEEKS": "weeks", + "MONTH": "тиждень", + "MONTHS": "months", + "YEAR": "місяць", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "завтра", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "наступного тижня", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "день", + "DAY": "день" + } +} diff --git a/app/javascript/dashboard/i18n/locale/uk/teamsSettings.json b/app/javascript/dashboard/i18n/locale/uk/teamsSettings.json index 23055b562..7c659d27c 100644 --- a/app/javascript/dashboard/i18n/locale/uk/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/uk/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Пошук команд...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "В цьому обліковому запису не створено жодної команди.", "EDIT_TEAM": "Редагувати команду", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Не вдалося зберегти деталі команди. Повторіть спробу." }, "AGENTS": { - "AGENT": "АГЕНТ", - "EMAIL": "ПОШТА", + "AGENT": "Агент", + "EMAIL": "Email", "BUTTON_TEXT": "Додати агентів", "ADD_AGENTS": "Додавання агентів до команди...", "SELECT": "вибрати", diff --git a/app/javascript/dashboard/i18n/locale/ur/agentBots.json b/app/javascript/dashboard/i18n/locale/ur/agentBots.json index e1cc3800d..e20ab5ba0 100644 --- a/app/javascript/dashboard/i18n/locale/ur/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ur/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "عمل" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ur/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ur/agentMgmt.json index 5826eef95..ed46bf0fa 100644 --- a/app/javascript/dashboard/i18n/locale/ur/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "منتظم", "AGENT": "ایجنٹ" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "اس اکاؤنٹ سے کوئی ایجنٹ منسلک نہیں ہے", "TITLE": "اپنی ٹیم میں ایجنٹوں کا انتظام کریں۔", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "ووٹ سرور کے ساتھ رابطہ ممکن نہی ہوسکا ، براہ کرم کچھ دیر بعد کوشش کریں" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "کوئی نتیجہ نہیں." }, diff --git a/app/javascript/dashboard/i18n/locale/ur/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ur/attributesMgmt.json index e68feb9a4..bac52b17c 100644 --- a/app/javascript/dashboard/i18n/locale/ur/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ur/automation.json b/app/javascript/dashboard/i18n/locale/ur/automation.json index 0c1f76d5b..de73db65d 100644 --- a/app/javascript/dashboard/i18n/locale/ur/automation.json +++ b/app/javascript/dashboard/i18n/locale/ur/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "نام", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "عمل" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ur/bulkActions.json b/app/javascript/dashboard/i18n/locale/ur/bulkActions.json index 062627b3b..97fcff0f8 100644 --- a/app/javascript/dashboard/i18n/locale/ur/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ur/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "کوئی لیبل نہیں ملے", diff --git a/app/javascript/dashboard/i18n/locale/ur/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ur/cannedMgmt.json index 6fab2bc83..54e02b3ec 100644 --- a/app/javascript/dashboard/i18n/locale/ur/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "محفوظ کردہ جوابات", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "اس اکاؤنٹ میں کوئی محفوظ کردہ جوابات دستیاب نہیں ہیں۔.", diff --git a/app/javascript/dashboard/i18n/locale/ur/chatlist.json b/app/javascript/dashboard/i18n/locale/ur/chatlist.json index d281f2b5b..230e94c09 100644 --- a/app/javascript/dashboard/i18n/locale/ur/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ur/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ur/contact.json b/app/javascript/dashboard/i18n/locale/ur/contact.json index d9dd90452..3cc58afbc 100644 --- a/app/javascript/dashboard/i18n/locale/ur/contact.json +++ b/app/javascript/dashboard/i18n/locale/ur/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "کوئی کانٹیکٹ آپ کی تلاش سے میل نہیں کھاتا 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "کو:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "مضمون :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ur/conversation.json b/app/javascript/dashboard/i18n/locale/ur/conversation.json index b41b1d4b4..f64d50e02 100644 --- a/app/javascript/dashboard/i18n/locale/ur/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ur/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "پیغام کامیابی سے حذف ہو گیا۔", "FAIL_DELETE_MESSSAGE": "پیغام کو حذف نہیں کیا جا سکا! دوبارہ کوشش کریں", "NO_RESPONSE": "کوئی ردعمل نہیں", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "منسوخ کریں۔", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ur/customRole.json b/app/javascript/dashboard/i18n/locale/ur/customRole.json index 8c05b19d9..8bf0184bf 100644 --- a/app/javascript/dashboard/i18n/locale/ur/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ur/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ur/datePicker.json b/app/javascript/dashboard/i18n/locale/ur/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/ur/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ur/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ur/general.json b/app/javascript/dashboard/i18n/locale/ur/general.json index fc2df0662..63638c2f0 100644 --- a/app/javascript/dashboard/i18n/locale/ur/general.json +++ b/app/javascript/dashboard/i18n/locale/ur/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ur/generalSettings.json b/app/javascript/dashboard/i18n/locale/ur/generalSettings.json index c7e3f67f4..cd66cbf13 100644 --- a/app/javascript/dashboard/i18n/locale/ur/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/ur/helpCenter.json b/app/javascript/dashboard/i18n/locale/ur/helpCenter.json index 962efbf1d..40fd85e57 100644 --- a/app/javascript/dashboard/i18n/locale/ur/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ur/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json index a74d2cefb..db4ab4569 100644 --- a/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "منسوخ کریں۔", + "CONFIRM_DELETE": "حذف کریں۔", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/ur/integrationApps.json b/app/javascript/dashboard/i18n/locale/ur/integrationApps.json index 83565e5d1..0bd8cb500 100644 --- a/app/javascript/dashboard/i18n/locale/ur/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ur/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "ان باکس", + "ACTIONS": "عمل", "DELETE": { "BUTTON_TEXT": "حذف کریں۔" } diff --git a/app/javascript/dashboard/i18n/locale/ur/integrations.json b/app/javascript/dashboard/i18n/locale/ur/integrations.json index ba9130a1d..312b2a596 100644 --- a/app/javascript/dashboard/i18n/locale/ur/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ur/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "منسوخ کریں۔", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "حذف کریں۔", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "نام", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "عمل" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ur/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ur/labelsMgmt.json index e30dd2a12..835813e74 100644 --- a/app/javascript/dashboard/i18n/locale/ur/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "اس سوال سے مماثل کوئی آئٹمز نہیں ہیں۔", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "نام", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "عمل" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ur/macros.json b/app/javascript/dashboard/i18n/locale/ur/macros.json index 55ced796f..28c8be2ac 100644 --- a/app/javascript/dashboard/i18n/locale/ur/macros.json +++ b/app/javascript/dashboard/i18n/locale/ur/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "نام", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "عمل" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ur/mfa.json b/app/javascript/dashboard/i18n/locale/ur/mfa.json index c50b628aa..6baa463e0 100644 --- a/app/javascript/dashboard/i18n/locale/ur/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ur/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ur/report.json b/app/javascript/dashboard/i18n/locale/ur/report.json index a4c1fb9b3..a19661e1d 100644 --- a/app/javascript/dashboard/i18n/locale/ur/report.json +++ b/app/javascript/dashboard/i18n/locale/ur/report.json @@ -3,7 +3,7 @@ "HEADER": "مکالمات", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "ایجنٹوں کو تلاش کریں۔" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "مکالمات", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "لیبل تلاش کریں۔" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "مکالمات", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "مکالمات", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "ٹیمیں تلاش کریں۔" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "مکالمات", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "ایجنٹوں کو تلاش کریں۔", + "INBOXES": "Search inboxes", + "TEAMS": "ٹیمیں تلاش کریں۔", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "ایجنٹ" + }, + "INBOXES": { + "LABEL": "ان باکس" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "درجہ بندی" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "ایجنٹ", "RATING": "درجہ بندی", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "منسوخ کریں۔", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ur/settings.json b/app/javascript/dashboard/i18n/locale/ur/settings.json index 8f81d94fc..677dd3f20 100644 --- a/app/javascript/dashboard/i18n/locale/ur/settings.json +++ b/app/javascript/dashboard/i18n/locale/ur/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "ڈاؤن لوڈ کریں", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "منسوخ کریں۔" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "منسوخ کریں۔" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ur/signup.json b/app/javascript/dashboard/i18n/locale/ur/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/ur/signup.json +++ b/app/javascript/dashboard/i18n/locale/ur/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ur/sla.json b/app/javascript/dashboard/i18n/locale/ur/sla.json index d0aff30d6..fd6b3ef0d 100644 --- a/app/javascript/dashboard/i18n/locale/ur/sla.json +++ b/app/javascript/dashboard/i18n/locale/ur/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ur/snooze.json b/app/javascript/dashboard/i18n/locale/ur/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ur/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ur/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ur/teamsSettings.json index e152e206e..df4b42faf 100644 --- a/app/javascript/dashboard/i18n/locale/ur/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "ای میل", + "AGENT": "ایجنٹ", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json b/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json index d3a0bb991..dc92016ab 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Actions" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/agentMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/agentMgmt.json index 448994e69..4b66fe864 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Administrator", "AGENT": "Agent" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "There are no agents associated to this account", "TITLE": "Manage agents in your team", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Could not connect to Woot Server, Please try again later" } }, + "SEARCH_PLACEHOLDER": "Search agents...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "No results found." }, diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/attributesMgmt.json index 78886f451..e83950b14 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching custom attributes", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Conversation", "CONTACT": "Contact" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/automation.json b/app/javascript/dashboard/i18n/locale/ur_IN/automation.json index 43245a1d5..22a9735f4 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/automation.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/automation.json @@ -3,8 +3,11 @@ "HEADER": "Automation", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Add Automation Rule", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Add Automation Rule", "SUBMIT": "Create", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Name", - "DESCRIPTION": "Description", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "Actions" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Open conversation" + "OPEN_CONVERSATION": "Open conversation", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/bulkActions.json b/app/javascript/dashboard/i18n/locale/ur_IN/bulkActions.json index 0c8d6602c..d736201de 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "No labels found", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/cannedMgmt.json index 3ff246f06..246d3f5b3 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Canned Responses", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "There are no items matching this query.", "LIST": { "404": "There are no canned responses available in this account.", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/chatlist.json b/app/javascript/dashboard/i18n/locale/ur_IN/chatlist.json index 92e67635b..0e8e87a04 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/contact.json b/app/javascript/dashboard/i18n/locale/ur_IN/contact.json index 8e9d1dec9..48d45d737 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/contact.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "No contacts matches your search 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Subject :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json index 59ad61c1d..7b7e325ab 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Message deleted successfully", "FAIL_DELETE_MESSSAGE": "Couldn't delete message! Try again", "NO_RESPONSE": "No response", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "Shift + enter for new line. Start with '/' to select a Canned Response.", "PRIVATE_MSG_INPUT": "Shift + enter for new line. This will be visible only to Agents", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Add bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "Sent by:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Cancel", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "There was an error, please try again", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/customRole.json b/app/javascript/dashboard/i18n/locale/ur_IN/customRole.json index b7b48b5e7..f7c1709bd 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/customRole.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "There are no items matching this query.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/datePicker.json b/app/javascript/dashboard/i18n/locale/ur_IN/datePicker.json index c7ef06880..95d304cc6 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Apply", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "Last 3 months", "LAST_6_MONTHS": "Last 6 months", "LAST_YEAR": "Last year", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Custom date range" } } diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/general.json b/app/javascript/dashboard/i18n/locale/ur_IN/general.json index 283cf79c4..bdc7cb8a4 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/general.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Close", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Yes", + "NO": "No" } } diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json b/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json index d924bffbd..fab8020e2 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "Reports", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json b/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json index 0ab8d62ff..69a72f163 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json index 0eee718fe..a90b87d0a 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Inboxes", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Disabled" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Enabled", - "DISABLED": "Disabled" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Enable" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Inbox Settings", "INBOX_UPDATE_SUB_TEXT": "Update your inbox settings", "AUTO_ASSIGNMENT_SUB_TEXT": "Enable or disable the automatic assignment of new conversations to the agents added to this inbox.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "None", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Cancel", + "CONFIRM_DELETE": "Delete", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Reauthorize", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Go back" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "Availability", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "Unavailable", - "HOURS": "hours", "VALIDATION_ERROR": "Starting time should be before closing time.", "CHOOSE": "Choose" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "In a day" }, "WIDGET_COLOR_LABEL": "Widget Color", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Type:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Chat with us", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Chat with us" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Typically replies in a few minutes", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/integrationApps.json b/app/javascript/dashboard/i18n/locale/ur_IN/integrationApps.json index b91b434f7..828f4ea67 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Enabled", "DISABLED": "Disabled" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "Inbox", + "ACTIONS": "Actions", "DELETE": { "BUTTON_TEXT": "Delete" } diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json index 983953180..a1ce02d11 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Cancel", "DESC": "Webhook events provide you the realtime information about what's happening in your Chatwoot account. Please enter a valid URL to configure a callback.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Delete", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "Name", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Actions" }, "EDIT_TOOLTIP": "Edit app", "DELETE_TOOLTIP": "Delete app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/ur_IN/labelsMgmt.json index 705b18d0e..96e272e46 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Fetching labels", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Search labels...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "There are no items matching this query", "LIST": { "404": "There are no labels available in this account.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Name", "DESCRIPTION": "Description", - "COLOR": "Color" + "COLOR": "Color", + "ACTION": "Actions" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/macros.json b/app/javascript/dashboard/i18n/locale/ur_IN/macros.json index fcb409f34..e12f0ca73 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/macros.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Name", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "Actions" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/mfa.json b/app/javascript/dashboard/i18n/locale/ur_IN/mfa.json index f7556fdcf..b03917bcd 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/mfa.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/report.json b/app/javascript/dashboard/i18n/locale/ur_IN/report.json index a2ad6bd4a..45c40de58 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/report.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/report.json @@ -3,7 +3,7 @@ "HEADER": "Conversations", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", - "DOWNLOAD_AGENT_REPORTS": "Download agent reports", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Agents Overview", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_AGENT_REPORTS": "Download agent reports", "FILTER_DROPDOWN_LABEL": "Select Agent", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Search labels" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Select Inbox", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Loading chart data...", "NO_ENOUGH_DATA": "We've not received enough data points to generate report, Please try again later.", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Search teams" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Conversations", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Add filter", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Search agents", + "INBOXES": "Search inboxes", + "TEAMS": "Search teams", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "Agent" + }, + "INBOXES": { + "LABEL": "Inbox" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Contact", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "Agent", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "Conversation", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Cancel", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/settings.json b/app/javascript/dashboard/i18n/locale/ur_IN/settings.json index 6b94a34f1..805ffee46 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/settings.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Download", "UPLOADING": "Uploading...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Billing", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Resolve conversation", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Resolve conversation", + "CANCEL": "Cancel" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Yes", + "NO": "No" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "New Account", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Cancel" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/signup.json b/app/javascript/dashboard/i18n/locale/ur_IN/signup.json index b0e5f5d27..4a90fd322 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/signup.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Register", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/sla.json b/app/javascript/dashboard/i18n/locale/ur_IN/sla.json index 0da7873be..9ab41fb82 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/sla.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/snooze.json b/app/javascript/dashboard/i18n/locale/ur_IN/snooze.json new file mode 100644 index 000000000..b43db88e2 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/ur_IN/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "hours", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "tomorrow", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "next week", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/ur_IN/teamsSettings.json b/app/javascript/dashboard/i18n/locale/ur_IN/teamsSettings.json index f0a950fd1..f3ce7f167 100644 --- a/app/javascript/dashboard/i18n/locale/ur_IN/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/ur_IN/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Search teams...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "Edit team", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Couldn't save the team details. Try again." }, "AGENTS": { - "AGENT": "AGENT", - "EMAIL": "EMAIL", + "AGENT": "Agent", + "EMAIL": "Email", "BUTTON_TEXT": "Add agents", "ADD_AGENTS": "Adding Agents to your Team...", "SELECT": "select", diff --git a/app/javascript/dashboard/i18n/locale/vi/agentBots.json b/app/javascript/dashboard/i18n/locale/vi/agentBots.json index a001515bf..ca79b51f0 100644 --- a/app/javascript/dashboard/i18n/locale/vi/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/vi/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "Loading editor...", "DESCRIPTION": "Agent Bots are like the most fabulous members of your team. They can handle the small stuff, so you can focus on the stuff that matters. Give them a try. You can manage your bots from this page or create new ones using the 'Add Bot' button.", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "System bot", "GLOBAL_BOT_BADGE": "System", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "Fetching bots...", "TABLE_HEADER": { "DETAILS": "Bot Details", - "URL": "Webhook URL" + "URL": "Webhook URL", + "ACTIONS": "Hành động" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/vi/agentMgmt.json b/app/javascript/dashboard/i18n/locale/vi/agentMgmt.json index a16af3dd1..903ae793c 100644 --- a/app/javascript/dashboard/i18n/locale/vi/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "Quản trị viên", "AGENT": "Nhà cung cấp" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "Không có tác nhân nào được liên kết với tài khoản này", "TITLE": "Quản lý các đại lý trong nhóm của bạn", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "Không thể kết nối với Máy chủ Woot, Vui lòng thử lại sau" } }, + "SEARCH_PLACEHOLDER": "Tìm kiếm nhân viên...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "Không tìm thấy kết quả." }, diff --git a/app/javascript/dashboard/i18n/locale/vi/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/vi/attributesMgmt.json index 8b062941b..edfeb4114 100644 --- a/app/javascript/dashboard/i18n/locale/vi/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Đang lấy thuộc tính tuỳ chỉnh", "DESCRIPTION": "A custom attribute tracks additional details about your contacts or conversations—such as the subscription plan or the date of their first purchase. You can add different types of custom attributes, such as text, lists, or numbers, to capture the specific information you need.", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Tìm kiếm nhiều thuộc tính...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "Cuộc hội thoại", "CONTACT": "Liên hệ" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/vi/automation.json b/app/javascript/dashboard/i18n/locale/vi/automation.json index 765ab9ede..29fec4d71 100644 --- a/app/javascript/dashboard/i18n/locale/vi/automation.json +++ b/app/javascript/dashboard/i18n/locale/vi/automation.json @@ -3,8 +3,11 @@ "HEADER": "Tự động hoá", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "Thêm luật Tự động hoá", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Đang lấy luật tự động hoá", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "Thêm Quy tắc Tự động hoá", "SUBMIT": "Tạo", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "Tên", - "DESCRIPTION": "Mô tả", "ACTIVE": "Có hiệu lực", - "CREATED_ON": "Được tạo trên" + "CREATED_ON": "Được tạo trên", + "ACTIONS": "Hành động" }, "404": "Không tìm thấy luật tự động hoá" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "Mở cuộc trò chuyện" + "OPEN_CONVERSATION": "Mở cuộc trò chuyện", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/vi/bulkActions.json b/app/javascript/dashboard/i18n/locale/vi/bulkActions.json index b7c34ab22..03c53ad4f 100644 --- a/app/javascript/dashboard/i18n/locale/vi/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/vi/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Đã cập nhật trạng thái cuộc hội thoại thành công.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "Assign labels", "NO_LABELS_FOUND": "Không tìm thấy nhãn", diff --git a/app/javascript/dashboard/i18n/locale/vi/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/vi/cannedMgmt.json index 2aecf39b1..315f9b79f 100644 --- a/app/javascript/dashboard/i18n/locale/vi/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "Thư mẫu phẩn hồi", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "Không có kết quả nào phù hợp.", "LIST": { "404": "Không có câu trả lời soạn trước nào có sẵn trong tài khoản này.", diff --git a/app/javascript/dashboard/i18n/locale/vi/chatlist.json b/app/javascript/dashboard/i18n/locale/vi/chatlist.json index 25e254b14..394fe6089 100644 --- a/app/javascript/dashboard/i18n/locale/vi/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/vi/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "Pending Response: Shortest first" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/vi/contact.json b/app/javascript/dashboard/i18n/locale/vi/contact.json index b5dc3909c..a863a3903 100644 --- a/app/javascript/dashboard/i18n/locale/vi/contact.json +++ b/app/javascript/dashboard/i18n/locale/vi/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "Không có liên hệ nào khớp với tìm kiếm của bạn 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Gán nhãn", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "Đến:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "Chủ đề :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "Cc:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "Bcc:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "Bcc" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/vi/conversation.json b/app/javascript/dashboard/i18n/locale/vi/conversation.json index c28dba1e9..fb375f6d2 100644 --- a/app/javascript/dashboard/i18n/locale/vi/conversation.json +++ b/app/javascript/dashboard/i18n/locale/vi/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "Tin nhắn được xoá thành công", "FAIL_DELETE_MESSSAGE": "Không thể xoá tin nhắn! Thử lại", "NO_RESPONSE": "Không có phản hồi", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Không thể gán nhãn. Vui lòng thử lại." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Đã gán nhóm \"{team}\" cho hội thoại id {conversationId}", "FAILED": "Không thể gán nhóm. Vui lòng thử lại." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Tắt chữ ký", "MSG_INPUT": "Shift + enter cho dòng mới. Bắt đầu với '/' để chọn Câu trả lời soạn trước.", "PRIVATE_MSG_INPUT": "Shift + enter cho dòng mới. Điều này sẽ chỉ hiển thị cho Đại lý", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Chứ ký cuối tin nhắn chưa được cài đặt, xin hãy cài đặt một chữ ký trong phần cài đặt hồ sơ.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Bấm vào đây để cập nhật", "WHATSAPP_TEMPLATES": "Mẫu Whatsapp" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Kéo thả vào đây để đính kèm", "START_AUDIO_RECORDING": "Bắt đầu ghi âm", "STOP_AUDIO_RECORDING": "Dừng ghi âm", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "Thêm bcc", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "Tệp vượt quá {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB mức hạn chế", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Không thể gửi tin nhắn này, vui lòng thử lại sau", "SENT_BY": "Gửi bởi:", "BOT": "Bot", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Không thể gửi tin nhắn! Thử lại", "TRY_AGAIN": "thử lại", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "Huỷ", "SEND_EMAIL_SUCCESS": "Bản ghi cuộc trò chuyện đã được gửi thành công", "SEND_EMAIL_ERROR": "Có lỗi, xin vui lòng thử lại", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Gửi bảng điểm cho khách hàng", "SEND_TO_AGENT": "Gửi bản ghi cho tổng đài viên được phân công", diff --git a/app/javascript/dashboard/i18n/locale/vi/customRole.json b/app/javascript/dashboard/i18n/locale/vi/customRole.json index 49b51fbbb..8c0adecd1 100644 --- a/app/javascript/dashboard/i18n/locale/vi/customRole.json +++ b/app/javascript/dashboard/i18n/locale/vi/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "Không có kết quả nào phù hợp.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/vi/datePicker.json b/app/javascript/dashboard/i18n/locale/vi/datePicker.json index df325a8ea..7d058f877 100644 --- a/app/javascript/dashboard/i18n/locale/vi/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/vi/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "Áp dụng", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "3 tháng vừa qua", "LAST_6_MONTHS": "6 tháng vừa qua", "LAST_YEAR": "Năm ngoái", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "Phạm vi ngày tùy chỉnh" } } diff --git a/app/javascript/dashboard/i18n/locale/vi/general.json b/app/javascript/dashboard/i18n/locale/vi/general.json index 47c220681..159c26f4c 100644 --- a/app/javascript/dashboard/i18n/locale/vi/general.json +++ b/app/javascript/dashboard/i18n/locale/vi/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "Đóng", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "Có", + "NO": "Không" } } diff --git a/app/javascript/dashboard/i18n/locale/vi/generalSettings.json b/app/javascript/dashboard/i18n/locale/vi/generalSettings.json index 9b87085b0..3edc2d8b2 100644 --- a/app/javascript/dashboard/i18n/locale/vi/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/vi/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Tìm kiếm hoặc nhảy đến", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "Chung", "REPORTS": "Báo cáo", diff --git a/app/javascript/dashboard/i18n/locale/vi/helpCenter.json b/app/javascript/dashboard/i18n/locale/vi/helpCenter.json index c9cf12333..d11cd7f29 100644 --- a/app/javascript/dashboard/i18n/locale/vi/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/vi/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Lỗi khi xóa bài viết" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Vui lòng thêm tiêu đề và nội dung bài viết sau đó mới có thể cập nhật cài đặt" }, diff --git a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json index e6c00a4ed..2763f79ed 100644 --- a/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "Hộp thư đến", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "Không bật" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "Bật", - "DISABLED": "Không bật" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "Bật" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "CSAT" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Bật tiếp tục cuộc trò chuyện qua email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Cuộc trò chuyện sẽ tiếp tục qua email nếu có địa chỉ email liên lạc.", - "LOCK_TO_SINGLE_CONVERSATION": "Khóa cuộc trò chuyện duy nhất", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Bật hoặc tắt nhiều cuộc trò chuyện cho cùng một liên hệ trong hộp thư đến này", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "Cài đặt Hộp thư đến", "INBOX_UPDATE_SUB_TEXT": "Cập nhật cài đặt hộp thư đến của bạn", "AUTO_ASSIGNMENT_SUB_TEXT": "Bật hoặc tắt tính năng tự động gán các cuộc hội thoại mới cho các tác nhân được thêm vào hộp thư đến này.", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "Không có", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Xin nhập vào một số lớn hơn 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Giới hạn số cuộc trò chuyện tối đa từ hộp thư này mà có thể được tự động phân công cho một hỗ trợ viên" }, + "ASSIGNMENT": { + "TITLE": "Phân công cuộc trò chuyện", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Có hiệu lực", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "Huỷ", + "CONFIRM_DELETE": "Xoá", + "DELETE_SUCCESS": "Đã xóa chính sách phân công thành công", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "Ủy quyền lại", "SUBTITLE": "Kết nối Facebook của bạn đã hết hạn, vui lòng kết nối lại trang Facebook của bạn để tiếp tục dịch vụ", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "Trở về" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Thông báo không có sẵn cho khách truy cập", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Ngày", + "AVAILABILITY": "Khả dụng", + "HOURS": "Hours", "ENABLE": "Kích hoạt tính khả dụng cho hôm nay", "UNAVAILABLE": "Không có sẵn", - "HOURS": "giờ", "VALIDATION_ERROR": "Giờ bắt đầu nên trước giờ đóng cửa.", "CHOOSE": "Chọn" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "Trong một ngày" }, "WIDGET_COLOR_LABEL": "Màu tiện ích", - "WIDGET_BUBBLE_POSITION_LABEL": "Vị trí bong bóng widget", - "WIDGET_BUBBLE_TYPE_LABEL": "Kiểu bong bóng widget", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "Kiểu:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "Trò chuyện với chúng tôi", - "LABEL": "Tiêu đề trình khởi chạy bong bóng widget", + "LABEL": "Launcher Title", "PLACE_HOLDER": "Trò chuyện với chúng tôi" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Mặc định", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "Thường trả lời sau vài phút", diff --git a/app/javascript/dashboard/i18n/locale/vi/integrationApps.json b/app/javascript/dashboard/i18n/locale/vi/integrationApps.json index f4dd0ca96..fede38884 100644 --- a/app/javascript/dashboard/i18n/locale/vi/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/vi/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Đang lấy Tích hợp", "NO_HOOK_CONFIGURED": "Không có tích hợp {integrationId} được cấu hình đối với tài khoản này.", "HEADER": "Ứng dụng", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "Bật", "DISABLED": "Không bật" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Đang lấy hook tích hợp", "INBOX": "Hộp thư đến", + "ACTIONS": "Hành động", "DELETE": { "BUTTON_TEXT": "Xoá" } diff --git a/app/javascript/dashboard/i18n/locale/vi/integrations.json b/app/javascript/dashboard/i18n/locale/vi/integrations.json index 2caf8e3ee..74b55ffef 100644 --- a/app/javascript/dashboard/i18n/locale/vi/integrations.json +++ b/app/javascript/dashboard/i18n/locale/vi/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Những sự kiện được theo dõi", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "Huỷ", "DESC": "Webhook events cung cấp cho bạn thông tin thời gian thực về những gì đang xảy ra trong tài khoản Chatwoot của bạn. Vui lòng nhập một URL hợp lệ để định cấu hình một cuộc gọi lại.", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "Xoá", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Ứng dụng trên bảng điều khiển

Ứng dụng bảng điều khiển cho phép nhúng ứng dụng vào trang bảng điều khiển để cung cấp ngữ cảnh cho các tổng đài viên hỗ trợ khách hàng. Tính năng này cho phép bạn tạo ứng dụng một cách độc lập và nhúng ứng dụng đó vào bên trong trang điều khiển để cung cấp thông tin người dùng, đơn đặt hàng hoặc lịch sử thanh toán trước đó của họ.

Khi bạn nhúng ứng dụng của mình bằng điều khiển, ứng dụng của bạn sẽ lấy bối cảnh của cuộc trò chuyện và liên hệ dưới dạng sự kiện cửa sổ. Triển khai trình nghe cho sự kiện thông báo trên trang của bạn để nhận ngữ cảnh.

Để thêm ứng dụng trang điều khiển mới, hãy nhấp vào nút 'Thêm ứng dụng bảng điều khiển mới'.

", "DESCRIPTION": "Ứng dụng bảng điều khiển cho phép các tổ chức nhúng một ứng dụng bên trong trang điều khiển để cung cấp ngữ cảnh cho các tổng đài viên hỗ trợ khách hàng. Tính năng này cho phép bạn tạo ứng dụng một cách độc lập và nhúng ứng dụng đó để cung cấp thông tin người dùng, đơn đặt hàng hoặc lịch sử thanh toán trước đó của họ.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "Chưa có ứng dụng trang \u001dđiều khiển nào được định cấu hình trên tài khoản này", "LOADING": "Đang tìm nạp ứng dụng bảng điều khiển...", "TABLE_HEADER": { "NAME": "Tên", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "Hành động" }, "EDIT_TOOLTIP": "Sửa app", "DELETE_TOOLTIP": "Xoá app" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/vi/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/vi/labelsMgmt.json index 5252881a5..683d5a141 100644 --- a/app/javascript/dashboard/i18n/locale/vi/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/vi/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "Tải về các nhãn", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "Tìm nhãn...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "Không có kết quả nào phù hợp", "LIST": { "404": "Không có nhãn nào có sẵn trong tài khoản này.", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "Tên", "DESCRIPTION": "Mô tả", - "COLOR": "Màu sắc" + "COLOR": "Màu sắc", + "ACTION": "Hành động" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/vi/macros.json b/app/javascript/dashboard/i18n/locale/vi/macros.json index 4f582d211..55a77ea23 100644 --- a/app/javascript/dashboard/i18n/locale/vi/macros.json +++ b/app/javascript/dashboard/i18n/locale/vi/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macro sẽ chạy theo thứ tự hành động của bạn. Bạn có thể sắp xếp lại chúng bằng cách kéo chúng bằng tay cầm bên cạnh mỗi nút.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "Tên", "CREATED BY": "Tạo bởi", "LAST_UPDATED_BY": "Cập nhật lần cuối bởi", - "VISIBILITY": "Hiển thị" + "VISIBILITY": "Hiển thị", + "ACTIONS": "Hành động" }, "404": "Không tìm thấy macro" }, diff --git a/app/javascript/dashboard/i18n/locale/vi/mfa.json b/app/javascript/dashboard/i18n/locale/vi/mfa.json index 31e4b8c52..a8aedc53f 100644 --- a/app/javascript/dashboard/i18n/locale/vi/mfa.json +++ b/app/javascript/dashboard/i18n/locale/vi/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/vi/report.json b/app/javascript/dashboard/i18n/locale/vi/report.json index 69b10453e..2db342d1c 100644 --- a/app/javascript/dashboard/i18n/locale/vi/report.json +++ b/app/javascript/dashboard/i18n/locale/vi/report.json @@ -3,7 +3,7 @@ "HEADER": "Các cuộc hội thoại", "LOADING_CHART": "Đang tải các biểu đồ dữ liệu...", "NO_ENOUGH_DATA": "Chúng tôi không nhận được đủ điểm dữ liệu để tạo báo cáo, Vui lòng thử lại sau.", - "DOWNLOAD_AGENT_REPORTS": "Tải xuống báo cáo tổng đài viên", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "Tổng quan đại lý", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "Đang tải các biểu đồ dữ liệu...", "NO_ENOUGH_DATA": "Chúng tôi không nhận được đủ điểm dữ liệu để tạo báo cáo, Vui lòng thử lại sau.", "DOWNLOAD_AGENT_REPORTS": "Tải xuống báo cáo đại lý", "FILTER_DROPDOWN_LABEL": "Chọn đại lý", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "Tìm kiếm nhân viên" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Các cuộc hội thoại", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "Chúng tôi không nhận được đủ điểm dữ liệu để tạo báo cáo, Vui lòng thử lại sau.", "DOWNLOAD_LABEL_REPORTS": "Tải xuống báo cáo nhãn", "FILTER_DROPDOWN_LABEL": "Chọn Nhãn", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "Tìm nhãn" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Các cuộc hội thoại", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "Chọn Hộp thư đến", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Các cuộc hội thoại", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Tổng quan nhóm", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "Đang tải các biểu đồ dữ liệu...", "NO_ENOUGH_DATA": "Chúng tôi không nhận được đủ điểm dữ liệu để tạo báo cáo, Vui lòng thử lại sau.", "DOWNLOAD_TEAM_REPORTS": "Tải xuống báo cáo nhóm", "FILTER_DROPDOWN_LABEL": "Chọn nhóm", + "FILTERS": { + "ADD_FILTER": "Thêm bộ lọc", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "Tìm kiếm nhóm" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "Các cuộc hội thoại", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "Báo cáo CSAT", - "NO_RECORDS": "Không có phản hồi báo cáo CSAT có sẵn.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Tải về các báo cáo CSAT", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "Thêm bộ lọc", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "Tìm kiếm nhân viên", + "INBOXES": "Search inboxes", + "TEAMS": "Tìm kiếm nhóm", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Chọn tổng đài viên" + "LABEL": "Nhà cung cấp" + }, + "INBOXES": { + "LABEL": "Hộp thư đến" + }, + "TEAMS": { + "LABEL": "Nhóm" + }, + "RATINGS": { + "LABEL": "Đánh giá" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "Liên hệ", - "AGENT_NAME": "Đại lý được phân công", + "AGENT_NAME": "Nhà cung cấp", "RATING": "Đánh giá", - "FEEDBACK_TEXT": "Bình luận phản hồi" - } + "FEEDBACK_TEXT": "Bình luận phản hồi", + "CONVERSATION": "Cuộc hội thoại", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Tổng số phản hồi", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Tỷ lệ phản hồi", "TOOLTIP": "Tổng số phản hồi / Tổng số tin nhắn khảo sát CSAT đã gửi * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "Huỷ", + "SAVING": "Đang lưu...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/vi/settings.json b/app/javascript/dashboard/i18n/locale/vi/settings.json index b80603de7..964ce4642 100644 --- a/app/javascript/dashboard/i18n/locale/vi/settings.json +++ b/app/javascript/dashboard/i18n/locale/vi/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "Tải xuống", "UPLOADING": "Đang tải lên...", - "INSTAGRAM_STORY_UNAVAILABLE": "Hội thoại này không còn nữa." + "INSTAGRAM_STORY_UNAVAILABLE": "Hội thoại này không còn nữa.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "Xem trên bản đồ" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Đọc tài liệu", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Các tính năng", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "Phí", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Tìm kiếm nhiều thuộc tính" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "Giải quyết hội thoại", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "Giải quyết hội thoại", + "CANCEL": "Huỷ" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "Có", + "NO": "Không" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Ồ ồ! Chúng tôi không thể tìm thấy bất kỳ tài khoản Chatwoot nào. Vui lòng tạo một tài khoản mới để tiếp tục.", "NEW_ACCOUNT": "Tạo mới tài khoản", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "Huỷ" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/vi/signup.json b/app/javascript/dashboard/i18n/locale/vi/signup.json index 88739fc4f..1938b8170 100644 --- a/app/javascript/dashboard/i18n/locale/vi/signup.json +++ b/app/javascript/dashboard/i18n/locale/vi/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "Đăng kí", "TESTIMONIAL_HEADER": "Tất cả chỉ cần một bước để tiến về phía trước", "TESTIMONIAL_CONTENT": "Bạn chỉ còn một bước nữa là có thể thu hút khách hàng của mình, giữ chân họ và tìm kiếm những khách hàng mới.", diff --git a/app/javascript/dashboard/i18n/locale/vi/sla.json b/app/javascript/dashboard/i18n/locale/vi/sla.json index 7f9f58716..594d189fd 100644 --- a/app/javascript/dashboard/i18n/locale/vi/sla.json +++ b/app/javascript/dashboard/i18n/locale/vi/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/vi/snooze.json b/app/javascript/dashboard/i18n/locale/vi/snooze.json new file mode 100644 index 000000000..fcbc446c7 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/vi/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "giờ", + "DAY": "ngày", + "DAYS": "days", + "WEEK": "ngày", + "WEEKS": "weeks", + "MONTH": "tuần", + "MONTHS": "months", + "YEAR": "tháng", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "ngày mai", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "tuần sau", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "của", + "AFTER": "after", + "WEEK": "ngày", + "DAY": "ngày" + } +} diff --git a/app/javascript/dashboard/i18n/locale/vi/teamsSettings.json b/app/javascript/dashboard/i18n/locale/vi/teamsSettings.json index 19e068049..84e1c066c 100644 --- a/app/javascript/dashboard/i18n/locale/vi/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/vi/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "Tìm kiếm nhóm...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "Không có nhóm nào được tạo đối với tài khoản này.", "EDIT_TEAM": "Sửa nhóm", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "Không thể lưu chi tiết nhóm. Thử lại." }, "AGENTS": { - "AGENT": "ĐẠI LÝ", - "EMAIL": "EMAIL", + "AGENT": "Nhà cung cấp", + "EMAIL": "Email", "BUTTON_TEXT": "Thêm các nhà cung cấp", "ADD_AGENTS": "Thêm đại lý vào nhóm của bạn...", "SELECT": "chọn", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json b/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json index 3254d3098..dc2ef8265 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "正在加载编辑器...", "DESCRIPTION": "客服机器人就像您团队中最出色的成员。它们可以处理琐事,让您专注于重要的事情。试试看吧。您可以在此页面管理您的机器人,或使用“配置新机器人”按钮创建新的机器人。", "LEARN_MORE": "了解客服机器人", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "系统级机器人", "GLOBAL_BOT_BADGE": "系统", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "正在获取机器人...", "TABLE_HEADER": { "DETAILS": "机器人详情", - "URL": "Webhook 网址" + "URL": "Webhook 网址", + "ACTIONS": "操作" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/agentMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/agentMgmt.json index 47552c9be..bc1e290ee 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "管理员", "AGENT": "客服" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "此账号没有关联客服", "TITLE": "管理您团队中的客服", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "无法连接Woot服务器,请稍后再试" } }, + "SEARCH_PLACEHOLDER": "搜索客服代表...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "未找到任何结果。" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/attributesMgmt.json index d286e706e..a528ad09f 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "正在获取自定义属性", "DESCRIPTION": "自定义属性可跟踪有关您的联系人或对话的其他详细信息——例如订阅计划或首次购买日期。您可以添加不同类型的自定义属性,如文本、列表或数字,以捕获您需要的特定信息。", "LEARN_MORE": "自定义属性说明", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "搜索属性...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "会话", "CONTACT": "联系人" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "启用正则表达式验证" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/automation.json b/app/javascript/dashboard/i18n/locale/zh_CN/automation.json index 182e598a0..4671bd09e 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/automation.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/automation.json @@ -3,8 +3,11 @@ "HEADER": "自动化", "DESCRIPTION": "自动化可以取代和简化人工的现有程序,例如添加标签和将对话分配给最合适的代理人。 这使小组能够集中精力完成其实力,同时减少用于日常任务的时间。", "LEARN_MORE": "了解更多关于审计日志的信息", - "HEADER_BTN_TXT": "添加自动化规则", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "正在获取自动化规则", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "添加自动化规则", "SUBMIT": "创建", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "姓名:", - "DESCRIPTION": "描述信息", "ACTIVE": "状态", - "CREATED_ON": "创建时间" + "CREATED_ON": "创建时间", + "ACTIONS": "操作" }, "404": "未找到自动化规则" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "添加私密注释", "CHANGE_PRIORITY": "更改优先级", "ADD_SLA": "添加SLA", - "OPEN_CONVERSATION": "打开对话" + "OPEN_CONVERSATION": "打开对话", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/bulkActions.json b/app/javascript/dashboard/i18n/locale/zh_CN/bulkActions.json index 6d0673e6d..408d71776 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "对话状态更新成功。", "UPDATE_FAILED": "更新对话失败。请再试一次。" }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "分配标签", "NO_LABELS_FOUND": "未找到标签", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/cannedMgmt.json index 9bbe92a0a..a9938b6f8 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "预设回复", "LEARN_MORE": "了解更多关于预设回复的内容", "DESCRIPTION": "预设回复是预先写好的回复模板,可以帮助您在对话中快速响应。客服人员可以在对话中输入“/”字符,然后输入简码来插入预设回复。 ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "新增预设回复", "LOADING": "正在检索预定义回复...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "没有任何项目符合此查询.", "LIST": { "404": "此帐户中没有预设的回复。", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json b/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json index 92d976a12..3e63b4ffa 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "等待响应:最短在前" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/companies.json b/app/javascript/dashboard/i18n/locale/zh_CN/companies.json index 036952ae4..7fed256ac 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/companies.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/companies.json @@ -1,13 +1,13 @@ { "COMPANIES": { - "HEADER": "Companies", + "HEADER": "公司", "SORT_BY": { "LABEL": "排序方式", "OPTIONS": { "NAME": "姓名:", "DOMAIN": "域名", "CREATED_AT": "创建于", - "CONTACTS_COUNT": "Contacts count" + "CONTACTS_COUNT": "联系人数" } }, "ORDER": { @@ -17,17 +17,17 @@ "DESCENDING": "降序" } }, - "SEARCH_PLACEHOLDER": "Search companies...", - "LOADING": "Loading companies...", - "UNNAMED": "Unnamed Company", - "CONTACTS_COUNT": "{n} contact | {n} contacts", + "SEARCH_PLACEHOLDER": "搜索公司...", + "LOADING": "正在加载公司...", + "UNNAMED": "未命名的公司", + "CONTACTS_COUNT": "", "EMPTY_STATE": { - "TITLE": "No companies found" + "TITLE": "没有找到公司" } }, "COMPANIES_LAYOUT": { "PAGINATION_FOOTER": { - "SHOWING": "Showing {startItem} – {endItem} of {totalItems} company | Showing {startItem} – {endItem} of {totalItems} companies" + "SHOWING": "显示第 {startItem} - {endItem} 项,共 {totalItems} 项" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/contact.json b/app/javascript/dashboard/i18n/locale/zh_CN/contact.json index d7fcae677..35120983b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/contact.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/contact.json @@ -18,7 +18,7 @@ "CREATED_AT_LABEL": "创建时间", "NEW_MESSAGE": "新消息", "CALL": "呼叫", - "CALL_INITIATED": "Calling the contact…", + "CALL_INITIATED": "正在接通…", "CALL_FAILED": "Unable to start the call. Please try again.", "VOICE_INBOX_PICKER": { "TITLE": "选择一个语音收件箱" @@ -457,8 +457,11 @@ "INSTAGRAM": { "PLACEHOLDER": "添加 Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { - "PLACEHOLDER": "Add TikTok" + "PLACEHOLDER": "添加TikTok" }, "LINKEDIN": { "PLACEHOLDER": "添加 LinkedIn" @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "没有搜索到联系人🔍", "LIST_EMPTY_STATE_TITLE": "此视图中没有可用的联系人📋", "ACTIVE_EMPTY_STATE_TITLE": "目前没有联系人在线 🌙" - } + }, + "LOAD_MORE": "加载更多" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "分配标签", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "没有可用的收件箱来开始与此联系人的对话。", "CONTACT_SELECTOR": { "LABEL": "发送至:", - "TAG_INPUT_PLACEHOLDER": "通过姓名、电子邮件或电话号码搜索联系人", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "正在创建联系人……" }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "主题 :", "SUBJECT_PLACEHOLDER": "在此处输入电子邮件主题", "CC_LABEL": "抄送:", - "CC_PLACEHOLDER": "通过电子邮件地址搜索联系人", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "密送:", - "BCC_PLACEHOLDER": "通过电子邮件地址搜索联系人", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "密送" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json index 7ff51e4d5..9f4e80843 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "不支持此消息。您可以在 Facebook Messenger 应用上查看此消息。", "UNSUPPORTED_MESSAGE_FACEBOOK": "不支持此消息。您可以在 Facebook Messenger 应用上查看此消息。", "UNSUPPORTED_MESSAGE_INSTAGRAM": "不支持此消息。您可以在 Instagram 应用上查看此消息。", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "已成功删除消息", "FAIL_DELETE_MESSSAGE": "无法删除消息,请重试!", "NO_RESPONSE": "无响应", @@ -173,6 +174,10 @@ "SUCCESFUL": "已为对话 Id {conversationId} 分配标签 #{labelName}", "FAILED": "无法分配标签。请再试。" }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "将团队 \"{team}\" 分配给对话 ID {conversationId}", "FAILED": "无法分配团队。请重试。" @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "禁用签名", "MSG_INPUT": "输入“/”开始选择快捷回复", "PRIVATE_MSG_INPUT": "Shift + 输入新行。这只对客服可见", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "未设置消息签名,请在个人资料中进行设置。", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "点击此处更新", "WHATSAPP_TEMPLATES": "Whatsapp 模板列表" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "拖放到此处添加附件", "START_AUDIO_RECORDING": "开始录音", "STOP_AUDIO_RECORDING": "停止录音", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "发给", "ADD_BCC": "添加密送", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "对话成功删除", "FAIL_DELETE_CONVERSATION": "无法删除对话!请重试", "FILE_SIZE_LIMIT": "文件超过了 {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB 的附件限制", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "无法发送此消息,请稍后再试", "SENT_BY": "发送人:", "BOT": "机器人", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "无法发送消息,请重试!", "TRY_AGAIN": "重试", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "取消操作", "SEND_EMAIL_SUCCESS": "对话记录已成功发送", "SEND_EMAIL_ERROR": "出错了,请重试", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "发送对话记录给客户", "SEND_TO_AGENT": "发送对话记录给指定的代理", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/customRole.json b/app/javascript/dashboard/i18n/locale/zh_CN/customRole.json index e6a58d737..ceb0900a3 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/customRole.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/customRole.json @@ -3,8 +3,11 @@ "HEADER": "自定义角色", "LEARN_MORE": "了解更多关于自定义角色的信息", "DESCRIPTION": "自定义角色是由账户所有者或管理员创建的角色。这些角色可以分配给客服人员,以定义他们在账户中的访问权限和权限。自定义角色可以根据组织的需求创建特定的权限和访问级别。", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "添加自定义角色", "LOADING": "正在获取自定义角色……", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "没有任何项目符合此查询。", "PAYWALL": { "TITLE": "升级以创建自定义角色", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/datePicker.json b/app/javascript/dashboard/i18n/locale/zh_CN/datePicker.json index 5372771b1..37fc6f80b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "上一个周期", + "NEXT_PERIOD": "下一个周期", + "WEEK_NUMBER": "周#{weekNumber}", "APPLY_BUTTON": "应用", "CLEAR_BUTTON": "清除", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "最近3个月", "LAST_6_MONTHS": "最近6个月", "LAST_YEAR": "最近一年", + "THIS_WEEK": "本周", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "自定义日期范围" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/general.json b/app/javascript/dashboard/i18n/locale/zh_CN/general.json index 4698ee319..7872f02e5 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/general.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "关闭", "BETA": "测试版", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "确认", + "DISCARD": "丢弃", + "PREFERRED": "首选" + }, + "CHOICE_TOGGLE": { + "YES": "是", + "NO": "否" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json b/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json index 3181e1d0b..5257a24cd 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "搜索或跳转到", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "一般", "REPORTS": "报告", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json index 2b9dcb49f..f0921232e 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "删除文章时出错" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "请添加文章标题和内容,然后才能更新设置" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json index 33f77a004..466014044 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "收件箱", "DESCRIPTION": "频道是客户选择与您互动的方式。收件箱则是您用来管理特定频道互动的地方,它可以整合来自不同来源的通信,比如电子邮件、即时聊天和社交媒体等。", "LEARN_MORE": "了解更多关于收件箱的信息", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "您的收件箱已断开连接。在您重新授权之前,您不会收到新消息。", "CLICK_TO_RECONNECT": "点击此处重新连接。", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "仅在电子邮件标题中使用配置的业务名称作为发件人姓名。" }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ 配置您的业务名称", + "BUTTON_TEXT": "配置您的业务名称", "PLACEHOLDER": "输入您的业务名称", "SAVE_BUTTON_TEXT": "保存" } @@ -589,8 +592,10 @@ "DISABLED": "已禁用" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "已启用", - "DISABLED": "已禁用" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "启用" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "客户满意度" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "启用/禁用在电子邮件中显示代理名称,如果禁用,将显示业务名称", "ENABLE_CONTINUITY_VIA_EMAIL": "通过电子邮件启用对话连续性", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "如果有联系人的电子邮件地址,对话将会继续在电子邮件中进行。", - "LOCK_TO_SINGLE_CONVERSATION": "锁定到单一对话", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "在此收件箱中启用或禁用同一联系人的多个对话", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "收件箱设置", "INBOX_UPDATE_SUB_TEXT": "更新收件箱设置", "AUTO_ASSIGNMENT_SUB_TEXT": "启用或禁用添加到此收件箱的代理人自动分配新的会话。", @@ -758,6 +765,7 @@ "LABEL": "帮助中心", "PLACEHOLDER": "选择帮助中心", "SELECT_PLACEHOLDER": "选择帮助中心", + "NONE": "啥都没有", "REMOVE": "移除帮助中心", "SUB_TEXT": "将帮助中心附加到收件箱" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "请输入一个大于0的值", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "限制从此收件箱自动分配给代理的对话的最大数量" }, + "ASSIGNMENT": { + "TITLE": "对话分配", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "状态", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "取消", + "CONFIRM_DELETE": "删除", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "重新授权", "SUBTITLE": "您的Facebook连接已过期,请重新连接您的Facebook页面以继续服务", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "返回" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "问卷规则", "DESCRIPTION_PREFIX": "发送此问卷如果对话", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "选择标签" }, "NOTE": "注:每次对话只发送一次 CSAT 问卷", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT 设置更新成功", "ERROR_MESSAGE": "我们无法更新 CSAT 设置。请稍后再试。" @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "对访客的不可用消息", "TOGGLE_HELP": "启用业务可用性将在实时聊天小部件上显示可用时间,即使所有代理都离线。在可用时间之外,访客将收到一条消息和预聊天表单的警告。", "DAY": { + "DAY": "日", + "AVAILABILITY": "有效的", + "HOURS": "小时", "ENABLE": "为此天启用可用性", "UNAVAILABLE": "不可用", - "HOURS": "小时", "VALIDATION_ERROR": "起始时间应在结束时间之前。", "CHOOSE": "选择" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "通常在一天之内回复您" }, "WIDGET_COLOR_LABEL": "窗口小部件颜色", - "WIDGET_BUBBLE_POSITION_LABEL": "小部件气泡位置", - "WIDGET_BUBBLE_TYPE_LABEL": "小部件气泡类型", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "类型:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "联系我们", - "LABEL": "小部件气泡启动器标题", + "LABEL": "Launcher Title", "PLACE_HOLDER": "联系我们" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "默认", - "CHAT": "聊天" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "通常在几分钟内回复您", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/integrationApps.json b/app/javascript/dashboard/i18n/locale/zh_CN/integrationApps.json index 6ef282f36..2b9d953bf 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "正在获取集成", "NO_HOOK_CONFIGURED": "此账户中未配置任何 {integrationId} 集成。", "HEADER": "应用程序", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "搜索……", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "已启用", "DISABLED": "已禁用" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "正在获取集成", "INBOX": "收件箱", + "ACTIONS": "操作", "DELETE": { "BUTTON_TEXT": "删除" } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json index ca4a76367..ce4634f0c 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot 集成了多种工具和服务,以提高团队效率。浏览以下列表以配置您喜欢的应用程序。", "LEARN_MORE": "了解更多关于集成的信息", "LOADING": "正在获取集成", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "您的账户未启用 Captain。", "CLICK_HERE_TO_CONFIGURE": "点击此处配置", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "订阅事件", "LEARN_MORE": "了解更多关于 Webhooks 的信息", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "取消", "DESC": "Webhook 事件为您提供了有关 Chatwoot 账户中发生的事情的实时信息。请输入一个有效的 URL 来配置回调。", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "删除", "DELETE_CONFIRMATION": { "TITLE": "删除集成", @@ -145,7 +160,29 @@ "EXPAND": "扩展", "MAKE_FRIENDLY": "将消息语气改为友好", "MAKE_FORMAL": "使用正式语气", - "SIMPLIFY": "简化" + "SIMPLIFY": "简化", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "专业", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "友好" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "草稿内容", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

仪表板应用

仪表板应用允许组织将应用程序嵌入 Chatwoot 仪表板中,以便为客服人员提供上下文信息。此功能允许您独立创建应用程序并将其嵌入仪表板中,以提供用户信息、他们的订单或以前的付款历史记录。

当您使用 Chatwoot 仪表板嵌入应用程序时,您的应用程序将作为窗口事件获取对话和联系人的上下文信息。在您的页面上实现消息事件的监听器以接收上下文信息。

要添加新的仪表板应用,请点击“添加新的仪表板应用”按钮。

", "DESCRIPTION": "仪表板应用允许组织将应用程序嵌入仪表板中,以便为客服人员提供上下文信息。此功能允许您独立创建应用程序并将其嵌入仪表板中,以提供用户信息、他们的订单或以前的付款历史记录。", "LEARN_MORE": "了解更多关于仪表板应用的信息", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "此账户尚未配置任何仪表板应用", "LOADING": "正在获取仪表板应用...", "TABLE_HEADER": { "NAME": "姓名", - "ENDPOINT": "端点" + "ENDPOINT": "端点", + "ACTIONS": "操作" }, "EDIT_TOOLTIP": "编辑应用", "DELETE_TOOLTIP": "删除应用" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "创建/链接 Linear 问题", "LOADING": "正在获取 Linear 问题...", "LOADING_ERROR": "获取 Linear 问题时出错,请重试", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "升级您的计划以获取我们的助手、副驾驶等功能。", "ASK_ADMIN": "请联系您的管理员进行升级。" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/zh_CN/labelsMgmt.json index 5732d4a11..529530b93 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "正在获取标签", "DESCRIPTION": "标签帮助您对对话和潜在客户进行分类和优先排序。您可以使用侧边栏将标签分配给对话或联系人。", "LEARN_MORE": "了解更多关于标签的信息", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "搜索标签...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "没有任何项目符合此查询", "LIST": { "404": "此帐户中没有可用的标签。", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "名称", "DESCRIPTION": "描述信息", - "COLOR": "颜色" + "COLOR": "颜色", + "ACTION": "操作" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/macros.json b/app/javascript/dashboard/i18n/locale/zh_CN/macros.json index 9c7e0d8ec..703cf177f 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/macros.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/macros.json @@ -3,9 +3,12 @@ "HEADER": "宏", "DESCRIPTION": "宏是一组预设操作,帮助客服人员快速完成任务。客服人员可以定义诸如标记对话、发送邮件记录、更新自定义属性等操作,并一键执行。", "LEARN_MORE": "了解更多关于宏的信息", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "添加一个新宏文件", "HEADER_BTN_TXT_SAVE": "保存宏文件", "LOADING": "获取宏中", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "出错了。请重试", "ORDER_INFO": "宏将按照您添加操作的顺序运行。您可以通过拖动每个节点旁边的手柄来重新排列它们。", "ADD": { @@ -29,7 +32,8 @@ "NAME": "姓名:", "CREATED BY": "创建者", "LAST_UPDATED_BY": "最后更新者", - "VISIBILITY": "可视性" + "VISIBILITY": "可视性", + "ACTIONS": "操作" }, "404": "未找到宏" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/mfa.json b/app/javascript/dashboard/i18n/locale/zh_CN/mfa.json index 3a76a9a9e..444e233bb 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/mfa.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "两步验证", - "SUBTITLE": "使用TOTP身份验证来保护您的帐户", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "使用基于时间的一次性密码(TOTP)为您的帐户添加额外的一层安全保护", "STATUS_TITLE": "验证状态", "STATUS_DESCRIPTION": "管理您的二步验证设置和备份码", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/report.json b/app/javascript/dashboard/i18n/locale/zh_CN/report.json index 57c9ef3af..0d5592e44 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/report.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/report.json @@ -3,7 +3,7 @@ "HEADER": "会话", "LOADING_CHART": "正在载入图表数据...", "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", - "DOWNLOAD_AGENT_REPORTS": "下载客服报表", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "数据获取失败,请稍后再试。", "SUMMARY_FETCHING_FAILED": "摘要获取失败,请稍后再试。", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "客服概览", - "DESCRIPTION": "通过关键指标如会话数量、响应时间、解决时间和已解决案例数,轻松跟踪客服人员的表现。点击客服人员姓名了解更多信息。", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "正在载入图表数据...", "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", "DOWNLOAD_AGENT_REPORTS": "下载客服报表", "FILTER_DROPDOWN_LABEL": "选择客服", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "搜索客服代表" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会话", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", "DOWNLOAD_LABEL_REPORTS": "下载标签报表", "FILTER_DROPDOWN_LABEL": "选择标签", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "搜索标签" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会话", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "选择收件箱", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会话", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "团队概览", - "DESCRIPTION": "通过关键指标(如会话、响应时间、解决时间和已解决案例)快速了解团队表现。点击团队名称以了解更多详细信息。", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "正在载入图表数据...", "NO_ENOUGH_DATA": "我们没有收到足够的数据点来生成报告,请稍后再试。", "DOWNLOAD_TEAM_REPORTS": "下载团队报表", "FILTER_DROPDOWN_LABEL": "选择团队", + "FILTERS": { + "ADD_FILTER": "添加过滤器", + "CLEAR_ALL": "清除全部", + "NO_FILTER": "没有可用的过滤器", + "INPUT_PLACEHOLDER": { + "TEAMS": "查找团队" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "会话", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT 报告", - "NO_RECORDS": "没有可用的 CSAT 调查回复。", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "下载 CSAT 报告", "DOWNLOAD_FAILED": "下载 CSAT 报告失败", "FILTERS": { + "ADD_FILTER": "添加过滤器", + "CLEAR_ALL": "清除全部", + "NO_FILTER": "没有可用的过滤器", + "INPUT_PLACEHOLDER": { + "AGENTS": "搜索客服代表", + "INBOXES": "Search inboxes", + "TEAMS": "查找团队", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "选择客服" + "LABEL": "客服" + }, + "INBOXES": { + "LABEL": "收件箱" + }, + "TEAMS": { + "LABEL": "团队" + }, + "RATINGS": { + "LABEL": "评分" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "联系人", - "AGENT_NAME": "分配的客服", + "AGENT_NAME": "客服", "RATING": "评分", - "FEEDBACK_TEXT": "反馈评论" - } + "FEEDBACK_TEXT": "反馈评论", + "CONVERSATION": "会话", + "CUSTOMER": "Customer", + "RESPONSE": "回复", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "总回复数", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "回复率", "TOOLTIP": "总回复数 / 发送的 CSAT 调查消息总数 * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "保存", + "CANCEL": "取消", + "SAVING": "保存中...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" } } }, diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/search.json b/app/javascript/dashboard/i18n/locale/zh_CN/search.json index a1a8d090f..6a46957cd 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/search.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/search.json @@ -1,7 +1,7 @@ { "SEARCH": { "TABS": { - "ALL": "All results", + "ALL": "所有结果", "CONTACTS": "联系人", "CONVERSATIONS": "会话", "MESSAGES": "消息", @@ -21,48 +21,48 @@ "EMPTY_STATE_FULL": "未找到与查询 '{query}' 相关的结果", "PLACEHOLDER_KEYBINDING": "/聚焦搜索框", "INPUT_PLACEHOLDER": "输入 3 个或更多字符以进行搜索", - "RECENT_SEARCHES": "Recent searches", + "RECENT_SEARCHES": "最近搜索", "CLEAR_ALL": "清除全部", - "MOST_RECENT": "Most recent", + "MOST_RECENT": "最近的", "EMPTY_STATE_DEFAULT": "通过会话 Id、电子邮件、电话号码、消息等进行搜索以获得更好的搜索结果。 ", "BOT_LABEL": "机器人", "READ_MORE": "查看更多", - "READ_LESS": "Read less", + "READ_LESS": "阅读较低", "WROTE": "写道:", "FROM": "来自", "EMAIL": "Email", "EMAIL_SUBJECT": "主题", - "PRIVATE": "Private note", - "TRANSCRIPT": "Transcript", + "PRIVATE": "私人笔记", + "TRANSCRIPT": "文本", "CREATED_AT": "创建于 {time}", - "UPDATED_AT": "updated {time}", + "UPDATED_AT": "更新于{time}", "SORT_BY": { - "RELEVANCE": "Relevance" + "RELEVANCE": "相关性" }, "DATE_RANGE": { "LAST_7_DAYS": "最近7天", "LAST_30_DAYS": "最近30天", "LAST_60_DAYS": "最近60天", "LAST_90_DAYS": "最近90天", - "CUSTOM_RANGE": "Custom range:", - "CREATED_BETWEEN": "Created between", + "CUSTOM_RANGE": "自定义范围:", + "CREATED_BETWEEN": "创建时间之间", "AND": "和", "APPLY": "应用", - "BEFORE_DATE": "Before {date}", - "AFTER_DATE": "After {date}", - "TIME_RANGE": "Filter by time", + "BEFORE_DATE": "在{date}之前", + "AFTER_DATE": "在{data}之后", + "TIME_RANGE": "按时间筛选", "CLEAR_FILTER": "清除筛选条件" }, "FILTERS": { - "FILTER_MESSAGE": "Filter messages by:", - "FROM": "Sender", + "FILTER_MESSAGE": "筛选消息:", + "FROM": "发件人", "IN": "收件箱", "AGENTS": "客服", "CONTACTS": "联系人", "INBOXES": "收件箱", "NO_AGENTS": "未找到客服代表", - "NO_CONTACTS": "Start by searching to see results", - "NO_INBOXES": "No inboxes found" + "NO_CONTACTS": "先搜索以查看结果", + "NO_INBOXES": "未找到收件箱" } } } diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/settings.json b/app/javascript/dashboard/i18n/locale/zh_CN/settings.json index c9cace442..1ba9a5662 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/settings.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "下载", "UPLOADING": "上传中...", - "INSTAGRAM_STORY_UNAVAILABLE": "本信息不存在" + "INSTAGRAM_STORY_UNAVAILABLE": "本信息不存在", + "INSTAGRAM_STORY_REPLY": "回复您的故事:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "在地图上查看" @@ -307,7 +308,7 @@ "SETTINGS": "设置", "CONTACTS": "联系人", "ACTIVE": "状态", - "COMPANIES": "Companies", + "COMPANIES": "公司", "ALL_COMPANIES": "All Companies", "CAPTAIN": "Captain", "CAPTAIN_ASSISTANTS": "助手", @@ -378,7 +379,57 @@ "INFO_SHORT": "当您不使用应用程序时自动标记离线。" }, "DOCS": "阅读文档", - "SECURITY": "安全" + "SECURITY": "安全", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "助手", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "特性", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "计费方式", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "搜索属性" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "解决会话", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "解决会话", + "CANCEL": "取消" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "是", + "NO": "否" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "立即升级", + "CANCEL_ANYTIME": "您可以随时更改或取消您的计划" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "请联系您的管理员进行升级。" + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "哦,糟糕!我们找不到任何 Chatwoot 账户。请创建一个新账户以继续。", "NEW_ACCOUNT": "新账户", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "取消" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/signup.json b/app/javascript/dashboard/i18n/locale/zh_CN/signup.json index f379660c1..3e560b230 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/signup.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "创建新账户", + "GET_STARTED": "开始使用Chatwoot", "TITLE": "注册", "TESTIMONIAL_HEADER": "只差最后一步就可以了", "TESTIMONIAL_CONTENT": "您离吸引客户、留住客户和寻找新客户仅一步之遥。", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/sla.json b/app/javascript/dashboard/i18n/locale/zh_CN/sla.json index c1855cae3..e0a06d4f0 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/sla.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "创建一个新的服务协议", "DESCRIPTION": "服务级别协议(SLA)是定义团队与客户之间明确期望的合同。它们为响应和解决时间设定了标准,创建了一个责任框架,并确保了一致的高质量体验。", "LEARN_MORE": "了解更多关于SLA的信息", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "正在获取SLA", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "升级以创建SLA", "AVAILABLE_ON": "SLA功能仅在商业和企业计划中可用。", @@ -20,14 +25,18 @@ }, "LIST": { "404": "此账户中没有可用的SLA。", + "TABLE_HEADER": { + "SLA": "SLA", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "企业 P1", "DESC_1": "由企业客户提出的需要立即关注的问题。", "TITLE_2": "企业P1", "DESC_2": "由企业客户提出的需要快速确认的问题。" }, - "BUSINESS_HOURS_ON": "工作时间开启", - "BUSINESS_HOURS_OFF": "工作时间关闭", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "首次响应时间阈值", "NRT": "下次响应时间阈值", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/snooze.json b/app/javascript/dashboard/i18n/locale/zh_CN/snooze.json new file mode 100644 index 000000000..d209f6229 --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/zh_CN/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "分钟", + "HOUR": "hour", + "HOURS": "小时", + "DAY": "天", + "DAYS": "天", + "WEEK": "周", + "WEEKS": "weeks", + "MONTH": "月", + "MONTHS": "months", + "YEAR": "年", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "明天", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "下周", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "的", + "AFTER": "after", + "WEEK": "周", + "DAY": "天" + } +} diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/teamsSettings.json b/app/javascript/dashboard/i18n/locale/zh_CN/teamsSettings.json index 44e2a3d37..47283b2da 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "正在获取团队", "DESCRIPTION": "团队允许您根据自己的责任将代理人分组。代理可以属于多个团队。 当协作时,您可以将对话分配给特定的团队。", "LEARN_MORE": "了解更多关于团队的信息", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "查找团队...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "此帐户尚未添加团队。", "EDIT_TEAM": "编辑团队", @@ -64,8 +67,8 @@ "ERROR_MESSAGE": "无法保存团队详细信息,请重试。" }, "AGENTS": { - "AGENT": "代理", - "EMAIL": "电子邮件", + "AGENT": "客服", + "EMAIL": "Email", "BUTTON_TEXT": "添加客服代理", "ADD_AGENTS": "正在向收件箱添加客服...", "SELECT": "选择", diff --git a/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json b/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json index 0ece08924..0124c02ad 100644 --- a/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json +++ b/app/javascript/dashboard/i18n/locale/zh_CN/yearInReview.json @@ -35,7 +35,7 @@ "MESSAGES": { "SWIFT_HELPER": "You replied in {time} on average. Faster than most notifications.", "QUICK_RESPONDER": "You replied in {time} on average. The inbox barely waited.", - "STEADY_SUPPORT": "You replied in {time} on average. Calm pace, solid replies.", + "STEADY_SUPPORT": "", "THOUGHTFUL_ADVISOR": "You replied in {time} on average. Took the time to get it right." } }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json b/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json index f02ebe2ed..800340f96 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/agentBots.json @@ -4,6 +4,9 @@ "LOADING_EDITOR": "正在載入編輯器...", "DESCRIPTION": "代理機器人就像您團隊中最出色的成員。他們可以處理瑣碎的事務,讓您可以專注於重要的事情。試試看吧!您可以從此頁面管理您的機器人,或使用「新增機器人」按鈕建立新的機器人。", "LEARN_MORE": "Learn about agent bots", + "COUNT": "{n} bot | {n} bots", + "SEARCH_PLACEHOLDER": "Search bots...", + "NO_RESULTS": "No bots found matching your search", "GLOBAL_BOT": "系統機器人", "GLOBAL_BOT_BADGE": "系統", "AVATAR": { @@ -34,7 +37,8 @@ "LOADING": "正在取得機器人...", "TABLE_HEADER": { "DETAILS": "機器人詳情", - "URL": "Webhook 網址" + "URL": "Webhook 網址", + "ACTIONS": "操作" } }, "DELETE": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/agentMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/agentMgmt.json index 1e45fa988..30d081ca3 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/agentMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/agentMgmt.json @@ -9,6 +9,7 @@ "ADMINISTRATOR": "管理員", "AGENT": "客服" }, + "COUNT": "{n} agent | {n} agents", "LIST": { "404": "沒有與此帳號關聯的客服", "TITLE": "管理您團隊中的客服", @@ -96,6 +97,8 @@ "ERROR_MESSAGE": "無法連接 Chatwoot 伺服器,請稍後再試" } }, + "SEARCH_PLACEHOLDER": "搜尋客服...", + "NO_RESULTS": "No agents found matching your search", "SEARCH": { "NO_RESULTS": "查無結果" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/attributesMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/attributesMgmt.json index 16dba43a5..01bdafea1 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/attributesMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/attributesMgmt.json @@ -5,6 +5,9 @@ "LOADING": "正在取得自訂屬性", "DESCRIPTION": "自定義屬性可用於追蹤有關聯絡人或對話的額外詳情,例如訂閱方案或首次購買的日期。您可以添加不同類型的自定義屬性,如文字、清單或數字,以捕捉您所需的特定資訊。", "LEARN_MORE": "Learn more about custom attributes", + "COUNT": "{n} attribute | {n} attributes", + "SEARCH_PLACEHOLDER": "Search attributes...", + "NO_RESULTS": "No attributes found matching your search", "ATTRIBUTE_MODELS": { "CONVERSATION": "對話", "CONTACT": "聯絡人" @@ -63,6 +66,10 @@ }, "ENABLE_REGEX": { "LABEL": "Enable regex validation" + }, + "BADGES": { + "PRE_CHAT": "Pre-chat", + "RESOLUTION": "Resolution" } }, "API": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/automation.json b/app/javascript/dashboard/i18n/locale/zh_TW/automation.json index d9dc73351..53bdf309e 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/automation.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/automation.json @@ -3,8 +3,11 @@ "HEADER": "自動化", "DESCRIPTION": "Automation can replace and streamline existing processes that require manual effort, such as adding labels and assigning conversations to the most suitable agent. This allows the team to focus on their strengths while reducing time spent on routine tasks.", "LEARN_MORE": "Learn more about automation", - "HEADER_BTN_TXT": "新增自動化規則", + "COUNT": "{n} automation | {n} automations", + "HEADER_BTN_TXT": "Create Automation", "LOADING": "Fetching automation rules", + "SEARCH_PLACEHOLDER": "Search automation rules...", + "NO_RESULTS": "No automation rules found matching your search", "ADD": { "TITLE": "新增自動化規則", "SUBMIT": "建立", @@ -42,9 +45,9 @@ "LIST": { "TABLE_HEADER": { "NAME": "姓名", - "DESCRIPTION": "描述資訊", "ACTIVE": "Active", - "CREATED_ON": "Created on" + "CREATED_ON": "Created on", + "ACTIONS": "操作" }, "404": "No automation rules found" }, @@ -150,7 +153,8 @@ "ADD_PRIVATE_NOTE": "Add a Private Note", "CHANGE_PRIORITY": "Change Priority", "ADD_SLA": "Add SLA", - "OPEN_CONVERSATION": "開啟對話" + "OPEN_CONVERSATION": "開啟對話", + "PENDING_CONVERSATION": "Mark conversation as pending" }, "MESSAGE_TYPES": { "INCOMING": "Incoming Message", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json b/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json index d536d294e..7336a7cda 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/bulkActions.json @@ -22,6 +22,10 @@ "UPDATE_SUCCESFUL": "Conversation status updated successfully.", "UPDATE_FAILED": "Failed to update conversations. Please try again." }, + "RESOLVE": { + "ALL_MISSING_ATTRIBUTES": "Cannot resolve conversations due to missing required attributes", + "PARTIAL_SUCCESS": "Some conversations need required attributes before resolving and were skipped" + }, "LABELS": { "ASSIGN_LABELS": "標記標籤", "NO_LABELS_FOUND": "查無標籤", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/cannedMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/cannedMgmt.json index 23c871006..5cebf8ba0 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/cannedMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/cannedMgmt.json @@ -3,8 +3,11 @@ "HEADER": "預設回覆", "LEARN_MORE": "Learn more about canned responses", "DESCRIPTION": "Canned Responses are pre-written reply templates that help you quickly respond to a conversation. Agents can type the '/' character followed by the shortcode to insert a canned response during a conversation. ", + "COUNT": "{n} canned response | {n} canned responses", "HEADER_BTN_TXT": "Add canned response", "LOADING": "Fetching canned responses...", + "SEARCH_PLACEHOLDER": "Search canned responses...", + "NO_RESULTS": "No canned responses found matching your search", "SEARCH_404": "沒有任何項目符合此查詢.", "LIST": { "404": "此帳戶中沒有可用的罐頭回覆。", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/chatlist.json b/app/javascript/dashboard/i18n/locale/zh_TW/chatlist.json index 9c769af5c..7dfa95814 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/chatlist.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/chatlist.json @@ -76,6 +76,9 @@ }, "waiting_since_desc": { "TEXT": "等待回應: 近的在前" + }, + "priority_desc_created_at_asc": { + "TEXT": "Priority: Highest first, Created: Oldest first" } }, "ATTACHMENTS": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/contact.json b/app/javascript/dashboard/i18n/locale/zh_TW/contact.json index d0272cb56..24d66f004 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/contact.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/contact.json @@ -457,6 +457,9 @@ "INSTAGRAM": { "PLACEHOLDER": "Add Instagram" }, + "TELEGRAM": { + "PLACEHOLDER": "Add Telegram" + }, "TIKTOK": { "PLACEHOLDER": "Add TikTok" }, @@ -573,7 +576,8 @@ "SEARCH_EMPTY_STATE_TITLE": "找不到符合條件的聯絡人 🔍", "LIST_EMPTY_STATE_TITLE": "No contacts available in this view 📋", "ACTIVE_EMPTY_STATE_TITLE": "No contacts are active at the moment 🌙" - } + }, + "LOAD_MORE": "Load more" }, "CONTACTS_BULK_ACTIONS": { "ASSIGN_LABELS": "Assign Labels", @@ -607,7 +611,7 @@ "NO_INBOX_ALERT": "There are no available inboxes to start a conversation with this contact.", "CONTACT_SELECTOR": { "LABEL": "To:", - "TAG_INPUT_PLACEHOLDER": "Search for a contact with name, email or phone number", + "TAG_INPUT_PLACEHOLDER": "Enter at least 2 characters to search by name, email, or phone number", "CONTACT_CREATING": "Creating contact..." }, "INBOX_SELECTOR": { @@ -618,9 +622,9 @@ "SUBJECT_LABEL": "主旨 :", "SUBJECT_PLACEHOLDER": "Enter your email subject here", "CC_LABEL": "副本:", - "CC_PLACEHOLDER": "Search for a contact with their email address", + "CC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_LABEL": "密件副本:", - "BCC_PLACEHOLDER": "Search for a contact with their email address", + "BCC_PLACEHOLDER": "Enter at least 2 characters to search by email", "BCC_BUTTON": "密件副本" }, "MESSAGE_EDITOR": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json index 41c506b97..6602350d4 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/conversation.json @@ -61,6 +61,7 @@ "UNSUPPORTED_MESSAGE": "This message is unsupported. You can view this message on the Facebook / Instagram app.", "UNSUPPORTED_MESSAGE_FACEBOOK": "This message is unsupported. You can view this message on the Facebook Messenger app.", "UNSUPPORTED_MESSAGE_INSTAGRAM": "This message is unsupported. You can view this message on the Instagram app.", + "UNSUPPORTED_MESSAGE_TIKTOK": "This message is unsupported. You can view this message on the TikTok app.", "SUCCESS_DELETE_MESSAGE": "已成功刪除訊息", "FAIL_DELETE_MESSSAGE": "無法刪除訊息!請再試一次", "NO_RESPONSE": "無回應", @@ -173,6 +174,10 @@ "SUCCESFUL": "Assigned label #{labelName} to conversation id {conversationId}", "FAILED": "Couldn't assign label. Please try again." }, + "LABEL_REMOVAL": { + "SUCCESFUL": "Removed label #{labelName} from conversation id {conversationId}", + "FAILED": "Couldn't remove label. Please try again." + }, "TEAM_ASSIGNMENT": { "SUCCESFUL": "Assigned team \"{team}\" to conversation id {conversationId}", "FAILED": "Couldn't assign team. Please try again." @@ -185,7 +190,11 @@ "DISABLE_SIGN_TOOLTIP": "Disable signature", "MSG_INPUT": "輸入“/”開始選擇快捷回覆", "PRIVATE_MSG_INPUT": "Shift + 輸入新行。這只對客服可以看見", + "MESSAGING_RESTRICTED": "You cannot reply to this conversation", + "MESSAGING_RESTRICTED_WHATSAPP": "You can only reply using a template message due to 24-hour message window restriction", + "MESSAGING_RESTRICTED_API": "You can only reply using a template message due to message window restriction", "MESSAGE_SIGNATURE_NOT_CONFIGURED": "Message signature is not configured, please configure it in profile settings.", + "COPILOT_MSG_INPUT": "Give copilot additional prompts, or ask anything else... Press enter to send follow-up", "CLICK_HERE": "Click here to update", "WHATSAPP_TEMPLATES": "Whatsapp Templates" }, @@ -205,7 +214,7 @@ "DRAG_DROP": "Drag and drop here to attach", "START_AUDIO_RECORDING": "Start audio recording", "STOP_AUDIO_RECORDING": "Stop audio recording", - "": "", + "COPILOT_THINKING": "Copilot is thinking", "EMAIL_HEAD": { "TO": "TO", "ADD_BCC": "密件副本", @@ -247,9 +256,12 @@ "SUCCESS_DELETE_CONVERSATION": "Conversation deleted successfully", "FAIL_DELETE_CONVERSATION": "Couldn't delete conversation! Try again", "FILE_SIZE_LIMIT": "File exceeds the {MAXIMUM_SUPPORTED_FILE_UPLOAD_SIZE} MB attachment limit", + "FILE_TYPE_NOT_SUPPORTED": "This {fileName} file type is not supported in this conversation", "MESSAGE_ERROR": "Unable to send this message, please try again later", "SENT_BY": "寄送者:", "BOT": "機器人", + "NATIVE_APP": "Native app", + "NATIVE_APP_ADVISORY": "This message was sent from the native app. Reply from Chatwoot to maintain the message window.", "SEND_FAILED": "Couldn't send message! Try again", "TRY_AGAIN": "retry", "ASSIGNMENT": { @@ -294,6 +306,7 @@ "CANCEL": "取消操作", "SEND_EMAIL_SUCCESS": "The chat transcript was sent successfully", "SEND_EMAIL_ERROR": "出錯了,請重試", + "SEND_EMAIL_PAYMENT_REQUIRED": "Email transcript is not available on your current plan. Please upgrade to use this feature.", "FORM": { "SEND_TO_CONTACT": "Send the transcript to the customer", "SEND_TO_AGENT": "Send the transcript to the assigned agent", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/customRole.json b/app/javascript/dashboard/i18n/locale/zh_TW/customRole.json index e1ce42eb4..901b4a7c7 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/customRole.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/customRole.json @@ -3,8 +3,11 @@ "HEADER": "Custom Roles", "LEARN_MORE": "Learn more about custom roles", "DESCRIPTION": "Custom roles are roles that are created by the account owner or admin. These roles can be assigned to agents to define their access and permissions within the account. Custom roles can be created with specific permissions and access levels to suit the requirements of the organization.", + "COUNT": "{n} custom role | {n} custom roles", "HEADER_BTN_TXT": "Add custom role", "LOADING": "Fetching custom roles...", + "SEARCH_PLACEHOLDER": "Search custom roles...", + "NO_RESULTS": "No custom roles found matching your search", "SEARCH_404": "沒有任何項目符合此查詢.", "PAYWALL": { "TITLE": "Upgrade to create custom roles", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/datePicker.json b/app/javascript/dashboard/i18n/locale/zh_TW/datePicker.json index 8e187f50d..0087c2765 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/datePicker.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/datePicker.json @@ -1,5 +1,8 @@ { "DATE_PICKER": { + "PREVIOUS_PERIOD": "Previous period", + "NEXT_PERIOD": "Next period", + "WEEK_NUMBER": "Week #{weekNumber}", "APPLY_BUTTON": "套用", "CLEAR_BUTTON": "Clear", "DATE_RANGE_INPUT": { @@ -13,6 +16,8 @@ "LAST_3_MONTHS": "三個月內", "LAST_6_MONTHS": "六個月內", "LAST_YEAR": "去年", + "THIS_WEEK": "This week", + "MONTH_TO_DATE": "This month", "CUSTOM_RANGE": "自定日期範圍" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/general.json b/app/javascript/dashboard/i18n/locale/zh_TW/general.json index 22532087c..9a06e3266 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/general.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/general.json @@ -7,6 +7,13 @@ }, "CLOSE": "關閉", "BETA": "Beta", - "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it." + "BETA_DESCRIPTION": "This feature is in beta and may change as we improve it.", + "ACCEPT": "Accept", + "DISCARD": "Discard", + "PREFERRED": "Preferred" + }, + "CHOICE_TOGGLE": { + "YES": "是", + "NO": "否" } } diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json b/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json index 4eadce691..6b006caf4 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/generalSettings.json @@ -182,6 +182,7 @@ }, "COMMAND_BAR": { "SEARCH_PLACEHOLDER": "Search or jump to", + "SNOOZE_PLACEHOLDER": "Type a time e.g. tomorrow, 2 hours, next friday, jan 15...", "SECTIONS": { "GENERAL": "General", "REPORTS": "報表", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json index f3390be76..492625b40 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/helpCenter.json @@ -374,6 +374,16 @@ "ERROR_MESSAGE": "Error while deleting article" } }, + "REORDER_ARTICLE": { + "API": { + "ERROR_MESSAGE": "Unable to reorder articles. Please try again." + } + }, + "REORDER_CATEGORY": { + "API": { + "ERROR_MESSAGE": "Unable to reorder categories. Please try again." + } + }, "CREATE_ARTICLE": { "ERROR_MESSAGE": "Please add the article heading and content then only you can update the settings" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json index 9d33efd0b..0e224f56b 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/inboxMgmt.json @@ -3,6 +3,9 @@ "HEADER": "收件匣", "DESCRIPTION": "A channel is the mode of communication your customer chooses to interact with you. An inbox is where you manage interactions for a specific channel. It can include communications from various sources such as email, live chat, and social media.", "LEARN_MORE": "Learn more about inboxes", + "COUNT": "{n} inbox | {n} inboxes", + "SEARCH_PLACEHOLDER": "Search inboxes...", + "NO_RESULTS": "No inboxes found matching your search", "RECONNECTION_REQUIRED": "Your inbox is disconnected. You won't receive new messages until you reauthorize it.", "CLICK_TO_RECONNECT": "Click here to reconnect.", "WHATSAPP_REGISTRATION_INCOMPLETE": "Your WhatsApp Business registration isn’t complete. Please check your display name status in Meta Business Manager before reconnecting.", @@ -575,7 +578,7 @@ "SUBTITLE": "Use only the configured business name as the sender name in the email header." }, "BUSINESS_NAME": { - "BUTTON_TEXT": "+ Configure your business name", + "BUTTON_TEXT": "Configure your business name", "PLACEHOLDER": "Enter your business name", "SAVE_BUTTON_TEXT": "Save" } @@ -589,8 +592,10 @@ "DISABLED": "已停用" }, "LOCK_TO_SINGLE_CONVERSATION": { - "ENABLED": "已啟用", - "DISABLED": "已停用" + "ENABLED": "Reopen same conversation", + "DISABLED": "Create new conversations", + "ENABLED_DESCRIPTION": "When a contact messages again, the previous conversation will be reopened.", + "DISABLED_DESCRIPTION": "A new conversation will be created each time after the previous one is resolved." }, "ENABLE_HMAC": { "LABEL": "啟用" @@ -625,6 +630,8 @@ "ACCOUNT_HEALTH": "Account Health", "CSAT": "顧客滿意度得分(CSAT)" }, + "CHANNEL_PREFERENCES": "Channel Preferences", + "WIDGET_FEATURES": "Widget features", "ACCOUNT_HEALTH": { "TITLE": "Manage your WhatsApp account", "DESCRIPTION": "Review your WhatsApp account status, messaging limits, and quality. Update settings or resolve issues if needed", @@ -708,8 +715,8 @@ "SENDER_NAME_SECTION_TEXT": "Enable/Disable showing Agent's name in email, if disabled it will show business name", "ENABLE_CONTINUITY_VIA_EMAIL": "Enable conversation continuity via email", "ENABLE_CONTINUITY_VIA_EMAIL_SUB_TEXT": "Conversations will continue over email if the contact email address is available.", - "LOCK_TO_SINGLE_CONVERSATION": "Lock to single conversation", - "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Enable or disable multiple conversations for the same contact in this inbox", + "LOCK_TO_SINGLE_CONVERSATION": "Conversation Routing", + "LOCK_TO_SINGLE_CONVERSATION_SUB_TEXT": "Configure conversation creation for existing contacts", "INBOX_UPDATE_TITLE": "收件匣設定", "INBOX_UPDATE_SUB_TEXT": "更新收件匣設定", "AUTO_ASSIGNMENT_SUB_TEXT": "啟用或停用此收件匣客服的對話自動分配。", @@ -758,6 +765,7 @@ "LABEL": "Help Center", "PLACEHOLDER": "Select Help Center", "SELECT_PLACEHOLDER": "Select Help Center", + "NONE": "無", "REMOVE": "Remove Help Center", "SUB_TEXT": "Attach a Help Center with the inbox" }, @@ -766,6 +774,53 @@ "MAX_ASSIGNMENT_LIMIT_RANGE_ERROR": "Please enter a value greater than 0", "MAX_ASSIGNMENT_LIMIT_SUB_TEXT": "Limit the maximum number of conversations from this inbox that can be auto assigned to an agent" }, + "ASSIGNMENT": { + "TITLE": "Conversation Assignment", + "DESCRIPTION": "Automatically assign incoming conversations to available agents based on assignment policies", + "ENABLE_AUTO_ASSIGNMENT": "Enable automatic conversation assignment", + "DEFAULT_RULES_TITLE": "Default assignment rules", + "DEFAULT_RULES_DESCRIPTION": "Using the default assignment behavior for all conversations", + "DEFAULT_RULE_1": "Earliest created conversations first", + "DEFAULT_RULE_2": "Round robin distribution", + "CUSTOMIZE_WITH_POLICY": "Customize with assignment policy", + "USING_POLICY": "Using custom assignment policy for this inbox", + "CUSTOMIZE_POLICY": "Customize with assignment policy", + "DELETE_POLICY": "Delete policy", + "POLICY_LABEL": "Assignment policy", + "ASSIGNMENT_ORDER_LABEL": "Assignment Order", + "ASSIGNMENT_METHOD_LABEL": "Assignment Method", + "POLICY_STATUS": { + "ACTIVE": "Active", + "INACTIVE": "Inactive" + }, + "PRIORITY": { + "EARLIEST_CREATED": "Earliest created", + "LONGEST_WAITING": "Longest waiting" + }, + "METHOD": { + "ROUND_ROBIN": "Round robin", + "BALANCED": "Balanced assignment" + }, + "UPGRADE_PROMPT": "Custom assignment policies are available on the Business plan", + "UPGRADE_TO_BUSINESS": "Upgrade to Business", + "DEFAULT_POLICY_LINKED": "Default policy linked", + "DEFAULT_POLICY_DESCRIPTION": "Link a custom assignment policy to customize how conversations are assigned to agents in this inbox.", + "LINK_EXISTING_POLICY": "Link existing policy", + "CREATE_NEW_POLICY": "Create new policy", + "NO_POLICIES": "No assignment policies found", + "VIEW_ALL_POLICIES": "View all policies", + "CURRENT_BEHAVIOR": "Currently using default assignment behavior:", + "LINK_SUCCESS": "Assignment policy linked successfully", + "LINK_ERROR": "Failed to link assignment policy" + }, + "ASSIGNMENT_POLICY": { + "DELETE_CONFIRM_TITLE": "Delete assignment policy?", + "DELETE_CONFIRM_MESSAGE": "Are you sure you want to remove this assignment policy from this inbox? The inbox will revert to default assignment rules.", + "CANCEL": "取消", + "CONFIRM_DELETE": "刪除", + "DELETE_SUCCESS": "Assignment policy removed successfully", + "DELETE_ERROR": "Failed to remove assignment policy" + }, "FACEBOOK_REAUTHORIZE": { "TITLE": "重新授權", "SUBTITLE": "Your Facebook connection has expired, please reconnect your Facebook page to continue services", @@ -837,6 +892,20 @@ "CONFIRM": "Create new template", "CANCEL": "返回" }, + "UTILITY_ANALYZER": { + "ACTION": "Check utility fit", + "HELPER_NOTE": "Check this message before submission to improve Utility fit. The system creates a dedicated CSAT template with buttons for reporting and submits it as Utility; Meta may still reclassify it as Marketing based on content.", + "RESULT_LABEL": "Meta category prediction", + "GUIDANCE_NOTE": "This is a guidance check, not a guarantee of Meta approval.", + "SUGGESTION_LABEL": "Suggested utility-safe rewrite", + "APPLY": "Use this rewrite", + "ERROR_MESSAGE": "Couldn't analyze the message. Please try again.", + "CLASSIFICATION": { + "LIKELY_UTILITY": "Likely Utility", + "LIKELY_MARKETING": "Likely Marketing", + "UNCLEAR": "Needs clarification" + } + }, "SURVEY_RULE": { "LABEL": "Survey rule", "DESCRIPTION_PREFIX": "Send the survey if the conversation", @@ -848,7 +917,7 @@ "SELECT_PLACEHOLDER": "select labels" }, "NOTE": "Note: CSAT surveys are sent only once per conversation", - "WHATSAPP_NOTE": "Note: We will create a template and send it for WhatsApp approval. After being approved, surveys will be sent only once per conversation as per the survey rule.", + "WHATSAPP_NOTE": "Note: When you save, the system creates a dedicated CSAT template in WhatsApp (used to capture rating and feedback in reports) and submits it as Utility for approval. Meta may still classify it as Marketing based on content. After approval, surveys are sent only once per conversation as per the survey rule.", "API": { "SUCCESS_MESSAGE": "CSAT settings updated successfully", "ERROR_MESSAGE": "We couldn't update CSAT settings. Please try again later." @@ -864,9 +933,11 @@ "UNAVAILABLE_MESSAGE_LABEL": "Unavailable message for visitors", "TOGGLE_HELP": "Enabling business availability will show the available hours on live chat widget even if all the agents are offline. Outside available hours visitors can be warned with a message and a pre-chat form.", "DAY": { + "DAY": "Day", + "AVAILABILITY": "有效的", + "HOURS": "Hours", "ENABLE": "Enable availability for this day", "UNAVAILABLE": "無法使用", - "HOURS": "小時", "VALIDATION_ERROR": "開始時間必須在關閉時間之前", "CHOOSE": "選擇" }, @@ -973,11 +1044,12 @@ "IN_A_DAY": "一天內" }, "WIDGET_COLOR_LABEL": "視窗小元件顏色", - "WIDGET_BUBBLE_POSITION_LABEL": "Widget Bubble Position", - "WIDGET_BUBBLE_TYPE_LABEL": "Widget Bubble Type", + "WIDGET_BUBBLE": "Bubble", + "WIDGET_BUBBLE_POSITION_LABEL": "Position:", + "WIDGET_BUBBLE_TYPE_LABEL": "類別:", "WIDGET_BUBBLE_LAUNCHER_TITLE": { "DEFAULT": "與我們對話", - "LABEL": "Widget Bubble Launcher Title", + "LABEL": "Launcher Title", "PLACE_HOLDER": "與我們對話" }, "UPDATE": { @@ -1002,7 +1074,7 @@ }, "WIDGET_SCREEN": { "DEFAULT": "Default", - "CHAT": "Chat" + "CHAT": "Chat mode" }, "REPLY_TIME": { "IN_A_FEW_MINUTES": "通常在幾分鐘內回覆", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/integrationApps.json b/app/javascript/dashboard/i18n/locale/zh_TW/integrationApps.json index 83e385079..e18711ae0 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/integrationApps.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/integrationApps.json @@ -3,6 +3,9 @@ "FETCHING": "Fetching Integrations", "NO_HOOK_CONFIGURED": "There are no {integrationId} integrations configured in this account.", "HEADER": "Applications", + "COUNT": "{n} integration | {n} integrations", + "SEARCH_PLACEHOLDER": "Search...", + "NO_RESULTS": "No results found matching your search", "STATUS": { "ENABLED": "已啟用", "DISABLED": "已停用" @@ -31,6 +34,7 @@ "LIST": { "FETCHING": "Fetching integration hooks", "INBOX": "收件匣", + "ACTIONS": "操作", "DELETE": { "BUTTON_TEXT": "刪除" } diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json index feb3146ed..a50a0d3e2 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/integrations.json @@ -1,6 +1,7 @@ { "INTEGRATION_SETTINGS": { "SHOPIFY": { + "HEADER": "Shopify", "DELETE": { "TITLE": "Delete Shopify Integration", "MESSAGE": "Are you sure you want to delete the Shopify integration?" @@ -19,6 +20,8 @@ "DESCRIPTION": "Chatwoot integrates with multiple tools and services to improve your team's efficiency. Explore the list below to configure your favorite apps.", "LEARN_MORE": "Learn more about integrations", "LOADING": "Fetching integrations", + "SEARCH_PLACEHOLDER": "Search integrations...", + "NO_RESULTS": "No integrations found matching your search", "CAPTAIN": { "DISABLED": "Captain is not enabled on your account.", "CLICK_HERE_TO_CONFIGURE": "Click here to configure", @@ -28,6 +31,17 @@ "WEBHOOK": { "SUBSCRIBED_EVENTS": "Subscribed Events", "LEARN_MORE": "Learn more about webhooks", + "SECRET": { + "LABEL": "Secret", + "COPY": "Copy secret to clipboard", + "COPY_SUCCESS": "Secret copied to clipboard", + "TOGGLE": "Toggle secret visibility", + "CREATED_DESC": "Your webhook has been created. Use the secret below to verify webhook signatures. Please copy it now — you can also find it later in the webhook edit form.", + "DONE": "Done" + }, + "COUNT": "{n} webhook | {n} webhooks", + "SEARCH_PLACEHOLDER": "Search webhooks...", + "NO_RESULTS": "No webhooks found matching your search", "FORM": { "CANCEL": "取消", "DESC": "Webhook 事件為您提供了有關 Chatwoot 帳戶中發生的事情的即時資訊。請輸入一個有效的URL來配置回呼。", @@ -104,6 +118,7 @@ } }, "SLACK": { + "HEADER": "Slack", "DELETE": "刪除", "DELETE_CONFIRMATION": { "TITLE": "Delete the integration", @@ -145,7 +160,29 @@ "EXPAND": "Expand", "MAKE_FRIENDLY": "Change message tone to friendly", "MAKE_FORMAL": "Use formal tone", - "SIMPLIFY": "Simplify" + "SIMPLIFY": "Simplify", + "CONFIDENT": "Use confident tone", + "PROFESSIONAL": "Use professional tone", + "CASUAL": "Use casual tone", + "STRAIGHTFORWARD": "Use straightforward tone" + }, + "REPLY_OPTIONS": { + "IMPROVE_REPLY": "Improve reply", + "IMPROVE_REPLY_SELECTION": "Improve the selection", + "CHANGE_TONE": { + "TITLE": "Change tone", + "OPTIONS": { + "PROFESSIONAL": "Professional", + "CASUAL": "Casual", + "STRAIGHTFORWARD": "Straightforward", + "CONFIDENT": "Confident", + "FRIENDLY": "Friendly" + } + }, + "GRAMMAR": "Fix grammar & spelling", + "SUGGESTION": "Suggest a reply", + "SUMMARIZE": "Summarize the conversation", + "ASK_COPILOT": "Ask Copilot" }, "ASSISTANCE_MODAL": { "DRAFT_TITLE": "Draft content", @@ -201,12 +238,16 @@ "SIDEBAR_TXT": "

Dashboard Apps

Dashboard Apps allow organizations to embed an application inside the Chatwoot dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that inside the dashboard to provide user information, their orders, or their previous payment history.

When you embed your application using the dashboard in Chatwoot, your application will get the context of the conversation and contact as a window event. Implement a listener for the message event on your page to receive the context.

To add a new dashboard app, click on the button 'Add a new dashboard app'.

", "DESCRIPTION": "Dashboard Apps allow organizations to embed an application inside the dashboard to provide the context for customer support agents. This feature allows you to create an application independently and embed that to provide user information, their orders, or their previous payment history.", "LEARN_MORE": "Learn more about Dashboard Apps", + "COUNT": "{n} dashboard app | {n} dashboard apps", + "SEARCH_PLACEHOLDER": "Search dashboard apps...", + "NO_RESULTS": "No dashboard apps found matching your search", "LIST": { "404": "There are no dashboard apps configured on this account yet", "LOADING": "Fetching dashboard apps...", "TABLE_HEADER": { "NAME": "姓名", - "ENDPOINT": "Endpoint" + "ENDPOINT": "Endpoint", + "ACTIONS": "操作" }, "EDIT_TOOLTIP": "編輯應用程式", "DELETE_TOOLTIP": "刪除應用程式" @@ -243,6 +284,7 @@ } }, "LINEAR": { + "HEADER": "Linear", "ADD_OR_LINK_BUTTON": "Create/Link Linear Issue", "LOADING": "Fetching linear issues...", "LOADING_ERROR": "There was an error fetching the linear issues, please try again", @@ -337,6 +379,7 @@ } }, "NOTION": { + "HEADER": "Notion", "DELETE": { "TITLE": "Are you sure you want to delete the Notion integration?", "MESSAGE": "Deleting this integration will remove access to your Notion workspace and stop all related functionality.", @@ -406,6 +449,7 @@ "CANCEL_ANYTIME": "You can change or cancel your plan anytime" }, "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "Captain AI is only available in the Enterprise plans.", "UPGRADE_PROMPT": "Upgrade your plan to get access to our assistants, copilot and more.", "ASK_ADMIN": "Please reach out to your administrator for the upgrade." }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/labelsMgmt.json b/app/javascript/dashboard/i18n/locale/zh_TW/labelsMgmt.json index 472803b4d..44815c8fb 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/labelsMgmt.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/labelsMgmt.json @@ -5,6 +5,9 @@ "LOADING": "正在獲取標籤", "DESCRIPTION": "Labels help you categorize and prioritize conversations and leads. You can assign a label to a conversation or contact using the side panel.", "LEARN_MORE": "Learn more about labels", + "COUNT": "{n} label | {n} labels", + "SEARCH_PLACEHOLDER": "搜尋標籤...", + "NO_RESULTS": "No labels found matching your search", "SEARCH_404": "没有任何項目符合此查詢", "LIST": { "404": "此帳戶中没有可用的標籤。", @@ -13,7 +16,8 @@ "TABLE_HEADER": { "NAME": "姓名", "DESCRIPTION": "描述資訊", - "COLOR": "顏色" + "COLOR": "顏色", + "ACTION": "操作" } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/macros.json b/app/javascript/dashboard/i18n/locale/zh_TW/macros.json index cb3ed1194..89ba79791 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/macros.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/macros.json @@ -3,9 +3,12 @@ "HEADER": "Macros", "DESCRIPTION": "A macro is a set of saved actions that help customer service agents easily complete tasks. The agents can define a set of actions like tagging a conversation with a label, sending an email transcript, updating a custom attribute, etc., and they can run these actions in a single click.", "LEARN_MORE": "Learn more about macros", + "COUNT": "{n} macro | {n} macros", "HEADER_BTN_TXT": "Add a new macro", "HEADER_BTN_TXT_SAVE": "Save macro", "LOADING": "Fetching macros", + "SEARCH_PLACEHOLDER": "Search macros...", + "NO_RESULTS": "No macros found matching your search", "ERROR": "Something went wrong. Please try again", "ORDER_INFO": "Macros will run in the order you add your actions. You can rearrange them by dragging them by the handle beside each node.", "ADD": { @@ -29,7 +32,8 @@ "NAME": "姓名", "CREATED BY": "Created by", "LAST_UPDATED_BY": "Last updated by", - "VISIBILITY": "Visibility" + "VISIBILITY": "Visibility", + "ACTIONS": "操作" }, "404": "No macros found" }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/mfa.json b/app/javascript/dashboard/i18n/locale/zh_TW/mfa.json index f584d7110..728deecbc 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/mfa.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/mfa.json @@ -1,7 +1,7 @@ { "MFA_SETTINGS": { "TITLE": "Two-Factor Authentication", - "SUBTITLE": "Secure your account with TOTP-based authentication", + "SUBTITLE": "Protect your account from unauthorized access with TOTP-based authentication. This adds an extra layer of security to your account.", "DESCRIPTION": "Add an extra layer of security to your account using a time-based one-time password (TOTP)", "STATUS_TITLE": "Authentication Status", "STATUS_DESCRIPTION": "Manage your two-factor authentication settings and backup recovery codes", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/report.json b/app/javascript/dashboard/i18n/locale/zh_TW/report.json index 3f36b9ef5..1363948ad 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/report.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/report.json @@ -3,7 +3,7 @@ "HEADER": "對話", "LOADING_CHART": "正在載入图表數據...", "NO_ENOUGH_DATA": "我們没有收到足夠的數據來生成報表,請稍後再試。", - "DOWNLOAD_AGENT_REPORTS": "下載客服報告", + "DOWNLOAD_CONVERSATION_REPORTS": "Download conversation reports", "DATA_FETCHING_FAILED": "Failed to fetch data, please try again later.", "SUMMARY_FETCHING_FAILED": "Failed to fetch summary, please try again later.", "METRICS": { @@ -128,11 +128,16 @@ }, "AGENT_REPORTS": { "HEADER": "客服總覽", - "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent’s name to learn more.", + "DESCRIPTION": "Easily track agent performance with key metrics such as conversations, response times, resolution times, and resolved cases. Click an agent's name to learn more.", "LOADING_CHART": "正在載入图表數據...", "NO_ENOUGH_DATA": "我們没有收到足夠的數據來生成報表,請稍後再試。", "DOWNLOAD_AGENT_REPORTS": "下載客服報告", "FILTER_DROPDOWN_LABEL": "選擇客服", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "AGENTS": "搜尋客服" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "對話", @@ -201,6 +206,11 @@ "NO_ENOUGH_DATA": "我們没有收到足夠的數據來生成報表,請稍後再試。", "DOWNLOAD_LABEL_REPORTS": "Download label reports", "FILTER_DROPDOWN_LABEL": "Select Label", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "LABELS": "搜尋標籤" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "對話", @@ -271,6 +281,11 @@ "FILTER_DROPDOWN_LABEL": "選擇收件匣", "ALL_INBOXES": "All Inboxes", "SEARCH_INBOX": "Search Inbox", + "FILTERS": { + "INPUT_PLACEHOLDER": { + "INBOXES": "Search inboxes" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "對話", @@ -334,11 +349,19 @@ }, "TEAM_REPORTS": { "HEADER": "Team Overview", - "DESCRIPTION": "Get a snapshot of your team’s performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", + "DESCRIPTION": "Get a snapshot of your team's performance with essential metrics, including conversations, response times, resolution times, and resolved cases. Click a team name for more details.", "LOADING_CHART": "正在載入图表數據...", "NO_ENOUGH_DATA": "我們没有收到足夠的數據來生成報表,請稍後再試。", "DOWNLOAD_TEAM_REPORTS": "Download team reports", "FILTER_DROPDOWN_LABEL": "Select Team", + "FILTERS": { + "ADD_FILTER": "添加查詢條件", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "TEAMS": "搜尋團隊" + } + }, "METRICS": { "CONVERSATIONS": { "NAME": "對話", @@ -402,22 +425,48 @@ }, "CSAT_REPORTS": { "HEADER": "CSAT Reports", - "NO_RECORDS": "There are no CSAT survey responses available.", + "NO_RECORDS": "No responses yet", + "NO_RECORDS_DESCRIPTION": "CSAT survey responses will appear here once customers start providing feedback.", "DOWNLOAD": "Download CSAT Reports", "DOWNLOAD_FAILED": "Failed to download CSAT Reports", "FILTERS": { + "ADD_FILTER": "添加查詢條件", + "CLEAR_ALL": "Clear all", + "NO_FILTER": "No filters available", + "INPUT_PLACEHOLDER": { + "AGENTS": "搜尋客服", + "INBOXES": "Search inboxes", + "TEAMS": "搜尋團隊", + "RATINGS": "Search ratings" + }, "AGENTS": { - "PLACEHOLDER": "Choose Agents" + "LABEL": "客服" + }, + "INBOXES": { + "LABEL": "收件匣" + }, + "TEAMS": { + "LABEL": "Team" + }, + "RATINGS": { + "LABEL": "Rating" } }, "TABLE": { "HEADER": { "CONTACT_NAME": "聯絡人", - "AGENT_NAME": "Assigned agent", + "AGENT_NAME": "客服", "RATING": "Rating", - "FEEDBACK_TEXT": "Feedback comment" - } + "FEEDBACK_TEXT": "Feedback comment", + "CONVERSATION": "對話", + "CUSTOMER": "Customer", + "RESPONSE": "Response", + "HANDLED_BY": "Handled by" + }, + "UNKNOWN_CUSTOMER": "Unknown customer" }, + "NO_AGENT": "No assigned agent", + "NO_FEEDBACK": "No feedback provided", "METRIC": { "TOTAL_RESPONSES": { "LABEL": "Total responses", @@ -430,6 +479,25 @@ "RESPONSE_RATE": { "LABEL": "Response rate", "TOOLTIP": "Total number of responses / Total number of CSAT survey messages sent * 100" + }, + "RATING_DISTRIBUTION": "Rating distribution" + }, + "REVIEW_NOTES": { + "TITLE": "Review notes", + "PLACEHOLDER": "Add review notes about this rating...", + "SAVE": "Save", + "CANCEL": "取消", + "SAVING": "Saving...", + "SAVED": "Notes saved successfully", + "SAVE_ERROR": "Failed to save notes", + "UPDATED_BY": "Updated by {name} {time}", + "UPDATED_BY_LABEL": "Updated by", + "PAYWALL": { + "TITLE": "Upgrade to add review notes", + "AVAILABLE_ON": "The review notes feature is only available in the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Add internal context to every CSAT response with review notes. Capture what really happened, spot patterns faster, and make better decisions from your feedback.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" } } }, diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/settings.json b/app/javascript/dashboard/i18n/locale/zh_TW/settings.json index 62ef9a06a..0f64c2e94 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/settings.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/settings.json @@ -273,7 +273,8 @@ "FILE_BUBBLE": { "DOWNLOAD": "下載", "UPLOADING": "上傳中...", - "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available." + "INSTAGRAM_STORY_UNAVAILABLE": "This story is no longer available.", + "INSTAGRAM_STORY_REPLY": "Replied to your story:" }, "LOCATION_BUBBLE": { "SEE_ON_MAP": "See on map" @@ -378,7 +379,57 @@ "INFO_SHORT": "Automatically mark offline when you aren't using the app." }, "DOCS": "Read docs", - "SECURITY": "Security" + "SECURITY": "Security", + "CAPTAIN_AI": "Captain", + "CONVERSATION_WORKFLOW": "Conversation Workflow" + }, + "CAPTAIN_SETTINGS": { + "TITLE": "Captain Settings", + "DESCRIPTION": "Configure your AI models and features for Captain. Captain follows a credit based billing, you will be charged credits for every action Captain takes based on the model selected.", + "LOADING": "Loading Captain configuration...", + "LINK_TEXT": "Learn more about Captain Credits", + "NOT_ENABLED": "Captain is not enabled for your account. Please upgrade your plan to access Captain features.", + "MODEL_CONFIG": { + "TITLE": "Model Configuration", + "DESCRIPTION": "Select AI models for different features.", + "SELECT_MODEL": "Select model", + "CREDITS_PER_MESSAGE": "{credits} credit/message", + "COMING_SOON": "Coming soon", + "EDITOR": { + "TITLE": "Editor Features", + "DESCRIPTION": "Powers smart compose, grammar corrections, tone adjustments, and content enhancement in your message editor." + }, + "ASSISTANT": { + "TITLE": "Assistant", + "DESCRIPTION": "Handles automated responses, conversation summaries, and intelligent reply suggestions for customer interactions." + }, + "COPILOT": { + "TITLE": "Co-pilot", + "DESCRIPTION": "Provides real-time contextual suggestions, knowledge base recommendations, and proactive insights during conversations." + } + }, + "FEATURES": { + "TITLE": "Features", + "DESCRIPTION": "Enable or disable AI-powered features.", + "AUDIO_TRANSCRIPTION": { + "TITLE": "Audio Transcription", + "DESCRIPTION": "Automatically convert voice messages and call recordings into searchable text transcripts." + }, + "HELP_CENTER_SEARCH": { + "TITLE": "Help Center Search Indexing", + "DESCRIPTION": "Use AI for context aware search inside your help center articles." + }, + "LABEL_SUGGESTION": { + "TITLE": "Label Suggestion", + "DESCRIPTION": "Automatically suggest relevant labels and tags for conversations based on content analysis and context.", + "MODEL_TITLE": "Label Suggestion Model", + "MODEL_DESCRIPTION": "Select the AI model to use for analyzing conversations and suggesting appropriate labels" + } + }, + "API": { + "SUCCESS": "Captain settings updated successfully.", + "ERROR": "Failed to update Captain settings. Please try again." + } }, "BILLING_SETTINGS": { "TITLE": "帳單", @@ -506,6 +557,58 @@ } } }, + "CONVERSATION_WORKFLOW": { + "INDEX": { + "HEADER": { + "TITLE": "Conversation Workflows", + "DESCRIPTION": "Configure rules and required fields for conversation resolution." + } + }, + "REQUIRED_ATTRIBUTES": { + "TITLE": "Attributes required on resolution", + "DESCRIPTION": "When resolving a conversation, agents will be prompted to fill these attributes if they haven't yet.", + "NO_ATTRIBUTES": "No attributes added yet", + "ADD": { + "TITLE": "Add Attributes", + "SEARCH_PLACEHOLDER": "Search attributes" + }, + "SAVE": { + "SUCCESS": "Required attributes updated", + "ERROR": "Could not update required attributes, please try again" + }, + "MODAL": { + "TITLE": "解決對話", + "DESCRIPTION": "Please fill in the following custom attributes before resolving this conversation", + "ACTIONS": { + "RESOLVE": "解決對話", + "CANCEL": "取消" + }, + "PLACEHOLDERS": { + "TEXT": "Write a note...", + "NUMBER": "Enter a number", + "LINK": "Add a link", + "DATE": "Pick a date", + "LIST": "Select an option" + }, + "CHECKBOX": { + "YES": "是", + "NO": "否" + } + }, + "PAYWALL": { + "TITLE": "Upgrade to use required attributes", + "AVAILABLE_ON": "The required conversation attributes feature is available on the Business and Enterprise plans.", + "UPGRADE_PROMPT": "Upgrade your plan to prompt agents to fill required attributes before conversation resolution.", + "UPGRADE_NOW": "Upgrade now", + "CANCEL_ANYTIME": "You can change or cancel your plan anytime" + }, + "ENTERPRISE_PAYWALL": { + "AVAILABLE_ON": "The required conversation attributes feature is available on the paid plans.", + "UPGRADE_PROMPT": "Upgrade to a paid plan to enforce required attributes before conversation resolution.", + "ASK_ADMIN": "Please reach out to your administrator for the upgrade." + } + } + }, "CREATE_ACCOUNT": { "NO_ACCOUNT_WARNING": "Uh oh! We could not find any Chatwoot accounts. Please create a new account to continue.", "NEW_ACCOUNT": "新帳戶", @@ -591,7 +694,8 @@ "CREATE_BUTTON": "Create policy", "API": { "SUCCESS_MESSAGE": "Assignment policy created successfully", - "ERROR_MESSAGE": "Failed to create assignment policy" + "ERROR_MESSAGE": "Failed to create assignment policy", + "INBOX_LINKED": "Inbox has been linked to the policy" } }, "EDIT": { @@ -605,6 +709,12 @@ "CONFIRM_BUTTON_LABEL": "Continue", "CANCEL_BUTTON_LABEL": "取消" }, + "INBOX_LINK_PROMPT": { + "TITLE": "Link inbox to policy", + "DESCRIPTION": "Would you like to link this inbox to the assignment policy?", + "LINK_BUTTON": "Link inbox", + "CANCEL_BUTTON": "Skip" + }, "API": { "SUCCESS_MESSAGE": "Assignment policy updated successfully", "ERROR_MESSAGE": "Failed to update assignment policy" @@ -643,7 +753,9 @@ }, "BALANCED": { "LABEL": "Balanced", - "DESCRIPTION": "Assign conversations based on available capacity." + "DESCRIPTION": "Assign conversations based on available capacity.", + "PREMIUM_MESSAGE": "Upgrade to access balanced assignment and agent capacity management.", + "PREMIUM_BADGE": "Premium" } }, "ASSIGNMENT_PRIORITY": { @@ -729,6 +841,20 @@ "SUCCESS_MESSAGE": "Agent removed from policy successfully", "ERROR_MESSAGE": "Failed to remove agent from policy" } + }, + "INBOX_LIMIT_API": { + "ADD": { + "SUCCESS_MESSAGE": "Inbox limit added successfully", + "ERROR_MESSAGE": "Failed to add inbox limit" + }, + "UPDATE": { + "SUCCESS_MESSAGE": "Inbox limit updated successfully", + "ERROR_MESSAGE": "Failed to update inbox limit" + }, + "DELETE": { + "SUCCESS_MESSAGE": "Inbox limit deleted successfully", + "ERROR_MESSAGE": "Failed to delete inbox limit" + } } }, "FORM": { diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/signup.json b/app/javascript/dashboard/i18n/locale/zh_TW/signup.json index 41a645e64..67087743f 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/signup.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/signup.json @@ -1,6 +1,7 @@ { "REGISTER": { "TRY_WOOT": "Create an account", + "GET_STARTED": "Get started with Chatwoot", "TITLE": "註冊", "TESTIMONIAL_HEADER": "All it takes is one step to move forward", "TESTIMONIAL_CONTENT": "You're one step away from engaging your customers, retaining them and finding new ones.", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/sla.json b/app/javascript/dashboard/i18n/locale/zh_TW/sla.json index 57605f081..f4dc28a54 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/sla.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/sla.json @@ -5,7 +5,12 @@ "ADD_ACTION_LONG": "Create a new SLA Policy", "DESCRIPTION": "Service Level Agreements (SLAs) are contracts that define clear expectations between your team and customers. They establish standards for response and resolution times, creating a framework for accountability and ensures a consistent, high-quality experience.", "LEARN_MORE": "Learn more about SLA", + "COUNT": "{n} SLA | {n} SLAs", "LOADING": "Fetching SLAs", + "SEARCH_PLACEHOLDER": "Search SLA...", + "SEARCH": { + "NO_RESULTS": "No SLA found matching your search" + }, "PAYWALL": { "TITLE": "Upgrade to create SLAs", "AVAILABLE_ON": "The SLA feature is only available in the Business and Enterprise plans.", @@ -20,14 +25,18 @@ }, "LIST": { "404": "There are no SLAs available in this account.", + "TABLE_HEADER": { + "SLA": "服務水準協議(SLA)", + "BUSINESS_HOURS": "Business hours" + }, "EMPTY": { "TITLE_1": "Enterprise P0", "DESC_1": "Issues raised by enterprise customers, that require immediate attention.", "TITLE_2": "Enterprise P1", "DESC_2": "Issues raised by enterprise customers, that needs to be acknowledged quickly." }, - "BUSINESS_HOURS_ON": "Business hours on", - "BUSINESS_HOURS_OFF": "Business hours off", + "BUSINESS_HOURS_ON": "Turned on", + "BUSINESS_HOURS_OFF": "Turned off", "RESPONSE_TYPES": { "FRT": "First response time threshold", "NRT": "Next response time threshold", diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/snooze.json b/app/javascript/dashboard/i18n/locale/zh_TW/snooze.json new file mode 100644 index 000000000..4b380fdef --- /dev/null +++ b/app/javascript/dashboard/i18n/locale/zh_TW/snooze.json @@ -0,0 +1,72 @@ +{ + "SNOOZE_PARSER": { + "UNITS": { + "MINUTE": "minute", + "MINUTES": "minutes", + "HOUR": "hour", + "HOURS": "小時", + "DAY": "day", + "DAYS": "days", + "WEEK": "week", + "WEEKS": "weeks", + "MONTH": "month", + "MONTHS": "months", + "YEAR": "month", + "YEARS": "years" + }, + "HALF": "half", + "NEXT": "next", + "THIS": "this", + "AT": "at", + "IN": "in", + "FROM_NOW": "from now", + "NEXT_YEAR": "next year", + "MERIDIEM": { + "AM": "am", + "PM": "pm" + }, + "RELATIVE": { + "TOMORROW": "明天", + "DAY_AFTER_TOMORROW": "day after tomorrow", + "NEXT_WEEK": "下週", + "NEXT_MONTH": "next month", + "THIS_WEEKEND": "this weekend", + "NEXT_WEEKEND": "next weekend" + }, + "TIME_OF_DAY": { + "MORNING": "morning", + "AFTERNOON": "afternoon", + "EVENING": "evening", + "NIGHT": "night", + "NOON": "noon", + "MIDNIGHT": "midnight" + }, + "WORD_NUMBERS": { + "ONE": "one", + "TWO": "two", + "THREE": "three", + "FOUR": "four", + "FIVE": "five", + "SIX": "six", + "SEVEN": "seven", + "EIGHT": "eight", + "NINE": "nine", + "TEN": "ten", + "TWELVE": "twelve", + "FIFTEEN": "fifteen", + "TWENTY": "twenty", + "THIRTY": "thirty" + }, + "ORDINALS": { + "FIRST": "first", + "SECOND": "second", + "THIRD": "third", + "FOURTH": "fourth", + "FIFTH": "fifth" + }, + "OF": "of", + "AFTER": "after", + "WEEK": "week", + "DAY": "day" + } +} diff --git a/app/javascript/dashboard/i18n/locale/zh_TW/teamsSettings.json b/app/javascript/dashboard/i18n/locale/zh_TW/teamsSettings.json index 518557287..637ec5a57 100644 --- a/app/javascript/dashboard/i18n/locale/zh_TW/teamsSettings.json +++ b/app/javascript/dashboard/i18n/locale/zh_TW/teamsSettings.json @@ -5,6 +5,9 @@ "LOADING": "Fetching teams", "DESCRIPTION": "Teams allow you to organize agents into groups based on their responsibilities. An agent can belong to multiple teams. When working collaboratively, you can assign conversations to specific teams.", "LEARN_MORE": "Learn more about teams", + "COUNT": "{n} team | {n} teams", + "SEARCH_PLACEHOLDER": "搜尋團隊...", + "NO_RESULTS": "No teams found matching your search", "LIST": { "404": "There are no teams created on this account.", "EDIT_TEAM": "編輯團隊", @@ -65,7 +68,7 @@ }, "AGENTS": { "AGENT": "客服", - "EMAIL": "電子信箱", + "EMAIL": "Email", "BUTTON_TEXT": "新增客服", "ADD_AGENTS": "正在將客服加入到你的團隊...", "SELECT": "選擇", diff --git a/config/locales/am.yml b/config/locales/am.yml index f53012a9e..5ee930b75 100644 --- a/config/locales/am.yml +++ b/config/locales/am.yml @@ -28,8 +28,7 @@ am: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ am: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ am: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ am: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ am: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ am: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ am: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ am: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ am: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ar.yml b/config/locales/ar.yml index eb1573a38..ae0da3ef7 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -28,8 +28,7 @@ ar: invalid_email: 'الرجاء إدخال عنوان بريد إلكتروني صحيح' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: تم إرسال طلب إعادة تعيين كلمة المرور. يرجى مراجعة بريدك الإلكتروني للحصول على التعليمات. - reset_password_failure: المعذرة! لم نتمكن من العثور على أي مستخدم بعنوان البريد الإلكتروني المحدد. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ar: host_unreachable_error: المضيف لا يمكن الوصول إليه، الرجاء التحقق من عنوان IMAP ومنفذ IMAP ثم حاول مرة أخرى. connection_timed_out_error: انتهت مهلة الاتصال لـ %{address}:%{port} connection_closed_error: تم إغلاق الاتصال. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: لا ينبغي أن تبدأ أو تنتهي بالرموز، ولا ينبغي أن يكون أقل من > / \ أحرف @ . custom_filters: @@ -104,6 +108,7 @@ ar: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: قيمة غير صالحة. القيم المقدمة ل %{attribute_name} غير صالحة custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ar: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ar: avg_resolution_time: متوسط وقت الحل resolution_count: عدد مرات الإغلاق avg_customer_waiting_time: متوسط وقت انتظار العميل + conversation_csv: + conversations_count: المحادثات + incoming_messages_count: الرسائل الواردة + outgoing_messages_count: الرسائل الصادرة + avg_first_response_time: متوسط وقت الاستجابة الأولى + avg_resolution_time: متوسط وقت الحل + resolution_count: Resolution count + avg_customer_waiting_time: متوسط وقت انتظار العميل conversation_traffic_csv: timezone: منطقة زمنية sla_csv: @@ -178,6 +193,7 @@ ar: rating: التقييم feedback: التعليق على الملاحظات recorded_at: تاريخ التسجيل + review_notes: Review Notes notifications: notification_title: conversation_creation: 'تم إنشاء محادثة (#%{display_id}) في %{inbox_name}' @@ -205,7 +221,11 @@ ar: activity: captain: resolved: 'تم تحديد هذه المحادثة كمحلولة بواسطة %{user_name} بسبب عدم النشاط' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'تم تحديد هذه المحادثة كمفتوحة بواسطة %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ar: copilot_message_required: الرسالة مطلوبة copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -421,6 +444,9 @@ ar: few: '%{count} ثواني' many: '%{count} ثانية' other: '%{count} ثانية' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/az.yml b/config/locales/az.yml index f3dbec20a..7933217e2 100644 --- a/config/locales/az.yml +++ b/config/locales/az.yml @@ -28,8 +28,7 @@ az: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ az: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ az: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ az: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ az: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ az: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ az: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ az: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ az: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/bg.yml b/config/locales/bg.yml index 8349a4dc1..8abf11acf 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -28,8 +28,7 @@ bg: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ bg: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ bg: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ bg: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ bg: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Разговори + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ bg: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ bg: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ bg: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ bg: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/bn.yml b/config/locales/bn.yml index aa1bc9c79..dd75141eb 100644 --- a/config/locales/bn.yml +++ b/config/locales/bn.yml @@ -28,8 +28,7 @@ bn: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ bn: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ bn: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ bn: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ bn: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ bn: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ bn: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ bn: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ bn: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ca.yml b/config/locales/ca.yml index 8dd65ee7f..ebf1afafa 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -28,8 +28,7 @@ ca: invalid_email: 'Introduïu una adreça de correu electrònic vàlida' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! S'ha restablert la contrasenya amb èxit. Revisa el correu per més instruccions. - reset_password_failure: Uh ho! No s'ha trobat cap compte amb aquest correu electrònic. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ca: host_unreachable_error: Amfitrió inaccessible. Comprova l'adreça IMAP, el port IMAP i torna-ho a provar. connection_timed_out_error: S'ha esgotat el temps d'espera de la connexió per a %{address}:%{port} connection_closed_error: Connexió tancada. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: no hauria de començar ni acabar amb símbols, i no hauria de tenir caràcters < > / \ @. custom_filters: @@ -104,6 +108,7 @@ ca: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Valor no vàlid. Els valors proporcionats per a %{attribute_name} no són vàlids custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ca: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ca: avg_resolution_time: Temps mitjà de resolució resolution_count: Total de resolucions avg_customer_waiting_time: Temps mitjà d'espera dels clients + conversation_csv: + conversations_count: Converses + incoming_messages_count: Missatges d'entrada + outgoing_messages_count: Missatges de sortida + avg_first_response_time: Temps mitjà de primera resposta + avg_resolution_time: Temps mitjà de resolució + resolution_count: Resolution count + avg_customer_waiting_time: Temps mitjà d'espera dels clients conversation_traffic_csv: timezone: Fus horari sla_csv: @@ -178,6 +193,7 @@ ca: rating: Valoració feedback: Comentaris recorded_at: Data gravada + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Una conversa (#%{display_id}) ha estat creada a %{inbox_name}' @@ -205,7 +221,11 @@ ca: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ca: copilot_message_required: El missatge és obligatori copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ca: seconds: one: '%{count} segon' other: '%{count} segons' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/cs.yml b/config/locales/cs.yml index 47819244e..a3829c810 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -28,8 +28,7 @@ cs: invalid_email: 'Zadejte prosím platnou e-mailovou adresu' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Žádost o obnovení hesla byla úspěšná. Zkontrolujte svůj e-mail pro pokyny. - reset_password_failure: Jejda! Nenašli jsme žádného uživatele se zadaným e-mailem. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ cs: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ cs: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ cs: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ cs: avg_resolution_time: Avg resolution time resolution_count: Počet rozlišení avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Konverzace + incoming_messages_count: Příchozí zprávy + outgoing_messages_count: Odchozí zprávy + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ cs: rating: Hodnocení feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ cs: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ cs: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ cs: few: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/da.yml b/config/locales/da.yml index 5f3a95b46..a14038a74 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -28,8 +28,7 @@ da: invalid_email: 'Indtast venligst en gyldig e-mailadresse' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Anmodning om nulstilling af adgangskode er vellykket. Tjek din mail for instruktioner. - reset_password_failure: Åh nej! Vi kunne ikke finde nogen bruger med den angivne e-mail. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ da: host_unreachable_error: Vært utilgængeligt, tjek venligst IMAP-adressen, IMAP-porten og prøv igen. connection_timed_out_error: Forbindelsen fik timeout for %{address}:%{port} connection_closed_error: Forbindelsen er lukket. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: bør ikke starte eller slutte med symboler, og det skal ikke have < > / \ @ tegn. custom_filters: @@ -104,6 +108,7 @@ da: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ da: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ da: avg_resolution_time: Avg resolution time resolution_count: Antal Afsluttede avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Samtaler + incoming_messages_count: Indkommende Beskeder + outgoing_messages_count: Udgående beskeder + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ da: rating: Bedømmelse feedback: Feedback Kommentar recorded_at: Optaget dato + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ da: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ da: copilot_message_required: Beskeden er påkrævet copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ da: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/de.yml b/config/locales/de.yml index 48154b21d..a81cd5b7b 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -28,8 +28,7 @@ de: invalid_email: 'Bitte geben Sie eine gültige E-Mail-Adresse ein' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Die Anforderung zum Zurücksetzen des Passworts ist erfolgreich. Überprüfen Sie Ihre E-Mails auf Anweisungen. - reset_password_failure: Uh ho! Wir konnten keinen Benutzer mit der angegebenen E-Mail-Adresse finden. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ de: host_unreachable_error: Host nicht erreichbar. Bitte überprüfen Sie die IMAP-Adresse und den IMAP-Port und versuchen Sie es erneut. connection_timed_out_error: Zeitüberschreitung der Verbindung für %{address}:%{port} connection_closed_error: Verbindung geschlossen. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: Sollte nicht mit Symbolen beginnen oder enden, und es sollte keine < > / \ @ Zeichen enthalten. custom_filters: @@ -104,6 +108,7 @@ de: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Ungültiger Wert. Die Werte für %{attribute_name} sind ungültig custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ de: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ de: avg_resolution_time: Durchschnittliche Auflösung resolution_count: Auflösungsanzahl avg_customer_waiting_time: Durchschnittliche Kundenwartezeit + conversation_csv: + conversations_count: Gespräche + incoming_messages_count: Eingehende Nachrichten + outgoing_messages_count: Ausgehende Nachrichten + avg_first_response_time: Durchschnittliche Zeit bis zur ersten Antwort + avg_resolution_time: Durchschnittliche Auflösung + resolution_count: Resolution count + avg_customer_waiting_time: Durchschnittliche Kundenwartezeit conversation_traffic_csv: timezone: Zeitzone sla_csv: @@ -178,6 +193,7 @@ de: rating: Bewertung feedback: Feedback-Kommentar recorded_at: Aufnahmedatum + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Neues Gespräch - #%{display_id} wurde in %{inbox_name} erstellt' @@ -205,7 +221,11 @@ de: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ de: copilot_message_required: Nachricht ist erforderlich copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ de: seconds: one: '%{count} Sekunde' other: '%{count} Sekunden' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/el.yml b/config/locales/el.yml index d804c4bde..ef165fc65 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -28,8 +28,7 @@ el: invalid_email: 'Παρακαλώ εισάγετε μια έγκυρη διεύθυνση email' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Το αίτημά σας για επαναφορά κωδικού ενεργοποιήθηκε. Ελέξτε το email σας για οδηγίες. - reset_password_failure: Ωχ όχι! Δεν υπάρχει κάποιος χρήστης με το συγκεκριμένο email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ el: host_unreachable_error: Μη προσβάσιμος διακομιστής, ελέγξτε τη διεύθυνση IMAP, τη θύρα IMAP και προσπαθήστε ξανά. connection_timed_out_error: Λήξη χρονικού ορίου σύνδεσης για %{address}:%{port} connection_closed_error: Η σύνδεση έκλεισε. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: δεν πρέπει να ξεκινά ή να τελειώνει με σύμβολα, και δεν πρέπει να περιέχει τους χαρακτήρες < > / \ @ custom_filters: @@ -104,6 +108,7 @@ el: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ el: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ el: avg_resolution_time: Avg resolution time resolution_count: Αριθμός Αναλύσεων avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Συζητήσεις + incoming_messages_count: Εισερχόμενα Μηνύματα + outgoing_messages_count: Εξερχόμενα Μηνύματα + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ el: rating: Αξιολόγηση feedback: Σχόλιο ανατροφοδότησης recorded_at: Ημερομηνία καταγραφής + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ el: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ el: copilot_message_required: Το μήνυμα είναι απαραίτητο copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ el: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/es.yml b/config/locales/es.yml index dc7cbf037..772b96917 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -28,8 +28,7 @@ es: invalid_email: 'Por favor, introduzca una dirección de correo válida' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: '¡Genial! La solicitud de restablecimiento de contraseña ha sido exitosa. Revisa tu correo para ver las instrucciones.' - reset_password_failure: '¡Uh ho! No hemos podido encontrar ningún usuario con el correo electrónico especificado.' + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ es: host_unreachable_error: Host inaccesible. Verifique la dirección IMAP, el puerto IMAP e intente nuevamente. connection_timed_out_error: Se agotó el tiempo de conexión para %{address}:%{port} connection_closed_error: Conexión cerrada. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: no debe comenzar ni terminar con símbolos, y no debe tener caracteres < > / \ @. custom_filters: @@ -104,6 +108,7 @@ es: invalid_query_operator: El operador de consulta debe ser "Y" o "O". invalid_value: Valor no válido. Los valores proporcionados para %{attribute_name} no son válidos custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ es: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ es: avg_resolution_time: Tiempo promedio de resolución resolution_count: Número de resoluciones avg_customer_waiting_time: Tiempo promedio de espera del cliente + conversation_csv: + conversations_count: Conversaciones + incoming_messages_count: Mensajes recibidos + outgoing_messages_count: Mensajes enviados + avg_first_response_time: Promedio de tiempo de la primera respuesta + avg_resolution_time: Tiempo promedio de resolución + resolution_count: Resolution count + avg_customer_waiting_time: Tiempo promedio de espera del cliente conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ es: rating: Calificación feedback: Comentario de opinión recorded_at: Fecha registrada + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Una conversación (#%{display_id}) ha sido creada en %{inbox_name}' @@ -205,7 +221,11 @@ es: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ es: copilot_message_required: El mensaje es obligatorio copilot_error: 'Conecte un asistente a esta bandeja de entrada para utilizar Copilot' copilot_limit: 'Te quedaste sin créditos de Copilot. Puedes comprar más créditos desde la sección de facturación.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ es: seconds: one: '%{count} segundo' other: '%{count} segundos' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/et.yml b/config/locales/et.yml index 7eb167dc1..50d0d82a6 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -28,8 +28,7 @@ et: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ et: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ et: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ et: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ et: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ et: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ et: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ et: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ et: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/fa.yml b/config/locales/fa.yml index 711327d47..47edafb45 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -28,8 +28,7 @@ fa: invalid_email: 'لطفا ایمیل خود را به شکل صحیح وارد کنید' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: سوت! درخواست ریست شدن رمز عبور با موفقیت ارسال شد. ایمیل خود را چک کنید - reset_password_failure: اوه نه! کاربری با چنین ایمیلی وجود ندارد + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ fa: host_unreachable_error: میزبان غیرقابل دسترسی است، لطفا آدرس IMAP و پورت IMAP را بررسی کنید و دوباره امتحان کنید. connection_timed_out_error: زمان اتصال برای %{address}:%{port} تمام شد connection_closed_error: اتصال بسته شد. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: نباید با نمادها شروع یا ختم شود و نباید دارای کاراکترهای < > / \ @ باشد. custom_filters: @@ -104,6 +108,7 @@ fa: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: مقدار معتبر نیست. مقادیر ارائه شده برای %{attribute_name} معتبر نیست custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ fa: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ fa: avg_resolution_time: میانگین زمان حل مشکل resolution_count: تعداد مسائل حل شده avg_customer_waiting_time: میانگین زمان انتظار مشتری + conversation_csv: + conversations_count: گفتگوها + incoming_messages_count: پیام‌های ورودی + outgoing_messages_count: پیام‌های خروجی + avg_first_response_time: میانگین زمان تا اولین پاسخ + avg_resolution_time: میانگین زمان حل مشکل + resolution_count: Resolution count + avg_customer_waiting_time: میانگین زمان انتظار مشتری conversation_traffic_csv: timezone: منطقه زمانی sla_csv: @@ -178,6 +193,7 @@ fa: rating: رتبه feedback: بازخورد نظر recorded_at: تاریخ ثبت شده + review_notes: Review Notes notifications: notification_title: conversation_creation: 'یک گفتگو جدید (%{display_id}) در %{inbox_name} ایجاد شده است' @@ -205,7 +221,11 @@ fa: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ fa: copilot_message_required: پیام الزامی است copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ fa: seconds: one: '%{count} ثانیه' other: '%{count} ثانیه' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/fi.yml b/config/locales/fi.yml index b4e537064..29886894b 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -28,8 +28,7 @@ fi: invalid_email: 'Ole hyvä ja syötä validi sähköposti' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Salasanan nollauspyyntö onnistui. Tarkista sähköpostisi saadaksesi ohjeita. - reset_password_failure: Hö! Emme löytäneet yhtään käyttäjää määritellyllä sähköpostilla. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ fi: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ fi: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ fi: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ fi: avg_resolution_time: Avg resolution time resolution_count: Selvitysmäärä avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Keskustelut + incoming_messages_count: Saapuvat viestit + outgoing_messages_count: Lähtevät viestit + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ fi: rating: Arvio feedback: Palautteen kommentti recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ fi: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ fi: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ fi: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 389fdb243..fc9da1af1 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -28,8 +28,7 @@ fr: invalid_email: 'Veuillez saisir une adresse de courriel valide' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Super ! La demande de réinitialisation du mot de passe a réussi. Consultez vos e-mails pour obtenir des instructions. - reset_password_failure: Oh oh ! Nous n'avons trouvé aucun utilisateur avec le courriel spécifié. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ fr: host_unreachable_error: Hôte injoignable, veuillez vérifier l'adresse IMAP, le port IMAP et réessayer. connection_timed_out_error: La connexion a expiré pour %{address}:%{port} connection_closed_error: Connexion fermée. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: 'ne doit pas commencer ou se terminer par des symboles, et ne doit pas comporter les caractères suivants : "< > / \ @".' custom_filters: @@ -104,6 +108,7 @@ fr: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ fr: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ fr: avg_resolution_time: Temps nécessaire pour résoudre une demande (en moyenne) resolution_count: Nombre de résolutions avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages entrants + outgoing_messages_count: Messages sortants + avg_first_response_time: Temps moyen pour une première réponse + avg_resolution_time: Temps nécessaire pour résoudre une demande (en moyenne) + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Fuseau horaire sla_csv: @@ -178,6 +193,7 @@ fr: rating: Note feedback: Commentaire recorded_at: Date d'enregistrement + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ fr: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ fr: copilot_message_required: Le message est obligatoire copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ fr: seconds: one: '%{count} seconde' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Système d''automatisation' crm: diff --git a/config/locales/he.yml b/config/locales/he.yml index acede34d6..c80946ce1 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -28,8 +28,7 @@ he: invalid_email: 'נא הכנס כתובת דוא"ל תקינה' authentication_failed: 'האימות נכשל. אנא בדוק את פרטי ההתחברות שלך ונסה שוב.' messages: - reset_password_success: וואו! הבקשה לאיפוס סיסמה בוצעה בהצלחה. בדוק את תיבת הדואר שלך להוראות. - reset_password_failure: אוי! לא מצאנו משתמש עם כתובת הדוא"ל שצוינה. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: חשבון זה משתמש באימות SAML. איפוס סיסמה אינו זמין. אנא צור קשר עם המנהל שלך. login_saml_user: חשבון זה משתמש באימות SAML. אנא התחבר דרך ספק SAML של הארגון שלך. saml_not_available: אימות SAML אינו זמין בהתקנה זו. @@ -95,6 +94,11 @@ he: host_unreachable_error: מארח לא נגיש, אנא בדוק את כתובת ה-IMAP, יציאת ה-IMAP ונסה שוב. connection_timed_out_error: חיבור פג זמן עבור %{address}:%{port} connection_closed_error: החיבור נסגר. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: לא יכול להתחיל או להסתיים בסמלים, וזה לא צריך להכיל תווים < > / \ @ custom_filters: @@ -104,6 +108,7 @@ he: invalid_query_operator: אופרטור שאילתה חייב להיות "AND" או "OR". invalid_value: ערך לא תקין. הערכים שסופקו עבור %{attribute_name} אינם תקינים custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: המפתח שסופק אינו מותר מכיוון שהוא עלול להתנגש עם מאפיינים ברירת מחדל. mfa: already_enabled: MFA כבר מופעל @@ -120,6 +125,8 @@ he: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA הופעל בהצלחה @@ -156,6 +163,14 @@ he: avg_resolution_time: זמן פתרון ממוצע resolution_count: ספירת פתרונות avg_customer_waiting_time: זמן המתנה ממוצע של לקוח + conversation_csv: + conversations_count: שיחות + incoming_messages_count: הודעות נכנסות + outgoing_messages_count: הודעות יוצאות + avg_first_response_time: זמן תגובה ראשון ממוצע + avg_resolution_time: זמן פתרון ממוצע + resolution_count: Resolution count + avg_customer_waiting_time: זמן המתנה ממוצע של לקוח conversation_traffic_csv: timezone: אזור זמן sla_csv: @@ -178,6 +193,7 @@ he: rating: דירוג feedback: הערת משוב recorded_at: תאריך הקלטה + review_notes: Review Notes notifications: notification_title: conversation_creation: 'שיחה (#%{display_id}) נוצרה ב-%{inbox_name}' @@ -205,7 +221,11 @@ he: activity: captain: resolved: 'השיחה סומנה כפתורה על ידי %{user_name} עקב חוסר פעילות' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'השיחה סומנה כפתוחה על ידי %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'השיחה סומנה כפתוחה על ידי המערכת עקב שגיאה בבוט הסוכן.' status: @@ -320,6 +340,9 @@ he: copilot_message_required: הודעה נדרשת copilot_error: 'אנא חבר עוזר לתיבת דואר נכנס זו כדי להשתמש ב-Copilot' copilot_limit: 'נגמרו לך זיכויי Copilot. אתה יכול לקנות זיכויים נוספים מסעיף החיובים.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'משתמש בכלי %{function_name}' completed_tool_call: 'הושלם קריאת כלי %{function_name}' @@ -413,6 +436,9 @@ he: two: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'מערכת אוטומציה' crm: diff --git a/config/locales/hi.yml b/config/locales/hi.yml index 662297605..6f5b67bb6 100644 --- a/config/locales/hi.yml +++ b/config/locales/hi.yml @@ -28,8 +28,7 @@ hi: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ hi: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ hi: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA पहले से ही सक्षम है @@ -120,6 +125,8 @@ hi: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ hi: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ hi: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ hi: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ hi: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ hi: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/hr.yml b/config/locales/hr.yml index adb10e198..3eeccbbc1 100644 --- a/config/locales/hr.yml +++ b/config/locales/hr.yml @@ -28,8 +28,7 @@ hr: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ hr: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ hr: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ hr: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ hr: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ hr: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ hr: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ hr: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -409,6 +432,9 @@ hr: one: '%{count} second' few: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/hu.yml b/config/locales/hu.yml index b1563a377..7b0ffab14 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -28,8 +28,7 @@ hu: invalid_email: 'Kérjük helyes e-mailcímet adj meg' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Mi?! A jelszóvisszaállítási kérésed sikeres volt. Nézd meg az e-mailed a részletekért. - reset_password_failure: Jajj ne! Nem találtunk felhasználót ezzel az e-mailcímmel. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ hu: host_unreachable_error: A host nem érhető el, kérlek ellenőrizd az IMAP címet és portot, majd próbáld újra. connection_timed_out_error: A kapcsolódás timeoutolt a %{address}:%{port}-n connection_closed_error: Kapcsolódás bezárva. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: nem kezdődhet vagy végződhet szimbólummal, és nem tartalmazhat < > / \ @ karaktereket. custom_filters: @@ -104,6 +108,7 @@ hu: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ hu: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ hu: avg_resolution_time: Avg resolution time resolution_count: Megoldások száma avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Beszélgetések + incoming_messages_count: Beérkező üznetek + outgoing_messages_count: Kimenő üzenetek + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Időzóna sla_csv: @@ -178,6 +193,7 @@ hu: rating: Értékelés feedback: Visszajelző komment recorded_at: Felvétel időpontja + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ hu: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ hu: copilot_message_required: Üzenet kötelező copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ hu: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/hy.yml b/config/locales/hy.yml index d41117ca8..547c4a808 100644 --- a/config/locales/hy.yml +++ b/config/locales/hy.yml @@ -28,8 +28,7 @@ hy: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ hy: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ hy: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ hy: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ hy: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ hy: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ hy: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ hy: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ hy: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/id.yml b/config/locales/id.yml index b5bf69bf2..cb343a0ee 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -28,8 +28,7 @@ id: invalid_email: 'Harap masukkan alamat email yang valid' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Permintaan pengaturan ulang kata sandi berhasil. Periksa email Anda untuk mendapatkan petunjuk. - reset_password_failure: Aduh! Kami tidak dapat menemukan pengguna dengan email yang dimasukkan. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ id: host_unreachable_error: Host tidak dapat dijangkau, Harap periksa alamat IMAP, port IMAP, dan coba lagi. connection_timed_out_error: Waktu koneksi habis untuk %{address}:%{port} connection_closed_error: Koneksi terputus. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: tidak boleh dimulai atau diakhiri dengan simbol, dan tidak boleh memiliki karakter < > / \ @. custom_filters: @@ -104,6 +108,7 @@ id: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ id: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ id: avg_resolution_time: Avg resolution time resolution_count: Jumlah Terselesaikan avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Percakapan + incoming_messages_count: Pesan Masuk + outgoing_messages_count: Pesan Keluar + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Zona Waktu sla_csv: @@ -178,6 +193,7 @@ id: rating: Peringkat feedback: Komentar Umpan Balik recorded_at: Tanggal rekaman + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ id: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ id: copilot_message_required: Pesan wajib diisi copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ id: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/is.yml b/config/locales/is.yml index faf4d1c63..2049928ae 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -28,8 +28,7 @@ is: invalid_email: 'Vinsamlegast skrifaðu gilt netfang' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Beiðni um endurstillingu lykilorðs tókst. Skoðaðu póstinn þinn til að fá leiðbeiningar. - reset_password_failure: Uh ó! Við fundum engan notanda með tilgreint netfang. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ is: host_unreachable_error: Ekki er hægt að ná til hýsingaraðila. Athugaðu IMAP vistfangið, IMAP tengið og reyndu aftur. connection_timed_out_error: Tenging rann út fyrir %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: ætti ekki að byrja eða enda á táknum, og það ætti ekki að hafa < > / \ @ táknin. custom_filters: @@ -104,6 +108,7 @@ is: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ is: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ is: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Samtöl + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ is: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ is: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ is: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ is: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/it.yml b/config/locales/it.yml index e6cc80c75..1e22d43ce 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -28,8 +28,7 @@ it: invalid_email: 'Inserisci un indirizzo email valido' authentication_failed: 'Autenticazione fallita. Verifica le credenziali e riprova.' messages: - reset_password_success: Wooh! Richiesta di reimpostazione della password riuscita. Controlla la tua mail per le istruzioni. - reset_password_failure: Oh oh! Non siamo riusciti a trovare alcun utente con l'email specificata. + reset_password: La richiesta di reimpostazione della password è riuscita. Una email con le istruzioni verrà inviata alla tua email se presente nel sistema. reset_password_saml_user: Questo account utilizza autenticazione SAML. Non è possibile resettare la password. Contatta il tuo amministratore. login_saml_user: Questo account utilizza autenticazione SAML. Effettua il login dal portale SAML della tua organizzazione. saml_not_available: Autenticazione SAML non disponibile in questa installazione. @@ -95,6 +94,11 @@ it: host_unreachable_error: Host irraggiungibile, Controlla l'indirizzo IMAP, la porta IMAP e riprova. connection_timed_out_error: Connessione scaduta per %{address}:%{port} connection_closed_error: Connessione chiusa. + smtp: + authentication_error: Autenticazione SMTP non riuscita. Verifica le tue credenziali di accesso. + connection_error: Impossibile connettersi al server SMTP. Controlla l'indirizzo e la porta del server. + ssl_error: Errore SSL/TLS. Verifica le impostazioni di crittografia. + smtp_error: Errore del server SMTP. Controlla la configurazione e riprova. validations: name: non dovrebbe iniziare o terminare con simboli, e non dovrebbe avere i caratteri < > / \ @ custom_filters: @@ -104,6 +108,7 @@ it: invalid_query_operator: L'operatore della query deve essere "E" o "O". invalid_value: Valore non valido. I valori forniti per %{attribute_name} non sono validi custom_attribute_definition: + attribute_key_format: deve contenere solo lettere, numeri, underscore, trattini e punti key_conflict: La chiave fornita non è consentita in quanto potrebbe entrare in conflitto con gli attributi predefiniti. mfa: already_enabled: MFA già attiva @@ -120,6 +125,8 @@ it: plan_not_eligible: Le ricariche sono disponibili solo per i piani a pagamento. Si prega di aggiornare il piano prima. stripe_customer_not_configured: Cliente Stripe non configurato no_payment_method: Nessun metodo di pagamento trovato. Aggiungi un metodo di pagamento prima di effettuare un acquisto. + reports: + date_range_too_long: L'intervallo di date non può superare i 6 mesi profile: mfa: enabled: MFA attivata con successo @@ -156,6 +163,14 @@ it: avg_resolution_time: Tempo medio di risoluzione resolution_count: Conteggio risoluzioni avg_customer_waiting_time: Tempo medio di attesa cliente + conversation_csv: + conversations_count: Conversazioni + incoming_messages_count: Messaggi in arrivo + outgoing_messages_count: Messaggi in uscita + avg_first_response_time: Tempo medio di prima risposta + avg_resolution_time: Tempo medio di risoluzione + resolution_count: Conteggio risoluzioni + avg_customer_waiting_time: Tempo medio di attesa cliente conversation_traffic_csv: timezone: Fuso Orario sla_csv: @@ -178,6 +193,7 @@ it: rating: Valutazione feedback: Commento di Feedback recorded_at: Data di registrazione + review_notes: Note Revisione notifications: notification_title: conversation_creation: 'Una conversazione (#%{display_id}) è stata creata in %{inbox_name}' @@ -205,7 +221,11 @@ it: activity: captain: resolved: 'La conversazione è stata segnata risolta da %{user_name} per inattività' + resolved_with_reason: 'La conversazione è stata risolta da %{user_name} (%{reason})' + resolved_by_tool: 'La conversazione è stata risolta da %{user_name}: %{reason}' open: 'La conversazione è stata riaperta da %{user_name}' + open_with_reason: 'La conversazione è stata aperta da %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversazione aperta automaticamente dopo l’intervento di un operatore' agent_bot: error_moved_to_open: 'La conversazione è stata riaperta dal sistema a causa di un errore con il Bot Agente.' status: @@ -320,6 +340,9 @@ it: copilot_message_required: Messaggio richiesto copilot_error: 'Connetti un assistente a questa Inbox per usare Copilot' copilot_limit: 'Hai terminato i crediti Copilot. Puoi acquistare altri crediti dalla sezione fatturazione.' + upgrade: 'Aggiorna il piano per attivare Captain AI' + disabled: 'Captain AI è disattivato per questo account.' + api_key_missing: 'La chiave API di Captain AI non è configurata.' copilot: using_tool: 'Utilizzando tool %{function_name}' completed_tool_call: 'Tool %{function_name} utilizzato' @@ -405,6 +428,9 @@ it: seconds: one: '%{count} secondo' other: '%{count} secondi' + auto_assignment: + default_policy_name: 'Policy Predefinita' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ja.yml b/config/locales/ja.yml index ebbea91ef..54b5c3666 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -28,8 +28,7 @@ ja: invalid_email: '正しいメールアドレスを入力してください' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: やりましたね! パスワードのリセットリクエストが成功しました。手順についてはメールを確認してください。 - reset_password_failure: メールアドレスが見つかりませんでした。 + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ja: host_unreachable_error: ホストに接続できません。IMAPアドレス、ポートを確認の上、再度お試しください。 connection_timed_out_error: '%{address}:%{port} への接続がタイムアウトしました' connection_closed_error: 接続が閉じられました。 + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: 記号で開始または終了しないでください。< > / \ @ を使用しないでください。 custom_filters: @@ -104,6 +108,7 @@ ja: invalid_query_operator: クエリ演算子は "AND" または "OR" でなければなりません。 invalid_value: 無効な値です。%{attribute_name} に提供された値は無効です。 custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ja: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ja: avg_resolution_time: 解決までの平均時間 resolution_count: 処理件数 avg_customer_waiting_time: お客様の平均待ち時間 + conversation_csv: + conversations_count: 会話データ + incoming_messages_count: 受信メッセージ + outgoing_messages_count: 送信メッセージ + avg_first_response_time: 初回応答の平均時間 + avg_resolution_time: 解決までの平均時間 + resolution_count: Resolution count + avg_customer_waiting_time: お客様の平均待ち時間 conversation_traffic_csv: timezone: タイムゾーン sla_csv: @@ -178,6 +193,7 @@ ja: rating: 評価 feedback: フィードバックコメント recorded_at: 記録日 + review_notes: Review Notes notifications: notification_title: conversation_creation: '会話 (#%{display_id}) が %{inbox_name} で作成されました' @@ -205,7 +221,11 @@ ja: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ja: copilot_message_required: メッセージは必須です copilot_error: 'この受信トレイにアシスタントを接続してCopilotを使用してください' copilot_limit: 'Copilot残高がありません。課金セクションからクレジットを追加購入することができます。' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ ja: other: '%{count} 分' seconds: other: '%{count} 秒' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ka.yml b/config/locales/ka.yml index 2f3047807..acb9897ee 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -28,8 +28,7 @@ ka: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ka: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ka: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ka: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ka: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ka: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ka: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ka: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ka: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 90bd992ab..8ed7a66ab 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -28,8 +28,7 @@ ko: invalid_email: '올바른 전자 메일 주소를 입력하십시오.' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -69,7 +68,7 @@ ko: domain: invalid: must be a valid domain name search: - query_missing: Specify search string with parameter q + query_missing: 매개변수 q를 사용하여 검색 문자열을 지정하세요 messages: search: time_range_limit_exceeded: 'Search is limited to the last %{days} days' @@ -95,6 +94,11 @@ ko: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ko: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ko: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ko: avg_resolution_time: Avg resolution time resolution_count: 해결 수 avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: 대화 + incoming_messages_count: 수신 메시지 + outgoing_messages_count: 발신 메시지 + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ko: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ko: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ko: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ ko: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/lt.yml b/config/locales/lt.yml index 5d89b1a13..b5c31fdf2 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -28,8 +28,7 @@ lt: invalid_email: 'Prašau įveskite teisingą el. pašto adresą' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Kietai! Slaptažodžio nustatymo iš naujo užklausa įvykdyta. Instrukcijų ieškokite savo pašte. - reset_password_failure: Oho! Nepavyko rasti vartotojo su nurodytu el. pašto adresu. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ lt: host_unreachable_error: Kompiuteris nepasiekiamas. Patikrinkite IMAP adresą, IMAP prievadą ir bandykite dar kartą. connection_timed_out_error: Baigėsi %{address}:%{port} sujungimo laukimo laikas connection_closed_error: Sujungimas uždarytas. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: neturėtų prasidėti ar baigtis simboliais ir jame neturėtų būti simbolių < > / \ @. custom_filters: @@ -104,6 +108,7 @@ lt: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ lt: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ lt: avg_resolution_time: Avg resolution time resolution_count: Sprendimų skaičius avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Pokalbiai + incoming_messages_count: Gaunami pranešimai + outgoing_messages_count: Siunčiami pranešimai + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Laiko zona sla_csv: @@ -178,6 +193,7 @@ lt: rating: Reitingas feedback: Atsiliepimų komentaras recorded_at: Įrašo data + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ lt: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ lt: copilot_message_required: Yra reikalingas pranešimas copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ lt: few: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/lv.yml b/config/locales/lv.yml index f235045c6..60386f955 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -28,8 +28,7 @@ lv: invalid_email: 'Lūdzu, ievadiet derīgu e-pasta adresi' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Urā! Paroles atiestatīšanas pieprasījums ir veiksmīgs. Pārbaudiet savu e-pastu, lai iegūtu norādījumus. - reset_password_failure: Ak, vai! Mēs nevarējām atrast nevienu lietotāju ar norādīto e -pastu. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ lv: host_unreachable_error: Resursdators nav pieejams. Lūdzu, pārbaudiet IMAP adresi, IMAP portu un mēģiniet vēlreiz. connection_timed_out_error: Savienojumam %{address}:%{port} iestājās taimauts connection_closed_error: Savienojums slēgts. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: nevajadzētu sākties vai beigties ar simboliem, un nevajadzētu saturēt <> / \ @ rakstzīmes. custom_filters: @@ -104,6 +108,7 @@ lv: invalid_query_operator: Vaicājuma operatoram ir jābūt "UN" vai "VAI". invalid_value: Nederīga vērtība. Norādītās vērtības priekš %{attribute_name} nav derīgas custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: Norādītā atslēga nav atļauta, jo tā var būt pretrunā ar noklusējuma atribūtiem. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ lv: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ lv: avg_resolution_time: Vidējais atrisināšanas laiks resolution_count: Atrisināšanas Skaits avg_customer_waiting_time: Vidējais klientu gaidīšanas laiks + conversation_csv: + conversations_count: Sarunas + incoming_messages_count: Saņemtās ziņas + outgoing_messages_count: Nosūtītās ziņas + avg_first_response_time: Vidējais pirmās reakcijas laiks + avg_resolution_time: Vidējais atrisināšanas laiks + resolution_count: Resolution count + avg_customer_waiting_time: Vidējais klientu gaidīšanas laiks conversation_traffic_csv: timezone: Laika zona sla_csv: @@ -178,6 +193,7 @@ lv: rating: Vērtējums feedback: Atsauksmes Komentārs recorded_at: Reģistrētais datums + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Saruna (#%{display_id}) ir izveidota mapē %{inbox_name}' @@ -205,7 +221,11 @@ lv: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ lv: copilot_message_required: Nepieciešams ziņojums copilot_error: 'Lai izmantotu Copilot, lūdzu, pievienojiet šai iesūtnei palīgu' copilot_limit: 'Jums ir beigušies Copilot kredīti. Vairāk kredītu varat iegādāties norēķinu sadaļā.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -409,6 +432,9 @@ lv: zero: '%{count} sekundes' one: '%{count} sekunde' other: '%{count} sekundes' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automatizācijas Sistēma' crm: diff --git a/config/locales/ml.yml b/config/locales/ml.yml index 4aadc4432..ed79a1c0b 100644 --- a/config/locales/ml.yml +++ b/config/locales/ml.yml @@ -28,8 +28,7 @@ ml: invalid_email: 'ദയവായി സാധുവായ ഒരു ഇമെയിൽ വിലാസം നൽകുക' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! പാസ്‌വേഡ് പുനസജ്ജീകരണത്തിനുള്ള അഭ്യർത്ഥന വിജയകരമാണ്. നിർദ്ദേശങ്ങൾക്കായി നിങ്ങളുടെ മെയിൽ പരിശോധിക്കുക. - reset_password_failure: ക്ഷമിക്കണം! നിർദ്ദിഷ്ട ഇമെയിൽ ഉള്ള ഒരു ഉപയോക്താവിനെയും ഞങ്ങൾക്ക് കണ്ടെത്താൻ കഴിഞ്ഞില്ല. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ml: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ml: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ml: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ml: avg_resolution_time: Avg resolution time resolution_count: മിഴിവ് എണ്ണം avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: സംഭാഷണങ്ങൾ + incoming_messages_count: ഇൻ‌കമിംഗ് സന്ദേശങ്ങൾ‌ + outgoing_messages_count: ഔട്ട് ഗോയിങ് സന്ദേശങ്ങൾ‌ + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ml: rating: റേറ്റിംഗ് feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ml: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ml: copilot_message_required: സന്ദേശം ആവശ്യമാണ് copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ml: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 5be805e3b..920165dac 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -28,8 +28,7 @@ ms: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ms: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ms: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ms: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ms: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ms: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ms: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ms: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ ms: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ne.yml b/config/locales/ne.yml index ee5a55ce2..0fe5af12c 100644 --- a/config/locales/ne.yml +++ b/config/locales/ne.yml @@ -28,8 +28,7 @@ ne: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ne: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ne: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ne: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ne: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ne: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ne: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ne: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ne: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/nl.yml b/config/locales/nl.yml index bb8f1beb0..7db7659a6 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -28,8 +28,7 @@ nl: invalid_email: 'Voer een geldig e-mailadres in' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Verzoek om wachtwoord te resetten is gelukt. Controleer je e-mail voor instructies. - reset_password_failure: Oh ho! We konden geen gebruiker vinden met het opgegeven e-mailadres. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ nl: host_unreachable_error: Host onbereikbaar, controleer het IMAP-adres, IMAP-poort en probeer het opnieuw. connection_timed_out_error: Verbinding time-out voor %{address}:%{port} connection_closed_error: Verbinding verbroken. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: mag niet beginnen of eindigen met symbolen, en mag geen < > / \ @ karakters hebben. custom_filters: @@ -104,6 +108,7 @@ nl: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ nl: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ nl: avg_resolution_time: Avg resolution time resolution_count: Aantal Resoluties avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Gesprekken + incoming_messages_count: Inkomende berichten + outgoing_messages_count: Uitgaande berichten + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ nl: rating: Beoordeling feedback: Feedback Opmerking recorded_at: Datum opgenomen + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ nl: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ nl: copilot_message_required: Bericht is vereist copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ nl: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/no.yml b/config/locales/no.yml index fa1824a96..b6b12589c 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -28,8 +28,7 @@ invalid_email: 'Vennligst skriv inn en gyldig e-postadresse' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Forespørsel om tilbakestilling av passord er vellykket. Sjekk innboksen for instruksjoner. - reset_password_failure: Uff da! Vi fant ingen bruker med den angitte eposten. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ host_unreachable_error: Verten er ikke tilgjengelig. Vennligst kontroller IMAP-adressen, IMAP-porten og prøv på nytt. connection_timed_out_error: Tilkobling ble tidsavbrutt for %{address}:%{port} connection_closed_error: Forbindelsen ble lukket. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: ikke kan starte eller slutte med symboler, og den kan ikke ha < > / \ @ tegn. custom_filters: @@ -104,6 +108,7 @@ invalid_query_operator: Spørrings-operatør må være enten "AND" eller "OR". invalid_value: Ugyldig verdi. Verdiene angitt for %{attribute_name} er ugyldige custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ avg_resolution_time: Gjennomsnittstid for løsning resolution_count: Antall løsninger avg_customer_waiting_time: Gjennomsnittlig ventetid for kunde + conversation_csv: + conversations_count: Samtaler + incoming_messages_count: Innkommende meldinger + outgoing_messages_count: Utgående meldinger + avg_first_response_time: Første svartid + avg_resolution_time: Gjennomsnittstid for løsning + resolution_count: Resolution count + avg_customer_waiting_time: Kunden i snitt venter conversation_traffic_csv: timezone: Tidssone sla_csv: @@ -178,6 +193,7 @@ rating: Vurdering feedback: Tilbakemelding recorded_at: Registrert dato + review_notes: Review Notes notifications: notification_title: conversation_creation: 'En samtale (#%{display_id}) har blitt opprettet i %{inbox_name}' @@ -205,7 +221,11 @@ activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/pl.yml b/config/locales/pl.yml index a39dfdbbc..bb7da3c9d 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -28,8 +28,7 @@ pl: invalid_email: 'Wprowadź poprawny adres e-mail' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Prośba o zresetowanie hasła zakończona pomyślnie. Sprawdź swoją pocztę, aby uzyskać instrukcje. - reset_password_failure: Ups! Nie mogliśmy znaleźć żadnego użytkownika z podanym adresem e-mail. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ pl: host_unreachable_error: Host nieosiągalny, sprawdź adres IMAP, port IMAP i spróbuj ponownie. connection_timed_out_error: Limit czasu połączenia dla %{address}:%{port} connection_closed_error: Połączenie zakończone. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: nie powinno zaczynać się ani kończyć symbolami i nie powinno zawierać znaków < > / \ @. custom_filters: @@ -104,6 +108,7 @@ pl: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ pl: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ pl: avg_resolution_time: Avg resolution time resolution_count: Liczba rozwiązań avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Rozmowy + incoming_messages_count: Wiadomości przychodzące + outgoing_messages_count: Wiadomości wychodzące + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Strefa czasowa sla_csv: @@ -178,6 +193,7 @@ pl: rating: Ocena feedback: Komentarz zwrotny recorded_at: Data nagrania + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ pl: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ pl: copilot_message_required: Wiadomość jest wymagana copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ pl: few: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/pt.yml b/config/locales/pt.yml index 194a1e8f1..7b4edba25 100644 --- a/config/locales/pt.yml +++ b/config/locales/pt.yml @@ -28,8 +28,7 @@ pt: invalid_email: 'Por favor, insira um endereço de e-mail válido' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Legal! Pedido de redefinição de senha bem sucedido. Verifique o seu e-mail para obter instruções. - reset_password_failure: Uh ho! Não conseguimos encontrar nenhum uutilizador com o e-mail especificado. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ pt: host_unreachable_error: Host inacessível. Por favor, verifique o endereço IMAP, porta IMAP e tente novamente. connection_timed_out_error: A ligação para %{address}:%{port} expirou connection_closed_error: Ligação encerrada. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: não deve iniciar ou terminar com símbolos, nem deve ter < > / \ @ caracteres. custom_filters: @@ -104,6 +108,7 @@ pt: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Valor inválido. Os valores fornecidos para %{attribute_name} são inválidos custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ pt: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Intervalo de datas não pode exceder 6 meses profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ pt: avg_resolution_time: Média de tempo de resolução resolution_count: Contagem de resolução avg_customer_waiting_time: Tempo médio de espera cliente + conversation_csv: + conversations_count: Conversas + incoming_messages_count: Mensagens recebidas + outgoing_messages_count: Mensagens enviadas + avg_first_response_time: Média de tempo da primeira resposta + avg_resolution_time: Média de tempo de resolução + resolution_count: Resolution count + avg_customer_waiting_time: Tempo médio de espera cliente conversation_traffic_csv: timezone: Fuso Horário sla_csv: @@ -178,6 +193,7 @@ pt: rating: Avaliar feedback: Comentário de Feedback recorded_at: Data de gravação + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversa (#%{display_id}) foi criada em %{inbox_name}' @@ -205,7 +221,11 @@ pt: activity: captain: resolved: 'A conversa foi marcada como resolvida por %{user_name} devido à inatividade' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'A conversa foi marcada como aberta por %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ pt: copilot_message_required: A mensagem é obrigatória copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'A usar a ferramenta %{function_name}' completed_tool_call: 'Chamada da ferramenta %{function_name} concluída' @@ -405,6 +428,9 @@ pt: seconds: one: '%{count} segundo' other: '%{count} segundos' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Sistema de Automação' crm: diff --git a/config/locales/pt_BR.yml b/config/locales/pt_BR.yml index cd7d84f8f..d31dd0422 100644 --- a/config/locales/pt_BR.yml +++ b/config/locales/pt_BR.yml @@ -28,8 +28,7 @@ pt_BR: invalid_email: 'Por favor, insira um endereço de e-mail válido' authentication_failed: 'Falha na autenticação. Por favor, verifique suas credenciais e tente novamente.' messages: - reset_password_success: Legal! A solicitação de alteração de senha foi bem sucedida. Verifique seu e-mail para obter instruções. - reset_password_failure: Uh ho! Não conseguimos encontrar nenhum usuário com o e-mail especificado. + reset_password: A solicitação de redefinição de senha foi realizada com sucesso. Um e-mail com instruções será enviado para o seu endereço de e-mail, caso ele exista em nosso sistema. reset_password_saml_user: Esta conta usa autenticação SAML. A redefinição de senha não está disponível. Por favor, contate o administrador. login_saml_user: Esta conta usa autenticação SAML. Por favor, faça login através do provedor SAML da sua organização. saml_not_available: A autenticação SAML não está disponível nesta instalação. @@ -67,9 +66,9 @@ pt_BR: invalid: deve estar no formato e164 companies: domain: - invalid: must be a valid domain name + invalid: deve ser um nome de domínio válido search: - query_missing: Especifique a ‘string’ de busca com o parâmetro q + query_missing: Especifique a string de busca com o parâmetro q messages: search: time_range_limit_exceeded: 'A pesquisa está limitada aos últimos %{days} dias' @@ -84,7 +83,7 @@ pt_BR: token_exchange_failed: 'Falha ao trocar o código por um token de acesso. Por favor, tente novamente.' invalid_token_permissions: 'O token de acesso não tem as permissões necessárias para o WhatsApp.' phone_info_fetch_failed: 'Falha ao obter a informação do número de telefone. Por favor, tente novamente.' - phone_number_already_exists: 'Channel already exists for this phone number: %{phone_number}, please contact support if the error persists' + phone_number_already_exists: 'Já existe um canal para este número de telefone: %{phone_number}. Entre em contato com o suporte se o erro persistir' reauthorization: generic: 'Falha ao reautenticar o WhatsApp. Por favor, tente novamente.' not_supported: 'Reautenticação não é suportado por este tipo de canal WhatsApp.' @@ -95,6 +94,11 @@ pt_BR: host_unreachable_error: Servidor inacessível, por favor, verifique o endereço e a porta de IMAP e tente novamente. connection_timed_out_error: Tempo esgotado de conexão para %{address}:%{port} connection_closed_error: Conexão fechada. + smtp: + authentication_error: Autenticação SMTP falhou. Por favor, verifique suas credenciais de acesso. + connection_error: Não foi possível conectar ao servidor SMTP. Por favor, verifique o endereço do servidor e a porta. + ssl_error: Erro de SSL/TLS. Por favor, verifique suas configurações de criptografia. + smtp_error: Erro no servidor SMTP. Por favor, verifique sua configuração e tente novamente. validations: name: 'não deve iniciar ou terminar com símbolos e não deve ter os caracteres: < > / \ @.' custom_filters: @@ -104,6 +108,7 @@ pt_BR: invalid_query_operator: Operador de consulta deve ser "E" ou "OU". invalid_value: Valor inválido. Os valores fornecidos para %{attribute_name} são inválidos custom_attribute_definition: + attribute_key_format: deve conter apenas letras, números, sublinhados, hífens, e pontos key_conflict: A chave fornecida não é permitida pois pode entrar em conflito com os atributos padrão. mfa: already_enabled: MFA já está habilitado @@ -120,6 +125,8 @@ pt_BR: plan_not_eligible: As recargas estão disponíveis apenas para planos pagos. Por favor, faça o upgrade do seu plano primeiro. stripe_customer_not_configured: Cliente do Stripe não configurado no_payment_method: Nenhum método de pagamento encontrado. Por favor, adicione um método de pagamento antes de realizar uma compra. + reports: + date_range_too_long: O intervalo de datas não pode exceder 6 meses profile: mfa: enabled: MFA habilitado com sucesso @@ -156,6 +163,14 @@ pt_BR: avg_resolution_time: Tempo médio de resolução resolution_count: Contagem de Resolução avg_customer_waiting_time: Tempo médio de espera do cliente + conversation_csv: + conversations_count: Conversas + incoming_messages_count: Mensagens Recebidas + outgoing_messages_count: Mensagens enviadas + avg_first_response_time: Tempo médio de primeira resposta + avg_resolution_time: Tempo médio de resolução + resolution_count: Quantidade de resoluções + avg_customer_waiting_time: Tempo médio de espera do cliente conversation_traffic_csv: timezone: Fuso horário sla_csv: @@ -178,6 +193,7 @@ pt_BR: rating: Classificação feedback: Comentário de Feedback recorded_at: Data de gravação + review_notes: Notas de Avaliação notifications: notification_title: conversation_creation: '' @@ -205,9 +221,13 @@ pt_BR: activity: captain: resolved: 'A conversa foi marcada como resolvida por %{user_name} por inatividade' + resolved_with_reason: 'A conversa foi marcada como resolvida por %{user_name} (%{reason})' + resolved_by_tool: 'A conversa foi marcada como resolvida por %{user_name}: %{reason}' open: 'A conversa foi aberta por %{user_name}' + open_with_reason: 'A conversa foi marcada como aberta por %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'A conversa foi marcada como aberta automaticamente após a resposta de um agente' agent_bot: - error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' + error_moved_to_open: 'A conversa foi marcada como aberta pelo sistema devido a um erro com o robô de atendimento.' status: resolved: 'Conversa foi marcada como resolvida por %{user_name}' contact_resolved: 'A conversa foi resolvida por %{contact_name}' @@ -320,6 +340,9 @@ pt_BR: copilot_message_required: A mensagem é obrigatória copilot_error: 'Conecte com um assistente a esta caixa de entrada para usar Copilot' copilot_limit: 'Você está sem créditos de Copilot. Pode comprar mais créditos na seção de faturamento.' + upgrade: 'Atualize seu plano para habilitar o Capitão IA' + disabled: 'O Capitão IA está desativado para esta conta.' + api_key_missing: 'A chave de API do Capitão IA não está configurada.' copilot: using_tool: 'Usando a ferramenta %{function_name}' completed_tool_call: 'Uso da ferramenta %{function_name} concluída' @@ -333,20 +356,20 @@ pt_BR: pdf_upload_success: 'PDF enviado com sucesso com file_id: %{file_id}' pdf_processing_failed: 'Falha ao processar o documento PDF %{document_id}: %{error}' pdf_processing_success: 'Documento PDF processado com sucesso %{document_id}' - faq_generation_complete: 'FAQ generation complete. Total FAQs created: %{count}' + faq_generation_complete: 'Geração de FAQs concluída. Total de FAQs criadas: %{count}' using_paginated_faq: 'Usando geração de FAQ''s paginada para o documento %{document_id}' - using_standard_faq: 'Using standard FAQ generation for document %{document_id}' - response_creation_error: 'Error in creating response document: %{error}' + using_standard_faq: 'Usando geração padrão de FAQs para o documento %{document_id}' + response_creation_error: 'Erro ao criar o documento de resposta: %{error}' missing_openai_file_id: 'O documento deve ter openai_file_id para processamento paginado' openai_api_error: 'Erro da API OpenAI: %{error}' - starting_paginated_faq: 'Starting paginated FAQ generation (%{pages_per_chunk} pages per chunk)' + starting_paginated_faq: 'Iniciando a geração paginada de FAQs (%{pages_per_chunk} páginas por bloco)' stopping_faq_generation: 'Processamento interrompido. Motivo: %{reason}' paginated_faq_complete: 'Geração de paginação completa. Total de FAQs: %{total_faqs}, Páginas processadas: %{pages_processed}' processing_pages: 'Processando páginas %{start}-%{end} (iteração %{iteration})' - chunk_generated: 'Chunk generated %{chunk_faqs} FAQs. Total so far: %{total_faqs}' + chunk_generated: 'Bloco gerado com %{chunk_faqs} FAQs. Total até agora: %{total_faqs}' page_processing_error: 'Erro ao processar as páginas %{start}-%{end}: %{error}' custom_tool: - slug_generation_failed: 'Unable to generate unique slug after 5 attempts' + slug_generation_failed: 'Não foi possível gerar um slug único após 5 tentativas' public_portal: search: search_placeholder: Pesquisar por artigo por título ou corpo... @@ -405,6 +428,9 @@ pt_BR: seconds: one: '%{count} segundo' other: '%{count} segundos' + auto_assignment: + default_policy_name: 'Política Padrão' + policy_actor: 'Sistema de Automação via %{policy_name}' automation: system_name: 'Sistema de Automação' crm: diff --git a/config/locales/ro.yml b/config/locales/ro.yml index c7551301f..96211bd0a 100644 --- a/config/locales/ro.yml +++ b/config/locales/ro.yml @@ -28,8 +28,7 @@ ro: invalid_email: 'Vă rugăm să introduceți o adresă de e-mail validă' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Cererea de resetare a parolei a reusit. Verifica emailul pentru instructiuni. - reset_password_failure: Nu am putut găsi niciun utilizator cu e-mailul specificat. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ro: host_unreachable_error: Gazdă imposibil de găsit, Verificați adresa IMAP, portul IMAP și încercați din nou. connection_timed_out_error: Conexiunea a expirat pentru %{address}:%{port} connection_closed_error: Conexiune închisă. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: nu ar trebui să înceapă sau să se termine cu simboluri și nu ar trebui să aibă < > / \ @ caractere. custom_filters: @@ -104,6 +108,7 @@ ro: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ro: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ro: avg_resolution_time: Avg resolution time resolution_count: Număr de rezoluții avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversații + incoming_messages_count: Mesaje primite + outgoing_messages_count: Mesaje trimise + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Fus orar sla_csv: @@ -178,6 +193,7 @@ ro: rating: Evaluare feedback: Feedback comentariu recorded_at: Data înregistrată + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ro: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ro: copilot_message_required: Este necesar un mesaj copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -409,6 +432,9 @@ ro: one: '%{count} second' few: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 57dcab79b..3925ba1d9 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -28,8 +28,7 @@ ru: invalid_email: 'Пожалуйста, введите действительный адрес электронной почты' authentication_failed: 'Ошибка аутентификации. Пожалуйста, проверьте ваши учетные данные и повторите попытку.' messages: - reset_password_success: Круто! Запрос на сброс пароля удался. Проверьте почту для получения инструкций. - reset_password_failure: Ой! Мы не смогли найти пользователя с указанным email. + reset_password: Запрос на сброс пароля удался. Если адрес почты существует, то на него будет отправлено письмо с инструкциями. reset_password_saml_user: Эта учетная запись использует SAML-аутентификацию. Сброс пароля недоступен. Пожалуйста, обратитесь к администратору. login_saml_user: Эта учетная запись использует SAML аутентификацию. Пожалуйста, войдите через SAML провайдера вашей организации. saml_not_available: SAML аутентификация не доступна в этой установке. @@ -49,10 +48,10 @@ ru: assignment_policy: not_found: Политика назначения не найдена attachments: - invalid: Invalid attachment + invalid: Недопустимое вложение saml: feature_not_enabled: Функция SAML не включена для этой учетной записи - sso_not_enabled: SAML SSO is not enabled for this installation + sso_not_enabled: SSO SAML не включен для этой установки data_import: data_type: invalid: Недопустимый тип данных @@ -72,7 +71,7 @@ ru: query_missing: Specify search string with parameter q messages: search: - time_range_limit_exceeded: 'Search is limited to the last %{days} days' + time_range_limit_exceeded: 'Поиск ограничен последними %{days} днями' categories: locale: unique: Должны быть уникальными в категории и портале @@ -95,6 +94,11 @@ ru: host_unreachable_error: Хост недоступен. Проверьте адрес IMAP, порт IMAP и повторите попытку. connection_timed_out_error: Время ожидания соединения для %{address}:%{port} истекло connection_closed_error: Соединение закрыто. + smtp: + authentication_error: Ошибка аутентификации SMTP. Пожалуйста, проверьте ваши учетные данные. + connection_error: Не удалось подключиться к SMTP серверу. Пожалуйста, проверьте адрес сервера и порт. + ssl_error: Ошибка SSL/TLS. Проверьте настройки шифрования. + smtp_error: Ошибка SMTP-сервера. Проверьте настройки и повторите попытку. validations: name: Не должен начинаться или заканчиваться символами, и у него Не должно быть < > / \ @ символов. custom_filters: @@ -104,6 +108,7 @@ ru: invalid_query_operator: Оператор запроса должен быть "AND" или "OR". invalid_value: Недопустимое значение. Значения, предоставленные для %{attribute_name} являются недопустимыми custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: Предоставленный ключ не разрешён, так как он может конфликтовать со стандартными атрибутами. mfa: already_enabled: MFA уже включен @@ -114,12 +119,14 @@ ru: invalid_credentials: Неверные учетные данные или проверочный код feature_unavailable: Функция MFA недоступна. Пожалуйста, настройте ключи шифрования. topup: - credits_required: Credits amount is required - invalid_credits: Invalid credits amount - invalid_option: Invalid topup option - plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. - stripe_customer_not_configured: Stripe customer not configured - no_payment_method: No payment methods found. Please add a payment method before making a purchase. + credits_required: Необходимо ввести сумму кредитов + invalid_credits: Неверная сумма кредитов + invalid_option: Некорректный параметр пополнения + plan_not_eligible: Пополнение доступно только для платных планов. Пожалуйста, сначала обновите свой тарифный план. + stripe_customer_not_configured: Stripe клиент не настроен + no_payment_method: Способы оплаты не найдены. Пожалуйста, добавьте способ оплаты перед совершением покупки. + reports: + date_range_too_long: Диапазон дат не может превышать 6 месяцев profile: mfa: enabled: MFA успешно включен @@ -156,6 +163,14 @@ ru: avg_resolution_time: Среднее время завершения resolution_count: Количество завершенных avg_customer_waiting_time: Среднее время ожидания клиента + conversation_csv: + conversations_count: Диалоги + incoming_messages_count: Входящие сообщения + outgoing_messages_count: Исходящие сообщения + avg_first_response_time: Среднее время первого ответа + avg_resolution_time: Среднее время завершения + resolution_count: Количество завершенных + avg_customer_waiting_time: Среднее время ожидания клиента conversation_traffic_csv: timezone: Часовой пояс sla_csv: @@ -178,6 +193,7 @@ ru: rating: Оценка feedback: Комментарий к отзыву recorded_at: Дата записи + review_notes: Просмотреть заметки notifications: notification_title: conversation_creation: 'В %{inbox_name} создана беседа (#%{display_id})' @@ -195,8 +211,8 @@ ru: messages: instagram_story_content: '%{story_sender} упомянул Вас в истории: ' instagram_deleted_story_content: Эта история больше недоступна. - instagram_shared_story_content: 'Shared story' - instagram_shared_post_content: 'Shared post' + instagram_shared_story_content: 'Общая история' + instagram_shared_post_content: 'Общая запись' deleted: Это сообщение было удалено whatsapp: list_button_label: 'Выберите элемент' @@ -205,7 +221,11 @@ ru: activity: captain: resolved: 'Диалог был решен %{user_name} из-за бездействия' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Диалог был завершен %{user_name} с причиной: %{reason}' open: 'Диалог был открыт %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Разговор был открыт автоматически после ответа агента' agent_bot: error_moved_to_open: 'Диалог был открыт системой из-за ошибки бота агента.' status: @@ -320,6 +340,9 @@ ru: copilot_message_required: Необходимо ввести сообщение copilot_error: 'Пожалуйста, подключите ассистента к этому источнику входящих для использования Copilot' copilot_limit: 'У вас закончились кредиты для Copilot. Вы можете купить дополнительные кредиты в разделе биллинга.' + upgrade: 'Улучшите свой план, чтобы включить Captain AI' + disabled: 'Captain AI отключён для этого аккаунта.' + api_key_missing: 'API ключ Captain AI не настроен.' copilot: using_tool: 'Использование инструмента %{function_name}' completed_tool_call: 'Вызов инструмента %{function_name}' @@ -413,6 +436,9 @@ ru: few: '%{count} секунд' many: '%{count} секунд' other: '%{count} секунд' + auto_assignment: + default_policy_name: 'Политика по умолчанию' + policy_actor: 'Система автоматизации через %{policy_name}' automation: system_name: 'Система автоматизации' crm: diff --git a/config/locales/sh.yml b/config/locales/sh.yml index c796e3b1d..3740ed32a 100644 --- a/config/locales/sh.yml +++ b/config/locales/sh.yml @@ -28,8 +28,7 @@ sh: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sh: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ sh: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sh: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sh: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ sh: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ sh: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sh: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ sh: few: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 230d20bf5..cae37f298 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -28,8 +28,7 @@ sk: invalid_email: 'Prosím zadajte platnú e-mailovú adresu' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sk: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ sk: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sk: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sk: avg_resolution_time: Avg resolution time resolution_count: Počet vyriešených problémov avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Rozhovory + incoming_messages_count: Prichádzajúce správy + outgoing_messages_count: Odchádzajúce správy + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ sk: rating: Hodnotenia feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ sk: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sk: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ sk: few: '%{count} seconds' many: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/sl.yml b/config/locales/sl.yml index cf4d9efb9..bd9c8fb7b 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -28,8 +28,7 @@ sl: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Juhu! Zahteva za ponastavitev gesla je bila uspešna. Preverite svojo e-pošto za navodila. - reset_password_failure: O ne! Nismo mogli najti nobenega uporabnika z navedenim e-poštnim naslovom. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sl: host_unreachable_error: Gostitelj nedosegljiv. Preverite naslov IMAP, vrata IMAP in poskusite znova. connection_timed_out_error: Povezava je potekla za %{address}:%{port} connection_closed_error: Povezava zaprta. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: se ne sme začeti ali končati s simboli in ne sme vsebovati znakov < > / \ @. custom_filters: @@ -104,6 +108,7 @@ sl: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Neveljavna vrednost. Podane vrednosti za %{attribute_name} so neveljavne custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sl: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sl: avg_resolution_time: Povprečni čas razrešitve resolution_count: Število razrešitev avg_customer_waiting_time: Povprečni čakalni čas stranke + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Povprečni prvi odzivni čas + avg_resolution_time: Povprečni čas razrešitve + resolution_count: Resolution count + avg_customer_waiting_time: Povprečni čakalni čas stranke conversation_traffic_csv: timezone: Časovni pas sla_csv: @@ -178,6 +193,7 @@ sl: rating: Ocena feedback: Povratni komentar recorded_at: Zabeležen datum + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Pogovor (#%{display_id}) je bil ustvarjen v %{inbox_name}' @@ -205,7 +221,11 @@ sl: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sl: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ sl: two: '%{count} sekundi' few: '%{count} sekunde' other: '%{count} sekund' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/sq.yml b/config/locales/sq.yml index 6f80d6d5c..530a7c5cb 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -28,8 +28,7 @@ sq: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sq: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ sq: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sq: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sq: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ sq: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ sq: activity: captain: resolved: 'Biseda u shënua si e zgjidhur nga %{user_name} për shkak të mungesës së aktivitetit' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Biseda u shënua si e hapur nga %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sq: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Duke përdorur mjetin %{function_name}' completed_tool_call: 'Thirrja e mjetit %{function_name} u përfundua' @@ -405,6 +428,9 @@ sq: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Sistemi i Automatizimit' crm: diff --git a/config/locales/sr.yml b/config/locales/sr.yml index 93f829511..9669bc320 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -28,8 +28,7 @@ sr-Latn: invalid_email: 'Molim vas unesite ispravnu adresu e-pošte' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Opa! Zahtev za resetovanjem lozinke je uspešan. Proverite vašu e-poštu za uputstvo. - reset_password_failure: O ne! Nismo mogli da pronađemo nijednog korisnika sa navedenom e-poštom. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sr-Latn: host_unreachable_error: Domaćin je nedostupan, Molim vas proverite IMAP adresu, IMAP port i pokušajte ponovo. connection_timed_out_error: Vreme za povezivanje je isteklo za %{address}:%{port} connection_closed_error: Povezivanje je prekinuto. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: ne treba početi ili se završiti sa simbolima i ne treba da sadrži < > / \ @ karaktere. custom_filters: @@ -104,6 +108,7 @@ sr-Latn: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sr-Latn: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sr-Latn: avg_resolution_time: Avg resolution time resolution_count: Broj rešenih avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Razgovori + incoming_messages_count: Dolazne poruke + outgoing_messages_count: Odlazne poruke + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ sr-Latn: rating: Ocena feedback: Komentar povratne informacije recorded_at: Snimljen dana + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ sr-Latn: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sr-Latn: copilot_message_required: Poruka je obavezna copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -409,6 +432,9 @@ sr-Latn: one: '%{count} second' few: '%{count} seconds' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/sv.yml b/config/locales/sv.yml index 1e97d629f..b4f3ef70e 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -28,8 +28,7 @@ sv: invalid_email: 'Ange en giltig e-postadress' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Begäran om återställning av lösenord lyckades. Kontrollera din e-post för instruktioner. - reset_password_failure: Oj då! Vi kunde inte hitta någon användare med den angivna e-postadressen. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ sv: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ sv: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ sv: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ sv: avg_resolution_time: Avg resolution time resolution_count: Antal lösta avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Konversationer + incoming_messages_count: Inkommande meddelanden + outgoing_messages_count: Utgående meddelanden + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ sv: rating: Betyg feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ sv: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ sv: copilot_message_required: Meddelande måste fyllas i copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ sv: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ta.yml b/config/locales/ta.yml index 7dce234f2..8b2b96167 100644 --- a/config/locales/ta.yml +++ b/config/locales/ta.yml @@ -28,8 +28,7 @@ ta: invalid_email: 'சரியான ஈமெயில் முகவரியை பதிவிடவும்' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: வூட்! பாஸ்வேர்டை மீட்டமைப்பிற்கான கோரிக்கை வெற்றிகரமாக அனுப்பப்பட்டுள்ளது. வழிமுறைகளுக்கு உங்கள் ஈ-மெயிலைப் பார்க்கவும். - reset_password_failure: மன்னிக்கவும்! குறிப்பிட்ட ஈ-மெயிலுடன் எந்த பயனரையும் எங்களால் கண்டுபிடிக்க முடியவில்லை. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ta: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ta: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ta: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ta: avg_resolution_time: Avg resolution time resolution_count: தீர்மான எண்ணிக்கை avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: உரையாடல்கள் + incoming_messages_count: உள்வரும் செய்திகள் + outgoing_messages_count: வெளிச்செல்லும் செய்திகள் + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ta: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ta: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ta: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ta: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/th.yml b/config/locales/th.yml index c9d491fe4..2b2f3ebf6 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -28,8 +28,7 @@ th: invalid_email: 'กรุณากรอกที่อยู่อีเมล์ให้ถูกต้อง' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ th: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ th: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ th: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ th: avg_resolution_time: Avg resolution time resolution_count: จำนวนความละเอียด avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: การสนทนา + incoming_messages_count: ข้อความที่ได้รับ + outgoing_messages_count: ข้อความที่ส่ง + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ th: rating: การประเมิน feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ th: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ th: copilot_message_required: โปรดระบุข้อความด้วย copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ th: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/tl.yml b/config/locales/tl.yml index 24c6360bb..373642fa6 100644 --- a/config/locales/tl.yml +++ b/config/locales/tl.yml @@ -28,8 +28,7 @@ tl: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ tl: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ tl: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ tl: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ tl: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Messages received + outgoing_messages_count: Messages sent + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ tl: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ tl: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ tl: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ tl: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/tr.yml b/config/locales/tr.yml index 84498ff7f..24af22a2e 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -28,8 +28,7 @@ tr: invalid_email: 'Lütfen geçerli bir e-posta adresi girin' authentication_failed: 'Kimlik doğrulama başarısız oldu. Lütfen kimlik bilgilerinizi kontrol edin ve tekrar deneyin.' messages: - reset_password_success: Parola sıfırlama isteği başarılı. Talimatlar için postanızı kontrol edin. - reset_password_failure: Belirtilen e-postaya sahip herhangi bir kullanıcı bulamadık. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: Bu hesap SAML kimlik doğrulaması kullanmaktadır. Şifre sıfırlama mevcut değildir. Lütfen yöneticinizle iletişime geçin. login_saml_user: Bu hesap SAML kimlik doğrulaması kullanmaktadır. Lütfen kuruluşunuzun SAML sağlayıcısı aracılığıyla oturum açın. saml_not_available: SAML kimlik doğrulaması bu kurulumda mevcut değildir. @@ -95,6 +94,11 @@ tr: host_unreachable_error: Host ulaşılamaz, Lütfen IMAP adresini, IMAP portunu kontrol edin ve tekrar deneyin. connection_timed_out_error: '%{address}:%{port} için bağlantı zaman aşımına uğradı.' connection_closed_error: Bağlantı kapalı. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: sembollerle başlamamalı veya bitmemeli, < > / \ @ karakterlerini içermemeli. custom_filters: @@ -104,6 +108,7 @@ tr: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA zaten etkinleştirilmiştir @@ -120,6 +125,8 @@ tr: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA başarıyla etkinleştirildi @@ -156,6 +163,14 @@ tr: avg_resolution_time: Avg resolution time resolution_count: Çözüm Sayısı avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Konuşmalar + incoming_messages_count: Gelen Mesajlar + outgoing_messages_count: Giden Mesajlar + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Zaman dilimi sla_csv: @@ -178,6 +193,7 @@ tr: rating: Derecelendirme feedback: Derecelendirme Yorumu recorded_at: Kaydedilen tarih + review_notes: İnceleme Notları notifications: notification_title: conversation_creation: '%{inbox_name} kutusunda (#%{display_id}) numaralı bir konuşma oluşturuldu.' @@ -205,7 +221,11 @@ tr: activity: captain: resolved: 'Konuşma, %{user_name} tarafından etkinlik olmadığı için çözüldü olarak işaretlendi' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Konuşma, %{user_name} tarafından açık olarak işaretlendi' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Temsilci botta meydana gelen bir hata nedeniyle konuşma, sistem tarafından açık olarak işaretlendi.' status: @@ -320,6 +340,9 @@ tr: copilot_message_required: Mesaj gerekli copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: '%{function_name} aracını kullanıyor' completed_tool_call: '%{function_name} aracı çağrısı tamamlandı' @@ -405,6 +428,9 @@ tr: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Otomasyon Sistemi' crm: diff --git a/config/locales/uk.yml b/config/locales/uk.yml index e118f3747..09ce43304 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -28,8 +28,7 @@ uk: invalid_email: 'Будь ласка, введіть коректну адресу електронної пошти' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Круто! Запит на скидання пароля виконано успішно. Перевірте вашу пошту за подальшими інструкціями. - reset_password_failure: Ой-ой! Ми не змогли знайти жодного користувача з цією адресою електронної пошти. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ uk: host_unreachable_error: Хост недоступний. Будь ласка, перевірте адресу IMAP, порт IMAP і повторіть спробу. connection_timed_out_error: Вичерпано час очікування з'єднання для %{address}:%{port} connection_closed_error: З'єднання закрито. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: не повинно починатись або закінчуватися символами, і він не повинен мати < > / \ @ символів. custom_filters: @@ -104,6 +108,7 @@ uk: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Невірне значення. Надані значення для %{attribute_name} є неприпустимі custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ uk: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ uk: avg_resolution_time: Середній час вирішення resolution_count: Кількість вирішень avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Бесіди + incoming_messages_count: Вхідні повідомлення + outgoing_messages_count: Вихідні повідомлення + avg_first_response_time: Середній час першої відповіді + avg_resolution_time: Середній час вирішення + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ uk: rating: Оцінка feedback: Відгук recorded_at: Дата запису + review_notes: Review Notes notifications: notification_title: conversation_creation: 'Розмова (#%{display_id}) була створена в %{inbox_name}' @@ -205,7 +221,11 @@ uk: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ uk: copilot_message_required: Необхідне повідомлення copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -413,6 +436,9 @@ uk: few: '%{count} секунд' many: '%{count} секунд' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ur.yml b/config/locales/ur.yml index efa5ea0f5..a3e93641f 100644 --- a/config/locales/ur.yml +++ b/config/locales/ur.yml @@ -28,8 +28,7 @@ ur: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ur: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ur: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ur: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ur: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: مکالمات + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ur: rating: درجہ بندی feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ur: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ur: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ur: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/ur_IN.yml b/config/locales/ur_IN.yml index 449052a1f..fe6fb871d 100644 --- a/config/locales/ur_IN.yml +++ b/config/locales/ur_IN.yml @@ -28,8 +28,7 @@ ur: invalid_email: 'Please enter a valid email address' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions. - reset_password_failure: Uh ho! We could not find any user with the specified email. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ ur: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ ur: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ ur: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ ur: avg_resolution_time: Avg resolution time resolution_count: Resolution Count avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Conversations + incoming_messages_count: Incoming Messages + outgoing_messages_count: Outgoing Messages + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ ur: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ ur: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ ur: copilot_message_required: Message is required copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -405,6 +428,9 @@ ur: seconds: one: '%{count} second' other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 1690f5041..f29d46a41 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -28,8 +28,7 @@ vi: invalid_email: 'Vui lòng nhập một địa chỉ email hợp lệ' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: Chà! Yêu cầu đặt lại mật khẩu thành công. Kiểm tra thư của bạn để biết hướng dẫn. - reset_password_failure: Uh ho! Chúng tôi không thể tìm thấy bất kỳ người dùng nào có email được chỉ định. + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ vi: host_unreachable_error: Máy chủ không thể truy cập được, Vui lòng kiểm tra địa chỉ IMAP, cổng IMAP và thử lại. connection_timed_out_error: Kết nối đã hết thời gian chờ %{address}:%{port} connection_closed_error: Kêt nối bị đóng. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: không nên bắt đầu hoặc kết thúc bằng các ký hiệu và không nên có kí tự < > / \ @. custom_filters: @@ -104,6 +108,7 @@ vi: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ vi: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ vi: avg_resolution_time: Avg resolution time resolution_count: Số lượng giải quyết avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: Các cuộc hội thoại + incoming_messages_count: Tin nhắn nhận được + outgoing_messages_count: Tin nhắn gửi đi + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Múi giờ sla_csv: @@ -178,6 +193,7 @@ vi: rating: Đánh giá feedback: Bình luận phản hồi recorded_at: Ngày nghi + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ vi: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ vi: copilot_message_required: Thông điệp bắt buộc có copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ vi: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: diff --git a/config/locales/zh_CN.yml b/config/locales/zh_CN.yml index 712c4c255..52c1c0f10 100644 --- a/config/locales/zh_CN.yml +++ b/config/locales/zh_CN.yml @@ -28,8 +28,7 @@ zh_CN: invalid_email: '请输入一个有效的电子邮件' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: 哇!密码重置请求成功。请检查您的邮件获取说明。 - reset_password_failure: 哎呀!我们找不到指定电子邮件的任何用户。 + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ zh_CN: host_unreachable_error: 主机无法访问。请检查 IMAP 地址,然后重试。 connection_timed_out_error: 连接超时 %{address}:%{port} connection_closed_error: 连接已关闭。 + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: 不应该以符号开头或结尾,它不应该有 < > / \ @ 字符。 custom_filters: @@ -104,6 +108,7 @@ zh_CN: invalid_query_operator: 查询操作符必须为 "AND" 或 "OR"。 invalid_value: 无效的值。为 %{attribute_name} 提供的值无效 custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: 提供的键不允许使用,因为它可能与默认属性冲突。 mfa: already_enabled: MFA 已启用 @@ -120,6 +125,8 @@ zh_CN: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ zh_CN: avg_resolution_time: 平均解决时间 resolution_count: 已解决的数量 avg_customer_waiting_time: 平均客户等待时间 + conversation_csv: + conversations_count: 会话 + incoming_messages_count: 收到的消息 + outgoing_messages_count: 发送的消息 + avg_first_response_time: 平均首次响应时间 + avg_resolution_time: 平均解决时间 + resolution_count: Resolution count + avg_customer_waiting_time: 平均客户等待时间 conversation_traffic_csv: timezone: 时区 sla_csv: @@ -178,6 +193,7 @@ zh_CN: rating: 评分 feedback: 意见反馈 recorded_at: 录制日期 + review_notes: Review Notes notifications: notification_title: conversation_creation: '在 %{inbox_name} 中创建了一个对话 (#%{display_id})' @@ -205,7 +221,11 @@ zh_CN: activity: captain: resolved: '对话被系统标记为已解决, 原因是 %{user_name} 不活跃' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: '对话被 %{user_name} 打开' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ zh_CN: copilot_message_required: 消息是必填项 copilot_error: '请为该收件箱连接一个助手以使用 Copilot' copilot_limit: '您的 Copilot 积分已用完。您可以从计费部分购买更多积分。' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: '使用工具 %{function_name}' completed_tool_call: '%{function_name} 工具调用完成' @@ -401,6 +424,9 @@ zh_CN: other: '%{count} 分钟' seconds: other: '%{count} 秒' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: '自动化系统' crm: diff --git a/config/locales/zh_TW.yml b/config/locales/zh_TW.yml index 41635213e..64743cfad 100644 --- a/config/locales/zh_TW.yml +++ b/config/locales/zh_TW.yml @@ -28,8 +28,7 @@ zh_TW: invalid_email: '請輸入一個有效的電子信箱' authentication_failed: 'Authentication failed. Please check your credentials and try again.' messages: - reset_password_success: 密碼重設成功,請確認您的信箱有收到重設信件。 - reset_password_failure: 我們找不到用戶指定的電子郵件。 + reset_password: Request for password reset is successful. A email with instructions will be sent to your email if it exists. reset_password_saml_user: This account uses SAML authentication. Password reset is not available. Please contact your administrator. login_saml_user: This account uses SAML authentication. Please sign in through your organization's SAML provider. saml_not_available: SAML authentication is not available in this installation. @@ -95,6 +94,11 @@ zh_TW: host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again. connection_timed_out_error: Connection timed out for %{address}:%{port} connection_closed_error: Connection closed. + smtp: + authentication_error: SMTP authentication failed. Please verify your login credentials. + connection_error: Could not connect to SMTP server. Please check the server address and port. + ssl_error: SSL/TLS error. Please verify your encryption settings. + smtp_error: SMTP server error. Please check your configuration and try again. validations: name: should not start or end with symbols, and it should not have < > / \ @ characters. custom_filters: @@ -104,6 +108,7 @@ zh_TW: invalid_query_operator: Query operator must be either "AND" or "OR". invalid_value: Invalid value. The values provided for %{attribute_name} are invalid custom_attribute_definition: + attribute_key_format: must only contain letters, numbers, underscores, hyphens, and dots key_conflict: The provided key is not allowed as it might conflict with default attributes. mfa: already_enabled: MFA is already enabled @@ -120,6 +125,8 @@ zh_TW: plan_not_eligible: Top-ups are only available for paid plans. Please upgrade your plan first. stripe_customer_not_configured: Stripe customer not configured no_payment_method: No payment methods found. Please add a payment method before making a purchase. + reports: + date_range_too_long: Date range cannot exceed 6 months profile: mfa: enabled: MFA enabled successfully @@ -156,6 +163,14 @@ zh_TW: avg_resolution_time: Avg resolution time resolution_count: 已解決的數量 avg_customer_waiting_time: Avg customer waiting time + conversation_csv: + conversations_count: 對話 + incoming_messages_count: 收到的消息 + outgoing_messages_count: 發送的消息 + avg_first_response_time: Avg first response time + avg_resolution_time: Avg resolution time + resolution_count: Resolution count + avg_customer_waiting_time: Avg customer waiting time conversation_traffic_csv: timezone: Timezone sla_csv: @@ -178,6 +193,7 @@ zh_TW: rating: Rating feedback: Feedback Comment recorded_at: Recorded date + review_notes: Review Notes notifications: notification_title: conversation_creation: 'A conversation (#%{display_id}) has been created in %{inbox_name}' @@ -205,7 +221,11 @@ zh_TW: activity: captain: resolved: 'Conversation was marked resolved by %{user_name} due to inactivity' + resolved_with_reason: 'Conversation was marked resolved by %{user_name} (%{reason})' + resolved_by_tool: 'Conversation was marked resolved by %{user_name}: %{reason}' open: 'Conversation was marked open by %{user_name}' + open_with_reason: 'Conversation was marked open by %{user_name} (%{reason})' + auto_opened_after_agent_reply: 'Conversation was marked open automatically after an agent reply' agent_bot: error_moved_to_open: 'Conversation was marked open by system due to an error with the agent bot.' status: @@ -320,6 +340,9 @@ zh_TW: copilot_message_required: 訊息為必填 copilot_error: 'Please connect an assistant to this inbox to use Copilot' copilot_limit: 'You are out of Copilot credits. You can buy more credits from the billing section.' + upgrade: 'Upgrade your plan to enable Captain AI' + disabled: 'Captain AI is disabled for this account.' + api_key_missing: 'Captain AI API key is not configured.' copilot: using_tool: 'Using tool %{function_name}' completed_tool_call: 'Completed %{function_name} tool call' @@ -401,6 +424,9 @@ zh_TW: other: '%{count} minutes' seconds: other: '%{count} seconds' + auto_assignment: + default_policy_name: 'Default Policy' + policy_actor: 'Automation System via %{policy_name}' automation: system_name: 'Automation System' crm: