mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-04 03:20:44 +00:00
36 lines
795 B
Plaintext
36 lines
795 B
Plaintext
/* @flow */
|
|
|
|
import { createStringTreeNode } from './../tree';
|
|
import type { TreeNode } from './../tree';
|
|
|
|
export default (
|
|
previousNodes: TreeNode[],
|
|
currentNode: TreeNode
|
|
): TreeNode[] => {
|
|
const nodes = previousNodes.slice(
|
|
0,
|
|
previousNodes.length > 0 ? previousNodes.length - 1 : 0
|
|
);
|
|
const previousNode = previousNodes[previousNodes.length - 1];
|
|
|
|
if (
|
|
previousNode &&
|
|
(currentNode.type === 'string' || currentNode.type === 'number') &&
|
|
(previousNode.type === 'string' || previousNode.type === 'number')
|
|
) {
|
|
nodes.push(
|
|
createStringTreeNode(
|
|
String(previousNode.value) + String(currentNode.value)
|
|
)
|
|
);
|
|
} else {
|
|
if (previousNode) {
|
|
nodes.push(previousNode);
|
|
}
|
|
|
|
nodes.push(currentNode);
|
|
}
|
|
|
|
return nodes;
|
|
};
|