2026-06-29 07:55:47 +02:00
|
|
|
{
|
|
|
|
|
"app": {
|
|
|
|
|
"name": "leocrm",
|
|
|
|
|
"tagline": "Mini-CRM for small businesses"
|
|
|
|
|
},
|
|
|
|
|
"nav": {
|
|
|
|
|
"dashboard": "Dashboard",
|
|
|
|
|
"companies": "Companies",
|
|
|
|
|
"contacts": "Contacts",
|
|
|
|
|
"calendar": "Calendar",
|
|
|
|
|
"files": "Files",
|
|
|
|
|
"email": "Email",
|
|
|
|
|
"users": "Users",
|
|
|
|
|
"auditLog": "Audit Log",
|
|
|
|
|
"settings": "Settings"
|
|
|
|
|
},
|
|
|
|
|
"auth": {
|
|
|
|
|
"login": "Sign In",
|
|
|
|
|
"logout": "Sign Out",
|
|
|
|
|
"email": "Email Address",
|
|
|
|
|
"password": "Password",
|
|
|
|
|
"loginButton": "Sign In",
|
|
|
|
|
"loginFailed": "Sign in failed. Please check your credentials.",
|
|
|
|
|
"forgotPassword": "Forgot password?",
|
|
|
|
|
"resetPassword": "Reset Password",
|
|
|
|
|
"resetRequestTitle": "Reset Password",
|
|
|
|
|
"resetRequestDesc": "Enter your email address. You will receive a link to reset your password.",
|
|
|
|
|
"resetRequestButton": "Send Link",
|
|
|
|
|
"resetRequestSuccess": "If the email address exists, a reset link has been sent.",
|
|
|
|
|
"resetConfirmTitle": "Set New Password",
|
|
|
|
|
"resetConfirmDesc": "Enter your new password.",
|
|
|
|
|
"newPassword": "New Password",
|
|
|
|
|
"confirmPassword": "Confirm Password",
|
|
|
|
|
"resetConfirmButton": "Change Password",
|
|
|
|
|
"resetConfirmSuccess": "Password changed successfully. You can now sign in.",
|
|
|
|
|
"resetConfirmFailed": "Password could not be changed. The link may have expired.",
|
|
|
|
|
"backToLogin": "Back to Sign In",
|
|
|
|
|
"passwordMismatch": "Passwords do not match.",
|
|
|
|
|
"passwordTooShort": "Password must be at least 8 characters long."
|
|
|
|
|
},
|
|
|
|
|
"common": {
|
|
|
|
|
"save": "Save",
|
|
|
|
|
"cancel": "Cancel",
|
|
|
|
|
"delete": "Delete",
|
|
|
|
|
"edit": "Edit",
|
|
|
|
|
"create": "Create",
|
|
|
|
|
"search": "Search",
|
|
|
|
|
"loading": "Loading...",
|
|
|
|
|
"noResults": "No results found",
|
|
|
|
|
"confirm": "Confirm",
|
|
|
|
|
"close": "Close",
|
|
|
|
|
"yes": "Yes",
|
|
|
|
|
"no": "No",
|
|
|
|
|
"actions": "Actions",
|
|
|
|
|
"all": "All",
|
|
|
|
|
"none": "None",
|
|
|
|
|
"error": "Error",
|
|
|
|
|
"success": "Success",
|
|
|
|
|
"warning": "Warning",
|
|
|
|
|
"info": "Information",
|
|
|
|
|
"required": "Required",
|
2026-06-29 11:01:39 +02:00
|
|
|
"optional": "Optional",
|
|
|
|
|
"back": "Back",
|
|
|
|
|
"filter": "Filter",
|
|
|
|
|
"reset": "Reset",
|
|
|
|
|
"export": "Export",
|
|
|
|
|
"import": "Import",
|
|
|
|
|
"name": "Name",
|
|
|
|
|
"email": "Email",
|
|
|
|
|
"phone": "Phone",
|
|
|
|
|
"status": "Status",
|
|
|
|
|
"role": "Role",
|
|
|
|
|
"active": "Active",
|
|
|
|
|
"inactive": "Inactive"
|
|
|
|
|
},
|
|
|
|
|
"dashboard": {
|
2026-06-30 13:50:47 +02:00
|
|
|
"title": "Dashboard",
|
2026-06-29 11:01:39 +02:00
|
|
|
"welcome": "Welcome back",
|
|
|
|
|
"recentActivity": "Recent Activity",
|
2026-06-30 13:50:47 +02:00
|
|
|
"totalCompanies": "Total Companies",
|
|
|
|
|
"totalContacts": "Total Contacts",
|
|
|
|
|
"activeThisWeek": "Active This Week",
|
|
|
|
|
"newThisMonth": "New This Month",
|
|
|
|
|
"activityUnavailable": "Activities are currently unavailable.",
|
2026-06-29 11:01:39 +02:00
|
|
|
"statCompanies": "Companies",
|
|
|
|
|
"statContacts": "Contacts",
|
|
|
|
|
"statTasks": "Open Tasks",
|
|
|
|
|
"statEmails": "Emails Today"
|
|
|
|
|
},
|
|
|
|
|
"companies": {
|
|
|
|
|
"title": "Companies",
|
|
|
|
|
"create": "Create Company",
|
|
|
|
|
"edit": "Edit Company",
|
|
|
|
|
"name": "Company Name",
|
|
|
|
|
"accountNumber": "Account Number",
|
|
|
|
|
"industry": "Industry",
|
|
|
|
|
"phone": "Phone",
|
|
|
|
|
"email": "Email",
|
|
|
|
|
"website": "Website",
|
|
|
|
|
"description": "Description",
|
|
|
|
|
"contacts": "Contacts",
|
|
|
|
|
"files": "Files",
|
|
|
|
|
"activity": "Activity",
|
|
|
|
|
"overview": "Overview",
|
|
|
|
|
"export": "Export CSV",
|
|
|
|
|
"import": "Import CSV",
|
|
|
|
|
"deleteConfirm": "Are you sure you want to delete this company?",
|
|
|
|
|
"deleteConfirmTitle": "Delete Company",
|
|
|
|
|
"emptyTitle": "No companies yet",
|
|
|
|
|
"emptyDescription": "Create your first company to get started.",
|
|
|
|
|
"created": "Company created successfully.",
|
|
|
|
|
"updated": "Company updated successfully.",
|
|
|
|
|
"deleted": "Company deleted successfully.",
|
|
|
|
|
"createFailed": "Failed to create company.",
|
|
|
|
|
"updateFailed": "Failed to update company.",
|
|
|
|
|
"notFound": "Company not found.",
|
|
|
|
|
"noContacts": "This company has no contacts yet.",
|
|
|
|
|
"noFiles": "No files available.",
|
|
|
|
|
"noActivity": "No activity available."
|
|
|
|
|
},
|
|
|
|
|
"contacts": {
|
|
|
|
|
"title": "Contacts",
|
|
|
|
|
"create": "Create Contact",
|
|
|
|
|
"edit": "Edit Contact",
|
|
|
|
|
"firstName": "First Name",
|
|
|
|
|
"lastName": "Last Name",
|
|
|
|
|
"email": "Email",
|
|
|
|
|
"phone": "Phone",
|
|
|
|
|
"position": "Position",
|
|
|
|
|
"companies": "Companies",
|
|
|
|
|
"files": "Files",
|
|
|
|
|
"activity": "Activity",
|
|
|
|
|
"overview": "Overview",
|
|
|
|
|
"deleteConfirm": "Are you sure you want to delete this contact?",
|
|
|
|
|
"deleteConfirmTitle": "Delete Contact",
|
|
|
|
|
"emptyTitle": "No contacts yet",
|
|
|
|
|
"emptyDescription": "Create your first contact to get started.",
|
|
|
|
|
"created": "Contact created successfully.",
|
|
|
|
|
"updated": "Contact updated successfully.",
|
|
|
|
|
"deleted": "Contact deleted successfully.",
|
|
|
|
|
"createFailed": "Failed to create contact.",
|
|
|
|
|
"updateFailed": "Failed to update contact.",
|
|
|
|
|
"notFound": "Contact not found.",
|
|
|
|
|
"assignCompanies": "Assign Companies",
|
|
|
|
|
"noCompanies": "This contact is not assigned to any company.",
|
|
|
|
|
"noFiles": "No files available.",
|
|
|
|
|
"noActivity": "No activity available.",
|
|
|
|
|
"fullName": "Name"
|
2026-06-29 07:55:47 +02:00
|
|
|
},
|
|
|
|
|
"settings": {
|
|
|
|
|
"title": "Settings",
|
|
|
|
|
"language": "Language",
|
|
|
|
|
"theme": "Theme",
|
|
|
|
|
"light": "Light",
|
|
|
|
|
"dark": "Dark",
|
|
|
|
|
"system": "System",
|
|
|
|
|
"profile": "Profile",
|
|
|
|
|
"notifications": "Notifications",
|
2026-06-29 11:01:39 +02:00
|
|
|
"security": "Security",
|
|
|
|
|
"roles": "Roles",
|
|
|
|
|
"users": "Users",
|
|
|
|
|
"system": "System",
|
|
|
|
|
"name": "Name",
|
|
|
|
|
"firstName": "First Name",
|
|
|
|
|
"lastName": "Last Name",
|
|
|
|
|
"email": "Email",
|
|
|
|
|
"avatar": "Avatar",
|
|
|
|
|
"currentPassword": "Current Password",
|
|
|
|
|
"newPassword": "New Password",
|
|
|
|
|
"confirmPassword": "Confirm Password",
|
|
|
|
|
"changePassword": "Change Password",
|
|
|
|
|
"profileSaved": "Profile saved successfully.",
|
|
|
|
|
"passwordChanged": "Password changed successfully.",
|
|
|
|
|
"roleName": "Role Name",
|
|
|
|
|
"permissions": "Permissions",
|
|
|
|
|
"createRole": "Create Role",
|
|
|
|
|
"roleCreated": "Role created successfully.",
|
|
|
|
|
"roleUpdated": "Role updated successfully.",
|
|
|
|
|
"noRoles": "No roles available.",
|
|
|
|
|
"inviteUser": "Invite User",
|
|
|
|
|
"deactivate": "Deactivate",
|
|
|
|
|
"activate": "Activate",
|
|
|
|
|
"userInvited": "User invited successfully.",
|
|
|
|
|
"userDeactivated": "User deactivated.",
|
|
|
|
|
"userActivated": "User activated.",
|
|
|
|
|
"noUsers": "No users available.",
|
|
|
|
|
"assignRole": "Assign Role",
|
|
|
|
|
"inviteEmail": "Email Address",
|
|
|
|
|
"inviteRole": "Role"
|
|
|
|
|
},
|
|
|
|
|
"auditLog": {
|
|
|
|
|
"title": "Audit Log",
|
|
|
|
|
"user": "User",
|
|
|
|
|
"action": "Action",
|
|
|
|
|
"entity": "Entity",
|
|
|
|
|
"dateFrom": "Date From",
|
|
|
|
|
"dateTo": "Date To",
|
|
|
|
|
"details": "Details",
|
|
|
|
|
"timestamp": "Timestamp",
|
|
|
|
|
"empty": "No audit log entries available.",
|
|
|
|
|
"notAvailable": "Audit log is currently not available.",
|
|
|
|
|
"entityId": "Entity ID"
|
|
|
|
|
},
|
|
|
|
|
"search": {
|
|
|
|
|
"title": "Search Results",
|
|
|
|
|
"filters": "Filters",
|
|
|
|
|
"entityType": "Entity Type",
|
|
|
|
|
"allTypes": "All Types",
|
|
|
|
|
"companies": "Companies",
|
|
|
|
|
"contacts": "Contacts",
|
|
|
|
|
"noResults": "No results found for \"{{query}}\".",
|
|
|
|
|
"resultsFor": "Results for \"{{query}}\"",
|
|
|
|
|
"dateFrom": "Date From",
|
|
|
|
|
"dateTo": "Date To",
|
|
|
|
|
"enterQuery": "Enter a search term."
|
2026-06-29 07:55:47 +02:00
|
|
|
},
|
|
|
|
|
"topbar": {
|
|
|
|
|
"tenant": "Tenant",
|
|
|
|
|
"switchTenant": "Switch Tenant",
|
|
|
|
|
"search": "Search...",
|
|
|
|
|
"notifications": "Notifications",
|
|
|
|
|
"userMenu": "User Menu",
|
|
|
|
|
"profile": "Profile",
|
|
|
|
|
"settings": "Settings",
|
|
|
|
|
"logout": "Sign Out"
|
|
|
|
|
},
|
|
|
|
|
"toast": {
|
|
|
|
|
"success": "Success",
|
|
|
|
|
"error": "Error",
|
|
|
|
|
"warning": "Warning",
|
|
|
|
|
"info": "Information"
|
|
|
|
|
},
|
|
|
|
|
"table": {
|
|
|
|
|
"page": "Page",
|
|
|
|
|
"of": "of",
|
|
|
|
|
"results": "results",
|
|
|
|
|
"perPage": "per page",
|
|
|
|
|
"previous": "Previous",
|
|
|
|
|
"next": "Next",
|
|
|
|
|
"sortAscending": "Sort ascending",
|
|
|
|
|
"sortDescending": "Sort descending",
|
|
|
|
|
"sortedBy": "Sorted by",
|
|
|
|
|
"empty": "No data available"
|
|
|
|
|
},
|
|
|
|
|
"confirmDialog": {
|
|
|
|
|
"title": "Confirmation Required",
|
|
|
|
|
"confirm": "Confirm",
|
|
|
|
|
"cancel": "Cancel"
|
|
|
|
|
},
|
|
|
|
|
"pagination": {
|
|
|
|
|
"previous": "Previous",
|
|
|
|
|
"next": "Next",
|
|
|
|
|
"page": "Page {{page}}",
|
|
|
|
|
"first": "First Page",
|
|
|
|
|
"last": "Last Page"
|
|
|
|
|
},
|
|
|
|
|
"emptyState": {
|
|
|
|
|
"title": "Nothing found",
|
|
|
|
|
"description": "No data available yet."
|
|
|
|
|
},
|
|
|
|
|
"validation": {
|
|
|
|
|
"required": "This field is required.",
|
|
|
|
|
"email": "Please enter a valid email address.",
|
|
|
|
|
"minLength": "At least {{count}} characters required.",
|
2026-06-29 11:01:39 +02:00
|
|
|
"maxLength": "At most {{count}} characters allowed.",
|
|
|
|
|
"passwordMismatch": "Passwords do not match."
|
2026-06-30 11:35:08 +02:00
|
|
|
},
|
|
|
|
|
"calendar": {
|
|
|
|
|
"title": "Calendar",
|
|
|
|
|
"kanbanTitle": "Task Kanban",
|
|
|
|
|
"today": "Today",
|
|
|
|
|
"previousMonth": "Previous month",
|
|
|
|
|
"nextMonth": "Next month",
|
|
|
|
|
"monthView": "Month view",
|
|
|
|
|
"kanbanView": "Kanban",
|
|
|
|
|
"weekdays": ["Mo", "Tu", "We", "Th", "Fr", "Sa", "Su"],
|
|
|
|
|
"months": [
|
|
|
|
|
"January", "February", "March", "April", "May", "June",
|
|
|
|
|
"July", "August", "September", "October", "November", "December"
|
|
|
|
|
],
|
|
|
|
|
"newAppointment": "New appointment",
|
|
|
|
|
"editAppointment": "Edit appointment",
|
|
|
|
|
"appointmentTitle": "Title",
|
|
|
|
|
"appointmentDescription": "Description",
|
|
|
|
|
"appointmentLocation": "Location",
|
|
|
|
|
"appointmentStart": "Start",
|
|
|
|
|
"appointmentEnd": "End",
|
|
|
|
|
"appointmentAllDay": "All day",
|
|
|
|
|
"appointmentPriority": "Priority",
|
|
|
|
|
"appointmentSubtype": "Type",
|
|
|
|
|
"appointmentCalendar": "Calendar",
|
|
|
|
|
"save": "Save",
|
|
|
|
|
"cancel": "Cancel",
|
|
|
|
|
"delete": "Delete",
|
|
|
|
|
"deleteEntryConfirm": "Really delete this entry?",
|
|
|
|
|
"noCalendars": "No calendars available. Please create one first.",
|
|
|
|
|
"noEntries": "No entries in this period.",
|
|
|
|
|
"loading": "Loading...",
|
|
|
|
|
"errorLoad": "Could not load entries.",
|
|
|
|
|
"errorSave": "Could not save entry.",
|
|
|
|
|
"created": "Entry created.",
|
|
|
|
|
"updated": "Entry updated.",
|
|
|
|
|
"deleted": "Entry deleted.",
|
|
|
|
|
"moved": "Entry moved.",
|
|
|
|
|
"kanban": {
|
|
|
|
|
"open": "Open",
|
|
|
|
|
"in_progress": "In Progress",
|
|
|
|
|
"done": "Done",
|
|
|
|
|
"cancelled": "Cancelled",
|
|
|
|
|
"empty": "No tasks in this column.",
|
|
|
|
|
"noTasks": "No tasks available."
|
|
|
|
|
},
|
|
|
|
|
"subtasks": {
|
|
|
|
|
"title": "Subtasks",
|
|
|
|
|
"addPlaceholder": "New subtask...",
|
|
|
|
|
"add": "Add",
|
|
|
|
|
"empty": "No subtasks yet.",
|
|
|
|
|
"added": "Subtask created.",
|
|
|
|
|
"updated": "Subtask updated."
|
|
|
|
|
},
|
|
|
|
|
"ics": {
|
|
|
|
|
"export": "Export ICS",
|
|
|
|
|
"import": "Import ICS",
|
|
|
|
|
"importSuccess": "{{count}} entries imported.",
|
|
|
|
|
"importPartial": "{{count}} imported, {{errors}} errors.",
|
|
|
|
|
"importFailed": "Import failed.",
|
|
|
|
|
"exportSuccess": "ICS file downloaded.",
|
|
|
|
|
"chooseFile": "Choose file",
|
|
|
|
|
"noCalendar": "Please select a calendar first."
|
|
|
|
|
},
|
|
|
|
|
"resources": {
|
|
|
|
|
"title": "Resource booking",
|
|
|
|
|
"select": "Select resource",
|
|
|
|
|
"none": "No resource",
|
|
|
|
|
"book": "Book resource",
|
|
|
|
|
"booked": "Resource booked.",
|
|
|
|
|
"conflict": "Conflict: this resource is already booked for this time range.",
|
|
|
|
|
"missingTimes": "The appointment needs both start and end time."
|
|
|
|
|
},
|
|
|
|
|
"sharing": {
|
|
|
|
|
"title": "Sharing",
|
|
|
|
|
"user": "User",
|
|
|
|
|
"group": "Group",
|
|
|
|
|
"userPlaceholder": "User ID",
|
|
|
|
|
"groupPlaceholder": "Group ID",
|
|
|
|
|
"permission": "Permission",
|
|
|
|
|
"permissionRead": "Read",
|
|
|
|
|
"permissionWrite": "Write",
|
|
|
|
|
"add": "Add",
|
|
|
|
|
"list": "Shares",
|
|
|
|
|
"empty": "No shares yet.",
|
|
|
|
|
"added": "Share added.",
|
|
|
|
|
"removed": "Share removed.",
|
|
|
|
|
"remove": "Remove"
|
|
|
|
|
},
|
|
|
|
|
"priority": {
|
|
|
|
|
"low": "Low",
|
|
|
|
|
"medium": "Medium",
|
|
|
|
|
"high": "High"
|
|
|
|
|
},
|
|
|
|
|
"status": {
|
|
|
|
|
"open": "Open",
|
|
|
|
|
"in_progress": "In Progress",
|
|
|
|
|
"done": "Done",
|
|
|
|
|
"cancelled": "Cancelled"
|
|
|
|
|
},
|
|
|
|
|
"subtype": {
|
|
|
|
|
"normal": "Normal",
|
|
|
|
|
"follow_up": "Follow up",
|
|
|
|
|
"private": "Private"
|
|
|
|
|
}
|
2026-06-29 07:55:47 +02:00
|
|
|
}
|
|
|
|
|
}
|