mirror of
https://dev.azure.com/hugendubel/ISA/_git/ISA-Frontend
synced 2025-12-28 22:42:11 +01:00
feat: add mock for ScannerButtonComponent and update feedback dialog
- Created a mock for ScannerButtonComponent in test-mocks.ts to facilitate testing. - Updated test-setup.ts to mock browser APIs for the test environment. - Refactored SelectRemiQuantityAndReasonComponent to simplify addToRemiList logic and update feedback dialog usage. - Modified feedback-dialog.component.html to safely access message data. - Cleaned up package-lock.json by removing deprecated and unnecessary dependencies.
This commit is contained in:
@@ -6,7 +6,9 @@
|
||||
|
||||
<remi-feature-remission-list-select></remi-feature-remission-list-select>
|
||||
|
||||
<filter-controls-panel (triggerSearch)="search()"></filter-controls-panel>
|
||||
<filter-controls-panel
|
||||
(triggerSearch)="search(); searchTrigger.set('user')"
|
||||
></filter-controls-panel>
|
||||
|
||||
<span
|
||||
class="text-isa-neutral-900 isa-text-body-2-regular self-start"
|
||||
|
||||
@@ -92,6 +92,8 @@ function querySettingsFactory() {
|
||||
},
|
||||
})
|
||||
export class RemissionListComponent {
|
||||
searchTrigger = signal<'user' | 'reload' | 'initial'>('initial');
|
||||
|
||||
/**
|
||||
* Activated route instance for accessing route data and params.
|
||||
*/
|
||||
@@ -318,6 +320,9 @@ export class RemissionListComponent {
|
||||
}
|
||||
|
||||
untracked(() => {
|
||||
if (this.searchTrigger() !== 'user') {
|
||||
return;
|
||||
}
|
||||
const isDepartment =
|
||||
this.selectedRemissionListType() === RemissionListType.Abteilung;
|
||||
|
||||
@@ -329,6 +334,7 @@ export class RemissionListComponent {
|
||||
}).closed.subscribe((result) => {
|
||||
if (result) {
|
||||
this.remissionResource.reload();
|
||||
this.searchTrigger.set('reload');
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import { inject, resource } from '@angular/core';
|
||||
import { ListResponseArgs, ResponseArgsError } from '@isa/common/data-access';
|
||||
import {
|
||||
QueryTokenInput,
|
||||
RemissionListType,
|
||||
RemissionSearchService,
|
||||
RemissionStockService,
|
||||
@@ -8,7 +9,6 @@ import {
|
||||
ReturnItem,
|
||||
ReturnSuggestion,
|
||||
} from '@isa/remission/data-access';
|
||||
import { QueryTokenInput } from 'libs/remission/data-access/src/lib/schemas';
|
||||
import { parseISO, compareDesc } from 'date-fns';
|
||||
|
||||
/**
|
||||
@@ -97,7 +97,7 @@ export const createRemissionListResource = (
|
||||
res.result.sort((a, b) => {
|
||||
const aIsManuallyAdded = a.source === 'manually-added';
|
||||
const bIsManuallyAdded = b.source === 'manually-added';
|
||||
|
||||
|
||||
// First priority: manually-added items come first
|
||||
if (aIsManuallyAdded && !bIsManuallyAdded) {
|
||||
return -1;
|
||||
@@ -105,18 +105,18 @@ export const createRemissionListResource = (
|
||||
if (!aIsManuallyAdded && bIsManuallyAdded) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
// Second priority: sort by created date (latest first)
|
||||
if (a.created && b.created) {
|
||||
const dateA = parseISO(a.created);
|
||||
const dateB = parseISO(b.created);
|
||||
return compareDesc(dateA, dateB); // Descending order (latest first)
|
||||
}
|
||||
|
||||
|
||||
// Handle cases where created date might be missing
|
||||
if (a.created && !b.created) return -1;
|
||||
if (!a.created && b.created) return 1;
|
||||
|
||||
|
||||
return 0;
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user