UNPKG

besper-frontend-site-dev-main

Version:

Professional B-esper Frontend Site - Site-wide integration toolkit for full website bot deployment

799 lines (770 loc) 27.2 kB
/** * Bot Management Interface Translations * Comprehensive internationalization for the management interface */ export const managementTranslations = { en: { // Navigation tabs tabs: { general: 'General', styling: 'Styling', behaviour: 'Behaviour', knowledge: 'Knowledge Management', conversations: 'Conversations', implementation: 'Implementation', }, // Header header: { title: 'Bot Configuration', status: 'Active', saveChanges: 'Save Changes', loading: 'Loading...', }, // Configuration Tab configuration: { title: 'Basic Configuration', subtitle: 'Core settings and credentials for your bot', basicInfo: { title: 'Bot Information', subtitle: 'Identity and basic settings', botName: 'Bot Name', botTitle: 'Bot Title', description: 'Description', internalIdentifier: 'Internal identifier for your bot', shownInHeader: 'Shown in the chat interface header', dataPolicyUrl: 'Data Policy URL', dataPolicyHint: 'This URL links to your data policy or privacy policy that will be displayed to users when using your bot. Users can access this to understand how their data is handled.', }, credentials: { title: 'Bot Credentials', subtitle: 'Secure access credentials', botId: 'Bot ID', managementId: 'Management ID', managementSecret: 'Management Secret', }, welcomeMessage: { title: 'Welcome Message', defaultMessage: 'Default Welcome Message', placeholder: 'Enter welcome message...', hint: 'This message will be shown when users first open the chat', }, logo: { title: 'Bot Logo', noLogo: 'No logo uploaded', upload: 'Upload Logo', remove: 'Remove', hint: 'Max 2MB. Supported: JPG, PNG, GIF, SVG, WebP (32x32 to 512x512 pixels)', }, cors: { title: 'CORS Configuration', subtitle: 'Configure which origins are allowed to access your bot operations. Leave empty to allow all origins.', allowedOrigins: 'Allowed Origins', placeholder: 'Enter allowed origins (one per line)', hint: 'Configure allowed origins for cross-origin requests', addOrigin: 'Add Origin', }, welcomeMessages: { title: 'Welcome Messages', addLanguage: 'Add Language', language: 'Language', message: 'Message', translateAll: 'Translate All', hint: 'Configure welcome messages for different languages', }, actions: { save: 'Save Configuration', refresh: 'Refresh Data', }, }, // Styling Tab styling: { title: 'Widget Styling', subtitle: 'Customize the visual appearance of your chat widget', theme: { title: 'Theme Configuration', primaryColor: 'Primary Color', secondaryColor: 'Secondary Color', accentColor: 'Accent Color', backgroundColor: 'Background Color', textColor: 'Text Color', borderRadius: 'Border Radius', fontFamily: 'Font Family', fontSize: 'Font Size', showMoreOptions: 'Show more color options', }, position: { title: 'Widget Position', bottomRight: 'Bottom Right', bottomLeft: 'Bottom Left', topRight: 'Top Right', topLeft: 'Top Left', }, size: { title: 'Widget Size', widgetSize: 'Widget Size', logoSize: 'Logo Size', messageFontSize: 'Message Font Size', width: 'Width', height: 'Height', maxWidth: 'Max Width', maxHeight: 'Max Height', }, style: { chatBubbleStyle: 'Chat Bubble Style', typingIndicator: 'Typing Indicator', closeOnOutsideClick: 'Close on outside click', }, preview: { title: 'Live Preview', hint: 'Changes will be reflected in real-time', }, actions: { save: 'Save Styling', reset: 'Reset to Defaults', }, }, // Behaviour Tab behaviour: { title: 'System Instructions', subtitle: 'Define how your bot should behave and respond', prioritySystem: { title: 'Instruction Priority System', description: 'Instructions are processed based on their priority level. High priority instructions are processed first and will override conflicting normal priority instructions. Use high priority for critical business rules, compliance requirements, or safety guidelines. Normal priority instructions are processed in sequential order after all high priority instructions.', highPriority: 'High priority', normalPriority: 'Normal priority', }, systemInstruction: { title: 'Primary System Instruction', subtitle: 'Core behavior definition', placeholder: 'You are a helpful assistant...', hint: "This instruction serves as the bot's core identity and will be included in every conversation.", }, subInstructions: { title: 'Sub Instructions', subtitle: 'Additional behavioral rules and guidelines', search: 'Search instructions...', titlePlaceholder: 'Instruction title...', detailsPlaceholder: 'Enter instruction details...', addInstruction: '+ Add Instruction', }, general: { title: 'General Behaviour', autoOpen: 'Auto-open chat', persistentChat: 'Persistent chat history', soundNotifications: 'Sound notifications', showTypingIndicator: 'Show typing indicator', }, responses: { title: 'Response Settings', maxResponseTime: 'Max response time (seconds)', fallbackMessage: 'Fallback message', errorMessage: 'Error message', }, limitations: { title: 'Usage Limitations', maxMessagesPerSession: 'Max messages per session', rateLimitWindow: 'Rate limit window (minutes)', cooldownPeriod: 'Cooldown period (seconds)', }, actions: { save: 'Save Instructions', refresh: 'Refresh Data', }, }, // Knowledge Tab knowledge: { title: 'Knowledge Management', search: { placeholder: 'Search knowledge items...', noResults: 'No knowledge items found', loading: 'Loading knowledge data...', loadingHint: 'This will only take a moment', }, actions: { addKnowledge: 'Add Knowledge', uploadFile: 'Upload File', addWebsite: 'Add Website', bulkActions: 'Bulk Actions', }, items: { type: 'Type', title: 'Title', status: 'Status', lastModified: 'Last Modified', actions: 'Actions', edit: 'Edit', delete: 'Delete', preview: 'Preview', }, filters: { all: 'All', active: 'Active', inactive: 'Inactive', recent: 'Recent', }, stats: { total: 'Total Items', active: 'Active', inactive: 'Inactive', storage: 'Storage Used', }, }, // Conversations Tab conversations: { title: 'Conversation History', search: { placeholder: 'Search by content, topics, or keywords...', noResults: 'No conversations found', loading: 'Loading conversations...', }, filters: { dateRange: 'Date Range', status: 'Status', language: 'Language', sentiment: 'Sentiment', }, list: { participant: 'Participant', messages: 'Messages', duration: 'Duration', lastActivity: 'Last Activity', status: 'Status', }, details: { messageCount: '{{count}} messages', startTime: 'Started', endTime: 'Ended', duration: 'Duration', export: 'Export', analyze: 'Analyze', }, }, // Implementation Tab implementation: { title: 'Implementation Guide', integrationGuide: 'Integration Guide', developmentFeatures: { preview: 'Preview Development Features', description: 'Show experimental features like WordPress integration', }, widgetImplementation: { title: 'Widget Implementation (Floating Chat Button)', description: 'Add a floating chat button to any website with this simple code', }, environment: { title: 'Environment Information', current: 'Current Environment', branch: 'Branch', packageName: 'Package Name', version: 'Version', }, instructions: { title: 'Implementation Instructions', htmlTitle: 'HTML Implementation', jsTitle: 'JavaScript Implementation', wpTitle: 'WordPress Implementation', copy: 'Copy Code', copied: 'Copied!', documentation: 'View Documentation', }, examples: { title: 'Code Examples', basic: 'Basic Implementation', advanced: 'Advanced Configuration', customization: 'Custom Styling', }, }, // Common UI elements common: { loading: 'Loading...', save: 'Save', cancel: 'Cancel', delete: 'Delete', edit: 'Edit', add: 'Add', remove: 'Remove', upload: 'Upload', download: 'Download', refresh: 'Refresh', search: 'Search', filter: 'Filter', sort: 'Sort', export: 'Export', import: 'Import', preview: 'Preview', settings: 'Settings', help: 'Help', close: 'Close', confirm: 'Confirm', yes: 'Yes', no: 'No', ok: 'OK', error: 'Error', success: 'Success', warning: 'Warning', info: 'Information', }, // Messages and notifications messages: { saveSuccess: 'Changes saved successfully', saveError: 'Failed to save changes', deleteSuccess: 'Item deleted successfully', deleteError: 'Failed to delete item', uploadSuccess: 'File uploaded successfully', uploadError: 'Failed to upload file', loadError: 'Failed to load data', networkError: 'Network error occurred', validationError: 'Please check your input', confirmDelete: 'Are you sure you want to delete this item?', unsavedChanges: 'You have unsaved changes. Are you sure you want to leave?', }, // Storage indicator storage: { loadingInfo: 'Loading storage info...', failedToLoad: 'Failed to load storage info', storageDetails: 'Storage Details', used: 'Used', available: 'Available', usage: 'Usage', items: 'Items', status: 'Status', criticalStatus: 'Critical - Storage nearly full', warningStatus: 'Warning - High storage usage', normalStatus: 'Normal - Moderate usage', goodStatus: 'Good - Low usage', noDataAvailable: 'No data available', storageUsed: '{{used}} MB / {{total}} MB used', storageUsedWithItems: '{{used}} MB / {{total}} MB used ({{items}} items)', conversationsBudget: '{{percentage}}% of 20k conversations budget this month', storageLimit: '{{percentage}}% of 1 GB storage limit', }, // Welcome messages welcomeMessages: { title: 'Welcome Message', defaultMessage: 'Default Welcome Message', placeholder: 'Enter a welcome message for your users...', hint: 'This message will be shown when users first open the chat widget.', saveWelcomeMessage: 'Save Welcome Message', saveSuccess: 'Welcome message saved successfully!', saveError: 'Failed to save welcome message', saveErrorGeneric: 'Failed to save welcome message. Please try again.', }, // Tooltips and titles tooltips: { copyBotId: 'Copy Bot ID', copyManagementId: 'Copy Management ID', copyManagementSecret: 'Copy Management Secret', toggleVisibility: 'Toggle visibility', refreshKnowledge: 'Refresh knowledge data and website configuration', removeWebsite: 'Remove website and all its knowledge items', conversationsHelp: 'Your monthly conversation limit is 20,000 conversations', storageHelp: 'Your storage limit is 1 GB', }, // Form placeholders placeholders: { searchKnowledge: 'Search knowledge items...', searchWebsites: 'Search by page name or URL...', searchConversations: 'Search conversations...', knowledgeTitle: 'Enter a title for this knowledge item', knowledgeContent: 'Enter the knowledge content...', documentTitle: 'Custom title for this document', questionAnswer: 'What question does this answer?', answerContent: 'Enter the answer or knowledge content...', botInstructions: 'Enter bot instructions...', botName: 'Enter bot name', searchLanguages: 'Search by language name, code, or message content...', }, }, de: { // Navigation tabs tabs: { general: 'Allgemein', styling: 'Stil', behaviour: 'Verhalten', knowledge: 'Wissensverwaltung', conversations: 'Unterhaltungen', implementation: 'Implementierung', }, // Header header: { title: 'Bot-Konfiguration', status: 'Aktiv', saveChanges: 'Änderungen speichern', loading: 'Lädt...', }, // Configuration Tab configuration: { title: 'Grundkonfiguration', subtitle: 'Grundeinstellungen und Anmeldedaten für Ihren Bot', basicInfo: { title: 'Bot-Information', subtitle: 'Identität und Grundeinstellungen', botName: 'Bot-Name', botTitle: 'Bot-Titel', description: 'Beschreibung', internalIdentifier: 'Interne Kennung für Ihren Bot', shownInHeader: 'Wird im Chat-Interface-Header angezeigt', dataPolicyUrl: 'Datenschutzrichtlinien-URL', dataPolicyHint: 'Diese URL verweist auf Ihre Datenschutzrichtlinie oder Datenschutzerklärung, die Benutzern angezeigt wird, wenn sie Ihren Bot verwenden. Benutzer können darauf zugreifen, um zu verstehen, wie ihre Daten behandelt werden.', }, credentials: { title: 'Bot-Anmeldedaten', subtitle: 'Sichere Zugangsberechtigungen', botId: 'Bot-ID', managementId: 'Management-ID', managementSecret: 'Management-Geheimnis', }, welcomeMessage: { title: 'Willkommensnachricht', defaultMessage: 'Standard-Willkommensnachricht', placeholder: 'Willkommensnachricht eingeben...', hint: 'Diese Nachricht wird angezeigt, wenn Benutzer den Chat öffnen', }, logo: { title: 'Bot-Logo', noLogo: 'Kein Logo hochgeladen', upload: 'Logo hochladen', remove: 'Entfernen', hint: 'Max. 2MB. Unterstützt: JPG, PNG, GIF, SVG, WebP (32x32 bis 512x512 Pixel)', }, cors: { title: 'CORS-Konfiguration', subtitle: 'Konfigurieren Sie, welche Origins auf Ihre Bot-Operationen zugreifen dürfen. Leer lassen, um alle Origins zu erlauben.', allowedOrigins: 'Erlaubte Origins', placeholder: 'Erlaubte Origins eingeben (eine pro Zeile)', hint: 'Konfigurieren Sie erlaubte Origins für Cross-Origin-Requests', addOrigin: 'Origin hinzufügen', }, welcomeMessages: { title: 'Willkommensnachrichten', addLanguage: 'Sprache hinzufügen', language: 'Sprache', message: 'Nachricht', translateAll: 'Alle übersetzen', hint: 'Konfigurieren Sie Willkommensnachrichten für verschiedene Sprachen', }, actions: { save: 'Konfiguration speichern', refresh: 'Daten aktualisieren', }, }, // Styling Tab styling: { title: 'Widget-Styling', subtitle: 'Passen Sie das visuelle Erscheinungsbild Ihres Chat-Widgets an', theme: { title: 'Theme-Konfiguration', primaryColor: 'Primärfarbe', secondaryColor: 'Sekundärfarbe', accentColor: 'Akzentfarbe', backgroundColor: 'Hintergrundfarbe', textColor: 'Textfarbe', borderRadius: 'Eckenradius', fontFamily: 'Schriftart', fontSize: 'Schriftgröße', showMoreOptions: 'Mehr Farboptionen anzeigen', }, position: { title: 'Widget-Position', bottomRight: 'Unten rechts', bottomLeft: 'Unten links', topRight: 'Oben rechts', topLeft: 'Oben links', }, size: { title: 'Widget-Größe', widgetSize: 'Widget-Größe', logoSize: 'Logo-Größe', messageFontSize: 'Nachrichten-Schriftgröße', width: 'Breite', height: 'Höhe', maxWidth: 'Max. Breite', maxHeight: 'Max. Höhe', }, style: { chatBubbleStyle: 'Chat-Bubble-Stil', typingIndicator: 'Tipp-Indikator', closeOnOutsideClick: 'Bei Außenklick schließen', }, preview: { title: 'Live-Vorschau', hint: 'Änderungen werden in Echtzeit angezeigt', }, actions: { save: 'Styling speichern', reset: 'Auf Standardwerte zurücksetzen', }, }, // Behaviour Tab behaviour: { title: 'Systeminstruktionen', subtitle: 'Definieren Sie, wie sich Ihr Bot verhalten und antworten soll', prioritySystem: { title: 'Instruktionspriorität-System', description: 'Instruktionen werden basierend auf ihrer Prioritätsstufe verarbeitet. Hochprioritäts-Instruktionen werden zuerst verarbeitet und überschreiben widersprüchliche normale Prioritäts-Instruktionen. Verwenden Sie hohe Priorität für kritische Geschäftsregeln, Compliance-Anforderungen oder Sicherheitsrichtlinien. Normale Prioritäts-Instruktionen werden in sequenzieller Reihenfolge nach allen hochprioritären Instruktionen verarbeitet.', highPriority: 'Hohe Priorität', normalPriority: 'Normale Priorität', }, systemInstruction: { title: 'Primäre Systeminstruktion', subtitle: 'Kern-Verhaltensdefinition', placeholder: 'Du bist ein hilfreicher Assistent...', hint: 'Diese Instruktion dient als Kernidentität des Bots und wird in jede Unterhaltung einbezogen.', }, subInstructions: { title: 'Unter-Instruktionen', subtitle: 'Zusätzliche Verhaltensregeln und Richtlinien', search: 'Instruktionen suchen...', titlePlaceholder: 'Instruktions-Titel...', detailsPlaceholder: 'Instruktions-Details eingeben...', addInstruction: '+ Instruktion hinzufügen', }, general: { title: 'Allgemeines Verhalten', autoOpen: 'Chat automatisch öffnen', persistentChat: 'Dauerhafter Chat-Verlauf', soundNotifications: 'Sound-Benachrichtigungen', showTypingIndicator: 'Tipp-Indikator anzeigen', }, responses: { title: 'Antwort-Einstellungen', maxResponseTime: 'Max. Antwortzeit (Sekunden)', fallbackMessage: 'Fallback-Nachricht', errorMessage: 'Fehlernachricht', }, limitations: { title: 'Nutzungsbeschränkungen', maxMessagesPerSession: 'Max. Nachrichten pro Sitzung', rateLimitWindow: 'Rate-Limit-Fenster (Minuten)', cooldownPeriod: 'Abkühlungsperiode (Sekunden)', }, actions: { save: 'Instruktionen speichern', refresh: 'Daten aktualisieren', }, }, // Knowledge Tab knowledge: { title: 'Wissensverwaltung', search: { placeholder: 'Wissenseinträge suchen...', noResults: 'Keine Wissenseinträge gefunden', loading: 'Lade Wissensdaten...', loadingHint: 'Dies dauert nur einen Moment', }, actions: { addKnowledge: 'Wissen hinzufügen', uploadFile: 'Datei hochladen', addWebsite: 'Website hinzufügen', bulkActions: 'Massenaktionen', }, items: { type: 'Typ', title: 'Titel', status: 'Status', lastModified: 'Zuletzt geändert', actions: 'Aktionen', edit: 'Bearbeiten', delete: 'Löschen', preview: 'Vorschau', }, filters: { all: 'Alle', active: 'Aktiv', inactive: 'Inaktiv', recent: 'Neueste', }, stats: { total: 'Gesamte Einträge', active: 'Aktiv', inactive: 'Inaktiv', storage: 'Verwendeter Speicher', }, }, // Conversations Tab conversations: { title: 'Unterhaltungsverlauf', search: { placeholder: 'Nach Inhalten, Themen oder Stichwörtern suchen...', noResults: 'Keine Unterhaltungen gefunden', loading: 'Lade Unterhaltungen...', }, filters: { dateRange: 'Datumsbereich', status: 'Status', language: 'Sprache', sentiment: 'Stimmung', }, list: { participant: 'Teilnehmer', messages: 'Nachrichten', duration: 'Dauer', lastActivity: 'Letzte Aktivität', status: 'Status', }, details: { messageCount: '{{count}} Nachrichten', startTime: 'Gestartet', endTime: 'Beendet', duration: 'Dauer', export: 'Exportieren', analyze: 'Analysieren', }, }, // Implementation Tab implementation: { title: 'Implementierungshandbuch', integrationGuide: 'Integrationsleitfaden', developmentFeatures: { preview: 'Vorschau-Entwicklungsfeatures', description: 'Experimentelle Features wie WordPress-Integration anzeigen', }, widgetImplementation: { title: 'Widget-Implementierung (Schwebender Chat-Button)', description: 'Fügen Sie mit diesem einfachen Code einen schwebenden Chat-Button zu jeder Website hinzu', }, environment: { title: 'Umgebungsinformationen', current: 'Aktuelle Umgebung', branch: 'Branch', packageName: 'Paketname', version: 'Version', }, instructions: { title: 'Implementierungsanweisungen', htmlTitle: 'HTML-Implementierung', jsTitle: 'JavaScript-Implementierung', wpTitle: 'WordPress-Implementierung', copy: 'Code kopieren', copied: 'Kopiert!', documentation: 'Dokumentation anzeigen', }, examples: { title: 'Code-Beispiele', basic: 'Grundlegende Implementierung', advanced: 'Erweiterte Konfiguration', customization: 'Benutzerdefiniertes Styling', }, }, // Common UI elements common: { loading: 'Lädt...', save: 'Speichern', cancel: 'Abbrechen', delete: 'Löschen', edit: 'Bearbeiten', add: 'Hinzufügen', remove: 'Entfernen', upload: 'Hochladen', download: 'Herunterladen', refresh: 'Aktualisieren', search: 'Suchen', filter: 'Filtern', sort: 'Sortieren', export: 'Exportieren', import: 'Importieren', preview: 'Vorschau', settings: 'Einstellungen', help: 'Hilfe', close: 'Schließen', confirm: 'Bestätigen', yes: 'Ja', no: 'Nein', ok: 'OK', error: 'Fehler', success: 'Erfolg', warning: 'Warnung', info: 'Information', }, // Messages and notifications messages: { saveSuccess: 'Änderungen erfolgreich gespeichert', saveError: 'Fehler beim Speichern der Änderungen', deleteSuccess: 'Element erfolgreich gelöscht', deleteError: 'Fehler beim Löschen des Elements', uploadSuccess: 'Datei erfolgreich hochgeladen', uploadError: 'Fehler beim Hochladen der Datei', loadError: 'Fehler beim Laden der Daten', networkError: 'Netzwerkfehler aufgetreten', validationError: 'Bitte überprüfen Sie Ihre Eingabe', confirmDelete: 'Sind Sie sicher, dass Sie dieses Element löschen möchten?', unsavedChanges: 'Sie haben ungespeicherte Änderungen. Möchten Sie wirklich verlassen?', }, // Storage indicator storage: { loadingInfo: 'Lade Speicherinformationen...', failedToLoad: 'Fehler beim Laden der Speicherinformationen', storageDetails: 'Speicher-Details', used: 'Verwendet', available: 'Verfügbar', usage: 'Nutzung', items: 'Elemente', status: 'Status', criticalStatus: 'Kritisch - Speicher fast voll', warningStatus: 'Warnung - Hohe Speichernutzung', normalStatus: 'Normal - Mäßige Nutzung', goodStatus: 'Gut - Geringe Nutzung', noDataAvailable: 'Keine Daten verfügbar', storageUsed: '{{used}} MB / {{total}} MB verwendet', storageUsedWithItems: '{{used}} MB / {{total}} MB verwendet ({{items}} Elemente)', conversationsBudget: '{{percentage}}% von 20k Unterhaltungs-Budget diesen Monat', storageLimit: '{{percentage}}% von 1 GB Speicherlimit', }, // Welcome messages welcomeMessages: { title: 'Willkommensnachricht', defaultMessage: 'Standard-Willkommensnachricht', placeholder: 'Geben Sie eine Willkommensnachricht für Ihre Benutzer ein...', hint: 'Diese Nachricht wird angezeigt, wenn Benutzer das Chat-Widget öffnen.', saveWelcomeMessage: 'Willkommensnachricht speichern', saveSuccess: 'Willkommensnachricht erfolgreich gespeichert!', saveError: 'Fehler beim Speichern der Willkommensnachricht', saveErrorGeneric: 'Fehler beim Speichern der Willkommensnachricht. Bitte versuchen Sie es erneut.', }, // Tooltips and titles tooltips: { copyBotId: 'Bot-ID kopieren', copyManagementId: 'Management-ID kopieren', copyManagementSecret: 'Management-Geheimnis kopieren', toggleVisibility: 'Sichtbarkeit umschalten', refreshKnowledge: 'Wissensdaten und Website-Konfiguration aktualisieren', removeWebsite: 'Website und alle zugehörigen Wissenselemente entfernen', conversationsHelp: 'Ihr monatliches Unterhaltungslimit beträgt 20.000 Unterhaltungen', storageHelp: 'Ihr Speicherlimit beträgt 1 GB', }, // Form placeholders placeholders: { searchKnowledge: 'Wissenseinträge suchen...', searchWebsites: 'Nach Seitenname oder URL suchen...', searchConversations: 'Unterhaltungen suchen...', knowledgeTitle: 'Titel für diesen Wissensbeitrag eingeben', knowledgeContent: 'Wissensinhalt eingeben...', documentTitle: 'Benutzerdefinierter Titel für dieses Dokument', questionAnswer: 'Welche Frage beantwortet dies?', answerContent: 'Antwort oder Wissensinhalt eingeben...', botInstructions: 'Bot-Anweisungen eingeben...', botName: 'Bot-Name eingeben', searchLanguages: 'Nach Sprachname, Code oder Nachrichteninhalt suchen...', }, }, };