fix(backoffice): wording quality pass across orders, moderation, transactions, users, customers

- Replaced hardcoded English audit/timeline text (order status changes,
  review moderation events, user role/status changes) with proper
  adminXxx.timelineEvent.*/adminUsers.audit.* i18n keys, so Recent
  Activity/Timeline/Audit panels no longer mix English into ru/hy UI.
- Translated raw internal codes rendered directly to users: transaction
  payment method ('card'/'qr'/'cash_on_delivery' -> adminTransactions.methodValue.*)
  and user roles/permissions ('products.manage' etc -> adminUsers.roleValue.*/
  adminUsers.permission.*), replacing developer-facing enum leakage with
  real copy.
- Fixed wrong-noun list-footer counts: Orders/Transactions/Moderation
  list pages all reused adminProducts.items ("N товаров"/"N products")
  regardless of what was actually listed; each now has its own itemsCount
  key ("N заказов", "N транзакций", "N отзывов").
- Fixed customer detail page's "Back" button reusing adminOrders.back
  ("Back to orders") instead of a customers-specific label.
- Added translation keys to en/ru/hy + translations.ts interface for all
  of the above.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
sdarbinyan
2026-07-25 21:20:37 +04:00
parent 72846b44b1
commit b909a195f7
28 changed files with 311 additions and 42 deletions

View File

@@ -1230,6 +1230,7 @@ export interface Translations {
adminModeration: {
search: string;
selectAllRows: string;
itemsCount: string;
allStatuses: string;
allRatings: string;
rating: string;
@@ -1286,6 +1287,16 @@ export interface Translations {
rejected: string;
spam: string;
};
timelineEvent: {
submitted: string;
statusChanged: string;
restored: string;
hidden: string;
};
actor: {
admin: string;
customer: string;
};
targetType: {
product: string;
review: string;
@@ -1314,6 +1325,11 @@ export interface Translations {
createdAt: string;
items: string;
timeline: string;
timelineEvent: {
created: string;
statusChanged: string;
refundRequested: string;
};
notes: string;
internalNotes: string;
addNote: string;
@@ -1348,6 +1364,7 @@ export interface Translations {
refund_requested: string;
refunded: string;
};
itemsCount: string;
ordersToday: string;
paidCount: string;
customersCount: string;
@@ -1359,6 +1376,7 @@ export interface Translations {
alertRefundRequested: string;
};
adminCustomers: {
back: string;
search: string;
name: string;
email: string;
@@ -1757,11 +1775,34 @@ export interface Translations {
expired: string;
revoked: string;
};
roleValue: {
owner: string;
admin: string;
editor: string;
viewer: string;
};
permission: {
all: string;
productsManage: string;
productsView: string;
categoriesManage: string;
ordersManage: string;
ordersView: string;
mediaManage: string;
};
actor: {
admin: string;
};
audit: {
roleChanged: string;
statusChanged: string;
};
};
adminTransactions: {
search: string;
type: string;
method: string;
itemsCount: string;
fraud: string;
flagged: string;
flag: string;
@@ -1783,6 +1824,11 @@ export interface Translations {
refund: string;
qr_payment: string;
};
methodValue: {
card: string;
qr: string;
cash_on_delivery: string;
};
};
adminMonitoring: {
eventsEmptyTitle: string;