[x] Automated tests have been included in this pull request, if possible, for the new feature(s) or bug fix.
[x] The associated GitHub issues are included (above).
[x] Notes have been included (below).
Reviewers:
[x] All automated checks are passing (green check next to latest commit).
[x] At least one reviewer has signed off on the pull request. Reviewers have two business days to review the pull request, after which the author may merge in the pull request unilaterally.
Notes
This PR adds support for node label position properties when exporting networks to CX. The previous approach was not designed for nested CX properties so I had to redesign the exporter taking into account that a property could be nested.
I use a lookup table for all the CX properties we want to support. Most CX properties use the same conversion function but the table optionally contains an override conversion function for nested properties.
This approach iterates over a hardcoded table of supported CX properties instead of iterating through cytoscape.js style snapshots. This should prevent things from breaking less often when new changes are made to the style model.
General information
Associated issues: #57, #59
Checklist
Author:
Reviewers:
Notes This PR adds support for node label position properties when exporting networks to CX. The previous approach was not designed for nested CX properties so I had to redesign the exporter taking into account that a property could be nested.
I use a lookup table for all the CX properties we want to support. Most CX properties use the same conversion function but the table optionally contains an override conversion function for nested properties.
This approach iterates over a hardcoded table of supported CX properties instead of iterating through cytoscape.js style snapshots. This should prevent things from breaking less often when new changes are made to the style model.