This repository contains utilities for transforming and manipulating Falcor paths.
-
collapse(paths)
Simplifies a set of paths. Example:
var util = require("falcor-path-utils");
var collapsedPaths = util.collapse([
["genres", 0, "titles", 0, "name"],
["genres", 0, "titles", 0, "rating"],
["genres", 0, "titles", 1, "name"],
["genres", 0, "titles", 1, "rating"]
]);
-
iterateKeySet(keySet, note)
Takes in a keySet
and a note
and attempts to iterate over it.
-
toTree(paths)
Converts paths
to a tree with null leaves. (see spec)
-
toPaths(lengths)
Converts a lengthTree
to paths. (see spec)
-
pathsComplementFromTree(paths, tree)
Returns a list of these paths
that are not in the tree
. (see spec)
-
pathsComplementFromLengthTree(paths, lengthTree)
Like above, but for use with length tree.
-
hasIntersection(tree, path, depth)
Tests to see if the intersection should be stripped from the total paths.
-
optimizePathSets(cache, paths, maxRefFollow)
(see spec)
-
pathCount(pathSet)
Returns the number of paths in a PathSet.
var util = require("falcor-path-utils");
console.log(util.pathCount(["titlesById", [512, 628], ["name","rating"]]))
-
escape(string)
Escapes untrusted input to make it safe to include in a path.
-
unescape(string)
Unescapes a string encoded with escape.
-
materialize(pathSet, value)
Construct a JsonGraph of value at pathSet paths.