merges two trees guided with hints
import { merge } from "hinted-tree-merger";
const r = merge(
[{ k:1, e:1}, { k:2}],
[{ k:1, e:2}, { k:3}], // 2nd. array has precedence
"",
undefined,
{
"": { key: "k" } // identify slots by property "k"
});
// r := [{ k:1 e:2 }, { k:2 }, { k:3 }]import { merge } from "hinted-tree-merger";
const r = merge( undefined, [ { k:1, e:2}, { k:3 }]);
// r := [{ k:1 e:2 }, { k:2 }, { k:3 }]- hintFor
- Actions
- mergeSkip
- mergeArrays
- merge
- hasDeleteHint
- isToBeRemoved
- hintFreeValue
- indexFor
- keyFor
- sortObjectsByKeys
- compareWithDefinedOrder
- matchingIndex
- toRegexp
- match
- cmp
- compareVersion
- unionVersion
- VersionMapper
- mergeVersionsWithFilter
- mergeVersions
- mergeVersionsPreferNumeric
- walk
Construct hint for a given path.
Type: Function
Skip merging use left side always.
abpathactionshints
Merge to values.
aanybanypathactionsActions (optional, defaultnullAction)hintsany
Returns any merged value
Should value be removed.
Returns Object true if fromTemplate tells is to delete value
Remove hint(s) form a value.
value(string | any)
Returns any value without hint
Find best insertion point for b[i] in a.
Deliver key value to identify object.
objectanyhintObject
Sort keys in source.
sourceObjectcompare
Returns Object source with keys orderd by compare function
valueany
Returns number
try to from a regexp from str. Str must start with '/' and end with '/'
strstring
url means highest version
Returns number
Compare two versions.
Returns number -1 if a < b, 0 if a == b and 1 if a > b
Forms union of two versions.
maps version values (to number)
Type: Function
Merge and filter two sets of version (expressions).
a(string | Array<string> | number | Array<number>)b(string | Array<string> | number | Array<number>)pathstring location in the treeactionsFunction cb to notify about the actual selection (optional, defaultnullAction)hintsObjectfilterVersionMapper
Returns (string | Array<string> | number | Array<number>) merged set of version expressions
merge two sets of version (expressions)
a(string | Array<string> | number | Array<number>)b(string | Array<string> | number | Array<number>)pathstring location in the treeactionsFunction cb to notify about the actual selectionhintsObject
Returns (string | Array<string> | number | Array<number>) merged set of version expressions
Same as mergeVersions but merge result are converted into numbers if possible
a(string | Array<string> | number | Array<number>)b(string | Array<string> | number | Array<number>)pathstring location in the treeactionsFunction cb to notify about the actual selectionhintsObject
Returns (string | Array<string> | number | Array<number>) merged set of version expressions
Iterates over all members.
valueanypathArray<any> (optional, default[])parents(optional, default[])
With npm do:
npm install hinted-tree-mergerBSD-2-Clause