This PR includes the changes required for this PR in chaise. Summary of changes:
Added support for the new max_facet_depth display annotation property, and maxFaceDepth property added to facetPanelDisplay of chaise-config.
We designed and implemented our parse to handle having multiple layers of facets. So in this PR I just fixed the bugs/issues that I found to make sure everything works properly (we didn't have extensive tests or usecase for this feature so we never found these):
Ensure FacetColumn.hideNullChoice can properly find null filters in multi-layer facet (it was just looking at the facets of the current level. But if there's a null facet anywhere on the URL we cannot allow users to filter by null again).
Make sure Location constructor uses the correct join. The constructor was assuming that the first portion of the url always has a facet but that might not be true.
Change Location.addJoin to use the proper alias name. It was due to the same wrong assumption as the previous bullet.
Fix typos in Location.ermrestCompactPath and _createParsedJoinFromStr.
This PR includes the changes required for this PR in chaise. Summary of changes:
max_facet_depth
display annotation property, andmaxFaceDepth
property added tofacetPanelDisplay
of chaise-config.FacetColumn.hideNullChoice
can properly find null filters in multi-layer facet (it was just looking at the facets of the current level. But if there's anull
facet anywhere on the URL we cannot allow users to filter by null again).Location.addJoin
to use the proper alias name. It was due to the same wrong assumption as the previous bullet.Location.ermrestCompactPath
and_createParsedJoinFromStr
.