React-based web application that enables users to visualize both property graph and RDF data and explore connections between data without having to write graph queries.
Updates node counts when new nodes are added to the graph
Adds caching and retries to node expansion and neighbor counts
Use React Query for node expansion and neighbor counts
Add notifications for progress of node expansion and neighbor counts
Add notifications for errors during node expansion and neighbor counts
Remove "limit neighbors" option
Adds connection details to Explorer instance so the explorers will be not equal by value
This change pulls all queries related to getting the neighbor counts to a single place. It watches for changes to the list of nodes in the graph. When a node is added we execute a query for that nodeId.
Neighbor expansion is also a React Query now. It is hosted in a React context to share the expand request state. This ensures a single expand is allowed to execute at any one time. And it also allows better control over notifications to the user so there is only one error notification and one progress notification. I would've used Recoil state instead, but I ran in to problems with that approach.
I also removed the limit parameter when executing the callback from useFetchNode(). This limit was fairly pointless since it only affected that one node, not any future nodes. And the behavior was strange. In search it would limit to 500 when the check box is checked. In the DataExplorer it will limit the added node to the page size.
Validation
Tested in all query languages
Manually threw error in explorer to simulate error responses from the server
Checked caching across connections and reset logic by:
Add node to graph
Expand node
Change query engine for same database
Add same node and expand
Observe network requests
Related Issues
Resolves #338
Resolves #339
Check List
[x] I confirm that my contribution is made under the terms of the Apache 2.0
license.
[x] I have run pnpm checks to ensure code compiles and meets standards.
[x] I have run pnpm test to check if all tests are passing.
[ ] I have covered new added functionality with unit tests if necessary.
Description
Explorer
instance so the explorers will be not equal by valueThis change pulls all queries related to getting the neighbor counts to a single place. It watches for changes to the list of nodes in the graph. When a node is added we execute a query for that nodeId.
Neighbor expansion is also a React Query now. It is hosted in a React context to share the expand request state. This ensures a single expand is allowed to execute at any one time. And it also allows better control over notifications to the user so there is only one error notification and one progress notification. I would've used Recoil state instead, but I ran in to problems with that approach.
I also removed the limit parameter when executing the callback from
useFetchNode()
. This limit was fairly pointless since it only affected that one node, not any future nodes. And the behavior was strange. In search it would limit to 500 when the check box is checked. In the DataExplorer it will limit the added node to the page size.Validation
Related Issues
Check List
pnpm checks
to ensure code compiles and meets standards.pnpm test
to check if all tests are passing.Changelog.md
.