npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

axway-flow-graph

v3.3.5

Published

Graph structure for parsing and manipulating flows

Downloads

563

Readme

axway-flow-graph

Graph structure for parsing and manipulating flows

API Reference

axway-flow-graph~FlowValidator

Helper for validating flows. The validation checks for:

  • no cyclical loops
  • no undefined nodes in the routing

Kind: inner class of axway-flow-graph
Access: public

new FlowValidator(flowGraph, credentialManager)

Create a flow validator.

| Param | Type | Description | | --- | --- | --- | | flowGraph | object | a FlowGraph instance | | credentialManager | object | a credentialManager |

flowValidator._strongconnect(vertex, stack, stronglyConnectedGroups)

Using 'Tarjan's strongly connected components algorithm' to group strongly conencted nodes (loops).

Kind: instance method of FlowValidator
Access: protected

| Param | Type | Description | | --- | --- | --- | | vertex | object | The node/vertex to process. | | stack | array | The stack for vertex processing. | | stronglyConnectedGroups | array | The resulting list of strongly connected groups. |

flowValidator._parseParamValue(param) ⇒ object

Parses a parameter to a given type.

Kind: instance method of FlowValidator
Returns: object - containing error code in 'error' or parsed value in 'data'.

| Param | Type | Description | | --- | --- | --- | | param | object | flow node param object | | param.type | string | type of data to parse. Defaults to jsonpaht | | param.value | string | stringified data to be parsed |

flowValidator._addValidationError(validationData, error)

Adds a validation error to validationData

Kind: instance method of FlowValidator

| Param | Type | Description | | --- | --- | --- | | validationData | object | Object containing the validation warnings and errors | | error | object | Object containg an error |

flowValidator._addValidationWarning(validationData, warning)

Adds a validation warning to validationData

Kind: instance method of FlowValidator

| Param | Type | Description | | --- | --- | --- | | validationData | object | Object containing the validation warnings and errors | | warning | object | Object containg an warning |

flowValidator.checkForLoops(validationData) ⇒ boolean

Check for any closed loops in the graph. If there are loops loop chains are stored in validationData.errors.flowErrors.loops.

Possible errors and error codes: type: loop code: INVALID_NODE

Kind: instance method of FlowValidator
Returns: boolean - true if there are loops detected.
Access: public

| Param | Type | Description | | --- | --- | --- | | validationData | object | The object to add the validation errors to. |

flowValidator.checkForMissingRoutes(validationData) ⇒ boolean

Check nodes that have connections to non-existent targets. If there are undefined connections the details are are stored in validationData.errors.nodeErrors[nodeId].missingRoutes.

Possible errors and error codes: type: invalidNodeRoute code: INVALID_NODE

Kind: instance method of FlowValidator
Returns: boolean - true if there are missing routes detected.
Access: public

| Param | Type | Description | | --- | --- | --- | | validationData | object | The object to add the validation errors to. |

flowValidator.checkForInvalidStart(validationData) ⇒ boolean

Check start to see if it is an invalid type or pointing to a non-existant node. If start is invalid the details are are stored in validationData.errors.flowErrors.invalidStart.

Possible errors and error codes: type: invalidStart code: INVALID_NODE

Kind: instance method of FlowValidator
Returns: boolean - true if start is invalid.
Access: public

| Param | Type | Description | | --- | --- | --- | | validationData | object | The object to add the validation errors to. |

flowValidator.checkNodeOutputContext(validationData) ⇒ boolean

Check that the flow node output contexts are valid JSONPath selectors. If output contexts are invalid, the details are are stored in validationData.errors.nodeErrors[nodeId].invalidOuputContext.

Possible errors and error codes: type: invalidNodeOutput code: INVALID_JSONPATH

Kind: instance method of FlowValidator
Returns: boolean - true if there are invalid ouput contexts detected.
Access: public

| Param | Type | Description | | --- | --- | --- | | validationData | object | The object to add the validation errors to. |

flowValidator.validate() ⇒ object

Run checks on the flow and report validation errors as they are found.

Possible errors and error codes: type: loop code: INVALID_NODE

type: invalidNodeRoute code: INVALID_NODE

type: invalidStart code: INVALID_NODE

type: invalidNodeOutput code: INVALID_JSONPATH

Kind: instance method of FlowValidator
Returns: object - the validation report
Access: public

axway-flow-graph~FlowGraph

Kind: inner class of axway-flow-graph

new FlowGraph()

FlowGraph object

new FlowGraph(flowId, flowdef)

Creates an instance of FlowGraph.

| Param | Type | Description | | --- | --- | --- | | flowId | string | The id of this flow. | | flowdef | object | The flow definition. |

flowGraph._ensureVertex(vertexId, info) ⇒ object

Ensures that a vertex will exist

Kind: instance method of FlowGraph
Returns: object - the vertex which matched or was created.
Access: protected

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the ID of the vertex | | info | object | info to be set on the vertex. If vertex already exists, the info will be merged with the existing info. |

flowGraph._deleteVertex(vertexId)

Deletes a vertex from the graph

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the id of the vertex to delete |

flowGraph._getVertexChildren(vertexId, output, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the children of a vertex in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the child vertices of a vertex in the flow

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the Id of the vertex to get children for. | | output | string | the vetex output to get the children for. | | [idsOnly] | bool | if the vertex idsOnly should be returned rather than the vertices |

flowGraph._getVertexParents(vertexId, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the parents of a vertex in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the parent nodes of a vertex in the flow

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the Id of the vertex to get parents for. | | [idsOnly] | bool | if the vertex ids should be returned rather than the vertices |

flowGraph._ensureEdge(output, fromId, toId) ⇒ object

Ensures that an edge will exist between any two vertices. If any of the vertices do not exist, they will be created.

Kind: instance method of FlowGraph
Returns: object - the edge which matched or was created.
Access: protected

| Param | Type | Description | | --- | --- | --- | | output | string | the vertex output group the edge belongs to. | | fromId | string | the ID of the vertex where the edge starts | | toId | string | this ID of the vertex where the edge ends |

flowGraph._deleteEdge(fromId, output, toId)

Deletes an edge from one node to another. Removes the parent/child where necesarry from each vertex.

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | fromId | string | the vertex where the edge starts | | output | string | the vertex output group the edge belongs to. | | toId | string | the vertex where the edge ends |

flowGraph._deleteEdges(fromId, toId)

Deletes the edges from one node to another (across all outputs). Removes the parent/child where necesarry from each vertex.

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | fromId | string | the vertex where the edge starts | | toId | string | the vertex where the edge ends |

flowGraph._setValidation(validation)

Sets the validation state on the flow definition

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | validation | object | the validation state |

flowGraph._getOutputRoutes(nodeId) ⇒ object

Gets a list of all nodes which a node may route to grouped by output.

Kind: instance method of FlowGraph
Returns: object - A map of IDs for routes from the node specified grouped by output.
Access: protected

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the ID of a node to get routes for |

flowGraph._onChange()

Generates a unique symbol of the flow. Should be called whenever the flow changes.

Kind: instance method of FlowGraph

flowGraph._buildGraph()

Build a graph from the flow definition.

Kind: instance method of FlowGraph
Access: protected

flowGraph._buildVertex(nodeId)

Builds a vertex for a nodeId

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The nodeId from which to build a vertex. |

flowGraph.changeNodeName(nodeId, name)

Sets the name of a node

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | Node ID | | name | string | New node name |

flowGraph.changeMethod(nodeId, method, nodehandler)

Modifies the method of a node to match a new spec

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The id of the node to update. | | method | string | the method to use | | nodehandler | object | the node handler in use |

flowGraph.insertNode(node, nodeId) ⇒ string

Inserts a node into the flow graph.

Kind: instance method of FlowGraph
Returns: string - - the inserted nodeId

| Param | Type | Description | | --- | --- | --- | | node | object | The node to insert. | | nodeId | string | The id of the node to insert. If supplied, it must be unique. If not supplied, the node id will be generated. |

flowGraph.deleteNode(nodeId)

Delete a specific node from the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the id of the node to delete |

flowGraph.deleteRoute(output, fromId, toId)

Delete the output route from one node to another.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | output | string | the output to delete the route for. | | fromId | string | the node id the routes are being deleted from. | | toId | string | the node id being removed from the routes. |

flowGraph.deleteRoutes(fromId, toId)

Delete all the output routes from one node to another.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | fromId | string | the node id the routes are being deleted from. | | toId | string | the node id being removed from the routes. |

flowGraph.setStart(nodeId)

Sets a node as the start node for the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The start node for the flow. |

flowGraph.unsetStart()

Clears the start node for the flow. This action will make the flow invalid.

Kind: instance method of FlowGraph

flowGraph.addParameter(nodeId, name, value, [type])

Adds a parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph.updateParameter(nodeId, name, prop, newValue)

Updates a parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field to update (name|type|value) if string, or the new value of the parameter | | newValue | string | the new value of the prop specified if it is a string |

flowGraph.removeParameter(nodeId, name) ⇒ object

Removes a parameter by name from a node in the flow

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph.addAuthorization(nodeId, name, value, [type])

Adds a authorization parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph.updateAuthorization(nodeId, name, prop, newValue)

Updates a authorization parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field to update (name|type|value) if string, or the new value of the parameter | | newValue | string | the new value of the prop specified if it is a string |

flowGraph.removeAuthorization(nodeId, name) ⇒ object

Removes a authorization parameter by name from a node in the flow

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._addParameter(location, nodeId, name, value, [type])

Adds a parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | location | string | | the parameter location, one of: parameters|authorizations | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph._getParameter(location, nodeId, name) ⇒ object

Gets a parameter from the node by name

Kind: instance method of FlowGraph
Returns: object - the parameter

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._getParameterIndex(location, nodeId, name) ⇒ number

Gets a parameter index from the node by name

Kind: instance method of FlowGraph
Returns: number - the parameter index

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._updateParameter(location, nodeId, name, prop, newValue)

Updates a parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field to update (name|type|value) if string, or the new value of the parameter | | newValue | string | the new value of the prop specified if it is a string |

flowGraph._removeParameterByName(location, nodeId, name) ⇒ object

Removes a parameter by name from a node in the flow

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | number | the name of the parameter |

flowGraph._removeParameter(location, nodeId, index) ⇒ object

Removes a parameter by index from a node in the flow. Does not trigger change.

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | index | number | the index of the parameter |

flowGraph.updateOutputContext(nodeId, name, value)

Modifies the JSONPath context of an output

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the name of the output | | value | string | the new JSONPath context |

flowGraph.connectNode(sourceId, sourceOutput, targetId)

Connects a node output to the specified target.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | sourceId | string | The source node for the connection. | | sourceOutput | string | The output in the source node for the connection. | | targetId | string | The id of the target node to connect to. |

flowGraph.disconnectNode(sourceId, sourceOutput, targetId)

Disconnects a target node from a parent node's source and output.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | sourceId | string | The source node for the connection. | | sourceOutput | string | The output in the source node for the connection. | | targetId | string | The id of the target node to connect to. |

flowGraph.isEmpty() ⇒ boolean

Indicates if the flow is empty, with no nodes.

Kind: instance method of FlowGraph
Returns: boolean - true if the flow is empty.

flowGraph.getName() ⇒ string

Gets the name of the flow from flow info meta-data.

Kind: instance method of FlowGraph
Returns: string - The flow name.

flowGraph.setName(name)

Sets the name of the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | name | string | The flow name. |

flowGraph.getDescription() ⇒ string

Gets the description of the flow from flow info meta-data.

Kind: instance method of FlowGraph
Returns: string - The flow description.

flowGraph.setDescription(description)

Sets the description of the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | description | string | The flow description. |

flowGraph.getSymbol() ⇒ symbol

Get the unique symbol of the flow

Kind: instance method of FlowGraph
Returns: symbol - the flow symbol

flowGraph.getDefinition() ⇒ object

Gets the definition of the flow

Kind: instance method of FlowGraph
Returns: object - the flow definition

flowGraph.getGraph() ⇒ object

Gets the graph representation of the flow

Kind: instance method of FlowGraph
Returns: object - the flow graph representation

flowGraph.getId() ⇒ string

Gets the Id of the flow

Kind: instance method of FlowGraph
Returns: string - the flow id

flowGraph.getEdges() ⇒ Array.<object>

Gets the edges of the flow graph

Kind: instance method of FlowGraph
Returns: Array.<object> - the edges of the graph

flowGraph.getEdge(output, fromId, toId) ⇒ object | null

Get the edge between two nodes.

Kind: instance method of FlowGraph
Returns: object | null - the edge between two nodes. Null if no edge exists.

| Param | Type | Description | | --- | --- | --- | | output | string | the node output the edges belong to. | | fromId | string | the ID of the vertex where the edge starts | | toId | string | this ID of the vertex where the edge ends |

flowGraph.getVertices([idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the vertices of the graph

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the vertices of the graph

| Param | Type | Description | | --- | --- | --- | | [idsOnly] | bool | if the vertex ids should be returned rather than the vertices |

flowGraph.getNodes([idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the nodes of the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the nodes of the flow

| Param | Type | Description | | --- | --- | --- | | [idsOnly] | bool | if the node ids should be returned rather than the nodes |

flowGraph.getChildren(nodeId, output, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the children of a node in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the child nodes of a node in the flow

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the Id of the node to get children for. | | output | string | the node output to get the children for. If omitted then all children are returned. | | [idsOnly] | bool | if the node idsOnly should be returned rather than the nodes |

flowGraph.getParents(nodeId, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the parents of a node in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the parent nodes of a node in the flow

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the Id of the node to get parents for. | | [idsOnly] | bool | if the node ids should be returned rather than the nodes |

flowGraph.getTerminalNodes([idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the terminal nodes of the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the terminal nodes of the flow

| Param | Type | Description | | --- | --- | --- | | [idsOnly] | bool | if the node ids should be returned rather than the nodes |

flowGraph.getVertex(vertexId) ⇒ object

Get the vertex which matches the ID specified

Kind: instance method of FlowGraph
Returns: object - a vertex in the graph

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the ID of the vertex to return |

flowGraph.getNode(nodeId) ⇒ object | null

Get the node which matches the ID specified

Kind: instance method of FlowGraph
Returns: object | null - a node in the flow, or null

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the ID of the node to return |

flowGraph.getNodeUnsafe(nodeId) ⇒ object

Get the node which matches the ID specified and will throw an error if node was not found. Call this if you expect the node to exist

Kind: instance method of FlowGraph
Returns: object - a node in the flow

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the ID of the node to return |

flowGraph.getValidation() ⇒ object

Get the validation state of the flow

Kind: instance method of FlowGraph
Returns: object - the validation state of the flow

flowGraph.registerValidator(validator)

Registers a FlowValidator type class to the flow. When validation is run, this class will be used to validate the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | validator | FlowValidator | A class which is a FlowValidator |

flowGraph.validate() ⇒ object

Validate the flow - check all the nodes, no cycles, syntax, etc. Update the definition to make validation report available to clients

Kind: instance method of FlowGraph
Returns: object - the validation state

axway-flow-graph~FlowGraph

Kind: inner class of axway-flow-graph

new FlowGraph()

FlowGraph object

new FlowGraph(flowId, flowdef)

Creates an instance of FlowGraph.

| Param | Type | Description | | --- | --- | --- | | flowId | string | The id of this flow. | | flowdef | object | The flow definition. |

flowGraph._ensureVertex(vertexId, info) ⇒ object

Ensures that a vertex will exist

Kind: instance method of FlowGraph
Returns: object - the vertex which matched or was created.
Access: protected

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the ID of the vertex | | info | object | info to be set on the vertex. If vertex already exists, the info will be merged with the existing info. |

flowGraph._deleteVertex(vertexId)

Deletes a vertex from the graph

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the id of the vertex to delete |

flowGraph._getVertexChildren(vertexId, output, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the children of a vertex in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the child vertices of a vertex in the flow

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the Id of the vertex to get children for. | | output | string | the vetex output to get the children for. | | [idsOnly] | bool | if the vertex idsOnly should be returned rather than the vertices |

flowGraph._getVertexParents(vertexId, [idsOnly]) ⇒ Array.<string> | Array.<object>

Gets the parents of a vertex in the flow

Kind: instance method of FlowGraph
Returns: Array.<string> | Array.<object> - the parent nodes of a vertex in the flow

| Param | Type | Description | | --- | --- | --- | | vertexId | string | the Id of the vertex to get parents for. | | [idsOnly] | bool | if the vertex ids should be returned rather than the vertices |

flowGraph._ensureEdge(output, fromId, toId) ⇒ object

Ensures that an edge will exist between any two vertices. If any of the vertices do not exist, they will be created.

Kind: instance method of FlowGraph
Returns: object - the edge which matched or was created.
Access: protected

| Param | Type | Description | | --- | --- | --- | | output | string | the vertex output group the edge belongs to. | | fromId | string | the ID of the vertex where the edge starts | | toId | string | this ID of the vertex where the edge ends |

flowGraph._deleteEdge(fromId, output, toId)

Deletes an edge from one node to another. Removes the parent/child where necesarry from each vertex.

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | fromId | string | the vertex where the edge starts | | output | string | the vertex output group the edge belongs to. | | toId | string | the vertex where the edge ends |

flowGraph._deleteEdges(fromId, toId)

Deletes the edges from one node to another (across all outputs). Removes the parent/child where necesarry from each vertex.

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | fromId | string | the vertex where the edge starts | | toId | string | the vertex where the edge ends |

flowGraph._setValidation(validation)

Sets the validation state on the flow definition

Kind: instance method of FlowGraph
Access: protected

| Param | Type | Description | | --- | --- | --- | | validation | object | the validation state |

flowGraph._getOutputRoutes(nodeId) ⇒ object

Gets a list of all nodes which a node may route to grouped by output.

Kind: instance method of FlowGraph
Returns: object - A map of IDs for routes from the node specified grouped by output.
Access: protected

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the ID of a node to get routes for |

flowGraph._onChange()

Generates a unique symbol of the flow. Should be called whenever the flow changes.

Kind: instance method of FlowGraph

flowGraph._buildGraph()

Build a graph from the flow definition.

Kind: instance method of FlowGraph
Access: protected

flowGraph._buildVertex(nodeId)

Builds a vertex for a nodeId

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The nodeId from which to build a vertex. |

flowGraph.changeNodeName(nodeId, name)

Sets the name of a node

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | Node ID | | name | string | New node name |

flowGraph.changeMethod(nodeId, method, nodehandler)

Modifies the method of a node to match a new spec

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The id of the node to update. | | method | string | the method to use | | nodehandler | object | the node handler in use |

flowGraph.insertNode(node, nodeId) ⇒ string

Inserts a node into the flow graph.

Kind: instance method of FlowGraph
Returns: string - - the inserted nodeId

| Param | Type | Description | | --- | --- | --- | | node | object | The node to insert. | | nodeId | string | The id of the node to insert. If supplied, it must be unique. If not supplied, the node id will be generated. |

flowGraph.deleteNode(nodeId)

Delete a specific node from the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the id of the node to delete |

flowGraph.deleteRoute(output, fromId, toId)

Delete the output route from one node to another.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | output | string | the output to delete the route for. | | fromId | string | the node id the routes are being deleted from. | | toId | string | the node id being removed from the routes. |

flowGraph.deleteRoutes(fromId, toId)

Delete all the output routes from one node to another.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | fromId | string | the node id the routes are being deleted from. | | toId | string | the node id being removed from the routes. |

flowGraph.setStart(nodeId)

Sets a node as the start node for the flow.

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | The start node for the flow. |

flowGraph.unsetStart()

Clears the start node for the flow. This action will make the flow invalid.

Kind: instance method of FlowGraph

flowGraph.addParameter(nodeId, name, value, [type])

Adds a parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph.updateParameter(nodeId, name, prop, newValue)

Updates a parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field to update (name|type|value) if string, or the new value of the parameter | | newValue | string | the new value of the prop specified if it is a string |

flowGraph.removeParameter(nodeId, name) ⇒ object

Removes a parameter by name from a node in the flow

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph.addAuthorization(nodeId, name, value, [type])

Adds a authorization parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph.updateAuthorization(nodeId, name, prop, newValue)

Updates a authorization parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field to update (name|type|value) if string, or the new value of the parameter | | newValue | string | the new value of the prop specified if it is a string |

flowGraph.removeAuthorization(nodeId, name) ⇒ object

Removes a authorization parameter by name from a node in the flow

Kind: instance method of FlowGraph
Returns: object - the parameter that was removed

| Param | Type | Description | | --- | --- | --- | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._addParameter(location, nodeId, name, value, [type])

Adds a parameter to a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Default | Description | | --- | --- | --- | --- | | location | string | | the parameter location, one of: parameters|authorizations | | nodeId | string | | the node id | | name | string | | the name of the parameter | | value | string | | the value of the parameter | | [type] | string | "jsonpath" | the type of the parameter. |

flowGraph._getParameter(location, nodeId, name) ⇒ object

Gets a parameter from the node by name

Kind: instance method of FlowGraph
Returns: object - the parameter

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._getParameterIndex(location, nodeId, name) ⇒ number

Gets a parameter index from the node by name

Kind: instance method of FlowGraph
Returns: number - the parameter index

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the name of the parameter |

flowGraph._updateParameter(location, nodeId, name, prop, newValue)

Updates a parameter from a node in the flow

Kind: instance method of FlowGraph

| Param | Type | Description | | --- | --- | --- | | location | string | the parameter location, one of: parameters|authorizations | | nodeId | string | the node id | | name | string | the current name of the parameter | | prop | string | object | the field t