Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(routing): support parsing URLs with up to 100 refinements #3671

Merged
merged 4 commits into from
Apr 10, 2019

Conversation

francoischalifour
Copy link
Member

Description

An issue raised by a customer is that when selecting more than 20 values with the routing option activated, the data structure returned by the parseURL function changes.

qs by default converts arrays with more than 20 items to an object. We want to avoid this because the data structure manipulated can therefore vary.

Setting the limit to 100 seems a good number because the engine's default is 100. It can go up to 1000 but it is very unlikely to select more than 100 items in the UI.

Reference

@francoischalifour francoischalifour requested a review from a team April 9, 2019 13:39
@algobot
Copy link
Contributor

algobot commented Apr 9, 2019

Deploy preview for instantsearchjs ready!

Built with commit b809889

https://deploy-preview-3671--instantsearchjs.netlify.com

Copy link
Contributor

@Haroenv Haroenv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me! But because of the unconventional number, I'd expect that to be explained in the comment too

src/lib/routers/history.js Show resolved Hide resolved
@francoischalifour francoischalifour requested a review from a team April 9, 2019 15:01
@francoischalifour francoischalifour merged commit 6ddcfb6 into develop Apr 10, 2019
@francoischalifour francoischalifour deleted the fix/routing-parsing-urls-100 branch April 10, 2019 11:37
francoischalifour added a commit that referenced this pull request Apr 11, 2019
# [3.3.0](v3.2.1...v3.3.0) (2019-04-11)

### Bug Fixes

* **connectQueryRules:** improve tracked refinement type ([#3648](#3648)) ([e16ad57](e16ad57))
* **currentRefinements:** don't rely on  ([#3672](#3672)) ([cd64bcf](cd64bcf))
* **queryRuleCustomData:** add default template ([#3650](#3650)) ([83e9eaa](83e9eaa))
* **QueryRuleCustomData:** pass data as object to templates ([#3647](#3647)) ([b8f8b4e](b8f8b4e))
* **queryRules:** fix types and stories ([#3670](#3670)) ([ba6e2e6](ba6e2e6))
* **routing:** apply windowTitle on first load ([#3669](#3669)) ([d553502](d553502)), closes [#3667](#3667)
* **routing:** support parsing URLs with up to 100 refinements ([#3671](#3671)) ([6ddcfb6](6ddcfb6))
* **RoutingManager:** avoid stale uiState ([#3630](#3630)) ([e1588aa](e1588aa))
* **types:** improve InstantSearch types ([#3651](#3651)) ([db9b91e](db9b91e))
* **ua:** Update the User-Agent to use the new format ([#3616](#3616)) ([ab84c57](ab84c57))

### Features

* **infiniteHits:** add previous button ([#3645](#3645)) ([2c9e38d](2c9e38d))
* **queryRules:** add connectQueryRules connector ([#3597](#3597)) ([924cd99](924cd99)), closes [#3599](#3599) [#3600](#3600)
* **queryRules:** add context features to Query Rules ([#3617](#3617)) ([922879e](922879e)), closes [#3602](#3602)

### Reverts

* feat(infiniteHits): add previous button ([214c0fc](214c0fc))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants