fix(admin): polish orders

Same gap as products/categories: table select-all and per-row select
checkboxes had no accessible name. Added aria-label (row label
includes order number for context). New adminOrders.selectAllRows/
selectRow keys across en/ru/hy.

Order detail page and order-timeline component reviewed — no
interactive checkboxes or focus-visible gaps found there.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
sdarbinyan
2026-07-20 00:00:29 +04:00
parent a0d3f086c1
commit 687cc5f5dc
5 changed files with 10 additions and 2 deletions

View File

@@ -60,7 +60,7 @@
<app-table>
<thead>
<tr>
<th><input type="checkbox" (change)="facade.toggleAll($any($event.target).checked)" /></th>
<th><input type="checkbox" [attr.aria-label]="'adminOrders.selectAllRows' | translate" (change)="facade.toggleAll($any($event.target).checked)" /></th>
<th>{{ 'adminOrders.orderNumber' | translate }}</th>
@if (isColumnVisible('customer')) { <th>{{ 'adminOrders.customer' | translate }}</th> }
@if (isColumnVisible('status')) { <th>{{ 'backoffice.status' | translate }}</th> }
@@ -73,7 +73,7 @@
<tbody>
@for (order of facade.orders(); track order.id) {
<tr>
<td><input type="checkbox" [checked]="isSelected(order.id)" (change)="facade.toggleSelection(order.id, $any($event.target).checked)" /></td>
<td><input type="checkbox" [checked]="isSelected(order.id)" [attr.aria-label]="('adminOrders.selectRow' | translate) + ': ' + order.orderNumber" (change)="facade.toggleSelection(order.id, $any($event.target).checked)" /></td>
<td>{{ order.orderNumber }}</td>
@if (isColumnVisible('customer')) { <td>{{ order.customer.name }}</td> }
@if (isColumnVisible('status')) { <td><app-badge variant="neutral">{{ ('adminOrders.status.' + order.status) | translate }}</app-badge></td> }

View File

@@ -1292,6 +1292,8 @@ export const en: Translations = {
back: 'Back to orders',
search: 'Search by order number, name, email, or phone…',
export: 'Export',
selectAllRows: 'Select all orders',
selectRow: 'Select order',
view: 'View',
orderNumber: 'Order',
customer: 'Customer',

View File

@@ -1287,6 +1287,8 @@ export const hy: Translations = {
back: 'Վերադառնալ պատվերներին',
search: 'Փնտրել ըստ պատվերի համարի, անվան, էլ. փոստի կամ հեռախոսի…',
export: 'Արտահանել',
selectAllRows: 'Ընտրել բոլոր պատվերները',
selectRow: 'Ընտրել պատվերը',
view: 'Դիտել',
orderNumber: 'Պատվեր',
customer: 'Հաճախորդ',

View File

@@ -1287,6 +1287,8 @@ export const ru: Translations = {
back: 'Назад к заказам',
search: 'Поиск по номеру заказа, имени, email или телефону…',
export: 'Экспорт',
selectAllRows: 'Выбрать все заказы',
selectRow: 'Выбрать заказ',
view: 'Просмотр',
orderNumber: 'Заказ',
customer: 'Клиент',

View File

@@ -1291,6 +1291,8 @@ export interface Translations {
back: string;
search: string;
export: string;
selectAllRows: string;
selectRow: string;
view: string;
orderNumber: string;
customer: string;