2.9.10 • Published 7 years ago

@graphistry/falcor-path-utils v2.9.10

Weekly downloads
18
License
ALV2
Repository
github
Last release
7 years ago

Falcor Path Utils

This repository contains utilities for transforming and manipulating Falcor paths.

Utility functions:

  • 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"]
    ]);
    
    // collapsed paths is ["genres", 0, "titles", {from: 0, to: 1}, ["name", "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"]])) 
    // prints 4, because ["titlesById", [512, 628], ["name","rating"]] contains...
    // ["titlesById", 512, "name"]
    // ["titlesById", 512, "rating"]
    // ["titlesById", 628, "name"]
    // ["titlesById", 628, "rating"]
2.9.10

7 years ago

2.9.6

7 years ago

2.9.5

7 years ago

2.9.4

7 years ago

2.9.1

7 years ago

2.8.0

7 years ago

2.7.1

7 years ago

2.6.16

7 years ago

2.6.15

7 years ago

2.6.11

7 years ago

2.6.4

7 years ago

2.6.3

7 years ago

2.6.1

7 years ago

2.5.3

7 years ago

2.5.0

7 years ago

2.1.0

8 years ago

2.0.10

8 years ago

2.0.4

8 years ago

2.0.1

8 years ago

0.5.3

8 years ago