diff --git a/backend/.env b/backend/.env
index 6104403a..c9b29517 100644
--- a/backend/.env
+++ b/backend/.env
@@ -18,7 +18,7 @@
APP_ENV=prod
APP_SECRET={REGENERATE_SECRET}
APP_HASH={REGENERATE_SECRET}
-APP_VERSION=1.0.3
+APP_VERSION=1.0.4
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index 7c321623..3b4a69c0 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "expensave-frontend",
- "version": "1.0.2",
+ "version": "1.0.4",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "expensave-frontend",
- "version": "1.0.2",
+ "version": "1.0.4",
"dependencies": {
"@angular/animations": "^21.2.16",
"@angular/cdk": "~21.0.6",
diff --git a/frontend/package.json b/frontend/package.json
index 550b7560..f1d3f75a 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -1,6 +1,6 @@
{
"name": "expensave-frontend",
- "version": "1.0.2",
+ "version": "1.0.4",
"scripts": {
"dev": "ng serve --host 0.0.0.0 --port 18002 --disable-host-check",
"analyze": "eslint src/",
diff --git a/frontend/src/app/modules/main/dialogs/statement-review-dialog/statement-review-dialog.component.html b/frontend/src/app/modules/main/dialogs/statement-review-dialog/statement-review-dialog.component.html
index 06968260..6b413c44 100644
--- a/frontend/src/app/modules/main/dialogs/statement-review-dialog/statement-review-dialog.component.html
+++ b/frontend/src/app/modules/main/dialogs/statement-review-dialog/statement-review-dialog.component.html
@@ -17,7 +17,7 @@
{{ totalExpensesAmount | shortNumber }}
- @for (date of groupedDates; track $index) {
+ @for (date of groupedDates; track date) {
{{ date }}
@@ -26,7 +26,10 @@
- @for (expense of groupedByDates[date]; track $index) {
+ @for (
+ expense of groupedByDates[date];
+ track expense.label + '|' + expense.createdAt + '|' + expense.amount
+ ) {
{
- this.removeExpenseFromList(expense);
-
- expenseDialog.close();
-
- // Close review if no expenses to import is left
- if (!this.expenses.length) {
- this.dialogRef.close({
- action: DIALOG_ACTION_CLOSE,
- calendarRefreshNeeded: this.calendarRefreshNeeded,
- });
- }
- },
},
});
- expenseDialog.onClose.subscribe((savedExpense: Expense) => {
- if (!(savedExpense instanceof Expense)) {
+ expenseDialog.onClose.subscribe((result: Expense | boolean | undefined) => {
+ if (!result) {
return;
}
@@ -125,15 +112,14 @@ export class StatementReviewDialogComponent implements OnInit {
}
public removeExpenseFromList(expense: Expense): void {
- const index = this.expenses.indexOf(expense);
- if (index === -1) {
+ if (this.expenses.indexOf(expense) === -1) {
return;
}
- this.expenses.splice(index, 1);
+ this.expenses = this.expenses.filter(item => item !== expense);
this.reloadGroupedExpenses();
- this.onImportChange(this.expenses);
+ this.onImportChange([...this.expenses]);
}
private reloadGroupedExpenses(): void {