fix: ensure items entries has one empty line atleast.

This commit is contained in:
a.bouhuolia
2021-08-03 21:41:53 +02:00
parent 6cd6bd8700
commit 1f3ed79f2a
5 changed files with 84 additions and 25 deletions

View File

@@ -1,4 +1,5 @@
import { sumBy } from 'lodash';
import { sumBy, isEmpty, last } from 'lodash';
import * as R from 'ramda';
import { toSafeNumber } from 'utils';
/**
@@ -36,4 +37,19 @@ export const ITEM_TYPE = {
*/
export function getEntriesTotal(entries) {
return sumBy(entries, 'amount');
}
}
/**
* Ensure the given entries have enough empty line on the last.
* @param {Object} defaultEntry - Default entry.
* @param {Array} entries - Entries.
* @return {Array}
*/
export const ensureEntriesHaveEmptyLine = R.curry((defaultEntry, entries) => {
const lastEntry = last(entries);
if (isEmpty(lastEntry.account_id) || isEmpty(lastEntry.amount)) {
return [...entries, defaultEntry];
}
return entries;
});