mirror of
https://github.com/johndoe6345789/workforce-pay-bill-p.git
synced 2026-04-24 13:24:57 +00:00
Generated by Spark: Add translations to remaining specialized components (RateTemplateManager, NotificationRulesManager, ShiftPatternManager, HolidayPayManager, ContractValidator)
This commit is contained in:
@@ -1148,13 +1148,102 @@
|
||||
}
|
||||
},
|
||||
"shiftPatterns": {
|
||||
"title": "Shift Patterns",
|
||||
"title": "Shift Pattern Templates",
|
||||
"subtitle": "Create reusable templates for recurring shift schedules",
|
||||
"createTemplate": "Create Template",
|
||||
"createPattern": "Create Pattern",
|
||||
"editTemplate": "Edit Template",
|
||||
"editPattern": "Edit Pattern",
|
||||
"deletePattern": "Delete Pattern",
|
||||
"duplicatePattern": "Duplicate Pattern",
|
||||
"totalTemplates": "Total Templates",
|
||||
"mostUsed": "Most Used",
|
||||
"timesApplied": "Times applied",
|
||||
"nightShifts": "Night Shifts",
|
||||
"nightShiftTemplates": "Night shift templates",
|
||||
"activeShiftPatterns": "Active shift patterns",
|
||||
"patternName": "Pattern Name",
|
||||
"patternNameLabel": "Template Name *",
|
||||
"patternNamePlaceholder": "e.g. Night Shift - Mon-Fri",
|
||||
"description": "Description",
|
||||
"descriptionLabel": "Description",
|
||||
"descriptionPlaceholder": "Optional description of the shift pattern",
|
||||
"shiftType": "Shift Type",
|
||||
"shiftTypeLabel": "Shift Type *",
|
||||
"startTime": "Start Time",
|
||||
"startTimeLabel": "Start Time *",
|
||||
"endTime": "End Time",
|
||||
"endTimeLabel": "End Time *",
|
||||
"breakMinutes": "Break (mins)",
|
||||
"breakMinutesLabel": "Break (mins)",
|
||||
"rateMultiplier": "Rate Multiplier",
|
||||
"rateMultiplierLabel": "Rate Multiplier",
|
||||
"rateMultiplierHelper": "Standard rate × {{multiplier}} = £{{rate}} per hour (example at £25/hr)",
|
||||
"daysOfWeek": "Days of Week",
|
||||
"daysOfWeekLabel": "Days of Week *",
|
||||
"isRecurring": "Recurring",
|
||||
"dayShift": "Day Shift",
|
||||
"nightShift": "Night Shift",
|
||||
"weekendShift": "Weekend Shift",
|
||||
"rotatingPattern": "Rotating Pattern"
|
||||
"weekendShift": "Weekend",
|
||||
"eveningShift": "Evening",
|
||||
"earlyMorningShift": "Early Morning",
|
||||
"standardShift": "Standard",
|
||||
"overtimeShift": "Overtime",
|
||||
"holidayShift": "Holiday",
|
||||
"splitShift": "Split Shift",
|
||||
"rotatingPattern": "Rotating Pattern",
|
||||
"shiftTypes": {
|
||||
"night": "Night Shift",
|
||||
"weekend": "Weekend",
|
||||
"evening": "Evening",
|
||||
"earlyMorning": "Early Morning",
|
||||
"standard": "Standard",
|
||||
"overtime": "Overtime",
|
||||
"holiday": "Holiday",
|
||||
"splitShift": "Split Shift"
|
||||
},
|
||||
"daysOfWeekShort": {
|
||||
"monday": "Mon",
|
||||
"tuesday": "Tue",
|
||||
"wednesday": "Wed",
|
||||
"thursday": "Thu",
|
||||
"friday": "Fri",
|
||||
"saturday": "Sat",
|
||||
"sunday": "Sun"
|
||||
},
|
||||
"daysOfWeekFull": {
|
||||
"monday": "Monday",
|
||||
"tuesday": "Tuesday",
|
||||
"wednesday": "Wednesday",
|
||||
"thursday": "Thursday",
|
||||
"friday": "Friday",
|
||||
"saturday": "Saturday",
|
||||
"sunday": "Sunday"
|
||||
},
|
||||
"createDialog": {
|
||||
"title": "Create Shift Pattern Template",
|
||||
"editTitle": "Edit Shift Pattern Template",
|
||||
"description": "Define a reusable template for recurring shift schedules"
|
||||
},
|
||||
"patternSummary": "Pattern Summary",
|
||||
"hoursPerShift": "Hours per shift",
|
||||
"daysPerWeek": "Days per week",
|
||||
"totalWeeklyHours": "Total weekly hours",
|
||||
"weeklyHours": "Weekly hours",
|
||||
"breakTime": "Break time",
|
||||
"timesUsed": "Times used",
|
||||
"patternCreated": "Shift pattern template created",
|
||||
"patternUpdated": "Shift pattern template updated",
|
||||
"patternDeleted": "Shift pattern template deleted",
|
||||
"patternDuplicated": "Shift pattern template duplicated",
|
||||
"fillAllFields": "Please fill in all required fields",
|
||||
"noPatterns": "No shift patterns yet",
|
||||
"noPatternsDescription": "Create your first template to streamline recurring shift scheduling",
|
||||
"edit": "Edit",
|
||||
"duplicate": "Duplicate",
|
||||
"delete": "Delete",
|
||||
"hoursLabel": "{{hours}}h",
|
||||
"rateLabel": "{{rate}}× rate"
|
||||
},
|
||||
"metrics": {
|
||||
"totalRevenue": "Total Revenue",
|
||||
@@ -1448,31 +1537,46 @@
|
||||
},
|
||||
"notificationRules": {
|
||||
"title": "Notification Rules",
|
||||
"subtitle": "Configure automated notification triggers and conditions",
|
||||
"subtitle": "Configure automated notification triggers and workflows",
|
||||
"createRule": "Create Rule",
|
||||
"editRule": "Edit Rule",
|
||||
"deleteRule": "Delete Rule",
|
||||
"activeRules": "Active Rules",
|
||||
"inactiveRules": "Inactive Rules",
|
||||
"totalRules": "Total Rules",
|
||||
"ruleName": "Rule Name",
|
||||
"ruleNamePlaceholder": "Enter rule name",
|
||||
"ruleNameLabel": "Rule Name *",
|
||||
"ruleNamePlaceholder": "Timesheet Approval Notification",
|
||||
"description": "Description",
|
||||
"descriptionPlaceholder": "Brief description of this rule",
|
||||
"descriptionLabel": "Description",
|
||||
"descriptionPlaceholder": "Notify managers when a new timesheet is submitted",
|
||||
"enabled": "Enabled",
|
||||
"enableThisRule": "Enable this rule",
|
||||
"triggerEvent": "Trigger Event",
|
||||
"triggerEventLabel": "Trigger Event *",
|
||||
"notificationType": "Notification Type",
|
||||
"priority": "Priority",
|
||||
"priorityLabel": "Priority *",
|
||||
"channel": "Channel",
|
||||
"channelLabel": "Channel *",
|
||||
"recipients": "Recipients",
|
||||
"recipientsPlaceholder": "email1@example.com, email2@example.com",
|
||||
"messageTemplate": "Message Template",
|
||||
"messageTemplatePlaceholder": "Message with {{variables}}",
|
||||
"delayMinutes": "Delay (Minutes)",
|
||||
"messageTemplateLabel": "Message Template *",
|
||||
"messageTemplatePlaceholder": "New timesheet submitted by {workerName} for {clientName}",
|
||||
"messageTemplateHelper": "Use placeholders like {workerName}, {clientName}, {amount}, etc.",
|
||||
"delayMinutes": "Delay (minutes)",
|
||||
"delayLabel": "Delay (minutes)",
|
||||
"delayPlaceholder": "0",
|
||||
"conditions": "Conditions",
|
||||
"addCondition": "Add Condition",
|
||||
"field": "Field",
|
||||
"operator": "Operator",
|
||||
"value": "Value",
|
||||
"trigger": "Trigger",
|
||||
"delay": "Delay",
|
||||
"allRecipients": "All",
|
||||
"viewMessageTemplate": "View message template",
|
||||
"events": {
|
||||
"timesheetSubmitted": "Timesheet Submitted",
|
||||
"timesheetApproved": "Timesheet Approved",
|
||||
@@ -1485,9 +1589,18 @@
|
||||
"payrollCompleted": "Payroll Completed"
|
||||
},
|
||||
"channels": {
|
||||
"inApp": "In-App",
|
||||
"email": "Email",
|
||||
"both": "Both"
|
||||
"inApp": "In-App Only",
|
||||
"inAppOnly": "In-App Only",
|
||||
"email": "Email Only",
|
||||
"emailOnly": "Email Only",
|
||||
"both": "In-App & Email",
|
||||
"inAppAndEmail": "In-App & Email"
|
||||
},
|
||||
"priorities": {
|
||||
"low": "Low",
|
||||
"medium": "Medium",
|
||||
"high": "High",
|
||||
"urgent": "Urgent"
|
||||
},
|
||||
"operators": {
|
||||
"equals": "Equals",
|
||||
@@ -1495,47 +1608,90 @@
|
||||
"lessThan": "Less Than",
|
||||
"contains": "Contains"
|
||||
},
|
||||
"createDialog": {
|
||||
"title": "Create Notification Rule",
|
||||
"editTitle": "Edit Notification Rule",
|
||||
"description": "Define when and how notifications should be sent"
|
||||
},
|
||||
"ruleCreated": "Notification rule created",
|
||||
"ruleUpdated": "Notification rule updated",
|
||||
"ruleDeleted": "Notification rule deleted",
|
||||
"ruleEnabled": "Rule enabled",
|
||||
"ruleDisabled": "Rule disabled",
|
||||
"fillAllFields": "Please fill in all required fields",
|
||||
"noRules": "No notification rules configured",
|
||||
"noRulesDescription": "Create your first rule to automate notifications"
|
||||
"fillAllFields": "Please fill in required fields",
|
||||
"noRules": "No notification rules",
|
||||
"noRulesDescription": "Create your first rule to automate notifications",
|
||||
"recipientCount": "{{count}} recipients",
|
||||
"minLabel": "{{value}} min"
|
||||
},
|
||||
"rateTemplates": {
|
||||
"title": "Rate Templates",
|
||||
"subtitle": "Manage rate cards and pricing templates",
|
||||
"subtitle": "Pre-configured rates for roles and clients",
|
||||
"createTemplate": "Create Template",
|
||||
"editTemplate": "Edit Template",
|
||||
"deleteTemplate": "Delete Template",
|
||||
"duplicateTemplate": "Duplicate Template",
|
||||
"templateName": "Template Name",
|
||||
"templateNamePlaceholder": "e.g., Senior Developer - Client A",
|
||||
"role": "Role",
|
||||
"rolePlaceholder": "Job role or position",
|
||||
"client": "Client (Optional)",
|
||||
"clientPlaceholder": "Client name",
|
||||
"standardRate": "Standard Rate",
|
||||
"overtimeRate": "Overtime Rate",
|
||||
"weekendRate": "Weekend Rate",
|
||||
"nightShiftRate": "Night Shift Rate",
|
||||
"holidayRate": "Holiday Rate",
|
||||
"currency": "Currency",
|
||||
"effectiveFrom": "Effective From",
|
||||
"isActive": "Active",
|
||||
"activate": "Activate",
|
||||
"deactivate": "Deactivate",
|
||||
"totalTemplates": "Total Templates",
|
||||
"activeTemplates": "Active Templates",
|
||||
"inactiveTemplates": "Inactive Templates",
|
||||
"perHour": "per hour",
|
||||
"templateName": "Template Name",
|
||||
"templateNameLabel": "Template Name *",
|
||||
"templateNamePlaceholder": "e.g., Senior Developer - Acme Corp",
|
||||
"role": "Role",
|
||||
"roleLabel": "Role *",
|
||||
"rolePlaceholder": "e.g., Senior Developer",
|
||||
"client": "Client",
|
||||
"clientLabel": "Client (Optional)",
|
||||
"clientPlaceholder": "e.g., Acme Corp",
|
||||
"standardRate": "Standard Rate",
|
||||
"standardRateLabel": "Standard Rate (£/hr) *",
|
||||
"standardRatePlaceholder": "25.00",
|
||||
"overtimeRate": "Overtime Rate",
|
||||
"overtimeRateLabel": "Overtime Rate (£/hr)",
|
||||
"overtimeRatePlaceholder": "Auto-calculated as 1.5x",
|
||||
"overtimeRateHelper": "Default: 1.5x standard",
|
||||
"weekendRate": "Weekend Rate",
|
||||
"weekendRateLabel": "Weekend Rate (£/hr)",
|
||||
"weekendRatePlaceholder": "Auto-calculated as 1.5x",
|
||||
"weekendRateHelper": "Default: 1.5x standard",
|
||||
"nightShiftRate": "Night Shift Rate",
|
||||
"nightShiftRateLabel": "Night Shift Rate (£/hr)",
|
||||
"nightShiftRatePlaceholder": "Auto-calculated as 1.25x",
|
||||
"nightShiftRateHelper": "Default: 1.25x standard",
|
||||
"holidayRate": "Holiday Rate",
|
||||
"holidayRateLabel": "Holiday Rate (£/hr)",
|
||||
"holidayRatePlaceholder": "Auto-calculated as 2x",
|
||||
"holidayRateHelper": "Default: 2x standard",
|
||||
"currency": "Currency",
|
||||
"currencyLabel": "Currency",
|
||||
"effectiveFrom": "Effective From",
|
||||
"effectiveFromLabel": "Effective From",
|
||||
"isActive": "Active",
|
||||
"perHour": "/hr",
|
||||
"perHourFull": "per hour",
|
||||
"ratesConfiguration": "Rates Configuration",
|
||||
"createDialog": {
|
||||
"title": "Create Rate Template",
|
||||
"editTitle": "Edit Rate Template",
|
||||
"description": "Configure standard and premium rates for a role or client"
|
||||
},
|
||||
"templateCreated": "Rate template created",
|
||||
"templateUpdated": "Rate template updated",
|
||||
"templateDeleted": "Rate template deleted",
|
||||
"templateDuplicated": "Template duplicated",
|
||||
"fillAllFields": "Please fill in all required fields",
|
||||
"noTemplates": "No rate templates found",
|
||||
"noTemplatesDescription": "Create your first rate template"
|
||||
"templateDuplicated": "Rate template duplicated",
|
||||
"fillAllFields": "Please fill in required fields",
|
||||
"noTemplates": "No rate templates",
|
||||
"noTemplatesDescription": "Create your first rate template to get started",
|
||||
"standard": "Standard",
|
||||
"overtime": "Overtime",
|
||||
"weekend": "Weekend",
|
||||
"night": "Night",
|
||||
"holiday": "Holiday",
|
||||
"active": "Active",
|
||||
"inactive": "Inactive",
|
||||
"effectiveFromDate": "Effective from {{date}}"
|
||||
},
|
||||
"customReports": {
|
||||
"title": "Custom Report Builder",
|
||||
@@ -1576,20 +1732,36 @@
|
||||
"selectReportType": "Select a report type to begin"
|
||||
},
|
||||
"holidayPay": {
|
||||
"title": "Holiday Pay Manager",
|
||||
"subtitle": "Track holiday accruals and manage time off requests",
|
||||
"title": "Holiday Pay Management",
|
||||
"subtitle": "Track accruals, requests, and balances",
|
||||
"newHolidayRequest": "New Holiday Request",
|
||||
"createRequest": "Create Request",
|
||||
"submitRequest": "Submit Request",
|
||||
"calculateAccrual": "Calculate Accrual",
|
||||
"accruals": "Accruals",
|
||||
"requests": "Requests",
|
||||
"createRequest": "Create Request",
|
||||
"calculateAccrual": "Calculate Accrual",
|
||||
"totalAccrued": "Total Accrued",
|
||||
"totalAccruedDays": "Total Accrued",
|
||||
"pendingRequests": "Pending Requests",
|
||||
"daysTakenYTD": "Days Taken (YTD)",
|
||||
"totalTaken": "Total Taken",
|
||||
"totalRemaining": "Total Remaining",
|
||||
"workerName": "Worker Name",
|
||||
"workerNameLabel": "Worker Name",
|
||||
"workerNamePlaceholder": "Enter worker name",
|
||||
"accruedDays": "Accrued Days",
|
||||
"accrued": "Accrued",
|
||||
"takenDays": "Taken Days",
|
||||
"taken": "Taken",
|
||||
"remainingDays": "Remaining Days",
|
||||
"remaining": "Remaining",
|
||||
"startDate": "Start Date",
|
||||
"startDateLabel": "Start Date",
|
||||
"endDate": "End Date",
|
||||
"endDateLabel": "End Date",
|
||||
"days": "Days",
|
||||
"daysRequested": "Days Requested",
|
||||
"daysRequestedLabel": "Days Requested",
|
||||
"status": {
|
||||
"pending": "Pending",
|
||||
"approved": "Approved",
|
||||
@@ -1599,36 +1771,81 @@
|
||||
"approvedDate": "Approved Date",
|
||||
"approveRequest": "Approve Request",
|
||||
"rejectRequest": "Reject Request",
|
||||
"requestCreated": "Holiday request created",
|
||||
"requestApproved": "Request approved",
|
||||
"requestRejected": "Request rejected",
|
||||
"approve": "Approve",
|
||||
"reject": "Reject",
|
||||
"createDialog": {
|
||||
"title": "Create Holiday Request",
|
||||
"description": "Submit a new holiday request for approval"
|
||||
},
|
||||
"requestCreated": "Holiday request submitted",
|
||||
"requestApproved": "Holiday request approved",
|
||||
"requestRejected": "Holiday request rejected",
|
||||
"accrualCalculated": "Holiday accrual calculated",
|
||||
"insufficientDays": "Insufficient holiday days remaining",
|
||||
"totalAccrued": "Total Accrued",
|
||||
"totalTaken": "Total Taken",
|
||||
"totalRemaining": "Total Remaining",
|
||||
"daysLabel": "{{count}} days"
|
||||
"insufficientDays": "Insufficient holiday balance",
|
||||
"insufficientBalance": "Insufficient holiday balance",
|
||||
"totalAccruedLabel": "Total Accrued",
|
||||
"totalTakenLabel": "Total Taken",
|
||||
"totalRemainingLabel": "Total Remaining",
|
||||
"daysLabel": "{{count}} days",
|
||||
"daysCount": "days",
|
||||
"lastUpdated": "Last updated {{date}}",
|
||||
"requestedOn": "Requested on {{date}}",
|
||||
"noAccruals": "No holiday accruals",
|
||||
"noAccrualsDescription": "Accruals are calculated automatically from timesheets",
|
||||
"noRequests": "No holiday requests",
|
||||
"noRequestsDescription": "Create a new holiday request to get started",
|
||||
"accrualCalculation": "Accrual Calculation",
|
||||
"accrualCalculationDescription": "Holiday pay accrues at {{rate}}% of hours worked (5.6 weeks per year statutory minimum)",
|
||||
"tabs": {
|
||||
"accruals": "Accruals ({{count}})",
|
||||
"requests": "Requests ({{count}} pending)"
|
||||
},
|
||||
"fillAllFields": "Please fill in all fields"
|
||||
},
|
||||
"contractValidator": {
|
||||
"title": "Contract Validator",
|
||||
"subtitle": "Validate timesheets against contract terms and rate cards",
|
||||
"title": "Contract Validation",
|
||||
"subtitle": "Validate timesheets against rate cards and compliance rules",
|
||||
"validationResults": "Validation Results",
|
||||
"validationErrors": "Validation Errors",
|
||||
"validationErrorsBlocked": "Timesheets blocked from processing",
|
||||
"warnings": "Warnings",
|
||||
"warningsReview": "Review recommended",
|
||||
"compliant": "Compliant",
|
||||
"compliantReady": "Ready for processing",
|
||||
"validTimesheets": "Valid Timesheets",
|
||||
"timesheetsWithWarnings": "Timesheets with Warnings",
|
||||
"timesheetsWithErrors": "Timesheets with Errors",
|
||||
"validateAll": "Validate All",
|
||||
"viewDetails": "View Details",
|
||||
"errors": "Errors",
|
||||
"warnings": "Warnings",
|
||||
"fixIssues": "Fix Issues",
|
||||
"review": "Review",
|
||||
"approveAnyway": "Approve Anyway",
|
||||
"errorsLabel": "Errors",
|
||||
"warningsLabel": "Warnings",
|
||||
"validationPassed": "Validation Passed",
|
||||
"validationFailed": "Validation Failed",
|
||||
"actionRequired": "Action Required",
|
||||
"reviewRecommended": "Review Recommended",
|
||||
"readyToProcess": "Ready to Process",
|
||||
"errorDescription": "These timesheets have critical validation errors and cannot be processed",
|
||||
"warningDescription": "These timesheets have potential issues but can be processed",
|
||||
"compliantDescription": "These timesheets passed all validation checks",
|
||||
"noRateCard": "No rate card assigned",
|
||||
"rateBelowMinimum": "Rate below minimum allowed",
|
||||
"rateExceedsMaximum": "Rate exceeds maximum threshold",
|
||||
"rateTooLow": "Rate £{{rate}} is below minimum allowed (£{{minimum}})",
|
||||
"rateTooHigh": "Rate £{{rate}} exceeds 3x standard rate",
|
||||
"hoursExceedLimit": "Hours exceed daily limit",
|
||||
"missingRequiredFields": "Missing required fields",
|
||||
"validating": "Validating...",
|
||||
"validationComplete": "Validation complete"
|
||||
"validationComplete": "Validation complete",
|
||||
"error": "Error",
|
||||
"warning": "Warning",
|
||||
"client": "Client",
|
||||
"weekEnding": "Week Ending",
|
||||
"hours": "Hours",
|
||||
"amount": "Amount",
|
||||
"moreCompliantTimesheets": "+ {{count}} more compliant timesheets"
|
||||
},
|
||||
"missingTimesheets": {
|
||||
"title": "Missing Timesheets Report",
|
||||
|
||||
Reference in New Issue
Block a user