Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

falcor-path-utils

Package Overview
Dependencies
Maintainers
16
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

falcor-path-utils

This repository contains utilities for transforming and manipulating Falcor paths.

  • 0.7.5
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
16
Created
Source

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"]
    
  • 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.

FAQs

Package last updated on 03 Aug 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc