Skip to content

VisualizationState refactoring #57

@jhellerstein

Description

@jhellerstein

The VisualizationState is the Single Source of Truth for all Hydroscope state. Unfortunately this has resulted in a very large file. It would be good to refactor this into semantically differentiated sub files, so it's more readable and maintainable.

Any new files should be in a distinct subdirectory underneath ./src/core. The resulting set of files should still offer a clean encapsulated API. Ideally this refactoring should not require changes at the callsites. Along the way, dead code should be pruned and redundant code consolidated. If legacy APIs are required after the refactoring to maintain callsite compatibility, the legacy APIs functions should be in their own file.

One reasonable approach is to keep the existing external API in ./src/core/VisualizationState.tsx, but move some of the complex functionality into separate subfiles underneath.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions