PSA/server/public/locales/en/msp/reports.json
Hermes 284313f908
Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

314 lines
9.9 KiB
JSON

{
"page": {
"title": "Reports"
},
"actions": {
"refresh": "Refresh"
},
"placeholders": {
"selectContract": "Select contract..."
},
"units": {
"hoursShort": "hrs",
"days": "days",
"percent": "%",
"dash": "—"
},
"reportsPage": {
"cards": {
"timeUtilization": {
"title": "Time Utilization",
"placeholder": "[Time Utilization Chart Placeholder]"
},
"projectProgress": {
"title": "Project Progress",
"placeholder": "[Project Progress Chart Placeholder]"
},
"revenueByClient": {
"title": "Revenue by Client",
"placeholder": "[Revenue by Client Chart Placeholder]"
},
"teamPerformance": {
"title": "Team Performance",
"placeholder": "[Team Performance Chart Placeholder]"
}
},
"description": "Canned operational reports for the current workspace. More customization will layer onto this catalog later.",
"categories": {
"helpdesk": "Help desk",
"operations": "Operations",
"billing": "Billing"
},
"badges": {
"planned": "Planned"
},
"actions": {
"viewReport": "View report",
"openInBilling": "Open in billing",
"requiresTier": "Requires {{tier}}",
"comingSoon": "Coming soon"
},
"errors": {
"loadReport": "Failed to load report."
},
"empty": {
"noData": "No data for this report.",
"noOpenTicketsInRange": "No open tickets in this range.",
"noDate": "No date",
"notAvailable": "n/a",
"noEmailChannels": "No email channels are configured."
},
"fallbackTitle": "Report",
"dateRange": {
"lastDays": "Last {{count}} days"
},
"units": {
"daysWithCount": "{{count}} days"
},
"metrics": {
"created": "Created",
"closed": "Closed",
"openNow": "Open now",
"awaitingCustomer": "Awaiting customer",
"awaitingInternal": "Awaiting internal",
"under2Days": "Under 2 days",
"days2To7": "2 to 7 days",
"days8To30": "8 to 30 days",
"over30Days": "Over 30 days",
"activeChannels": "Active channels",
"healthyChannels": "Healthy channels",
"problemChannels": "Problem channels",
"emailsProcessed": "Emails processed",
"ticketsFromEmail": "Tickets from email",
"failedEmails": "Failed emails",
"avgProcessingTime": "Avg. processing time",
"avgTicketCreationTime": "Avg. email-to-ticket time",
"totalHours": "Total hours",
"billableHours": "Billable hours",
"nonBillableHours": "Non-billable hours",
"billablePercent": "Billable %",
"timeEntries": "Time entries",
"activeContracts": "Active contracts",
"monthlyRecurring": "Monthly recurring",
"renewalsDue": "Renewals due",
"bucketUsedHours": "Bucket hours used",
"bucketOverageHours": "Bucket overage",
"openAssigned": "Open assigned",
"activeAssignees": "Active assignees",
"avgResolutionTime": "Avg. resolution time"
},
"sections": {
"openByStatus": "Open by status",
"openByPriority": "Open by priority",
"openByAssignee": "Open by assignee",
"ageDistribution": "Age distribution",
"responseOwnership": "Response ownership",
"oldestOpenTickets": "Oldest open tickets",
"emailProcessingStatus": "Processing status",
"emailChannels": "Email channels",
"timeByUser": "Time by user",
"billableHoursByService": "Billable hours by service",
"entriesByWorkType": "Entries by work type",
"contractRevenue": "Contract revenue",
"upcomingRenewals": "Upcoming renewals",
"bucketUsage": "Bucket usage",
"performanceByAssignee": "Performance by assignee",
"closedByAssignee": "Closed by assignee"
},
"reportCatalog": {
"ticketWorkload": {
"title": "Ticket Workload",
"description": "Created, closed, and currently open tickets grouped by status, priority, and assignee."
},
"ticketAging": {
"title": "Ticket Aging",
"description": "Open-ticket age buckets, response ownership, and oldest active tickets."
},
"emailChannelHealth": {
"title": "Email Channel Health",
"description": "Email intake volume, ticket creation speed, and mailbox connection health."
},
"timeUtilization": {
"title": "Time Utilization",
"description": "Tracked work by person and service area for PSA operations."
},
"teamPerformance": {
"title": "Team Performance",
"description": "Team-level throughput and response ownership for multi-user workspaces."
},
"contractReports": {
"title": "Contract Reports",
"description": "Contract revenue, renewals, bucket utilization, and simple profitability."
}
},
"table": {
"channel": "Channel",
"status": "Status",
"processed": "Processed",
"tickets": "Tickets",
"avgEmailToTicket": "Avg. email to ticket",
"assignee": "Assignee",
"created": "Created",
"closed": "Closed",
"open": "Open",
"avgResolution": "Avg. resolution",
"user": "User",
"totalHours": "Total hours",
"billableHours": "Billable hours",
"entries": "Entries",
"ticket": "Ticket",
"entered": "Entered",
"age": "Age"
},
"statusValues": {
"connected": "Connected",
"disconnected": "Disconnected",
"error": "Error",
"configuring": "Configuring",
"unknown": "Unknown",
"success": "Success",
"failed": "Failed",
"partial": "Partial",
"processing": "Processing"
}
},
"contractReports": {
"title": "Contract Reports",
"description": "Analyze contract performance, revenue, and utilization metrics",
"errors": {
"loadingTitle": "Error Loading Reports",
"loadData": "Failed to load report data"
},
"summary": {
"totalMRR": {
"title": "Total MRR",
"subtitle": "Monthly Recurring Revenue"
},
"ytdRevenue": {
"title": "YTD Revenue",
"subtitle": "Year to Date by billed service period"
},
"activeContracts": {
"title": "Active Contracts",
"subtitle": "Active assignments"
},
"renewalDecisions": {
"title": "Renewal Decisions Due",
"subtitle": "Decision due dates in the next 90 days"
}
},
"tabs": {
"revenue": "Contract Revenue",
"expiration": "Expiration",
"bucketUsage": "Bucket Hours",
"profitability": "Profitability"
},
"sections": {
"revenue": {
"title": "Contract Revenue Report",
"description": "Overview of monthly recurring revenue and year-to-date billed service periods by contract.",
"empty": "No contract revenue data available"
},
"expiration": {
"title": "Contract Expiration and Renewal Decisions",
"description": "Track upcoming contract expirations and renewal decision due dates.",
"empty": "No upcoming contract expirations or renewal decisions in the near term"
},
"bucketUsage": {
"title": "Bucket Hours Utilization",
"description": "Monitor bucket hours usage and identify overage situations",
"empty": "No bucket-based contracts found"
},
"profitability": {
"title": "Simple Profitability Report",
"description": "Basic profit margins and revenue vs. cost analysis by contract",
"empty": "No profitability data available"
}
},
"table": {
"contract": "Contract",
"client": "Client",
"monthlyRecurring": "Monthly Recurring",
"totalBilledYtd": "Total Billed (YTD)",
"status": "Status",
"endDate": "End Date",
"daysUntilExpiration": "Days Until Expiration",
"monthlyValue": "Monthly Value",
"autoRenew": "Auto-Renew",
"totalHours": "Total Hours",
"usedHours": "Used Hours",
"remaining": "Remaining",
"utilization": "Utilization",
"overage": "Overage",
"revenueYtd": "Revenue (YTD)",
"costYtd": "Cost (YTD)",
"profit": "Profit",
"margin": "Margin"
},
"statusValues": {
"active": "Active",
"upcoming": "Upcoming",
"yes": "Yes",
"no": "No"
}
},
"contractPerformance": {
"title": "Contract Performance Metrics",
"errors": {
"loadData": "Failed to load contract data"
},
"metrics": {
"totalClients": "Total Clients",
"activeClients": "Active Clients",
"totalPlans": "Total Plans",
"averagePlansPerClient": "Avg. Plans Per Client",
"totalRevenue": "Total Revenue",
"averageRevenuePerClient": "Avg. Revenue Per Client"
},
"empty": {
"selectContract": "Select a contract to view performance metrics",
"noContracts": "No contracts available"
},
"comparison": {
"title": "Contract Comparison",
"table": {
"contract": "Contract",
"clients": "Clients",
"plans": "Plans",
"revenue": "Revenue"
}
}
},
"contractUsage": {
"title": "Contract Usage Report",
"errors": {
"loadInitialData": "Failed to load initial data",
"loadUsageData": "Failed to load contract usage data"
},
"empty": {
"noClientsUsingContract": "No clients are using this contract",
"selectContract": "Select a contract to view usage data"
},
"table": {
"client": "Client",
"startDate": "Start Date",
"endDate": "End Date",
"contractLines": "Contract Lines",
"totalBilled": "Total Billed",
"status": "Status"
},
"statusValues": {
"active": "Active",
"inactive": "Inactive",
"ongoing": "Ongoing",
"unknownClient": "Unknown Client"
},
"summary": {
"title": "Summary",
"totalClients": "Total Clients",
"activeAssignments": "Active Assignments",
"totalBilled": "Total Billed"
}
}
}