Files
bigcapital/src/containers/JournalNumber/utils.js
2021-09-21 17:13:53 +02:00

37 lines
989 B
JavaScript

import {
transformToForm,
optionsMapToArray,
transfromToSnakeCase,
transactionNumber,
} from 'utils';
export const defaultInvoiceNoSettings = {
nextNumber: '',
numberPrefix: '',
autoIncrement: '',
};
export const transformSettingsToForm = (settings) => ({
...settings,
incrementMode: settings.autoIncrement === 'true' ? 'auto' : 'manual',
});
export const transformFormToSettings = (values, group) => {
const options = transfromToSnakeCase({
...transformToForm(values, defaultInvoiceNoSettings),
autoIncrement: values.incrementMode === 'auto',
});
return optionsMapToArray(options).map((option) => ({ ...option, group }));
};
export const transformValuesToForm = (values) => {
const incrementNumber =
values.incrementMode === 'auto'
? transactionNumber(values.numberPrefix, values.nextNumber)
: values.manualTransactionNo;
const manually = values.incrementMode === 'auto' ? false : true;
return { incrementNumber, manually };
};