Spaces:
Runtime error
Runtime error
Download TaskTrackingSystem.Shared/Localization/AppLocalization.cs from Yuruyuruu/task-tracking-system: direct link, hf CLI and curl.
- Browser
- Download file 190 kB
-
https://huggingface.co/spaces/Yuruyuruu/task-tracking-system/resolve/main/TaskTrackingSystem.Shared/Localization/AppLocalization.cs
- Command line
-
hf download hf://spaces/Yuruyuruu/task-tracking-system/TaskTrackingSystem.Shared/Localization/AppLocalization.cs
-
curl -L -o AppLocalization.cs https://huggingface.co/spaces/Yuruyuruu/task-tracking-system/resolve/main/TaskTrackingSystem.Shared/Localization/AppLocalization.cs
190 kB
| using System.Globalization; | |
| using TaskTrackingSystem.Shared.Enums; | |
| namespace TaskTrackingSystem.Shared.Localization; | |
| public static class AppLocalization | |
| { | |
| private static readonly IReadOnlyDictionary<string, string> English = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) | |
| { | |
| ["common.workspace"] = "Workspace", | |
| ["common.signIn"] = "Sign In", | |
| ["common.signOut"] = "Sign Out", | |
| ["common.signOutTitle"] = "Sign Out?", | |
| ["common.signOutDescription"] = "Are you sure you want to sign out of Taskify?", | |
| ["common.cancel"] = "Cancel", | |
| ["common.confirm"] = "Confirm", | |
| ["common.confirmAction"] = "Confirm", | |
| ["common.areYouSure"] = "Are you sure?", | |
| ["common.cannotUndo"] = "This action cannot be undone.", | |
| ["common.yes"] = "Yes", | |
| ["common.no"] = "No", | |
| ["common.ok"] = "OK", | |
| ["common.score"] = "score", | |
| ["common.save"] = "Save", | |
| ["common.create"] = "Create", | |
| ["common.update"] = "Update", | |
| ["common.delete"] = "Delete", | |
| ["common.confirmSignOut"] = "Yes, Sign Out", | |
| ["common.listView"] = "List View", | |
| ["common.chartView"] = "Chart View", | |
| ["common.search"] = "Search", | |
| ["common.reset"] = "Reset", | |
| ["common.clear"] = "Clear", | |
| ["common.all"] = "All", | |
| ["common.loading"] = "Loading...", | |
| ["common.close"] = "Close", | |
| ["common.refresh"] = "Refresh", | |
| ["common.openNavigation"] = "Open navigation", | |
| ["common.closeNavigation"] = "Close navigation", | |
| ["common.index"] = "No.", | |
| ["common.exportExcel"] = "Export Excel", | |
| ["common.exportPdf"] = "Export PDF", | |
| ["common.actions"] = "Actions", | |
| ["common.status"] = "Status", | |
| ["common.priority"] = "Priority", | |
| ["common.assignee"] = "Assignee", | |
| ["common.project"] = "Project", | |
| ["common.task"] = "Task", | |
| ["common.taskProject"] = "Task / Project", | |
| ["common.issue"] = "Issue", | |
| ["common.user"] = "User", | |
| ["common.systemAdmin"] = "System Admin", | |
| ["common.role"] = "Role", | |
| ["common.module"] = "Module", | |
| ["common.name"] = "Name", | |
| ["common.firstName"] = "First name", | |
| ["common.lastName"] = "Last name", | |
| ["common.username"] = "Username", | |
| ["common.phone"] = "Phone", | |
| ["common.phoneNumber"] = "Phone number", | |
| ["common.keepHere"] = "Keep here", | |
| ["common.moveToEnglish"] = "Move to English", | |
| ["common.generating"] = "Generating...", | |
| ["common.translationNotConfigured"] = "Translation is not configured.", | |
| ["common.complete"] = "Complete", | |
| ["common.aiGenerated"] = "AI generated", | |
| ["common.needsReview"] = "Needs review", | |
| ["common.missing"] = "Missing", | |
| ["common.translationReview"] = "AI-generated content is ready for review. Check it before saving.", | |
| ["common.description"] = "Description", | |
| ["common.date"] = "Date", | |
| ["common.startDate"] = "Start Date", | |
| ["common.endDate"] = "End Date", | |
| ["common.dueDate"] = "Due Date", | |
| ["common.due"] = "Due", | |
| ["common.hours"] = "Hours", | |
| ["common.hoursAbbrev"] = "hrs", | |
| ["common.risk"] = "Risk", | |
| ["common.blocked"] = "Blocked", | |
| ["common.overdue"] = "Overdue", | |
| ["common.done"] = "Done", | |
| ["common.inProgress"] = "In Progress", | |
| ["common.todo"] = "To Do", | |
| ["common.resolved"] = "Resolved", | |
| ["common.clearStatus"] = "Clear", | |
| ["common.none"] = "None", | |
| ["common.unassigned"] = "Unassigned", | |
| ["common.noDescription"] = "No description", | |
| ["common.noneRecorded"] = "None recorded", | |
| ["common.na"] = "N/A", | |
| ["common.noAccessItems"] = "No access items are available for this role.", | |
| ["common.accessDenied"] = "Access Denied", | |
| ["common.error"] = "Error", | |
| ["common.accessDeniedDescription"] = "You do not have permission to access this page. Please contact your system administrator.", | |
| ["common.backToDashboard"] = "Back to Dashboard", | |
| ["common.noDataYet"] = "No data yet", | |
| ["common.createFirstEntry"] = "Create your first entry to get started.", | |
| ["common.loadingAuditLogs"] = "Loading audit logs...", | |
| ["common.loadingUsers"] = "Loading users...", | |
| ["common.loadingProjects"] = "Loading projects...", | |
| ["common.loadingTasks"] = "Loading tasks...", | |
| ["common.searchPlaceholder"] = "Search by name, email, username...", | |
| ["common.searchTasks"] = "Search Task", | |
| ["common.searchByUser"] = "Search by user, action, module, or details...", | |
| ["common.searchByTitle"] = "Search by title or project...", | |
| ["common.searchByTitleOrProject"] = "Search by title or project...", | |
| ["common.searchProjects"] = "Search projects...", | |
| ["common.searchTeamMembers"] = "Search team members...", | |
| ["common.searchProjectMembers"] = "Search project members...", | |
| ["common.searchIssues"] = "Search issue title, description or assignee...", | |
| ["common.searchByIssueAssignee"] = "Search Issues / Assignee", | |
| ["common.searchUsers"] = "Search Users", | |
| ["common.searchByName"] = "Search by name...", | |
| ["common.newUser"] = "New User", | |
| ["common.taskCode"] = "Task Code", | |
| ["common.selectedMember"] = "Selected member", | |
| ["common.loadingSpinner"] = "Loading...", | |
| ["common.loadingIssues"] = "Loading issues...", | |
| ["common.loadingTasksAndUsers"] = "Loading tasks and users...", | |
| ["common.loadingProjectsAndUsers"] = "Loading projects and users...", | |
| ["common.loadingProjectMembers"] = "Loading project members...", | |
| ["common.loadingMembers"] = "Loading members...", | |
| ["common.noResults"] = "No results found.", | |
| ["pagination.showing"] = "Showing", | |
| ["pagination.of"] = "of", | |
| ["pagination.results"] = "results", | |
| ["pagination.rowsPerPage"] = "Rows per page", | |
| ["pagination.firstPage"] = "First page", | |
| ["pagination.previousPage"] = "Previous page", | |
| ["pagination.nextPage"] = "Next page", | |
| ["pagination.lastPage"] = "Last page", | |
| ["common.notApplicable"] = "Not applicable", | |
| ["common.selectAll"] = "Select All", | |
| ["common.deselectAll"] = "Deselect All", | |
| ["common.selected"] = "selected", | |
| ["common.viewDetails"] = "View details", | |
| ["common.currentLanguage"] = "Switch language", | |
| ["common.languageEnglish"] = "English", | |
| ["common.languageBurmese"] = "Burmese", | |
| ["common.allTasks"] = "All tasks", | |
| ["common.allProjects"] = "All projects", | |
| ["common.allRoles"] = "All Roles", | |
| ["common.noProjectsFound"] = "No projects found.", | |
| ["common.noTasksFound"] = "No tasks found.", | |
| ["common.noTeamMembersFound"] = "No team members match your search criteria.", | |
| ["common.noMembersMatchSearch"] = "No members match the current search.", | |
| ["common.noTaskSelected"] = "No Task Selected", | |
| ["task.selectTaskPrompt"] = "Select a task from the left panel to assign it to a team member.", | |
| ["common.noProjectSelected"] = "No Project Selected", | |
| ["common.noProject"] = "No Project", | |
| ["common.currentlyAssigningTask"] = "Currently Assigning Task", | |
| ["common.currentlyManaging"] = "Currently Managing", | |
| ["common.selectProject"] = "Select Project", | |
| ["common.selectTask"] = "Select task...", | |
| ["common.issueTitle"] = "Issue Title", | |
| ["common.issueDescription"] = "Description", | |
| ["error.title"] = "Error", | |
| ["error.heading"] = "Error", | |
| ["error.processingRequest"] = "An error occurred while processing your request.", | |
| ["error.requestId"] = "Request ID", | |
| ["error.developmentMode"] = "Development Mode", | |
| ["error.developmentDetails"] = "Switching to the Development environment will display more detailed information about the error that occurred.", | |
| ["error.developmentWarning"] = "The Development environment should not be enabled for deployed applications.", | |
| ["error.developmentSensitive"] = "It can expose sensitive exception details to end users.", | |
| ["error.developmentInstructions"] = "For local debugging, set the ASPNETCORE_ENVIRONMENT environment variable to Development and restart the application.", | |
| ["common.blockedStatus"] = "Blocked Status", | |
| ["common.escalationLevel"] = "Escalation Level", | |
| ["common.blockedBy"] = "Blocked By", | |
| ["common.delayReason"] = "Delay Reason", | |
| ["common.actualHours"] = "Actual Hours", | |
| ["common.estimatedHours"] = "Estimated Hours", | |
| ["common.assignedToMeOnly"] = "Assigned to me only", | |
| ["common.saveAssignment"] = "Save Assignment", | |
| ["common.saveAssignmentChanges"] = "Save Assignment Changes", | |
| ["common.assignmentSaved"] = "Assignment saved successfully!", | |
| ["task.assigneeUpdated"] = "Task assignee updated successfully!", | |
| ["task.failedUpdateAssignee"] = "Failed to update assignee.", | |
| ["task.failedLoadProjectMembers"] = "Failed to load project members.", | |
| ["task.assigneeMustBelong"] = "Task assignee must belong to the selected project.", | |
| ["task.titleRequiredEitherLanguage"] = "At least one task title is required.", | |
| ["task.saveAssignmentTitle"] = "Save Assignment?", | |
| ["task.saveAssignmentConfirm"] = "Are you sure you want to save this task assignment?", | |
| ["project.saveAssignmentTitle"] = "Save Assignment?", | |
| ["project.saveAssignmentConfirm"] = "Are you sure you want to save these project member assignments?", | |
| ["issue.yesSave"] = "Yes, Save", | |
| ["common.saveChanges"] = "Save Changes", | |
| ["common.addIssue"] = "Add Issue", | |
| ["common.addIssueTitle"] = "Add Issue?", | |
| ["issue.saveAddConfirmMessage"] = "Are you sure you want to save this issue?", | |
| ["issue.yesAdd"] = "Yes, Add", | |
| ["common.editIssue"] = "Edit Issue", | |
| ["common.noTaskSelectedForIssue"] = "No task selected", | |
| ["common.unassignedMembers"] = "Unassigned", | |
| ["common.removeOwnerFromTask"] = "Remove owner from this task", | |
| ["page.dashboard"] = "Dashboard", | |
| ["page.managerDashboard"] = "Manager Dashboard", | |
| ["page.employeeDashboard"] = "Employee Dashboard", | |
| ["page.projects"] = "Projects", | |
| ["page.reports"] = "Reports", | |
| ["page.projectAssignment"] = "Project Assignment", | |
| ["page.tasks"] = "Tasks", | |
| ["page.kanbanBoard"] = "Kanban Board", | |
| ["page.taskAssignment"] = "Task Assignment", | |
| ["page.taskDetails"] = "Task Details", | |
| ["page.issues"] = "Issues", | |
| ["page.addIssue"] = "Add Issue", | |
| ["page.taskReport"] = "Task Report", | |
| ["page.timeTracking"] = "Time Tracking", | |
| ["page.projectProgress"] = "Project Progress", | |
| ["page.overdueTasks"] = "Overdue Tasks", | |
| ["page.employeeReport"] = "Employee Report", | |
| ["page.rolesAccess"] = "Roles & Access", | |
| ["page.users"] = "Users", | |
| ["page.auditLogs"] = "Audit Logs", | |
| ["page.issueReport"] = "Issue Report", | |
| ["page.projectList"] = "Project List", | |
| ["page.taskList"] = "Task List", | |
| ["page.taskBacklog"] = "Task Backlog", | |
| ["page.roleLayouts"] = "Role Layouts", | |
| ["page.dashboard.desc"] = "A quick overview of work, risk, and progress.", | |
| ["page.managerDashboard.desc"] = "Track projects, people, and delivery health.", | |
| ["page.employeeDashboard.desc"] = "Focus on your tasks, due dates, and progress.", | |
| ["page.projects.desc"] = "Manage project plans, timelines, and assignments.", | |
| ["page.projectAssignment.desc"] = "Assign team members to the right projects.", | |
| ["page.tasks.desc"] = "Review, filter, and update work items.", | |
| ["page.kanbanBoard.desc"] = "Move work through status columns.", | |
| ["page.taskAssignment.desc"] = "Assign tasks to project members.", | |
| ["page.taskDetails.desc"] = "Review task progress, comments, and updates.", | |
| ["page.issues.desc"] = "Track blockers, notes, and daily work progress.", | |
| ["page.addIssue.desc"] = "Record a new issue against a task.", | |
| ["page.taskReport.desc"] = "Analyze task activity and export task reports.", | |
| ["page.timeTracking.desc"] = "Review effort by task, project, and assignee.", | |
| ["page.projectProgress.desc"] = "Monitor delivery health across active projects.", | |
| ["page.overdueTasks.desc"] = "Focus on delayed work that needs attention.", | |
| ["page.employeeReport.desc"] = "See how work is distributed across people.", | |
| ["page.rolesAccess.desc"] = "Control user roles, menus, and permissions.", | |
| ["page.users.desc"] = "Manage people, status, and account details.", | |
| ["page.auditLogs.desc"] = "Review system activity and changes.", | |
| ["page.issueReport.desc"] = "Track daily execution, backlog health, and issue-level effort.", | |
| ["page.projectList.desc"] = "Review project details and progress at a glance.", | |
| ["page.taskList.desc"] = "Review, filter, and update task records.", | |
| ["page.taskBacklog.desc"] = "See unassigned and queued work items.", | |
| ["page.roleLayouts.desc"] = "Review access group layouts and permissions.", | |
| ["dashboard.overview"] = "Overview", | |
| ["dashboard.welcomeBack"] = "Welcome back, {name}", | |
| ["dashboard.adminIntro"] = "Projects, users, and team progress at a glance.", | |
| ["dashboard.totalUsers"] = "Total users", | |
| ["dashboard.totalProjects"] = "Total projects", | |
| ["dashboard.activeTasks"] = "Active tasks", | |
| ["dashboard.completionRate"] = "Completion rate", | |
| ["dashboard.projectActivity"] = "Project Activity", | |
| ["dashboard.projectActivityDesc"] = "Active vs completed tasks per month.", | |
| ["dashboard.taskDistribution"] = "Task Distribution", | |
| ["dashboard.totalTasks"] = "{count} total tasks", | |
| ["dashboard.completedCount"] = "Completed: {count}", | |
| ["dashboard.activeCount"] = "Active: {count}", | |
| ["dashboard.allProjects"] = "All Projects", | |
| ["dashboard.projectsSnapshot"] = "A quick snapshot of the current project list.", | |
| ["dashboard.viewAll"] = "View all", | |
| ["dashboard.tasksUnit"] = "tasks", | |
| ["dashboard.calendar"] = "Calendar", | |
| ["dashboard.calendarDesc"] = "Today and upcoming project starts.", | |
| ["dashboard.events"] = "Events", | |
| ["dashboard.projectTimeline"] = "Project Timeline", | |
| ["dashboard.projectTimelineDesc"] = "Browse every project in a gantt view and adjust the month window below.", | |
| ["dashboard.from"] = "From", | |
| ["dashboard.to"] = "To", | |
| ["dashboard.noProjectsToDisplay"] = "No projects to display.", | |
| ["dashboard.thisMonth"] = "this month", | |
| ["dashboard.vsLastMonth"] = "vs last mo", | |
| ["dashboard.upcoming"] = "Upcoming", | |
| ["dashboard.active"] = "Active", | |
| ["dashboard.queued"] = "queued", | |
| ["dashboard.soon"] = "soon", | |
| ["dashboard.late"] = "late", | |
| ["dashboard.employeeTitle"] = "Employee Dashboard", | |
| ["dashboard.teamMember"] = "Team Member", | |
| ["dashboard.myWork"] = "My Work", | |
| ["dashboard.employeeIntro"] = "Tasks, deadlines, and your progress in one place.", | |
| ["dashboard.viewTasks"] = "View Tasks", | |
| ["dashboard.loadingDashboard"] = "Loading dashboard...", | |
| ["dashboard.tasksInProgressDesc"] = "Tasks currently being worked on", | |
| ["dashboard.noTasksInProgress"] = "No tasks in progress right now.", | |
| ["dashboard.todoUpcoming"] = "To Do & Upcoming", | |
| ["dashboard.todoUpcomingDesc"] = "Tasks waiting for action or coming up soon", | |
| ["dashboard.noUpcomingTasks"] = "No upcoming tasks found.", | |
| ["dashboard.overdueDesc"] = "Tasks past their due date", | |
| ["dashboard.noOverdueTasks"] = "No overdue tasks. Nice work.", | |
| ["dashboard.relatedTasks"] = "Related Tasks", | |
| ["dashboard.tasksMarkedOn"] = "Tasks marked on {date}", | |
| ["dashboard.noTasksForDay"] = "No tasks are scheduled for this day.", | |
| ["dashboard.dueSoon"] = "Due Soon", | |
| ["dashboard.managerTitle"] = "Manager Dashboard", | |
| ["dashboard.teamView"] = "Team View", | |
| ["dashboard.myProjects"] = "My Projects", | |
| ["dashboard.managerIntro"] = "Track your team, project health, and weekly task progress in one place.", | |
| ["dashboard.pendingTasksNotice"] = "{count} tasks are still pending.", | |
| ["dashboard.taskReport"] = "Task Report", | |
| ["dashboard.weeklyTaskProgress"] = "Weekly Task Progress", | |
| ["dashboard.weeklyTaskProgressDesc"] = "Completed vs pending tasks per week", | |
| ["dashboard.teamProgress"] = "Team Progress", | |
| ["dashboard.teamProgressDesc"] = "Members with active workload", | |
| ["dashboard.noAssignedWork"] = "No assigned work yet.", | |
| ["dashboard.upcomingDeadlines"] = "Upcoming Deadlines", | |
| ["dashboard.projectsEndingSoon"] = "Projects ending soon", | |
| ["dashboard.ends"] = "ends", | |
| ["dashboard.noUpcomingDeadlines"] = "No upcoming deadlines.", | |
| ["dashboard.clickViewTasks"] = "Click \"View Tasks\" to drill in", | |
| ["dashboard.complete"] = "Complete", | |
| ["dashboard.noProjectsForAccount"] = "No projects available for this account.", | |
| ["dashboard.activeProjects"] = "Active Projects", | |
| ["dashboard.totalTasksMetric"] = "Total Tasks", | |
| ["dashboard.teamMembers"] = "Team Members", | |
| ["dashboard.overdueTasks"] = "Overdue Tasks", | |
| ["dashboard.allActive"] = "all active", | |
| ["dashboard.acrossProjects"] = "across projects", | |
| ["dashboard.yourTeam"] = "your team", | |
| ["dashboard.needsAttention"] = "needs attention", | |
| ["dashboard.atRisk"] = "At Risk", | |
| ["dashboard.pending"] = "Pending", | |
| ["dashboard.today"] = "Today", | |
| ["dashboard.done"] = "Done", | |
| ["dashboard.daysAgo"] = "{count}d ago", | |
| ["dashboard.daysLeft"] = "{count}d left", | |
| ["dashboard.dueToday"] = "Due today", | |
| ["status.todo"] = "To Do", | |
| ["status.inprogress"] = "In Progress", | |
| ["status.done"] = "Done", | |
| ["status.overdue"] = "Overdue", | |
| ["status.blocked"] = "Blocked", | |
| ["status.clear"] = "Clear", | |
| ["status.resolved"] = "Resolved", | |
| ["status.uncompleted"] = "Uncompleted", | |
| ["priority.low"] = "Low", | |
| ["priority.medium"] = "Medium", | |
| ["priority.high"] = "High", | |
| ["status.active"] = "Active", | |
| ["status.inactive"] = "Inactive", | |
| ["field.name"] = "Name", | |
| ["field.title"] = "Title", | |
| ["field.email"] = "Email", | |
| ["field.phone"] = "Phone", | |
| ["field.created"] = "Created", | |
| ["field.taskCode"] = "Task Code", | |
| ["field.ipAddress"] = "IP Address", | |
| ["project.manageAll"] = "Manage all projects.", | |
| ["project.employeesInProject"] = "Employees in this project", | |
| ["project.yourAssigned"] = "Your assigned projects.", | |
| ["project.newProject"] = "New Project", | |
| ["project.editProject"] = "Edit Project", | |
| ["project.createProject"] = "Create Project", | |
| ["project.untitledProject"] = "Untitled project", | |
| ["project.noProjectsYet"] = "No projects yet", | |
| ["project.createFirstProject"] = "Create your first project to get started.", | |
| ["project.noAssignedProjects"] = "You have not been assigned to any projects.", | |
| ["project.projectName"] = "Project name", | |
| ["project.projectDescriptionOptional"] = "Project description (optional)", | |
| ["project.updateTitle"] = "Update Project?", | |
| ["project.updateConfirm"] = "Are you sure you want to update this project?", | |
| ["project.createTitle"] = "Create Project?", | |
| ["project.createConfirm"] = "Are you sure you want to create this project?", | |
| ["project.deleteTitle"] = "Delete Project?", | |
| ["project.deleteConfirm"] = "Are you sure you want to delete this project? This action cannot be undone.", | |
| ["project.created"] = "Project created successfully!", | |
| ["project.updated"] = "Project updated successfully!", | |
| ["project.deleted"] = "Project deleted successfully!", | |
| ["project.failedDelete"] = "Failed to delete project.", | |
| ["task.manageAll"] = "View and manage all tasks across projects.", | |
| ["task.filterByProject"] = "Filter by Project", | |
| ["task.yourAssigned"] = "Your assigned tasks.", | |
| ["task.newTask"] = "New Task", | |
| ["task.editTask"] = "Edit Task", | |
| ["task.createTask"] = "Create Task", | |
| ["task.untitledTask"] = "Untitled task", | |
| ["task.noTasksYet"] = "No tasks yet", | |
| ["task.createFirstTask"] = "Create your first task to get started.", | |
| ["task.taskTitle"] = "Task title", | |
| ["task.taskDescription"] = "Task description", | |
| ["task.selectProject"] = "Select project...", | |
| ["task.loadingBoard"] = "Loading board...", | |
| ["task.dragHint"] = "Drag tasks between columns to update their status.", | |
| ["task.viewingArchived"] = "Viewing archived tasks.", | |
| ["task.backToBoard"] = "Back to Board", | |
| ["task.archivedTasks"] = "Archived Tasks", | |
| ["task.archived"] = "Archived", | |
| ["task.dropTasksHere"] = "Drop tasks here", | |
| ["task.noTasks"] = "No tasks", | |
| ["task.of"] = "of", | |
| ["task.due"] = "Due", | |
| ["task.previousPage"] = "Previous page", | |
| ["task.nextPage"] = "Next page", | |
| ["task.createTitle"] = "Create Task?", | |
| ["task.createConfirm"] = "Are you sure you want to create this task?", | |
| ["task.updateTitle"] = "Update Task?", | |
| ["task.updateConfirm"] = "Are you sure you want to update this task?", | |
| ["task.deleteTitle"] = "Delete Task?", | |
| ["task.deleteConfirm"] = "Are you sure you want to delete this task? This action cannot be undone.", | |
| ["task.archiveDoneTitle"] = "Archive Done Tasks?", | |
| ["task.archiveDoneInProject"] = "Archive {count} Done task(s) in this project? Archived tasks will be hidden from active views.", | |
| ["task.archiveDoneAll"] = "Archive {count} Done task(s) across all visible projects? Archived tasks will be hidden from active views.", | |
| ["task.noDoneToArchive"] = "No Done tasks to archive.", | |
| ["task.created"] = "Task created successfully!", | |
| ["task.updated"] = "Task updated successfully!", | |
| ["task.deleted"] = "Task deleted successfully!", | |
| ["task.failedCreate"] = "Failed to create task.", | |
| ["task.failedDelete"] = "Failed to delete task.", | |
| ["task.failedMove"] = "Failed to move task. Please try again.", | |
| ["task.failedArchiveDone"] = "Failed to archive Done tasks.", | |
| ["task.archivedOneDone"] = "Archived 1 Done task.", | |
| ["task.archivedManyDone"] = "Archived {count} Done tasks.", | |
| ["task.archive"] = "Archive", | |
| ["role.rolesAccess"] = "Roles & Access", | |
| ["role.rolesAccessDesc"] = "Manage roles, assign access and permissions, and control visibility.", | |
| ["role.newRole"] = "New Role", | |
| ["role.editRole"] = "Edit Role", | |
| ["role.createNewRole"] = "Create New Role", | |
| ["role.roleName"] = "Role Name", | |
| ["role.roleNameBurmese"] = "Burmese Name", | |
| ["role.roleNameEnglish"] = "English Name", | |
| ["role.descriptionBurmese"] = "Burmese Description", | |
| ["role.descriptionEnglish"] = "English Description", | |
| ["role.searchByName"] = "Search roles by name...", | |
| ["role.loadingRoles"] = "Loading roles...", | |
| ["role.noRolesYet"] = "No roles yet", | |
| ["role.createFirstRole"] = "Create your first role to get started.", | |
| ["role.manageAccess"] = "Manage Access", | |
| ["role.access"] = "Access", | |
| ["role.assignAccess"] = "Assign Access", | |
| ["role.accessHint"] = "Pages control where the role can go. Actions control what it can do.", | |
| ["role.createHint"] = "Choose what this role can see and do on the right. It will be saved with the role.", | |
| ["role.descriptionPlaceholder"] = "What can this role do?", | |
| ["role.examplePlaceholder"] = "e.g. Manager, Viewer", | |
| ["role.updateTitle"] = "Update Role?", | |
| ["role.updateConfirm"] = "Are you sure you want to update this role?", | |
| ["role.createTitle"] = "Create Role?", | |
| ["role.createConfirm"] = "Are you sure you want to create this role?", | |
| ["role.deleteTitle"] = "Delete Role?", | |
| ["role.deleteConfirm"] = "Are you sure you want to delete this role? This action cannot be undone.", | |
| ["role.cannotDeleteTitle"] = "Cannot Delete Role", | |
| ["role.cannotDeleteUsers"] = "You can't delete this role because there are {count} users in this role.", | |
| ["role.created"] = "Role created successfully!", | |
| ["role.updated"] = "Role updated successfully!", | |
| ["role.deleted"] = "Role deleted successfully!", | |
| ["role.failedDelete"] = "Failed to delete role.", | |
| ["role.saveAccess"] = "Save Access", | |
| ["role.accessConfigured"] = "Configure access and permissions", | |
| ["role.permissionsHint"] = "Menus open pages. Permissions unlock actions.", | |
| ["role.changeApplyAfterSave"] = "Changes apply immediately after saving.", | |
| ["role.noAccessItemsFound"] = "No access items found in database.", | |
| ["role.noPagesMatchSearch"] = "No pages or permissions match your search.", | |
| ["role.pagePermissionHint"] = "Page access lets the role open this section. Permissions let it use the buttons and actions inside.", | |
| ["role.nothingInsidePage"] = "Nothing else is available inside this page.", | |
| ["role.crudPermissions"] = "CRUD permissions for this page", | |
| ["role.willBeSaved"] = "will be saved", | |
| ["role.selectedItems"] = "{count} selected item(s)", | |
| ["role.accessSaved"] = "Access saved successfully.", | |
| ["role.failedLoadAccess"] = "Failed to load access items. Please try again.", | |
| ["role.failedSaveAccess"] = "Failed to save access.", | |
| ["common.unknown"] = "Unknown", | |
| ["common.saving"] = "Saving...", | |
| ["common.creating"] = "Creating...", | |
| ["common.searchRoles"] = "Search Roles", | |
| ["common.searchTasksByTitle"] = "Search tasks by title...", | |
| ["common.allStatuses"] = "All Statuses", | |
| ["common.allPriorities"] = "All Priorities", | |
| ["common.budgetedHours"] = "Budgeted Hours", | |
| ["common.budgetedHoursOptional"] = "Budgeted hours (optional)", | |
| ["action.search"] = "Search", | |
| ["action.reset"] = "Reset", | |
| ["action.exportExcel"] = "Export Excel", | |
| ["action.exportPdf"] = "Export PDF", | |
| ["action.edit"] = "Edit", | |
| ["action.delete"] = "Delete", | |
| ["action.add"] = "Add", | |
| ["action.create"] = "Create", | |
| ["action.update"] = "Update", | |
| ["action.save"] = "Save", | |
| ["action.assign"] = "Assign", | |
| ["action.viewTasks"] = "View Tasks", | |
| ["action.archiveDone"] = "Archive Done", | |
| ["action.clear"] = "Clear", | |
| ["result.loading"] = "Loading...", | |
| ["result.saved"] = "Saved successfully.", | |
| ["result.created"] = "Created successfully.", | |
| ["result.updated"] = "Updated successfully.", | |
| ["result.deleted"] = "Deleted successfully.", | |
| ["report.periodFilter"] = "Period", | |
| ["report.daily"] = "Daily (Today)", | |
| ["report.monthly"] = "Monthly (This Month)", | |
| ["report.yearly"] = "Yearly (This Year)", | |
| ["report.customRange"] = "Custom Range", | |
| ["report.selectedProject"] = "Selected project", | |
| ["report.openIssues"] = "Open issues", | |
| ["report.lastActivity"] = "Last activity", | |
| ["report.noTasksFound"] = "No Tasks Found", | |
| ["report.noTasksFoundDesc"] = "There are no tasks matching your filters. Try adjusting your search query or filters.", | |
| ["report.noIssuesFound"] = "No issues found", | |
| ["report.noIssuesFoundDesc"] = "No issues matched the current report filters.", | |
| ["report.healthCritical"] = "Critical", | |
| ["report.healthAtRisk"] = "At Risk", | |
| ["report.healthGood"] = "Healthy", | |
| ["report.healthWatch"] = "Watch", | |
| ["report.health"] = "Health", | |
| ["report.delay"] = "Delay", | |
| ["report.noEffortEntries"] = "No effort entries", | |
| ["report.noEffortEntriesDesc"] = "No timesheet effort entries matched your filters.", | |
| ["report.totalEstimatedEffort"] = "Total Estimated Effort", | |
| ["report.variance"] = "Variance", | |
| ["report.utilization"] = "Utilization", | |
| ["report.timesheetEntries"] = "timesheet issue entry(s)", | |
| ["report.delayType"] = "Delay Type", | |
| ["report.days"] = "days", | |
| ["report.dueIn"] = "Due in", | |
| ["report.noReasonRecorded"] = "No reason recorded", | |
| ["report.noOverdueTasksDesc"] = "Great! No tasks are overdue or at risk based on the current filters.", | |
| ["report.aheadOfSchedule"] = "Ahead of Schedule", | |
| ["report.blockedOverdue"] = "Blocked / Overdue", | |
| ["report.noProjectData"] = "No project data found matching criteria.", | |
| ["report.employee"] = "Employee", | |
| ["report.assignedIssues"] = "Assigned Issues", | |
| ["report.openOverdue"] = "Open / Overdue", | |
| ["report.workload"] = "Workload", | |
| ["report.trend"] = "Trend", | |
| ["report.workloadHigh"] = "High", | |
| ["report.workloadLight"] = "Light", | |
| ["report.workloadBalanced"] = "Balanced", | |
| ["report.trendImproving"] = "Improving", | |
| ["report.trendDeclining"] = "Declining", | |
| ["report.trendStable"] = "Stable", | |
| ["report.noEmployeeData"] = "No employee data found matching criteria.", | |
| ["report.estimatedVsActual"] = "Estimated vs actual effort", | |
| ["report.utilizationGauge"] = "Utilization gauge", | |
| ["report.estimateAccuracy"] = "Estimate accuracy", | |
| ["report.effortByProject"] = "Effort by project", | |
| ["report.effortLeaderboard"] = "Effort leaderboard", | |
| ["report.workloadHeatmap"] = "Workload heatmap", | |
| ["report.capacitySupportList"] = "Capacity support list", | |
| ["report.completedVsOpenIssues"] = "Completed vs open issues", | |
| ["report.overdueSupport"] = "Overdue support", | |
| ["report.completionPattern"] = "Completion pattern", | |
| ["report.projectHealthMatrix"] = "Project health matrix", | |
| ["report.completionVsRisk"] = "Completion vs risk", | |
| ["report.timelineSummary"] = "Timeline summary", | |
| ["report.openOverdueBlockingIssues"] = "Open, overdue, and blocking issues by project", | |
| ["report.topAtRiskProjects"] = "Top at-risk projects", | |
| ["report.keyInsights"] = "Key Insights", | |
| ["validation.startDateRequired"] = "Start date is required.", | |
| ["validation.dueDateRequired"] = "Due date is required.", | |
| ["validation.dueDateBeforeStart"] = "Due date cannot be earlier than start date.", | |
| ["validation.projectNameRequired"] = "Project name is required.", | |
| ["validation.endDateBeforeStart"] = "End date cannot be before start date.", | |
| ["validation.taskTitleRequired"] = "Task title is required.", | |
| ["validation.selectProjectRequired"] = "Please select a project.", | |
| ["validation.selectTaskRequired"] = "Please select a task.", | |
| ["validation.issueTitleRequired"] = "Issue title is required.", | |
| ["validation.completeNameRequired"] = "Enter a complete name in Burmese or English.", | |
| ["validation.roleNameRequired"] = "Role name is required.", | |
| ["validation.passwordMinLength"] = "Password must be at least 6 characters.", | |
| ["validation.usernameMinLength"] = "Username must be at least 3 characters long.", | |
| ["validation.usernameNoSpaces"] = "Username cannot contain spaces.", | |
| ["validation.usernameInvalidCharacters"] = "Username cannot contain spaces, and can only contain letters, numbers, underscores (_), and periods (.)", | |
| ["validation.passwordMinLengthRule"] = "Password must be at least 8 characters long.", | |
| ["validation.passwordComplexityRule"] = "Password must contain at least one uppercase letter, one lowercase letter, one number, and one special character.", | |
| ["validation.fillAllFields"] = "Please fill in all required fields.", | |
| ["common.password"] = "Password", | |
| ["common.usernameOrEmail"] = "Username or Email", | |
| ["common.email"] = "Email", | |
| ["auth.registerAccountTitle"] = "Create your Taskify account", | |
| ["auth.alreadyHaveAccess"] = "Already have access?", | |
| ["auth.firstName"] = "First Name", | |
| ["auth.lastName"] = "Last Name", | |
| ["auth.firstNamePlaceholder"] = "First name", | |
| ["auth.lastNamePlaceholder"] = "Last name", | |
| ["auth.phone"] = "Phone (Optional)", | |
| ["auth.phonePlaceholder"] = "Phone number", | |
| ["auth.register"] = "Register", | |
| ["auth.registerTitle"] = "Register - Taskify", | |
| ["auth.usernameOrEmail"] = "Username or Email", | |
| ["auth.enterUsernameOrEmail"] = "Enter username or email", | |
| ["auth.recoveryCode"] = "Recovery Code", | |
| ["auth.enterRecoveryCode"] = "Enter recovery code", | |
| ["auth.newPassword"] = "New Password", | |
| ["auth.resetPasswordHelp"] = "Use the recovery code configured in the API to set a new password.", | |
| ["auth.unableToResetPassword"] = "Unable to reset password.", | |
| ["task.loadingDetails"] = "Loading task details...", | |
| ["task.notFound"] = "Task Not Found", | |
| ["task.notFoundDesc"] = "The task you are looking for does not exist or has been deleted.", | |
| ["task.editTitle"] = "Edit title", | |
| ["task.saving"] = "Saving...", | |
| ["task.properties"] = "Properties", | |
| ["comment.comments"] = "Comments", | |
| ["comment.deleteComment"] = "Delete comment", | |
| ["comment.deleteCommentTitle"] = "Delete Comment?", | |
| ["comment.deleteCommentConfirm"] = "Are you sure you want to delete this comment? This action cannot be undone.", | |
| ["comment.noComments"] = "No comments posted yet.", | |
| ["comment.startConversation"] = "Start the conversation below!", | |
| ["comment.writeComment"] = "Write a comment...", | |
| ["theme.switchToDarkMode"] = "Switch to dark mode", | |
| ["theme.switchToLightMode"] = "Switch to light mode", | |
| ["page.loadingPage"] = "Loading page...", | |
| ["page.notFound"] = "Page not found.", | |
| ["report.projectHealthMatrixInsight"] = "Projects in the upper-right combine low progress with active issue pressure.", | |
| ["report.actualEffortAboveEstimate"] = "Actual effort is {hours}h above estimate.", | |
| ["report.actualEffortUnderEstimate"] = "Actual effort is {hours}h under estimate.", | |
| ["report.utilizationAbovePlan"] = "Utilization is above plan; review estimates and blockers.", | |
| ["report.utilizationBelowPlan"] = "Tracked actual effort is below plan; confirm work is being logged.", | |
| ["report.utilizationCloseToPlan"] = "Utilization is close to the planning range.", | |
| ["report.accuracyExceedingEstimate"] = "More issues are exceeding estimate than staying within it.", | |
| ["report.accuracyWithinEstimate"] = "Most issues are within or under their estimates.", | |
| ["report.remainingEstimate"] = "Remaining estimate", | |
| ["report.overLabel"] = "Over", | |
| ["report.overEstimateDesc"] = "over estimate", | |
| ["report.legend"] = "Legend", | |
| ["report.riskSeverity"] = "Risk severity", | |
| ["report.lowUrgency"] = "Low urgency", | |
| ["report.highUrgency"] = "High urgency", | |
| ["report.lowRisk"] = "Low risk", | |
| ["report.highRisk"] = "High risk", | |
| ["report.noMatrixData"] = "No matrix data available.", | |
| ["report.riskMatrix"] = "Risk matrix", | |
| ["report.noProjects"] = "No projects", | |
| ["report.urgencyLabel"] = "urgency", | |
| ["report.projectsCount"] = "project(s)", | |
| ["report.itemsCount"] = "item(s)", | |
| ["report.medium"] = "Medium", | |
| ["report.noComparisonData"] = "No comparison data available.", | |
| ["report.projectHealthMatrixDesc"] = "Progress health against issue risk.", | |
| ["report.completionVsRiskInsight"] = "Lower completion with higher issue pressure should be reviewed first.", | |
| ["report.reviewNow"] = "Review now", | |
| ["report.lowCompletionHighRisk"] = "Low completion · high risk", | |
| ["report.watchClosely"] = "Watch closely", | |
| ["report.highCompletionHighRisk"] = "High completion · high risk", | |
| ["report.recoverPlan"] = "Recover plan", | |
| ["report.lowCompletionLowRisk"] = "Low completion · low risk", | |
| ["report.onTrack"] = "On track", | |
| ["report.highCompletionLowRisk"] = "High completion · low risk", | |
| ["report.percentComplete"] = "{percent}% complete", | |
| ["report.color"] = "Color", | |
| ["report.topAtRiskProjectsDesc"] = "Projects needing planning attention first.", | |
| ["report.topAtRiskProjectsInsight"] = "Risk blends overdue, blocked, open issues, and project health.", | |
| ["report.timelineSummaryDesc"] = "Project schedule window with completion overlay.", | |
| ["report.timelineSummaryInsight"] = "This gives the planning horizon without leaving the report.", | |
| ["report.issuesCompositionByProject"] = "Open, overdue, and blocking issues by project", | |
| ["report.issuesCompositionByProjectDesc"] = "Issue composition across the project portfolio.", | |
| ["report.issuesCompositionByProjectInsight"] = "Open work is normal; overdue and blocked work are the triage signal.", | |
| ["report.noAtRiskProjects"] = "No at-risk projects in the current filter.", | |
| ["report.needsSupport"] = "needs support", | |
| ["report.tracked"] = "tracked", | |
| ["report.completedTasks"] = "Completed tasks", | |
| ["report.assignedTasks"] = "Assigned tasks", | |
| ["report.capacityRisk"] = "Capacity risk", | |
| ["report.noIssues"] = "No issues", | |
| ["report.open"] = "open", | |
| ["report.timeTrackingTitle"] = "Time & Effort Tracking Report", | |
| ["report.timeTrackingHeading"] = "Time & Effort Tracking", | |
| ["report.timeTrackingDesc"] = "Review estimated hours, completion timelines, and resource effort distribution across issues.", | |
| ["report.overdueTasksPageTitle"] = "Overdue & Delayed Tasks Report", | |
| ["report.overdueTasksHeading"] = "Overdue & Delayed Tasks", | |
| ["report.overdueTasksDesc"] = "Track tasks that have passed their due date or are at risk of delay.", | |
| ["report.highPriorityOverdue"] = "High Priority Overdue", | |
| ["report.highPriorityOverdueDesc"] = "Critical work that needs immediate support.", | |
| ["report.overdueInsight"] = "Phrase these as capacity risks so teams can unblock work, not assign blame.", | |
| ["report.dueWithin3Days"] = "Due Within 3 Days", | |
| ["report.avgDaysOverdue"] = "Avg Days Overdue", | |
| ["report.allDelayed"] = "All Delayed", | |
| ["report.overduePastDue"] = "Overdue (Past Due)", | |
| ["report.showingDelayedTasks"] = "Showing", | |
| ["report.delayedOrOverdueTasks"] = "delayed / overdue task(s)", | |
| ["report.delayEscalation"] = "Delay / Escalation", | |
| ["report.blockedBy"] = "Blocked by: ", | |
| ["report.escalation"] = "Escalation: ", | |
| ["report.capacitySupportNeeded"] = "Capacity support may be needed", | |
| ["report.delayedTasksCount"] = "delayed task(s)", | |
| ["report.needsAction"] = "needs action", | |
| ["report.notOverdueYet"] = "not overdue yet", | |
| ["report.earlyDelay"] = "early delay", | |
| ["report.noOverdueTasks"] = "No overdue tasks", | |
| ["report.daysOverdue"] = "Days Overdue", | |
| ["common.searchByTaskAssigneeProject"] = "Search by title, assignee, or project...", | |
| ["notification.system"] = "System", | |
| ["notification.notifications"] = "Notifications", | |
| ["notification.unread"] = "unread", | |
| ["notification.clearRead"] = "Clear read", | |
| ["notification.loading"] = "Loading notifications...", | |
| ["notification.noneYet"] = "No notifications yet", | |
| ["notification.emptyState"] = "Your task alerts will show up here.", | |
| ["notification.clearReadTitle"] = "Clear read notifications?", | |
| ["notification.clearReadMessage"] = "This will permanently remove all read notifications from your list.", | |
| ["report.projectProgressTitle"] = "Project Progress Report", | |
| ["report.projectProgressHeading"] = "Project Progress", | |
| ["report.projectProgressDesc"] = "View project health using both planning tasks and daily execution issues.", | |
| ["report.searchProject"] = "Search Project", | |
| ["report.periodProjectStart"] = "Period (Project Start Date)", | |
| ["report.taskStatusCompletion"] = "Task Status Completion", | |
| ["report.totalIssues"] = "Total Issues", | |
| ["report.overdueIssues"] = "Overdue Issues", | |
| ["report.blockedIssues"] = "Blocked Issues", | |
| ["report.overdueIssuesNeedAttention"] = "overdue issues need attention.", | |
| ["report.issuesAreBlocked"] = "issues are blocked.", | |
| ["report.actualHoursAre"] = "Actual hours are", | |
| ["report.against"] = "against", | |
| ["report.searchEmployee"] = "Search Employee", | |
| ["report.employeeWorkloadTitle"] = "Employee Workload & Performance", | |
| ["report.employeeWorkloadHeading"] = "Employee Workload & Performance", | |
| ["report.employeeWorkloadDesc"] = "Monitor issue workload, execution health, and actual effort.", | |
| ["report.delaysByProject"] = "Delays by project", | |
| ["report.delaysByProjectDesc"] = "Project areas where delay concentration is highest.", | |
| ["report.delaysByProjectInsight"] = "Use this to rebalance planning pressure across projects.", | |
| ["report.delaysByAssignee"] = "Delays by assignee", | |
| ["report.delaysByAssigneeDesc"] = "People who may need support or scope adjustment.", | |
| ["report.delaysByAssigneeInsight"] = "Support signal only: high counts should trigger help, not blame.", | |
| ["report.pastDueDate"] = "Past due date", | |
| ["report.highPriorityDueSoon"] = "High priority due soon", | |
| ["report.severityVsDaysOverdue"] = "Severity vs days overdue", | |
| ["report.severityVsDaysOverdueDesc"] = "High priority and older delays sit in the upper-right risk zone.", | |
| ["report.severityMatrixInsight"] = "The matrix combines priority severity with age of delay to show triage order.", | |
| ["report.estVsActualEffort"] = "Estimated vs actual effort", | |
| ["report.estVsActualEffortDesc"] = "Are plans matching delivery effort?", | |
| ["report.actual"] = "Actual", | |
| ["report.estimated"] = "Estimated", | |
| ["report.utilizationGaugeDesc"] = "Actual hours as a share of estimated effort.", | |
| ["report.varianceLabel"] = "variance", | |
| ["report.usedLabel"] = "used", | |
| ["report.estimateAccuracyDesc"] = "How many items stayed within estimate?", | |
| ["report.onOrUnder"] = "on / under", | |
| ["report.issuesLabel"] = "issues", | |
| ["report.effortByProjectDesc"] = "Actual hours distributed across active projects.", | |
| ["report.effortByProjectInsight"] = "Use this to spot projects consuming more delivery capacity than expected.", | |
| ["report.effortLeaderboardDesc"] = "People carrying the most tracked effort.", | |
| ["report.effortLeaderboardInsight"] = "Names highlight capacity allocation, not performance judgement.", | |
| ["report.noEmployeeEffort"] = "No employee effort data available.", | |
| ["report.openIssuesSegment"] = "Open issues", | |
| ["report.overdueIssuesSegment"] = "Overdue issues", | |
| ["report.blockedIssuesSegment"] = "Blocked issues", | |
| ["project.assignDescription"] = "Assign team members to projects to control their task visibility.", | |
| ["project.assignmentsSaved"] = "Project assignments saved successfully!", | |
| ["project.failedSaveAssignment"] = "Failed to save assignment. Please try again.", | |
| ["project.selectProjectPrompt"] = "Please select a project from the left panel to manage user assignments.", | |
| ["issue.addIssueDescription"] = "Create a one-day work issue for a task and record the hours you spent.", | |
| ["issue.untitledIssue"] = "Untitled issue", | |
| ["issue.created"] = "Issue created successfully!", | |
| ["issue.updated"] = "Issue updated successfully!", | |
| ["issue.deleted"] = "Issue deleted successfully!", | |
| ["issue.saveConfirmMessage"] = "Are you sure you want to save these issue changes?", | |
| ["issue.whatDidYouWorkOn"] = "What did you work on?", | |
| ["issue.addShortNote"] = "Add a short note about the work you did...", | |
| ["issue.exampleEstimatedHours"] = "e.g. 4", | |
| ["issue.exampleActualHours"] = "e.g. 7", | |
| ["issue.actualHoursHint"] = "Use the total hours you spent today. For your standard day, this is usually 7 hours.", | |
| ["issue.blockedByPlaceholder"] = "Dependency, person, or team", | |
| ["issue.delayReasonPlaceholder"] = "Why is this issue delayed?", | |
| ["issue.teamLead"] = "Team Lead", | |
| ["issue.pm"] = "PM", | |
| ["issue.manager"] = "Manager", | |
| ["translation.generateEnglishSpelling"] = "Generate English spelling", | |
| ["translation.generateBurmeseName"] = "မြန်မာအမည် ရေးသားပေးရန်", | |
| ["translation.generateEnglish"] = "Generate English", | |
| ["translation.generateBurmese"] = "မြန်မာဘာသာ ပြန်ဆိုရန်", | |
| ["translation.englishDetected"] = "This text appears to be English. Move it to the English field?", | |
| ["issue.failedCreate"] = "Failed to create issue. Please try again.", | |
| ["issue.dateRangeInvalid"] = "The due date cannot be earlier than the start date.", | |
| ["issue.loadFailed"] = "Unable to load issues. Please try again.", | |
| ["issue.updateFailed"] = "Unable to update the issue. Please try again.", | |
| ["issue.deleteFailed"] = "Unable to delete the issue. Please try again.", | |
| ["common.loadFailed"] = "Unable to load the requested data. Please try again.", | |
| ["issue.titlePlaceholder"] = "Issue title", | |
| ["issue.descriptionPlaceholder"] = "Describe the work...", | |
| ["role.namePlaceholder"] = "e.g. Manager, Viewer", | |
| ["role.descriptionPlaceholder"] = "What can this role do?", | |
| ["user.editUser"] = "Edit User", | |
| ["user.createUser"] = "Create User?", | |
| ["user.updateUser"] = "Update User?", | |
| ["user.deleteUser"] = "Delete User?", | |
| ["user.updateUserConfirm"] = "Are you sure you want to update this user?", | |
| ["user.createUserConfirm"] = "Are you sure you want to create this user?", | |
| ["user.deleteUserConfirm"] = "Are you sure you want to delete this user? This action cannot be undone.", | |
| ["user.cannotDeleteSelf"] = "You cannot delete your own account.", | |
| ["result.userCreated"] = "User created successfully!", | |
| ["result.userUpdated"] = "User updated successfully!", | |
| ["result.userDeleted"] = "User deleted successfully!", | |
| ["result.failedToDeleteUser"] = "Failed to delete user.", | |
| ["result.userSaveFailed"] = "Unable to save the user. Please try again.", | |
| ["report.assignedToMe"] = "Assigned to me", | |
| ["report.assignedToMyTeam"] = "Assigned to my team", | |
| ["report.total"] = "Total", | |
| ["common.rememberMe"] = "Remember me", | |
| ["auth.needAccount"] = "Need an account?", | |
| ["auth.resetPassword"] = "Reset password", | |
| ["result.signedOut"] = "You have been signed out successfully.", | |
| ["result.passwordUpdated"] = "Password updated successfully. Please sign in with your new password.", | |
| ["result.apiUnavailable"] = "Unable to reach the API server. Start TaskTrackingSystem.WebApi and try again.", | |
| ["result.registrationFailed"] = "Registration failed. Please try again.", | |
| ["result.resetPasswordFailed"] = "Failed to reset password.", | |
| ["result.invalidCredentials"] = "Invalid username/email or password.", | |
| ["result.noPermissionUpdateTasks"] = "You do not have permission to update tasks.", | |
| ["result.usernameTaken"] = "Username is already taken.", | |
| ["result.emailRegistered"] = "Email is already registered.", | |
| ["result.noSystemRoles"] = "No system roles configured. Registration failed.", | |
| ["result.invalidRecoveryCode"] = "Invalid recovery code.", | |
| ["result.accountNotFound"] = "Account not found.", | |
| ["report.1to3Days"] = "1-3d", | |
| ["report.4to7Days"] = "4-7d", | |
| ["report.8PlusDays"] = "8d+", | |
| ["report.1to7Late"] = "1-7d late", | |
| ["report.8PlusLate"] = "8d+ late", | |
| ["report.agingBuckets"] = "Aging buckets", | |
| ["report.agingBucketsDesc"] = "How long delayed work has been waiting.", | |
| ["report.allReportedIssues"] = "All reported issues", | |
| ["report.avgRate"] = "avg rate", | |
| ["report.assignedColumn"] = "Assigned", | |
| ["report.openColumn"] = "Open", | |
| ["report.overdueColumn"] = "Overdue", | |
| ["report.capacitySupportDesc"] = "Highest support signals, phrased as capacity risk.", | |
| ["report.capacitySupportInsight"] = "Use this to route help and remove blockers, not to rank people negatively.", | |
| ["report.completedIssues"] = "Completed issues", | |
| ["report.completedWorkLeading"] = "Completed work is leading the current filtered set.", | |
| ["report.completion"] = "completion", | |
| ["report.completionHealthy"] = "Completion is healthy for the current filter.", | |
| ["report.completionImprove"] = "Completion has room to improve; inspect open issues and overdue work.", | |
| ["report.completionMovement"] = "Completion movement", | |
| ["report.completionMovementDesc"] = "Recently completed tasks by creation month.", | |
| ["report.completionPatternDesc"] = "Completion rate across visible employees.", | |
| ["report.completionPatternInsight"] = "A quick view of whether completion is clustered or balanced.", | |
| ["report.completionVsRiskDesc"] = "Each project plotted by completion and issue pressure.", | |
| ["report.couldNotLoad"] = "Task report could not load.", | |
| ["report.created"] = "Created", | |
| ["report.critical"] = "critical", | |
| ["report.criticalTasksNeedAttention"] = "critical tasks need attention.", | |
| ["report.currentlyBeingWorked"] = "Currently being worked", | |
| ["report.delayReason"] = "Delay Reason", | |
| ["report.dueLater"] = "Due later", | |
| ["report.dueSoon"] = "Due soon", | |
| ["report.employeesWithOverdueLoad"] = "Employees with overdue issue load.", | |
| ["report.executionRisk"] = "Execution risk in the filtered issue set.", | |
| ["report.focusStandup"] = "Focus standup discussion here first.", | |
| ["report.highPriorityTasks"] = "high-priority tasks", | |
| ["report.highPriorityVisible"] = "high-priority tasks should stay visible during planning review.", | |
| ["report.issueLifecycleFunnel"] = "Issue lifecycle funnel", | |
| ["report.issueLifecycleFunnelDesc"] = "How issues move from backlog to resolution.", | |
| ["report.issueLifecycleInsight"] = "A large in-progress or blocked band is a daily execution signal.", | |
| ["report.issuesByAssignee"] = "Issues by assignee", | |
| ["report.issuesByAssigneeDesc"] = "Support needs by assignee.", | |
| ["report.issuesByAssigneeInsight"] = "Use as a support signal, especially when overdue or blocked items cluster.", | |
| ["report.issuesByProject"] = "Issues by project", | |
| ["report.issuesByProjectDesc"] = "Where issue volume is concentrated.", | |
| ["report.issuesByProjectInsight"] = "Useful for project-level triage and planning health.", | |
| ["report.issuesStillOpen"] = "issues are still open across the selected scope.", | |
| ["report.issueStatusDonut"] = "Issue status donut", | |
| ["report.issueStatusDonutDesc"] = "Current status distribution, including overdue pressure.", | |
| ["report.loadError"] = "The server returned an error while loading task report data.", | |
| ["report.loadingIssueReport"] = "Loading issue report...", | |
| ["report.loadingOverdueTasks"] = "Loading overdue tasks...", | |
| ["report.loadingTimesheet"] = "Loading timesheet data...", | |
| ["report.manager"] = "Manager", | |
| ["report.needsUnblockReview"] = "Needs unblock review", | |
| ["report.noAssigneeDelay"] = "No assignee delay concentration found.", | |
| ["report.noCapacityRisks"] = "No capacity risks in the current filter.", | |
| ["report.noHighPriority"] = "No high-priority tasks in the current filter.", | |
| ["report.noOverdueSupport"] = "No overdue support needs found.", | |
| ["report.noProjectDelay"] = "No project delay concentration found.", | |
| ["report.openIssuesAttached"] = "open issues are attached to reported tasks.", | |
| ["report.overdueSupportInsight"] = "Treat overdue counts as support requests.", | |
| ["report.overdueTasks"] = "overdue tasks", | |
| ["report.pm"] = "PM", | |
| ["report.priorityDistribution"] = "Priority distribution", | |
| ["report.priorityDistributionDesc"] = "Planning pressure by task priority.", | |
| ["report.resolutionAging"] = "Resolution aging", | |
| ["report.resolutionAgingDesc"] = "How close issues are to or past due date.", | |
| ["report.resolutionAgingInsight"] = "Older overdue buckets should be cleared before new scope expands.", | |
| ["report.resolvedIssuesLeading"] = "Resolved issues are leading this filtered set.", | |
| ["report.risk"] = "risk", | |
| ["report.riskScore"] = "Risk score", | |
| ["report.riskIssues"] = "risk issues", | |
| ["report.supportSignal"] = "Support signal", | |
| ["report.tasks"] = "tasks", | |
| ["report.tasksHaveOverdueIssues"] = "tasks have overdue issues.", | |
| ["report.tasksStillMoving"] = "tasks are still moving through execution.", | |
| ["report.taskStatusMix"] = "Task status mix", | |
| ["report.taskStatusMixDesc"] = "Where execution currently sits across the task lifecycle.", | |
| ["report.tasksWithMostIssues"] = "Tasks with most open issues", | |
| ["report.tasksWithMostIssuesDesc"] = "Execution blockers that may need issue cleanup before progress moves.", | |
| ["report.tasksWithMostIssuesInsight"] = "Use this to decide where issue triage creates the fastest task movement.", | |
| ["report.teamExecutionBalance"] = "Team execution balance by issue state.", | |
| ["report.teamLead"] = "Team Lead", | |
| ["report.topProjectRisk"] = "Top project risk", | |
| ["report.topProjectRiskDesc"] = "Projects with the highest task and issue pressure.", | |
| ["report.topProjectRiskInsight"] = "Score combines task volume, open issues, overdue issues, and critical task health.", | |
| ["report.unresolvedIssues"] = "Unresolved issues", | |
| ["report.workloadHeatmapDesc"] = "Capacity signals across assigned work, open issues, overdue issues, and hours.", | |
| ["report.workloadHeatmapInsight"] = "Darker cells mean someone may need support or scope adjustment.", | |
| ["report.funnelBaselineNote"] = "Width is measured against {label} ({value}). Zero-value stages keep an empty track with no colored fill.", | |
| ["report.noStage"] = "No {stage}", | |
| ["report.funnelTooltip"] = "{label}: {value} ({percent}% of baseline)", | |
| ["report.noAgingData"] = "No aging data available.", | |
| ["report.noChartData"] = "No data available.", | |
| ["report.noFunnelData"] = "No funnel data available.", | |
| ["report.noWorkloadData"] = "No workload data available.", | |
| ["report.noRiskItems"] = "No risk items to show.", | |
| ["report.notEnoughTrendData"] = "Not enough data for a trend yet.", | |
| ["report.stackedProgress"] = "Stacked progress", | |
| ["report.statusDistribution"] = "Status distribution" | |
| }; | |
| private static readonly IReadOnlyDictionary<string, string> Burmese = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) | |
| { | |
| ["common.workspace"] = "အလုပ်ခွင်", | |
| ["common.signIn"] = "အကောင့်ဝင်ရန်", | |
| ["common.signOut"] = "အကောင့်ထွက်ရန်", | |
| ["common.signOutTitle"] = "အကောင့်ထွက်မလား?", | |
| ["common.signOutDescription"] = "Taskify မှ အကောင့်ထွက်ရန် သေချာပါသလား?", | |
| ["common.cancel"] = "မလုပ်တော့ပါ", | |
| ["common.confirm"] = "အတည်ပြုမည်", | |
| ["common.confirmAction"] = "အတည်ပြုမည်", | |
| ["common.areYouSure"] = "သင် သေချာပါသလား?", | |
| ["common.cannotUndo"] = "ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်မရပါ။", | |
| ["common.yes"] = "ဟုတ်ကဲ့", | |
| ["common.no"] = "မဟုတ်ပါ", | |
| ["common.ok"] = "အိုကေ", | |
| ["common.score"] = "အမှတ်", | |
| ["common.save"] = "သိမ်းမည်", | |
| ["common.create"] = "ဖန်တီးမည်", | |
| ["common.update"] = "အပ်ဒိတ်လုပ်မည်", | |
| ["common.delete"] = "ဖျက်မည်", | |
| ["common.confirmSignOut"] = "ဟုတ်ကဲ့၊ အကောင့်ထွက်မည်", | |
| ["common.listView"] = "စာရင်းမြင်ကွင်း", | |
| ["common.chartView"] = "ဇယားမြင်ကွင်း", | |
| ["common.search"] = "ရှာမည်", | |
| ["common.reset"] = "ပြန်လည်သတ်မှတ်မည်", | |
| ["common.clear"] = "ရှင်းမည်", | |
| ["common.all"] = "အားလုံး", | |
| ["common.loading"] = "ဖွင့်နေသည်...", | |
| ["common.close"] = "ပိတ်မည်", | |
| ["common.refresh"] = "ပြန်လည်ရယူမည်", | |
| ["common.openNavigation"] = "မီနူးဖွင့်ရန်", | |
| ["common.closeNavigation"] = "မီနူးပိတ်ရန်", | |
| ["common.index"] = "နံပါတ်", | |
| ["common.exportExcel"] = "Excel ထုတ်မည်", | |
| ["common.exportPdf"] = "PDF ထုတ်မည်", | |
| ["common.actions"] = "လုပ်ဆောင်ချက်များ", | |
| ["common.status"] = "အခြေအနေ", | |
| ["common.priority"] = "ဦးစားပေး", | |
| ["common.assignee"] = "တာဝန်ယူသူ", | |
| ["common.project"] = "စီမံကိန်း", | |
| ["common.task"] = "လုပ်ငန်း", | |
| ["common.taskProject"] = "လုပ်ငန်း / စီမံကိန်း", | |
| ["common.issue"] = "ပြဿနာ", | |
| ["common.user"] = "အသုံးပြုသူ", | |
| ["common.systemAdmin"] = "စနစ်အုပ်ချုပ်သူ", | |
| ["common.role"] = "အခန်းကဏ္ဍ", | |
| ["common.module"] = "အပိုင်း", | |
| ["common.name"] = "အမည်", | |
| ["error.title"] = "အမှား", | |
| ["error.heading"] = "အမှား", | |
| ["error.processingRequest"] = "တောင်းဆိုချက်ကို လုပ်ဆောင်နေစဉ် အမှားတစ်ခု ဖြစ်ပွားခဲ့ပါသည်။", | |
| ["error.requestId"] = "တောင်းဆိုချက်အမှတ်", | |
| ["error.developmentMode"] = "ဖွံ့ဖြိုးရေးမုဒ်", | |
| ["error.developmentDetails"] = "ဖွံ့ဖြိုးရေးပတ်ဝန်းကျင်သို့ ပြောင်းလဲပါက အမှားအသေးစိတ်များကို ပိုမိုပြသပါမည်။", | |
| ["error.developmentWarning"] = "ဖြန့်ချိထားသော အက်ပ်များတွင် ဖွံ့ဖြိုးရေးပတ်ဝန်းကျင်ကို မဖွင့်ထားသင့်ပါ။", | |
| ["error.developmentSensitive"] = "ထိုသို့ပြုလုပ်ပါက အသုံးပြုသူများထံ အထိခိုက်လွယ်သော အမှားအသေးစိတ်များ ပေါ်လာနိုင်ပါသည်။", | |
| ["error.developmentInstructions"] = "ဒေသတွင်း စမ်းသပ်ရန် ASPNETCORE_ENVIRONMENT ကို Development ဟု သတ်မှတ်ပြီး အက်ပ်ကို ပြန်လည်စတင်ပါ။", | |
| ["issue.titlePlaceholder"] = "ပြဿနာခေါင်းစဉ်", | |
| ["issue.descriptionPlaceholder"] = "လုပ်ဆောင်ချက်ကို ဖော်ပြပါ...", | |
| ["role.namePlaceholder"] = "ဥပမာ - မန်နေဂျာ၊ ကြည့်ရှုသူ", | |
| ["role.descriptionPlaceholder"] = "ဤအခန်းကဏ္ဍက ဘာများ လုပ်ဆောင်နိုင်ပါသလဲ။", | |
| ["issue.loadFailed"] = "ပြဿနာများကို ဖတ်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["issue.updateFailed"] = "ပြဿနာကို ပြင်ဆင်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["issue.deleteFailed"] = "ပြဿနာကို ဖျက်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["common.loadFailed"] = "တောင်းဆိုထားသော အချက်အလက်များကို ဖတ်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["common.firstName"] = "ရှေ့အမည်", | |
| ["common.lastName"] = "နောက်အမည်", | |
| ["common.username"] = "အသုံးပြုသူအမည်", | |
| ["common.phone"] = "ဖုန်း", | |
| ["common.phoneNumber"] = "ဖုန်းနံပါတ်", | |
| ["common.keepHere"] = "ဤနေရာတွင် ထားမည်", | |
| ["common.moveToEnglish"] = "အင်္ဂလိပ်အကွက်သို့ ရွှေ့မည်", | |
| ["common.generating"] = "ဖန်တီးနေသည်...", | |
| ["common.translationNotConfigured"] = "ဘာသာပြန်ဝန်ဆောင်မှုကို မသတ်မှတ်ရသေးပါ။", | |
| ["common.complete"] = "ပြည့်စုံသည်", | |
| ["common.aiGenerated"] = "AI ဖြင့် ဖန်တီးထားသည်", | |
| ["common.needsReview"] = "ပြန်လည်စစ်ဆေးရန် လိုအပ်သည်", | |
| ["common.missing"] = "မပြည့်စုံသေးပါ", | |
| ["common.translationReview"] = "AI ဖြင့် ဖန်တီးထားသော စာသားကို ပြန်လည်စစ်ဆေးနိုင်ပါပြီ။ မသိမ်းမီ စစ်ဆေးပါ။", | |
| ["common.description"] = "ဖော်ပြချက်", | |
| ["common.date"] = "ရက်စွဲ", | |
| ["common.startDate"] = "စတင်ရက်", | |
| ["common.endDate"] = "ပြီးဆုံးရက်", | |
| ["common.dueDate"] = "ပြီးဆုံးရန်ရက်", | |
| ["common.due"] = "ပြီးဆုံးရက်", | |
| ["common.hours"] = "နာရီ", | |
| ["common.hoursAbbrev"] = "နာရီ", | |
| ["common.risk"] = "အန္တရာယ်", | |
| ["common.blocked"] = "ပိတ်ဆို့ထားသည်", | |
| ["common.overdue"] = "နောက်ကျနေသည်", | |
| ["common.done"] = "ပြီးဆုံး", | |
| ["common.inProgress"] = "ဆောင်ရွက်နေသည်", | |
| ["common.todo"] = "လုပ်ရန်", | |
| ["common.resolved"] = "ဖြေရှင်းပြီး", | |
| ["common.clearStatus"] = "ရှင်းလင်း", | |
| ["common.none"] = "မရှိ", | |
| ["common.unassigned"] = "မချမှတ်ရသေး", | |
| ["common.noDescription"] = "ဖော်ပြချက်မရှိ", | |
| ["common.noneRecorded"] = "မှတ်တမ်းမရှိ", | |
| ["common.na"] = "မသက်ဆိုင်ပါ", | |
| ["common.noAccessItems"] = "ဤအခန်းကဏ္ဍအတွက် ဝင်ရောက်ခွင့်မရှိသေးပါ။", | |
| ["common.accessDenied"] = "ဝင်ရောက်ခွင့် မရှိပါ", | |
| ["common.error"] = "အမှား", | |
| ["common.accessDeniedDescription"] = "ဤစာမျက်နှာသို့ ဝင်ရောက်ရန် သင်၌ ခွင့်ပြုချက်မရှိပါ။ စနစ်စီမံသူကို ဆက်သွယ်ပါ။", | |
| ["common.backToDashboard"] = "ပင်မစာမျက်နှာသို့ ပြန်သွားမည်", | |
| ["common.noDataYet"] = "အချက်အလက် မရှိသေးပါ", | |
| ["common.createFirstEntry"] = "စတင်ရန် ပထမဆုံး အချက်အလက်ကို ဖန်တီးပါ။", | |
| ["common.loadingAuditLogs"] = "မှတ်တမ်းများ ဖွင့်နေသည်...", | |
| ["common.loadingUsers"] = "အသုံးပြုသူများ ဖွင့်နေသည်...", | |
| ["common.loadingProjects"] = "စီမံကိန်းများ ဖွင့်နေသည်...", | |
| ["common.loadingTasks"] = "လုပ်ငန်းများ ဖွင့်နေသည်...", | |
| ["common.searchPlaceholder"] = "အမည်၊ အီးမေးလ်၊ အသုံးပြုသူအမည်ဖြင့် ရှာပါ...", | |
| ["common.searchTasks"] = "အလုပ်ရှာရန်", | |
| ["common.searchByTitleOrProject"] = "ခေါင်းစဉ် သို့မဟုတ် စီမံကိန်းဖြင့် ရှာပါ...", | |
| ["common.searchByUser"] = "အသုံးပြုသူ၊ လုပ်ဆောင်ချက်၊ အပိုင်း သို့မဟုတ် အသေးစိတ်ဖြင့် ရှာပါ...", | |
| ["common.searchByTitle"] = "ခေါင်းစဉ် သို့မဟုတ် စီမံကိန်းအမည်ဖြင့် ရှာပါ...", | |
| ["common.searchProjects"] = "စီမံကိန်းများ ရှာပါ...", | |
| ["common.searchTeamMembers"] = "အဖွဲ့ဝင်များ ရှာပါ...", | |
| ["common.searchProjectMembers"] = "စီမံကိန်းအဖွဲ့ဝင်များ ရှာပါ...", | |
| ["common.searchIssues"] = "ပြဿနာ ခေါင်းစဉ်၊ ဖော်ပြချက် သို့မဟုတ် တာဝန်ယူသူဖြင့် ရှာပါ...", | |
| ["common.searchByIssueAssignee"] = "ပြဿနာ / တာဝန်ယူသူ ရှာရန်", | |
| ["common.searchUsers"] = "အသုံးပြုသူများ ရှာရန်", | |
| ["common.searchByName"] = "အမည်ဖြင့် ရှာပါ...", | |
| ["common.newUser"] = "အသုံးပြုသူအသစ်", | |
| ["common.taskCode"] = "လုပ်ငန်းကုဒ်", | |
| ["common.selectedMember"] = "ရွေးထားသော အဖွဲ့ဝင်", | |
| ["common.loadingSpinner"] = "ဖွင့်နေသည်...", | |
| ["common.loadingIssues"] = "ပြဿနာများ ဖွင့်နေသည်...", | |
| ["common.loadingTasksAndUsers"] = "လုပ်ငန်းများနှင့် အသုံးပြုသူများ ဖွင့်နေသည်...", | |
| ["common.loadingProjectsAndUsers"] = "စီမံကိန်းများနှင့် အသုံးပြုသူများ ဖွင့်နေသည်...", | |
| ["common.loadingProjectMembers"] = "စီမံကိန်းအဖွဲ့ဝင်များ ဖွင့်နေသည်...", | |
| ["common.loadingMembers"] = "အဖွဲ့ဝင်များ ဖွင့်နေသည်...", | |
| ["common.noResults"] = "ရလဒ်မတွေ့ပါ။", | |
| ["pagination.showing"] = "ပြသနေသည်", | |
| ["pagination.of"] = "စုစုပေါင်း", | |
| ["pagination.results"] = "ရလဒ်", | |
| ["pagination.rowsPerPage"] = "တစ်မျက်နှာအရေအတွက်", | |
| ["pagination.firstPage"] = "ပထမစာမျက်နှာ", | |
| ["pagination.previousPage"] = "ရှေ့စာမျက်နှာ", | |
| ["pagination.nextPage"] = "နောက်စာမျက်နှာ", | |
| ["pagination.lastPage"] = "နောက်ဆုံးစာမျက်နှာ", | |
| ["common.notApplicable"] = "မသက်ဆိုင်ပါ", | |
| ["common.selectAll"] = "အားလုံးရွေးမည်", | |
| ["common.deselectAll"] = "အားလုံးဖြုတ်မည်", | |
| ["common.selected"] = "ရွေးထားသည်", | |
| ["common.viewDetails"] = "အသေးစိတ်ကြည့်မည်", | |
| ["common.currentLanguage"] = "ဘာသာစကားပြောင်းရန်", | |
| ["common.languageEnglish"] = "အင်္ဂလိပ်", | |
| ["common.languageBurmese"] = "မြန်မာ", | |
| ["common.allTasks"] = "အလုပ်အားလုံး", | |
| ["common.allProjects"] = "စီမံကိန်းအားလုံး", | |
| ["common.allRoles"] = "အခန်းကဏ္ဍအားလုံး", | |
| ["common.noProjectsFound"] = "စီမံကိန်းမတွေ့ပါ။", | |
| ["common.noTasksFound"] = "လုပ်ငန်းမတွေ့ပါ။", | |
| ["common.noTeamMembersFound"] = "သင်ရှာဖွေသည့် အဖွဲ့ဝင် မရှိပါ။", | |
| ["common.noMembersMatchSearch"] = "လက်ရှိရှာဖွေမှုနှင့် ကိုက်ညီသည့် အဖွဲ့ဝင် မရှိပါ။", | |
| ["common.noTaskSelected"] = "လုပ်ငန်း မရွေးထားပါ", | |
| ["task.selectTaskPrompt"] = "အဖွဲ့ဝင်တစ်ဦးထံ တာဝန်ချထားရန် ဘယ်ဘက်အကန့်မှ လုပ်ငန်းတာဝန်တစ်ခုကို ရွေးချယ်ပါ။", | |
| ["common.noProjectSelected"] = "စီမံကိန်း မရွေးထားပါ", | |
| ["common.noProject"] = "စီမံကိန်း မရှိပါ", | |
| ["common.currentlyAssigningTask"] = "လက်ရှိ ချထားနေသော လုပ်ငန်း", | |
| ["common.currentlyManaging"] = "လက်ရှိ စီမံနေသည်", | |
| ["common.selectProject"] = "စီမံကိန်း ရွေးရန်", | |
| ["common.selectTask"] = "လုပ်ငန်း ရွေးရန်...", | |
| ["common.issueTitle"] = "ပြဿနာ ခေါင်းစဉ်", | |
| ["common.issueDescription"] = "ဖော်ပြချက်", | |
| ["common.blockedStatus"] = "ပိတ်ဆို့မှု အခြေအနေ", | |
| ["common.escalationLevel"] = "အဆင့်တိုးမှု အဆင့်", | |
| ["common.blockedBy"] = "ပိတ်ဆို့နေသူ", | |
| ["common.delayReason"] = "နှောင့်နှေးရသည့် အကြောင်းရင်း", | |
| ["common.actualHours"] = "တကယ့် နာရီ", | |
| ["common.estimatedHours"] = "ခန့်မှန်း နာရီ", | |
| ["common.assignedToMeOnly"] = "ကျွန်ုပ်ထံပဲ ချထားထားသည်", | |
| ["common.saveAssignment"] = "တာဝန်ချမှု သိမ်းမည်", | |
| ["common.saveAssignmentChanges"] = "တာဝန်ချမှု ပြောင်းလဲချက်များ သိမ်းမည်", | |
| ["common.assignmentSaved"] = "တာဝန်ချထားမှုကို အောင်မြင်စွာ သိမ်းဆည်းပြီးပါပြီ။", | |
| ["task.assigneeUpdated"] = "အလုပ်တာဝန်ယူသူကို အောင်မြင်စွာ ပြင်ဆင်ပြီးပါပြီ။", | |
| ["task.failedUpdateAssignee"] = "အလုပ်တာဝန်ယူသူကို ပြင်ဆင်၍ မရပါ။", | |
| ["task.failedLoadProjectMembers"] = "စီမံကိန်းအဖွဲ့ဝင်များကို ဖွင့်၍ မရပါ။", | |
| ["task.assigneeMustBelong"] = "အလုပ်တာဝန်ယူသူသည် ရွေးထားသော စီမံကိန်း၏ အဖွဲ့ဝင် ဖြစ်ရပါမည်။", | |
| ["task.titleRequiredEitherLanguage"] = "လုပ်ငန်းခေါင်းစဉ်ကို အနည်းဆုံး ဘာသာစကားတစ်ခုဖြင့် ထည့်ရပါမည်။", | |
| ["task.saveAssignmentTitle"] = "တာဝန်ချမှု သိမ်းမည်လား။", | |
| ["task.saveAssignmentConfirm"] = "ဤအလုပ်တာဝန်ချထားမှုကို သိမ်းဆည်းရန် သေချာပါသလား။", | |
| ["project.saveAssignmentTitle"] = "တာဝန်ချမှု သိမ်းမည်လား။", | |
| ["project.saveAssignmentConfirm"] = "ဤစီမံကိန်းအဖွဲ့ဝင် တာဝန်ချထားမှုများကို သိမ်းဆည်းရန် သေချာပါသလား။", | |
| ["issue.yesSave"] = "ဟုတ်ကဲ့၊ သိမ်းမည်", | |
| ["common.saveChanges"] = "ပြောင်းလဲချက်များ သိမ်းမည်", | |
| ["common.addIssue"] = "ပြဿနာ ထည့်မည်", | |
| ["common.addIssueTitle"] = "ပြဿနာ ထည့်မည်လား?", | |
| ["issue.saveAddConfirmMessage"] = "ဤပြဿနာကို သိမ်းဆည်းရန် သေချာပါသလား။", | |
| ["issue.yesAdd"] = "ဟုတ်ကဲ့၊ ထည့်မည်", | |
| ["common.editIssue"] = "ပြဿနာ ပြင်မည်", | |
| ["common.removeOwnerFromTask"] = "ဤလုပ်ငန်းမှ ပိုင်ရှင်ကို ဖယ်ရှားမည်", | |
| ["page.dashboard"] = "ပင်မစာမျက်နှာ", | |
| ["page.managerDashboard"] = "မန်နေဂျာ ပင်မစာမျက်နှာ", | |
| ["page.employeeDashboard"] = "ဝန်ထမ်း ပင်မစာမျက်နှာ", | |
| ["page.projects"] = "စီမံကိန်းများ", | |
| ["page.reports"] = "အစီရင်ခံစာများ", | |
| ["page.projectAssignment"] = "စီမံကိန်း ခွဲဝေခြင်း", | |
| ["page.tasks"] = "လုပ်ငန်းများ", | |
| ["page.kanbanBoard"] = "အလုပ်တာဝန် စီမံခန့်ခွဲမှုဘုတ်", | |
| ["page.taskAssignment"] = "လုပ်ငန်း ခွဲဝေခြင်း", | |
| ["page.taskDetails"] = "လုပ်ငန်း အသေးစိတ်", | |
| ["page.issues"] = "ပြဿနာများ", | |
| ["page.addIssue"] = "ပြဿနာ ထည့်ရန်", | |
| ["page.taskReport"] = "လုပ်ငန်း အစီရင်ခံစာ", | |
| ["page.timeTracking"] = "အချိန်မှတ်တမ်း", | |
| ["page.projectProgress"] = "စီမံကိန်း တိုးတက်မှု", | |
| ["page.overdueTasks"] = "နောက်ကျ လုပ်ငန်းများ", | |
| ["page.employeeReport"] = "ဝန်ထမ်း အစီရင်ခံစာ", | |
| ["page.rolesAccess"] = "အခန်းကဏ္ဍနှင့် ဝင်ခွင့်", | |
| ["page.users"] = "အသုံးပြုသူ", | |
| ["page.auditLogs"] = "စနစ်မှတ်တမ်းများ", | |
| ["page.issueReport"] = "ပြဿနာ အစီရင်ခံစာ", | |
| ["page.projectList"] = "စီမံကိန်းစာရင်း", | |
| ["page.taskList"] = "လုပ်ငန်းစာရင်း", | |
| ["page.taskBacklog"] = "လုပ်ငန်း နောက်ခံစာရင်း", | |
| ["page.roleLayouts"] = "အခန်းကဏ္ဍ အပြင်အဆင်များ", | |
| ["page.dashboard.desc"] = "အလုပ်များ၊ အန္တရာယ်များနှင့် တိုးတက်မှုများကို တစ်ချက်ကြည့်နိုင်သည်။", | |
| ["page.managerDashboard.desc"] = "စီမံကိန်းများ၊ လူအင်အားနှင့် ပေးပို့မှုအခြေအနေကို စောင့်ကြည့်ပါ။", | |
| ["page.employeeDashboard.desc"] = "သင့်လုပ်ငန်းများ၊ သတ်မှတ်ရက်နှင့် တိုးတက်မှုများကို အာရုံစိုက်ပါ။", | |
| ["page.projects.desc"] = "စီမံကိန်းအစီအစဉ်၊ အချိန်ဇယားနှင့် ခွဲဝေမှုများကို စီမံပါ။", | |
| ["page.projectAssignment.desc"] = "အဖွဲ့ဝင်များကို သင့်တော်သော စီမံကိန်းများသို့ ခွဲဝေပါ။", | |
| ["page.tasks.desc"] = "လုပ်ငန်းများကို ကြည့်ရှု၊ စစ်ထုတ်၊ အပ်ဒိတ်လုပ်ပါ။", | |
| ["page.kanbanBoard.desc"] = "အလုပ်များကို အခြေအနေကော်လံများအတိုင်း ရွှေ့ပါ။", | |
| ["page.taskAssignment.desc"] = "လုပ်ငန်းများကို စီမံကိန်းအဖွဲ့ဝင်များသို့ ခွဲဝေပါ။", | |
| ["page.taskDetails.desc"] = "လုပ်ငန်းတိုးတက်မှု၊ မှတ်ချက်များနှင့် အပ်ဒိတ်များကို ကြည့်ရှုပါ။", | |
| ["page.issues.desc"] = "ပိတ်ဆို့မှုများ၊ မှတ်စုများနှင့် နေ့စဉ် အလုပ်တိုးတက်မှုကို ခြေရာခံပါ။", | |
| ["page.addIssue.desc"] = "လုပ်ငန်းတစ်ခုအတွက် ပြဿနာအသစ်ကို မှတ်တမ်းတင်ပါ။", | |
| ["page.taskReport.desc"] = "လုပ်ငန်းလှုပ်ရှားမှုကို ခွဲခြမ်းပြီး အစီရင်ခံစာများ ထုတ်ပါ။", | |
| ["page.timeTracking.desc"] = "လုပ်ငန်း၊ စီမံကိန်းနှင့် တာဝန်ယူသူအလိုက် အားထုတ်မှုကို ကြည့်ရှုပါ။", | |
| ["page.projectProgress.desc"] = "လက်ရှိ စီမံကိန်းများ၏ ပေးပို့မှုအခြေအနေကို စောင့်ကြည့်ပါ။", | |
| ["page.overdueTasks.desc"] = "အရေးပေါ် အာရုံစိုက်ရန် လိုသည့် နောက်ကျလုပ်ငန်းများကို ကြည့်ပါ။", | |
| ["page.employeeReport.desc"] = "အလုပ်တာဝန်များ လူတစ်ဦးချင်းစီအလိုက် မည်သို့ ဖြန့်ဝေထားသည်ကို ကြည့်ပါ။", | |
| ["page.rolesAccess.desc"] = "အသုံးပြုသူအခန်းကဏ္ဍ၊ မီနူးများနှင့် ခွင့်ပြုချက်များကို ထိန်းချုပ်ပါ။", | |
| ["page.users.desc"] = "လူများ၊ အခြေအနေများနှင့် အကောင့်အသေးစိတ်များကို စီမံပါ။", | |
| ["page.auditLogs.desc"] = "စနစ်လှုပ်ရှားမှုများနှင့် ပြောင်းလဲမှုများကို ပြန်လည်ကြည့်ရှုပါ။", | |
| ["page.issueReport.desc"] = "နေ့စဉ် ဆောင်ရွက်မှု၊ နောက်ကျမှုနှင့် ပြဿနာအလိုက် အားထုတ်မှုကို ခြေရာခံပါ။", | |
| ["page.projectList.desc"] = "စီမံကိန်းအသေးစိတ်နှင့် တိုးတက်မှုကို တစ်ချက်ကြည့်ပါ။", | |
| ["page.taskList.desc"] = "လုပ်ငန်းမှတ်တမ်းများကို ကြည့်ရှု၊ စစ်ထုတ်၊ အပ်ဒိတ်လုပ်ပါ။", | |
| ["page.taskBacklog.desc"] = "မခွဲဝေသေးသော နှင့် စောင့်ဆိုင်းနေသော အလုပ်များကို ကြည့်ပါ။", | |
| ["page.roleLayouts.desc"] = "ဝင်ခွင့်အုပ်စု ပုံစံများနှင့် ခွင့်ပြုချက်များကို ကြည့်ပါ။", | |
| ["dashboard.overview"] = "အနှစ်ချုပ်", | |
| ["dashboard.welcomeBack"] = "ပြန်လည်ကြိုဆိုပါတယ်၊ {name}", | |
| ["dashboard.adminIntro"] = "စီမံကိန်းများ၊ အသုံးပြုသူများနှင့် အဖွဲ့တိုးတက်မှုကို တစ်ချက်ကြည့်နိုင်သည်။", | |
| ["dashboard.totalUsers"] = "အသုံးပြုသူ စုစုပေါင်း", | |
| ["dashboard.totalProjects"] = "စီမံကိန်း စုစုပေါင်း", | |
| ["dashboard.activeTasks"] = "လက်ရှိအလုပ်များ", | |
| ["dashboard.completionRate"] = "ပြီးစီးမှုနှုန်း", | |
| ["dashboard.projectActivity"] = "စီမံကိန်း လှုပ်ရှားမှု", | |
| ["dashboard.projectActivityDesc"] = "လအလိုက် လက်ရှိနှင့် ပြီးစီးသောအလုပ်များ။", | |
| ["dashboard.taskDistribution"] = "အလုပ်များ ခွဲဝေမှု", | |
| ["dashboard.totalTasks"] = "အလုပ် စုစုပေါင်း {count} ခု", | |
| ["dashboard.completedCount"] = "ပြီးစီးပြီး: {count}", | |
| ["dashboard.activeCount"] = "လက်ရှိ: {count}", | |
| ["dashboard.allProjects"] = "စီမံကိန်းအားလုံး", | |
| ["dashboard.projectsSnapshot"] = "လက်ရှိစီမံကိန်းစာရင်းကို အမြန်ကြည့်ရန်။", | |
| ["dashboard.viewAll"] = "အားလုံးကြည့်ရန်", | |
| ["dashboard.tasksUnit"] = "အလုပ်", | |
| ["dashboard.calendar"] = "ပြက္ခဒိန်", | |
| ["dashboard.calendarDesc"] = "ယနေ့နှင့် မကြာမီစမည့် စီမံကိန်းများ။", | |
| ["dashboard.events"] = "ဖြစ်ရပ်များ", | |
| ["dashboard.projectTimeline"] = "စီမံကိန်း အချိန်ဇယား", | |
| ["dashboard.projectTimelineDesc"] = "စီမံကိန်းအားလုံးကို Gantt ပုံစံဖြင့် ကြည့်ပြီး အောက်တွင် လအပိုင်းအခြားကို ပြင်ဆင်ပါ။", | |
| ["dashboard.from"] = "မှ", | |
| ["dashboard.to"] = "အထိ", | |
| ["dashboard.noProjectsToDisplay"] = "ပြသရန် စီမံကိန်း မရှိပါ။", | |
| ["dashboard.thisMonth"] = "ယခုလ", | |
| ["dashboard.vsLastMonth"] = "ပြီးခဲ့သည့်လနှင့် နှိုင်းယှဉ်", | |
| ["dashboard.upcoming"] = "မကြာမီစမည်", | |
| ["dashboard.active"] = "လက်ရှိ", | |
| ["dashboard.queued"] = "စောင့်ဆိုင်း", | |
| ["dashboard.soon"] = "မကြာမီ", | |
| ["dashboard.late"] = "နောက်ကျ", | |
| ["dashboard.employeeTitle"] = "ဝန်ထမ်း ပင်မစာမျက်နှာ", | |
| ["dashboard.teamMember"] = "အဖွဲ့ဝင်", | |
| ["dashboard.myWork"] = "ကျွန်ုပ်၏အလုပ်များ", | |
| ["dashboard.employeeIntro"] = "အလုပ်များ၊ နောက်ဆုံးရက်များနှင့် သင့်တိုးတက်မှုကို တစ်နေရာတည်းတွင် ကြည့်နိုင်သည်။", | |
| ["dashboard.viewTasks"] = "အလုပ်များ ကြည့်ရန်", | |
| ["dashboard.loadingDashboard"] = "ပင်မစာမျက်နှာ ဖတ်နေသည်...", | |
| ["dashboard.tasksInProgressDesc"] = "လက်ရှိလုပ်ဆောင်နေသော အလုပ်များ", | |
| ["dashboard.noTasksInProgress"] = "လက်ရှိလုပ်ဆောင်နေသော အလုပ် မရှိပါ။", | |
| ["dashboard.todoUpcoming"] = "လုပ်ရန်နှင့် မကြာမီလာမည့်အလုပ်များ", | |
| ["dashboard.todoUpcomingDesc"] = "စတင်လုပ်ရန် သို့မဟုတ် မကြာမီလာမည့် အလုပ်များ", | |
| ["dashboard.noUpcomingTasks"] = "မကြာမီလာမည့် အလုပ် မတွေ့ပါ။", | |
| ["dashboard.overdueDesc"] = "နောက်ဆုံးရက် ကျော်လွန်နေသော အလုပ်များ", | |
| ["dashboard.noOverdueTasks"] = "နောက်ကျနေသော အလုပ် မရှိပါ။ ကောင်းပါတယ်။", | |
| ["dashboard.relatedTasks"] = "ဆက်စပ်အလုပ်များ", | |
| ["dashboard.tasksMarkedOn"] = "{date} တွင် မှတ်ထားသော အလုပ်များ", | |
| ["dashboard.noTasksForDay"] = "ဤနေ့အတွက် သတ်မှတ်ထားသော အလုပ် မရှိပါ။", | |
| ["dashboard.dueSoon"] = "မကြာမီ နောက်ဆုံးရက်ရောက်မည်", | |
| ["dashboard.managerTitle"] = "မန်နေဂျာ ပင်မစာမျက်နှာ", | |
| ["dashboard.teamView"] = "အဖွဲ့ မြင်ကွင်း", | |
| ["dashboard.myProjects"] = "ကျွန်ုပ်၏ စီမံကိန်းများ", | |
| ["dashboard.managerIntro"] = "သင့်အဖွဲ့၊ စီမံကိန်းအခြေအနေနှင့် အပတ်စဉ်အလုပ်တိုးတက်မှုကို တစ်နေရာတည်းတွင် ကြည့်နိုင်သည်။", | |
| ["dashboard.pendingTasksNotice"] = "အလုပ် {count} ခု စောင့်ဆိုင်းနေဆဲဖြစ်သည်။", | |
| ["dashboard.taskReport"] = "အလုပ် အစီရင်ခံစာ", | |
| ["dashboard.weeklyTaskProgress"] = "အပတ်စဉ် အလုပ်တိုးတက်မှု", | |
| ["dashboard.weeklyTaskProgressDesc"] = "အပတ်အလိုက် ပြီးစီးပြီးနှင့် စောင့်ဆိုင်းနေသော အလုပ်များ", | |
| ["dashboard.teamProgress"] = "အဖွဲ့ တိုးတက်မှု", | |
| ["dashboard.teamProgressDesc"] = "လက်ရှိအလုပ်ရှိသော အဖွဲ့ဝင်များ", | |
| ["dashboard.noAssignedWork"] = "ခွဲဝေထားသော အလုပ် မရှိသေးပါ။", | |
| ["dashboard.upcomingDeadlines"] = "မကြာမီရောက်မည့် နောက်ဆုံးရက်များ", | |
| ["dashboard.projectsEndingSoon"] = "မကြာမီပြီးဆုံးမည့် စီမံကိန်းများ", | |
| ["dashboard.ends"] = "ပြီးဆုံးရက်", | |
| ["dashboard.noUpcomingDeadlines"] = "မကြာမီရောက်မည့် နောက်ဆုံးရက် မရှိပါ။", | |
| ["dashboard.clickViewTasks"] = "\"အလုပ်များ ကြည့်ရန်\" ကိုနှိပ်ပြီး အသေးစိတ်ကြည့်ပါ", | |
| ["dashboard.complete"] = "ပြီးစီးမှု", | |
| ["dashboard.noProjectsForAccount"] = "ဤအကောင့်အတွက် စီမံကိန်း မရှိပါ။", | |
| ["dashboard.activeProjects"] = "လက်ရှိ စီမံကိန်းများ", | |
| ["dashboard.totalTasksMetric"] = "အလုပ် စုစုပေါင်း", | |
| ["dashboard.teamMembers"] = "အဖွဲ့ဝင်များ", | |
| ["dashboard.overdueTasks"] = "နောက်ကျနေသော အလုပ်များ", | |
| ["dashboard.allActive"] = "အားလုံး လက်ရှိ", | |
| ["dashboard.acrossProjects"] = "စီမံကိန်းများအတွင်း", | |
| ["dashboard.yourTeam"] = "သင့်အဖွဲ့", | |
| ["dashboard.needsAttention"] = "အာရုံစိုက်ရန် လိုသည်", | |
| ["dashboard.atRisk"] = "အန္တရာယ်ရှိ", | |
| ["dashboard.pending"] = "စောင့်ဆိုင်းနေသည်", | |
| ["dashboard.today"] = "ယနေ့", | |
| ["dashboard.done"] = "ပြီးစီးပြီး", | |
| ["dashboard.daysAgo"] = "လွန်ခဲ့သော {count} ရက်", | |
| ["dashboard.daysLeft"] = "{count} ရက် ကျန်", | |
| ["dashboard.dueToday"] = "ယနေ့ နောက်ဆုံးရက်", | |
| ["status.todo"] = "လုပ်ရန်", | |
| ["status.inprogress"] = "ဆောင်ရွက်နေသည်", | |
| ["status.done"] = "ပြီးဆုံး", | |
| ["status.overdue"] = "နောက်ကျ", | |
| ["status.clear"] = "ရှင်း", | |
| ["status.resolved"] = "ဖြေရှင်းပြီး", | |
| ["status.uncompleted"] = "မပြီးသေး", | |
| ["priority.low"] = "နိမ့်", | |
| ["priority.medium"] = "အလယ်", | |
| ["priority.high"] = "မြင့်", | |
| ["status.active"] = "အသုံးပြုနေသည်", | |
| ["status.inactive"] = "အသုံးမပြုတော့ပါ", | |
| ["field.name"] = "အမည်", | |
| ["field.title"] = "ခေါင်းစဉ်", | |
| ["field.email"] = "အီးမေးလ်", | |
| ["field.phone"] = "ဖုန်း", | |
| ["field.created"] = "ဖန်တီးသည့်ရက်", | |
| ["field.taskCode"] = "အလုပ်ကုဒ်", | |
| ["field.ipAddress"] = "IP လိပ်စာ", | |
| ["project.manageAll"] = "စီမံကိန်းအားလုံးကို စီမံပါ။", | |
| ["project.employeesInProject"] = "ဤစီမံကိန်းရှိ ဝန်ထမ်းများ", | |
| ["project.yourAssigned"] = "သင့်အား ခွဲဝေထားသော စီမံကိန်းများ။", | |
| ["project.newProject"] = "စီမံကိန်းအသစ်", | |
| ["project.editProject"] = "စီမံကိန်းပြင်ရန်", | |
| ["project.createProject"] = "စီမံကိန်းဖန်တီးရန်", | |
| ["project.untitledProject"] = "အမည်မရှိသော စီမံကိန်း", | |
| ["project.noProjectsYet"] = "စီမံကိန်းမရှိသေးပါ", | |
| ["project.createFirstProject"] = "စတင်ရန် ပထမဆုံးစီမံကိန်းကို ဖန်တီးပါ။", | |
| ["project.noAssignedProjects"] = "သင့်အား စီမံကိန်းမခွဲဝေထားသေးပါ။", | |
| ["project.projectName"] = "စီမံကိန်းအမည်", | |
| ["project.projectDescriptionOptional"] = "စီမံကိန်းဖော်ပြချက် (မဖြည့်လည်းရသည်)", | |
| ["project.updateTitle"] = "စီမံကိန်း အပ်ဒိတ်လုပ်မလား?", | |
| ["project.updateConfirm"] = "ဤစီမံကိန်းကို အပ်ဒိတ်လုပ်ရန် သေချာပါသလား?", | |
| ["project.createTitle"] = "စီမံကိန်း ဖန်တီးမလား?", | |
| ["project.createConfirm"] = "ဤစီမံကိန်းကို ဖန်တီးရန် သေချာပါသလား?", | |
| ["project.deleteTitle"] = "စီမံကိန်း ဖျက်မလား?", | |
| ["project.deleteConfirm"] = "ဤစီမံကိန်းကို ဖျက်ရန် သေချာပါသလား? ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်၍ မရပါ။", | |
| ["project.created"] = "စီမံကိန်းကို အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ။", | |
| ["project.updated"] = "စီမံကိန်းကို အောင်မြင်စွာ အပ်ဒိတ်လုပ်ပြီးပါပြီ။", | |
| ["project.deleted"] = "စီမံကိန်းကို အောင်မြင်စွာ ဖျက်ပြီးပါပြီ။", | |
| ["project.failedDelete"] = "စီမံကိန်းကို ဖျက်၍ မရပါ။", | |
| ["task.manageAll"] = "စီမံကိန်းအားလုံးရှိ အလုပ်များကို ကြည့်ရှု၍ စီမံပါ။", | |
| ["task.filterByProject"] = "စီမံကိန်းဖြင့် စစ်ထုတ်ရန်", | |
| ["task.yourAssigned"] = "သင့်အား ခွဲဝေထားသော အလုပ်များ။", | |
| ["task.newTask"] = "အလုပ်အသစ်", | |
| ["task.editTask"] = "အလုပ်ပြင်ရန်", | |
| ["task.createTask"] = "အလုပ် ဖန်တီးမည်", | |
| ["task.untitledTask"] = "ခေါင်းစဉ်မရှိသော အလုပ်", | |
| ["task.noTasksYet"] = "အလုပ်မရှိသေးပါ", | |
| ["task.createFirstTask"] = "စတင်ရန် ပထမဆုံးအလုပ်ကို ဖန်တီးပါ။", | |
| ["task.taskTitle"] = "အလုပ်ခေါင်းစဉ်", | |
| ["task.taskDescription"] = "အလုပ်ဖော်ပြချက်", | |
| ["task.selectProject"] = "စီမံကိန်းရွေးပါ...", | |
| ["task.loadingBoard"] = "ဘုတ်ကို ဖွင့်နေသည်...", | |
| ["task.dragHint"] = "အခြေအနေပြောင်းရန် အလုပ်များကို ကော်လံများကြား ဆွဲရွှေ့ပါ။", | |
| ["task.viewingArchived"] = "သိမ်းဆည်းထားသော အလုပ်များကို ကြည့်နေသည်။", | |
| ["task.backToBoard"] = "ဘုတ်သို့ ပြန်သွားမည်", | |
| ["task.archivedTasks"] = "သိမ်းဆည်းထားသော အလုပ်များ", | |
| ["task.archived"] = "သိမ်းဆည်းပြီး", | |
| ["task.dropTasksHere"] = "အလုပ်များကို ဤနေရာတွင် ချပါ", | |
| ["task.noTasks"] = "အလုပ်မရှိပါ", | |
| ["task.of"] = "မှ", | |
| ["task.due"] = "ပြီးဆုံးရန်", | |
| ["task.previousPage"] = "ယခင်စာမျက်နှာ", | |
| ["task.nextPage"] = "နောက်စာမျက်နှာ", | |
| ["task.createTitle"] = "အလုပ် ဖန်တီးမလား?", | |
| ["task.createConfirm"] = "ဤအလုပ်ကို ဖန်တီးရန် သေချာပါသလား?", | |
| ["task.updateTitle"] = "အလုပ် အပ်ဒိတ်လုပ်မလား?", | |
| ["task.updateConfirm"] = "ဤအလုပ်ကို အပ်ဒိတ်လုပ်ရန် သေချာပါသလား?", | |
| ["task.deleteTitle"] = "အလုပ် ဖျက်မလား?", | |
| ["task.deleteConfirm"] = "ဤအလုပ်ကို ဖျက်ရန် သေချာပါသလား? ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်၍ မရပါ။", | |
| ["task.archiveDoneTitle"] = "ပြီးဆုံးသော အလုပ်များ သိမ်းဆည်းမလား?", | |
| ["task.archiveDoneInProject"] = "ဤစီမံကိန်းရှိ ပြီးဆုံးသော အလုပ် {count} ခုကို သိမ်းဆည်းမလား? သိမ်းဆည်းပြီးပါက လက်ရှိမြင်ကွင်းများတွင် ဖျောက်ထားမည်။", | |
| ["task.archiveDoneAll"] = "မြင်နေရသော စီမံကိန်းအားလုံးရှိ ပြီးဆုံးသော အလုပ် {count} ခုကို သိမ်းဆည်းမလား? သိမ်းဆည်းပြီးပါက လက်ရှိမြင်ကွင်းများတွင် ဖျောက်ထားမည်။", | |
| ["task.noDoneToArchive"] = "သိမ်းဆည်းရန် ပြီးဆုံးသော အလုပ်မရှိပါ။", | |
| ["task.created"] = "အလုပ်ကို အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ!", | |
| ["task.updated"] = "အလုပ်ကို အောင်မြင်စွာ အပ်ဒိတ်လုပ်ပြီးပါပြီ!", | |
| ["task.deleted"] = "အလုပ်ကို အောင်မြင်စွာ ဖျက်ပြီးပါပြီ!", | |
| ["task.failedCreate"] = "အလုပ်ဖန်တီး၍ မရပါ။", | |
| ["task.failedDelete"] = "အလုပ်ဖျက်၍ မရပါ။", | |
| ["task.failedMove"] = "အလုပ်ကို ရွှေ့၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["task.failedArchiveDone"] = "ပြီးဆုံးထားသော အလုပ်များကို သိမ်းဆည်း၍ မရပါ။", | |
| ["task.archivedOneDone"] = "ပြီးဆုံးထားသော အလုပ် ၁ ခုကို သိမ်းဆည်းပြီးပါပြီ။", | |
| ["task.archivedManyDone"] = "ပြီးဆုံးထားသော အလုပ် {count} ခုကို သိမ်းဆည်းပြီးပါပြီ။", | |
| ["task.archive"] = "သိမ်းဆည်းမည်", | |
| ["role.rolesAccess"] = "အခန်းကဏ္ဍနှင့် ဝင်ခွင့်များ", | |
| ["role.rolesAccessDesc"] = "အခန်းကဏ္ဍများ၊ ဝင်ခွင့်များနှင့် ခွင့်ပြုချက်များကို စီမံပါ။", | |
| ["role.newRole"] = "အခန်းကဏ္ဍအသစ်", | |
| ["role.editRole"] = "အခန်းကဏ္ဍ ပြင်ရန်", | |
| ["role.createNewRole"] = "အခန်းကဏ္ဍအသစ် ဖန်တီးရန်", | |
| ["role.roleName"] = "အခန်းကဏ္ဍအမည်", | |
| ["role.roleNameBurmese"] = "မြန်မာအမည်", | |
| ["role.roleNameEnglish"] = "အင်္ဂလိပ်အမည်", | |
| ["role.descriptionBurmese"] = "မြန်မာဖော်ပြချက်", | |
| ["role.descriptionEnglish"] = "အင်္ဂလိပ်ဖော်ပြချက်", | |
| ["role.searchByName"] = "အခန်းကဏ္ဍအမည်ဖြင့် ရှာပါ...", | |
| ["role.loadingRoles"] = "အခန်းကဏ္ဍများ ဖွင့်နေသည်...", | |
| ["role.noRolesYet"] = "အခန်းကဏ္ဍမရှိသေးပါ", | |
| ["role.createFirstRole"] = "စတင်ရန် ပထမဆုံးအခန်းကဏ္ဍကို ဖန်တီးပါ။", | |
| ["role.manageAccess"] = "ဝင်ခွင့် စီမံရန်", | |
| ["role.access"] = "ဝင်ခွင့်", | |
| ["role.assignAccess"] = "ဝင်ခွင့် ခွဲဝေရန်", | |
| ["role.accessHint"] = "စာမျက်နှာများသည် ဘယ်နေရာသို့ ဝင်နိုင်သည်ကို ထိန်းချုပ်ပြီး လုပ်ဆောင်ချက်များသည် ဘာလုပ်နိုင်သည်ကို ထိန်းချုပ်သည်။", | |
| ["role.createHint"] = "ဤအခန်းကဏ္ဍ မြင်နိုင်၊ လုပ်နိုင်သည့်အရာများကို ညာဘက်တွင် ရွေးပါ။ အခန်းကဏ္ဍနှင့်အတူ သိမ်းဆည်းမည်။", | |
| ["role.descriptionPlaceholder"] = "ဤအခန်းကဏ္ဍသည် ဘာလုပ်နိုင်သလဲ?", | |
| ["role.examplePlaceholder"] = "ဥပမာ မန်နေဂျာ၊ ကြည့်ရှုသူ", | |
| ["role.updateTitle"] = "အခန်းကဏ္ဍ အပ်ဒိတ်လုပ်မလား?", | |
| ["role.updateConfirm"] = "ဤအခန်းကဏ္ဍကို အပ်ဒိတ်လုပ်ရန် သေချာပါသလား?", | |
| ["role.createTitle"] = "အခန်းကဏ္ဍ ဖန်တီးမလား?", | |
| ["role.createConfirm"] = "ဤအခန်းကဏ္ဍကို ဖန်တီးရန် သေချာပါသလား?", | |
| ["role.deleteTitle"] = "အခန်းကဏ္ဍ ဖျက်မလား?", | |
| ["role.deleteConfirm"] = "ဤအခန်းကဏ္ဍကို ဖျက်ရန် သေချာပါသလား? ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်၍ မရပါ။", | |
| ["role.cannotDeleteTitle"] = "အခန်းကဏ္ဍကို ဖျက်၍မရပါ", | |
| ["role.cannotDeleteUsers"] = "ဤအခန်းကဏ္ဍတွင် အသုံးပြုသူ {count} ယောက် ရှိသောကြောင့် ဖျက်၍မရပါ။", | |
| ["role.created"] = "အခန်းကဏ္ဍကို အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ။", | |
| ["role.updated"] = "အခန်းကဏ္ဍကို အောင်မြင်စွာ အပ်ဒိတ်လုပ်ပြီးပါပြီ။", | |
| ["role.deleted"] = "အခန်းကဏ္ဍကို အောင်မြင်စွာ ဖျက်ပြီးပါပြီ။", | |
| ["role.failedDelete"] = "အခန်းကဏ္ဍကို ဖျက်၍ မရပါ။", | |
| ["role.saveAccess"] = "အသုံးပြုခွင့် သိမ်းမည်", | |
| ["role.accessConfigured"] = "အသုံးပြုခွင့်နှင့် ခွင့်ပြုချက်များကို သတ်မှတ်ပါ", | |
| ["role.permissionsHint"] = "မီနူးများသည် စာမျက်နှာဖွင့်ခွင့်ဖြစ်ပြီး ခွင့်ပြုချက်များသည် လုပ်ဆောင်ချက်များကို ဖွင့်ပေးသည်။", | |
| ["role.changeApplyAfterSave"] = "သိမ်းပြီးနောက် ပြောင်းလဲချက်များ သက်ရောက်ပါမည်။", | |
| ["role.noAccessItemsFound"] = "ဒေတာဘေ့စ်တွင် အသုံးပြုခွင့် အချက်အလက်များ မတွေ့ပါ။", | |
| ["role.noPagesMatchSearch"] = "ရှာဖွေမှုနှင့် ကိုက်ညီသော စာမျက်နှာ သို့မဟုတ် ခွင့်ပြုချက် မရှိပါ။", | |
| ["role.pagePermissionHint"] = "စာမျက်နှာအသုံးပြုခွင့်သည် ဤအပိုင်းကို ဖွင့်ခွင့်ပေးပြီး ခွင့်ပြုချက်များသည် အတွင်းရှိ ခလုတ်နှင့် လုပ်ဆောင်ချက်များကို အသုံးပြုခွင့်ပေးသည်။", | |
| ["role.nothingInsidePage"] = "ဤစာမျက်နှာအတွင်း ထပ်မံအသုံးပြုနိုင်သောအရာ မရှိပါ။", | |
| ["role.crudPermissions"] = "ဤစာမျက်နှာအတွက် CRUD ခွင့်ပြုချက်များ", | |
| ["role.willBeSaved"] = "သိမ်းဆည်းမည်", | |
| ["role.selectedItems"] = "ရွေးထားသောအရာ {count} ခု", | |
| ["role.accessSaved"] = "အသုံးပြုခွင့်များကို အောင်မြင်စွာ သိမ်းပြီးပါပြီ။", | |
| ["role.failedLoadAccess"] = "အသုံးပြုခွင့် အချက်အလက်များကို ဖတ်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["role.failedSaveAccess"] = "အသုံးပြုခွင့်ကို သိမ်း၍ မရပါ။", | |
| ["common.unknown"] = "မသိပါ", | |
| ["common.saving"] = "သိမ်းနေသည်...", | |
| ["common.creating"] = "ဖန်တီးနေသည်...", | |
| ["common.searchRoles"] = "အခန်းကဏ္ဍ ရှာရန်", | |
| ["common.searchTasksByTitle"] = "အလုပ်ခေါင်းစဉ်ဖြင့် ရှာပါ...", | |
| ["common.allStatuses"] = "အခြေအနေအားလုံး", | |
| ["common.allPriorities"] = "ဦးစားပေးအားလုံး", | |
| ["common.budgetedHours"] = "ခန့်မှန်းနာရီ", | |
| ["common.budgetedHoursOptional"] = "ခန့်မှန်းနာရီ (မဖြည့်လည်းရသည်)", | |
| ["action.search"] = "ရှာမည်", | |
| ["action.reset"] = "ပြန်လည်သတ်မှတ်မည်", | |
| ["action.exportExcel"] = "Excel ထုတ်မည်", | |
| ["action.exportPdf"] = "PDF ထုတ်မည်", | |
| ["action.edit"] = "ပြင်မည်", | |
| ["action.delete"] = "ဖျက်မည်", | |
| ["action.add"] = "ထည့်မည်", | |
| ["action.create"] = "ဖန်တီးမည်", | |
| ["action.update"] = "အပ်ဒိတ်လုပ်မည်", | |
| ["action.save"] = "သိမ်းမည်", | |
| ["action.assign"] = "ခွဲဝေမည်", | |
| ["action.viewTasks"] = "လုပ်ငန်းများ ကြည့်မည်", | |
| ["action.archiveDone"] = "ပြီးဆုံးများ သိမ်းဆည်းမည်", | |
| ["action.clear"] = "ရှင်းမည်", | |
| ["result.loading"] = "ဖွင့်နေသည်...", | |
| ["result.saved"] = "အောင်မြင်စွာ သိမ်းပြီးပါပြီ။", | |
| ["result.created"] = "အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ။", | |
| ["result.updated"] = "အောင်မြင်စွာ အပ်ဒိတ်ပြီးပါပြီ။", | |
| ["result.deleted"] = "အောင်မြင်စွာ ဖျက်ပြီးပါပြီ။", | |
| ["report.periodFilter"] = "ကာလ", | |
| ["report.daily"] = "နေ့စဉ် (ယနေ့)", | |
| ["report.monthly"] = "လစဉ် (ယခုလ)", | |
| ["report.yearly"] = "နှစ်စဉ် (ယခုနှစ်)", | |
| ["report.customRange"] = "စိတ်ကြိုက်အပိုင်းအခြား", | |
| ["report.selectedProject"] = "ရွေးထားသော စီမံကိန်း", | |
| ["report.openIssues"] = "ဖွင့်ထားသော ပြဿနာများ", | |
| ["report.lastActivity"] = "နောက်ဆုံး လုပ်ဆောင်ချက်", | |
| ["report.noTasksFound"] = "အလုပ်မတွေ့ပါ", | |
| ["report.noTasksFoundDesc"] = "လက်ရှိစစ်ထုတ်မှုများနှင့် ကိုက်ညီသော အလုပ် မရှိပါ။ ရှာဖွေမှု သို့မဟုတ် စစ်ထုတ်ချက်များကို ပြင်ဆင်ကြည့်ပါ။", | |
| ["report.noIssuesFound"] = "ပြဿနာမတွေ့ပါ", | |
| ["report.noIssuesFoundDesc"] = "လက်ရှိအစီရင်ခံ စစ်ထုတ်ချက်များနှင့် ကိုက်ညီသော ပြဿနာ မရှိပါ။", | |
| ["report.healthCritical"] = "အရေးကြီး", | |
| ["report.healthAtRisk"] = "အန္တရာယ်ရှိ", | |
| ["report.healthGood"] = "ကောင်းမွန်", | |
| ["report.healthWatch"] = "စောင့်ကြည့်", | |
| ["report.health"] = "ကျန်းမာရေး အခြေအနေ", | |
| ["report.delay"] = "နှောင့်နှေးချက်", | |
| ["report.noEffortEntries"] = "အချိန်မှတ်တမ်း မတွေ့ပါ", | |
| ["report.noEffortEntriesDesc"] = "လက်ရှိစစ်ထုတ်မှုများနှင့် ကိုက်ညီသော အချိန်မှတ်တမ်း မရှိပါ။", | |
| ["report.totalEstimatedEffort"] = "စုစုပေါင်း ခန့်မှန်းအားစိုက်မှု", | |
| ["report.variance"] = "ကွာခြားချက်", | |
| ["report.utilization"] = "အသုံးချမှု", | |
| ["report.timesheetEntries"] = "အချိန်မှတ်တမ်းပြဿနာများ", | |
| ["report.delayType"] = "နှောင့်နှေးမှုအမျိုးအစား", | |
| ["report.days"] = "ရက်", | |
| ["report.aheadOfSchedule"] = "အစီအစဉ်ထက် စောနေသည်", | |
| ["report.blockedOverdue"] = "ပိတ်ဆို့ / နောက်ကျ", | |
| ["report.noProjectData"] = "စစ်ထုတ်ချက်နှင့် ကိုက်ညီသော စီမံကိန်းအချက်အလက် မတွေ့ပါ။", | |
| ["report.employee"] = "ဝန်ထမ်း", | |
| ["report.assignedIssues"] = "တာဝန်ပေးထားသော ပြဿနာများ", | |
| ["report.openOverdue"] = "ဖွင့်ထား / နောက်ကျ", | |
| ["report.workload"] = "အလုပ်ပမာဏ", | |
| ["report.trend"] = "အလားအလာ", | |
| ["report.workloadHigh"] = "များ", | |
| ["report.workloadLight"] = "နည်း", | |
| ["report.workloadBalanced"] = "မျှတ", | |
| ["report.trendImproving"] = "တိုးတက်နေသည်", | |
| ["report.trendDeclining"] = "ကျဆင်းနေသည်", | |
| ["report.trendStable"] = "တည်ငြိမ်", | |
| ["report.noEmployeeData"] = "စစ်ထုတ်ချက်နှင့် ကိုက်ညီသော ဝန်ထမ်းအချက်အလက် မတွေ့ပါ။", | |
| ["validation.startDateRequired"] = "စတင်ရက် လိုအပ်ပါသည်။", | |
| ["validation.dueDateRequired"] = "ပြီးဆုံးရက် လိုအပ်ပါသည်။", | |
| ["validation.dueDateBeforeStart"] = "ပြီးဆုံးရက်သည် စတင်ရက်ထက် စော၍ မရပါ။", | |
| ["validation.projectNameRequired"] = "စီမံကိန်းအမည် လိုအပ်ပါသည်။", | |
| ["validation.endDateBeforeStart"] = "ပြီးဆုံးရက်သည် စတင်ရက်ထက် စော၍ မရပါ။", | |
| ["validation.taskTitleRequired"] = "လုပ်ငန်းခေါင်းစဉ် လိုအပ်ပါသည်။", | |
| ["validation.selectProjectRequired"] = "စီမံကိန်းတစ်ခုကို ရွေးပါ။", | |
| ["validation.selectTaskRequired"] = "လုပ်ငန်းတစ်ခုကို ရွေးပါ။", | |
| ["validation.issueTitleRequired"] = "ပြဿနာခေါင်းစဉ် လိုအပ်ပါသည်။", | |
| ["validation.completeNameRequired"] = "မြန်မာ သို့မဟုတ် အင်္ဂလိပ်ဘာသာဖြင့် အမည်အပြည့်အစုံ ထည့်ပါ။", | |
| ["validation.roleNameRequired"] = "အခန်းကဏ္ဍအမည် လိုအပ်ပါသည်။", | |
| ["validation.passwordMinLength"] = "စကားဝှက်မှာ အနည်းဆုံး ၆ လုံး ရှိရမည်။", | |
| ["validation.usernameMinLength"] = "အသုံးပြုသူအမည်မှာ အနည်းဆုံး ၃ လုံး ရှိရမည်။", | |
| ["validation.usernameNoSpaces"] = "အသုံးပြုသူအမည်တွင် space မပါရပါ။", | |
| ["validation.usernameInvalidCharacters"] = "အသုံးပြုသူအမည်တွင် space မပါရပါ၊ စာလုံး၊ နံပါတ်၊ underscore (_) နှင့် dot (.) သာ အသုံးပြုနိုင်သည်။", | |
| ["validation.passwordMinLengthRule"] = "စကားဝှက်မှာ အနည်းဆုံး ၈ လုံး ရှိရမည်။", | |
| ["validation.passwordComplexityRule"] = "စကားဝှက်တွင် အနည်းဆုံး uppercase တစ်လုံး၊ lowercase တစ်လုံး၊ နံပါတ်တစ်လုံးနှင့် အထူးလက္ခဏာတစ်လုံး ပါရမည်။", | |
| ["validation.fillAllFields"] = "လိုအပ်သော အကွက်များအားလုံးကို ဖြည့်ပါ။", | |
| ["common.password"] = "စကားဝှက်", | |
| ["common.usernameOrEmail"] = "အသုံးပြုသူအမည် သို့မဟုတ် ဂျီမေးလ်", | |
| ["common.email"] = "အီးမေးလ်", | |
| ["auth.registerAccountTitle"] = "Taskify အကောင့် ဖန်တီးပါ", | |
| ["auth.alreadyHaveAccess"] = "အကောင့်ရှိပြီးသားလား?", | |
| ["auth.firstName"] = "ပထမအမည်", | |
| ["auth.lastName"] = "မျိုးရိုးအမည်", | |
| ["auth.firstNamePlaceholder"] = "ပထမအမည် ထည့်ပါ", | |
| ["auth.lastNamePlaceholder"] = "မျိုးရိုးအမည် ထည့်ပါ", | |
| ["auth.phone"] = "ဖုန်းနံပါတ် (မဖြစ်မနေ မဟုတ်ပါ)", | |
| ["auth.phonePlaceholder"] = "ဖုန်းနံပါတ် ထည့်ပါ", | |
| ["auth.register"] = "အကောင့်ဖွင့်ရန်", | |
| ["auth.registerTitle"] = "မှတ်ပုံတင်ရန် - Taskify", | |
| ["auth.usernameOrEmail"] = "အသုံးပြုသူအမည် သို့မဟုတ် ဂျီမေးလ်", | |
| ["auth.enterUsernameOrEmail"] = "အသုံးပြုသူအမည် သို့မဟုတ် ဂျီမေးလ် ထည့်ပါ", | |
| ["auth.recoveryCode"] = "ပြန်လည်ရယူရေးကုဒ်", | |
| ["auth.enterRecoveryCode"] = "ပြန်လည်ရယူရေးကုဒ် ထည့်ပါ", | |
| ["auth.newPassword"] = "စကားဝှက်အသစ်", | |
| ["auth.resetPasswordHelp"] = "API တွင် သတ်မှတ်ထားသော ပြန်လည်ရယူရေးကုဒ်ဖြင့် စကားဝှက်အသစ် သတ်မှတ်ပါ။", | |
| ["auth.unableToResetPassword"] = "စကားဝှက်ကို ပြန်လည်သတ်မှတ်၍ မရပါ။", | |
| ["task.loadingDetails"] = "လုပ်ငန်း အသေးစိတ်များကို ဖွင့်နေသည်...", | |
| ["task.notFound"] = "လုပ်ငန်း ရှာမတွေ့ပါ", | |
| ["task.notFoundDesc"] = "သင်ရှာဖွေနေသော လုပ်ငန်းသည် မရှိတော့ပါ သို့မဟုတ် ဖျက်လိုက်ပါပြီ။", | |
| ["task.editTitle"] = "ခေါင်းစဉ် ပြင်ဆင်ရန်", | |
| ["task.saving"] = "သိမ်းဆည်းနေသည်...", | |
| ["task.properties"] = "ဂုဏ်သတ္တိများ", | |
| ["comment.comments"] = "မှတ်ချက်များ", | |
| ["comment.deleteComment"] = "မှတ်ချက်ဖျက်မည်", | |
| ["comment.deleteCommentTitle"] = "မှတ်ချက် ဖျက်မလား?", | |
| ["comment.deleteCommentConfirm"] = "ဤမှတ်ချက်ကို ဖျက်ရန် သေချာပါသလား။ ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်၍မရပါ။", | |
| ["comment.noComments"] = "မှတ်ချက်များ မရှိသေးပါ။", | |
| ["comment.startConversation"] = "အောက်တွင် စကားဝိုင်းကို စတင်ပါ။", | |
| ["comment.writeComment"] = "မှတ်ချက်တစ်ခု ရေးပါ...", | |
| ["theme.switchToDarkMode"] = "Dark mode သို့ ပြောင်းရန်", | |
| ["theme.switchToLightMode"] = "Light mode သို့ ပြောင်းရန်", | |
| ["page.loadingPage"] = "စာမျက်နှာကို ဖွင့်နေသည်...", | |
| ["page.notFound"] = "စာမျက်နှာ ရှာမတွေ့ပါ။", | |
| ["report.projectHealthMatrix"] = "စီမံကိန်း ကျန်းမာရေး မက်ထရစ်", | |
| ["report.projectHealthMatrixDesc"] = "ပြဿနာ အန္တရာယ်နှင့် စီမံကိန်းတိုးတက်မှု အခြေအနေ။", | |
| ["report.projectHealthMatrixInsight"] = "အပေါ်ညာဘက်ရှိ စီမံကိန်းများသည် တိုးတက်မှုနှေးကွေးပြီး ပြဿနာဖိအားများ ရှိနေသည်။", | |
| ["report.actualEffortAboveEstimate"] = "အမှန်တကယ် လုပ်ဆောင်မှုမှာ ခန့်မှန်းခြေထက် {hours} နာရီ ပိုများနေသည်။", | |
| ["report.actualEffortUnderEstimate"] = "အမှန်တကယ် လုပ်ဆောင်မှုမှာ ခန့်မှန်းခြေအောက် {hours} နာရီ လျော့နည်းသည်။", | |
| ["report.utilizationAbovePlan"] = "အသုံးပြုမှုသည် အစီအစဉ်ထက် ကျော်လွန်နေသည်။ ခန့်မှန်းချက်များနှင့် ပိတ်ဆို့မှုများကို ပြန်လည်သုံးသပ်ပါ။", | |
| ["report.utilizationBelowPlan"] = "လုပ်ဆောင်မှုမှတ်တမ်းမှာ အစီအစဉ်အောက် ရောက်နေသည်။ အလုပ်မှတ်တမ်းများ သေချာတင်ရန် လိုအပ်သည်။", | |
| ["report.utilizationCloseToPlan"] = "အသုံးပြုမှုသည် စီမံကိန်း ရေးဆွဲမှု အကွာအဝေးအတွင်း ရှိသည်။", | |
| ["report.accuracyExceedingEstimate"] = "ပြဿနာအများစုမှာ ခန့်မှန်းခြေထက် ကျော်လွန်နေသည်။", | |
| ["report.accuracyWithinEstimate"] = "ပြဿနာအများစုမှာ ခန့်မှန်းခြေအတွင်း သို့မဟုတ် အောက်တွင် ရှိသည်။", | |
| ["report.remainingEstimate"] = "ကျန်ရှိသော ခန့်မှန်းခြေ", | |
| ["report.overLabel"] = "ကျော်လွန်", | |
| ["report.overEstimateDesc"] = "ခန့်မှန်းချက်ထက် ကျော်လွန်သည်", | |
| ["report.legend"] = "ရှင်းလင်းချက်", | |
| ["report.riskSeverity"] = "အန္တရာယ် ပြင်းထန်မှု", | |
| ["report.lowUrgency"] = "အရေးတကြီးဖြစ်မှု နည်း", | |
| ["report.highUrgency"] = "အရေးတကြီးဖြစ်မှု များ", | |
| ["report.lowRisk"] = "အန္တရာယ် နည်း", | |
| ["report.noMatrixData"] = "မက်ထရစ် အချက်အလက် မတွေ့ပါ။", | |
| ["report.riskMatrix"] = "အန္တရာယ် မက်ထရစ်", | |
| ["report.noProjects"] = "စီမံကိန်း မရှိပါ", | |
| ["report.urgencyLabel"] = "အရေးတကြီးဖြစ်မှု", | |
| ["report.projectsCount"] = "စီမံကိန်း(များ)", | |
| ["report.itemsCount"] = "ခု", | |
| ["report.noComparisonData"] = "နှိုင်းယှဉ်ရန် အချက်အလက် မရှိပါ။", | |
| ["report.medium"] = "အလယ်အလတ်", | |
| ["report.completionVsRisk"] = "ပြီးစီးမှု နှင့် အန္တရာယ်", | |
| ["report.completionVsRiskInsight"] = "ပြဿနာဖိအားများပြီး ပြီးစီးမှုနည်းသော စီမံကိန်းများကို ဦးစွာ ပြန်လည်သုံးသပ်သင့်သည်။", | |
| ["report.reviewNow"] = "ချက်ချင်း သုံးသပ်ရန်", | |
| ["report.lowCompletionHighRisk"] = "ပြီးစီးမှုနည်း · အန္တရာယ်များ", | |
| ["report.watchClosely"] = "အနီးကပ် စောင့်ကြည့်ရန်", | |
| ["report.highCompletionHighRisk"] = "ပြီးစီးမှုများ · အန္တရာယ်များ", | |
| ["report.recoverPlan"] = "အစီအစဉ် ပြန်လည်ထူထောင်ရန်", | |
| ["report.lowCompletionLowRisk"] = "ပြီးစီးမှုနည်း · အန္တရာယ်နည်း", | |
| ["report.onTrack"] = "ပုံမှန်အတိုင်းရှိသည်", | |
| ["report.highCompletionLowRisk"] = "ပြီးစီးမှုများ · အန္တရာယ်နည်း", | |
| ["report.percentComplete"] = "ပြီးစီးမှု {percent}%", | |
| ["report.color"] = "အရောင်", | |
| ["report.topAtRiskProjects"] = "အန္တရာယ်အများဆုံး စီမံကိန်းများ", | |
| ["report.topAtRiskProjectsDesc"] = "စီမံကိန်းရေးဆွဲရန် ဦးစွာ ဂရုစိုက်ရမည့် စီမံကိန်းများ။", | |
| ["report.topAtRiskProjectsInsight"] = "အန္တရာယ်များတွင် ရက်လွန်၊ ပိတ်ဆို့မှု၊ ဖွင့်ထားသော ပြဿနာများနှင့် စီမံကိန်း ကျန်းမာရေးတို့ ပါဝင်သည်။", | |
| ["report.timelineSummary"] = "အချိန်ဇယား အနှစ်ချုပ်", | |
| ["report.timelineSummaryDesc"] = "ပြီးစီးမှုအခြေအနေပါရှိသော စီမံကိန်း အချိန်ဇယား။", | |
| ["report.timelineSummaryInsight"] = "ဤအရာသည် အစီရင်ခံစာမှ ထွက်စရာမလိုဘဲ စီမံကိန်းရေးဆွဲမှု အခြေအနေကို ဖော်ပြပေးသည်။", | |
| ["report.openOverdueBlockingIssues"] = "စီမံကိန်းအလိုက် ဖွင့်ထားသော၊ ရက်လွန်နှင့် ပိတ်ဆို့ထားသော ပြဿနာများ", | |
| ["report.issuesCompositionByProject"] = "စီမံကိန်းအလိုက် ဖွင့်ထားသော၊ ရက်လွန်နှင့် ပိတ်ဆို့ထားသော ပြဿနာများ", | |
| ["report.issuesCompositionByProjectDesc"] = "စီမံကိန်းစုစုပေါင်းရှိ ပြဿနာများ၏ ဖွဲ့စည်းမှု။", | |
| ["report.issuesCompositionByProjectInsight"] = "လုပ်ဆောင်ဆဲအလုပ်သည် ပုံမှန်ဖြစ်သော်လည်း ရက်လွန်နှင့် ပိတ်ဆို့ထားသောအလုပ်များသည် ဖြေရှင်းရန် အချက်ပြချက်ဖြစ်သည်။", | |
| ["report.noAtRiskProjects"] = "လက်ရှိစစ်ထုတ်မှုတွင် အန္တရာယ်ရှိသော စီမံကိန်းများ မရှိပါ။", | |
| ["report.estVsActualEffort"] = "ခန့်မှန်းခြေနှင့် အမှန်တကယ် လုပ်ဆောင်မှု", | |
| ["report.estVsActualEffortDesc"] = "အစီအစဉ်များသည် အမှန်တကယ် လုပ်ဆောင်မှုနှင့် ကိုက်ညီပါသလား။", | |
| ["report.actual"] = "အမှန်တကယ်", | |
| ["report.estimated"] = "ခန့်မှန်းခြေ", | |
| ["report.utilizationGaugeDesc"] = "ခန့်မှန်းခြေအပေါ် အမှန်တကယ် အသုံးပြုထားသော နာရီများ၏ အချိုးအစား။", | |
| ["report.varianceLabel"] = "ကွာခြားချက်", | |
| ["report.usedLabel"] = "အသုံးပြုမှု", | |
| ["report.estimateAccuracyDesc"] = "ခန့်မှန်းခြေအတွင်း မည်မျှပြီးစီးခဲ့သနည်း။", | |
| ["report.onOrUnder"] = "ခန့်မှန်းချက်အတွင်း/အောက်", | |
| ["report.issuesLabel"] = "ပြဿနာများ", | |
| ["report.effortByProjectDesc"] = "လှုပ်ရှားနေသော စီမံကိန်းများအကြား အမှန်တကယ် နာရီများ ဖြန့်ဝေမှု။", | |
| ["report.effortByProjectInsight"] = "မျှော်လင့်ထားသည်ထက် ပိုမိုလုပ်ဆောင်မှုများ သုံးစွဲနေသော စီမံကိန်းများကို ရှာဖွေရန် ဤအရာကို သုံးပါ။", | |
| ["report.effortLeaderboardDesc"] = "အလုပ်မှတ်တမ်း အများဆုံးရှိသော ဝန်ထမ်းများ။", | |
| ["report.effortLeaderboardInsight"] = "အမည်များသည် လုပ်ဆောင်နိုင်စွမ်း ခွဲဝေမှုကို ဖော်ပြခြင်းဖြစ်ပြီး စွမ်းဆောင်ရည်ကို အကဲဖြတ်ခြင်း မဟုတ်ပါ။", | |
| ["report.noEmployeeEffort"] = "ဝန်ထမ်းများ၏ လုပ်ဆောင်မှု အချက်အလက် မရှိပါ။", | |
| ["report.openIssuesSegment"] = "ဖွင့်ထားသော ပြဿနာများ", | |
| ["report.overdueIssuesSegment"] = "ရက်လွန် ပြဿနာများ", | |
| ["report.blockedIssuesSegment"] = "ပိတ်ဆို့ထားသော ပြဿနာများ", | |
| ["report.keyInsights"] = "အဓိက သုံးသပ်ချက်များ", | |
| ["project.assignDescription"] = "လုပ်ငန်းမြင်နိုင်မှုကို ထိန်းချုပ်ရန် အဖွဲ့ဝင်များကို စီမံကိန်းများသို့ သတ်မှတ်ပေးပါ။", | |
| ["project.assignmentsSaved"] = "စီမံကိန်း တာဝန်ချထားမှုများကို အောင်မြင်စွာ သိမ်းဆည်းပြီးပါပြီ။", | |
| ["project.failedSaveAssignment"] = "တာဝန်ချထားမှုကို သိမ်းဆည်း၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["project.selectProjectPrompt"] = "အသုံးပြုသူ ခွဲဝေမှုများကို စီမံခန့်ခွဲရန် ဘယ်ဘက်အကန့်မှ စီမံကိန်းတစ်ခုကို ရွေးချယ်ပေးပါ။", | |
| ["issue.addIssueDescription"] = "လုပ်ငန်းတစ်ခုအတွက် တစ်ရက်တာ အလုပ်ပြဿနာတစ်ခု ဖန်တီးပြီး သင်အသုံးပြုခဲ့သည့် နာရီများကို မှတ်တမ်းတင်ပါ။", | |
| ["issue.untitledIssue"] = "ခေါင်းစဉ်မရှိသော ပြဿနာ", | |
| ["issue.created"] = "ပြဿနာကို အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ။", | |
| ["issue.updated"] = "ပြဿနာကို အောင်မြင်စွာ ပြင်ဆင်ပြီးပါပြီ။", | |
| ["issue.deleted"] = "ပြဿနာကို အောင်မြင်စွာ ဖျက်ပြီးပါပြီ။", | |
| ["issue.saveConfirmMessage"] = "ဤပြဿနာ၏ ပြင်ဆင်ချက်များကို သိမ်းဆည်းရန် သေချာပါသလား။", | |
| ["issue.whatDidYouWorkOn"] = "သင် ဘာလုပ်ခဲ့သလဲ။", | |
| ["issue.addShortNote"] = "သင်လုပ်ဆောင်ခဲ့သည့် အလုပ်အကြောင်း အကျဉ်းချုပ် ရေးသားပါ...", | |
| ["issue.exampleEstimatedHours"] = "ဥပမာ ၄", | |
| ["issue.exampleActualHours"] = "ဥပမာ ၇", | |
| ["issue.actualHoursHint"] = "ယနေ့ သင်အသုံးပြုခဲ့သည့် စုစုပေါင်းနာရီကို ထည့်သွင်းပါ။ ပုံမှန်အလုပ်လုပ်ရက်အတွက် ဤအရာသည် ပုံမှန်အားဖြင့် ၇ နာရီ ဖြစ်သည်။", | |
| ["issue.blockedByPlaceholder"] = "မှီခိုမှု၊ လူ သို့မဟုတ် အဖွဲ့", | |
| ["issue.delayReasonPlaceholder"] = "ဤပြဿနာ အဘယ်ကြောင့် နှောင့်နှေးရသနည်း။", | |
| ["issue.teamLead"] = "အဖွဲ့ခေါင်းဆောင်", | |
| ["issue.pm"] = "စီမံကိန်းမန်နေဂျာ", | |
| ["issue.manager"] = "မန်နေဂျာ", | |
| ["translation.generateEnglishSpelling"] = "အင်္ဂလိပ်စာလုံးပေါင်း ဖန်တီးပေးရန်", | |
| ["translation.generateBurmeseName"] = "မြန်မာအမည် ရေးသားပေးရန်", | |
| ["translation.generateEnglish"] = "အင်္ဂလိပ်ဘာသာ ပြန်ဆိုရန်", | |
| ["translation.generateBurmese"] = "မြန်မာဘာသာ ပြန်ဆိုရန်", | |
| ["translation.englishDetected"] = "ဤစာသားသည် အင်္ဂလိပ်ဘာသာဖြစ်ပုံရသည်။ အင်္ဂလိပ်အကွက်သို့ ရွှေ့မည်လား။", | |
| ["issue.failedCreate"] = "ပြဿနာ ဖန်တီး၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["issue.dateRangeInvalid"] = "ပြီးဆုံးရက်သည် စတင်ရက်ထက် စော၍ မရပါ။", | |
| ["user.editUser"] = "အသုံးပြုသူကို ပြင်ဆင်မည်", | |
| ["user.createUser"] = "အသုံးပြုသူ ဖန်တီးမည်လား။", | |
| ["user.updateUser"] = "အသုံးပြုသူကို အပ်ဒိတ်လုပ်မည်လား။", | |
| ["user.deleteUser"] = "အသုံးပြုသူကို ဖျက်မည်လား။", | |
| ["user.updateUserConfirm"] = "ဤအသုံးပြုသူကို အပ်ဒိတ်လုပ်ရန် သေချာပါသလား။", | |
| ["user.createUserConfirm"] = "ဤအသုံးပြုသူကို ဖန်တီးရန် သေချာပါသလား။", | |
| ["user.deleteUserConfirm"] = "ဤအသုံးပြုသူကို ဖျက်ရန် သေချာပါသလား။ ဤလုပ်ဆောင်ချက်ကို ပြန်ပြင်၍ မရပါ။", | |
| ["user.cannotDeleteSelf"] = "မိမိ၏အကောင့်ကို မိမိကိုယ်တိုင် ဖျက်၍ မရပါ။", | |
| ["result.userCreated"] = "အသုံးပြုသူကို အောင်မြင်စွာ ဖန်တီးပြီးပါပြီ။", | |
| ["result.userUpdated"] = "အသုံးပြုသူကို အောင်မြင်စွာ အပ်ဒိတ်လုပ်ပြီးပါပြီ။", | |
| ["result.userDeleted"] = "အသုံးပြုသူကို အောင်မြင်စွာ ဖျက်ပြီးပါပြီ။", | |
| ["result.failedToDeleteUser"] = "အသုံးပြုသူကို ဖျက်၍ မရပါ။", | |
| ["result.userSaveFailed"] = "အသုံးပြုသူကို သိမ်းဆည်း၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["status.blocked"] = "ပိတ်ဆို့ထားသည်", | |
| ["report.assignedToMe"] = "ကျွန်ုပ်ထံ တာဝန်ပေးထားသော", | |
| ["report.assignedToMyTeam"] = "ကျွန်ုပ်၏အဖွဲ့ထံ တာဝန်ပေးထားသော", | |
| ["report.total"] = "စုစုပေါင်း", | |
| ["report.capacitySupportList"] = "လုပ်ဆောင်နိုင်စွမ်း အကူအညီစာရင်း", | |
| ["report.completedVsOpenIssues"] = "ပြီးစီးသော နှင့် ဖွင့်ထားသော ပြဿနာများ", | |
| ["report.completionPattern"] = "ပြီးစီးမှု ပုံစံ", | |
| ["report.effortByProject"] = "စီမံကိန်းအလိုက် လုပ်ဆောင်မှု", | |
| ["report.effortLeaderboard"] = "အလုပ်အများဆုံး အဖွဲ့ဝင်များ", | |
| ["report.estimateAccuracy"] = "ခန့်မှန်းမှု တိကျမှု", | |
| ["report.estimatedVsActual"] = "ခန့်မှန်းခြေနှင့် အမှန်တကယ် လုပ်ဆောင်မှု", | |
| ["report.overdueSupport"] = "ရက်လွန်မှု အကူအညီ", | |
| ["report.utilizationGauge"] = "အသုံးပြုမှု တိုင်းတာမှု", | |
| ["report.workloadHeatmap"] = "အလုပ်ပမာဏ အပူမြေပုံ", | |
| ["common.rememberMe"] = "အကောင့်ဝင်ထားရန် မှတ်မည်", | |
| ["auth.needAccount"] = "အကောင့်မရှိသေးပါသလား?", | |
| ["auth.resetPassword"] = "စကားဝှက် ပြန်လည်သတ်မှတ်ရန်", | |
| ["result.signedOut"] = "အကောင့်မှ အောင်မြင်စွာ ထွက်ပြီးပါပြီ။", | |
| ["result.passwordUpdated"] = "စကားဝှက်ကို အောင်မြင်စွာ ပြောင်းပြီးပါပြီ။ စကားဝှက်အသစ်ဖြင့် အကောင့်ဝင်ပါ။", | |
| ["result.apiUnavailable"] = "API ဆာဗာကို ဆက်သွယ်၍ မရပါ။ TaskTrackingSystem.WebApi ကို ဖွင့်ထားပြီး ပြန်ကြိုးစားပါ။", | |
| ["result.registrationFailed"] = "အကောင့်ဖွင့်၍ မရပါ။ ထပ်မံကြိုးစားပါ။", | |
| ["result.resetPasswordFailed"] = "စကားဝှက်ကို ပြန်လည်သတ်မှတ်၍ မရပါ။", | |
| ["result.invalidCredentials"] = "အသုံးပြုသူအမည်/ဂျီမေးလ် သို့မဟုတ် စကားဝှက် မမှန်ပါ။", | |
| ["result.noPermissionUpdateTasks"] = "လုပ်ငန်းများကို ပြင်ဆင်ရန် ခွင့်ပြုချက် မရှိပါ။", | |
| ["result.usernameTaken"] = "ဤအသုံးပြုသူအမည်ကို အသုံးပြုပြီးသား ဖြစ်ပါသည်။", | |
| ["result.emailRegistered"] = "ဤအီးမေးလ်ကို မှတ်ပုံတင်ပြီးသား ဖြစ်ပါသည်။", | |
| ["result.noSystemRoles"] = "စနစ်အခန်းကဏ္ဍများ မသတ်မှတ်ထားသေးပါ။ အကောင့်ဖွင့်၍ မရပါ။", | |
| ["result.invalidRecoveryCode"] = "ပြန်လည်ရယူရေးကုဒ် မမှန်ပါ။", | |
| ["result.accountNotFound"] = "အကောင့် ရှာမတွေ့ပါ။", | |
| ["report.1to3Days"] = "၁-၃ ရက်", | |
| ["report.4to7Days"] = "၄-၇ ရက်", | |
| ["report.8PlusDays"] = "၈ ရက်နှင့်အထက်", | |
| ["report.1to7Late"] = "၁-၇ ရက် နောက်ကျ", | |
| ["report.8PlusLate"] = "၈ ရက်နှင့်အထက် နောက်ကျ", | |
| ["report.agingBuckets"] = "ကြာမြင့်ချိန် အပိုင်းများ", | |
| ["report.agingBucketsDesc"] = "နှောင့်နှေးနေသော အလုပ်များ စောင့်ဆိုင်းနေရသည့် ကြာချိန်။", | |
| ["report.allReportedIssues"] = "အစီရင်ခံထားသော ပြဿနာအားလုံး", | |
| ["report.avgRate"] = "ပျမ်းမျှနှုန်း", | |
| ["report.assignedColumn"] = "တာဝန်ပေးထားသော", | |
| ["report.openColumn"] = "ဖွင့်ထားသော", | |
| ["report.overdueColumn"] = "ရက်လွန်", | |
| ["report.capacitySupportDesc"] = "အကူအညီလိုအပ်မှု အချက်ပြချက်များကို လုပ်ဆောင်နိုင်စွမ်း အန္တရာယ်အဖြစ် ဖော်ပြထားသည်။", | |
| ["report.capacitySupportInsight"] = "အကူအညီ ခွဲဝေပေးရန်နှင့် ပိတ်ဆို့မှုများ ဖယ်ရှားရန် အသုံးပြုပါ၊ လူများကို အဆင့်သတ်မှတ်ရန် မဟုတ်ပါ။", | |
| ["report.completedIssues"] = "ပြီးစီးသော ပြဿနာများ", | |
| ["report.completedWorkLeading"] = "လက်ရှိ စစ်ထုတ်ထားသော အစုတွင် ပြီးစီးသောအလုပ်က အများဆုံးဖြစ်သည်။", | |
| ["report.completion"] = "ပြီးစီးမှု", | |
| ["report.completionHealthy"] = "လက်ရှိ စစ်ထုတ်မှုအရ ပြီးစီးမှု အခြေအနေကောင်းမွန်သည်။", | |
| ["report.completionImprove"] = "ပြီးစီးမှု တိုးတက်ရန် နေရာရှိသည်။ ဖွင့်ထားသော ပြဿနာများနှင့် ရက်လွန်အလုပ်များကို စစ်ဆေးပါ။", | |
| ["report.completionMovement"] = "ပြီးစီးမှု ရွေ့လျားမှု", | |
| ["report.completionMovementDesc"] = "ဖန်တီးသည့်လအလိုက် မကြာသေးမီက ပြီးစီးသော လုပ်ငန်းများ။", | |
| ["report.completionPatternDesc"] = "မြင်ရသော ဝန်ထမ်းများ၏ ပြီးစီးမှုနှုန်း။", | |
| ["report.completionPatternInsight"] = "ပြီးစီးမှုသည် တစ်နေရာတည်းတွင် စုနေသလား သို့မဟုတ် မျှတသလားကို အမြန်ကြည့်နိုင်သည်။", | |
| ["report.completionVsRiskDesc"] = "စီမံကိန်းတစ်ခုချင်းစီကို ပြီးစီးမှုနှင့် ပြဿနာဖိအားအလိုက် ပြထားသည်။", | |
| ["report.couldNotLoad"] = "လုပ်ငန်း အစီရင်ခံစာကို ဖွင့်၍ မရပါ။", | |
| ["report.created"] = "ဖန်တီးထားသော", | |
| ["report.critical"] = "အရေးကြီး", | |
| ["report.criticalTasksNeedAttention"] = "အရေးကြီးသော လုပ်ငန်းများကို ဂရုပြုရန် လိုအပ်သည်။", | |
| ["report.currentlyBeingWorked"] = "လက်ရှိ လုပ်ဆောင်နေသည်", | |
| ["report.delayReason"] = "နှောင့်နှေးရသည့် အကြောင်းပြချက်", | |
| ["report.dueLater"] = "နောက်ပိုင်း ပြီးစီးရန်", | |
| ["report.dueSoon"] = "မကြာမီ ပြီးစီးရန်", | |
| ["report.employeesWithOverdueLoad"] = "ရက်လွန် ပြဿနာအလုပ်ပမာဏရှိသော ဝန်ထမ်းများ။", | |
| ["report.executionRisk"] = "စစ်ထုတ်ထားသော ပြဿနာအစု၏ လုပ်ဆောင်မှု အန္တရာယ်။", | |
| ["report.focusStandup"] = "နေ့စဉ်အစည်းအဝေးတွင် ဤအချက်ကို ဦးစွာ ဆွေးနွေးပါ။", | |
| ["report.highPriorityTasks"] = "ဦးစားပေးမြင့် လုပ်ငန်းများ", | |
| ["report.highPriorityVisible"] = "စီမံကိန်းပြန်လည်သုံးသပ်ချိန်တွင် ဦးစားပေးမြင့် လုပ်ငန်းများကို ဆက်လက်မြင်ရအောင်ထားသင့်သည်။", | |
| ["report.issueLifecycleFunnel"] = "ပြဿနာ လုပ်ဆောင်မှုအဆင့်များ", | |
| ["report.issueLifecycleFunnelDesc"] = "ပြဿနာများသည် backlog မှ ဖြေရှင်းပြီးသည်အထိ မည်သို့ရွေ့လျားသနည်း။", | |
| ["report.issueLifecycleInsight"] = "ဆောင်ရွက်နေသော သို့မဟုတ် ပိတ်ဆို့ထားသော အပိုင်းများများပြားခြင်းသည် နေ့စဉ်လုပ်ဆောင်မှု အချက်ပြချက်ဖြစ်သည်။", | |
| ["report.issuesByAssignee"] = "တာဝန်ယူသူအလိုက် ပြဿနာများ", | |
| ["report.issuesByAssigneeDesc"] = "တာဝန်ယူသူအလိုက် လိုအပ်သော အကူအညီ။", | |
| ["report.issuesByAssigneeInsight"] = "အထူးသဖြင့် ရက်လွန် သို့မဟုတ် ပိတ်ဆို့ထားသည့် အရာများ စုနေချိန်တွင် အကူအညီလိုအပ်မှု အချက်ပြချက်အဖြစ် အသုံးပြုပါ။", | |
| ["report.issuesByProject"] = "စီမံကိန်းအလိုက် ပြဿနာများ", | |
| ["report.issuesByProjectDesc"] = "ပြဿနာအရေအတွက် မည်သည့်နေရာတွင် စုစည်းနေသနည်း။", | |
| ["report.issuesByProjectInsight"] = "စီမံကိန်းအဆင့် ပြဿနာခွဲခြမ်းခြင်းနှင့် စီမံကိန်းကျန်းမာရေးအတွက် အသုံးဝင်သည်။", | |
| ["report.issuesStillOpen"] = "ရွေးချယ်ထားသော အတိုင်းအတာအတွင်း ပြဿနာများ ဖွင့်ထားဆဲဖြစ်သည်။", | |
| ["report.issueStatusDonut"] = "ပြဿနာ အခြေအနေ စက်ဝိုင်းဇယား", | |
| ["report.issueStatusDonutDesc"] = "ရက်လွန်ဖိအားအပါအဝင် လက်ရှိအခြေအနေများ၏ ဖြန့်ဝေမှု။", | |
| ["report.loadError"] = "လုပ်ငန်း အစီရင်ခံစာဒေတာ ဖွင့်နေစဉ် ဆာဗာအမှားတစ်ခု ပြန်ပေးခဲ့သည်။", | |
| ["report.loadingIssueReport"] = "ပြဿနာ အစီရင်ခံစာကို ဖွင့်နေသည်...", | |
| ["report.loadingOverdueTasks"] = "ရက်လွန်လုပ်ငန်းများကို ဖွင့်နေသည်...", | |
| ["report.loadingTimesheet"] = "အချိန်မှတ်တမ်းဒေတာကို ဖွင့်နေသည်...", | |
| ["report.manager"] = "မန်နေဂျာ", | |
| ["report.needsUnblockReview"] = "ပိတ်ဆို့မှု ဖြေရှင်းရန် ပြန်လည်သုံးသပ်ရမည်", | |
| ["report.noAssigneeDelay"] = "တာဝန်ယူသူအလိုက် နှောင့်နှေးမှု စုစည်းနေခြင်း မတွေ့ပါ။", | |
| ["report.noCapacityRisks"] = "လက်ရှိ စစ်ထုတ်မှုတွင် လုပ်ဆောင်နိုင်စွမ်း အန္တရာယ် မရှိပါ။", | |
| ["report.noHighPriority"] = "လက်ရှိ စစ်ထုတ်မှုတွင် ဦးစားပေးမြင့် လုပ်ငန်း မရှိပါ။", | |
| ["report.noOverdueSupport"] = "ရက်လွန်မှုနှင့် ပတ်သက်သော အကူအညီလိုအပ်ချက် မတွေ့ပါ။", | |
| ["report.noProjectDelay"] = "စီမံကိန်းအလိုက် နှောင့်နှေးမှု စုစည်းနေခြင်း မတွေ့ပါ။", | |
| ["report.openIssuesAttached"] = "အစီရင်ခံထားသော လုပ်ငန်းများနှင့် ဖွင့်ထားသော ပြဿနာများ ချိတ်ဆက်ထားသည်။", | |
| ["report.overdueSupportInsight"] = "ရက်လွန်အရေအတွက်များကို အကူအညီတောင်းဆိုမှုများအဖြစ် သတ်မှတ်ပါ။", | |
| ["report.overdueTasks"] = "ရက်လွန် လုပ်ငန်းများ", | |
| ["report.pm"] = "စီမံကိန်းမန်နေဂျာ", | |
| ["report.priorityDistribution"] = "ဦးစားပေးအလိုက် ဖြန့်ဝေမှု", | |
| ["report.priorityDistributionDesc"] = "လုပ်ငန်းဦးစားပေးအလိုက် စီမံကိန်းဖိအား။", | |
| ["report.resolutionAging"] = "ဖြေရှင်းမှု ကြာမြင့်ချိန်", | |
| ["report.resolutionAgingDesc"] = "ပြဿနာများသည် သတ်မှတ်ရက်နီးကပ်နေသလား သို့မဟုတ် ကျော်လွန်နေသလား။", | |
| ["report.resolutionAgingInsight"] = "နယ်ပယ်အသစ် မတိုးချဲ့မီ ကြာမြင့်နေသော ရက်လွန်အပိုင်းများကို ရှင်းလင်းသင့်သည်။", | |
| ["report.resolvedIssuesLeading"] = "လက်ရှိ စစ်ထုတ်ထားသော အစုတွင် ဖြေရှင်းပြီးသော ပြဿနာများက အများဆုံးဖြစ်သည်။", | |
| ["report.risk"] = "အန္တရာယ်", | |
| ["report.riskScore"] = "အန္တရာယ်အမှတ်", | |
| ["report.riskIssues"] = "အန္တရာယ်ရှိ ပြဿနာများ", | |
| ["report.supportSignal"] = "အကူအညီလိုအပ်မှု အချက်ပြချက်", | |
| ["report.tasks"] = "လုပ်ငန်းများ", | |
| ["report.tasksHaveOverdueIssues"] = "လုပ်ငန်းများတွင် ရက်လွန် ပြဿနာများ ရှိသည်။", | |
| ["report.tasksStillMoving"] = "လုပ်ငန်းများသည် လုပ်ဆောင်မှုအဆင့်များအတွင်း ဆက်လက်ရွေ့လျားနေသည်။", | |
| ["report.taskStatusMix"] = "လုပ်ငန်း အခြေအနေ ရောနှောမှု", | |
| ["report.taskStatusMixDesc"] = "လုပ်ငန်းလုပ်ဆောင်မှုသည် lifecycle အတွင်း မည်သည့်နေရာတွင် ရှိနေသနည်း။", | |
| ["report.tasksWithMostIssues"] = "ဖွင့်ထားသော ပြဿနာအများဆုံး လုပ်ငန်းများ", | |
| ["report.tasksWithMostIssuesDesc"] = "တိုးတက်မှု ဆက်လက်ရွေ့လျားရန် ပြဿနာများ ရှင်းလင်းရန် လိုအပ်နိုင်သော ပိတ်ဆို့မှုများ။", | |
| ["report.tasksWithMostIssuesInsight"] = "မည်သည့်နေရာတွင် ပြဿနာခွဲခြမ်းခြင်းက လုပ်ငန်းတိုးတက်မှုကို အမြန်ဆုံး ဖြစ်စေမည်ကို ဆုံးဖြတ်ရန် အသုံးပြုပါ။", | |
| ["report.teamExecutionBalance"] = "ပြဿနာအခြေအနေအလိုက် အဖွဲ့၏ လုပ်ဆောင်မှု မျှတမှု။", | |
| ["report.teamLead"] = "အဖွဲ့ခေါင်းဆောင်", | |
| ["report.topProjectRisk"] = "အန္တရာယ်အများဆုံး စီမံကိန်း", | |
| ["report.topProjectRiskDesc"] = "လုပ်ငန်းနှင့် ပြဿနာဖိအား အမြင့်ဆုံးရှိသော စီမံကိန်းများ။", | |
| ["report.topProjectRiskInsight"] = "အမှတ်တွင် လုပ်ငန်းအရေအတွက်၊ ဖွင့်ထားသော ပြဿနာ၊ ရက်လွန်ပြဿနာနှင့် အရေးကြီးလုပ်ငန်း အခြေအနေတို့ ပါဝင်သည်။", | |
| ["report.unresolvedIssues"] = "မဖြေရှင်းရသေးသော ပြဿနာများ", | |
| ["report.workloadHeatmapDesc"] = "တာဝန်ပေးထားသော အလုပ်၊ ဖွင့်ထားသော ပြဿနာ၊ ရက်လွန်ပြဿနာနှင့် နာရီများမှ လုပ်ဆောင်နိုင်စွမ်း အချက်ပြချက်များ။", | |
| ["report.workloadHeatmapInsight"] = "အရောင်ပိုမိုနက်သော အကွက်များသည် အကူအညီ သို့မဟုတ် နယ်ပယ်ပြင်ဆင်မှု လိုအပ်နိုင်သည်ကို ဆိုလိုသည်။", | |
| ["report.funnelBaselineNote"] = "အကျယ်ကို {label} ({value}) နှင့် နှိုင်းယှဉ်တိုင်းတာသည်။ တန်ဖိုးသုညအဆင့်များတွင် အရောင်မပါသော လမ်းကြောင်းအလွတ်ကို ထားရှိသည်။", | |
| ["report.noStage"] = "{stage} မရှိပါ", | |
| ["report.funnelTooltip"] = "{label}: {value} (အခြေခံတန်ဖိုး၏ {percent}%)", | |
| ["report.noAgingData"] = "ကြာမြင့်ချိန် အချက်အလက် မရှိပါ။", | |
| ["report.noChartData"] = "အချက်အလက် မရှိပါ။", | |
| ["report.noFunnelData"] = "funnel အချက်အလက် မရှိပါ။", | |
| ["report.noWorkloadData"] = "အလုပ်ပမာဏ အချက်အလက် မရှိပါ။", | |
| ["report.noRiskItems"] = "ပြသရန် အန္တရာယ်အချက်များ မရှိပါ။", | |
| ["report.notEnoughTrendData"] = "အလားအလာပြရန် အချက်အလက် မလုံလောက်သေးပါ။", | |
| ["report.stackedProgress"] = "အဆင့်လိုက် တိုးတက်မှု", | |
| ["report.statusDistribution"] = "အခြေအနေ ဖြန့်ဝေမှု", | |
| ["report.needsSupport"] = "အကူအညီ လိုအပ်သည်", | |
| ["report.tracked"] = "ခြေရာခံပြီး", | |
| ["report.completedTasks"] = "ပြီးစီးသော လုပ်ငန်းများ", | |
| ["report.assignedTasks"] = "တာဝန်ပေးအပ်ထားသော လုပ်ငန်းများ", | |
| ["report.capacityRisk"] = "လုပ်ဆောင်နိုင်စွမ်း အန္တရာယ်", | |
| ["report.noIssues"] = "ပြဿနာ မရှိပါ", | |
| ["report.open"] = "ဖွင့်ထားသော", | |
| ["report.timeTrackingTitle"] = "အချိန်နှင့် အားထုတ်မှု ခြေရာခံခြင်း အစီရင်ခံစာ", | |
| ["report.timeTrackingHeading"] = "အချိန်နှင့် အားထုတ်မှု ခြေရာခံခြင်း", | |
| ["report.timeTrackingDesc"] = "ခန့်မှန်းခြေနာရီများ၊ ပြီးစီးမှု အချိန်ဇယားများနှင့် ပြဿနာများတစ်လျှောက် အရင်းအမြစ် အားထုတ်မှု ခွဲဝေမှုများကို ပြန်လည်သုံးသပ်ပါ။", | |
| ["report.overdueTasksPageTitle"] = "နောက်ကျနှင့် နှောင့်နှေးသော လုပ်ငန်းများ အစီရင်ခံစာ", | |
| ["report.overdueTasksHeading"] = "နောက်ကျနှင့် နှောင့်နှေးသော လုပ်ငန်းများ", | |
| ["report.overdueTasksDesc"] = "သတ်မှတ်ရက် ကျော်လွန်သွားသော သို့မဟုတ် နှောင့်နှေးရန် အန္တရာယ်ရှိသော လုပ်ငန်းများကို ခြေရာခံပါ။", | |
| ["report.highPriorityOverdue"] = "ဦးစားပေးမြင့် ရက်လွန်လုပ်ငန်းများ", | |
| ["report.highPriorityOverdueDesc"] = "ချက်ချင်းပံ့ပိုးမှု လိုအပ်သော အရေးကြီးသည့်အလုပ်များ။", | |
| ["report.overdueInsight"] = "ဤအရာများကို အဖွဲ့များအလုပ်ပိတ်ဆို့မှု ရှင်းလင်းနိုင်ရန် လုပ်ဆောင်နိုင်စွမ်းအန္တရာယ်များအဖြစ် သတ်မှတ်ပါ၊ ပြစ်တင်ရန်မဟုတ်ပါ။", | |
| ["report.dueWithin3Days"] = "၃ ရက်အတွင်း ပြီးစီးရန်", | |
| ["report.avgDaysOverdue"] = "ပျှမ်းမျှ ရက်လွန်နေသည့် ရက်များ", | |
| ["report.allDelayed"] = "နှောင့်နှေးမှု အားလုံး", | |
| ["report.overduePastDue"] = "ရက်လွန် (သတ်မှတ်ရက် ကျော်လွန်)", | |
| ["report.showingDelayedTasks"] = "ပြသနေသည်", | |
| ["report.delayedOrOverdueTasks"] = "နှောင့်နှေး / ရက်လွန် လုပ်ငန်း(များ)", | |
| ["report.delayEscalation"] = "နှောင့်နှေးမှု / အဆင့်မြှင့်တင်မှု", | |
| ["report.noReasonRecorded"] = "အကြောင်းပြချက် မှတ်တမ်းတင်ထားခြင်း မရှိပါ", | |
| ["report.blockedBy"] = "ပိတ်ဆို့ထားသူ - ", | |
| ["report.escalation"] = "အဆင့်မြှင့်တင်မှု - ", | |
| ["report.capacitySupportNeeded"] = "လုပ်ဆောင်နိုင်စွမ်း အကူအညီ လိုအပ်နိုင်သည်", | |
| ["report.delayedTasksCount"] = "နှောင့်နှေးနေသော လုပ်ငန်း(များ)", | |
| ["report.needsAction"] = "လုပ်ဆောင်ရန် လိုအပ်သည်", | |
| ["report.notOverdueYet"] = "ရက်လွန်ခြင်းမရှိသေးပါ", | |
| ["report.earlyDelay"] = "အစောပိုင်း နှောင့်နှေးမှု", | |
| ["report.highRisk"] = "အန္တရာယ် မြင့်မားသည်", | |
| ["report.dueIn"] = "အတွင်း ပြီးစီးရန် ကျန်ရှိသည့်ရက်", | |
| ["report.noOverdueTasksDesc"] = "အလွန်ကောင်းမွန်ပါသည်။ လက်ရှိစစ်ထုတ်မှုများအရ ရက်လွန်နေသော သို့မဟုတ် နှောင့်နှေးနိုင်ခြေရှိသော လုပ်ငန်းများ မရှိပါ။", | |
| ["report.noOverdueTasks"] = "ရက်လွန်လုပ်ငန်းများ မရှိပါ", | |
| ["report.daysOverdue"] = "ရက်လွန်နေသည့်ရက်", | |
| ["common.searchByTaskAssigneeProject"] = "ခေါင်းစဉ်၊ တာဝန်ယူသူ သို့မဟုတ် စီမံကိန်းဖြင့် ရှာပါ...", | |
| ["notification.system"] = "စနစ်", | |
| ["notification.notifications"] = "အသိပေးချက်များ", | |
| ["notification.unread"] = "မဖတ်ရသေး", | |
| ["notification.clearRead"] = "ဖတ်ပြီးများ ရှင်းမည်", | |
| ["notification.loading"] = "အသိပေးချက်များကို ဖွင့်နေသည်...", | |
| ["notification.noneYet"] = "အသိပေးချက် မရှိသေးပါ", | |
| ["notification.emptyState"] = "သင့်လုပ်ငန်းဆိုင်ရာ သတိပေးချက်များကို ဤနေရာတွင် ပြသပါမည်။", | |
| ["notification.clearReadTitle"] = "ဖတ်ပြီးအသိပေးချက်များကို ရှင်းမည်လား?", | |
| ["notification.clearReadMessage"] = "သင့်စာရင်းမှ ဖတ်ပြီးသား အသိပေးချက်များအားလုံးကို အပြီးတိုင် ဖယ်ရှားမည်ဖြစ်သည်။", | |
| ["report.projectProgressTitle"] = "စီမံကိန်း တိုးတက်မှု အစီရင်ခံစာ", | |
| ["report.projectProgressHeading"] = "စီမံကိန်း တိုးတက်မှု", | |
| ["report.projectProgressDesc"] = "လုပ်ငန်းစီစဉ်မှုများနှင့် နေ့စဉ်လုပ်ငန်းပြဿနာများ နှစ်ခုစလုံးကို အသုံးပြု၍ စီမံကိန်းကျန်းမာရေးကို စောင့်ကြည့်ပါ။", | |
| ["report.searchProject"] = "စီမံကိန်း ရှာဖွေရန်", | |
| ["report.periodProjectStart"] = "ကာလ (စီမံကိန်း စတင်ရက်)", | |
| ["report.taskStatusCompletion"] = "လုပ်ငန်း အခြေအနေ ပြီးစီးမှု", | |
| ["report.totalIssues"] = "စုစုပေါင်း ပြဿနာများ", | |
| ["report.overdueIssues"] = "ရက်လွန် ပြဿနာများ", | |
| ["report.blockedIssues"] = "ပိတ်ဆို့ထားသော ပြဿနာများ", | |
| ["report.overdueIssuesNeedAttention"] = "ရက်လွန်ပြဿနာများကို ဂရုပြုရန် လိုအပ်သည်။", | |
| ["report.issuesAreBlocked"] = "ပြဿနာများ ပိတ်ဆို့နေပါသည်။", | |
| ["report.actualHoursAre"] = "အမှန်တကယ် လုပ်ဆောင်ချိန်မှာ", | |
| ["report.against"] = "ဖြစ်ပြီး နှိုင်းယှဉ်ချက်မှာ", | |
| ["report.searchEmployee"] = "ဝန်ထမ်း ရှာဖွေရန်", | |
| ["report.employeeWorkloadTitle"] = "ဝန်ထမ်း အလုပ်ပမာဏနှင့် စွမ်းဆောင်ရည်", | |
| ["report.employeeWorkloadHeading"] = "ဝန်ထမ်း အလုပ်ပမာဏနှင့် စွမ်းဆောင်ရည်", | |
| ["report.employeeWorkloadDesc"] = "ပြဿနာအလုပ်ပမာဏ၊ လုပ်ဆောင်မှုကျန်းမာရေးနှင့် အမှန်တကယ်အားစိုက်ထုတ်မှုတို့ကို စောင့်ကြည့်ပါ။", | |
| ["report.delaysByProject"] = "စီမံကိန်းအလိုက် နှောင့်နှေးမှုများ", | |
| ["report.delaysByProjectDesc"] = "နှောင့်နှေးမှုစုစည်းမှု အများဆုံးဖြစ်သော စီမံကိန်းနယ်ပယ်များ။", | |
| ["report.delaysByProjectInsight"] = "စီမံကိန်းများတစ်လျှောက် အစီအစဉ်ဆွဲခြင်းဆိုင်ရာ ဖိအားများကို ပြန်လည်မျှညှိရန် ဤအရာကို အသုံးပြုပါ။", | |
| ["report.delaysByAssignee"] = "တာဝန်ယူသူအလိုက် နှောင့်နှေးမှုများ", | |
| ["report.delaysByAssigneeDesc"] = "ပံ့ပိုးမှု သို့မဟုတ် နယ်ပယ်ပြင်ဆင်မှု လိုအပ်နိုင်သော အဖွဲ့ဝင်များ။", | |
| ["report.delaysByAssigneeInsight"] = "ပံ့ပိုးမှုအချက်ပြချက်သာဖြစ်သည် - များပြားသောအရေအတွက်သည် အကူအညီပေးရန်ဖြစ်ပြီး အပြစ်တင်ရန်မဟုတ်ပါ။", | |
| ["report.pastDueDate"] = "သတ်မှတ်ရက် ကျော်လွန်နေသည်", | |
| ["report.highPriorityDueSoon"] = "ဦးစားပေးမြင့်ပြီး မကြာမီ ပြီးဆုံးရမည်", | |
| ["report.severityVsDaysOverdue"] = "ပြင်းထန်မှု နှင့် ရက်လွန်ရက်များ", | |
| ["report.severityVsDaysOverdueDesc"] = "ဦးစားပေးမြင့်မားပြီး ပိုမိုကြာမြင့်သော နှောင့်နှေးမှုများသည် ညာဘက်အပေါ်ရှိ အန္တရာယ်ဇုန်တွင် တည်ရှိသည်။", | |
| ["report.severityMatrixInsight"] = "ဤမက်ထရစ်သည် ဦးစားပေးပြင်းထန်မှုကို နှောင့်နှေးချိန်သက်တမ်းနှင့် ပေါင်းစပ်ကာ ဖြေရှင်းရမည့် အစီအစဉ်ကို ပြသသည်။" | |
| }; | |
| private static readonly IReadOnlyDictionary<string, string> ErrorMessageKeys = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) | |
| { | |
| ["Invalid username/email or password."] = "result.invalidCredentials", | |
| ["Failed to parse authentication response tokens."] = "result.invalidCredentials", | |
| ["Please fill in all required fields."] = "validation.fillAllFields", | |
| ["Registration failed. Please try again."] = "result.registrationFailed", | |
| ["Failed to parse registration response."] = "result.registrationFailed", | |
| ["Username is already taken."] = "result.usernameTaken", | |
| ["Email is already registered."] = "result.emailRegistered", | |
| ["No system roles configured. Registration failed."] = "result.noSystemRoles", | |
| ["Unable to reach the API server. Please ensure TaskTrackingSystem.WebApi is running."] = "result.apiUnavailable", | |
| ["Unable to reach the API server. Start TaskTrackingSystem.WebApi and try again."] = "result.apiUnavailable", | |
| ["Failed to reset password."] = "result.resetPasswordFailed", | |
| ["Unable to reset password."] = "result.resetPasswordFailed", | |
| ["Invalid recovery code."] = "result.invalidRecoveryCode", | |
| ["Account not found."] = "result.accountNotFound", | |
| ["Username must be at least 3 characters long."] = "validation.usernameMinLength", | |
| ["Username cannot contain spaces."] = "validation.usernameNoSpaces", | |
| ["Username cannot contain spaces, and can only contain letters, numbers, underscores (_), and periods (.)"] = "validation.usernameInvalidCharacters", | |
| ["Username cannot contain spaces, and can only contain letters, numbers, underscores (_), and periods (.)."] = "validation.usernameInvalidCharacters", | |
| ["Password must be at least 6 characters."] = "validation.passwordMinLength", | |
| ["Password must be at least 8 characters long."] = "validation.passwordMinLengthRule", | |
| ["Password must contain at least one uppercase letter, one lowercase letter, one number, and one special character."] = "validation.passwordComplexityRule", | |
| ["Failed to update assignee."] = "task.failedUpdateAssignee", | |
| ["Failed to load project members."] = "task.failedLoadProjectMembers", | |
| ["Task assignee must belong to the selected project."] = "task.assigneeMustBelong", | |
| ["At least one task title is required."] = "task.titleRequiredEitherLanguage", | |
| ["You do not have permission to update tasks."] = "result.noPermissionUpdateTasks" | |
| }; | |
| private static readonly IReadOnlyDictionary<string, string> ValidationFieldNames = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase) | |
| { | |
| ["Username"] = "common.username", | |
| ["Email"] = "common.email", | |
| ["FirstName"] = "auth.firstName", | |
| ["LastName"] = "auth.lastName", | |
| ["Password"] = "common.password", | |
| ["NewPassword"] = "auth.newPassword", | |
| ["RecoveryCode"] = "auth.recoveryCode", | |
| ["UsernameOrEmail"] = "common.usernameOrEmail", | |
| ["Phone"] = "common.phone" | |
| }; | |
| public static bool IsBurmeseCulture => CultureInfo.CurrentUICulture.TwoLetterISOLanguageName.Equals("my", StringComparison.OrdinalIgnoreCase); | |
| public static string Text(string key, string fallback = "") | |
| { | |
| var catalog = IsBurmeseCulture ? Burmese : English; | |
| if (catalog.TryGetValue(key, out var value)) | |
| { | |
| return value; | |
| } | |
| if ((IsBurmeseCulture ? English : Burmese).TryGetValue(key, out value)) | |
| { | |
| return value; | |
| } | |
| return string.IsNullOrWhiteSpace(fallback) ? key : fallback; | |
| } | |
| public static string ErrorMessage(string? message, string fallback = "") | |
| { | |
| if (string.IsNullOrWhiteSpace(message)) | |
| { | |
| return Text("common.error", string.IsNullOrWhiteSpace(fallback) ? "Error" : fallback); | |
| } | |
| var trimmed = message.Trim(); | |
| if (ErrorMessageKeys.TryGetValue(trimmed, out var key)) | |
| { | |
| return Text(key, trimmed); | |
| } | |
| var requiredMessage = TryLocalizeRequiredFieldMessage(trimmed); | |
| if (!string.IsNullOrWhiteSpace(requiredMessage)) | |
| { | |
| return requiredMessage; | |
| } | |
| var localized = trimmed; | |
| foreach (var mappedError in ErrorMessageKeys) | |
| { | |
| if (localized.Contains(mappedError.Key, StringComparison.OrdinalIgnoreCase)) | |
| { | |
| localized = localized.Replace(mappedError.Key, Text(mappedError.Value, mappedError.Key), StringComparison.OrdinalIgnoreCase); | |
| } | |
| } | |
| foreach (var field in ValidationFieldNames) | |
| { | |
| var requiredError = $"The {field.Key} field is required."; | |
| if (localized.Contains(requiredError, StringComparison.OrdinalIgnoreCase)) | |
| { | |
| var fieldLabel = Text(field.Value, field.Key); | |
| var translated = IsBurmeseCulture ? $"{fieldLabel} လိုအပ်ပါသည်။" : $"{fieldLabel} is required."; | |
| localized = localized.Replace(requiredError, translated, StringComparison.OrdinalIgnoreCase); | |
| } | |
| } | |
| if (!string.Equals(localized, trimmed, StringComparison.Ordinal)) | |
| { | |
| return localized; | |
| } | |
| return trimmed; | |
| } | |
| private static string? TryLocalizeRequiredFieldMessage(string message) | |
| { | |
| const string requiredPrefix = "The "; | |
| const string requiredSuffix = " field is required."; | |
| if (!message.StartsWith(requiredPrefix, StringComparison.Ordinal) || | |
| !message.EndsWith(requiredSuffix, StringComparison.Ordinal)) | |
| { | |
| return null; | |
| } | |
| var fieldName = message[requiredPrefix.Length..^requiredSuffix.Length]; | |
| var fieldLabel = ValidationFieldNames.TryGetValue(fieldName, out var fieldKey) | |
| ? Text(fieldKey, fieldName) | |
| : fieldName; | |
| return IsBurmeseCulture | |
| ? $"{fieldLabel} လိုအပ်ပါသည်။" | |
| : $"{fieldLabel} is required."; | |
| } | |
| public static LocalizationCatalogValidation ValidateCatalogs(IEnumerable<string>? referencedKeys = null) | |
| { | |
| var englishKeys = English.Keys.ToHashSet(StringComparer.OrdinalIgnoreCase); | |
| var burmeseKeys = Burmese.Keys.ToHashSet(StringComparer.OrdinalIgnoreCase); | |
| var referenced = referencedKeys?.ToHashSet(StringComparer.OrdinalIgnoreCase) ?? new HashSet<string>(StringComparer.OrdinalIgnoreCase); | |
| return new LocalizationCatalogValidation( | |
| englishKeys.Except(burmeseKeys, StringComparer.OrdinalIgnoreCase).OrderBy(key => key).ToArray(), | |
| burmeseKeys.Except(englishKeys, StringComparer.OrdinalIgnoreCase).OrderBy(key => key).ToArray(), | |
| Array.Empty<string>(), | |
| referenced.Count == 0 | |
| ? Array.Empty<string>() | |
| : englishKeys.Concat(burmeseKeys).Distinct(StringComparer.OrdinalIgnoreCase) | |
| .Except(referenced, StringComparer.OrdinalIgnoreCase) | |
| .OrderBy(key => key) | |
| .ToArray()); | |
| } | |
| public static string LocalizeDigits(string? value) | |
| { | |
| if (!IsBurmeseCulture || string.IsNullOrEmpty(value)) | |
| { | |
| return value ?? string.Empty; | |
| } | |
| return value | |
| .Replace('0', '၀') | |
| .Replace('1', '၁') | |
| .Replace('2', '၂') | |
| .Replace('3', '၃') | |
| .Replace('4', '၄') | |
| .Replace('5', '၅') | |
| .Replace('6', '၆') | |
| .Replace('7', '၇') | |
| .Replace('8', '၈') | |
| .Replace('9', '၉'); | |
| } | |
| public static string Number(int value) => LocalizeDigits(value.ToString(CultureInfo.InvariantCulture)); | |
| public static string Number(long value) => LocalizeDigits(value.ToString(CultureInfo.InvariantCulture)); | |
| public static string Number(decimal value, string format = "0.#") => LocalizeDigits(value.ToString(format, CultureInfo.InvariantCulture)); | |
| public static string Number(double value, string format = "0.#") => LocalizeDigits(value.ToString(format, CultureInfo.InvariantCulture)); | |
| public static string MonthName(DateTime value, bool abbreviated = false) | |
| { | |
| if (!IsBurmeseCulture) | |
| { | |
| return value.ToString(abbreviated ? "MMM" : "MMMM", CultureInfo.InvariantCulture); | |
| } | |
| var months = abbreviated | |
| ? new[] { "ဇန်", "ဖေ", "မတ်", "ဧပြီ", "မေ", "ဇွန်", "ဇူလိုင်", "သြဂုတ်", "စက်", "အောက်", "နို", "ဒီ" } | |
| : new[] { "ဇန်နဝါရီ", "ဖေဖော်ဝါရီ", "မတ်", "ဧပြီ", "မေ", "ဇွန်", "ဇူလိုင်", "သြဂုတ်", "စက်တင်ဘာ", "အောက်တိုဘာ", "နိုဝင်ဘာ", "ဒီဇင်ဘာ" }; | |
| return months[value.Month - 1]; | |
| } | |
| public static string PageTitle(string key, string fallback = "") => Text($"page.{key}", fallback); | |
| public static string PageDescription(string key, string fallback = "") => Text($"page.{key}.desc", fallback); | |
| public static string StatusLabel(AppTaskStatus status) => status switch | |
| { | |
| AppTaskStatus.InProgress => Text("status.inprogress", "In Progress"), | |
| AppTaskStatus.Done => Text("status.done", "Done"), | |
| _ => Text("status.todo", "To Do") | |
| }; | |
| public static string PriorityLabel(TaskPriority priority) => priority switch | |
| { | |
| TaskPriority.High => Text("priority.high", "High"), | |
| TaskPriority.Medium => Text("priority.medium", "Medium"), | |
| _ => Text("priority.low", "Low") | |
| }; | |
| public static string StatusName(string? statusName) | |
| { | |
| if (string.IsNullOrWhiteSpace(statusName)) | |
| { | |
| return Text("common.unknown", "Unknown"); | |
| } | |
| return statusName.Trim().Replace(" ", "", StringComparison.OrdinalIgnoreCase).ToLowerInvariant() switch | |
| { | |
| "todo" => Text("status.todo", "To Do"), | |
| "inprogress" => Text("status.inprogress", "In Progress"), | |
| "done" => Text("status.done", "Done"), | |
| "active" => Text("status.active", "Active"), | |
| "inactive" => Text("status.inactive", "Inactive"), | |
| "overdue" => Text("status.overdue", "Overdue"), | |
| "blocked" => Text("status.blocked", "Blocked"), | |
| "resolved" => Text("status.resolved", "Resolved"), | |
| "clear" => Text("status.clear", "Clear"), | |
| _ => statusName | |
| }; | |
| } | |
| public static string PriorityName(string? priorityName) | |
| { | |
| if (string.IsNullOrWhiteSpace(priorityName)) | |
| { | |
| return Text("common.unknown", "Unknown"); | |
| } | |
| return priorityName.Trim().ToLowerInvariant() switch | |
| { | |
| "high" => Text("priority.high", "High"), | |
| "medium" => Text("priority.medium", "Medium"), | |
| "low" => Text("priority.low", "Low"), | |
| _ => priorityName | |
| }; | |
| } | |
| public static string ActionName(string? actionName) | |
| { | |
| if (string.IsNullOrWhiteSpace(actionName)) | |
| { | |
| return Text("common.unknown", "Unknown"); | |
| } | |
| return actionName.Trim().ToLowerInvariant() switch | |
| { | |
| "create" or "created" or "add" or "added" => Text("action.create", "Create"), | |
| "update" or "updated" or "edit" or "edited" => Text("action.update", "Update"), | |
| "delete" or "deleted" => Text("action.delete", "Delete"), | |
| "assign" or "assigned" or "assignaccess" => Text("action.assign", "Assign"), | |
| "archive" or "archived" => Text("action.archiveDone", "Archive Done"), | |
| "login" => Text("common.signIn", "Sign In"), | |
| "logout" => Text("common.signOut", "Sign Out"), | |
| _ => actionName | |
| }; | |
| } | |
| public static string ModuleName(string? moduleName) | |
| { | |
| if (string.IsNullOrWhiteSpace(moduleName)) | |
| { | |
| return Text("common.unknown", "Unknown"); | |
| } | |
| return moduleName.Trim().Replace(" ", "", StringComparison.OrdinalIgnoreCase).ToLowerInvariant() switch | |
| { | |
| "project" or "projects" => Text("page.projects", "Projects"), | |
| "task" or "tasks" => Text("page.tasks", "Tasks"), | |
| "user" or "users" => Text("page.users", "Users"), | |
| "role" or "roles" => Text("page.rolesAccess", "Roles & Access"), | |
| "issue" or "issues" => Text("page.issues", "Issues"), | |
| "audit" or "auditlog" or "auditlogs" => Text("page.auditLogs", "Audit Logs"), | |
| "dashboard" => Text("page.dashboard", "Dashboard"), | |
| "report" or "reports" => Text("page.reports", "Reports"), | |
| "module" => Text("common.module", "Module"), | |
| _ => moduleName | |
| }; | |
| } | |
| public static string AuditDescription(string? description) | |
| { | |
| if (string.IsNullOrWhiteSpace(description)) | |
| { | |
| return Text("common.noneRecorded", "None recorded"); | |
| } | |
| var text = LocalizeDigits(description); | |
| if (!IsBurmeseCulture) | |
| { | |
| return text; | |
| } | |
| return text switch | |
| { | |
| var value when value.StartsWith("Created task ", StringComparison.OrdinalIgnoreCase) => $"လုပ်ငန်း {value["Created task ".Length..]} ကို ဖန်တီးခဲ့သည်", | |
| var value when value.StartsWith("Updated task ", StringComparison.OrdinalIgnoreCase) => $"လုပ်ငန်း {value["Updated task ".Length..]} ကို ပြင်ဆင်ခဲ့သည်", | |
| var value when value.StartsWith("Deleted task ", StringComparison.OrdinalIgnoreCase) => $"လုပ်ငန်း {value["Deleted task ".Length..]} ကို ဖျက်ခဲ့သည်", | |
| var value when value.StartsWith("Updated project ", StringComparison.OrdinalIgnoreCase) => $"စီမံကိန်း {value["Updated project ".Length..]} ကို ပြင်ဆင်ခဲ့သည်", | |
| var value when value.StartsWith("Created user ", StringComparison.OrdinalIgnoreCase) => $"အသုံးပြုသူ {value["Created user ".Length..]} ကို ဖန်တီးခဲ့သည်", | |
| var value when value.StartsWith("Deleted user account ", StringComparison.OrdinalIgnoreCase) => $"အသုံးပြုသူအကောင့် {value["Deleted user account ".Length..]} ကို ဖျက်ခဲ့သည်", | |
| var value when value.StartsWith("Updated role name/description for ", StringComparison.OrdinalIgnoreCase) => $"အခန်းကဏ္ဍအမည်/ဖော်ပြချက် {value["Updated role name/description for ".Length..]} ကို ပြင်ဆင်ခဲ့သည်", | |
| var value when value.StartsWith("Created project ", StringComparison.OrdinalIgnoreCase) => $"စီမံကိန်း {value["Created project ".Length..]} ကို ဖန်တီးခဲ့သည်", | |
| var value when value.StartsWith("Deleted project ", StringComparison.OrdinalIgnoreCase) => $"စီမံကိန်း {value["Deleted project ".Length..]} ကို ဖျက်ခဲ့သည်", | |
| var value when value.StartsWith("Created new role ", StringComparison.OrdinalIgnoreCase) => $"အခန်းကဏ္ဍ {value["Created new role ".Length..]} ကို ဖန်တီးခဲ့သည်", | |
| var value when value.StartsWith("Deleted role ", StringComparison.OrdinalIgnoreCase) => $"အခန်းကဏ္ဍ {value["Deleted role ".Length..]} ကို ဖျက်ခဲ့သည်", | |
| var value when value.StartsWith("Updated access permissions for role ", StringComparison.OrdinalIgnoreCase) => $"အခန်းကဏ္ဍအသုံးပြုခွင့်များ ပြင်ဆင်ခဲ့သည်။ {value["Updated access permissions for role ".Length..]}", | |
| var value when value.StartsWith("Updated user ", StringComparison.OrdinalIgnoreCase) => $"အသုံးပြုသူ {value["Updated user ".Length..]} ကို ပြင်ဆင်ခဲ့သည်", | |
| _ => text | |
| }; | |
| } | |
| public static string EscalationLabel(int level) => level switch | |
| { | |
| 1 => IsBurmeseCulture ? "နိမ့်" : "Low", | |
| 2 => IsBurmeseCulture ? "အလယ်" : "Medium", | |
| 3 => IsBurmeseCulture ? "မြင့်" : "High", | |
| _ => Text("common.none", "None") | |
| }; | |
| public static string LocalizeNotificationTitle(string? title) | |
| { | |
| if (string.IsNullOrWhiteSpace(title)) return string.Empty; | |
| if (!IsBurmeseCulture) return title; | |
| return title.Trim().ToLowerInvariant() switch | |
| { | |
| "task assigned" => "လုပ်ငန်းတာဝန် ပေးအပ်ခြင်း", | |
| "task status changed" => "လုပ်ငန်းအခြေအနေ ပြောင်းလဲခြင်း", | |
| "project assigned" => "စီမံကိန်းတာဝန် ပေးအပ်ခြင်း", | |
| "new comment" => "မှတ်ချက်အသစ် ရေးသားခြင်း", | |
| "you were mentioned" => "သင့်ကို ရည်ညွှန်းဖော်ပြခြင်း", | |
| _ => title | |
| }; | |
| } | |
| public static string LocalizeNotificationBody(string? body) | |
| { | |
| if (string.IsNullOrWhiteSpace(body)) return string.Empty; | |
| if (!IsBurmeseCulture) return body; | |
| if (body.StartsWith("You have been assigned a new task: ", StringComparison.OrdinalIgnoreCase)) | |
| { | |
| return $"သင့်အား လုပ်ငန်းသစ်တစ်ခု တာဝန်ပေးအပ်ထားပါသည် - {body["You have been assigned a new task: ".Length..]}"; | |
| } | |
| if (body.StartsWith("Task '", StringComparison.OrdinalIgnoreCase) && body.Contains("' changed from ")) | |
| { | |
| var match = System.Text.RegularExpressions.Regex.Match(body, @"^Task '(?<title>.+)' changed from (?<oldStatus>.+) to (?<newStatus>.+)$", System.Text.RegularExpressions.RegexOptions.IgnoreCase); | |
| if (match.Success) | |
| { | |
| var title = match.Groups["title"].Value; | |
| var oldStatus = StatusName(match.Groups["oldStatus"].Value); | |
| var newStatus = StatusName(match.Groups["newStatus"].Value); | |
| return $"လုပ်ငန်း '{title}' ၏အခြေအနေသည် '{oldStatus}' မှ '{newStatus}' သို့ ပြောင်းလဲသွားပါသည်"; | |
| } | |
| } | |
| if (body.StartsWith("You have been assigned to project '", StringComparison.OrdinalIgnoreCase) && body.EndsWith("'")) | |
| { | |
| var projName = body["You have been assigned to project '".Length..^1]; | |
| return $"သင့်အား စီမံကိန်း '{projName}' တွင် တာဝန်ပေးအပ်ထားပါသည်"; | |
| } | |
| if (body.Contains(" commented on task '") && body.EndsWith("'")) | |
| { | |
| var idx = body.IndexOf(" commented on task '", StringComparison.OrdinalIgnoreCase); | |
| if (idx > 0) | |
| { | |
| var actor = body[..idx]; | |
| var taskTitle = body[(idx + " commented on task '".Length)..^1]; | |
| return $"{actor} သည် လုပ်ငန်း '{taskTitle}' တွင် မှတ်ချက်တစ်ခု ရေးသားခဲ့ပါသည်"; | |
| } | |
| } | |
| if (body.Contains(" mentioned you in task '") && body.EndsWith("'")) | |
| { | |
| var idx = body.IndexOf(" mentioned you in task '", StringComparison.OrdinalIgnoreCase); | |
| if (idx > 0) | |
| { | |
| var actor = body[..idx]; | |
| var taskTitle = body[(idx + " mentioned you in task '".Length)..^1]; | |
| return $"{actor} သည် လုပ်ငန်း '{taskTitle}' တွင် သင့်ကို ရည်ညွှန်းဖော်ပြခဲ့ပါသည်"; | |
| } | |
| } | |
| return LocalizeDigits(body); | |
| } | |
| } | |
| public sealed record LocalizationCatalogValidation( | |
| IReadOnlyList<string> MissingInEnglish, | |
| IReadOnlyList<string> MissingInBurmese, | |
| IReadOnlyList<string> DuplicateKeys, | |
| IReadOnlyList<string> UnreferencedKeys); | |