taxtank-core 0.33.54 → 0.33.55

Sign up to get free protection for your applications and to get access to all the features.
@@ -9,10 +9,11 @@ export class SoleInvoiceCollection extends Collection {
9
9
  getPaid(transactions) {
10
10
  const amountPerInvoice = transactions.getAmountPerInvoice();
11
11
  return this.filter(invoice => invoice.grossPrice > 0
12
- && round(amountPerInvoice.get(invoice.id), 2) >= invoice.grossPrice);
12
+ && round(amountPerInvoice.get(invoice.id), 2) >= invoice.grossPrice.toFixed(2));
13
13
  }
14
14
  getUnpaid(transactions) {
15
- return this.getOpen().filter(invoice => transactions.getAmountPerInvoice().get(invoice.id) < invoice.grossPrice);
15
+ const amountPerInvoice = transactions.getAmountPerInvoice();
16
+ return this.getOpen().filter(invoice => round(amountPerInvoice.get(invoice.id), 2) < invoice.grossPrice.toFixed(2));
16
17
  }
17
18
  getOpen() {
18
19
  return this.filter((invoice) => invoice.isOpen());
@@ -36,4 +37,4 @@ export class SoleInvoiceCollection extends Collection {
36
37
  return flatten(this.map(invoice => invoice.allocate(bankTransaction, amount)));
37
38
  }
38
39
  }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvc29sZS9zb2xlLWludm9pY2UuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9FLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUVqQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsVUFBdUI7SUFDaEUsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQW9CLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPLENBQUMsWUFBbUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLENBQUM7ZUFDL0MsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FDcEUsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTLENBQUMsWUFBbUM7UUFDM0MsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkgsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFvQixFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLE9BQU8sT0FBTyxDQUNaLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUN4RCxDQUFDO0lBQ0osQ0FBQztJQUVELFlBQVksQ0FBQyxZQUFtQztRQUM5QyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFcEQsZUFBZSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLGVBQWUsQ0FBQyxHQUFHLENBQ2pCLG9CQUFvQixDQUFDLElBQUksRUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUMxRyxDQUFDO1FBQ0YsZUFBZSxDQUFDLEdBQUcsQ0FDakIsdUJBQXVCLENBQUMsSUFBSSxFQUM1QixlQUFlLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQ3pILENBQUM7UUFDRixlQUFlLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUUvRSxPQUFPLGVBQWUsQ0FBQTtJQUN4QixDQUFDO0lBRUQsZUFBZSxDQUFDLFlBQW1DO1FBQ2pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMxRixDQUFDO0lBRUQsUUFBUSxDQUFDLGVBQWdDLEVBQUUsTUFBZTtRQUN4RCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiwgU29sZUludm9pY2UsIFRyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCBmbGF0dGVuIGZyb20gJ2xvZGFzaC9mbGF0dGVuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlU3RhdGVFbnVtLCBTb2xlSW52b2ljZVN0YXR1c2VzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCB7IENvbGxlY3Rpb25EaWN0aW9uYXJ5IH0gZnJvbSAnLi4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcbmltcG9ydCByb3VuZCBmcm9tICdsb2Rhc2gvcm91bmQnO1xuXG5leHBvcnQgY2xhc3MgU29sZUludm9pY2VDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxTb2xlSW52b2ljZT4ge1xuICBnZXRPdmVyZHVlKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigoaW52b2ljZTogU29sZUludm9pY2UpID0+IGludm9pY2UuaXNPdmVyZHVlKCkpO1xuICB9XG5cbiAgZ2V0UGFpZCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbik6IHRoaXMge1xuICAgIGNvbnN0IGFtb3VudFBlckludm9pY2UgPSB0cmFuc2FjdGlvbnMuZ2V0QW1vdW50UGVySW52b2ljZSgpO1xuICAgIHJldHVybiB0aGlzLmZpbHRlcihpbnZvaWNlID0+IGludm9pY2UuZ3Jvc3NQcmljZSA+IDBcbiAgICAgICYmIHJvdW5kKGFtb3VudFBlckludm9pY2UuZ2V0KGludm9pY2UuaWQpLCAyKSA+PSBpbnZvaWNlLmdyb3NzUHJpY2VcbiAgICApO1xuICB9XG5cbiAgZ2V0VW5wYWlkKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0T3BlbigpLmZpbHRlcihpbnZvaWNlID0+IHRyYW5zYWN0aW9ucy5nZXRBbW91bnRQZXJJbnZvaWNlKCkuZ2V0KGludm9pY2UuaWQpIDwgaW52b2ljZS5ncm9zc1ByaWNlKTtcbiAgfVxuXG4gIGdldE9wZW4oKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChpbnZvaWNlOiBTb2xlSW52b2ljZSkgPT4gaW52b2ljZS5pc09wZW4oKSk7XG4gIH1cblxuICBnZXRJbnZvaWNlSXRlbXNJZHMoKTogbnVtYmVyW10ge1xuICAgIHJldHVybiBmbGF0dGVuKFxuICAgICAgdGhpcy5tYXAoaW52b2ljZSA9PiBpbnZvaWNlLml0ZW1zLm1hcChpdGVtID0+IGl0ZW0uaWQpKVxuICAgICk7XG4gIH1cblxuICBncm91cEJ5U3RhdGUodHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24pOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxTb2xlSW52b2ljZUNvbGxlY3Rpb24+IHtcbiAgICBjb25zdCBpbnZvaWNlc0J5U3RhdGUgPSB0aGlzLmdyb3VwQnkoJ3N0YXR1cycpO1xuICAgIGNvbnN0IHVucGFpZEludm9pY2VzID0gdGhpcy5nZXRVbnBhaWQodHJhbnNhY3Rpb25zKTtcblxuICAgIGludm9pY2VzQnlTdGF0ZS5hZGQoU29sZUludm9pY2VTdGF0ZUVudW0uRlVMTFlfUEFJRCwgdGhpcy5nZXRQYWlkKHRyYW5zYWN0aW9ucykpO1xuICAgIGludm9pY2VzQnlTdGF0ZS5hZGQoXG4gICAgICBTb2xlSW52b2ljZVN0YXRlRW51bS5QQUlELFxuICAgICAgdGhpcy5maWx0ZXJCeSgnaWQnLCB0cmFuc2FjdGlvbnMuZmlsdGVyQnlGaW5hbmNpYWxZZWFyKCdkYXRlJykubWFwKHRyYW5zYWN0aW9uID0+IHRyYW5zYWN0aW9uLmludm9pY2VJZCkpXG4gICAgKTtcbiAgICBpbnZvaWNlc0J5U3RhdGUuYWRkKFxuICAgICAgU29sZUludm9pY2VTdGF0dXNlc0VudW0uT1BFTixcbiAgICAgIGludm9pY2VzQnlTdGF0ZS5nZXQoU29sZUludm9pY2VTdGF0dXNlc0VudW0uT1BFTikucmVtb3ZlKGludm9pY2VzQnlTdGF0ZS5nZXQoU29sZUludm9pY2VTdGF0ZUVudW0uRlVMTFlfUEFJRCkudG9BcnJheSgpKVxuICAgICk7XG4gICAgaW52b2ljZXNCeVN0YXRlLmFkZChTb2xlSW52b2ljZVN0YXRlRW51bS5PVkVSRFVFLCB1bnBhaWRJbnZvaWNlcy5nZXRPdmVyZHVlKCkpO1xuXG4gICAgcmV0dXJuIGludm9pY2VzQnlTdGF0ZVxuICB9XG5cbiAgZ2V0VW5wYWlkQW1vdW50KHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgnZ3Jvc3NQcmljZScpIC0gdHJhbnNhY3Rpb25zLmdldEJ5SW52b2ljZXModGhpcykuc3VtQnkoJ2dyb3NzQW1vdW50Jyk7XG4gIH1cblxuICBhbGxvY2F0ZShiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbiwgYW1vdW50PzogbnVtYmVyKTogVHJhbnNhY3Rpb25bXSB7XG4gICAgcmV0dXJuIGZsYXR0ZW4odGhpcy5tYXAoaW52b2ljZSA9PiBpbnZvaWNlLmFsbG9jYXRlKGJhbmtUcmFuc2FjdGlvbiwgYW1vdW50KSkpO1xuICB9XG59XG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvc29sZS9zb2xlLWludm9pY2UuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRS9FLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUVqQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsVUFBdUI7SUFDaEUsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQW9CLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPLENBQUMsWUFBbUM7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM1RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLENBQUM7ZUFDL0MsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQy9FLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxDQUFDLFlBQW1DO1FBQzNDLE1BQU0sZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDNUQsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0SCxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQW9CLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxPQUFPLENBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ3hELENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWSxDQUFDLFlBQW1DO1FBQzlDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0MsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVwRCxlQUFlLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDakYsZUFBZSxDQUFDLEdBQUcsQ0FDakIsb0JBQW9CLENBQUMsSUFBSSxFQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQzFHLENBQUM7UUFDRixlQUFlLENBQUMsR0FBRyxDQUNqQix1QkFBdUIsQ0FBQyxJQUFJLEVBQzVCLGVBQWUsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FDekgsQ0FBQztRQUNGLGVBQWUsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRS9FLE9BQU8sZUFBZSxDQUFBO0lBQ3hCLENBQUM7SUFFRCxlQUFlLENBQUMsWUFBbUM7UUFDakQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRCxRQUFRLENBQUMsZUFBZ0MsRUFBRSxNQUFlO1FBQ3hELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uLCBTb2xlSW52b2ljZSwgVHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU29sZUludm9pY2VTdGF0ZUVudW0sIFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuLi9jb2xsZWN0aW9uLWRpY3Rpb25hcnknO1xuaW1wb3J0IHJvdW5kIGZyb20gJ2xvZGFzaC9yb3VuZCc7XG5cbmV4cG9ydCBjbGFzcyBTb2xlSW52b2ljZUNvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPFNvbGVJbnZvaWNlPiB7XG4gIGdldE92ZXJkdWUoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChpbnZvaWNlOiBTb2xlSW52b2ljZSkgPT4gaW52b2ljZS5pc092ZXJkdWUoKSk7XG4gIH1cblxuICBnZXRQYWlkKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogdGhpcyB7XG4gICAgY29uc3QgYW1vdW50UGVySW52b2ljZSA9IHRyYW5zYWN0aW9ucy5nZXRBbW91bnRQZXJJbnZvaWNlKCk7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKGludm9pY2UgPT4gaW52b2ljZS5ncm9zc1ByaWNlID4gMFxuICAgICAgJiYgcm91bmQoYW1vdW50UGVySW52b2ljZS5nZXQoaW52b2ljZS5pZCksIDIpID49IGludm9pY2UuZ3Jvc3NQcmljZS50b0ZpeGVkKDIpXG4gICAgKTtcbiAgfVxuXG4gIGdldFVucGFpZCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbik6IHRoaXMge1xuICAgIGNvbnN0IGFtb3VudFBlckludm9pY2UgPSB0cmFuc2FjdGlvbnMuZ2V0QW1vdW50UGVySW52b2ljZSgpO1xuICAgIHJldHVybiB0aGlzLmdldE9wZW4oKS5maWx0ZXIoaW52b2ljZSA9PiByb3VuZChhbW91bnRQZXJJbnZvaWNlLmdldChpbnZvaWNlLmlkKSwgMikgPCBpbnZvaWNlLmdyb3NzUHJpY2UudG9GaXhlZCgyKSk7XG4gIH1cblxuICBnZXRPcGVuKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigoaW52b2ljZTogU29sZUludm9pY2UpID0+IGludm9pY2UuaXNPcGVuKCkpO1xuICB9XG5cbiAgZ2V0SW52b2ljZUl0ZW1zSWRzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gZmxhdHRlbihcbiAgICAgIHRoaXMubWFwKGludm9pY2UgPT4gaW52b2ljZS5pdGVtcy5tYXAoaXRlbSA9PiBpdGVtLmlkKSlcbiAgICApO1xuICB9XG5cbiAgZ3JvdXBCeVN0YXRlKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8U29sZUludm9pY2VDb2xsZWN0aW9uPiB7XG4gICAgY29uc3QgaW52b2ljZXNCeVN0YXRlID0gdGhpcy5ncm91cEJ5KCdzdGF0dXMnKTtcbiAgICBjb25zdCB1bnBhaWRJbnZvaWNlcyA9IHRoaXMuZ2V0VW5wYWlkKHRyYW5zYWN0aW9ucyk7XG5cbiAgICBpbnZvaWNlc0J5U3RhdGUuYWRkKFNvbGVJbnZvaWNlU3RhdGVFbnVtLkZVTExZX1BBSUQsIHRoaXMuZ2V0UGFpZCh0cmFuc2FjdGlvbnMpKTtcbiAgICBpbnZvaWNlc0J5U3RhdGUuYWRkKFxuICAgICAgU29sZUludm9pY2VTdGF0ZUVudW0uUEFJRCxcbiAgICAgIHRoaXMuZmlsdGVyQnkoJ2lkJywgdHJhbnNhY3Rpb25zLmZpbHRlckJ5RmluYW5jaWFsWWVhcignZGF0ZScpLm1hcCh0cmFuc2FjdGlvbiA9PiB0cmFuc2FjdGlvbi5pbnZvaWNlSWQpKVxuICAgICk7XG4gICAgaW52b2ljZXNCeVN0YXRlLmFkZChcbiAgICAgIFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtLk9QRU4sXG4gICAgICBpbnZvaWNlc0J5U3RhdGUuZ2V0KFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtLk9QRU4pLnJlbW92ZShpbnZvaWNlc0J5U3RhdGUuZ2V0KFNvbGVJbnZvaWNlU3RhdGVFbnVtLkZVTExZX1BBSUQpLnRvQXJyYXkoKSlcbiAgICApO1xuICAgIGludm9pY2VzQnlTdGF0ZS5hZGQoU29sZUludm9pY2VTdGF0ZUVudW0uT1ZFUkRVRSwgdW5wYWlkSW52b2ljZXMuZ2V0T3ZlcmR1ZSgpKTtcblxuICAgIHJldHVybiBpbnZvaWNlc0J5U3RhdGVcbiAgfVxuXG4gIGdldFVucGFpZEFtb3VudCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ2dyb3NzUHJpY2UnKSAtIHRyYW5zYWN0aW9ucy5nZXRCeUludm9pY2VzKHRoaXMpLnN1bUJ5KCdncm9zc0Ftb3VudCcpO1xuICB9XG5cbiAgYWxsb2NhdGUoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24sIGFtb3VudD86IG51bWJlcik6IFRyYW5zYWN0aW9uW10ge1xuICAgIHJldHVybiBmbGF0dGVuKHRoaXMubWFwKGludm9pY2UgPT4gaW52b2ljZS5hbGxvY2F0ZShiYW5rVHJhbnNhY3Rpb24sIGFtb3VudCkpKTtcbiAgfVxufVxuIl19
@@ -8312,10 +8312,11 @@ class SoleInvoiceCollection extends Collection {
8312
8312
  getPaid(transactions) {
8313
8313
  const amountPerInvoice = transactions.getAmountPerInvoice();
8314
8314
  return this.filter(invoice => invoice.grossPrice > 0
8315
- && round(amountPerInvoice.get(invoice.id), 2) >= invoice.grossPrice);
8315
+ && round(amountPerInvoice.get(invoice.id), 2) >= invoice.grossPrice.toFixed(2));
8316
8316
  }
8317
8317
  getUnpaid(transactions) {
8318
- return this.getOpen().filter(invoice => transactions.getAmountPerInvoice().get(invoice.id) < invoice.grossPrice);
8318
+ const amountPerInvoice = transactions.getAmountPerInvoice();
8319
+ return this.getOpen().filter(invoice => round(amountPerInvoice.get(invoice.id), 2) < invoice.grossPrice.toFixed(2));
8319
8320
  }
8320
8321
  getOpen() {
8321
8322
  return this.filter((invoice) => invoice.isOpen());