refactor(classifier): model survey task questions as a Map #6088
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add a
Question
model to the survey task. Removetypes.frozen({})
. Model questions astypes.map(Question)
, mapped by the question ID.Update tests to test a task model, where previously they were testing a task snapshot.
I've also replaced
types.frozen({})
withtypes.map
fortask.images
andtask.questionsMap
.Please request review from
@zooniverse/frontend
team or an individual member of that team.Package
Linked Issue and/or Talk Post
Part of a group of PRs that remove
types.frozen({})
from the survey task, where maps could be used instead.How to Review
I've used the storybook to test these PRs. Snapshot Wisconsin is also useful as an example of a survey workflow.
https://localhost:8080/?project=zooniverse/snapshot-wisconsin&env=production
Since these PRs are pure refactors, none of the survey task's behaviours should have changed.
Checklist
PR Creator - Please cater the checklist to fit the review needed for your code changes.
PR Reviewer - Use the checklist during your review. Each point should be checkmarked or discussed before PR approval.
General
yarn panic && yarn bootstrap
ordocker-compose up --build
and FEM works as expectedGeneral UX
Example Staging Project: i-fancy-cats
Refactoring