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

@concepto/dsl_parser

v1.5.64

Published

Concepto DSL - visually create and maintain modern node.js based apps (@dsl_parser)

Downloads

16

Readme

Description

ES6 Class for creating and parsing Concepto DSL files. Note you need to pass all arguments as an object with keys.

API Reference

dsl_parser: A class for parsing Concepto DSL files, and compile them with the OPEN Framework.

dsl_parser.process()

Executes initial processing for parser

Kind: instance method of dsl_parser

dsl_parser.getParser() ⇒ Object

Gets a reference to the internal parser

Kind: instance method of dsl_parser

dsl_parser.getNodes([text], [attribute], [attribute_value], [icon], [level], [link], [recurse], [nodes_raw]) ⇒ Array.<NodeDSL>

Get all nodes that contain the given arguments (all optional)

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | [text] | String | | Finds all nodes that contain its text with this value | | [attribute] | String | | Finds all nodes that contain an attribute with this name | | [attribute_value] | String | | Finds all nodes that contain an attribute with this value | | [icon] | String | | Finds all nodes that contain these icons | | [level] | Int | | Finds all nodes that are on this level | | [link] | String | | Finds all nodes that contains this link | | [recurse] | Boolean | true | include its children | | [nodes_raw] | Boolean | false | if this is true, includes key nodes_raw (children nodes) in result with a cheerio reference instead of processing them. |

dsl_parser.addNode(parent_id, node)

Adds a node as an xml child of the given parent node ID

Kind: instance method of dsl_parser

| Param | Type | Description | | --- | --- | --- | | parent_id | String | ID of parent node | | node | NodeDSL | NodeDSL object to add |

dsl_parser.editNode(node_id, data)

Edits the given node ID data keys

Kind: instance method of dsl_parser

| Param | Type | Description | | --- | --- | --- | | node_id | String | ID of node to edit | | data | NodeDSL | NodeDSL object properties to modify or method(existing_properties_of_node) that returns object data to modify |

dsl_parser.nodeToXML(node)

Converts a NodeDSL into an XML of ConceptoDSL node child

Kind: instance method of dsl_parser

| Param | Type | Description | | --- | --- | --- | | node | NodeDSL | NodeDSL origin object |

dsl_parser.getNode(id, [recurse], [dates], [$], [nodes_raw]) ⇒ Array.<NodeDSL>

Get node data for the given id

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | id | String | | ID of node to request | | [recurse] | Boolean | true | include its children | | [dates] | Boolean | true | include parsing creation/modification dates | | [$] | Boolean | false | include cheerio reference | | [nodes_raw] | Boolean | false | if recurse is false and this is true, includes key nodes_raw (children nodes) in result with a cheerio reference instead of processing them. |

dsl_parser.getParentNode(id, [recurse]) ⇒ NodeDSL

Returns the parent node of the given node id

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | id | String | | ID of node to request | | [recurse] | Boolean | false | include its children |

dsl_parser.getParentNodesIDs(id, [array]) ⇒ String | Array

Returns the parent nodes ids of the given node id

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | id | String | | node id to query | | [array] | Boolean | false | get results as array, or as a string |

dsl_parser.getChildrenNodesIDs(id, [array]) ⇒ String | Array

Returns the children nodes ids of the given node id

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | id | String | | node id to query | | [array] | Boolean | false | get results as array, or as a string |

dsl_parser.getBrotherNodesIDs(id, [before], [after], [array]) ⇒ String

Returns the brother nodes ids of the given node id

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | id | String | | node id to query | | [before] | Boolean | true | consider brothers before the queried node | | [after] | Boolean | true | consider brothers after the queried node | | [array] | Boolean | false | get results as array of objects, or as a string |

dsl_parser.createGitVersion([remove], [extrastep]) ⇒ String

Returns a modified version of the current loaded DSL, ready to be push to a version control (like github)

Kind: instance method of dsl_parser
Returns: String - Modified DSL source ready to be saved and pushed to a version control

| Param | Type | Default | Description | | --- | --- | --- | --- | | [remove] | Boolean | true | Remove modified dates? (default:true) | | [extrastep] | function | | Optional method to return make additional cleansing and return the xml |

dsl_parser.findVariables(text, [symbol], [symbol_closing], [array]) ⇒ String

Finds variables within given text

Kind: instance method of dsl_parser

| Param | Type | Default | Description | | --- | --- | --- | --- | | text | String | | String from where to parse variables | | [symbol] | String | | Wrapper symbol used as variable openning definition. | | [symbol_closing] | String | | Wrapper symbol used as variable closing definition. | | [array] | Boolean | false | get results as array, or as a string |

dsl_parser.replaceVarsSymbol(text, from, to) ⇒ String

Finds and transform variables wrapping/handlebars symbols given a 'from' symbol object and a 'to' symbol object within the given text

Kind: instance method of dsl_parser

| Param | Type | Description | | --- | --- | --- | | text | String | String from where to parse variables | | from | Object | Object to identify source variables symbols (keys: open and close) | | to | Object | Object to identify target variables symbols (keys: open and close) |

dsl_parser.getDifferences(from, to)

Finds all differences 'from' given dsl 'to' given dsl (for CLI arg --diff-from file.dsl) and returns an object with 'deleted', 'added', and 'modified' IDs keys

Kind: instance method of dsl_parser

| Param | Type | Description | | --- | --- | --- | | from | String | From source DSL content (before code) | | to | String | To source DSL content (after code, to compare) |

dsl_parser~NodeDSL : Object

A node object representation of a DSL node.

Kind: inner typedef of dsl_parser
Properties

| Name | Type | Description | | --- | --- | --- | | id | string | Node unique ID. | | level | number | Indicates the depth level from the center of the dsl map. | | text | string | Indicates the text defined in the node itself. | | text_rich | string | Indicates the html defined in the node itself. | | text_note | string | Indicates the text/html defined in the notes view of the node (if any). | | image | string | Image link defined as an image within the node. | | cloud | Object | Cloud information of the node. | | cloud.bgcolor | string | Background color of cloud. | | cloud.used | boolean | True if cloud is used, false otherwise. | | arrows | Array.<Arrow> | Visual connections of this node with other nodes #module_dsl_parser..Arrow. | | nodes | Array.<NodeDSL> | Children nodes of current node. | | font | Object | Define font, size and styles of node texts. | | font.face | Object | Font face type used on node. | | font.size | Object | Font size used on node. | | font.bold | Object | True if node text is in bold. | | font.italic | Object | True if node text is in italics. | | style | string | Style applied to the node. | | color | string | Text color of node. | | bgcolor | string | Background color of node. | | link | string | Link defined on node. | | position | string | Position in relation of central node (left,right). | | attributes | Object | Object with each attribute (key is attribute name, value is attribute value). | | icons | Array.<string> | Array with icon names used in the node. | | date_modified | date | Date of node when it was last modified. | | date_created | date | Date of node when it was created. |

dsl_parser~Arrow : Object

Arrow object definition, for connections to other nodes within a DSL.

Kind: inner typedef of dsl_parser
Properties

| Name | Type | Description | | --- | --- | --- | | target | string | Target node ID of connection. | | color | string | Color of visual connection. | | style | string | Graphical representation type of link (source-to-target, target-to-source, both-ways). |


© 2020-2022 Pablo Schaffner <[email protected]>.