Skip to content

Commit

Permalink
v1.3.0
Browse files Browse the repository at this point in the history
<a name="1.3.0"></a>
# [1.3.0](v1.2.5...v1.3.0) (2016-03-04)

### Bug Fixes

* **browser support:** make IE lte 10 work by fixing Object.getPrototypeOf ([bbb264b](bbb264b))
* **menu,refinementList:** sort by count AND name to avoid reorders on refine ([02fe7bf](02fe7bf)), closes [#65](#65)
* **priceRanges:** pass the bound refine to the form ([ce2b956](ce2b956))
* **searchBox:** handle external updates of the query ([6a0af14](6a0af14)), closes [#803](#803)
* **searchBox:** stop setting the query twice ([91270b2](91270b2))
* **searchBox:** stop updating query at eachkeystroke with searchOnEnterKeyPressOnly ([28dc4d2](28dc4d2)), closes [#875](#875)
* **Slider:** do not render Slider when range.min === range.max ([f20274e](f20274e))
* **Template:** now render() when templateKey changes ([8906224](8906224))
* **toggle:** pass isRefined to toggleRefinement ([8ac494e](8ac494e))
* **url-sync:** always decode incoming query string ([bea38e3](bea38e3)), closes [#848](#848)
* **url-sync:** handle <base> href pages ([e58aadc](e58aadc)), closes [#790](#790)

### Features

* **collapsable widgets:** add collapsable and collapsed option ([c4df7c5](c4df7c5))
* **instantsearch:** allow overriding the helper.search function ([9a930e7](9a930e7))
* **rangeSlider:** allow passing min and max values ([409295c](409295c)), closes [#858](#858)
* **searchBox:** allow to pass a queryHook ([5786a64](5786a64))
* **Template:** allow template functions to return a React element ([748077d](748077d))
* **Template:** allow template functions to return a React element ([0f9296d](0f9296d))

### Performance Improvements

* **autoHideContainer:** stop re-creating React components ([8c89862](8c89862))
* **formatting numbers:** stop using a default locale, use the system one ([b056554](b056554))
* **nouislider:** upgrade nouislider, shaves some more ms ([fefbe65](fefbe65))
* **React:** use babel `optimisation` option for React ([95f940c](95f940c))
* **React, widgets:** implement shouldComponentUpdate, reduce bind ([5efaac1](5efaac1))
  • Loading branch information
vvo committed Mar 4, 2016
1 parent e1763d8 commit 5777d6a
Show file tree
Hide file tree
Showing 17 changed files with 70 additions and 9 deletions.
37 changes: 37 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,40 @@
<a name="1.3.0"></a>
# [1.3.0](https://github.com/algolia/instantsearch.js/compare/v1.2.5...v1.3.0) (2016-03-04)


### Bug Fixes

* **browser support:** make IE lte 10 work by fixing Object.getPrototypeOf ([bbb264b](https://github.com/algolia/instantsearch.js/commit/bbb264b))
* **menu,refinementList:** sort by count AND name to avoid reorders on refine ([02fe7bf](https://github.com/algolia/instantsearch.js/commit/02fe7bf)), closes [#65](https://github.com/algolia/instantsearch.js/issues/65)
* **priceRanges:** pass the bound refine to the form ([ce2b956](https://github.com/algolia/instantsearch.js/commit/ce2b956))
* **searchBox:** handle external updates of the query ([6a0af14](https://github.com/algolia/instantsearch.js/commit/6a0af14)), closes [#803](https://github.com/algolia/instantsearch.js/issues/803)
* **searchBox:** stop setting the query twice ([91270b2](https://github.com/algolia/instantsearch.js/commit/91270b2))
* **searchBox:** stop updating query at eachkeystroke with searchOnEnterKeyPressOnly ([28dc4d2](https://github.com/algolia/instantsearch.js/commit/28dc4d2)), closes [#875](https://github.com/algolia/instantsearch.js/issues/875)
* **Slider:** do not render Slider when range.min === range.max ([f20274e](https://github.com/algolia/instantsearch.js/commit/f20274e))
* **Template:** now render() when templateKey changes ([8906224](https://github.com/algolia/instantsearch.js/commit/8906224))
* **toggle:** pass isRefined to toggleRefinement ([8ac494e](https://github.com/algolia/instantsearch.js/commit/8ac494e))
* **url-sync:** always decode incoming query string ([bea38e3](https://github.com/algolia/instantsearch.js/commit/bea38e3)), closes [#848](https://github.com/algolia/instantsearch.js/issues/848)
* **url-sync:** handle <base> href pages ([e58aadc](https://github.com/algolia/instantsearch.js/commit/e58aadc)), closes [#790](https://github.com/algolia/instantsearch.js/issues/790)

### Features

* **collapsable widgets:** add collapsable and collapsed option ([c4df7c5](https://github.com/algolia/instantsearch.js/commit/c4df7c5))
* **instantsearch:** allow overriding the helper.search function ([9a930e7](https://github.com/algolia/instantsearch.js/commit/9a930e7))
* **rangeSlider:** allow passing min and max values ([409295c](https://github.com/algolia/instantsearch.js/commit/409295c)), closes [#858](https://github.com/algolia/instantsearch.js/issues/858)
* **searchBox:** allow to pass a queryHook ([5786a64](https://github.com/algolia/instantsearch.js/commit/5786a64))
* **Template:** allow template functions to return a React element ([748077d](https://github.com/algolia/instantsearch.js/commit/748077d))
* **Template:** allow template functions to return a React element ([0f9296d](https://github.com/algolia/instantsearch.js/commit/0f9296d))

### Performance Improvements

* **autoHideContainer:** stop re-creating React components ([8c89862](https://github.com/algolia/instantsearch.js/commit/8c89862))
* **formatting numbers:** stop using a default locale, use the system one ([b056554](https://github.com/algolia/instantsearch.js/commit/b056554))
* **nouislider:** upgrade nouislider, shaves some more ms ([fefbe65](https://github.com/algolia/instantsearch.js/commit/fefbe65))
* **React:** use babel `optimisation` option for React ([95f940c](https://github.com/algolia/instantsearch.js/commit/95f940c))
* **React, widgets:** implement shouldComponentUpdate, reduce bind ([5efaac1](https://github.com/algolia/instantsearch.js/commit/5efaac1))



<a name="1.2.5"></a>
## [1.2.5](https://github.com/algolia/instantsearch.js/compare/v1.2.4...v1.2.5) (2016-03-02)

Expand Down
2 changes: 2 additions & 0 deletions docs/_includes/widget-jsdoc/clearAll.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,7 @@
| <span class='attr-optional'>`options.cssClasses.body`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the body element |
| <span class='attr-optional'>`options.cssClasses.footer`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the footer element |
| <span class='attr-optional'>`options.cssClasses.link`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the link element |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
2 changes: 2 additions & 0 deletions docs/_includes/widget-jsdoc/currentRefinedValues.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,7 @@
| <span class='attr-optional'>`options.cssClasses.link`</span><span class="attr-infos">Type: <code>string</code></span> | CSS classes added to the link element |
| <span class='attr-optional'>`options.cssClasses.count`</span><span class="attr-infos">Type: <code>string</code></span> | CSS classes added to the count element |
| <span class='attr-optional'>`options.cssClasses.footer`</span><span class="attr-infos">Type: <code>string</code></span> | CSS classes added to the footer element |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
2 changes: 2 additions & 0 deletions docs/_includes/widget-jsdoc/hierarchicalMenu.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,7 @@
| <span class='attr-optional'>`options.cssClasses.active`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each active element |
| <span class='attr-optional'>`options.cssClasses.link`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each link (when using the default template) |
| <span class='attr-optional'>`options.cssClasses.count`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each count element (when using the default template) |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
8 changes: 4 additions & 4 deletions docs/_includes/widget-jsdoc/hits.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
| <span class='attr-optional'>`options.templates`</span><span class="attr-infos">Type: <code>Object</code></span> | Templates to use for the widget |
| <span class='attr-optional'>`options.templates.empty`</span><span class="attr-infos">Default:<code class="attr-default">&#x27;&#x27;</code><br />Type: <code>string</code> &#124; <code>function</code></span> | Template to use when there are no results. |
| <span class='attr-optional'>`options.templates.item`</span><span class="attr-infos">Default:<code class="attr-default">&#x27;&#x27;</code><br />Type: <code>string</code> &#124; <code>function</code></span> | Template to use for each result. This template will receive an object containing a single record. |
| <span class='attr-optional'>`options.templates.allItems`</span><span class="attr-infos">Default:<code class="attr-default">&#x27;&#x27;</code><br />Type: <code>string</code> &#124; <code>function</code></span> | Template to use for each result. (can't be used with item template). This template will receive a complete SearchResults result object, this object contains the key hits that contains all the records retrieved. |
| <span class='attr-optional'>`options.templates.allItems`</span><span class="attr-infos">Default:<code class="attr-default">&#x27;&#x27;</code><br />Type: <code>string</code> &#124; <code>function</code></span> | Template to use for the list of all results. (Can't be used with `item` template). This template will receive a complete SearchResults result object, this object contains the key hits that contains all the records retrieved. |
| <span class='attr-optional'>`options.transformData`</span><span class="attr-infos">Type: <code>Object</code></span> | Method to change the object passed to the templates |
| <span class='attr-optional'>`options.transformData.empty`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the empty template |
| <span class='attr-optional'>`options.transformData.item`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the item template |
| <span class='attr-optional'>`options.transformData.allItems`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the item template |
| <span class='attr-optional'>`options.transformData.empty`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the `empty` template |
| <span class='attr-optional'>`options.transformData.item`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the `item` template |
| <span class='attr-optional'>`options.transformData.allItems`</span><span class="attr-infos">Default:<code class="attr-default">identity</code><br />Type: <code>function</code></span> | Method used to change the object passed to the `allItems` template |
| <span class='attr-optional'>`hitsPerPage`</span><span class="attr-infos">Default:<code class="attr-default">20</code><br />Type: <code>number</code></span> | The number of hits to display per page |
| <span class='attr-optional'>`options.cssClasses`</span><span class="attr-infos">Type: <code>Object</code></span> | CSS classes to add |
| <span class='attr-optional'>`options.cssClasses.root`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the wrapping element |
Expand Down
1 change: 1 addition & 0 deletions docs/_includes/widget-jsdoc/instantsearch.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,6 @@
| <span class='attr-optional'>`options.urlSync.trackedParameters`</span><span class="attr-infos">Type: <code>Array.&lt;string&gt;</code></span> | Parameters that will be synchronized in the URL. By default, it will track the query, all the refinable attribute (facets and numeric filters), the index and the page. [Full documentation](https://community.algolia.com/algoliasearch-helper-js/docs/SearchParameters.html) |
| <span class='attr-optional'>`options.urlSync.useHash`</span><span class="attr-infos">Type: <code>boolean</code></span> | If set to true, the url will be hash based. Otherwise, it'll use the query parameters using the modern history API. |
| <span class='attr-optional'>`options.urlSync.threshold`</span><span class="attr-infos">Type: <code>number</code></span> | Time in ms after which a new state is created in the browser history. The default value is 700. |
| <span class='attr-optional'>`options.searchFunction`</span><span class="attr-infos">Type: <code>function</code></span> | A hook that will be called each time a search needs to be done, with the helper as a parameter. It's your responsibility to call helper.search(). This option allows you to avoid doing searches at page load for example. |

<p class="attr-legend">* <span>Required</span></p>
4 changes: 3 additions & 1 deletion docs/_includes/widget-jsdoc/menu.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
| --- | --- |
| <span class='attr-required'>`options.container`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>DOMElement</code></span> | CSS Selector or DOMElement to insert the widget |
| <span class='attr-required'>`options.attributeName`</span><span class="attr-infos">Type: <code>string</code></span> | Name of the attribute for faceting |
| <span class='attr-optional'>`options.sortBy`</span><span class="attr-infos">Default:<code class="attr-default">[&#x27;count:desc&#x27;]</code><br />Type: <code>Array.&lt;string&gt;</code> &#124; <code>function</code></span> | How to sort refinements. Possible values: `count|isRefined|name:asc|desc` |
| <span class='attr-optional'>`options.sortBy`</span><span class="attr-infos">Default:<code class="attr-default">[&#x27;count:desc&#x27;, &#x27;name:asc&#x27;]</code><br />Type: <code>Array.&lt;string&gt;</code> &#124; <code>function</code></span> | How to sort refinements. Possible values: `count|isRefined|name:asc|desc` |
| <span class='attr-optional'>`options.limit`</span><span class="attr-infos">Default:<code class="attr-default">10</code><br />Type: <code>string</code></span> | How many facets values to retrieve |
| <span class='attr-optional'>`options.showMore`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Limit the number of results and display a showMore button |
| <span class='attr-optional'>`options.showMore.templates`</span><span class="attr-infos">Type: <code>object</code></span> | Templates to use for showMore |
Expand All @@ -25,5 +25,7 @@
| <span class='attr-optional'>`options.cssClasses.active`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each active element |
| <span class='attr-optional'>`options.cssClasses.link`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each link (when using the default template) |
| <span class='attr-optional'>`options.cssClasses.count`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each count element (when using the default template) |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
2 changes: 2 additions & 0 deletions docs/_includes/widget-jsdoc/numericRefinementList.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,5 +19,7 @@
| <span class='attr-optional'>`options.cssClasses.item`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each item element |
| <span class='attr-optional'>`options.cssClasses.radio`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each radio element (when using the default template) |
| <span class='attr-optional'>`options.cssClasses.active`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to each active element |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
2 changes: 2 additions & 0 deletions docs/_includes/widget-jsdoc/priceRanges.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,7 @@
| <span class='attr-optional'>`options.cssClasses.separator`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the separator of the form |
| <span class='attr-optional'>`options.cssClasses.button`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the submit button of the form |
| <span class='attr-optional'>`options.cssClasses.footer`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the footer element |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |

<p class="attr-legend">* <span>Required</span></p>
4 changes: 4 additions & 0 deletions docs/_includes/widget-jsdoc/rangeSlider.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,9 @@
| <span class='attr-optional'>`options.cssClasses.header`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the header element |
| <span class='attr-optional'>`options.cssClasses.body`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the body element |
| <span class='attr-optional'>`options.cssClasses.footer`</span><span class="attr-infos">Type: <code>string</code> &#124; <code>Array.&lt;string&gt;</code></span> | CSS class to add to the footer element |
| <span class='attr-optional'>`options.collapsible`</span><span class="attr-infos">Default:<code class="attr-default">false</code><br />Type: <code>object</code> &#124; <code>boolean</code></span> | Hide the widget body and footer when clicking on header |
| <span class='attr-optional'>`options.collapsible.collapsed`</span><span class="attr-infos">Type: <code>boolean</code></span> | Initial collapsed state of a collapsible widget |
| <span class='attr-optional'>`options.min`</span><span class="attr-infos">Type: <code>number</code></span> | Minimal slider value, default to automatically computed from the result set |
| <span class='attr-optional'>`options.max`</span><span class="attr-infos">Type: <code>number</code></span> | Maximal slider value, defaults to automatically computed from the result set |

<p class="attr-legend">* <span>Required</span></p>
Loading

0 comments on commit 5777d6a

Please sign in to comment.