neo4j-query-object v2.0.6
╔╗╔┌─┐┌─┐ ╦ ╦ ╦ ╔═╗ ┬ ┬┌─┐┬─┐┬ ┬ ╔═╗┌┐ ┬┌─┐┌─┐┌┬┐
║║║├┤ │ │ ╚═║ ║ ║═╬╗│ │├┤ ├┬┘└┬┘ ║ ║├┴┐ │├┤ │ │
╝╚╝└─┘└─┘ ╩ ╚╝ ╚═╝╚└─┘└─┘┴└─ ┴ ╚═╝└─┘└┘└─┘└─┘ ┴
(Ascii-art generated by patorjk.com)
Part of the Neo4J Line of Packages
isomorphic-node
^
|
+
isomorphic-cypher <--+ template-query-object
^ ^
| |
| +
| + neo4j-query-object
+ |
simple-neo4j <------+ neo4j-parser
|
+ cypher-tools
ascii-chart generated by asciiflow.com
Upgrade to 2.0
2.0 brings in a lot of big changes and consequently breaks support with pre 2.0 versions. If you have version 1.x or before make sure to read UPGRADE-2.0.md. Essentially callbacks were removed in favor of promises which required many alterations to the existing class.
About
This is a class who is designed to hold one instance per query. It self manages
a promise along with the query itself and various other data. Its designed to
store this query and other data until the query is processed and result received
in which case you simply issue the promise via issuePromise
providing any
errors and results whereby the class will properly resolve or reject the
promise with the result obj.
Only a means for storage
This class does not contain any code for calling any database nor does it contain any code for parsing any result from the database. It's merely a storage object for code that does do those tasks to use making things much easier.
Generic but Neo4J-Feel
Technically this class can be used for anything, not just Neo4J. In fact it doesn't even have to be used for a query. But, despite this, it has the look and feel of the Neo4J-Line - A line of packages that are separate but work together to form the Neo4J system of packages.
For example in this class you'll see properties like raw
, parameters
,
first-value
, etc... These are generic to any kind of implementation and
don't have to be used but they're inspired from the needs of the other packages
in the Nei4J line so they're going to have that feel to them.
This package is solid
This package is actively tested with Jasmine and thoroughly documented throughout. It also contains complete JSDoc comments and full online JSDoc generated documentation.
Do you like this package or have an issue?
If this package has helped you I encourage you to follow it, give it a star, or fork it on github. If you have any ideas, suggestions, issues, or ways to improve upon it then let us know over at github by filing an issue.
Contributions are also encouraged and the CONTRIBUTING.md file shows all the details on development and how to contribute back but its mostly just commit changes and send a pull request.
This project is licensed Apache 2.0
http://www.apache.org/licenses/LICENSE-2.0.txt
Run it in your browser
Thanks to TonicDev, you now have a way to run this package right in your browser to test it out. If your on the NPM site you can see the TonicDev link on the right-hand side, otherwise you can always go to the link below.
TonicDev will load up a preset example we provide that you can play around with to get a feel for this package.
https://tonicdev.com/npm/neo4j-query-object
How to develop
To develop, git clone
this repository and npm install
to install the
development dependencies. Make sure to run npm run build
when
needed which will test & compile ES6/7 to ES5 and re-generate the docs.
You can run those individually if you want with npm run docs
and
npm run compile
. To auto-copy over docs from master to gh-pages run
npm run pages
before committing and pushing.
For testing, just run npm run test
If you want to contribute back read the CONTRIBUTING.md
file.
Documentation
Detailed documentation exists for this package, it should already by viewable on clone. Feel free to look through it for any questions you may have. The source code is also heavily documented if you want to look through it as well for answers.
Online docs exist here http://junestoolbox.github.io/neo4j-query-object/docs
Whats New
Check out the CHANGELOG.md file for latest changes and updates