Adds localization support across application views
Implements localization for dashboard, cash register, account, and profile sections Adds localization keys for various UI elements, improving internationalization support Refactors view components to use ILocalizationService for dynamic text rendering Prepares ground for multi-language support with translation-ready markup
This commit is contained in:
parent
1f400dcc6e
commit
ef174af0e1
36 changed files with 821 additions and 263 deletions
|
|
@ -24,10 +24,197 @@
|
|||
"close": "Close",
|
||||
"delete": "Delete",
|
||||
"edit": "Edit",
|
||||
"add": "Add"
|
||||
"add": "Add",
|
||||
"from": "From",
|
||||
"to": "To",
|
||||
"all": "All",
|
||||
"reset": "Reset",
|
||||
"status": "Status"
|
||||
},
|
||||
"sidebar": {
|
||||
"lockScreen": "Lock screen",
|
||||
"appName": "Salon OS"
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "Dashboard",
|
||||
"subtitle": "Overview of today's activity",
|
||||
"stats": {
|
||||
"bookingsToday": "Bookings today",
|
||||
"bookingsTrend": "4 completed, 2 in progress",
|
||||
"expectedRevenue": "Expected revenue",
|
||||
"revenueTrend": "+12% vs. average",
|
||||
"occupancyRate": "Occupancy rate",
|
||||
"occupancyTrend": "Good capacity",
|
||||
"needsAttention": "Needs attention"
|
||||
},
|
||||
"ai": {
|
||||
"header": "AI Analysis"
|
||||
},
|
||||
"bookings": {
|
||||
"title": "Today's bookings",
|
||||
"viewAll": "View all",
|
||||
"currentTime": "Now:",
|
||||
"status": {
|
||||
"confirmed": "Confirmed",
|
||||
"pending": "Pending",
|
||||
"inProgress": "In progress",
|
||||
"completed": "Completed"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"title": "Notifications",
|
||||
"viewAll": "View all",
|
||||
"markAllRead": "Mark all as read"
|
||||
},
|
||||
"attentions": {
|
||||
"title": "Needs attention",
|
||||
"viewAll": "View all"
|
||||
},
|
||||
"quickStats": {
|
||||
"title": "This week",
|
||||
"bookings": "Bookings",
|
||||
"revenue": "Revenue",
|
||||
"newCustomers": "New customers",
|
||||
"cancellations": "Cancellations",
|
||||
"avgOccupancy": "Avg. occupancy"
|
||||
},
|
||||
"quickActions": {
|
||||
"title": "Quick actions",
|
||||
"newBooking": "New booking",
|
||||
"newCustomer": "New customer"
|
||||
},
|
||||
"waitlist": {
|
||||
"title": "Waitlist",
|
||||
"count": "{count} waiting"
|
||||
}
|
||||
},
|
||||
"cash": {
|
||||
"title": "Cash Register",
|
||||
"tabs": {
|
||||
"overview": "Overview",
|
||||
"reconciliation": "Reconciliation"
|
||||
},
|
||||
"stats": {
|
||||
"reconciliationsInPeriod": "Reconciliations in period",
|
||||
"totalRevenue": "Total revenue",
|
||||
"cashSales": "Cash sales",
|
||||
"totalDifference": "Total difference",
|
||||
"transactionsToday": "Transactions today",
|
||||
"revenueToday": "Revenue today",
|
||||
"lastReconciliation": "Last reconciliation",
|
||||
"openedRegister": "Opened register"
|
||||
},
|
||||
"filter": {
|
||||
"register": "Register",
|
||||
"approved": "Approved",
|
||||
"draft": "Draft"
|
||||
},
|
||||
"table": {
|
||||
"date": "Date",
|
||||
"id": "ID",
|
||||
"period": "Period",
|
||||
"register": "Register",
|
||||
"closedBy": "Closed by",
|
||||
"revenue": "Revenue",
|
||||
"difference": "Difference",
|
||||
"selected": "{count} selected",
|
||||
"noneSelected": "0 selected",
|
||||
"showingCount": "Showing {count} reconciliations",
|
||||
"exportSaft": "Export SAF-T",
|
||||
"downloadCsv": "Download CSV",
|
||||
"downloadPdf": "Download PDF",
|
||||
"viewTransactions": "View transactions"
|
||||
},
|
||||
"revenue": {
|
||||
"title": "Period revenue",
|
||||
"subtitle": "System vs. control",
|
||||
"cardPayments": "Card payments",
|
||||
"mobilePay": "MobilePay / Online",
|
||||
"cashSales": "Cash sales",
|
||||
"hint": "Card and MobilePay are reconciled against bank/acquirer. Cash is counted below."
|
||||
},
|
||||
"balance": {
|
||||
"title": "Cash in register",
|
||||
"startBalance": "Starting balance",
|
||||
"startHint": "Carried over from last reconciliation",
|
||||
"payouts": "Payouts / Receipts",
|
||||
"payoutsHint": "Total receipts paid in cash",
|
||||
"toBank": "Withdrawn to bank",
|
||||
"toBankHint": "Cash set aside",
|
||||
"expected": "Expected cash balance",
|
||||
"counted": "Counted cash balance",
|
||||
"countedHint": "What is actually in the register?"
|
||||
},
|
||||
"difference": {
|
||||
"title": "Cash difference",
|
||||
"match": "Register balanced",
|
||||
"over": "Overage",
|
||||
"under": "Shortage"
|
||||
},
|
||||
"period": {
|
||||
"title": "Period information",
|
||||
"dateRange": "Period",
|
||||
"register": "Register",
|
||||
"employee": "Employee"
|
||||
},
|
||||
"note": {
|
||||
"title": "Reconciliation note",
|
||||
"placeholder": "Describe reason for difference..."
|
||||
},
|
||||
"approval": {
|
||||
"title": "Close the day",
|
||||
"approvedBy": "Approved by (optional)",
|
||||
"selectPlaceholder": "Select...",
|
||||
"confirmation": "I confirm that the register has been counted and the figures have been entered to the best of my ability.",
|
||||
"saveDraft": "Save as draft",
|
||||
"approve": "Approve & lock"
|
||||
},
|
||||
"status": {
|
||||
"draft": "Draft",
|
||||
"approved": "Approved"
|
||||
},
|
||||
"systemNote": "The system records when and by whom approval was made – simple audit trail."
|
||||
},
|
||||
"profile": {
|
||||
"title": "Profile",
|
||||
"myProfile": "My profile",
|
||||
"settings": "Settings",
|
||||
"darkMode": "Dark mode",
|
||||
"logout": "Log out"
|
||||
},
|
||||
"account": {
|
||||
"title": "Subscription & Account",
|
||||
"subtitle": "Manage your subscription and payment info",
|
||||
"subscription": {
|
||||
"title": "Your subscription",
|
||||
"currentPlan": "Current plan",
|
||||
"switchTo": "Switch to {plan}",
|
||||
"contactSales": "Contact sales",
|
||||
"contactUs": "Contact us",
|
||||
"pricePerMonth": "/mo"
|
||||
},
|
||||
"billing": {
|
||||
"title": "Payment & Invoices"
|
||||
},
|
||||
"payment": {
|
||||
"frequency": "Payment frequency",
|
||||
"monthly": "Monthly",
|
||||
"yearly": "Yearly",
|
||||
"nextPayment": "Next payment",
|
||||
"amount": "Amount",
|
||||
"cardExpiry": "Card expiry",
|
||||
"change": "Change",
|
||||
"switchToYearly": "Switch to yearly billing (save 15%)"
|
||||
},
|
||||
"invoices": {
|
||||
"title": "Invoice history",
|
||||
"date": "Date",
|
||||
"invoiceNumber": "Invoice no.",
|
||||
"amount": "Amount",
|
||||
"download": "PDF",
|
||||
"paid": "Paid",
|
||||
"pending": "Pending",
|
||||
"overdue": "Overdue"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue