diff --git a/src/app/features/admin/orders/pages/admin-orders-list-page.component.html b/src/app/features/admin/orders/pages/admin-orders-list-page.component.html index 321d71d..0ecaec4 100644 --- a/src/app/features/admin/orders/pages/admin-orders-list-page.component.html +++ b/src/app/features/admin/orders/pages/admin-orders-list-page.component.html @@ -45,9 +45,16 @@ {{ 'adminOrders.archiveSelected' | translate }} {{ 'adminProducts.bulkExportAction' | translate }} {{ 'adminOrders.printSelected' | translate }} - {{ 'adminProducts.bulkDelete' | translate }} + {{ 'adminProducts.bulkDelete' | translate }} } + @if (facade.loading()) {
diff --git a/src/app/features/admin/orders/pages/admin-orders-list-page.component.ts b/src/app/features/admin/orders/pages/admin-orders-list-page.component.ts index a8e36f8..cdd8cb5 100644 --- a/src/app/features/admin/orders/pages/admin-orders-list-page.component.ts +++ b/src/app/features/admin/orders/pages/admin-orders-list-page.component.ts @@ -15,11 +15,12 @@ import { EmptyStateComponent } from '../../../../shared/ui/empty-state/empty-sta import { SkeletonComponent } from '../../../../shared/ui/skeleton/skeleton.component'; import { CardComponent } from '../../../../shared/ui/card/card.component'; import { OrdersDashboardComponent } from '../components/orders-dashboard/orders-dashboard.component'; +import { ConfirmDialogComponent } from '../../../../shared/ui/confirm-dialog/confirm-dialog.component'; @Component({ selector: 'app-admin-orders-list-page', standalone: true, - imports: [CommonModule, FormsModule, TranslatePipe, ButtonComponent, InputComponent, BadgeComponent, TableComponent, PaginationComponent, EmptyStateComponent, SkeletonComponent, CardComponent, OrdersDashboardComponent], + imports: [CommonModule, FormsModule, TranslatePipe, ButtonComponent, InputComponent, BadgeComponent, TableComponent, PaginationComponent, EmptyStateComponent, SkeletonComponent, CardComponent, OrdersDashboardComponent, ConfirmDialogComponent], templateUrl: './admin-orders-list-page.component.html', styleUrls: ['./admin-orders-list-page.component.scss'], changeDetection: ChangeDetectionStrategy.OnPush @@ -35,6 +36,7 @@ export class AdminOrdersListPageComponent { readonly allColumns = ALL_ORDER_COLUMNS; protected readonly columnsPanelOpen = signal(false); protected readonly bulkStatusValue = signal('pending'); + protected readonly bulkDeleteConfirmOpen = signal(false); constructor() { this.facade.loadList(); @@ -61,6 +63,15 @@ export class AdminOrdersListPageComponent { this.facade.applyBulkStatus(this.bulkStatusValue()); } + bulkDelete(): void { + this.bulkDeleteConfirmOpen.set(true); + } + + confirmBulkDelete(): void { + this.facade.applyBulkDelete(); + this.bulkDeleteConfirmOpen.set(false); + } + printSelection(): void { window.print(); } diff --git a/src/app/i18n/en.ts b/src/app/i18n/en.ts index 145674c..a8093d6 100644 --- a/src/app/i18n/en.ts +++ b/src/app/i18n/en.ts @@ -1360,6 +1360,8 @@ export const en: Translations = { }, }, adminOrders: { + bulkDeleteTitle: 'Delete orders', + confirmBulkDelete: 'Delete the selected orders? This cannot be undone.', back: 'Back to orders', search: 'Search by order number, name, email, or phone…', export: 'Export', diff --git a/src/app/i18n/hy.ts b/src/app/i18n/hy.ts index 1fcb0ad..7f1100e 100644 --- a/src/app/i18n/hy.ts +++ b/src/app/i18n/hy.ts @@ -1355,6 +1355,8 @@ export const hy: Translations = { }, }, adminOrders: { + bulkDeleteTitle: 'Ջնջել պատվերները', + confirmBulkDelete: 'Ջնջե՞լ ընտրված պատվերները։ Հնարավոր չէ հետարկել։', back: 'Վերադառնալ պատվերներին', search: 'Փնտրել ըստ պատվերի համարի, անվան, էլ. փոստի կամ հեռախոսի…', export: 'Արտահանել', diff --git a/src/app/i18n/ru.ts b/src/app/i18n/ru.ts index 14fe3f7..b841604 100644 --- a/src/app/i18n/ru.ts +++ b/src/app/i18n/ru.ts @@ -1355,6 +1355,8 @@ export const ru: Translations = { }, }, adminOrders: { + bulkDeleteTitle: 'Удалить заказы', + confirmBulkDelete: 'Удалить выбранные заказы? Это действие нельзя отменить.', back: 'Назад к заказам', search: 'Поиск по номеру заказа, имени, email или телефону…', export: 'Экспорт', diff --git a/src/app/i18n/translations.ts b/src/app/i18n/translations.ts index d4fa03e..4d60970 100644 --- a/src/app/i18n/translations.ts +++ b/src/app/i18n/translations.ts @@ -1359,6 +1359,8 @@ export interface Translations { }; }; adminOrders: { + bulkDeleteTitle: string; + confirmBulkDelete: string; back: string; search: string; export: string;