Allow hasDocs when mode = "off" and mobx computedRequiresReaction #81
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.
As the
hasDocs
getter was computed it would cause a mobx error when called outside of a reaction (whencollection.mode === Mode.Off
) and mobx was configured ascomputedRequiresReaction
. So this now makes a separate internal computed property_hasDocsComputed
which is called in reactive modes, otherwise it calculates it directly.I'd prefer
_hasDocsComputed
was declared private in TS but that doesn't work in thedecorate
call :(There is some other reformatting committed thanks to Prettier.
I've also committed
wallaby.js
for running these tests with Wallaby (which I'd highly recommend for anyone doing unit testing in JS). Normally Wallaby does not need a config file but since the tests all share a single DB they can't be run in parallel so I have to disable that. Have you considered switching to the Firestore emulator? It's quite easy with that to create a separate DB for each parallel test run. Testing would be much faster.